plowerfowder by aspekt [web]
-- plowerfowder -- a 501 byte ASCII entry for asmcompo.org compo #10 by thefox <fuchs@runkkaajat.org> / aspekt 2004 -- what is it all about -- it's a simple flower in 501 bytes. only ascii characters are used in the binary. this was accomplished by writing a loader (in loader.asm) in ASCII which takes base64-encoded data as input, decodes the data to memory and runs it. -- build how-to -- the source code can be found under /src -directory what's required to build this: Microsoft (R) Macro Assembler ('ml.exe') Microsoft (R) Segmented Linker ('link.exe', used in make batch files as 'dlink.exe') Microsoft (R) C/C++ Compiler ('cl.exe') Microsoft (R) Incremental Linker ('link.exe') C-compiler and incremental linker (32-bit) are required only for building 256to64. you should be able to use any other C-compiler also. make_all.bat builds everything, first 256to64.exe, then demo.com and finally loader.com (which is the final executable) ** DO NOT execute demo.com as its base address is not 100h ** the binary from make_all.bat is 513 bytes, here's how to create a 501 byte binary: first run make_all.bat as normal (or make.bat if you have built 256to64 already) use hex-editor on demo.com stripping out the last six bytes (which should all be zeros) run make_phase2_only.bat if you want to build only 256to64, call make_256to64.bat -- notes -- 256to64 is just a quick hack. it *will* produce 'broken' include files for some input file sizes. 'broken' means that the output file has got a last line 'byte ""' which masm will give an error about. demo itself (both loader.asm and demo.asm) could've been optimized a bit more also but reaching 512 bytes was enough for me this time. -- public domain -- yes. do anything you want with these files. i take no responsibility at all. -- the binary -- just for the heck of it, here's the demo once more (starting from 'Z'-character, 'til the end of the file. ZRRRfZhp!XP-Q PP]h]][(^ )^&[_f!U j$X, j Y(N*fkM @2N*f!U f1M EHuCGGGKu4GG S1.P6!X0$ %O0=0V2*O[MGNB\ SR(OXJO-)#$Z+WL'9WPI6Q/;@!'5!V=C=P=GH#D[8V?[9P=[H&D[8%D;8(E[9V>[9P]C WL'9V0!.Z-G^WL39R=[IWL+9V0).Q-G^WLG>3MC!1M@2R=DBV/O93M[*7M\$R=XF!D[>*%[?*$:+ 4"ZB^+W!KOX?@, QX$FC7V@_7ZUJ@^P!(HF=<"$"; *!(@FA(@F1@%!Z'5+'D;8D'5)W=C=9MC89M@:R=D:&D;8"%;>]N#?=4'$1HL11HD"@T B0?@W0)&[MG8@\G9!0Q&#'Z!=@@ 1L<%" ,!@8> &@?N@>@[ /:=0BHJ.S[^W0(/H"YB_8S9O/^'P>E_F#DA0_(N/[YS0 # ,,0 0 / !X ( 0 !M4@ $#;/P )F9FUPH_VSPC.TD/
[ back to the prod ]