[NTLK] Historical and technical end of year treats
tonykan at xtra.co.nz
Mon Dec 30 02:27:07 EST 2013
From: newtontalk-bounces at newtontalk.net
[mailto:newtontalk-bounces at newtontalk.net] On Behalf Of Steve White
Sent: Monday, 30 December 2013 6:17 a.m.
To: newtontalk at newtontalk.net
Subject: [NTLK] Historical and technical end of year treats
Maurice Sharp's Etch-a-Sketch, the precursor to NTK has been recovered.
Egger, which has been mentioned here numerous times over the years has
finally been recovered.
Egger states that it'll only run with an ARMistice card:
Or the ARMageddon card, so long as you're running the ARMageddon application
(app is still missing).
Or a BunWarmer. My guess would be hooked up via one of these cards:
However Maurice Sharp believes I'm wrong about this. I'm still waiting to
hear back more (hint hint incase you're reading this Maurice :).
Provided you have one of these cards, you'll need a ROM image to load into
Egger. A ROM image with the version identifier "629AS.00" has been
I came across a mysterious PCMCIA card labelled "K Diags 1.4.3":
Card picture: http://www.flickr.com/photos/pablo_marx/8351773188/
Sample screenshot: http://www.flickr.com/photos/pablo_marx/8386068896/
This contains diagnostics software for the eMate (mentioned in the eMate
Service Source manual). I found it very neat as I never knew Newtons could
boot from PCMCIA cards. Additionally the card can copy itself to internal
memory, or copy itself onto other PCMCIA cards.
I don't know enough about PCMCIA cards to know how to make an image of one.
However the diagnostics software contained a "ROM Monitor" which would talk
out the serial port:
So I used this to dump all of the contents of the diagnostics software, and
have uploaded a binary of that for others to check out.
I finally got my hands on a Newton Notepad!
It came with a draft manual, which I've uploaded in a few parts to UNNA (due
to the 10MB upload limit):
Or as a single file to scribd:
As the Notepad was running pre-release software, I was determined to dump
the ROM off it. All of the Newton ROM dumping techniques I'm aware of are
2.x specific, as they either require running native code or using
Hammer/Newtsbug. But even if there was a 1.x technique, this Notepad
decided to put up a few hurdles. It cannot communicate with any version of
NCU I have. It cannot share PCMCIA cards with other Newtons. Nor can it IR
beam with other Newtons. Given the story of Newton development says they
went from alpha to beta and back to alpha again, I'll assume this
1.0b1 was one of those pre-alpha betas :)
I cracked open the Notepad and sadly the ROMs are soldered to the logic
board. And the TSOP48 package is a bit beyond my hardware skill. I was
reasonably discouraged at this point. However the OMPs do have a diagnostics
mode (described in the OMP Repair Manual). Inside the diagnostics software
there is a "Memory Dump and Edit" screen:
Long story short -- I used this screen to enter a lovely 60 byte ARM routine
to dump the ROM out the serial port. Amazingly I was successful with that,
so I'm happy to present a ROM image from this device:
Feeling invincible with this success, I repeated it on an OMP running 1.3:
(For those interested, I cannot run the two I dumped under Egger -- I
believe this is because Egger wants a minimal amount of debugging symbols
present: gNewtConfig, gNewtTests, gTimerVirt, SkiaHeapBase, etc.)
So there now exists three 1.x images, a couple of them were never widely
seen. But they can't be emulated (yet), so what can people do with them
besides stare at the precious bytes? I clobbered together a tool named ROM
This tool can open the three ROMs I've mentioned here (and hopefully any
other 1.x ROM). If there is interest, I can get 2.x images working as well.
It requires 10.7+, but I could undo two instances of laziness to make it
work on earlier OSes if wanted.
The tool will decode all of the NewtonScript objects located in the ROM Soup
and recreate them inside the tool's built in NEWT/0 instance. Once this
finishes (lightning quick!) you're able to explore all of these objects.
I've setup a few slices of data I think most people can
1- Image browser. This'll display all the bits&pictures from the ROM. You
can right click images to save them as .png files.
2- Sound browser. Double click to hear the sound, or right click to save as
3- Blob browser. Other binary objects. Double click to view inside a
HexFiend window. Right click to export.
4- Giant list o' strings. Because hey, strings are interesting :)
And #5 -- an interactive NEWT/0 console. Here you can type in NewtonScript
expressions, and navigate the NewtonScript objects just by expanding them.
And while looking at NewtonScript objects is fun, it is sad to see
"function, # arg(s)" over and over. To remedy that, this tool includes a
copy of Jason Harper's ViewFrame. It will attempt to decompile any
NewtonScript function it encounters in the console print out. ViewFrame has
been a good source of finding NEWT/0 bugs -- but I haven't fixed them all
yet, so not all functions will decompile. And oddly none in the 1.0b1 image
decompile -- significant bytecode change?
I believe that's about all for now...
The NewtonTalk Mailing List - http://newtontalk.net/
The Official Newton FAQ - http://splorp.com/newton/faq/
The Newton Glossary - http://splorp.com/newton/glossary/
WikiWikiNewt - http://tools.unna.org/wikiwikinewt/
More information about the NewtonTalk