Skip to main content

unsigned char

bootstrapping a newton 2100 for fun (?) and profit (?)

10 min read

tl;dr – our author uses various arcane techniques on decrepit devices to load software onto a newton 2100.  the pinnacle of reliable and accessible methods is reached when, after much preparation and many dead ends, he downloads newton .pkg files onto his nokia 6 android phone, and then sends them over bluetooth OBEX to the newton 2100 fitted with a pcmcia pico bluetooth card.

------

a little history, my background with newton, a 2100 without easily-lost accessories, etc.

i was a latecomer to the newton platform.  steve jobs canceled the newton in 1998, and i was given my first newton (a 100 or 110) in maybe 2006 (thanks trey!).  that was followed by an mp130 (thanks again, trey!) and then a 2000-upgraded-to-2100 which i bought from ebay.  the 2000 was my pal for many years, off and on.  i still haven't found anything as trustworthy, capable, and portable, for collecting and organizing my ideas, contacts, and calendars.

after i lost my 2000 on a plane in 2016, i was ready to let the old platform go.  i started using my filofax instead.  but my coworker (thanks trevor!) bought another 2100 (this time a real one, not an upgraded 2000) and gave it to me.  this replacement unit was unfortunately less portable and less usable than my old 2000 for two very specific reasons: (1) it was missing important connectivity options, and (2) it did not have the AA battery sled.  this is to be expected, though – these days, the newton-interconnect-to-serial-adapter and the AA battery sled are probably the two most rare and in-demand accessories for second-hand, third-hand, fourth-hand, ..., newton 2000s and 2100s like these.  

without the serial adapter/dongle, and without the newton internet enabler software being installed, my only connection options (to load software, print, etc.) for this newton 2100 were to (1) beam over infrared (which cannot be done from apple's own tools) or (2) somehow load a newton-compatible pcmcia flash card with software using another newton.  plus, without a functioning battery pack, i was tethered to whereever i could plug in, and the unit would lose power as soon as i unplugged.  (nicely, though, the newton will retain what is stored in its [4mb of] flash memory when power is removed – unlike palm devices of the same era!).  so, the unit sat unused for quite some time. 

until last week.  a former member of the newton qa team came to work for an interview, and i dug out the 2100.  another coworker had also handed this guy our office mp120, so for once the two units were together.  and that's when i began to think about getting enterprising.  "maybe it is finally time to make the 2100 useful," i probably thought.

key facts:

  • the mp120 has a built-in serial port.  
  • newton messagepads can beam software packages (and many other types of items) to each other.

if i could load newton internet enabler 2.0 onto the mp120, i could then beam it to the 2100, and use ethernet on the 2100 to load software over appletalk to a powerbook g4, just like the old days.  or, i could email packages and items to myself using mailV.  and i could print over lpr.  just, again, like the old days.

failed approach #1

in which a powerbook g4 12", which cannot run natively in mac os 9, runs newton connection utilities and newton package installer in classic mode but cannot connect to the newton – despite my uConnect usb-to-serial dongle/adapter having only extentions for mac os 7/8/9, and thus no possible conflicts with mac os x (for which there are no uConnect drivers).

upon reflection, i could have tried this configuration again using my keyspan usa28xg (or whatever) usb-to-serial adapter, which may have performed better in classic mode.  there is also the possibility that the issue is in the timing somewhere, and that that puma transfer driver (!) or uConnect or other communication layer has poor timing when running in classic mode, leading to an inability to communicate.

successful package loading approach #1 leading to failed approach #2

in which a powerbook g3 "pismo" is natively booted into mac os 9.2.2 and the newton connection utilities are used to send newton internet enabler 2.0 packages to the newton 120

and

the newton 120 rejects the newton internet enabler 2.0 packages because the newton messagepad 120 cannot run newton internet enabler 2.0. :(

rain delay #1 for the parade

if i can't load internet enabler 2.0 onto the newton 2100 using the mp120 as an intermediary, i am severely limited in what i can do.  internet enabler 1.1 only supports modem dial-up connections, which in this era would be terrible trouble to make useful.  internet enabler 2.0 supports ethernet cards and even wi-fi.

what to do?

oh, that's right, eckhart köppen's bluetooth stack for the newton, and my pcmcia pico card.

successful package-loading approach #1 leading to successful package-loading approach #2 

in which i load a ton of software onto the mp120 (and, eventually, the 2100) using multiple computers, cables, adapters, and infrared:

i had never been able to make functional the "blunt" bluetooth stack from 40hz.org on my previous messagepad 2000.  i'd even been in email conversation with its author, but my old newton simply errored out where it should have been more helpful and actually functioned.  so i did not have high hopes for this approach.  but it worked.  it f___ing worked.  

ic/vc logo

first, i downloaded the zip files from sourceforge as prescribed by the project pages at 40hz.org.  some of the downloads necessary:

i unzipped them using os x 10.4 or higher, because their resource forks were stored in the zip as ._ files.  then i transferred them to my mac os 9-native machine on a firewire 400 drive, and used either newton connection utilities or newton package loader to send them over serial port using my uConnect usb-to-serial dongle/adapter.  on the newton, this involves using the 'Dock' utility.  all packages loaded well.

i then selected batches of these icons to beam, by using the newton technique for multi-select in icon view:  tap-and-hold, wait for the sound, draw a thick lasso around the icons.  multi-select would also have been possible in list view (reached by clicking the 'dot' between the arrows) by just checking the checkboxes for which items i wanted to send.  then i tapped the envelope icon, tapped 'Beam', and lined up my mp120's IR port with my 2100's:  slightly less than 1 foot apart, with no reflective surfaces in between or nearby.  i went into the In/Out Box on the 2100, and tapped "receive" then "beam", and sat still while most of the icons (apps and extensions) transferred without issue.

when beaming was done, i focused on the items now in my Inbox on the 2100.  i selected them, maybe one-by-one or maybe in a batch, tapped the icon which looks like an action, and chose "Put Away," which installed all the packages i'd beamed.

and it worked

it worked

successful approach #2 led to thing that worked #3

in which the cool-looking pico pcmcia bluetooth card is paired successfully with my nokia 6 android phone, and only my nokia 6 android phone:

i reset my 2100 using the reset button on the back, and when it was done booting, i ran the bluetooth setup icon.  i hit 'discover' and put my nokia 6 bluetooth into discoverable mode, and the newton found it.  i paired the devices, then allowed the newton to discover services available on the nokia 6.  it found the dial-up connection (for sharing the phone's internet connection [tethering]), and the OBEX file push capability.  (!)

i then tried to pair with my mac laptops, and was never successful.  but darned if that nokia 6 didn't work great!

thing that worked #4 and package-loading approach #

in which i find the best way to get newton .pkg files onto my android phone such that i can then send them along, over bluetooth, to the newton 2100:

do i want to use os x's bluetooth menu -> send file?  or bluetooth menu -> browse device?  like i used to do with my old nokia symbian phones?  yes.  yes, i do.  but... then... how do i access the files on the nokia device?  they do not show up in any of the apps-which-deal-with-files.  so...? how do i find the files to send over bluetooth?

well, the easiest way is to just download the dang files on the phone itself.  there are plenty of newton sites which helpfully have raw, uncooked .pkg files available for direct download.  once they're in the downloads folder on the android phone, they can be selected, the 'share' button can be hit, and 'bluetooth' can be selected.  while the android device is preparing to send via bluetooth, i switch my attention to the 2100, where i go into In/Out Box, select Receive, and select BtOBEX (thanks Eckhart!).

again, i really have to restate that it's amazing that this works at all, but seeing a brand-new nokia 6 android device sitting next to a newton, sending it a software package over bluetooth, is just miraculous and beautiful to me.

nokia 6 with newton 2100 and pico bluetooth

once the transfer is done, the package will be available in the Inbox on the 2100.  from there it can be Put Away (like a Beamed icon).  putting it away will use IC/VC to install the package.  and ... did i mention? ... it works.  it really works.  

back to appletalk

with nie 2.0 now installed on my 2100, and my farallon ethernet card inserted, and with the lpr package installed, i was again able to print, and to use appletalk-over-ethernet to connect to newton connection utilities on mac os 9 for purposes of backing up and installing packages.  but for sheer ease-of-use, cable-free setup, and not needing to keep a mac os 9-bootable machine around, BtOBEX from 40hz.org is the way to go.  consumer reports A++, would buy again, etc., yadda x 2.

postscript(s)

  • after all of this, i found these ready-made memory card images which can be used to "restore from backup" in newton connection utilities, as a 'lending library' to help folks bootstrap 2000s and 2100s.  brilliant idea;  thanks ron parker.    ...if someone had loaned me a card with this backup restored onto it, i probably would have gotten going in less time, but with less to write about.  aww, shucks.

barely-tried, failed approach #3: practically a footnote in this gripping adventure

the 2100 came with a 2mb flash memory card.  newtons can load software and information onto these memory cards.  when the memory card is inserted in a newton, the packages on it are loaded and instantiated.

unfortunately, there are two types of memory cards for newtons:  the kind that work only in 2000/2100 (and probably eMate), and the kind which work in those as well as earlier models.

inserting the flash card into the mp120 didn't result in the card being recognized, so i was dissuaded from going any farther with this approach:  it didn't work.