Hacking the GRiD PalmPad

The GRiD PalmPad is a frustrating computer that greatly captured my interest.  I’ve spent much time examining and reverse engineering it’s hardware and software.

This is geared towards the PalmPad 2630 series.   The PalmPad 2350 series shares some similarities but is very limited and less exciting in comparison.

My GRiD PalmPad inventory in 1998 and a PalmPad I rendered in 1997 using Caligari TrueSpace.
My GRiD PalmPad inventory in 1998 and a PalmPad I rendered in 1997 using Caligari TrueSpace.

The PalmPad Series comes in two general flavors, with sub-models of each.

The PalmPad contains a bootable Flash ROM with MS-DOS 5.0 and a few utilities.  It has a card slot that can only utilize proprietary early SunDisk cards (not ATA compliant) and expensive low capacity SRAM cards by means of a SunDisk to IDE controller/adapter board.

The PalmPad is a frustrating challenge because it’s proprietary storage system makes it very difficult to get data to and from the computer and it uses highly proprietary connectors too.  It has no integrated user data storage and it’s AppROM contains intersvr.exe to get data FROM the PalmPad but the reverse would have been more useful today.

An outline of my tinkering is listed below.  I will expand upon each as time permits.

  • Removable Storage
    • Developed a homebrew PCB to replace the SunDisk card interface with one that directly accepts CompactFlash (CF) instead (BIOS patch required too). This greatly unlocks the performance and possibilities.
  • BIOS ROM
    • Patched BIOS to allow the use of CF-Cards (Compact Flash).
    • Sorted out most of the GRiD Int 15h.E4h routines.
    • Figured out low level semi-direct digitizer access.
    • Figured out high level digitizer access.
  • AppROM Subsystem
    • Developed custom AppROMs for the 2360.
      • Works with other DOS variants (2360 only)
      • Allows for subfolders in ROM (2360 only)
      • Added a ramdrive, interlnk, games, etc.
    • The 2360 and 2350 use completely different AppROM subsystems.
  • Operating Systems
    • MS-DOS 5.0 and 6.22 tested
    • FreeDOS (and it’s pros and cons on the PalmPad)
    • Windows 3.1
      • Windows Pen Support (using Grid 2260 drivers)
      • Modified VGA driver to use the native 640×400 resolution because the 640×480 driver loses 80 pixels off the bottom of the screen.
      • Win 3.1 runs too slow from a SunDisk card but quite nicely from a CF-Card.
    • GEOS
      • Working and I was able to modify the video driver for native 640×400 support.
    • OS/2 Warp
      • OS/2 Warp 2 I was unable to get running reliably.
      • OS/2 Warp 3 I was able to get running well but couldn’t figure out modifications to the video driver, so it runs at 640×480 with the bottom 80 pixels lost off the bottom of the screen.
  • Hardware
    • Disassembling the PalmPad and things to be very careful about while doing so.
    • SunDisk Cards (proprietary, not modern ATA cards)
      • Analyzed the original SunDisk cards which contain raw memory with no controller. Control is performed by external hardware (the card slot to IDE daughter board).
      • Sorted out some of the proprietary SunDisk functions that the controller board responds to. (Wear leveling, etc.)
    • Pinouts of the PalmPad internal connectors.
      • Comm connector (modem/serial/parallel/more)
      • Accessory BUS connector (below the IDE port)
    • How the backlight system and brightness level hardware works.
    • The PalmPad’s very high quality serial ports.
    • The PalmPad’s undocumented parallel port accessible from the internal comm header.
    • Secrets of the GRiD Gauntlet ASIC utilized in many of the GRiD computers of this time.
    • Interesting Fact… The PalmPad 2630 has a 640×400 resolution LCD screen but the VGA chipset doesn’t support any 640×400 modes. It uses 640×480 mode with the bottom 80 pixels lost from view. It doesn’t even support the classic 640×400 monochrome AT&T mode.
    • RTC/CMOS battery is socketed on the mainboard. (My 2360 wouldn’t POST until I installed a fresh one).
      Renata 3.0V CR2430 Lithium
    • WARNING: The internal Bridge Battery (Varta 2.7v) should immediately be removed from all PalmPad computers. If it hasn’t leaked already then it will soon and may damage the mainboard. It is not required for general function, it’s only there to preserve the system state while swapping the main battery.
  • Interfacing
    • Powering the PalmPad without it’s proprietary cables.
    • Peripheral interfacing to the PalmPad without it’s proprietary cables.
      • Keyboard interfacing options and hacks
      • Serial interfacing options and hacks