megadrive_test1
annotate src/romhdr.S @ 2:51d1d6761601
copied the bgset code from samurai's article to test that my dev setup is
actually working
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Mon, 30 Jan 2017 16:57:51 +0200 |
parents | |
children |
rev | line source |
---|---|
nuclear@0 | 1 | the following will go into the custom .romhdr section which will be placed at |
nuclear@0 | 2 | address 100 of the binary by the linker (see lnkscript). |
nuclear@0 | 3 .section .romhdr,"a" |
nuclear@0 | 4 |
nuclear@0 | 5 #ifndef GAMENAME |
nuclear@0 | 6 #define GAMENAME "unnamed" |
nuclear@0 | 7 #endif |
nuclear@0 | 8 #ifndef VERSTR |
nuclear@0 | 9 #define VERSTR "00" |
nuclear@0 | 10 #endif |
nuclear@0 | 11 |
nuclear@0 | 12 .ascii "SEGA MEGA DRIVE (C)MINDLAPSE2017" |
nuclear@0 | 13 hdr_game_dom: |
nuclear@0 | 14 .ascii GAMENAME |
nuclear@0 | 15 hdr_game_dom_end: |
nuclear@0 | 16 .fill 48 - (hdr_game_dom_end - hdr_game_dom),1,32 | pad to 48 bytes with spaces |
nuclear@0 | 17 hdr_game_int: |
nuclear@0 | 18 .ascii GAMENAME |
nuclear@0 | 19 hdr_game_int_end: |
nuclear@0 | 20 .fill 48 - (hdr_game_int_end - hdr_game_int),1,32 | pad to 48 bytes with spaces |
nuclear@0 | 21 .ascii "GM" | it's a game (who cares what it is?) |
nuclear@0 | 22 .ascii "0000000-" | product code |
nuclear@0 | 23 .ascii VERSTR | version string |
nuclear@0 | 24 .short 0 | checksum |
nuclear@0 | 25 .ascii "J " | I/O support (joypad) |
nuclear@0 | 26 .long 0 | start address of ROM |
nuclear@0 | 27 .long _rom_end | last address of ROM |
nuclear@0 | 28 .long 0xff0000 | start address of RAM |
nuclear@0 | 29 .long 0xffffff | last address of RAM |
nuclear@0 | 30 .long 0 | SRAM enabled(?) |
nuclear@0 | 31 .long 0 | ??? |
nuclear@0 | 32 .long 0 | start address of SRAM |
nuclear@0 | 33 .long 0 | last address of SRAM |
nuclear@0 | 34 .long 0 | ??? |
nuclear@0 | 35 .long 0 | ??? |
nuclear@0 | 36 .fill 40,1,32 | notes (fill with spaces for now TODO) |
nuclear@0 | 37 .ascii "JUE " | country codes |