★ CODING ★ SOURCES ★ CODING Source &025 - Rasters ★ |
Animation de rasters en overscan | Coding Sources |
Ce source ce compile sans problème sous l'assembleur de WinAPE.;; ;; https://cpcrulez.fr ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; org &1000 call &0BD19 ; synchro vbl ld a, (byte_235) ld (byte_129), a dec a ld (byte_07A), a ld hl, (word_232) ld ix, loc_0D6+1 call sub_145 ld hl, (word_232) inc hl ld ix, loc_0D3+1 call sub_145 ld hl, (word_232) ld bc, &4F add hl, bc ld (word_15D), hl ld iy, &9800 xor a ld (byte_159), a loc_034: ld a, (byte_159) xor &0FF ld (byte_159), a jr z, loc_05B loc_03E: ld a, (iy+&0) inc iy cp &0FF jr nz, loc_04D ld iy, &9800 jr loc_03E loc_04D: ld l, a ld h, &0 add hl, hl add hl, hl add hl, hl add hl, hl ld bc, &9000 add hl, bc ld (word_15B), hl loc_05B: ld hl, (word_15B) ld de, (word_15D) ld b, &8 loc_064: ld a, (hl) ld (de), a inc hl ld a, d add a, &8 ld d, a djnz loc_064 ld (word_15B), hl ld a, (byte_234) ld hl, loc_15F ld de, loc_160 db &1 byte_07A: db &0BA nop ld (hl), a ldir push iy ld a, (byte_236) ld (byte_15A), a ld bc, loc_300 ld ix, loc_237 ld iy, loc_260 loc_092: ld a, (ix+&0) inc a ld (ix+&0),a inc ix ld l, a ld h, &0 add hl, bc ld l, (hl) ld h, &0 ld de, loc_15F add hl, de ld a, (iy+&0) ld d, (iy+&1) ld e, (iy+&2) inc iy inc iy inc iy ld (hl), a inc hl ld (hl), d inc hl ld (hl), e inc hl ld (hl), d inc hl ld (hl), a ld hl, byte_15A dec (hl) jr nz, loc_092 pop iy ld a, &2F call &0BB1E ; une touche ??? jr nz, loc_143 call &0BD19 ; synchro vbl di ld b, &0 loc_0D3: ld hl, &0C781 loc_0D6: ld de, &0C780 ld c, &4F ldir ld hl, &0CF81 ld de, &0CF80 ld c, &4F ldir ld hl, &0D781 ld de, &0D780 ld c, &4F ldir ld hl, &0DF81 ld de, &0DF80 ld c, &4F ldir ld hl, &0E781 ld de, &0E780 ld c, &4F ldir ld hl, &0EF81 ld de, &0EF80 ld c, &4F ldir ld hl, &0F781 ld de, &0F780 ld c, &4F ldir ld hl, &0FF81 ld de, &0FF80 ld c, &4F ldir ld bc, &7F10 ld d, &20 db &1E byte_129: db &0BB ld hl, loc_15F loc_12D: ld a, (hl) out (c), c out (c), a out (c), d out (c), a ld a, (byte_231) loc_139: dec a jr nz, loc_139 inc hl dec e jr nz, loc_12D jp loc_034 loc_143: ei ret sub_145: ld b, &8 ld de, &0A loc_14A: ld (ix+&0), l ld (ix+&1), h ld a, h add a, &8 ld h, a add ix, de djnz loc_14A ret ; byte_159: db &0 byte_15A: db &0 word_15B: dw &9420 word_15D: dw &0C7CF loc_15F: db &54 loc_160: db &54,&54,&54,&54,&54,&54,&54,&54,&54,&54,&54,&54 db &54,&54,&54,&54,&54,&54,&54,&54,&54,&54,&54 db &54,&54,&54,&54,&54,&54,&54,&54,&54,&54,&54 db &54,&5D,&4F,&4B,&4F,&5D,&54,&5D,&5F,&4B,&5F db &5D,&54,&54,&54,&54,&54,&55,&57,&4B,&57,&55 db &54,&54,&54,&54,&54,&54,&54,&56,&57,&5B,&57 db &56,&54,&54,&54,&54,&54,&54,&54,&54,&54,&54 db &46,&42,&4B,&42,&46,&54,&54,&54,&54,&54,&54 db &54,&54,&54,&54,&54,&54,&54,&56,&42,&4A,&42 db &56,&54,&54,&54,&54,&54,&54,&54,&54,&54,&54 db &54,&54,&54,&56,&5A,&43,&5A,&56,&54,&54,&54 db &54,&54,&54,&54,&54,&54,&54,&54,&54,&5E,&4E db &4A,&4E,&5E,&54,&54,&54,&54,&54,&54,&54,&54 db &54,&54,&54,&54,&5C,&4E,&4A,&4E,&5C,&54,&54 db &54,&54,&54,&54,&54,&54,&5C,&4C,&47,&4C,&5C db &54,&54,&54,&54,&54,&54,&54,&54,&54,&54,&54 db &54,&54,&54,&54,&54,&54,&54,&54,&54,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&2F byte_231: db &0A word_232: dw &0C780 byte_234: db &54 byte_235: db &0BB byte_236: db &0A loc_237: db &24,&28,&2C,&30,&34,&38,&3C,&40,&44,&48,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0 loc_260: db &5C,&4C,&47,&5C,&4E,&4A,&5E,&4E,&4A,&56,&5A,&43 db &56,&42,&4A,&46,&42,&4B,&56,&57,&5B,&55,&57 db &4B,&5D,&5F,&4B,&5D,&4F,&4B,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0,&0,&0 loc_300: db &5A,&5F,&65,&6A,&6F,&75,&7A,&7F,&84,&89,&8D,&92 db &96,&9A,&9E,&0A1,&0A4,&0A7,&0AA,&0AC,&0AE,&0B0 db &0B1,&0B2,&0B3,&0B3,&0B3,&0B3,&0B2,&0B1,&0B0 db &0AE,&0AC,&0AA,&0A8,&0A5,&0A2,&9F,&9C,&98,&95 db &91,&8D,&89,&84,&80,&7C,&77,&73,&6E,&69,&65 db &61,&5C,&58,&53,&4F,&4B,&47,&44,&40,&3D,&39 db &36,&34,&31,&2E,&2C,&2A,&28,&27,&26,&24,&24 db &23,&23,&22,&22,&22,&23,&23,&24,&25,&26,&27 db &29,&2A,&2C,&2D,&2F,&31,&33,&34,&36,&38,&3A db &3C,&3E,&40,&42,&44,&46,&48,&49,&4B,&4D,&4E db &4F,&51,&52,&53,&54,&55,&56,&57,&57,&58,&58 db &59,&59,&59,&59,&59,&5A,&5A,&5A,&5A,&5A,&5A db &59,&59,&59,&59,&59,&5A,&5A,&5A,&5A,&5A,&5B db &5B,&5C,&5C,&5D,&5E,&5F,&60,&61,&62,&64,&65 db &66,&68,&6A,&6B,&6D,&6F,&71,&73,&75,&77,&79 db &7B,&7D,&7F,&80,&82,&84,&86,&87,&89,&8A,&8C db &8D,&8E,&8F,&90,&90,&91,&91,&91,&90,&90,&8F db &8F,&8D,&8C,&8B,&89,&87,&85,&82,&80,&7D,&7A db &76,&73,&6F,&6C,&68,&64,&60,&5B,&57,&52,&4E db &4A,&45,&40,&3C,&37,&33,&2F,&2A,&26,&22,&1E db &1B,&17,&14,&11,&0E,&0B,&9,&7,&5,&3,&2,&1 db &0,&0,&0,&0,&1,&2,&3,&5,&7,&9,&0C,&0F,&12 db &15,&19,&1D,&21,&26,&2A,&2F,&34,&39,&3E,&44 db &49,&4E,&54,&0,&0,&0,&0,&0,&0,&0,&0,&0 db &0,&0,&0,&0,&0,&0,&0 |
|