OI p ` ` GET_IT!!TXT P!ICE_2_4 PRG ICE_DCRUS 8 ICE_UNPAS  POCZYTAJTRB !B b~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~ ,=) IOOX;,) ,O#=I###+L#i8##;,) ,Diz,C00l,soft,iZ,,,OI,I###::Xi8##=ITi,,,+)ITi:,If,Yo,wanT,to, , fRom, +:,I###:,;:8##TL##T,)##iI#X:,contact,me, ,asss/TrB,I###:,,,8##;+##X,8##+i##=,call n0W, ,c00lection!!!,I###:,,,8##;+##X,###i===:,(0-42)13-75-13, ,I###:,,,8##;+##X,8##=, Lodz City!!, ,gtxTO:Vat>Ph0ner>Kroll,,:L###=,,;###=)##X:=8#8)IL:, ,Grey>Wachu>Uras,,,+i:,+iii=i+,:iii+, ,GSL>Andymaniac...,7 ,):,,;+,! iTTTIITT);, ;ITTT)TTI+,:O##T,;8#I,=), :8##L:L##8:, )###+i###;,I##T,,IL+,;X#X,, ,8##L,i###:,;IHTLi,,i###++###+,=TLLT;,I##T,IHHT,:)HIHT+,=THH)LHT::T##8):;ITII), ,8##H;O#8),;8#O,8#I,i###=T#8I,I##ii#8;I##T,i##O,i##;X##;,8##I)##L,+##X,,8#I,TT, ,8##XO#8T:,I##L=X#O,i###)T#XL:8##i)##iI##T,=##O,:IL=X##+,8##++##8,+##X,:###XI;, ,8##L+###H,T##L;,i###+,X##I8##=;;;:I##T,=##O,=X#IX##+,8##++##8,+##X,,T#X, ,8##L,8###:)##X,,,:,i###+,X##TX##),,::I##T,=##O,X##+X##+,8##++##8,+##8,:X+T8##, i###X;i###T:T##OLL=:H###TL##O:;X##LLL;H##X:T##8;L##XH##H+8##II##8+:8##L+#O+T#L, ;+;,;i)+:,:+++,,:+:,;++:,:+:+:,++:,++:;+;,;++;,;+++;,, ,O (c)ign asss/tH RblatS thE LAST 0nE Atari madafakas in Lodz City, ~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~ f` * `Pack-IceI *L,L-a*oMGLA "grѓg f``GP$]t***Ԋ**EL ;H ;C&NN&&Sj&n".扑&&SjN%a*d"ra$dCv !a"H@@Vҩ%QnNuf%Nurf%AQNuCtaTxr1 Hka1 Ag"CvtaTr1 HaBq jD`rptadpt?aBC@!!Q`R   ICE!1-D fCFgBү: TwbesԦ@ BЈSTCPub{c DohhYQmalikfor;yB. yoMli(VI ',wtzny d8a onsGreetiҫNgt:alleoplwho use this cker. XO*m -BЭ[Ozd&// BgJ>ո6"j"$ U33*g d`& a(~Rn28@r>?]LHq YMBPpbJ/X;c"0GNBkF:&ŊKJ  fx3}[R}Arnx$g*CJ_SH (Z&v nBE y02yCzz`pEpHt`foRL"*U$4`º3fT`:1gtmn- 2fB/nS3zFTlV!py`mXq^U@  gRygPf,Hq`8p K!^nSeVU~yfy v3=h/~ʬhA?:VeEG,f|E&.'*Bڀ*ͤzZ?(YV XUt(:50CteJD^5 7VEsZJfN$*.*`FsPO̼pj`B !g :gOj RIJfJ@o4 6$N ܊&2C/ozLx tm|D3 B &p nmNu* `T:\":PҺҌHn2&?jN֩uV[veh+FCp"Zn:Dh&YBKfgTUcZfʄf, *rA#CJ9f}b#4*l+R*n)jW>:$/l: DV [(̈ I(I\ Rfp P~A$@q&˪ ?Y(mydFfS@ky,S& A'g"P$z" ـ]te*SP`tV*eQ JW= 9K:KRK [Z X`7$Ԙ#b_rx$#x Tؖ  SW7 R@,dKBQgmj`b'0`n/:ϡfZxO 0;Y&[ g/  g=Ė-dX\%nk`Ԝ 3VSXXgY(=VwL?ްbdbM b[EvJf " fRD*NI ,fp^za#cTHTv;:2 t-^Za"TH"zFJg,TH$g  gRHSjBN B[#$^ԀPj / NMXIV!X '3 Pn\/8֐,#w0! aa>Y:Tgx"60 rp:m -"@xf^ x+0CYtr€o;@ 'ḀtG{pA+t+ZTxvSBk#R0k, WJ o %ofh؀XCQ?a(e(|dx# !/ɮ |#j, )esBk x"zB$::KngRGBA8LzVgD} -E99ȹ1Xfm" m#PBTg.&H`BvZx E/ ,z;Sm4T,HhY$A) lC"t:z?Xv6<ժq4TS9_R@Cf? &߬vփ$K'(Jr23'8V0Ў} 78&_Jgk (zr#o:|RW ir`(g`^f,LSN *H fbn" S$R < l7ԁ"lc|b(33Vnl|ol0C2!'gg.`<.SysjDpЈkH3+X5\"34TpUfy :FGFB3r :Wj+lR`ea {Y ."z|X c3AV\#AH0:vT#`v7 6Ez-0Lr@x ,va?8K:4;7C6308KBDƀ   @?b=2 ?o A@x :x`4G~k(0:z>SD\jD3PHri@ESg   QA~|5BPdOI\3,(IKA2͗ B&ATtBd0<dpa>|8#z@BDCQQHQLSfpw#@LvN[]a*d"a$dv !a"H@@Vҩ%Q nOPEf%AQNuta@xkaAg"CvtaT 5*1 HaBq jD`rptadpt?aBC@:!Q`R<Œ+ҟ- w8og|InY/n Apƣxt/N/yU Venzf XdfU 3 0)($=1d (Default)~2 5Ct eSf3) P|XqctNo ڣm!b ifyOKErr.0պIVnR1 b2@nr{ v2skipXd.[LarFt hpg&,![ccelled]Ef>ViQ` ܈4 7=<~K`I XE8xvxnxr Thx>Iwaw3by A of5upǐ1 k ST-NEW9xP`UvV 20ZFiVIgd: 14.08.1991c| { } 3h C[0 D.you wish to usGanaadd͠ alg\ithm for pictu`~ compression?][ NO | YES ].\8L'j,Rʉ 0("  6,\0RF422   &4Pn&2 n;*- Unpacking routine of PACK-ICE ; a0 = AdTRESs of packed data ; "bsr" or "jsr" to ice_decrunch_2 with register a0 prepared. ice_decrunch_2 link a3,#-120 movem.L d0-a6,-(sp) lea 120(a0),a4 move.L a4,a6 bsr .getinfo cmpi.L #'ICE!',d0 bne.S .not_packed bsr.s .getinfo lea.L -8(a0,d0.L),a5 bsr.s .getinfo move.L d0,(sp) adda.L d0,a6 move.L a6,a1 moveq #119,d0 .save move.B -(a1),-(a3) dbf d0,.save move.L a6,a3 move.B -(a5),d7 bsr.s .normal_bytes move.L a3,a5 bsr .get_1_bit bcc.s .no_picture move.W #$0f9f,d7 bsr .get_1_bit bcc.s .ice_00 moveq #15,d0 bsr .get_d0_bits move.W d1,d7 .ice_00 moveq #3,d6 .ice_01 move.W -(a3),d4 moveq #3,d5 .ice_02 add.W d4,d4 addx.W d0,d0 add.W d4,d4 addx.W d1,d1 add.W d4,d4 addx.W d2,d2 add.W d4,d4 addx.W d3,d3 dbra d5,.ice_02 dbra d6,.ice_01 movem.W d0-d3,(a3) dbra d7,.ice_00 .no_picture movem.L (sp),d0-a3 .move move.B (a4)+,(a0)+ subq.L #1,d0 bne.s .move moveq #119,d0 .TRESt move.B -(a3),-(a5) dbf d0,.TRESt .not_packed movem.L (sp)+,d0-a6 unlk a3 rts .getinfo moveq #3,d1 .getbytes lsl.L #8,d0 move.B (a0)+,d0 dbf d1,.getbytes rts .normal_bytes bsr.s .get_1_bit bcc.s .test_if_end moveq.L #0,d1 bsr.s .get_1_bit bcc.s .copy_direkt lea.L .direkt_tab+20(pc),a1 moveq.L #4,d3 .nextgb move.L -(a1),d0 bsr.s .get_d0_bits swap.W d0 cmp.W d0,d1 dbne d3,.nextgb .no_more add.L 20(a1),d1 .copy_direkt move.B -(a5),-(a6) dbf d1,.copy_direkt .test_if_end cmpa.L a4,a6 bgt.s .strings rts .get_1_bit add.B d7,d7 bne.s .Bitfound move.B -(a5),d7 addx.B d7,d7 .Bitfound rts .get_d0_bits moveq.L #0,d1 .hole_bit_loop add.B d7,d7 bne.s .on_d0 move.B -(a5),d7 addx.B d7,d7 .on_d0 addx.W d1,d1 dbf d0,.hole_bit_loop rts .strings lea.L .Length_tab(pc),a1 moveq.L #3,d2 .get_length_bit bsr.s .get_1_bit dbcc d2,.get_length_bit .no_length_bit moveq.L #0,d4 moveq.L #0,d1 move.B 1(a1,d2.W),d0 ext.W d0 bmi.s .no_ber .get_ber bsr.s .get_d0_bits .no_ber move.B 6(a1,d2.W),d4 add.W d1,d4 beq.s .get_offset_2 lea.L .more_offset(pc),a1 moveq.L #1,d2 .getoffs bsr.s .get_1_bit dbcc d2,.getoffs moveq.L #0,d1 move.B 1(a1,d2.W),d0 ext.W d0 bsr.s .get_d0_bits add.W d2,d2 add.W 6(a1,d2.W),d1 bpl.s .depack_bytes sub.W d4,d1 bra.s .depack_bytes .get_offset_2 moveq.L #0,d1 moveq.L #5,d0 moveq.L #-1,d2 bsr.s .get_1_bit bcc.s .Less_40 moveq.L #8,d0 moveq.L #$3f,d2 .Less_40 bsr.s .get_d0_bits add.W d2,d1 .depack_bytes lea.L 2(a6,d4.W),a1 adda.W d1,a1 move.B -(a1),-(a6) .dep_b move.B -(a1),-(a6) dbf d4,.dep_b bra .normal_bytes .direkt_tab dc.L $7fff000e,$00ff0007,$00070002,$00030001,$00030001 dc.L 270-1, 15-1, 8-1, 5-1, 2-1 .Length_tab dc.B 9,1,0,-1,-1 dc.B 8,4,2,1,0 .more_offset dc.B 11, 4, 7, 0 ; Bits lesen dc.W $11f, -1, $1f ; Standard Offset ende_ice_decrunch_2 @;*- unpacking routine of PACK-ICE ; a0 = Pointer to packed data ; a1 = Address to which the data is unpacked ; "bsr" of "jsr" to ice_decrunch with registers a0 and a1 prepared. ice_decrunch movem.l d0-a6,-(sp) bsr.s getinfo cmpi.l #'ICE!',d0 bne not_packed bsr.s getinfo lea.l -8(a0,d0.l),a5 bsr.s getinfo move.l d0,(sp) move.l a1,a4 move.l a1,a6 adda.l d0,a6 move.l a6,a3 move.b -(a5),d7 bsr normal_bytes move.l a3,a6 bsr get_1_bit bcc.s not_packed move.w #$0f9f,d7 bsr get_1_bit bcc.s ice_00 moveq #15,d0 bsr get_d0_bits move.w d1,d7 ice_00: moveq #3,d6 ice_01: move.w -(a3),d4 moveq #3,d5 ice_02: add.w d4,d4 addx.w d0,d0 add.w d4,d4 addx.w d1,d1 add.w d4,d4 addx.w d2,d2 add.w d4,d4 addx.w d3,d3 dbra d5,ice_02 dbra d6,ice_01 movem.w d0-d3,(a3) dbra d7,ice_00 not_packed: movem.l (sp)+,d0-a6 rts getinfo moveq #3,d1 getbytes lsl.l #8,d0 move.b (a0)+,d0 dbf d1,getbytes rts normal_bytes bsr.s get_1_bit bcc.s test_if_end moveq.l #0,d1 bsr.s get_1_bit bcc.s copy_direkt lea.l direkt_tab+20(pc),a1 moveq.l #4,d3 nextgb move.l -(a1),d0 bsr.s get_d0_bits swap.w d0 cmp.w d0,d1 dbne d3,nextgb no_more add.l 20(a1),d1 copy_direkt move.b -(a5),-(a6) dbf d1,copy_direkt test_if_end cmpa.l a4,a6 bgt.s strings rts get_1_bit add.b d7,d7 bne.s bitfound move.b -(a5),d7 addx.b d7,d7 bitfound: rts get_d0_bits moveq.l #0,d1 hole_bit_loop add.b d7,d7 bne.s on_d0 move.b -(a5),d7 addx.b d7,d7 on_d0: addx.w d1,d1 dbf d0,hole_bit_loop rts strings lea.l length_tab(pc),a1 moveq.l #3,d2 get_length_bit bsr.s get_1_bit dbcc d2,get_length_bit no_length_bit moveq.l #0,d4 moveq.l #0,d1 move.b 1(a1,d2.w),d0 ext.w d0 bmi.s no_ber get_ber bsr.s get_d0_bits no_ber move.b 6(a1,d2.w),d4 add.w d1,d4 beq.s get_offset_2 lea.l more_offset(pc),a1 moveq.l #1,d2 getoffs: bsr.s get_1_bit dbcc d2,getoffs moveq.l #0,d1 move.b 1(a1,d2.w),d0 ext.w d0 bsr.s get_d0_bits add.w d2,d2 add.w 6(a1,d2.w),d1 bpl.s depack_bytes sub.w d4,d1 bra.s depack_bytes get_offset_2 moveq.l #0,d1 moveq.l #5,d0 moveq.l #-1,d2 bsr.s get_1_bit bcc.s less_40 moveq.l #8,d0 moveq.l #$3f,d2 less_40: bsr.s get_d0_bits add.w d2,d1 depack_bytes: lea.l 2(a6,d4.w),a1 adda.w d1,a1 move.b -(a1),-(a6) dep_b: move.b -(a1),-(a6) dbf d4,dep_b bra normal_bytes direkt_tab dc.l $7fff000e,$00ff0007,$00070002,$00030001,$00030001 dc.l 270-1, 15-1, 8-1, 5-1, 2-1 length_tab dc.b 9,1,0,-1,-1 dc.b 8,4,2,1,0 more_offset dc.b 11, 4, 7, 0 dc.w $11f, -1, $1f ;*1 end of unpacking routine I~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^ t sot jst z kolkji: asss'a/tH RblatS kontakt: tel. 0-42 13-75-13 Ramsess lub Kamil... ~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^ cOOl GretZ to: ~ VaT/LuZaK Team - Wachu/LuZaK Team ~ Kroll - Paskud ~ rEST of TRB - Osin ~ AndyManiac - GSL i reszta maniakow ST/TT/F3 ktorych znam i nie znam ! ~4.~ Ramsess/TRB'90'91'92'93'94'95'96