home *** CD-ROM | disk | FTP | other *** search
/ Barymag 2 / Barymag_2_1996_Slight_pl_Side_D.atr / intro.arc / DRAW.ASM < prev    next >
Assembly Source File  |  1988-09-01  |  8KB  |  1 lines

  1.      opt %00100101¢¢     org $00¢ad0  org *+2¢xd0  org *+1¢xd1  org *+1¢yd0  org *+1¢yd1  org *+1¢dx   org *+1¢dy   org *+1¢cx   org *+1¢cy   org *+1¢err  org *+1¢¢¢* -----------------------¢* Sprite draw routine 1.0¢* coded by Seban/SLIGHT !¢* (c) 1996.04.23¢* -----------------------¢¢     org $a000¢¢set  sta md0+1¢     sta md1+1¢     sta md2+1¢     sta md3+1¢     rts¢¢draw lda #$00¢     sta cx¢     sta cy¢¢     sec¢     lda xd1¢     sbc xd0¢     bcs d0¢     dec cx¢     ldx xd0¢     ldy xd1¢     sty xd0¢     stx xd1¢     eor #$ff¢     adc #$01¢d0   sta dx¢¢     sec¢     lda yd1¢     sbc yd0¢     bcs d1¢     dec cy¢     ldx yd0¢     ldy yd1¢     sty yd0¢     stx yd1¢     eor #$ff¢     adc #$01¢d1   sta dy¢¢     cmp dx¢     bcs zy¢¢¢* ------------¢* Always X !!!¢* ------------¢¢zx   ldx dx    ; always X¢     txa¢     lsr @¢     sta err¢¢     lda cx¢     eor cy¢     bne zxb¢¢zxa  lda xd0¢     lsr @¢     lsr @¢     lsr @¢     clc¢md0  adc #$69¢     sta ad0+1¢¢     lda xd0¢     and #$07¢     tay¢     lda ta0,y¢     sta ru0+1¢     lda ta1,y¢     sta ru0+2¢     sec¢     ldy yd0¢ru0  jmp $4c4c¢¢zxb  lda xd1¢     lsr @¢     lsr @¢     lsr @¢     clc¢md1  adc #$69¢     sta ad0+1¢¢     lda xd1¢     and #$07¢     tay¢     lda tb0,y¢     sta ru1+1¢     lda tb1,y¢     sta ru1+2¢     sec¢     ldy yd0¢ru1  jmp $4c4c¢¢* ------------¢* Always Y !!!¢* ------------¢¢zy   ldx dy¢     txa¢     lsr @¢     sta err¢¢¢     lda cx¢     eor cy¢     bne zyb¢¢zya  lda xd0¢     lsr @¢     lsr @¢     lsr @¢     clc¢md2  adc #$69¢     sta ad0+1¢¢     lda xd0¢     and #$07¢     tay¢     lda tc0,y¢     sta ru2+1¢     lda tc1,y¢     sta ru2+2¢     sec¢     ldy yd0¢ru2  jmp $4c4c¢¢zyb  lda xd1¢     lsr @¢     lsr @¢     lsr @¢     clc¢md3  adc #$69¢     sta ad0+1¢¢     lda xd1¢     and #$07¢     tay¢     lda td0,y¢     sta ru3+1¢     lda td1,y¢     sta ru3+2¢     sec¢     ldy yd0¢ru3  jmp $4c4c¢¢* ----------------------------------¢¢ta0  dta l(a00),l(a01),l(a02),l(a03)¢     dta l(a04),l(a05),l(a06),l(a07)¢ta1  dta h(a00),h(a01),h(a02),h(a03)¢     dta h(a04),h(a05),h(a06),h(a07)¢tb0  dta l(b07),l(b06),l(b05),l(b04)¢     dta l(b03),l(b02),l(b01),l(b00)¢tb1  dta h(b07),h(b06),h(b05),h(b04)¢     dta h(b03),h(b02),h(b01),h(b00)¢¢tc0  dta l(c00),l(c01),l(c02),l(c03)¢     dta l(c04),l(c05),l(c06),l(c07)¢tc1  dta h(c00),h(c01),h(c02),h(c03)¢     dta h(c04),h(c05),h(c06),h(c07)¢td0  dta l(d07),l(d06),l(d05),l(d04)¢     dta l(d03),l(d02),l(d01),l(d00)¢td1  dta h(d07),h(d06),h(d05),h(d04)¢     dta h(d03),h(d02),h(d01),h(d00)¢¢     org set+$0200¢¢* ---------------¢* Always Y,type A¢¢dq4  rts¢     sta err¢c00  lda #$80¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq4¢     iny¢     lda err¢     sbc dx¢     bcs c00-2¢     adc dy¢¢     sta err¢c01  lda #$40¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq4¢     iny¢     lda err¢     sbc dx¢     bcs c01-2¢     adc dy¢¢     sta err¢c02  lda #$20¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq4¢     iny¢     lda err¢     sbc dx¢     bcs c02-2¢     adc dy¢¢     sta err¢c03  lda #$10¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq4¢     iny¢     lda err¢     sbc dx¢     bcs c03-2¢     adc dy¢¢     sta err¢c04  lda #$08¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq5¢     iny¢     lda err¢     sbc dx¢     bcs c04-2¢     adc dy¢¢     sta err¢c05  lda #$04¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq5¢     iny¢     lda err¢     sbc dx¢     bcs c05-2¢     adc dy¢¢     sta err¢c06  lda #$02¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq5¢     iny¢     lda err¢     sbc dx¢     bcs c06-2¢     adc dy¢¢     sta err¢c07  lda #$01¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq5¢     iny¢     lda err¢     sbc dx¢     bcs c07-2¢     adc dy¢¢     inc ad0+1¢     jmp c00-2¢dq5  rts¢¢     org set+$300¢¢* ---------------¢* Always Y,type B¢¢dq6  rts¢     sta err¢d00  lda #$01¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq6¢     iny¢     lda err¢     sbc dx¢     bcs d00-2¢     adc dy¢¢¢     sta err¢d01  lda #$02¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq6¢     iny¢     lda err¢     sbc dx¢     bcs d01-2¢     adc dy¢¢     sta err¢d02  lda #$04¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq6¢     iny¢     lda err¢     sbc dx¢     bcs d02-2¢     adc dy¢¢     sta err¢d03  lda #$08¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq6¢     iny¢     lda err¢     sbc dx¢     bcs d03-2¢     adc dy¢¢     sta err¢d04  lda #$10¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq7¢     iny¢     lda err¢     sbc dx¢     bcs d04-2¢     adc dy¢¢     sta err¢d05  lda #$20¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq7¢     iny¢     lda err¢     sbc dx¢     bcs d05-2¢     adc dy¢¢     sta err¢d06  lda #$40¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq7¢     iny¢     lda err¢     sbc dx¢     bcs d06-2¢     adc dy¢¢     sta err¢d07  lda #$80¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq7¢     iny¢     lda err¢     sbc dx¢     bcs d07-2¢     adc dy¢¢     dec ad0+1¢     jmp d00-2¢dq7  rts¢¢     org set+$400¢¢* ---------------¢* Always X,type A¢¢dq0  rts¢a00  lda #$80¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq0¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢a01  lda #$40¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq0¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢a02  lda #$20¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq0¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢a03  lda #$10¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq0¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢a04  lda #$08¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq1¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢a05  lda #$04¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq1¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢a06  lda #$02¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq1¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢a07  lda #$01¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq1¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢     inc ad0+1¢     jmp a00¢¢dq1  rts¢¢     org set+$500¢¢* -----------------¢* always X,type B¢¢dq2  rts¢b00  lda #$01¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq2¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢b01  lda #$02¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq2¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢b02  lda #$04¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq2¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢b03  lda #$08¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq2¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢b04  lda #$10¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq3¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢b05  lda #$20¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq3¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢b06  lda #$40¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq3¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢b07  lda #$80¢     ora (ad0),y¢     sta (ad0),y¢     dex¢     bmi dq3¢     lda err¢     sbc dy¢     bcs *+5¢     adc dx¢     iny¢     sta err¢¢     dec ad0+1¢     jmp b00¢¢dq3  rts¢