Thursday, August 6, 2009

that ol'university times...

Here is another offtopic. I found this beatiful piece of software, a kind of 'norton commander' -- ok, just a file browser for MS-DOS.... It features a recursive calculator of directory sizes, and a magnificent hex file viewer. Wow! The amazing part is that this fully written on assembler, , for an assignment a group of four friends (Abel Valente, Juan Francisco Pertino, Alejandro Miguez & me) did for the course "Taller de Arquitectura", during our 3rd year of Licenciatura en Informatica, Faculty of Informatics, University of La Plata, Argentina. One of them and me, in parallel, just remembered this work a couple of days ago: almost exactly 10 years after writing it!

Here are a few screenshots. The main screen with the directory size shown (it surprises me that Windows directory size does not overflow...):


Here, the hex viewer!


And finally, the output when exiting, with the date.... August 1999!


One more: source code.... Over 120kb and assembly, sweat and tears:


So many things learned... We will never forget the conditional jumps from the end of a loop.... to the beginning of a loop in a different procedure! And the magic trick of PUSHing and POPing all the flags to make the problem disappear.... ;)

I still can't believe we did it! Those were one of the best 34,687 bytes we ever produced! It's also hard to believe 10 years passed by. I must be getting old.

4 comments:

  1. Wait. Either you already had a screenshot of that ugly blue msdos editor; or you actually searched for it just because it has its own meaning and deserves to be there... ok, that's nice... or... wait a minute... I can't believe it, that crap is still present on windows XP!

    ReplyDelete
  2. I spent some time looking for a downloadable virtualbox or vmware MS-DOS image.... and realize this *could* run in XP. So I started it... and it worked! And yes, how could I use a /modern/ editor like Vim, having edit.exe there?

    ReplyDelete
  3. update: Juan Francisco, our beloved writer of the cross-routine-jumps, calls it "copy & paste programming". And he says: "We still do the same s***t, just in other languages" :P

    ReplyDelete