HP41 (flash) ROM/RAM/MLDL box survey


I am proceeding nicely with the development of a FPGA for a ROM/RAM/MLDL box for the HP41. This will be much like the HEPAX module, but Flash-based, meaning that ROMs can be programmed almost on the fly by the user and will be non-volatile, even without battery.

I am close to selecting hardware for prototyping, and I would like to know if there is any other interest from the HP41 community. If so, I obviously need to take a different approach. The preliminary specifications can be reviewed on www.kuipers.to/hp41, where a preliminary design (VHDL-based but no schematics yet) is available.

I do not intend to make a commercial business out of this, but rather to cover the cost. The design will be made public anyway. My current guess is that the cost will be somewhere between $100 and $200, but really depends on the technology used. My research shows that SRAM is absolutely necessary as a buffer to program Flash Eprom. The HP41 itself is simply too slow to deal with current Flash technology.

There are currently the following options:

- fit it in a module: looks feasible with BGA components, except for the SRAM battery backup. If you can all live with feeding the SRAM from the system battery than that is fine with me. The Flash Eprom is there to keep data forever. Connectors will be difficult to implement as well for I/O functions to and from a PC. I have a very limited quantity of empty modules and port connectors, and it is my intention to supply complete PCB's with components only.

- fit on a PCB inside the HP41: possible with TSOP components

- fit in a seperate box: can be any size, from shoebox to matchbox with a flatcable to the HP41 port.

Be patient, I do not expect to have any real hardware out within four months, but your input is appreciated.




I'd buy one at that price range.

How much ram would it emulate? 8k or ?


What kind of PC interface are you considering? Serial? USB?



Yes, I'm very interested. Would prefer it to fit in a module, I have a limited number of empty module cases and connectors.




System battery power sounds like it would be OK. Any idea what the total power demand (at state change) might be? Any chance of current stavation or voltage sag?


Yes, I'm interested. A module would do for me but an external box is not completely out of the question.


I am definitely interested in either a plug-in module or an external box; not so excited about an internal PCB.

The price range is acceptable, too.

Count me in! If needed I can provide a module to cannibalize.



Hi there.

Yes, I am very interested in this project. I'd be most interested in a module, or board to fit a module case, as I carry my 41 in my pocket most of the time and would rather avoid having external boxes.

Many thanks, and please keep us informed as to you progress.




I'm interested too. A module more than an external box.


Module is by far the best. External box or even card reader is OK. One could even salvage old 82143A printer pods. How about a VERY big EEPROM that could hold about every ROM ever written with a way to map a given ROM to a given port number. That was what my design was going to attempt.


Module would be my first choice. I would buy one.


I had a few questions regarding capabilities, so I will give a quick outline:

- total of 16 4k(* 10 bits) ROM blocks, can be mapped in any page and any bank. More is possible but maybe not practical

- total of 8 4k(*10 bits) SRAM blocks, can be mapped in any page and any bank

- SRAM banks can be programmed in Flash EPROM

- configuration (which ROM image is mapped where) is in SRAM or Flash

- uses low power CPLD (probably Xilinx Coolrunner), 3.3 V

- Flash Eprom and SRAM use 8-bit interface only (uses two cycles to access 10-bit word)

- 3- or 4-wire interface to PC for up/downloading ROM images, Flash programming, configuration, communication

Other wishes? Let me and the group know! For more technical details, email me.



Could you have more than one of these internal at a time? I guess of course you could have 2 and swap them, but ...

Just a thought.


Please consider a snap-on box similar to the card reader. It might have room for several of these modules plus batteries and, together with the calculator, would fit nicely into the standard 41 case.



I have actually thought about reworkign a card reader.

The card reader reads bits and sends them to the 41, has a decent rom pac, and lots of space. But you don't need the magnetic strips! this should not be impossible to tie into the current plans, but:

I was thinking of checking the software in the rom to see if it would necessarily be limited in "card" length. if it is not (within reason), then one can emulate the read and write circuitry to operate on a flash, no?

This could, perhaps, keep the one relatively native mass storage functionality, allow space for ppc/paname/hpildev/hepax/zeprom and more ram, and give us really Good mass storage.

now that would make one hell of a box :)



wow, that sounds great!

Yes, I'll buy one of those too.
Module preferred.
I can provide empty module(s)




I am interested too. A module is good for me, and the price sounds good.

Please keep us updated.


I'm not averse to an internal unit, but a module is probably best.

I could cannibalize a pair of modules if I needed to. one of thsse would end up in the vehicle mounted hp- (which is coming along, I've got some basic wiring for the space, a model of the 41 casing, a battery pack to rebuild, and a power supply)


Very nice project ! Because a ram-box system gives HP-41 most advanced features ! Pack this technology inside modul case or card-reader housing. Do not limit memory space to 32KByte. Please add bank switching capabilities and enlarge memory to minimal 64KByte - better would be 128KByte or 256KByte.... !!! Port consumption of only one needed HP-41 plug in slot gives optimal overall system configuration : Remember you also need one port for X-Memory (or Double X-Memory) one for the IL-Module and a last one free to conserve system flexibility...

Best wishes from Germany - Christoph


I am interested at $150 +/-.

I wonder if the design could provide a pass-through port, so you would still have 4 available ports with this new box installed.

I think using the 41's bus for backup power is fine. Perhaps the external connector could also provide power so one could remove the box without losing the SRAM.

Although "in a module" sounds great, I would not advocate this option if it doubled the cost and made small production runs problematic, which I expect it does.

Something in the "card-reader style" seems like a good compromise to me. Lots of room for parts, external connectors, etc.

I wonder if more than one configuration is best...

1) An "as small a package as possible" (eg. a module, made with technology that can't be done except in quantity), and

2) A larger box with battery backup, and extra ports (hopefully possible to make in one-off quantity by an electronics enthusiast)

Oh, I think I should point out that flash memory is not 'forever' on the time-scale of use for this (decades). There should be enough fuse programmed code in it that when the flash is wiped out, the box can still be brought up and used (without loading some boot flash via some fancy in-circuit programming setup).

Good luck!


I warmed by all your enthousiastic responses!

I want to add a few comments to some of the suggestions that have been made.

In the first place, I want the ROM/RAM/MLDL in as small a space as possible, preferably a module, but I am not certain if that will really work.

In the second place, the scope of the project is to be able to put as many ROM images as possible inside an HP41, and to allow user to develop and swap their own MCode. Why does there seem to be need for extra module ports? I can only see use for the time module (mine is built inside with quad memory), extended functions and memory (I have a doubled module for that) and possibly cardreader and printer. Your CCD ROM, Math, PPC, David Assem (my favourites) and everything you have go into Flash EPROM.

I do not intend to make a mass-storage device, I want to use my PC for that, and that is why I intend to build a simple interface for that as well. Mass storage would require loads of Mcode development, but is not impossible. I can add as much (Flash) memory as you like, and 4 Mbit (giving you permanent storage of around 40 ROM images) should to be sufficient to make you wildest fantasies come true. Do you want to store your own user code programs? Put them in a ROM image or in SRAM. I plan to enable access to every single byte in Flash/SRAM anyway, so feel free to build code around it. Just as long as you do not forget that it will not be possible to program Flash straight from the HP41. That will have to be done through buffers in SRAM, and may even be possible under control from a PC only.



What about the handling of plug in modules with internal bank switching like the AEC-ROM or the HEPAX-Module ? Both have 3 x 4KByte = 12 KByte.



Bank switching will work!


Your ideas and plan are all great and make sense! I'll still answer the conceptual questions you raised :)

1: having onboard or "pc-free" mass storage (especially in a unit the size of the card reader) keeps you relatively independent. One of my largest complaints about modern handheld technologies is you end up having to carry MORE hardware instead of less becuase you need a laptop to actually do any developmental work or save that work.
Not that I would not buy 2 given just about anything you can make, of course. :)
(I think of the idea I have of converting the card reader to not be developing mass storage, but changing the media that the existing mass storage system uses.)

2: The extra module ports interest is not a major priority for me (3 empty is enough 99% of the time) but there are always special cases, especially if the 41 is used as a controller device and/or development/experimenting platform.
The more I think about the capabilities of your planned system, the less I think I need extra ports beyond the four, but this is definitely an area where the 41 could have used more prevalent accessory development :)

40 ROM images (or 30ROM images and state/system/data backups beyond my imaginable needs) sounds great!

the next question: do you need anything?


The desire for a pass-through port may be just me, or my imagination, but I see adding this to the electronics as being nearly trivial. Adding to the packaging is more of a problem, but a simple cutout would be adequate IMHO (no need for fancy guides, seals, etc.)

More than once I have wanted to have my card reader, HP-IL and wand. Usually it is easy to swap, but I advocate not building-in more limitations than necessary.


I worry that designing solely for a module will create future supply problems.

The BGA (or other minimal size) parts will only be available in large (expensive) quantities. (Or may not be readily available at all due to production/allocation problems.)

Assembly will only be possible with fancy (expensive) equipment, with expensive setup charges.

The many-layer circuit board will only be economical to fabricate in quantity.

As a result, a production run will require collecting funds up-front from many buyers. This will work fine the first time, and perhaps the second time if within a year. But thereafter, the difficulty in arranging all of the above will mean that no additional production runs are done, particularly after a couple of years have passed.

Since the module sized design in not buildable by most electronics hobbiests, this will leave us in the well-known situation where a very important accessory (eg. HEPAX or whatever example you wish) is simply in too short supply for those that could use it.

This is only my opinion/concern, and how I would approach the project. Clearly it is not my project, and Meindert should decide based on all opinions (especially his own). I will certainly buy as many as I can afford/justify.


I have assembled some small ball grid packages on PCB with only a hand soldering iron. The PCB had a grid of through holes that matched the balls on the BGA package. The BGA was seated over the through holes and then soldered down from the back side. This worked well for the small (20 pin range packages) we were using.


... I'd prefer a module, too. Which solution however, please keep us uptaded on the development progress!


This is GREAT NEWS! I am eager to get this device!

I would prefer a module, if RAM is fitted it is OK to feed it only from the main battery. I am slightly calm to the idea of having it internally, but it might be acceptable. I would not like an external box (I already have that and it is not something I like to carry around). If a module is not really possible due to size constraints, I would prefer to have something slightly larger than a module, like the IR printer, which protudes slightly but does not interfere much with pocketability.

I would like to buy two MLDL modules.


Yes, I'm very interested.
- I'll buy at least one.
- Any kind of package is OK, but the smaller ones are preferred. I have one module housing, eventually two.
- Why not using MultiMedia Card, SD Card or SmartMedia Card as Memory? They are available as FLASH Version and some(AFAIK) are available as RAM. Two of them (RAM/FLASH) should fit in a Card Reader. I'm just dreaming.
- Is it possible to use Gold Caps / Ultra Caps or the like in the module for intermediate short time powering?
- May be I can help you in getting microconnectors for the connetion to the PC.
Kind regards, Andreas


That sounds great especially in a module. Presumably it could contain more than 16K which I seem to recall was the limit on the original MLDL boxes?


If it was external or in a card reader case, IBM has a very teeny gigabyte plus hard drive ;) I have a few of those HP 10 and 20 meg matchbox sized drives. Talk about overkill...


I think is very interesting.
I thought about a module (or double sized module) whith a pic or similar that act as controller and an MMCard/SDCard reader/writer.
In the module commands compatible with card reader + tape reader + disk unit. So, the pic acts as an emulator and stores the data and programms in the Multimedia card.
It makes possible to interchange files from HP to PC and PDA with an MMCard-SDCard Reader.

Possibly Related Threads...
Thread Author Replies Views Last Post
  How to copy files from 9114B to hard drive via PIL-box? Joe Horn 23 4,501 12-14-2013, 11:57 PM
Last Post: Geoff Quickfall
  42S with nonvolatile RAM Lyuka 5 1,179 12-13-2013, 08:52 AM
Last Post: Lyuka
  DIY HP 30b WP 34s serial flash/programming cable Richard Wahl 2 941 12-04-2013, 11:14 AM
Last Post: Barry Mead
  PIL-box w/o IL cable = paper weight Joe Horn 15 2,202 11-26-2013, 01:05 AM
Last Post: Les Wright
  PRIME: re-format the flash drive to recover the operating system Harold A Climer 2 689 11-06-2013, 12:22 AM
Last Post: Michael de Estrada
  Bad Flash in HP Prime Han 11 1,564 09-27-2013, 12:38 PM
Last Post: Han
  Box left at HHC Tim Wessman 1 652 09-26-2013, 11:05 PM
Last Post: Wlodek Mier-Jedrzejowicz
  Best way to test HP-71B RAM modules (the 32K/96K ones etc.)? Philippe Lasnier 4 1,087 09-25-2013, 09:54 AM
Last Post: Philippe Lasnier
  Flash Flood Warning: 9/16/2013 (One Week from HHC13) Eddie W. Shore 8 1,247 09-17-2013, 09:20 PM
Last Post: Craig Ruff
  HP 2225D+ RAM failure/replacement Luca 4 858 09-10-2013, 01:46 PM
Last Post: Luca

Forum Jump: