fastrom
This commit is contained in:
@@ -3,6 +3,12 @@
|
|||||||
;================================================================================
|
;================================================================================
|
||||||
lorom
|
lorom
|
||||||
|
|
||||||
|
;===================================================================================================
|
||||||
|
|
||||||
|
; THIS NEEDS TO BE THE FIRST INCLUDE BECAUSE IT CHANGES THINGS EVERYWHERE
|
||||||
|
; If this were to be included later, it would almost certainly overwrite other changes
|
||||||
|
incsrc "fastrom.asm"
|
||||||
|
|
||||||
;================================================================================
|
;================================================================================
|
||||||
|
|
||||||
;org $80FFC0 ; <- 7FC0 - Bank00.asm : 9173 (db "THE LEGEND OF ZELDA " ; 21 bytes)
|
;org $80FFC0 ; <- 7FC0 - Bank00.asm : 9173 (db "THE LEGEND OF ZELDA " ; 21 bytes)
|
||||||
|
|||||||
6591
fastrom.asm
Normal file
6591
fastrom.asm
Normal file
File diff suppressed because it is too large
Load Diff
56
hooks.asm
56
hooks.asm
@@ -1,9 +1,12 @@
|
|||||||
;================================================================================
|
;================================================================================
|
||||||
; Init Hook
|
; Init Hook
|
||||||
|
; this needs to be a JML, otherwise we're not using fast ROM when we return
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
org $80802F ; <- 2F - Bank00.asm : 45
|
org $80802F
|
||||||
JSL Init_Primary
|
JML Init_Primary
|
||||||
NOP
|
NOP
|
||||||
|
ReturnFromInit:
|
||||||
|
|
||||||
org $8CC1AC ; <- 63 D4 00 - Bank0C.asm:8 (dl Tagalong_LoadGfx)
|
org $8CC1AC ; <- 63 D4 00 - Bank0C.asm:8 (dl Tagalong_LoadGfx)
|
||||||
dl Init_PostRAMClear
|
dl Init_PostRAMClear
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
@@ -49,6 +52,19 @@ dw $FFFF, $FFFF, $FFFF, $FFFF
|
|||||||
dw $FFFF, $FFFF, $FFFF, $FFFF
|
dw $FFFF, $FFFF, $FFFF, $FFFF
|
||||||
dw $FFFF, $FFFF, $FFFF, $FFFF
|
dw $FFFF, $FFFF, $FFFF, $FFFF
|
||||||
|
|
||||||
|
;===================================================================================================
|
||||||
|
; fastrom interrupts
|
||||||
|
;===================================================================================================
|
||||||
|
org $00FFEA : dw NMIBounce
|
||||||
|
org $00FFEE : dw IRQBounce
|
||||||
|
|
||||||
|
org $8098AB
|
||||||
|
|
||||||
|
NMIBounce: JML $8080C9
|
||||||
|
IRQBounce: JML $8082D8
|
||||||
|
|
||||||
|
warnpc $8098C0
|
||||||
|
|
||||||
;================================================================================
|
;================================================================================
|
||||||
; BSOD for BRK and COP opcodes
|
; BSOD for BRK and COP opcodes
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
@@ -2483,3 +2499,39 @@ org $898C85 : JSL TransferItemReceiptToBuffer_using_GraphicsID
|
|||||||
; gt cutscene
|
; gt cutscene
|
||||||
org $899BBE : JSL TransferItemReceiptToBuffer_using_GraphicsID
|
org $899BBE : JSL TransferItemReceiptToBuffer_using_GraphicsID
|
||||||
|
|
||||||
|
;===================================================================================================
|
||||||
|
; gratuitous NOPs removed for speed
|
||||||
|
;===================================================================================================
|
||||||
|
org $1D8E75 : RTS
|
||||||
|
|
||||||
|
org $1DB5D8 : JML.l $9DB5DF
|
||||||
|
org $1DB605 : JML.l $9DB60C
|
||||||
|
org $1DBBF1 : JML.l $9DBBF8
|
||||||
|
org $1DBC19 : JML.l $9DBC20
|
||||||
|
org $1DC072 : JMP.w $9DC079
|
||||||
|
org $1DC0A5 : JMP.w $9DC0AC
|
||||||
|
org $1DED3B : JML.l $9DED42
|
||||||
|
org $1DED7A : JML.l $9DED81
|
||||||
|
|
||||||
|
org $05B55E : JMP ++ : ++
|
||||||
|
org $05B580 : JMP ++ : ++
|
||||||
|
|
||||||
|
org $05B5BE : RTS
|
||||||
|
|
||||||
|
org $0DD7AD : JMP ++ : ++
|
||||||
|
org $0DD7CB : JMP ++ : ++
|
||||||
|
|
||||||
|
org $1E8A85 : RTS
|
||||||
|
|
||||||
|
org $1E8955 : LDA 1,S : NOP
|
||||||
|
org $1E8973 : LDA 1,S : NOP
|
||||||
|
org $1E89AF : LDA 1,S : NOP
|
||||||
|
org $1E89D5 : LDA 1,S : NOP
|
||||||
|
org $1EB797 : LDA 1,S : NOP
|
||||||
|
org $1EB7D1 : LDA 1,S : NOP
|
||||||
|
org $1ED0A9 : LDA 1,S : NOP
|
||||||
|
|
||||||
|
org $1ED122 : JMP ++ : ++
|
||||||
|
org $1ED141 : JMP ++ : ++
|
||||||
|
|
||||||
|
;===================================================================================================
|
||||||
|
|||||||
5
init.asm
5
init.asm
@@ -56,7 +56,10 @@ Init_Primary:
|
|||||||
LDA.b #$10 : STA.b PlayerSpriteBank ; set default player sprite bank
|
LDA.b #$10 : STA.b PlayerSpriteBank ; set default player sprite bank
|
||||||
|
|
||||||
LDA.b #$81 : STA.w NMITIMEN ; thing we wrote over, turn on NMI & gamepad
|
LDA.b #$81 : STA.w NMITIMEN ; thing we wrote over, turn on NMI & gamepad
|
||||||
RTL
|
|
||||||
|
JML ReturnFromInit
|
||||||
|
|
||||||
|
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
; Init_PostRAMClear
|
; Init_PostRAMClear
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ OWWriteCommand = $08
|
|||||||
|
|
||||||
;---------------------------------------------------------------------------------------------------
|
;---------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
function OWW_RLESize(s) = s<<8
|
function OWW_RLESize(s) = s<<8
|
||||||
|
|
||||||
!OWW_STOP = $8000
|
!OWW_STOP = $8000
|
||||||
@@ -53,7 +52,7 @@ Overworld_LoadNewTiles:
|
|||||||
; format:
|
; format:
|
||||||
; dw <tile>, <pos>
|
; dw <tile>, <pos>
|
||||||
; or if bit 15 is set
|
; or if bit 15 is set
|
||||||
; dw <command>
|
; dw <command>, <params>...
|
||||||
; commands are:
|
; commands are:
|
||||||
; 1sss ssss dccc cccc
|
; 1sss ssss dccc cccc
|
||||||
; s - size (if applicable)
|
; s - size (if applicable)
|
||||||
@@ -357,6 +356,7 @@ Overworld_LoadNewTiles:
|
|||||||
;===================================================================================================
|
;===================================================================================================
|
||||||
|
|
||||||
OverworldMapChangePointers:
|
OverworldMapChangePointers:
|
||||||
|
; light world
|
||||||
dw $0000 ; 00
|
dw $0000 ; 00
|
||||||
dw $0000 ; 01
|
dw $0000 ; 01
|
||||||
dw $0000 ; 02
|
dw $0000 ; 02
|
||||||
|
|||||||
Reference in New Issue
Block a user