Final Fantasy VI:ROM map/Assembly C3F: Difference between revisions
Jump to navigation
Jump to search
(→C3/F056 unknow: Comments) |
(→C3/F036 unknow: Comments) |
||
Line 16: | Line 16: | ||
C3/F030: A0D93A LDY #$3AD9 | C3/F030: A0D93A LDY #$3AD9 | ||
C3/F033: 4CCDED JMP $EDCD | C3/F033: 4CCDED JMP $EDCD | ||
==C3/F036 | ==C3/F036 Decompress and Transfer to VRAM== | ||
C3/F036: A0FBF6 LDY #$F6FB | |||
C3/F039: A9C4 LDA #$C4 | Note that this subroutine uses a different Transfer Loop than the one below | ||
C3/F03B: 2061DD JSR $DD61 | |||
C3/F03E: A000C0 LDY #$C000 | C3/F036: A0FBF6 LDY #$F6FB ; Compressed Data Address | ||
C3/F039: A9C4 LDA #$C4 ; Compressed Data Bank | |||
C3/F03B: 2061DD JSR $DD61 ; LZ decompression to $7EC000 | |||
C3/F03E: A000C0 LDY #$C000 ; Transfer Loop to VRAM: Source Address | |||
C3/F041: 84E7 STY $E7 | C3/F041: 84E7 STY $E7 | ||
C3/F043: A97E LDA #$7E | C3/F043: A97E LDA #$7E ; Source Bank (WRAM) | ||
C3/F045: 85E9 STA $E9 | C3/F045: 85E9 STA $E9 | ||
C3/F047: A0F00D LDY #$0DF0 | C3/F047: A0F00D LDY #$0DF0 ; Number of bytes to transfer | ||
C3/F04A: 84EB STY $EB | C3/F04A: 84EB STY $EB | ||
C3/F04C: 64ED STZ $ED | C3/F04C: 64ED STZ $ED ; Add nothing to each value | ||
C3/F04E: 64EE STZ $EE | C3/F04E: 64EE STZ $EE ; Add nothing to each value | ||
C3/F050: A00060 LDY #$6000 | C3/F050: A00060 LDY #$6000 ; VRAM Destination | ||
C3/F053: 4CB9DD JMP $DDB9 | C3/F053: 4CB9DD JMP $DDB9 ; Transfer Loop to VRAM | ||
==C3/F056 Decompress and Transfer to VRAM== | ==C3/F056 Decompress and Transfer to VRAM== | ||
Revision as of 10:53, 12 June 2014
C3/F00D unknow
C3/F00D: 2036F0 JSR $F036 C3/F010: A01400 LDY #$0014 C3/F013: 84E0 STY $E0 C3/F015: A00200 LDY #$0002 C3/F018: 84E2 STY $E2 C3/F01A: A26003 LDX #$0360 C3/F01D: A0F33B LDY #$3BF3 C3/F020: 4CCDED JMP $EDCD
C3/F023 unknow
C3/F023: A01C00 LDY #$001C C3/F026: 84E0 STY $E0 C3/F028: A00600 LDY #$0006 C3/F02B: 84E2 STY $E2 C3/F02D: A2C80B LDX #$0BC8 C3/F030: A0D93A LDY #$3AD9 C3/F033: 4CCDED JMP $EDCD
C3/F036 Decompress and Transfer to VRAM
Note that this subroutine uses a different Transfer Loop than the one below
C3/F036: A0FBF6 LDY #$F6FB ; Compressed Data Address C3/F039: A9C4 LDA #$C4 ; Compressed Data Bank C3/F03B: 2061DD JSR $DD61 ; LZ decompression to $7EC000 C3/F03E: A000C0 LDY #$C000 ; Transfer Loop to VRAM: Source Address C3/F041: 84E7 STY $E7 C3/F043: A97E LDA #$7E ; Source Bank (WRAM) C3/F045: 85E9 STA $E9 C3/F047: A0F00D LDY #$0DF0 ; Number of bytes to transfer C3/F04A: 84EB STY $EB C3/F04C: 64ED STZ $ED ; Add nothing to each value C3/F04E: 64EE STZ $EE ; Add nothing to each value C3/F050: A00060 LDY #$6000 ; VRAM Destination C3/F053: 4CB9DD JMP $DDB9 ; Transfer Loop to VRAM
C3/F056 Decompress and Transfer to VRAM
Note that the Data to decompress is fixed here.
C3/F056: A0E5A4 LDY #$A4E5 ; Compressed Data Address C3/F059: A9D9 LDA #$D9 ; Compressed Data Bank C3/F05B: 2061DD JSR $DD61 ; LZ decompression to $7EC000 C3/F05E: A000C0 LDY #$C000 ; Transfer Loop to VRAM: Source Address C3/F061: 84E7 STY $E7 C3/F063: A97E LDA #$7E ; Source Bank (WRAM) C3/F065: 85E9 STA $E9 C3/F067: A0C000 LDY #$00C0 ; Number of bytes to transfer C3/F06A: 84EB STY $EB C3/F06C: A00060 LDY #$6000 ; VRAM Destination C3/F06F: 4C86DD JMP $DD86 ; Transfer Loop to VRAM
C3/F072 unknow
C3/F072: 2036F0 JSR $F036 C3/F075: 2087EF JSR $EF87 C3/F078: A00068 LDY #$6800 C3/F07B: 20B9DD JSR $DDB9 C3/F07E: A00A00 LDY #$000A C3/F081: 84E0 STY $E0 C3/F083: A00500 LDY #$0005 C3/F086: 84E2 STY $E2 C3/F088: A25600 LDX #$0056 C3/F08B: A0373B LDY #$3B37 C3/F08E: 4CCDED JMP $EDCD
C3/F091 free space
C3/F091 - C3/FFFF: FREE SPACE!