Mercurial > repos > blastem
comparison dis.c @ 2110:f1238ffb30a3
Some very minor Sega CD disassembler improvements
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 13 Feb 2022 00:10:19 -0800 |
parents | 1bda10d60b29 |
children | 7451f970ee66 |
comparison
equal
deleted
inserted
replaced
2109:5d575c42fff5 | 2110:f1238ffb30a3 |
---|---|
309 filebuf += main_start / 2; | 309 filebuf += main_start / 2; |
310 named_labels = add_label(named_labels, "start", 0xFF0000); | 310 named_labels = add_label(named_labels, "start", 0xFF0000); |
311 if (!has_manual_defs || !only) { | 311 if (!has_manual_defs || !only) { |
312 def = defer(0xFF0000, def); | 312 def = defer(0xFF0000, def); |
313 } | 313 } |
314 //TODO: other regions | 314 uint32_t user_start; |
315 named_labels = add_label(named_labels, "user_start", 0xFF0584); | 315 if (filebuf[0xA/2] == 0x57A) { |
316 //US | |
317 user_start = 0xFF0584; | |
318 } else if (filebuf[0xA/2] == 0x564) { | |
319 //EU | |
320 user_start = 0xFF056E; | |
321 } else { | |
322 //JP | |
323 user_start = 0xFF0156; | |
324 } | |
325 named_labels = add_label(named_labels, "user_start", user_start); | |
316 do_cd_labels = 1; | 326 do_cd_labels = 1; |
317 } else { | 327 } else { |
318 uint32_t sub_start =filebuf[0x40/2] << 16 | filebuf[0x42/2]; | 328 uint32_t sub_start =filebuf[0x40/2] << 16 | filebuf[0x42/2]; |
319 uint32_t sub_end =filebuf[0x44/2] << 16 | filebuf[0x46/2]; | 329 uint32_t sub_end =filebuf[0x44/2] << 16 | filebuf[0x46/2]; |
320 if (sub_start > (boot_size - 0x20)) { | 330 if (sub_start > (boot_size - 0x20)) { |
450 //TODO: more functions in the middle here | 460 //TODO: more functions in the middle here |
451 named_labels = weak_label(named_labels, "_bios_sega_logo", 0x364); | 461 named_labels = weak_label(named_labels, "_bios_sega_logo", 0x364); |
452 named_labels = weak_label(named_labels, "_bios_set_vint", 0x368); | 462 named_labels = weak_label(named_labels, "_bios_set_vint", 0x368); |
453 //TODO: more functions at the end here | 463 //TODO: more functions at the end here |
454 | 464 |
465 named_labels = weak_label(named_labels, "WORD_RAM", 0x200000); | |
455 named_labels = weak_label(named_labels, "CD_RESET_IFL2", 0xA12000); | 466 named_labels = weak_label(named_labels, "CD_RESET_IFL2", 0xA12000); |
456 named_labels = weak_label(named_labels, "CD_RESET_IFL2_BYTE", 0xA12001); | 467 named_labels = weak_label(named_labels, "CD_RESET_IFL2_BYTE", 0xA12001); |
457 named_labels = weak_label(named_labels, "CD_WRITE_PROTECT", 0xA12002); | 468 named_labels = weak_label(named_labels, "CD_WRITE_PROTECT", 0xA12002); |
458 named_labels = weak_label(named_labels, "CD_MEM_MODE", 0xA12003); | 469 named_labels = weak_label(named_labels, "CD_MEM_MODE", 0xA12003); |
459 named_labels = weak_label(named_labels, "CDC_CTRL", 0xA12004); | 470 named_labels = weak_label(named_labels, "CDC_CTRL", 0xA12004); |