ORG &AFC3
y_loop:
LD A,C
EXX
LD B,A ;;B'=x_loop counter
x_loop:
LD A,(DE) : INC DE ;; Load sprite data and update source pointer.
OR A : JR Z,$+3 ;; Is byte opaque?
LD (HL),A ;; Write byte.
INC HL ;; Update target pointer.
DJNZ x_loop
EX DE,HL ;; Swap registers to allow DE=DE+BC.
LD C,0 :source_skip ;; Skip bytes in source data.
ADD HL,BC
EX DE,HL
LD BC,#07FA :target_skip ;; Go to next row and skip bytes on screen.
ADD HL,BC
BIT 6,H ;; Was the screen memory left?
jump_condition: JP Z,$+7
LD BC,#C040 : ADD HL,BC ;; Then correct target pointer.
EXX
DJNZ y_loop
ORG &AFC3
y_loop:
LD A,C
EXX
LD B,A ;;B'=x_loop counter
x_loop:
LD A,(DE) : INC DE ;; Load sprite data and update source pointer.
OR A : JR Z,$+3 ;; Is byte opaque?
LD (HL),A ;; Write byte.
INC HL ;; Update target pointer.
DJNZ x_loop
EX DE,HL ;; Swap registers to allow DE=DE+BC.
LD BC,#0000 :source_skip ;; Skip bytes in source data.
ADD HL,BC
EX DE,HL
LD BC,#07FA :target_skip ;; Go to next row and skip bytes on screen.
ADD HL,BC
BIT 6,H ;; Was the screen memory left?
jump_condition: JP Z,$+7
LD BC,#C040 : ADD HL,BC ;; Then correct target pointer.
EXX
DJNZ y_loop
Quote from: ZorrO on Today at 12:55very low margin? - I don't think so. There's about 2mm betweenI primarily meant that I would expect that the circle must be close to perfect to avoid being unbalanced and that the foil doesn't get any buckles when being cut.
Page created in 0.214 seconds with 14 queries.