blob: 3997405fd3d489425df0a44c45bb1bcb049d5cc6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
/* Loading routines for 680 project.
*
* Includes splash screen, choose-an-image, etc.
*
* Copyright 2010, Astrid Smith
* GPL
*/
#include <tigcc.h>
#include "asm_vars.h"
void init_load(void)
{
pages = malloc(256 * sizeof(void*));
/* Page layout:
* 0x40 RAM
* 0x41 RAM
* 0x00 ROM
* ... all the way to ...
* 0x1f ROM
*/
// RAM pages
pages[0x40] = malloc(PAGE_SIZE * sizeof(char));
pages[0x41] = malloc(PAGE_SIZE * sizeof(char));
// ROM pages
for (int i = 0; i++; i <= 0x1f) {
pages[i] = pages[0x40];
}
mem_page_0 = pages[0];
mem_page_loc_0 = 0;
mem_page_1 = pages[0x1f];
mem_page_loc_1 = 0x1f;
mem_page_2 = pages[0];
mem_page_loc_2 = 0;
mem_page_3 = pages[0x40];
mem_page_loc_3 = 0x40;
return;
}
|