;z80 ;zx-spectrum ;assembler ; my own 888 depacker DEPACK LD HL,0 LD D,1 ; C,D,E : R,G,B EXX LD HL,#B800 LD C,#80 BOXER CALL POP3BIT JR Z,COL8 DEC A CALL NZ,PALETE LD B,64 colnumz LD A,0 DEC A JP Z,COL1 DEC A JR Z,COL2 DEC A JR Z,COL3 DEC A JR Z,COL4 DEC A JR Z,COL5 COL6 SLA C CALL Z,CHL JR C,col6_1 SLA C CALL Z,CHL LD A,0 ADC A,0 JR col6_2 col6_1 CALL POP2BIT ADD A,2 col6_2 CALL PUTCOL DJNZ COL6 JP NEXTBOX COL5 CALL POP2BIT CP 3 JR C,col5_1 SLA C CALL Z,CHL LD A,3 ADC A,0 col5_1 CALL PUTCOL DJNZ COL5 JR NEXTBOX COL4 CALL POP2BIT CALL PUTCOL DJNZ COL4 JR NEXTBOX COL3 SLA C CALL Z,CHL LD A,0 JR NC,col3_1 SLA C CALL Z,CHL ADC A,1 col3_1 CALL PUTCOL DJNZ COL3 JR NEXTBOX COL2 SLA C CALL Z,CHL LD A,0 ADC A,0 CALL PUTCOL DJNZ COL2 JR NEXTBOX COL8 PUSH BC LD DE,col8buf LD BC,24 LDIR LD BC,#7FFD LD A,#10 OUT (C),A POP BC EXX LD DE,col8buf LD A,#40 CALL PUTBOX LD A,#88 CALL PUTBOX LD A,#10 CALL PUTBOX LD BC,#7FFD LD A,#11 OUT (C),A LD A,H SUB #E8 LD D,1 JR NXB COL1 XOR A CALL PUTCOL DJNZ COL1 NEXTBOX EXX LD A,H NXB INC L JR Z,nbox_1 SUB 8 nbox_1 LD H,A EXX CP #18 JP C,BOXER RET PUTBOX PUSH DE ADD A,H LD H,A LD B,8 pbox_1 LD A,(DE) LD (HL),A INC DE INC DE INC DE INC H DJNZ pbox_1 POP DE INC DE RET col8buf DS 24 PUTCOL LD E,A LD D,#5B LD A,(DE) EXX RRA RL E RRA RL C RRA RL D JR NC,EXXRET LD A,H ADD A,#40 LD H,A LD (HL),C LD BC,#7FFD LD A,#10 OUT (C),A LD A,H ADD A,#90 LD H,A LD (HL),D ADD A,#18 LD H,A LD (HL),E SUB #E7 LD H,A LD BC,#7FFD LD A,#11 OUT (C),A LD D,1 EXXRET EXX RET PALETE LD (colnumz+1),A LD E,A LD D,#5B pal_1 CALL POP3BIT DEC E LD (DE),A JR NZ,pal_1 RET POP2BIT LD A,#40 JR pbit_1 POP3BIT LD A,#20 pbit_1 SLA C CALL Z,CHL ADC A,A JR NC,pbit_1 RET CHL LD C,(HL) INC HL RL C RET