Post Reply 
HP-41 and Hepax Filesystem
02-07-2020, 11:35 AM (This post was last modified: 02-07-2020 12:22 PM by pablo2000.)
Post: #4
RE: HP-41 and Hepax Filesystem
Many thanks to both of you - some useful stuff in there, although I was already aware of much, but by no means all, of it.

The key information I'm after is this bit ->
(02-06-2020 04:07 AM)Sylvain Cote Wrote:  HEPAX file header uses 10 bytes
HEPAX data record use 6 bytes

I can reverse engineer it if I have to, but it strikes me as odd that a module as revered, almost a cult following, as Hepax has so little publicly available information. And believe me, I've trawled all the old publications, forums and corners of the internet! It may help if I share a little of the purpose for it. Apologies if this is a little long.

I have been a user, and advocate, of the HP-41 since I bought one when the 'C' first came out. As a student it was expensive - but I knew I'd never outgrow it, and I was right. Thirty some-odd years on and it's still my goto machine if I'm away from a PC, even though I have others including a Prime. I really like the Prime and I really wanted to 'love' it. But sadly it's made for the current calculator market, which is school students not professional engineers, and it's lacking in many areas - but I love the connectivity for storing and loading programs, and the ability to upload text files and compile them on the machine.

A couple of months ago I bought one of Monte's brilliant CL boards, which is great - and I told him so. But despite the serial port, loading and saving programs is still a clunky affair - bespoke utilities and special cables etc. Motivated by this, I thought it would be good to bring the whole '41 world up to the 21st century connectivity. So I conceived a device, which I dubbed the 'IOnix'. I promise this is not a sales pitch or product 'plug' - just sharing what I'm doing with this project which is now nearly complete.

So, the IOnix has the following attributes/capabilities:
* Has Hepax embedded to provide the filing system. It had to be usable on _any_ machine, and Ext memory may or may not already be present, but Hepax can always be removed if already present.
* I've implemenmted the complete Hepax instruction set, including ROMBLK, so it correctly performs the page re-location, remapping of RAM and filesystem housekeeping - no need to edit magic numbers. It works *exactly* as per the manual.
* It has 32k Hepax ram, implemented using MRAM devices, which are non-volatile without battery or capacitor backup and have a guaranteed minimum retention of ~20 years. The RAM is dual-ported so is accesible from the '41 and the IOnix mcu simmultanteously.
* Although not it's primary purpose, it is a 'multi' or 'super' ROM - can load single and multi bank, 4k/8k/12k ROMs from .rom or .mod files.
* If RAM is swapped out fror a ROM, when the ROM is 'unplugged' the RAM is restored with its contents. HEPAX forsaw this and a calculator OFF/ON rebuilds the filesystem.
* When saving a file on the HP-41 to hepax, simultaneously the file is available on the uSD card which mirrors the hepax file system - literally HSAVEP a program, remove the uSD card and stick it in a desktop of any kind (PC/Mac/Linux) and in the HepFS folder you will find the file. But also, in other directories you will find a .raw, a decompiled focal file and a gif barcode .bar file.
* Data files a exported raw and as .txt files.
* To upload a file to the '41, just copy it into the aprroriate directory (focal, .raw or native HepFS), put the card in the IOnix HEPDIR and it's there. No fuss. And any focal text files are compiled and loaded if necessary.
* It has a very simple 3 button user interface, so roms can be changed or options set/unset from the device.
* It has a serial port for I/O at RS232 and TTL levels simultaneously, accessed using PEEK/POKE to a set of address. The serial parameters (baud, stop bits etc) are independent of the '41 so, for example, 115200 baud operates correctly even if the '41 cant keep up (which it can't!).
* It has a USB port wich can be used for serial I/O and also powers both the IOnix and the calculator, for extended use.
* It employs some quite sophisticated power management techniques to maximise battery life when powered by the calculator batteries.
* The case is made from a very tough industrial polymer and produced on a high resolution litho-printer, and then has a 3 coat protective paint and UV sealer - so it won't go brittle over the years like the HP card reader etc have tended to do.
* It is a 'half-height' module allowing the continued of of 2 wired peripherals (HP-IL, printer, barcode reader etc)
* It is entirely built 'from new' and doesn't require salvaged connectors or anything else.

Here are a few pics, but I *must* stress, this is bench prototype, so the paint finish is not to spec and has also suffered some abuse!
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
HP-41 and Hepax Filesystem - pablo2000 - 02-06-2020, 12:14 AM
RE: HP-41 and Hepax Filesystem - pablo2000 - 02-07-2020 11:35 AM
RE: HP-41 and Hepax Filesystem - pablo2000 - 02-07-2020, 12:00 PM
RE: HP-41 and Hepax Filesystem - pablo2000 - 02-07-2020, 12:04 PM
RE: HP-41 and Hepax Filesystem - rprosperi - 02-07-2020, 02:05 PM
RE: HP-41 and Hepax Filesystem - mfleming - 02-07-2020, 04:25 PM
RE: HP-41 and Hepax Filesystem - pablo2000 - 02-07-2020, 05:55 PM
RE: HP-41 and Hepax Filesystem - pablo2000 - 02-07-2020, 10:25 PM
RE: HP-41 and Hepax Filesystem - PeterP - 02-08-2020, 10:31 AM
RE: HP-41 and Hepax Filesystem - JurgenRo - 08-18-2020, 06:06 PM
RE: HP-41 and Hepax Filesystem - pablo2000 - 02-11-2020, 09:49 PM
RE: HP-41 and Hepax Filesystem - Allen - 07-31-2020, 12:50 PM



User(s) browsing this thread: 1 Guest(s)