|
22 | 22 | ; Define the include guard and the current hardware.inc version
|
23 | 23 | ; (do this after the RGBDS version check since the `def` syntax depends on it)
|
24 | 24 | def HARDWARE_INC equ 1
|
25 |
| -def HARDWARE_INC_VERSION equs "4.10.0" |
| 25 | +def HARDWARE_INC_VERSION equs "4.11.0" |
26 | 26 |
|
27 | 27 | ; Usage: rev_Check_hardware_inc <min_ver>
|
28 | 28 | ; Examples:
|
@@ -430,8 +430,8 @@ def LCDCB_PRION equ 0 ; (CGB only) whether OBJ priority bits are enabled [r/w]
|
430 | 430 | def LCDCF_WINOFF equ 0 << LCDCB_WINON
|
431 | 431 | def LCDCF_WINON equ 1 << LCDCB_WINON
|
432 | 432 | def LCDCF_BLKS equ 1 << LCDCB_BLKS
|
433 |
| - def LCDCF_BLK21 equ 0 << LCDCB_BLKS |
434 |
| - def LCDCF_BLK01 equ 1 << LCDCB_BLKS |
| 433 | + def LCDCF_BLK21 equ 0 << LCDCB_BLKS |
| 434 | + def LCDCF_BLK01 equ 1 << LCDCB_BLKS |
435 | 435 | def LCDCF_BG9800 equ 0 << LCDCB_BG9C00
|
436 | 436 | def LCDCF_BG9C00 equ 1 << LCDCB_BG9C00
|
437 | 437 | def LCDCF_OBJ8 equ 0 << LCDCB_OBJ16
|
@@ -512,20 +512,20 @@ def rWX equ $FF4B
|
512 | 512 |
|
513 | 513 | def WX_OFS equ 7 ; subtract this to get the actual Window Y coordinate
|
514 | 514 |
|
515 |
| -; -- KEY0 ($FF4C) ------------------------------------------------------------- |
| 515 | +; -- SYS / KEY0 ($FF4C) ------------------------------------------------------------- |
516 | 516 | ; (CGB boot ROM only) CPU mode select
|
517 |
| -def rKEY0 equ $FF4C |
| 517 | +def rSYS equ $FF4C |
518 | 518 |
|
519 |
| -; KEY0 is known as the "CPU mode register" in Fig. 11 of this patent: |
| 519 | +; This is known as the "CPU mode register" in Fig. 11 of this patent: |
520 | 520 | ; https://patents.google.com/patent/US6322447B1/en?oq=US6322447bi
|
521 | 521 | ; "OBJ priority mode designating register" in the same patent
|
522 | 522 | ; Credit to @mattcurrie for this finding!
|
523 | 523 |
|
524 |
| -def KEY0F_MODE equ %0000_11_00 ; current system mode [r/w] |
525 |
| - def KEY0F_CGB equ %0000_00_00 ; CGB mode |
526 |
| - def KEY0F_DMG equ %0000_01_00 ; DMG compatibility mode |
527 |
| - def KEY0F_PGB1 equ %0000_10_00 ; LCD is driven externally, CPU is stopped |
528 |
| - def KEY0F_PGB2 equ %0000_11_00 ; LCD is driven externally, CPU is running |
| 524 | +def SYSF_MODE equ %0000_11_00 ; current system mode [r/w] |
| 525 | + def SYSF_CGB equ %0000_00_00 ; CGB mode |
| 526 | + def SYSF_DMG equ %0000_01_00 ; DMG compatibility mode |
| 527 | + def SYSF_PGB1 equ %0000_10_00 ; LCD is driven externally, CPU is stopped |
| 528 | + def SYSF_PGB2 equ %0000_11_00 ; LCD is driven externally, CPU is running |
529 | 529 |
|
530 | 530 | ; -- SPD / KEY1 ($FF4D) -------------------------------------------------------
|
531 | 531 | ; (CGB only) Double-speed mode control
|
@@ -867,6 +867,13 @@ def rNR50 equ rAUDVOL
|
867 | 867 | def rNR51 equ rAUDTERM
|
868 | 868 | def rNR52 equ rAUDENA
|
869 | 869 |
|
| 870 | +def rKEY0 equ rSYS |
| 871 | +def KEY0F_MODE equ SYSF_MODE |
| 872 | + def KEY0F_CGB equ SYSF_CGB |
| 873 | + def KEY0F_DMG equ SYSF_DMG |
| 874 | + def KEY0F_PGB1 equ SYSF_PGB1 |
| 875 | + def KEY0F_PGB2 equ SYSF_PGB2 |
| 876 | + |
870 | 877 | def rKEY1 equ rSPD
|
871 | 878 | def KEY1F_DBLSPEED equ SPDF_DBLSPEED
|
872 | 879 | def KEY1F_PREPARE equ SPDF_PREPARE
|
|
0 commit comments