00000000: 0D 3B C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 |.;..............|
00000010: C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 |................|
00000020: C0 C0 C0 C0 C0 C0 C0 C0 3B 0D 3B 20 4D 44 52 2D |........;.; MDR-|
00000030: 44 45 50 41 43 4B 45 52 20 56 32 2E 31 20 20 20 |DEPACKER V2.1 |
00000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000050: 20 3B 0D 3B C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 | ;.;............|
00000060: C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 |................|
00000070: C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 3B 0D 3B 20 4F 52 |..........;.; OR|
00000080: 49 47 49 4E 41 4C 20 43 4F 44 45 20 4A 41 4E 27 |IGINAL CODE JAN'|
00000090: 39 36 20 42 59 20 4D 41 44 52 4F 4D 20 20 20 20 |96 BY MADROM |
000000A0: 20 20 20 3B 0D 3B C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 | ;.;..........|
000000B0: C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 |................|
000000C0: C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 3B 0D 3B 20 |............;.; |
000000D0: 23 20 49 4D 50 52 4F 56 45 44 20 4A 41 4E 27 39 |# IMPROVED JAN'9|
000000E0: 37 20 42 59 20 53 54 4F 46 46 2F 4E 45 4F 50 4C |7 BY STOFF/NEOPL|
000000F0: 41 53 49 41 20 3B 0D 3B 20 23 20 49 4D 50 52 4F |ASIA ;.; # IMPRO|
00000100: 56 45 44 20 46 45 42 27 39 37 20 42 59 20 54 4F |VED FEB'97 BY TO|
00000110: 58 49 43 2F 4E 45 4F 50 4C 41 53 49 41 20 3B 0D |XIC/NEOPLASIA ;.|
00000120: 3B C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 |;...............|
00000130: C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 |................|
00000140: C0 C0 C0 C0 C0 C0 C0 3B 0D 3B 4F 4E 4C 59 20 54 |.......;.;ONLY T|
00000150: 4F 20 55 53 45 20 57 49 54 48 20 4D 44 52 2D 50 |O USE WITH MDR-P|
00000160: 41 43 4B 45 52 20 31 2E 32 20 4F 52 20 31 2E 35 |ACKER 1.2 OR 1.5|
00000170: 3B 0D 3B 50 41 43 4B 45 44 20 46 49 4C 45 53 2E |;.;PACKED FILES.|
00000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000190: 20 20 20 20 20 20 20 20 20 3B 0D 3B 20 20 20 20 | ;.; |
000001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000001C0: 20 20 3B 0D 3B 45 58 41 4D 50 4C 45 20 54 4F 20 | ;.;EXAMPLE TO |
000001D0: 44 45 50 41 43 4B 20 41 20 50 41 43 4B 45 44 20 |DEPACK A PACKED |
000001E0: 46 49 4C 45 20 41 54 20 20 20 20 3B 0D 3B 24 36 |FILE AT ;.;$6|
000001F0: 30 30 30 20 49 4E 20 4D 45 4D 4F 52 59 20 54 4F |000 IN MEMORY TO|
00000200: 20 24 32 30 30 30 20 20 20 20 20 20 20 20 20 20 | $2000 |
00000210: 20 20 20 20 3B 0D 3B 20 20 20 20 20 20 20 20 20 | ;.; |
00000220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000230: 20 20 20 20 20 20 20 20 20 20 20 20 20 3B 0D 3B | ;.;|
00000240: 20 20 20 20 4C 44 41 20 23 3C 24 36 30 30 30 20 | LDA #<$6000 |
00000250: 3B 50 41 43 4B 45 44 20 20 20 20 20 20 20 20 20 |;PACKED |
00000260: 20 20 20 20 20 20 3B 0D 3B 20 20 20 20 4C 44 58 | ;.; LDX|
00000270: 20 23 3E 24 36 30 30 30 20 3B 46 49 4C 45 20 20 | #>$6000 ;FILE |
00000280: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B | ;|
00000290: 0D 3B 20 20 20 20 53 54 41 20 5A 50 31 20 20 20 |.; STA ZP1 |
000002A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000002B0: 20 20 20 20 20 20 20 20 3B 0D 3B 20 20 20 20 53 | ;.; S|
000002C0: 54 58 20 5A 50 32 20 20 20 20 20 20 20 20 20 20 |TX ZP2 |
000002D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000002E0: 20 3B 0D 3B 20 20 20 20 4C 44 41 20 23 3C 24 32 | ;.; LDA #<$2|
000002F0: 30 30 30 20 3B 44 45 50 41 43 4B 20 20 20 20 20 |000 ;DEPACK |
00000300: 20 20 20 20 20 20 20 20 20 20 3B 0D 3B 20 20 20 | ;.; |
00000310: 20 4C 44 58 20 23 3E 24 32 30 30 30 20 3B 54 4F | LDX #>$2000 ;TO|
00000320: 20 2E 2E 2E 20 20 20 20 20 20 20 20 20 20 20 20 | ... |
00000330: 20 20 20 3B 0D 3B 20 20 20 20 53 54 41 20 5A 50 | ;.; STA ZP|
00000340: 33 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |3 |
00000350: 20 20 20 20 20 20 20 20 20 20 20 20 3B 0D 3B 20 | ;.; |
00000360: 20 20 20 53 54 58 20 5A 50 34 20 20 20 20 20 20 | STX ZP4 |
00000370: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000380: 20 20 20 20 20 3B 0D 3B 20 20 20 20 4A 53 52 20 | ;.; JSR |
00000390: 44 45 50 20 20 20 20 20 20 20 20 20 20 20 20 20 |DEP |
000003A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B 0D | ;.|
000003B0: 3B C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 |;...............|
000003C0: C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 |................|
000003D0: C0 C0 C0 C0 C0 C0 C0 3B 0D 0D 3B 55 53 45 44 20 |.......;..;USED |
000003E0: 5A 45 52 4F 50 41 47 45 20 42 59 54 45 53 0D 0D |ZEROPAGE BYTES..|
000003F0: 5A 50 31 20 20 20 20 20 20 3D 20 24 42 30 0D 5A |ZP1 = $B0.Z|
00000400: 50 32 20 20 20 20 20 20 3D 20 24 42 31 0D 5A 50 |P2 = $B1.ZP|
00000410: 33 20 20 20 20 20 20 3D 20 24 42 32 0D 5A 50 34 |3 = $B2.ZP4|
00000420: 20 20 20 20 20 20 3D 20 24 42 33 0D 0D 44 45 50 | = $B3..DEP|
00000430: 20 20 20 20 20 20 4C 44 59 20 23 24 30 30 0D 20 | LDY #$00. |
00000440: 20 20 20 20 20 20 20 20 4C 44 41 20 28 5A 50 31 | LDA (ZP1|
00000450: 29 2C 59 0D 20 20 20 20 20 20 20 20 20 53 54 41 |),Y. STA|
00000460: 20 43 54 52 4C 42 59 54 45 0D 20 20 20 20 20 20 | CTRLBYTE. |
00000470: 20 20 20 49 4E 43 20 5A 50 31 0D 20 20 20 20 20 | INC ZP1. |
00000480: 20 20 20 20 42 4E 45 20 2A 2B 34 0D 20 20 20 20 | BNE *+4. |
00000490: 20 20 20 20 20 49 4E 43 20 5A 50 32 0D 52 45 41 | INC ZP2.REA|
000004A0: 4C 44 45 50 20 20 4C 44 41 20 28 5A 50 31 29 2C |LDEP LDA (ZP1),|
000004B0: 59 0D 20 20 20 20 20 20 20 20 20 49 4E 43 20 5A |Y. INC Z|
000004C0: 50 31 0D 20 20 20 20 20 20 20 20 20 42 4E 45 20 |P1. BNE |
000004D0: 2A 2B 34 0D 20 20 20 20 20 20 20 20 20 49 4E 43 |*+4. INC|
000004E0: 20 5A 50 32 0D 43 54 52 4C 42 59 54 45 20 3D 20 | ZP2.CTRLBYTE = |
000004F0: 2A 2B 31 0D 20 20 20 20 20 20 20 20 20 43 4D 50 |*+1. CMP|
00000500: 20 23 24 30 30 0D 20 20 20 20 20 20 20 20 20 42 | #$00. B|
00000510: 45 51 20 50 41 43 4B 45 44 0D 20 20 20 20 20 20 |EQ PACKED. |
00000520: 20 20 20 53 54 41 20 28 5A 50 33 29 2C 59 0D 20 | STA (ZP3),Y. |
00000530: 20 20 20 20 20 20 20 20 49 4E 43 20 5A 50 33 0D | INC ZP3.|
00000540: 20 20 20 20 20 20 20 20 20 42 4E 45 20 52 45 41 | BNE REA|
00000550: 4C 44 45 50 0D 20 20 20 20 20 20 20 20 20 49 4E |LDEP. IN|
00000560: 43 20 5A 50 34 0D 20 20 20 20 20 20 20 20 20 42 |C ZP4. B|
00000570: 4E 45 20 52 45 41 4C 44 45 50 0D 20 20 20 20 20 |NE REALDEP. |
00000580: 20 20 20 20 52 54 53 0D 50 41 43 4B 45 44 20 20 | RTS.PACKED |
00000590: 20 4C 44 41 20 28 5A 50 31 29 2C 59 0D 20 20 20 | LDA (ZP1),Y. |
000005A0: 20 20 20 20 20 20 42 45 51 20 2A 2D 33 0D 20 20 | BEQ *-3. |
000005B0: 20 20 20 20 20 20 20 54 41 58 0D 20 20 20 20 20 | TAX. |
000005C0: 20 20 20 20 49 4E 43 20 5A 50 31 0D 20 20 20 20 | INC ZP1. |
000005D0: 20 20 20 20 20 42 4E 45 20 2A 2B 34 0D 20 20 20 | BNE *+4. |
000005E0: 20 20 20 20 20 20 49 4E 43 20 5A 50 32 0D 20 20 | INC ZP2. |
000005F0: 20 20 20 20 20 20 20 4C 44 41 20 28 5A 50 31 29 | LDA (ZP1)|
00000600: 2C 59 0D 20 20 20 20 20 20 20 20 20 49 4E 43 20 |,Y. INC |
00000610: 5A 50 31 0D 20 20 20 20 20 20 20 20 20 42 4E 45 |ZP1. BNE|
00000620: 20 2A 2B 34 0D 20 20 20 20 20 20 20 20 20 49 4E | *+4. IN|
00000630: 43 20 5A 50 32 0D 46 49 4C 4C 20 20 20 20 20 53 |C ZP2.FILL S|
00000640: 54 41 20 28 5A 50 33 29 2C 59 0D 20 20 20 20 20 |TA (ZP3),Y. |
00000650: 20 20 20 20 49 4E 59 0D 20 20 20 20 20 20 20 20 | INY. |
00000660: 20 44 45 58 0D 20 20 20 20 20 20 20 20 20 42 4E | DEX. BN|
00000670: 45 20 2A 2D 34 0D 20 20 20 20 20 20 20 20 20 54 |E *-4. T|
00000680: 59 41 0D 20 20 20 20 20 20 20 20 20 4C 44 59 20 |YA. LDY |
00000690: 23 24 30 30 0D 20 20 20 20 20 20 20 20 20 43 4C |#$00. CL|
000006A0: 43 0D 20 20 20 20 20 20 20 20 20 41 44 43 20 5A |C. ADC Z|
000006B0: 50 33 0D 20 20 20 20 20 20 20 20 20 53 54 41 20 |P3. STA |
000006C0: 5A 50 33 0D 20 20 20 20 20 20 20 20 20 42 43 43 |ZP3. BCC|
000006D0: 20 52 45 41 4C 44 45 50 0D 20 20 20 20 20 20 20 | REALDEP. |
000006E0: 20 20 49 4E 43 20 5A 50 34 0D 20 20 20 20 20 20 | INC ZP4. |
000006F0: 20 20 20 42 4E 45 20 52 45 41 4C 44 45 50 0D 3B | BNE REALDEP.;|
00000700: C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 |................|
00000710: C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C5 4E |...............N|
00000720: 44 CF 46 C3 4F 44 45 0D 0D |D.F.ODE.. |
.;......................................
;.; MDR-DEPACKER V2.1
;.;....................................
..;.; ORIGINAL CODE JAN'96 BY MADROM
;.;..................................
....;.; # IMPROVED JAN'97 BY STOFF/NEOPL
ASIA ;.; # IMPROVED FEB'97 BY TOXIC/NEOP
LASIA ;.;...............................
.......;.;ONLY TO USE WITH MDR-PACKER 1.
2 OR 1.5;.;PACKED FILES.
;.;
;.;EXAMPLE TO DEPACK A PACKED
FILE AT ;.;$6000 IN MEMORY TO $2000
;.;
;.; LDA #<$6000 ;PACKED
;.; LDX #>$6000 ;FILE
;.; STA ZP1
;.; STX ZP2
;.; LDA #<$2000 ;DEP
ACK ;.; LDX #>$2000 ;TO
... ;.; STA ZP3
;.; STX ZP4
;.; JSR DEP
;.;...............
.......................;..;USED ZEROPAGE
BYTES..ZP1 = $B0.ZP2 = $B1.ZP
3 = $B2.ZP4 = $B3..DEP LD
Y #$00. LDA (ZP1),Y. STA
CTRLBYTE. INC ZP1. BNE
*+4. INC ZP2.REALDEP LDA (ZP1),
Y. INC ZP1. BNE *+4.
INC ZP2.CTRLBYTE = *+1. CMP
#$00. BEQ PACKED. STA (
ZP3),Y. INC ZP3. BNE REA
LDEP. INC ZP4. BNE REALD
EP. RTS.PACKED LDA (ZP1),Y.
BEQ *-3. TAX. INC
ZP1. BNE *+4. INC ZP2.
LDA (ZP1),Y. INC ZP1.
BNE *+4. INC ZP2.FILL S
TA (ZP3),Y. INY. DEX.
BNE *-4. TYA. LDY
#$00. CLC. ADC ZP3.
STA ZP3. BCC REALDEP.
INC ZP4. BNE REALDEP.;........
......................ENDOFCODE..
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL