Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- device zxspectrum128
- ; Author: Serdjuk
- ; Assembly: sjasmplus
- org #6000
- begin:
- ld sp,#c000
- ld a,#1d
- ld bc,#7ffd
- out (c),a
- ld hl,#D800
- ld de,#D801
- ld bc,767
- ld (hl),5
- ldir
- ld a,#17
- ld bc,#7ffd
- out (c),a
- ld hl,#D800
- ld de,#D801
- ld bc,767
- ld (hl),5
- ldir
- repeat:
- ei
- halt
- call bank
- call showLines
- call printSprite
- jr repeat
- ;----------------------------------------------------
- saveSP: defw #0000
- bank:
- ld a,#17
- ld bc,#7ffd
- out (c),a
- xor #0a
- ld (bank+1),a
- ret
- ;----------------------------------------------------
- showLines:
- ld hl,#0101
- rlc l
- rlc h
- ld (showLines+1),hl
- screenPart:
- ld (saveSP),sp
- ld sp,#C000+#1800
- ld b,192
- cp1:
- dup 16
- push hl
- edup
- djnz cp1
- ld sp,(saveSP)
- ret
- ;----------------------------------------------------
- printSprite:
- ld hl,sprite64x64 ; sprite address
- ld de,#c80c ; screen address
- ld b,64 ; height
- loop push bc,de
- dup 8 ; width
- ldi
- edup
- pop de,bc
- call down_de ; next line address
- djnz loop
- ret
- down_de:
- inc d
- ld a,d
- and 7
- jr nz,$+12
- ld a,e
- add a,32
- ld e,a
- jr c,$+6
- ld a,d
- sub 8
- ld d,a
- ret
- sprite64x64:
- defb #00, #00, #00, #00, #00, #00, #00, #00, #00, #00, #00, #00, #00, #00, #00, #00
- defb #00, #00, #00, #00, #00, #00, #00, #00, #00, #1C, #81, #00, #00, #00, #00, #00
- defb #00, #0F, #FF, #E0, #00, #00, #00, #00, #00, #01, #FE, #70, #00, #00, #00, #00
- defb #00, #00, #50, #38, #00, #00, #00, #00, #00, #00, #40, #0E, #00, #00, #00, #00
- defb #00, #00, #40, #07, #00, #00, #00, #00, #00, #00, #60, #3F, #C0, #00, #00, #00
- defb #00, #00, #7E, #3C, #F0, #00, #00, #00, #00, #01, #FE, #3E, #38, #00, #00, #00
- defb #00, #07, #F0, #1E, #0E, #00, #00, #00, #00, #07, #F0, #1E, #03, #80, #00, #00
- defb #00, #07, #E0, #00, #00, #E0, #00, #00, #00, #07, #E0, #00, #00, #30, #00, #00
- defb #00, #07, #C0, #00, #00, #18, #00, #00, #00, #00, #C0, #00, #00, #1C, #00, #00
- defb #00, #00, #F0, #00, #00, #0C, #00, #00, #00, #00, #F0, #00, #00, #04, #00, #00
- defb #00, #00, #40, #00, #00, #06, #00, #00, #00, #00, #60, #00, #00, #06, #00, #00
- defb #00, #00, #38, #00, #00, #07, #00, #00, #00, #00, #1F, #F8, #00, #03, #00, #00
- defb #00, #00, #0F, #E0, #00, #03, #80, #00, #00, #00, #09, #FC, #C0, #03, #80, #00
- defb #00, #00, #09, #F0, #40, #03, #C0, #00, #00, #00, #1B, #C3, #60, #01, #C0, #00
- defb #00, #00, #1B, #07, #60, #01, #E0, #00, #00, #00, #1E, #02, #30, #01, #E0, #00
- defb #00, #00, #16, #00, #30, #01, #E0, #00, #00, #00, #34, #00, #18, #01, #A0, #00
- defb #00, #00, #34, #00, #18, #01, #A0, #00, #00, #00, #36, #00, #1C, #01, #A0, #00
- defb #00, #00, #26, #00, #0C, #00, #E0, #00, #00, #00, #27, #80, #0E, #00, #E0, #00
- defb #00, #00, #23, #80, #06, #00, #C0, #00, #00, #00, #21, #C0, #06, #00, #80, #00
- defb #00, #00, #21, #F0, #02, #00, #80, #00, #00, #00, #21, #FF, #83, #00, #80, #00
- defb #00, #00, #30, #FF, #FF, #00, #80, #00, #00, #00, #30, #FF, #FF, #00, #C0, #00
- defb #00, #00, #3C, #3F, #FF, #00, #40, #00, #00, #00, #16, #7D, #FF, #C0, #40, #00
- defb #00, #00, #1B, #FC, #FE, #C0, #40, #00, #00, #00, #0F, #F8, #7F, #C1, #C0, #00
- defb #00, #00, #0F, #F0, #3F, #C3, #00, #00, #00, #00, #00, #00, #1E, #CF, #00, #00
- defb #00, #00, #00, #00, #1F, #CC, #00, #00, #00, #00, #00, #00, #3F, #F8, #00, #00
- defb #00, #00, #00, #00, #3F, #C0, #00, #00, #00, #00, #06, #00, #79, #E0, #00, #00
- defb #00, #00, #0F, #00, #70, #F0, #00, #00, #00, #00, #0F, #80, #70, #78, #00, #00
- defb #00, #00, #0F, #80, #E0, #3C, #00, #00, #00, #00, #06, #C0, #E0, #1E, #00, #00
- defb #00, #00, #07, #C1, #C0, #0F, #00, #00, #00, #00, #03, #E1, #C0, #07, #00, #00
- defb #00, #00, #01, #F3, #80, #03, #00, #00, #00, #00, #00, #FF, #80, #FF, #00, #00
- defb #00, #00, #00, #FF, #01, #FE, #00, #00, #00, #00, #00, #3F, #00, #78, #00, #00
- defb #00, #00, #00, #0E, #00, #00, #00, #00, #00, #00, #00, #00, #00, #00, #00, #00
Add Comment
Please, Sign In to add comment