I picked up this system from its previous caretaker yesterday, to hold onto for 
a friend. I’ve also inventoried the major functional ICs and archived the 
“IPL-M” ROMs.

Here’s what’s in the Eagle-32:

- Main Logic Board
  - 8MHz 68000 CPU
  - 2x D8255 programmable peripheral interface
    - left 8255 is clearly for parallel and user port
    - right 8255 I strongly suspect is for hard disk, possibly ANSI or SASI
  - D8253C programmable interval timer
  - 2x 2651N programmable communications interface for serial ports
  - 2x 2716 for IPL-M 0/1 ROMs
- Disk Controller Board
  - FD1701B-02 floppy disk controller
- No video board, whether text or graphics

Since there’s no video board in the system, and a couple of cables internally 
that aren’t attached to anything, I expect it was removed by a previous 
caretaker. This is sad because without one it’s unlikely to come up, not that 
anyone has found any software for it. On the other hand, there are zero PALs, 
so both full reverse engineering and maintenance should be straightforward.

I threw the 4KB of boot ROM in Ghidra and confirmed a couple things:

- At boot, ROM is mapped to 0, and then remapped either by a write to the 
location or by a cycle counter: The initial stack pointer at 0x0 is 0x0001fffe 
and the initial program counter at 0x4 is 0x00ffc026, indicating the ROM is 
normally located at 0x00ffc000.
- The ROM freely interchanges addresses in the 0x00ffc000..0x00ffffff range and 
addresses in the 0xffffc000..0xffffffff range, which is annoying to deal with 
in Ghidra.
- I/O devices appear to be in the 0x00ff8000..0x00ffbfff range, all of the 
devices accessed via the bootstrap seem to be barely above 0x00ff8000.
- Only NMI, bus error, interrupt 2, and interrupt 5 are set up by the bootstrap.
- The bootstrap is very bare-bones but still has a bunch of indirection in it; 
it’s obviously written in assembly, but it does seem to have parameterization 
so it may support both console and serial I/O.

I suspect that I can figure out from the pattern of I/O accesses which devices 
are at which address in the memory map, at least if I bring up an emulation in 
MAME. That should at least allow writing new code for it, and _maybe_ even 
figuring out which CRT controller the video hardware uses and where in the 
memory map it is. (I suspect the 6845 and/or 6847 just from the time period, 
but who knows? Gotta see what it actually do when trying to show the “IPL IN 
PROGRESS” string contained in the ROM, or one of the couple error strings…)

  — Chris

Reply via email to