Hello guys,
Define the sprites for SCREEN5 in Assembly for MSX2.
Here downstairs, there is already a my source example for
define the sprites, but unfortunately something that does not work,
because when I PUT SPRITE by BASIC not seen the sprites!
So kindly ask your help if anyone is willing
to correct my source in assembly.
sorry if the comments are in Italian.....
Regards
;-)
AG.
; [YOUR GROUP] MSX Z80 source file. ; ; Prog: ; Code: [YOUR HANDLE] ; Date: ; ; cmnt: ; ; Coded in TeddyWareZ' Chaos Assembler 3 ; ; (C) 2001 [YOUR GROUP]! .org $D000 - 7 .db $fe .dw startProgram,endProgram,startProgram startProgram: SPRTBL .equ $7600 ; indirizzi tabelle definizione sprites SPRCLR .equ $7400 ; indirizzi tabelle colore per sprites multicolore CHGMOD .equ $005f ; routine del BIOS usata per inizializzare lo schermo (V9938) ld a,5 ; SET SCREEN 5 call $005f ; SCREEN5 mode ; VDP(1)=98 = SCREEN ,2 = SPRITE 16 X 16 xor %11100010 ; %01100010 -- ld a,98 out ($99),a xor %11100011 ; %10000001 -- ld a,1+128 out ($99),a ; Alloca la forma degli sprite ld hl,SPRDEF ld de,SPRTBL ld bc,19*32 call setup_write_vram ; Alloca il colore degli sprite ld hl,SPRCOLOR ld de,SPRCLR ld bc,19*16 call setup_write_vram SPRDEF: ; Space Manbow-1 .DB 27,61,30,231,7,0,0,60,112,96,192,0,0,0,0,0 .DB 160,200,224,56,207,0,0,0,0,0,0,0,0,0,0,0 .DB 36,66,33,0,0,0,0,0,0,0,0,0,0,0,0,0 .DB 80,52,30,0,0,0,0,0,0,0,0,0,0,0,0,0 .DB 0,0,0,24,8,31,63,0,0,0,0,0,0,0,0,0 .DB 0,0,0,199,48,248,0,0,0,0,0,0,0,0,0,0 ; Space Manbow-2 "Ala superiore" .DB 0,0,0,0,0,0,0,192,96,48,56,28,30,11,12,0 .DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .DB 0,0,0,0,0,0,0,0,128,64,64,32,32,20,19,14 .DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; BULLET FIRE! MANBOW 1UP .DB 0,0,0,0,0,0,127,255,127,0,0,0,0,0,0,0 .DB 0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0 ; FX ESPLOSIONE ;mini esplosione .DB 64,112,59,31,29,11,14,124,60,54,27,63,121,97,193,0 .DB 0,131,134,158,252,216,108,60,62,112,208,184,248,220,14,2 .DB 8,138,239,126,38,121,57,246,23,63,53,97,0,0,0,0 .DB 96,192,192,128,240,192,224,64,192,112,16,0,0,0,0,0 .DB 142,100,121,63,151,157,56,117,61,152,221,182,63,115,97,140 .DB 49,134,206,252,109,187,25,188,174,28,185,233,252,158,38,113 ; Super Esplosione .DB 48,48,18,9,4,24,3,7,3,7,141,109,45,102,47,13 .DB 0,0,32,71,31,62,95,28,255,251,159,206,236,245,243,199 .DB 4,40,120,0,220,254,97,223,255,251,115,103,31,181,207,231 .DB 0,0,3,39,40,144,196,200,0,72,36,240,240,248,120,88 .DB 26,30,31,15,15,36,18,0,19,35,9,20,228,192,0,0 .DB 231,243,237,248,230,206,223,255,251,198,127,59,0,30,20,32 .DB 227,207,175,55,83,249,223,255,56,250,124,248,226,4,0,0 .DB 176,244,102,180,246,177,224,192,224,192,24,32,144,72,12,12 ; Super Esplosione FX B .DB 128,194,97,48,25,19,3,15,15,6,25,63,61,27,27,93 .DB 0,0,15,30,68,255,255,255,127,253,188,141,167,218,195,7 .DB 0,128,24,252,253,155,107,253,126,99,23,39,47,159,241,219 .DB 3,6,12,56,144,130,228,240,224,240,224,232,236,252,236,228 .DB 39,55,63,55,23,7,15,7,15,39,65,9,28,48,96,192 .DB 219,143,249,244,228,232,198,126,191,214,217,191,63,24,1,0 .DB 224,195,91,229,177,61,191,254,255,255,255,34,120,240,0,0 .DB 186,216,216,188,252,152,96,240,240,192,200,156,12,70,35,1 ; Missile MANBOW air-air .DB 0,0,0,0,248,62,31,31,31,62,248,0,0,0,0,0 .DB 0,0,0,0,0,0,254,255,254,0,0,0,0,0,0,0 ; Fuoco Missile MANBOW air-air .DB 0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0 .DB 0,0,0,0,12,62,255,255,255,62,12,0,0,0,0,0 SPRCOLOR: ; colors Space Manbow-1 .db 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15 ; bianco .db 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4 ; blu .db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,10 ; Light Blue ; colors Space Manbow-2 "Ala superiore" .db 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15 ; bianco .db 10,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2 ; Light Blue ; colors BULLET FIRE! MANBOW 1UP .DB 0,0,0,0,0,0,4,15,4,0,0,0,0,0,0,0 ; bullet FIRE! colors ; colors ESPLOSIONE FX ; mini esplosione FX giallo color .DB 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10 ; giallo .DB 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10 ; giallo .DB 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10 ; giallo ; Super Explosione FX parte A .DB 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6 ; rosso scuro .DB 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6 ; rosso scuro .DB 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6 ; rosso scuro .DB 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6 ; rosso scuro ; Super Explosione FX parte B .DB 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 ; rosso .DB 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 ; rosso .DB 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 ; rosso .DB 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 ; rosso ; colors Missile MANBOW air-air .DB 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14 ; grigio scuro ; colors Fuoco Missile MANBOW air-air .DB 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 ; rosso ; Versione del programma (visibile attraverso un editor esadecimale) VERSION .text "SCRAMBLE MANBOW v1.6" setup_write_vram: di ld c,099h set 6,h out (c),l out (c),h ei ret setup_read_vram: di ld c,099h out (c),l out (c),h ei ret endProgram: .end
Login sesión o register para postear comentarios