|
|
1.1 root 1: /*
2: Hatari - cart.c
3:
4: This file is distributed under the GNU Public License, version 2 or at
5: your option any later version. Read the file gpl.txt for details.
6:
7: Cartridge program
8:
9: To load programs into memory, through TOS, we need to intercept GEMDOS so we
10: can relocate/execute programs via GEMDOS call $4B (Pexec).
11: We have some 68000 assembler, located at 0xFA0000 (cartridge memory), which is
12: used as our new GEMDOS handler. This checks if we need to intercept the call.
13:
14: The assembler routine can be found in 'cart_asm.s', and has been converted to
15: a byte array and stored in 'Cart_data[]' (see cartData.c).
16: */
17: const char Cart_fileid[] = "Hatari cart.c : " __DATE__ " " __TIME__;
18:
19: /* 2007/12/09 [NP] Change the function associated to opcodes $8, $a and $c only if hard drive */
20: /* emulation is ON. Else, these opcodes should give illegal instructions (also */
21: /* see uae-cpu/newcpu.c). */
22:
23:
24: #include "main.h"
25: #include "cart.h"
26: #include "configuration.h"
27: #include "file.h"
28: #include "log.h"
29: #include "m68000.h"
30: #include "nextMemory.h"
31: #include "hatari-glue.h"
32: #include "newcpu.h"
33:
34: #include "cartData.c"
35:
36:
37: /* Possible cartridge file extensions to scan for */
38: static const char * const psCartNameExts[] =
39: {
40: ".img",
41: ".rom",
42: ".stc",
43: NULL
44: };
45:
46:
47: /*-----------------------------------------------------------------------*/
48: /**
49: * Load an external cartridge image file.
50: */
51: static void Cart_LoadImage(void)
52: {
53: }
54:
55:
56: /*-----------------------------------------------------------------------*/
57: /**
58: * Copy ST GEMDOS intercept program image into cartridge memory space
59: * or load an external cartridge file.
60: * The intercept program is part of Hatari and used as an interface to the host
61: * file system through GemDOS. It is also needed for Line-A-Init when using
62: * extended VDI resolutions.
63: */
64: void Cart_ResetImage(void)
65: {
66: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.