diff --git a/src/fx/fx.shr.iris.a b/src/fx/fx.shr.iris.a index ed447ee8b..dffd51087 100644 --- a/src/fx/fx.shr.iris.a +++ b/src/fx/fx.shr.iris.a @@ -5,134 +5,8 @@ !to "build/FX.INDEXED/SHR.IRIS",plain *=$A000 -mirror_cols = $126 ; $A0 bytes but clobbers $20 bytes before -shrlo = $201 ; $C8 bytes -CoordinatesFileCopy = $2C8; $11 bytes -shrhi = $301 ; $C8 bytes -coords = $9F00 ; $1F40 bytes -mirror_rows = $BE40 ; $C0 bytes + !source "src/fx/fx.shr.precomputed.a" - !source "src/constants.a" - !source "src/macros.a" - !source "src/fx/fx.shr.common.a" - -start - ldx #$C0 - ldy #$00 -- tya - sta mirror_cols-$21, x - sta mirror_rows-1, x - iny - dex - bne - - - +BUILD_SHR_LOOKUP_TABLES shrlo, shrhi - ;X=0 - +COPY_SCB_AND_PALETTES - ;WRITEAUXMEM active - +WRITE_MAIN - ;X=0 -- lda start, x - sta $9D00, x - lda start+$100, x - sta $9E00, x - inx - bne - - jmp stage2 - -!pseudopc *-$300 { CoordinatesFile !byte 16 !text "FX/SHR.IRIS.DATA" - -stage2 - ldx #(stage2-CoordinatesFile) ; LOAD_FILE_AT macro destroys pathname -- lda CoordinatesFile, x ; so we need to make a copy - sta CoordinatesFileCopy, x - dex - bpl - - - +READ_RAM2_WRITE_RAM2 - +LOAD_FILE_AT CoordinatesFileCopy, coords - ;WRITEMAINMEM active after LOAD_FILE_AT macro - - ldx #(endzp-startzp) ; copy loop code to zero page -- lda startzp-1, x - sta $FF, x - dex - bne - - - +WRITE_AUX - jsr InputLoop - +WRITE_MAIN - - ldx #$00 -- lda $9D00, x ; copy main code back to $A000 - sta start, x ; so it can be called again if necessary - lda $9E00, x - sta start+$100, x - inx - bne - - +READ_RAM1_WRITE_RAM1 - -startzp -!pseudopc 0 { -exit rts ; also terminates stage2 code -InputLoop - ldy #0 -input ldx coords, y ; first value: SHR row (only 0..99 will be in input array) - bmi exit ; if > 127 then we're done - inc 127 then we're done + inc 127 then we're done - inc