home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Sauce 'n' Code 1
/
sauce-n-code-01.adf
/
ASCII_Source
/
FileDumper.asc
< prev
next >
Wrap
Text File
|
1995-05-07
|
3KB
|
112 lines
'
' File dumper v1.0 by Janne Kalliola
'
' Craft Extension?
'
Set Accessory
Global MAKS,OIKEA
PAIKKA=1
Trap Screen Close 7
For I=0 To 6
Trap Screen Hide I
Next
F$=Fsel$("**","","Select file to be","dumped")
If F$="" Then End
If Exist(F$)=0 Then End
OIKEA=File Length(F$)
MAKS=OIKEA/384+1
Reserve As Work 15,MAKS*384
Bload F$,Start(15)
Resource Screen Open 7,640,144,0
Cls 0
Cls 2,0,11 To 640,139
A$="SV 0,'File Dumper v1.0';"
A$=A$+"SV 1,'Next';"
A$=A$+"SV 2,'Prev';"
A$=A$+"SV 3,'Go to';"
A$=A$+"BUtton 1,0,0,24,10,0,0,1;[UNpack 0,0,22 BP+;][NoWait;]"
A$=A$+"BUtton 2,24,0,360,10,0,0,1;[LIne 0,0,28,360;PRint 8,1,0 VA,7;][ScreenMove;]"
A$=A$+"BUtton 3,384,0,64,10,0,0,1;[LIne 0,0,41 BP+ BP+ BP+,64;PRint 16,1,1 VA,7;][]"
A$=A$+"BUtton 4,448,0,64,10,0,0,1;[LIne 0,0,41 BP+ BP+ BP+,64;PRint 16,1,2 VA,7;][]"
A$=A$+"BUtton 5,512,0,64,10,0,0,1;[LIne 0,0,41 BP+ BP+ BP+,64;PRint 12,1,3 VA,7;][]"
A$=A$+"LIne 576,0,41,640;"
A$=A$+"LIne 0,140,31,640;"
A$=A$+"EXit;"
Dialog Open 1,A$
D=Dialog Run(1)
Text 604,7,"/"+Str$(MAKS)-" "
DUMP[0]
Do
Exit If Dialog(1)=1
Exit If Mouse Key=2
If Rdialog(1,3)=1
If PAIKKA<MAKS
Inc PAIKKA
DUMP[PAIKKA-1]
End If
Dialog Update 1,3,0
Else If Rdialog(1,4)=1
If PAIKKA>1
Dec PAIKKA
DUMP[PAIKKA-1]
End If
Dialog Update 1,4,0
Else If Rdialog(1,5)=1
Get Cblock 1,208,20,224,68
Dialog Freeze 1
A$="SV 0,'Go to';"
A$=A$+"SV 1,'New page';"
A$=A$+"SV 2,'Cancel';"
A$=A$+"SV 3,'Ok';"
A$=A$+"BAse 208,20;"
A$=A$+"SIze 224,68;"
A$=A$+"BOx 0,0,1,224,68;"
A$=A$+"POut 0 VA CX,5,0 VA,0,7;"
A$=A$+"LIne 8,15,31,216;"
A$=A$+"POut 40,28,1 VA,0,3;"
A$=A$+"LIne 120,24,17,184;"
A$=A$+"DIgit 1,128,28,6,0,0,2,3;"
A$=A$+"BUtton 2,48,48,64,16,0,0,1;[UNpack 0,0,13 BP+;POut 8,4,2 VA,0,4;][]"
A$=A$+"BUtton 3,112,48,64,16,0,0,1;[UNpack 0,0,13 BP+;POut 24,4,3 VA,0,4;][]"
A$=A$+"EXit;"
Dialog Open 2,A$
D=Dialog Run(2)
Do
Exit If Rdialog(2,2)=1
If Rdialog(2,3)=1
If Rdialog(2,1)>MAKS
PAIKKA=MAKS
Else If Rdialog(2,1)<1
PAIKKA=1
Else
PAIKKA=Rdialog(2,1)
End If
Exit
End If
Loop
Dialog Close 2
Put Cblock 1
Del Cblock 1
Dialog Unfreeze 1
Dialog Update 1,5,0
DUMP[PAIKKA-1]
End If
Loop
Edit
Procedure DUMP[PAIKKA]
Cls 6,578,1 To 603,9
Text 612-Len(Str$(PAIKKA+1))*8,7,Str$(PAIKKA+1)-" "
Cls 2,0,11 To 640,139
For I=0 To 15
A$=Hex Dump$(Start(15)+PAIKKA*384+I*24,24)+" "+Chr Dump$(Start(15)+PAIKKA*384+I*24,24)
Text 8,I*8+17,A$
Exit If OIKEA<PAIKKA*384+I*24
Next
End Proc