David-Assem 2C source code with comments

Programs for HP-41

David-Assem 2C source code with comments

Postby derekamos » Sat Oct 18, 2014 1:02 am

Would anyone have done work disassembling the David assembler ROM?

I am interested in seeing just how the keyboard functions work & find the mcode to be very confusing without any of David van Leeuwen's original source code commentary.

My special interest is in using the Laitram concept to alter the David ROM keys to more IN LINE usage. The original keypad I find to be really odd to use.

Any help will be appreciated.
Posts: 3
Joined: Wed Oct 01, 2014 2:03 am

Re: David-Assem 2C source code with comments

Postby Davidav » Sun Jul 19, 2015 10:32 pm


I wrote the David-assem some 30 years ago... Unfortunately, there weren't many software tools to my avail at the time. The code was painstakingly entered one instruction at the time through some Alpha-to-machine-code function from a ROM that itself was painstakingly programmed by entering the hex codes in some EPROM burner device that I could borrow. After a while, I had enough code so that entering the code itself was a tiny bit easier, I could just type the hex codes from the keyboard (the first little bit of functionality of the code). This way I could slowly develop the code using the half-finished code itself.

I don't think there is any commented code, at least not digitally. I Might be able to find some hand written code listings with some comments for myself, as I remember I first wrote the lines in text using pen and paper before I keyed them in on the device. But I doubt these will be any good to you...

You can disassemble the code using the code itself, of course. For reading keystrokes i used the standard routines from the base rom. If you have mnfr-lbls these routines will show up as half sensible names (I took them from the HP nomas dumps of the base code).

If you use a (software emulated) hepax module, please be careful not to disassemble the instructions at address 0002 ("light sleep wake up") as this will clear all RAM without questions or warnings. The fact that /reading/ a memory address results in an alteration of the memory (in this case a complete wipe of all memory) is the most ridiculous thing I've ever seen in computing. The designers of hepax must have been pretty brain-dead at the time. For me, I've stopped using the iPhone hp41 hepax emulator immediately when I found out about this crazy behavior, but alas...

I can't help you any further at the moment because I don't have a working hp41c machine code emulator available at the time---i have moved away from the iPhone.


Posts: 1
Joined: Sun Jul 19, 2015 9:55 pm

Re: David-Assem 2C source code with comments

Postby nowake92 » Tue Feb 09, 2016 9:53 pm

I have prepared an EXCEL file with the DavidASSEMBLER transcripts (what I call the "blueprint"). It could serve as a start for you David to do some annotations if you feel like it, it'd be great if you did it!

(205.2 KiB) Downloaded 46 times

'Angel Martin
Posts: 6
Joined: Mon Apr 27, 2009 6:00 am

Return to HP-41 Software

Who is online

Users browsing this forum: No registered users and 1 guest