|
|
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.