[comp.binaries.amiga] xboot

ain@j.cc.purdue.edu (Patrick White) (08/02/88)

Submitted by:	inria.inria.fr!rouaix(Francois Rouaix)
Summary:	Converts teh sector dump of a boot block into an executable file.
Poster Boy:	Patrick White	(ain@j.cc.purdue.edu)
Archive Name:	binaries/amiga/volume8/xboot.b.sh.Z
Tested.
 
NOTES:
   Docs are so small that I just packeged them in with the source and
binary shars.
   It was an arc, but is not a shar.
   I think I tried compiling it under Manx and it worked, but I forgot my
notes on that.
.
 
 
-- Pat White   (co-moderator comp.sources/binaries.amiga)
ARPA/UUCP: j.cc.purdue.edu!ain  BITNET: PATWHITE@PURCCVM  PHONE: (317) 743-8421
U.S.  Mail:  320 Brown St. apt. 406,    West Lafayette, IN 47906
[archives at: j.cc.purdue.edu.ARPA]
 
========================================
 
#	This is a shell archive.
#	Remove everything above and including the cut line.
#	Then run the rest of the file through sh.
#----cut here-----cut here-----cut here-----cut here----#
#!/bin/sh
# shar:	Shell Archiver
#	Run the following text with /bin/sh to create:
#	xboot.doc
#	xboot.uu
# This archive created: Mon Aug  1 12:23:36 1988
# By:	Patrick White (PUCC Land, USA)
cat << \SHAR_EOF > xboot.doc

   This is a VERY simple utility I felt I needed to study those nasty Viruses
hanging around...
   It converts a boot-block into an executable file, so you may use
   your favorite debugger (Wack, Dis, ...) to study it.

   SYNTAX: xboot infile outfile

   CAVEATS:
   <infile> should be exactly 1024 bytes long. It is normally the dump
   of blocks 0 and 1 of a floppy disk.

   DETAILS:
   The first three longwords of the boot-block are put in the second hunk
   (data hunk).
   All other data is thrown into the first hunk (code hunk).
   This has the disadvantage of breaking the PC-relative adressing for
   the data (like in ByteBandits virus).

   COMPILATION NOTES:
   I used standard AmigaDOS file functions, so that you may compile with
   amiga.lib before lc.lib, and have a smaller executable.

   DISTRIBUTION:
      Free ! This a Public Domain. Do whatever you want with this program.

   AUTHOR:
      Francois ROUAIX
      rouaix@inria.inria.fr


SHAR_EOF
cat << \SHAR_EOF > xboot.uu

begin 600 xboot
M```#\P`````````(``````````<```!Q````;@```&L````<```!`````!0``
M```(````)P```^D```!Q(\\````<(\`````D(\@````H0KD````@+'D````$X
M(\X````$D\E.KO[:*$!*K`"L9P``J&$``6P@;`"LT<C1R"!H`!#1R-'(2.<@/
M,$7Y````K$?Y````+'0!<``0&";*8`(4V%'(__Q"&B`Y````)"!Y````*!(8I
M4X!O'@P!`"!O]%*")LI@"A(84X`,`0`@;P04P6#R0AI@W$(:0IL@`DS?#`1(8
M>0```"PO`$ZY````:"/`````$$ZY````>"/`````%"/`````&$ZY`````'``>
M+GD````<3G5A``#&80``L"/`````($*G+P`D0"`J`"1G$"QY````""!`(B@`Y
M`$ZN_X(B*@`@9R@D/````^U.KO_B(\`````0(\`````4(\`````89PKEB"!`(
M*6@`"`"D3KD`````<`!@!"`O``0N>0```!PO`"QY````!"`Y````"&<"(D!.`
MKOYB2KD````@9PY.KO]\(GD````@3J[^AB`?3G5(YP$&+CP``X`'+'@`!$ZNH
M_Y1,WV"`<&1@L$'L`%Q.KOZ`0>P`7$ZN_HQ.=4*Y````"$/Y```!K"`\````?
M'DZN_=@CP`````AGMDYU``````/L````&@````$```&Z```!J@```:0```%JZ
M```!7@```5````%"```!(@```1P```$6````]@```.0```#4````Q@```,``^
M``"T````I@```'(```!L````5````$X````@````%`````X````(`````@``F
M``(````"```!-````,P````"````!P```*X```"Z`````````_(```/J````8
M;@`!````````````````````````````````````````````````````````O
M`````````````````````````````````````````````````````````````
M`````````````````````````````````````````````````````````````
M`````````````````````````````````````````````````````````````
M`````````````````````````````````````````````````````````````
M`````````````````````````````````````````````````````````````
M`````````````````````````````````````````````````````````````
M`````````````````````````````````````````````````````````````
M`````````````````````````````````````````````````````````````
M````````````````````````````````9&]S+FQI8G)A<GD````#\@```^D`*
M``!K3E7_])'(*TC_]"M(__@K2/_\#*T````#``AG'B!M``PO$$AY````,$ZYQ
M`````%"/0J=.N0```(A8CR\\```#[2!M``PO*``$3KD`````4(\K0/_\2H!F)
M("!M``PO*``$2'D```!+3KD`````4(]"ITZY````B%B/+SP```/N(&T`#"\HQ
M``A.N0````!0CRM`__A*@&8L+RW__$ZY````'%B/(&T`#"\H``A(>0```$M.?
MN0````!0CT*G3KD```"(6(\O/```!`!(>0`````O+?_\3KD````P3^\`#"M`J
M__0,@```!`!G#DAY````6DZY`````%B/+RW__$ZY````'%B/0?D`````<"0O?
M`"\(+RW_^$ZY````3$_O``PO/````_1(>0````PO+?_X3KD```!,3^\`#$'Y`
M````+'`$+P`O""\M__A.N0```$Q/[P`,0?D````D<`@O`"\(+RW_^$ZY````,
M3$_O``QP#"\`2'D`````+RW_^$ZY````3$_O``Q!^0```"QP!"\`+P@O+?_X%
M3KD```!,3^\`#"\M__A.N0```!Q8CTY=3G4```/L````"`````,```&$```!H
M4@```3@```$$````Z@```*P```!B````)`````,````$```!<````20```#*3
M````!`````8```#P````L@```&@````J````#P````<```&4```!>@```6(`'
M``%(```!+@```10```#4```!H@```/P```"<````B````$H```"\````<@``<
M`#0````````#\@```^H````<```#\P`````````"``````````$```#]````H
M`P```^D```#]```#Z@````,```/R57-A9V4Z("5S(&EN9FEL92!O=71F:6QEG
M(`H`0V%N)W0@;W!E;B`E<PH`5V%R;FEN9R`A($)A9"!&:6QE+@H``````_(`V
M``/K```!`````_(```/I````%$CG`#HH;P`4(&\`&")O`!Q%^@`Z3^__="9/K
M+'D````$3J[]]G#_2AM7R/_\1H!G$B\`2&\`!$A43KD```!,3^\`#$_O`(Q,^
MWUP`3G46P$YU```#[`````$````'````.@````````/R```#Z0````@O`B0OU
M``A(;P`,+P(O.0```!1.N0````!/[P`,)!].=0```^P````!`````0````X`.
M```!````!0```!0````````#\@```^D````G2.<@`BQY````"$SO``8`#$ZNI
M_^),WT`$3G4``"\.+'D````((B\`"$ZN_]PL7TYU2.<P`BQY````"$SO``X`2
M$$ZN_]9,WT`,3G4``$CG,`(L>0````A,[P`.`!!.KO_03-]`#$YU```O#BQYI
M````"$ZN_\HL7TYU+PXL>0````A.KO_$+%].=2\.+'D````((B\`"$ZN_W`LL
M7TYU```#[`````<````!````C````'P```!L````4@```#8````@````!@``[
&``````/RU
``
end
size 2256
SHAR_EOF
#	End of shell archive
exit 0