The Museum of HP Calculators

HP Forum Archive 19

[ Return to Index | Top of Index ]

Emu28
Message #1 Posted by Alexander Wassermann on 1 Sept 2009, 12:10 p.m.

Hi everyone,

I am trying to follow the steps for downloading my ROM from a real HP28S to a HP48GX. I have entered the programs from the instructions provided by Christoph Giesselink (thanks for your great work) but cannot get my checksums to match.

Any idea what I might be doing wrong? Thanks, Alex

      
Re: Emu28
Message #2 Posted by Christoph Giesselink on 1 Sept 2009, 12:52 p.m.,
in response to message #1 by Alexander Wassermann

This is the wrong emulator. Emu28 is for the HP28C only. Use Emu42 instead please. So the correct program to verify the HP28S ROM image is LEWISCRC.EXE.

Sorry for the confusing. The HP42S was the 1st emulated calculator on Emu42, therefore the name. But the HP42S and the HP28S share the same main chip (1LR2 Lewis), so Emu42 was expanded to emulate the HP28S too. Mainly Emu42 v1.11 is emulating the High-End Pioneer and the 2nd generation of the Clamshell calculator hardware. Forthcoming Emu42 versions will emulate the Mid-Range Pioneer calculator hardware too.

The HP28C (and HP18C) belong to the 1st generation of the Clamshell calculator hardware with different chips (1LK7 CPU, 1LP2 Centipe chipset, ...). So I created a separated emulator for emulating the HP28C.

Cheers

Christoph

            
Re: Emu28
Message #3 Posted by Bart (UK) on 1 Sept 2009, 1:19 p.m.,
in response to message #2 by Christoph Giesselink

Thank you for that update Christoph, I hope to do the ROM download for my 28S soon, I'll make a note of this post.

Bart

            
Re: Emu28
Message #4 Posted by Alexander Wassermann on 2 Sept 2009, 5:45 a.m.,
in response to message #2 by Christoph Giesselink

Hi Christoph et al,

maybe my question was not quite clear and I will try to explain again:

I have not yet extracted the ROM, so I am not even using either emulator (Emu28 or Emu42). I am still wondering about the procedure to extract the rom using the instructions from the clamshel.txt instructions. The "chk" and the "ass" programs to not provide the required checksums and neither does the MROM28.

I have rechecked my input several times and am quite sure I have no typos.

What might I be doing wrong?

Regards, Alex

                  
Re: Emu28
Message #5 Posted by Christoph Giesselink on 2 Sept 2009, 8:43 a.m.,
in response to message #4 by Alexander Wassermann

Quote:
The "chk" and the "ass" programs to not provide the required checksums and neither does the MROM28.

Basicly the checksum of the CHK program must be OK first. It makes no sense to build a checksum with a wrong checksum program.

For the HP28S we have to use this program:

CHK [1142] for HP28S Rev. 2BB

<< RCLF STD HEX 64 STWS 48 CF SWAP RCL ->STR 16 STWS DUP # 0h 1 ROT SIZE FOR j OVER j j SUB NUM R->B XOR RL NEXT ->STR 3 OVER SIZE 1 - SUB ROT STOF SWAP DROP >>

Of course the text <<, >> and -> have to replaced by the correct characters (otherwise you get a syntax error either). It's of course also important that the cases are matching, so a

... OVER J J SUB ...

is different to a

... OVER j j SUB ...

You can't do something wrong with the whitespaces. The code part "RCL ->STR" format the code always in the same way (on the HP28S with ROM rev 2BB, because of this the code for the HP28C looks different).

When you have the correct calculator and typed in the corresponding program correctly the return of

'CHK' CHK

must be "1142" in stack level 1.

Cheers

Christoph

                        
Re: Emu28
Message #6 Posted by Alexander Wassermann on 2 Sept 2009, 10:26 a.m.,
in response to message #5 by Christoph Giesselink

Hi Christoph et al,

thanks for your clarification, this was exactly what I was referring too.

The problem is that my CHK program is exactly as you typed it (and I redid this three times) and I have no syntax errors (and I confirmed my firmware version by typing # Ah SYSEVAL which returned 2BB). Nevertheless I get "51C3" after 'CHK' CHK and not the required "1142" in stack level 1. And that is why I contacted the Forum for help/assistance.

One question I had was the meaning of "putting the calculator in HEX mode". What I did was SHIFTRED BINARY HEX and thought that was what was meant. I am not 100% sure though if putting the calc in HEX mode means something completely different. Maybe here is a mistake.

I have no other idea at this moment but would be greatful for any more input.

Thanks again for your kind help,

Regards, Alex

                              
Re: Emu28
Message #7 Posted by Bart (UK) on 2 Sept 2009, 6:03 p.m.,
in response to message #6 by Alexander Wassermann

Hi Alex,

I just tried the CHK program and the checksum is "1142" as Christoph said. I tried setting HEX & DEC before running 'CHK' CHK, but it made no difference, as one would expect (the CHK program puts it in HEX anyway and remembers your previous setting by RCLF & STOF). I'm afraid I cannot be of more help.

Bart

                                    
Re: Emu28
Message #8 Posted by Alexander Wassermann on 3 Sept 2009, 3:09 a.m.,
in response to message #7 by Bart (UK)

Hi Bart and Christoph,

thanks again for your support and input.

Reread again and again what I was supposed to do. Got the mistake finally. When Christoph said J J is different to j j I thought: yes of course, the counter J must be the same cpaital as the variable J and not one upper case and the other lower case. It took until this morning I realized the lower case is a must for all "j's" because the value of the character is used to calculate the checksum.

Lets see if I can solve the rest of the task.

Regards, Alex


[ Return to Index | Top of Index ]

Go back to the main exhibit hall