From: Andreas Möller on
Hello,

> In the light of the above note, a Saturn ROM, still usable
> on original 49G, exists for every later ROM through 2.10,
> and can be transmitted by serial cable using ROMUPLOAD
> from Emu48 (or Debug4x) on a computer.  
If you carefully search through this newsgroup you will notice that it
was me who reported this first ;-) where as James M. Prange explaind
it in more detail based on my original post.

Original post:
http://www.google.com/url?sa=D&q=http://groups.google.com/group/comp.sys.hp48/tree/browse_frm/thread/b20c66cdf6c2a524/e33298dbb04c2c1d%3Frnum%3D31%26q%3Drom%2B2.09%2B%252249g%2522%2Bandreas%26_done%3D%252Fgroup%252Fcomp.sys.hp48%252Fbrowse_frm%252Fthread%252Fb20c66cdf6c2a524%252F7ad2a11500110719%253Flnk%253Dgst%2526q%253Drom%252B2.09%252B%25252249g%252522%252Bandreas%2526%23doc_66f4b21c2833ec4c&usg=AFQjCNF5ElmguH5Am5iIgE3cwx32Y7qifg

James M. Prange:
http://groups.google.com/group/comp.sys.hp48/tree/browse_frm/thread/eae3d3ffb75954b3/728005c3969683fe?rnum=1&q=romupload+emu&_done=%2Fgroup%2Fcomp.sys.hp48%2Fbrowse_frm%2Fthread%2Feae3d3ffb75954b3%2F1d3a11a41aa12f06%3Flnk%3Dgst%26q%3Dromupload%2Bemu%26#doc_728005c3969683fe

As the boot loader code has been removed in ROM 2.15 I would not
expect that this works but maybe someone wants to try it ;-)

Regards,
Andreas
http://www.software49g.gmxhome.de
From: Andreas Möller on
Also take a look here

http://groups.google.com/group/comp.sys.hp48/browse_frm/thread/c10e4087f82da220/fd29a916920dd21c?lnk=gst&q=romupload+andreas&rnum=1#fd29a916920dd21c

Regards,
Andreas
http://www.software49g.gmxhome.de

From: John H Meyers on
On 4/18/2010 4:01 AM, Andreas Möller wrote:

> As the boot loader code has been removed in ROM 2.15 I would not
> expect that this works but maybe someone wants to try it ;-)

Does (Saturn) "boot loader" code mean what's in the "locked" block on 49G?

Is it something ever normally executed, e.g. for starting up?
For self-tests? For downloading a ROM?

Sorry I have not looked up past posts, perhaps TW can [re]enlighten
about exactly what's missing, and its impact upon 49G and/or emulator(s).

[r->] [OFF]

From: John H Meyers on
On 4/18/2010 4:01 AM, Andreas Möller wrote:

> If you carefully search through this newsgroup you will notice that it
> was me who reported this first ;-)

Did you notice that I had already just credited your statement
"...the ROM of the emulator contains only pure Saturn code
whereas the ROM of the real calculator is patched in various areas"
when I said "in the light of the previous note,"
while reminding (or informing) anyone today
who might not have not been following all of this four years ago?

Adding a small note, it's been rumored that after first assembling
Saturn ROMs which work on all 49G/49G+/50G series and emulators,
each output file was then scanned using a script (in Python)
which looked for the binary patterns found in places
that could be replaced with an opcode for the ARM-based emulator to trap,
thus performing Loop (or MOVEUP, etc.) in ARM code on that hardware,
rather than using the original Saturn code or SysRPL function call.

A flaw in this script was found and corrected in Sept 2006,
thus no longer overlooking some areas in subsequent ROMs
which had been overlooked in earlier ROMs.

ROM 2.09 was made before that date, hence had some overlooked areas,
although the only consequence of this "overlooking"
was some lost opportunities to speed things up a bit more,
finally realized (I hope) in later ROMs,
which were a long time coming (the next official ROM from HP being 2.15)

---

I have come across some old (bad) news about ROMUPLOAD from Debug4x with 2.15:
http://groups.google.com/group/comp.sys.hp48/browse_thread/thread/dd9349b7d7c1f6d0
in which "lary" says "With 2.15 ROM i got a HP49G with no ROM
(the process stops after erasing the flash memory)
i have to reload it with 2.09 or 2.10"

[r->] [OFF]

From: TW on
> Adding a small note, it's been rumored that after first assembling
> Saturn ROMs which work on all 49G/49G+/50G series and emulators,
> each output file was then scanned using a script (in Python)
> which looked for the binary patterns found in places
> that could be replaced with an opcode for the ARM-based emulator to trap,
> thus performing Loop (or MOVEUP, etc.) in ARM code on that hardware,
> rather than using the original Saturn code or SysRPL function call.

This is exactly how it is done.

TW