Spr_000 CLC ; 36x10, 295 bytes, 490 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$4444 ; Pattern #1 : 9 LDY #$8888 ; Pattern #2 : 6 LDA #$0020 ; Pattern #3 : 5 TCD *-- LDA $04,S ; Line 0 AND #$00F0 ORA #$5505 STA $04,S LDA $0A,S AND #$0F00 ORA #$A0AA STA $0A,S TSC ADC #$0009 TCS PEA $AA88 PHY TSC ; Line 1 ADC #$00A7 TCS LDA $A1,S AND #$0F00 ORA #$A0AA STA $A1,S SEP #$20 LDA $98,S AND #$F0 STA $98,S REP #$30 PEA $AAAA PEA $AA88 PEA $5844 PEA $4400 TSC ; Line 2 ADC #$00A8 TCS SEP #$20 LDA #$9A STA $96,S LDA $94,S AND #$0F ORA #$A0 STA $94,S REP #$30 PEA $AAAA PEA $8858 PEA $2402 PHD TSC ; Line 3 ADC #$00AB TCS SEP #$20 LDA $A1,S AND #$0F ORA #$50 STA $A1,S REP #$30 PEA $8288 PHY PEA $8858 PEA $2440 PEA $4404 PEA $0209 TSC ; Line 4 ADC #$00AC TCS LDA $9F,S AND #$0F00 ORA #$2022 STA $9F,S SEP #$20 LDA #$9A STA $93,S LDA $91,S AND #$0F ORA #$A0 STA $91,S REP #$30 PHX PHX PEA $4424 PEA $5044 PHX PEA $2000 TSC ; Line 5 ADC #$00AA TCS SEP #$20 LDA $97,S AND #$F0 STA $97,S REP #$30 PEA $2222 PEA $2282 PEA $8855 PHX PEA $0409 TSC ; Line 6 ADC #$00A9 TCS LDA $98,S AND #$00F0 ORA #$4400 STA $98,S PEA $0000 PEA $2088 PEA $8855 PHX TSC ; Line 7 ADC #$00A5 TCS PHD PEA $8855 TSC ; Line 8 ADC #$00A2 TCS TDC STA $9D,S PHD PEA $5525 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_001 CLC ; 48x11, 427 bytes, 707 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$4444 ; Pattern #1 : 8 LDY #$0000 ; Pattern #2 : 7 LDA #$8888 ; Pattern #3 : 6 TCD *-- LDA $0B,S ; Line 0 AND #$00F0 STA $0B,S LDA $11,S AND #$0F00 ORA #$2022 STA $11,S LDA $A4,S AND #$000F ORA #$AAA0 STA $A4,S SEP #$20 LDA #$05 STA $AB,S LDA $A0,S AND #$F0 ORA #$0A STA $A0,S REP #$30 TSC ADC #$0010 TCS PEA $2202 PHY TSC ; Line 1 ADC #$00A7 TCS LDA $8F,S AND #$F00F ORA #$0AA0 STA $8F,S LDA $98,S AND #$00F0 STA $98,S SEP #$20 LDA $93,S AND #$F0 ORA #$0A STA $93,S LDA $A2,S AND #$0F ORA #$20 STA $A2,S REP #$30 PEA $22A2 PEA $AAAA PHD PEA $8855 TSC ; Line 2 ADC #$00A9 TCS LDA $A1,S AND #$0F00 ORA #$20A2 STA $A1,S SEP #$20 LDA $93,S AND #$0F ORA #$A0 STA $93,S LDA $95,S AND #$0F ORA #$A0 STA $95,S REP #$30 PEA $22AA PEA $AAAA PEA $8858 PHX TSC ; Line 3 ADC #$00A8 TCS LDA $92,S AND #$F00F ORA #$0AA0 STA $92,S SEP #$20 LDA #$82 STA $A2,S LDA $8F,S AND #$0F ORA #$A0 STA $8F,S REP #$30 PEA $AAAA PEA $AA88 PEA $5824 PEA $0200 PEA $2202 TSC ; Line 4 ADC #$00AB TCS LDA $A1,S AND #$0F00 ORA #$5044 STA $A1,S SEP #$20 LDA $90,S AND #$F0 ORA #$0A STA $90,S LDA $93,S AND #$F0 ORA #$0A STA $93,S REP #$30 PHD PHD PEA $5824 PEA $4044 PEA $0420 PEA $44A0 TSC ; Line 5 ADC #$00AC TCS LDA $8B,S AND #$F00F ORA #$0AA0 STA $8B,S LDA $8F,S AND #$0F0F ORA #$A0A0 STA $8F,S SEP #$20 LDA $95,S AND #$F0 STA $95,S REP #$30 PHX PHX PEA $2450 PHX PEA $4400 PEA $2202 TSC ; Line 6 ADC #$00AD TCS SEP #$20 LDA $95,S AND #$F0 STA $95,S REP #$30 PEA $0200 PEA $0022 PEA $0280 PEA $8855 PHX PEA $0400 TSC ; Line 7 ADC #$00A9 TCS PHY PEA $0088 PEA $8855 PHX TSC ; Line 8 ADC #$00A5 TCS SEP #$20 LDA $9A,S AND #$F0 STA $9A,S REP #$30 PHY PEA $8855 PEA $4404 TSC ; Line 9 ADC #$00A4 TCS TYA STA $9D,S SEP #$20 LDA $9C,S AND #$F0 STA $9C,S REP #$30 PHY PEA $5555 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_002 CLC ; 20x8, 218 bytes, 357 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$8888 ; Pattern #1 : 3 LDY #$0000 ; Pattern #2 : 3 LDA #$22AA ; Pattern #3 : 2 TCD *-- SEP #$20 ; Line 0 LDA #$22 STA $05,S LDA $A0,S AND #$F0 STA $A0,S REP #$30 TSC ADC #$0004 TCS PEA $2202 PHY TSC ; Line 1 ADC #$00A6 TCS LDA $9A,S AND #$00F0 ORA #$4200 STA $9A,S SEP #$20 LDA $A2,S AND #$0F ORA #$20 STA $A2,S REP #$30 PHD PEA $AA88 PEA $8855 TSC ; Line 2 ADC #$00A7 TCS SEP #$20 LDA #$85 STA $A1,S REP #$30 PHD PEA $8A58 PEA $2400 TSC ; Line 3 ADC #$00A6 TCS SEP #$20 LDA #$42 STA $A1,S REP #$30 PHX PEA $8824 PEA $4004 PEA $2004 TSC ; Line 4 ADC #$00A8 TCS LDA $A0,S AND #$0F00 STA $A0,S PEA $4422 PEA $4488 PEA $4544 PEA $0400 TSC ; Line 5 ADC #$00A7 TCS SEP #$20 LDA $9A,S AND #$F0 STA $9A,S REP #$30 PHY PEA $8858 PEA $4544 TSC ; Line 6 ADC #$00A4 TCS TYA STA $9C,S LDA $9E,S AND #$0F00 ORA #$2022 STA $9E,S PEA $0080 PEA $5844 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_003 CLC ; 36x11, 316 bytes, 531 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$AAAA ; Pattern #1 : 7 LDY #$0000 ; Pattern #2 : 6 LDA #$8888 ; Pattern #3 : 4 TCD *-- LDA $AC,S ; Line 0 AND #$0F00 ORA #$2022 STA $AC,S SEP #$20 LDA $A5,S AND #$F0 STA $A5,S REP #$30 TSC ADC #$000B TCS PEA $2222 PEA $2222 PEA $0200 TSC ; Line 1 ADC #$00A6 TCS LDA $A2,S AND #$0F00 ORA #$20A2 STA $A2,S PEA $AA99 PEA $4544 PEA $2422 TSC ; Line 2 ADC #$00A7 TCS LDA $A2,S AND #$0F00 ORA #$20A2 STA $A2,S PEA $AA99 PEA $5555 PEA $2400 PEA $00AA PHX PHX TSC ; Line 3 ADC #$00AD TCS LDA $A3,S AND #$0F00 ORA #$2022 STA $A3,S SEP #$20 LDA $94,S AND #$F0 ORA #$0A STA $94,S REP #$30 PEA $9A99 PEA $55AA PEA $0A00 PEA $2000 PEA $9A99 PEA $9999 PHX TSC ; Line 4 ADC #$00B0 TCS SEP #$20 LDA $94,S AND #$F0 ORA #$0A STA $94,S REP #$30 PEA $5255 PEA $5555 PEA $AA0A PEA $5045 PEA $0402 PEA $A09A PEA $99AA TSC ; Line 5 ADC #$00B0 TCS SEP #$20 LDA $A0,S AND #$0F STA $A0,S REP #$30 PEA $8288 PHD PHD PEA $0680 PEA $5555 PEA $4420 PEA $00AA TSC ; Line 6 ADC #$00AD TCS LDA $9D,S AND #$0F00 STA $9D,S PHY PEA $A0AA PEA $AAA0 PEA $AA88 PEA $5545 PEA $0402 TSC ; Line 7 ADC #$00A8 TCS PHY PHX PEA $8855 PEA $4400 TSC ; Line 8 ADC #$00A6 TCS PHY PEA $AA88 PEA $4504 TSC ; Line 9 ADC #$00A4 TCS TYA STA $9D,S PHY PEA $8808 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_004 CLC ; 36x11, 312 bytes, 534 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$0000 ; Pattern #1 : 14 LDY #$5555 ; Pattern #2 : 9 LDA #$9999 ; Pattern #3 : 6 TCD *-- LDA $06,S ; Line 0 AND #$00F0 ORA #$2202 STA $06,S LDA $AC,S AND #$0F00 ORA #$4044 STA $AC,S SEP #$20 LDA $A5,S AND #$F0 ORA #$02 STA $A5,S REP #$30 TSC ADC #$000B TCS PEA $4444 PEA $4444 TSC ; Line 1 ADC #$00A4 TCS LDA $A2,S AND #$0F00 ORA #$4094 STA $A2,S PHD PEA $2222 PEA $2222 TSC ; Line 2 ADC #$00A7 TCS SEP #$20 LDA #$94 STA $A2,S REP #$30 PHD PHY PHY PEA $0099 PEA $99AA PEA $AAAA TSC ; Line 3 ADC #$00AD TCS LDA $94,S AND #$00F0 ORA #$AA0A STA $94,S LDA $A2,S AND #$0F00 ORA #$4044 STA $A2,S PHD PEA $55AA PEA $0A00 PHX PEA $9099 PHD PEA $AAAA TSC ; Line 4 ADC #$00AF TCS SEP #$20 LDA $95,S AND #$F0 ORA #$0A STA $95,S REP #$30 PHY PEA $55AA PEA $0A50 PEA $5505 PHX PEA $9A99 TSC ; Line 5 ADC #$00AF TCS SEP #$20 LDA #$00 STA $94,S REP #$30 PEA $8088 PEA $8888 PEA $8888 PEA $0880 PHY PEA $5500 PEA $00AA TSC ; Line 6 ADC #$00AE TCS SEP #$20 LDA $94,S AND #$F0 STA $94,S REP #$30 PHX PHX PHX PEA $A0AA PEA $8855 PEA $5505 TSC ; Line 7 ADC #$00A8 TCS LDA $98,S AND #$00F0 ORA #$5500 STA $98,S PHX PEA $00AA PEA $AA88 PHY TSC ; Line 8 ADC #$00A5 TCS PHX PEA $AA88 TSC ; Line 9 ADC #$00A2 TCS TXA STA $9D,S PHX PEA $8808 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_005 CLC ; 24x9, 263 bytes, 431 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$4444 ; Pattern #1 : 5 LDY #$8888 ; Pattern #2 : 4 LDA #$0000 ; Pattern #3 : 2 TCD *-- LDA $01,S ; Line 0 AND #$00F0 STA $01,S SEP #$20 LDA #$22 STA $A7,S REP #$30 TSC ADC #$0006 TCS PEA $2222 PEA $0200 TSC ; Line 1 ADC #$00A4 TCS PEA $AAAA PHY PEA $5805 TSC ; Line 2 ADC #$00A8 TCS LDA $98,S AND #$00F0 ORA #$4200 STA $98,S SEP #$20 LDA $A2,S AND #$0F ORA #$20 STA $A2,S REP #$30 PEA $22AA PEA $AA88 PEA $2544 PEA $0400 TSC ; Line 3 ADC #$00A9 TCS SEP #$20 LDA #$45 STA $A1,S REP #$30 PHY PHY PEA $2540 PEA $4400 TSC ; Line 4 ADC #$00A8 TCS SEP #$20 LDA $97,S AND #$F0 STA $97,S REP #$30 PHX PHX PEA $5244 PEA $4404 PEA $2004 TSC ; Line 5 ADC #$00AB TCS SEP #$20 LDA $97,S AND #$F0 ORA #$04 STA $97,S REP #$30 PEA $2200 PEA $0022 PEA $0088 PEA $5544 PEA $4400 TSC ; Line 6 ADC #$00A7 TCS LDA #$0050 STA $9B,S LDA $99,S AND #$00F0 ORA #$5500 STA $99,S LDA $9D,S AND #$0F00 ORA #$2022 STA $9D,S PHD PEA $8088 PEA $4544 TSC ; Line 8 ADC #$013F TCS LDA $00,S AND #$00F0 STA $00,S SEP #$20 LDA $02,S AND #$0F STA $02,S REP #$30 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_006 CLC ; 24x33, 731 bytes, 1214 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$0000 ; Pattern #1 : 31 LDY #$4024 ; Pattern #2 : 4 LDA #$0224 ; Pattern #3 : 3 TCD *-- LDA #$0500 ; Line 0 STA $07,S LDA #$5000 STA $A8,S LDA $A6,S AND #$00F0 ORA #$8000 STA $A6,S SEP #$20 LDA $09,S AND #$0F STA $09,S REP #$30 TSC ; Line 2 ADC #$0149 TCS LDA $9C,S AND #$00F0 ORA #$4400 STA $9C,S SEP #$20 LDA $01,S AND #$0F STA $01,S REP #$30 PEA $0500 PEA $8004 TSC ; Line 3 ADC #$00A5 TCS LDA $A0,S AND #$0F00 ORA #$0005 STA $A0,S SEP #$20 LDA $9B,S AND #$F0 STA $9B,S REP #$30 PEA $5080 PEA $0664 TSC ; Line 4 ADC #$00A3 TCS LDA $A1,S AND #$0F00 ORA #$0088 STA $A1,S SEP #$20 LDA $9C,S AND #$F0 STA $9C,S REP #$30 PEA $4008 PEA $4495 TSC ; Line 5 ADC #$00A4 TCS SEP #$20 LDA $A2,S AND #$0F ORA #$80 STA $A2,S REP #$30 PEA $8005 PEA $4244 TSC ; Line 6 ADC #$00A5 TCS LDA $9A,S AND #$00F0 ORA #$6800 STA $9A,S LDA $A0,S AND #$0F00 ORA #$8006 STA $A0,S PEA $6880 PEA $6606 PEA $4200 TSC ; Line 7 ADC #$00A5 TCS LDA $A1,S AND #$0F00 ORA #$00A0 STA $A1,S PEA $0088 PEA $8888 TSC ; Line 8 ADC #$00A4 TCS SEP #$20 LDA $9A,S AND #$F0 STA $9A,S REP #$30 PEA $5560 PEA $0888 PEA $0806 TSC ; Line 9 ADC #$00A8 TCS SEP #$20 LDA #$A0 STA $A0,S REP #$30 PEA $A05A PEA $5560 PEA $0808 PEA $0606 TSC ; Line 10 ADC #$00A7 TCS LDA $96,S AND #$00F0 ORA #$5400 STA $96,S PEA $5455 PEA $6066 PEA $0686 PEA $A800 PHX TSC ; Line 11 ADC #$00AB TCS PEA $5055 PEA $005A PEA $5585 PEA $A550 PEA $0A42 TSC ; Line 12 ADC #$00AA TCS PHX PEA $00A0 PEA $5555 PEA $A550 PEA $0542 PEA $6428 TSC ; Line 13 ADC #$00AC TCS PHY PHX PEA $5A82 PEA $A200 PEA $0522 PEA $8428 TSC ; Line 14 ADC #$00AC TCS PHY PEA $0066 PEA $6608 PEA $6600 PHX PHX TSC ; Line 15 ADC #$00AC TCS PEA $4022 PEA $0060 PEA $4288 PEA $4802 TSC ; Line 16 ADC #$00A8 TCS PEA $8056 PEA $0060 PEA $8858 PEA $6806 TSC ; Line 17 ADC #$00A8 TCS PEA $8006 PHX PHX PHX TSC ; Line 18 ADC #$00A8 TCS LDA $9D,S AND #$0F00 ORA #$005A STA $9D,S PHX PEA $00AA PEA $5550 PEA $550A TSC ; Line 19 ADC #$00A4 TCS LDA $A1,S AND #$0F00 ORA #$005A STA $A1,S SEP #$20 LDA $9C,S AND #$F0 STA $9C,S REP #$30 PEA $5500 PEA $050A TSC ; Line 20 ADC #$00A4 TCS LDA $A1,S AND #$0F00 ORA #$005A STA $A1,S SEP #$20 LDA $9C,S AND #$F0 STA $9C,S REP #$30 PEA $5500 PEA $05A5 TSC ; Line 21 ADC #$00A4 TCS LDA $A1,S AND #$0F00 ORA #$005A STA $A1,S SEP #$20 LDA $9C,S AND #$F0 STA $9C,S REP #$30 PEA $5502 PEA $55A5 TSC ; Line 22 ADC #$00A4 TCS PEA $5502 PHX TSC ; Line 23 ADC #$00A5 TCS PHX PHD PEA $4402 TSC ; Line 24 ADC #$00A6 TCS SEP #$20 LDA $9A,S AND #$F0 STA $9A,S REP #$30 PHY PHD PEA $4202 TSC ; Line 25 ADC #$00A6 TCS LDA $9A,S AND #$00F0 ORA #$5400 STA $9A,S SEP #$20 LDA $A0,S AND #$0F STA $A0,S REP #$30 PEA $4044 PHD PHY TSC ; Line 26 ADC #$00A5 TCS LDA #$2040 STA $9D,S LDA $9B,S AND #$00F0 ORA #$4400 STA $9B,S PHX PEA $2040 TSC ; Line 28 ADC #$0142 TCS LDA #$4404 STA $9D,S LDA $9F,S AND #$0F00 ORA #$0044 STA $9F,S PEA $4044 PEA $5402 TSC ; Line 30 ADC #$0146 TCS SEP #$20 LDA #$00 STA $A1,S REP #$30 PHX PEA $0044 PEA $4404 TSC ; Line 31 ADC #$00A6 TCS SEP #$20 LDA $9B,S AND #$F0 STA $9B,S REP #$30 PHX PHX PHX TSC ; Line 32 ADC #$00A7 TCS PHX PHX PHX *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_007 CLC ; 28x5, 120 bytes, 244 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$0000 ; Pattern #1 : 35 *-- LDA $A9,S ; Line 0 AND #$0F00 STA $A9,S SEP #$20 LDA $01,S AND #$F0 STA $01,S REP #$30 TSC ADC #$0005 TCS PHX PHX TSC ; Line 1 ADC #$00A7 TCS SEP #$20 LDA $98,S AND #$F0 STA $98,S REP #$30 PHX PHX PHX PHX TSC ; Line 2 ADC #$00AC TCS PHX PHX PHX PHX PHX PHX TSC ; Line 3 ADC #$00AB TCS LDA $99,S AND #$0F00 STA $99,S PHX PHX PHX PHX PHX PHX TSC ; Line 4 ADC #$00A4 TCS PHX PHX *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_008 CLC ; 24x9, 264 bytes, 441 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$4444 ; Pattern #1 : 5 LDY #$AAAA ; Pattern #2 : 4 LDA #$0000 ; Pattern #3 : 3 TCD *-- SEP #$20 ; Line 0 LDA #$22 STA $A9,S LDA $01,S AND #$F0 STA $01,S REP #$30 TSC ADC #$0007 TCS PEA $2222 PEA $2202 PHD TSC ; Line 1 ADC #$00A7 TCS PEA $22AA PHY PEA $8888 PEA $5805 TSC ; Line 2 ADC #$00AA TCS LDA $96,S AND #$00F0 ORA #$4200 STA $96,S LDA $A0,S AND #$0F00 ORA #$2088 STA $A0,S PEA $22AA PHY PEA $8A58 PEA $2200 PEA $2004 TSC ; Line 3 ADC #$00A9 TCS LDA $A1,S AND #$0F00 ORA #$5044 STA $A1,S PEA $8888 PEA $8858 PEA $2444 PEA $4400 TSC ; Line 4 ADC #$00A8 TCS LDA $97,S AND #$00F0 STA $97,S LDA $A1,S AND #$0F00 ORA #$2000 STA $A1,S PHX PEA $4424 PEA $5044 PEA $4404 PEA $2004 TSC ; Line 5 ADC #$00AA TCS LDA $9C,S AND #$0F00 STA $9C,S PHD PEA $0080 PEA $8845 PHX TSC ; Line 6 ADC #$00A3 TCS LDA #$5055 STA $9D,S LDA $9F,S AND #$0F00 STA $9F,S SEP #$20 LDA $9C,S AND #$F0 STA $9C,S REP #$30 PEA $8058 PEA $4504 TSC ; Line 8 ADC #$0140 TCS LDA $00,S AND #$00F0 STA $00,S SEP #$20 LDA $02,S AND #$0F STA $02,S REP #$30 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_009 CLC ; 28x10, 285 bytes, 482 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$4444 ; Pattern #1 : 7 LDY #$0000 ; Pattern #2 : 7 LDA #$8888 ; Pattern #3 : 4 TCD *-- SEP #$20 ; Line 0 LDA $01,S AND #$F0 STA $01,S LDA $A9,S AND #$0F ORA #$20 STA $A9,S REP #$30 TSC ADC #$0007 TCS PEA $2222 PEA $2200 PHY TSC ; Line 1 ADC #$00A7 TCS PEA $22AA PEA $AA8A PHD PEA $5805 TSC ; Line 2 ADC #$00AA TCS LDA $96,S AND #$00F0 ORA #$4200 STA $96,S PEA $22A2 PEA $AAAA PEA $8A88 PHX PHY TSC ; Line 3 ADC #$00AB TCS SEP #$20 LDA $A1,S AND #$0F ORA #$50 STA $A1,S REP #$30 PEA $8288 PHD PEA $8845 PEA $0244 PEA $0420 TSC ; Line 4 ADC #$00AA TCS LDA $95,S AND #$00F0 STA $95,S SEP #$20 LDA $A1,S AND #$0F STA $A1,S REP #$30 PHX PHX PEA $4402 PEA $4544 PEA $4400 PEA $2204 TSC ; Line 5 ADC #$00AC TCS LDA $96,S AND #$00F0 ORA #$4400 STA $96,S SEP #$20 LDA $9E,S AND #$0F STA $9E,S REP #$30 PHY PEA $2022 PEA $0088 PEA $5844 PEA $4404 TSC ; Line 6 ADC #$00A7 TCS LDA $9D,S AND #$0F00 STA $9D,S PHY PEA $8088 PEA $5544 TSC ; Line 7 ADC #$00A2 TCS SEP #$20 LDA $9C,S AND #$F0 STA $9C,S REP #$30 PEA $8855 PEA $4404 TSC ; Line 8 ADC #$00A4 TCS TYA STA $9D,S SEP #$20 LDA $9C,S AND #$F0 STA $9C,S REP #$30 PHY PEA $5555 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_010 CLC ; 32x12, 379 bytes, 643 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$4444 ; Pattern #1 : 10 LDY #$8888 ; Pattern #2 : 8 LDA #$0000 ; Pattern #3 : 6 TCD *-- LDA $01,S ; Line 0 AND #$00F0 STA $01,S LDA $A9,S AND #$0F00 ORA #$2022 STA $A9,S TSC ADC #$0008 TCS PEA $2222 PEA $2200 PHD TSC ; Line 1 ADC #$00A6 TCS SEP #$20 LDA $99,S AND #$F0 STA $99,S REP #$30 PEA $AAAA PEA $8A88 PHY PEA $5805 TSC ; Line 2 ADC #$00AB TCS SEP #$20 LDA $A2,S AND #$0F ORA #$20 STA $A2,S REP #$30 PEA $22A2 PEA $AAAA PEA $8A88 PEA $5544 PEA $4400 TSC ; Line 3 ADC #$00AB TCS LDA $94,S AND #$00F0 ORA #$0400 STA $94,S PEA $22AA PEA $AAAA PEA $8A88 PEA $4522 PEA $0200 PEA $4204 TSC ; Line 4 ADC #$00AD TCS LDA $93,S AND #$00F0 ORA #$4200 STA $93,S SEP #$20 LDA $A1,S AND #$0F ORA #$20 STA $A1,S REP #$30 PEA $A2AA PEA $AA8A PHY PEA $4502 PEA $4044 PEA $0020 TSC ; Line 5 ADC #$00AC TCS SEP #$20 LDA $A1,S AND #$0F ORA #$50 STA $A1,S REP #$30 PHY PHY PEA $8858 PEA $4440 PHX PEA $0400 TSC ; Line 6 ADC #$00AC TCS LDA $A0,S AND #$0F00 ORA #$2002 STA $A0,S SEP #$20 LDA $93,S AND #$F0 STA $93,S REP #$30 PHX PHX PHX PEA $0245 PHX PEA $4400 PEA $2004 TSC ; Line 7 ADC #$00AD TCS LDA $95,S AND #$00F0 ORA #$4400 STA $95,S LDA $9D,S AND #$0F00 STA $9D,S PHD PEA $2022 PEA $0088 PEA $5855 PHX PEA $0400 TSC ; Line 8 ADC #$00A8 TCS SEP #$20 LDA $9F,S AND #$0F STA $9F,S REP #$30 PEA $0080 PHY PEA $5544 TSC ; Line 9 ADC #$00A4 TCS SEP #$20 LDA $9A,S AND #$F0 STA $9A,S REP #$30 PHD PEA $8855 PEA $4404 TSC ; Line 10 ADC #$00A4 TCS TDC STA $9D,S SEP #$20 LDA $9C,S AND #$F0 STA $9C,S REP #$30 PHD PEA $5555 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_011 CLC ; 32x16, 484 bytes, 800 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$0000 ; Pattern #1 : 5 LDY #$4444 ; Pattern #2 : 4 LDA #$5555 ; Pattern #3 : 4 TCD *-- LDA #$4224 ; Line 0 STA $0D,S LDA #$3924 STA $AC,S LDA $AE,S AND #$0F00 ORA #$209A STA $AE,S TSC ; Line 2 ADC #$0140 TCS LDA #$A3AA STA $AB,S LDA $05,S AND #$0F00 ORA #$2022 STA $05,S LDA $A9,S AND #$00F0 ORA #$2202 STA $A9,S LDA $AD,S AND #$0F00 ORA #$0039 STA $AD,S SEP #$20 LDA $A3,S AND #$F0 ORA #$02 STA $A3,S REP #$30 TSC ADC #$000E TCS PEA $A2A3 PEA $AA24 TSC ; Line 3 ADC #$009D TCS LDA $9B,S AND #$00F0 ORA #$2902 STA $9B,S PEA $2292 PEA $9922 TSC ; Line 4 ADC #$00AA TCS LDA $9F,S AND #$0F00 ORA #$0044 STA $9F,S SEP #$20 LDA $94,S AND #$F0 ORA #$02 STA $94,S REP #$30 PEA $4034 PEA $13AA PEA $2A22 PEA $9999 PEA $9999 TSC ; Line 5 ADC #$00A8 TCS SEP #$20 LDA $A2,S AND #$0F STA $A2,S REP #$30 PEA $5155 PEA $A54A PEA $9449 PEA $4499 PEA $9929 TSC ; Line 6 ADC #$00AB TCS LDA $94,S AND #$00F0 ORA #$4400 STA $94,S PEA $0055 PEA $4524 PEA $A54A PEA $A488 PHY PEA $9429 TSC ; Line 7 ADC #$00AD TCS LDA $93,S AND #$00F0 STA $93,S PEA $8008 PEA $5594 PEA $4952 PEA $A54A PEA $5488 PEA $8808 TSC ; Line 8 ADC #$00AC TCS PEA $9020 PEA $4599 PEA $AA24 PHD PEA $4555 PEA $5585 TSC ; Line 9 ADC #$00AC TCS PEA $9020 PEA $55A4 PEA $9A49 PHY PEA $4522 PEA $4244 PEA $8808 TSC ; Line 10 ADC #$00AE TCS PEA $9008 PEA $5245 PEA $9924 PHD PEA $5440 PEA $2242 PEA $4502 TSC ; Line 11 ADC #$00AE TCS LDA $93,S AND #$00F0 STA $93,S LDA $9F,S AND #$0F00 STA $9F,S PEA $8040 PEA $2055 PHY PEA $2244 PEA $4400 PEA $0040 PEA $2402 TSC ; Line 12 ADC #$00AC TCS LDA $A0,S AND #$0F00 STA $A0,S SEP #$20 LDA $97,S AND #$F0 STA $97,S REP #$30 PEA $0452 PEA $4544 PEA $0200 PEA $0040 PEA $990A TSC ; Line 13 ADC #$00A9 TCS LDA $9A,S AND #$00F0 ORA #$4400 STA $9A,S SEP #$20 LDA $A0,S AND #$0F STA $A0,S REP #$30 PEA $2022 PEA $2220 PHD PHX TSC ; Line 14 ADC #$00A7 TCS TXA STA $9C,S SEP #$20 LDA $9E,S AND #$0F STA $9E,S REP #$30 PHX PEA $2042 *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_012 CLC ; 20x7, 183 bytes, 306 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$2222 ; Pattern #1 : 4 LDY #$6022 ; Pattern #2 : 2 LDA #$9A86 ; Pattern #3 : 2 TCD *-- LDA #$84A9 ; Line 0 STA $01,S LDA $A1,S AND #$00F0 ORA #$6204 STA $A1,S SEP #$20 LDA $03,S AND #$0F STA $03,S REP #$30 TSC ; Line 1 ADC #$00A6 TCS LDA $9A,S AND #$00F0 ORA #$4202 STA $9A,S PHY PHX TSC ; Line 2 ADC #$00A5 TCS SEP #$20 LDA $A1,S AND #$0F STA $A1,S REP #$30 PEA $8029 PEA $A9AA PHD TSC ; Line 3 ADC #$00A6 TCS LDA $99,S AND #$00F0 ORA #$4202 STA $99,S PEA $6682 PEA $4855 PEA $6498 PEA $4A86 TSC ; Line 4 ADC #$00A8 TCS LDA $9A,S AND #$00F0 ORA #$6204 STA $9A,S PEA $6029 PEA $A9AA PHD TSC ; Line 5 ADC #$00A5 TCS LDA #$84A9 STA $9B,S SEP #$20 LDA $9D,S AND #$0F STA $9D,S REP #$30 PHY PHX *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_013 CLC ; 32x13, 399 bytes, 683 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$4444 ; Pattern #1 : 12 LDY #$0000 ; Pattern #2 : 11 LDA #$AAAA ; Pattern #3 : 8 TCD *-- LDA $08,S ; Line 0 AND #$0F00 ORA #$2022 STA $08,S SEP #$20 LDA $01,S AND #$F0 STA $01,S LDA $AB,S AND #$0F ORA #$20 STA $AB,S REP #$30 TSC ADC #$0007 TCS PEA $2222 PHY PHY TSC ; Line 1 ADC #$00A9 TCS SEP #$20 LDA #$A2 STA $A1,S REP #$30 PEA $22A2 PHD PEA $8A88 PEA $8888 PEA $5805 TSC ; Line 2 ADC #$00AA TCS LDA $97,S AND #$00F0 STA $97,S PHD PEA $AA8A PEA $8845 PHX PHY TSC ; Line 3 ADC #$00AC TCS SEP #$20 LDA #$22 STA $A1,S REP #$30 PEA $22A2 PHD PEA $AA88 PEA $5844 PEA $4404 TSC ; Line 4 ADC #$00AA TCS LDA $94,S AND #$00F0 ORA #$4200 STA $94,S SEP #$20 LDA $A2,S AND #$0F ORA #$20 STA $A2,S REP #$30 PHD PHD PEA $8858 PEA $4420 PHY PEA $2204 TSC ; Line 5 ADC #$00AD TCS SEP #$20 LDA #$45 STA $A1,S REP #$30 PEA $8888 PEA $8888 PEA $8858 PEA $2400 PHX PEA $0020 TSC ; Line 6 ADC #$00AC TCS SEP #$20 LDA $93,S AND #$F0 STA $93,S REP #$30 PHX PHX PEA $4424 PEA $5044 PHX PEA $0400 PEA $2204 TSC ; Line 7 ADC #$00AF TCS SEP #$20 LDA $93,S AND #$F0 STA $93,S REP #$30 PEA $0020 PEA $2222 PEA $2202 PEA $8088 PEA $5544 PHX PHY TSC ; Line 8 ADC #$00AD TCS LDA $94,S AND #$00F0 ORA #$4400 STA $94,S LDA $9A,S AND #$0F00 STA $9A,S PHY PHY PHY PEA $8888 PEA $4544 PEA $4404 TSC ; Line 9 ADC #$00A5 TCS SEP #$20 LDA $A1,S AND #$0F STA $A1,S REP #$30 PEA $8858 PEA $4544 TSC ; Line 10 ADC #$00A4 TCS LDA #$5055 STA $9C,S LDA $9A,S AND #$00F0 ORA #$5500 STA $9A,S LDA $9E,S AND #$0F00 STA $9E,S PEA $0080 PEA $5845 PEA $4404 TSC ; Line 12 ADC #$0140 TCS LDA $00,S AND #$00F0 STA $00,S LDA $02,S AND #$0F00 STA $02,S *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *------------------------------- Spr_014 CLC ; 16x3, 91 bytes, 170 cycles SEI ; Disable Interrupts PHD ; Backup Direct Page TSC ; Backup Stack STA StackAddress LDAL $E1C068 ; Direct Page and Stack in Bank 01/ ORA #$0030 STAL $E1C068 TYA ; Y = Sprite Target Screen Address (upper left corner) TCS ; New Stack address LDX #$0000 ; Pattern #1 : 15 *-- SEP #$20 ; Line 0 LDA $06,S AND #$0F STA $06,S LDA $A0,S AND #$F0 STA $A0,S REP #$30 TSC ADC #$0005 TCS PHX PHX PHX TSC ; Line 1 ADC #$00A7 TCS SEP #$20 LDA $A0,S AND #$0F STA $A0,S REP #$30 PHX PHX PHX TSC ; Line 2 ADC #$00A5 TCS PHX PHX PHX *-- LDAL $E1C068 ; Direct Page and Stack in Bank 00/ AND #$FFCF STAL $E1C068 LDA StackAddress ; Restore Stack TCS PLD ; Restore Direct Page CLI ; Enable Interrupts RTL *-------------------------------