de shadow272 » Mar 11 Nov 2008 10:15
Routine de décompression d'images PC1
- Code: Tout sélectionner
FILESELECT "\*.PC1","",f$
OPEN "i",#1,f$,1
l=LOF(#1)
c$=SPACE$(32)
SEEK #1,2
BGET #1,VARPTR(c$),32
CLOSE
l%=l-34
OPEN "R",#1,f$,l
FIELD #1,l AS ada$
GET #1,1
CLOSE
add%=VARPTR(ada$)+34
ada%=XBIOS(2)
HIDEM
VOID XBIOS(6,L:VARPTR(c$))
GOSUB unpack(add%,ada%,l%)
~INP(2)
'
'
PROCEDURE unpack(add%,ada%,l%)
FOR y%=0 TO 199
FOR p%=0 TO 3
cl%=-1
REPEAT
cde%=PEEK(add%)
ADD cde%,256*BTST(cde%,7)
FOR lo%=0 TO ABS(cde%)
INC cl%
SUB add%,(cde%>=0) OR (lo%=0)
POKE ada%+y%*160+p%*2+DIV(cl%,2)*8-ODD(cl%),PEEK(add%) ! One line...
NEXT lo%
INC add%
UNTIL cl%=39
NEXT p%
NEXT y%
RETURN
Un ATARI, le GFA c'est le bonheur