?? 2001 + Got interested in linux-assembley when working at Frontpath. + First x86 version written in this time frame. + The assembly code was distributed as part of the linux_logo code at first. 5 March 2002 + Start work on the ppc version 8 March 2002 + RLE (run-length-encode) compressed the logo. Cuts 1.3k off the size of the intel binary 11 March 2002 + Convert from nasm to 'gas' as the assembler. Yes, I know, ick, ick, ick, but it wasn't as bad as I thought it'd be. + added "configure.c" which will detect architecture and compile correct assembly file 13 March 2002 + Finally have ppc version all working 6 May 2002 + Add ansi_rle.c program which will convert any ansi into a form suitable to use with ll + Re-wrote the code a bit to handle generic ANSI sequences, not just color-changes anymore 7 May 2002 + Make 'll' return to normal plain console color after running RELEASE 0.5 5 June 2002 + Add Alpha version. Thanks to the compaq test drive people RELEASE 0.6 8 June 2002 + Add ia64 version. Thanks again to compaq test drive. RELEASE 0.7 2 July 2002 + Add SPARC version RELEASE 0.8 26 July 2002 + Import "configure" from linux_logo-4.03 + Optimize 208bytes off of ix86 code, thanks to suggestions from Stephan Walter + Add the RiSC port to the 16bit directory RELEASE 0.9 2 August 2002 + added s390 support RELEASE 0.10 8 August 2002 + Add "lzss" logo support and convert ix86 over to new code (with much help from Stephan Walter). RELEASE 0.11 22 August 2002 + Have ix86 code down to 1476 bytes! + Have partially working PPC version of lzss code 28 August 2002 + Update s390 to lzss before my testdrive account expires + Update ix86 comments a bit 10 September 2002 + re-written PPC code is 1796 bytes! + release 0.12 RELEASE 0.12 27 September 2002 + added "sstrip" utility by Brian Raiter which really reduces the size + got the ix86 code to 1021 bytes!!! thanks to Stephan Walter again, but also I re-wrote the lzss core and did some tricks myself RELEASE 0.13 16 December 2002 + Thanks to Stephan Walter again for getting the ix86 code down to 993 bytes. * Worked on the code myself and got it down to 977 by using edx as a function pointer and using 2-byte call *%edx. The ix86 code is becoming so optimized as to be unreadable... RELEASE 0.14 13 January 2006 + Mips version working. Should optimize for size a bit. It is based off of the x86 code so uses the more optimized LZSS logo. + Work on the PPC version which stopped working, apparently because the "ctr" register is not saved across a syscall with kernel 2.6. Interesting. 19 May 2006 + Start work on the HP PA-RISC version + Fix up the infrastructure to special-case the weird .EQU directive order the hppa arch needs. 13 January 2007 + Work on PA-RISC again after long delay. Have it working, but not optimized RELEASE 0.15 RELEASE 0.16 29 January 2007 + Optimized PA-RISC code. sstrip'd version before was 2096 bytes, after is 1432 bytes. RELEASE 0.17 2 February 2007 + Change the way the Makefile detects architecture + x86 ll was crashing on newer machines with really stupid cpuinfo cpu types (core2 and newer xeons, I'm looking at you). The problem was it makes the middle string >80, which the check for was broken. Fix, but it adds an extra 3 bytes to program length. 3 February 2007 + x86_64 version. Hoped I could make it smaller, but for various reasons it ends up being a tens of bytes bigger than x86 version. Try various optimizations to no avail. RELEASE 0.18 6 February 2007 + Re-optimize the mips version. It is now 160 bytes smaller. RELEASE 0.19 9 February 2007 + Fix branch-delay slot optimization in strcat in MIPS. Binary now 16 bytes smaller! + Re-optimize SPARC version. + Added a FAQ. RELEASE 0.20 16 February 2007 + Start optimizing Alpha code 17 February 2007 + Finish optimizing Alpha code. It could use another pass though. RELEASE 0.21 27 February 2007 + Have ARM completely working. + Started on arm thumb version, but on my development board the kernel isn't compiled with thumb support, and I'm a bit wary of flashing the boot flash. I'll try to get a kernel booted off a CF card at some point. RELEASE 0.22 11 March 2007 + Thumb support working. Wasted a day chasing down an off-by-one loop thinko with strcat. + Optimized thumb support. RELEASE 0.23 22 March 2007 + Update itanium code to use LZSS logo. It's the last of the RLE executables. RELEASE 0.24 24 April 2007 + Get aranym going for m68k emulation. 26 April 2007 + Initial m68k work 27 April 2007 + m68k version finished 28 April 2007 + Optimized m68k version RELEASE 0.25 6 July 2007 + Have VAX "hello world" stub going + Also have avr32 "hello world" going 8 July 2007 + avr32 working + super-optimized avr32 and got it to 914 bytes, a new record! RELEASE 0.27 (there was no 0.26) 30 July 2007 + Got the hercules s390 emulator working. 1 August 2007 + re-optimized s390. Now all of the architectures are using the "new" lzss format and all have a similar code base. RELEASE 0.28 3 August 2007 + Update x86 to work with modern cpuinfos. Also properly prints plurals like other SMP supporting archs. This added ~30 bytes to the executable. This potentially broke older (as in 386 and 486) support, but it fixes core duo and other newer machines. I wish Intel would stop coming up with stupid cpu name fields. + Update x86_64 to match the changes in x86 6 August 2007 + Got vax fully working 7 August 2007 + Optimized vax RELEASE 0.29 8 August 2007 + Shaved a few bytes off of x86 where it was loading a linefeed inefficiently. + Made a c version of "ll" under the c subdir. This is for some experiments I am doing. 23 August 2007 + Working on sh3 version + Found a bug in qemu-sh4 with the implementation of the mov.b @(disp,rm),r0 instruction which I was using. Sent them a patch 24 August 2007 + Finish optimizing sh3 support RELEASE 0.30 9 September 2007 + Finish 6502 version. Took a while. + Start looking into Mips16 support. RELEASE 0.31 7 January 2009 + Finish crisv32 support. Took a while. RELEASE 0.32 16 January 2009 + Start work on m88k port. 21 January 2009 + Finish optimizing m88k. + Start getting simh and binutils together for pdp-11 RELEASE 0.33 22 January 2009 + Have simple hello-world working (pdp-11) 23 January 2009 + Have hello-world working as function call. + Found problem with pdp-11 assembler in binutils. Sent in bug-report. Turns out I don't need the addressing mode after all. 27 January 2009 + Un-optimized pdp-11 works 28 January 2009 + Optimized pdp-11 RELEASE 0.34 10 February 2009 + Start work on z80 + Fix new_lzss.c to generate proper FREQUENT_CHAR value in logo.inc The z80 assembler complained about it being '^@' instead of 0 11 February 2009 + Logo works, as does part of the system info 12 February 2009 + Entire thing works 13 February 2009 + Optimized + Special birthday release! RELEASE 0.35 3 March 2009 + Clean out the "c" directory as it has some un-needed binaries that were inflating the size of the download. RELEASE 0.36 29 July 2009 + Working on the microblaze port. Qemu is having issues. 1 August 2009 + Minor fix on SPARC version for single-cpu answer. SPARC read address is weird on qemu. + Add "fakeproc" versions so can test on non-native machines. + Ugh, hackery in the Makefile to get the ARCH stuff working. Was it really broken? + Add support for mipsel + Make sstrip handle cross-endian (non-native) stripping. Seems to work for x86->m68k case RELEASE 0.37 5 August 2009 + Re-optimize Alpha code. Shave another 130 bytes off. 6 August 2009 + Got un-optimized microblaze version going. Thanks to Edgar Iglesias for pointing me to a working toolchain. + Optimized MIPS slightly, by filling a few branch delay slots, as well as moving strcat 9 August 2009 + Fix SPARC to properly load the cpuinfo file. It was setting the length to read as 4096 which was silently changed to -4096 which made qemu unhappy. + Sparc was shifting the RAM by the wrong amount for some reason. Fix. + Some PPC fixes. Was arith shifting the RAM instead of logical shift 10 August 2009 + Finish optimizing the microblaze version. + Optimize PPC some more 11 August 2009 + Re-compile s390 with new binutils. RELEASE 0.38 20 August 2009 + Make 8086 port RELEASE 0.39 22 August 2009 + Finish making the 6502 port more similar to the other architectures, with File I/O + Optimize the 6502 port some + Recalculate the 6502 total to not count the graphics routines, to aid comparisons with the other architectures RELEASE 0.40 9 September 2009 + Finish updating RiSC port to be a full-featured port. RELEASE 0.41 12 December 2009 + Some minor changes to ia64 port 4 January 2010 + Add ARM EABI version RELEASE 0.42 13 October 2010 + Fix 8086 port to actually be 8086 (and not 286) 8086 can't push immediate or shift right immediate (noticed by Terje Mathisen). + optimize 8086 target some more, now down to 780 bytes RELEASE 0.43 19 October 2010 + Re-optimize z80 target based on suggestions by Mikael Tillenius. 21 October 2010 + More z80 work. Down to 896 bytes. RELEASE 0.44