A reference board for OS/1337 on i486 developent
Using old & used components to target i486
is not a viable option, and getting reproduceable setups this way is not a feasible option long-term, as parts dry up.
Targeting a modern i486 implementation makes it easy to test and debug issues.
This includes:
- Having as much modularity as possible for integration
- Utilizing commercial off-the-shelf parts and still new made ones wherever possible.
- Adapting old interfaces where doing so is a major quality-of-life improvement.
- USB instead of PS/2 (HIDman)
- Allow the use of new, COTS parts (Keyboard & Mice).
- For maximum compatibility a "stupid" set like the Logitech MK120 [K120 Keyboard + M100 Mouse] would be fine.
- Allow the use of new, COTS parts (Keyboard & Mice).
- SATA instead of IDE (with JM20330 Host Bridge Chip[s] as they seem to be the most reliable and stable).
- Alternatively JMH330 (IDE Master) + JMH330S (IDE Slave) for PATA -> SATA conversion.
- Allow the use of new SSDs and ODDs and avoid expensive / low production number parts like some IDE-Disk-on-Modules.
- USB instead of PS/2 (HIDman)
- Avoiding EoL & discontinued parts as much as possible!
- Enshuring long-term availability (and reproduceability!)
- Adapting old interfaces where doing so is a major quality-of-life improvement.
To allow access to older media, like Floppy Disks and legacy drives, a system that can interface with said controllers is necessary.
- PCI -> ISA is finnicky and doesn't work with low-level tools running on FreeDOS, OS/2 and MS-DOS.
- Basically all ISA Bridge Chips seem to require some driver to be loaded at the host OS.
- LPC -> ISA support is very dependent on the Mainboard used and already on it's way out.
Having actual expansion is the core benefit of using this over SBC-like setups that work great as applianced solutions but don't provide much in terms of development.
- ISA & PCI are the go-to internal expansion ports
- 2x RS-232 (DB-9) & 1x IEEE-1284 (Parallel) are the most used ones.
Using older ISAs should not preclude modern interfaces and quality of life additions. This includes:
- USB 2.0
- SBC integrated controller
- Optional: external controllers (PCI/ISA)
- Ethernet
- SBC integrated controller
- Optional external controllers (PCI/ISA)
- modern storage options
- (micro)SD
- Very convenient when it comes to small amounts of data.
- Works fine in Low-IOPS / Low write cycle setups.
- SATA
- 2 Ports (from a single IDE Port, to allow both an ODD and SSD to be connected to it. 2x JM20330 chips or JMH330 + JMH330S)
- (micro)SD
Said interfaces should be provided by the used SoM/SoC per it's own pin headers and merely "fanned out" with breakout cables.
- The mainboard itself doesn't carry them as to save costs.
- OFC one can add them via PCI and/or ISA cards but that would tie up bandwith for these slots.
Having means to interface to legagy hardware using ISA (and PCI) is the whole point of the design.
- If legacy interfaces weren't required, there would be no need for hardware, and everything could be done in QEMU.
- More modern Interfaces like PCIe can be attained using PCI->PCIe chips like the PEX 8112 which can be bought on off-the-shelf adaptor cards that are ready to use.
Aiming to be a a flexible and useful board for said use-cases.
- Aiming at Mini-DTX (but could be expanded to Micro-ATX and ATX)...
- Allowing for both a useable ISA & PCI slot each.
- ISA for legacy devices like FDD controllers.
- PCI for additional medium speed devices.
- No need to to decide for either/or.
- Can be expanded to ATX with a passive backplane & extension cable is desired.
- Allowing for both a useable ISA & PCI slot each.
Besides the main goal [being the hardware devkit for OS/1337], this board can also be used for various other use cases.
- Low-Cost Legacy Computing Basis
- For those that need more power than a NuXT can provide.
- Bridge System
- Retro Gaming
- Industrial Systems
Several projects and products deserve some recognition here.
These are listed here
- Andy "rasteri" for the Wee86 & WeeCee project as well as HIDman Adaptor for PS/2
- Ian "polpo" Scott for the PicoGUS
- Sergey Kiselev for his extremely helpful work and designs for old 8/16-bit, ISA-based systems.