HP Forums

Full Version: Wiki for HP-20B hacking
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

Group --

I received my HP-20B last night. I foolishly chose UPS Ground as my shipping method, so I had to grind my teeth while the rest of you received yours last week. Grrr. ;-)

I am excited about this calc, and potential re-use of it! I see that we already have some great investigative postings by Scott N, Jeff O and others, and this information is just too valuable to let remain unorganized. I have therefore created a wiki for this project, and am willing to contribute to it and act as "librarian" for as much of the information as I can.

This is by no means a slight on HPM, nor the awesome resource Dave provides here -- I just feel that if we are to be successful, we need to have a better organized repository of information. This will help new volunteers get off the ground faster, help us post our observations and learnings, and so on. I hope this doesn't offend anyone here.

The wiki is open to everyone, although I will require registration for anyone who wants to update wiki pages. I am going to try and move all of the information already in here into the wiki over the next few days, so bear with me as I get it in there.

The wiki is here: HP-20B Hack wiki

Enjoy, and let's really do this puppy up right! ;-)

thanks,
bruce

Topic suggestion: Maybe those in the know could concisely restate what one needs or can use (tools, interfaces, development kit, assembler/compilers, emulators, etc.) to start playing with this thing? Sounds like it could be fun.

I never got past the 'get acquainted phase' with the TI-83+ (Z-80) -- partly because it was such a large, clunky, uninspiring thing. This could be very different . . .

Edited: 22 July 2008, 7:26 p.m.

For code development, you need an ARM toolchain (C compiler, assembler, linker, debugger). There are several choices:

  • GNUARM GNU tool chain (GCC, etc), free, no size limit
  • CodeSourcery, GNU based, commercial, "Lite Edition" at no charge (no size limit, but includes command line tools only)
  • IAR, commerical code-size-limited version at no charge
  • Keil, commercial
  • ARM RealView, commercial, very expensive, reportedly has significantly better code generation than any other ARM compiler


To download, there are two options:

  • Serial (download only)
    • serial cable with level translator - need some way to contact the pads in the battery compartment, e.g., pogo pins
    • Atmel SAM-BA download program for Windows (no charge)
  • JTAG (full debugging)
    • header to solder to calculator PCB
    • JTAG interface - several choices
      • SAM-ICE JTAG interface (an Atmel-only version of the Segger J-Link), costs about $150
      • various FT2232-based USB devices that support OpenOCD
    • debugger supporting your chosen JTAG interface - most of the tool chains above support the SAM-ICE, but support for others varies

I don't endorse any of these. Well, actually I endorse the GNU toolchain and OpenOCD, because they are Free Software.

Quote:
Topic suggestion: Maybe those in the know could concisely restate what one needs or can use (tools, interfaces, development kit, assembler/compilers, emulators, etc.) to start playing with this thing? Sounds like it could be fun.

I'm using an ancient parallel port wiggler (either the Olimex clone of the real wiggler, or a hand built unit) with Macraigor's OCD Commander under windows 2k. Not a popular choice to be sure, but I've used the combo for other reverse engineering projects before and I'm used to it.

I'm currently playing around with the Codesourcery toolchain, but in the past I've used prebuilt windows binaries from the RTEMS project and built from scratch GNU toolchains under Cygwin and OpenBSD/sparc64 with good results. I'm sure the commercial compiler vendors offer code size or time limited demos that could be used as well.

My JTAG connection is currently a mass of wire-wrap wire tacked to the JTAG pins and wrapped to a 2x10 header for easy connection to my wiggler. Just got my surface mount 2x8 connector, so I'll probably update that. I'm using an cute old HP6218A power supply while on JTAG, since the batteries won't stay put when the case is apart.

I have pogo pins, but have not built a housing to retain them against the 6 pin program connector. Looking at the back of the housing, it appears to be designed for some sort of snap in connector. That would be a nice piece to locate...

Quote:
I received my HP-20B last night. I foolishly chose UPS Ground as my shipping method, so I had to grind my teeth while the rest of you received yours last week. Grrr. ;-)

Mine was UPS ground as well. I'm stunned it arrived so quickly.


Quote:
The wiki is open to everyone, although I will require registration for anyone who wants to update wiki pages. I am going to try and move all of the information already in here into the wiki over the next few days, so bear with me as I get it in there.

I'd be happy to upload an executable test program to demo scanning the key matrix and driving the LCD, but the wiki doesn't seem to like .elf files. .tgz should be enabled as well, so we can pack multiple source and binary files into one download. Or did you have something else in mind for binary and source files?

I've posted Eric's excellent list of requirements onto the wiki. We will add more to it as information becomes available.

thanks,
bruce

Strange... Okay, let me look into it and see if I can fix it -- it's supposed to be allowed.

thanks,
bruce