Blast from the past for sure, OP was not but I was in Paris in the early 90s, and HP48 hacking was huge. I remember attending class, ignoring the teacher, and just patiently leafing through long print outs of HP48 disassembly, or typing in assembler programs on the calculator itself.
The software on this thing was pretty amazing, but surprisingly hacky in some ways. The RPL language had a system of embeddable objects in memory, but when the interpreter had to skip over an object (i.e all the time), there was no field marking its length, so it had to actually recurse through all the sub-objects to find the end.
IIRC there was the a hack where some memory locations could contain a direct pointer or a pointer to a pointer, and it would work either way because the same bits could be interpreted as a pointer or directly executed... or something of that sort.
The French HP48 phenomenon was always interesting to me. How did that happen? I'm in the US and we had a French high school student visit over the summer. Always talking about the HP48SX, though he didn't bring it with him. But when I needed to get a graphing calculator I ended up buying an HP48GX instead of the recommended TI-83 (I ended up getting one of those as well). I used the 48GX throughout middle school and high school w/Meta kernel, Erable - the developers of which all French, ended up working for HP ACO. Used a 50G later on. It was always interesting to me how the development powerhouse for the HP48 series was all French, but never really understood how that happened. Was there some schooling mandate similar to TI in the US?
downsplat|3 years ago
The software on this thing was pretty amazing, but surprisingly hacky in some ways. The RPL language had a system of embeddable objects in memory, but when the interpreter had to skip over an object (i.e all the time), there was no field marking its length, so it had to actually recurse through all the sub-objects to find the end.
IIRC there was the a hack where some memory locations could contain a direct pointer or a pointer to a pointer, and it would work either way because the same bits could be interpreted as a pointer or directly executed... or something of that sort.
stephc_int13|3 years ago
stephc_int13|3 years ago
curdstown|3 years ago
liotier|3 years ago
franzb|3 years ago