Advertisement
vito-Z80

zebra full screen

Jul 4th, 2020
2,561
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     device zxspectrum48
  2. ; Author: Serdjuk
  3. ; Assembly: sjasmplus
  4.  
  5.         org #6000
  6. start:
  7.     call spriteCreate
  8.  
  9. mainLoop:
  10.     ei
  11.     halt
  12.  
  13. spriteLines:
  14.     ld hl,spriteData
  15.     //  get sprite line
  16.     ld e,(hl)
  17.     inc l
  18.     ld d,(hl)
  19.     inc l
  20.     ld c,(hl)
  21.     inc l
  22.     ld b,(hl)
  23.     inc l
  24.     ld (spriteLines+1),hl   // save next sprite line address
  25.  
  26.     ld (saveSp),sp
  27.     ld sp,#5800 // end of screen address
  28.  
  29.     ld a,192
  30. nextScrLine:
  31.     dup 8
  32.     push bc
  33.     push de
  34.     edup
  35.     dec a
  36.     jr nz,nextScrLine
  37.         ld sp,(saveSp)
  38.  
  39.         jr mainLoop
  40. saveSp: dw 0
  41. //----------sprite create---------------
  42. spriteCreate:
  43.     ld a,#FF
  44.     ld (#4002),a
  45.     ld (#4003),a
  46.     ld (#4006),a
  47.     ld (#4007),a
  48.     ld de,spriteData
  49.     ld a,32
  50. nextRL:
  51.     ld hl,#4000
  52.     ldi
  53.     ldi
  54.     ldi
  55.     ldi
  56.     ld l,7
  57.     ld b,l
  58.     inc b
  59. shiftLoop:
  60.     rl (hl)
  61.     dec l
  62.     djnz shiftLoop
  63.     dec a
  64.     jr nz,nextRL
  65.     ld hl,spriteData
  66.     ld de,spriteData+128
  67.     ld bc,128
  68.     ldir
  69.     ret
  70. endCode:    equ $
  71. //--------------------------------------------
  72.     align 256
  73. spriteData:
  74.     db #0,#FF,#FF,#0
  75.     block 252,0
  76. //--------------------------------------------
  77. endData:    equ $
  78.  
  79.  
  80.     display "size: ",/A, endCode - start
  81.  
  82.         savetap "main.tap",start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement