mirror of
https://github.com/hsoft/collapseos.git
synced 2024-11-01 18:10:56 +11:00
7001446212
Recipes contain bits and pieces of hardware-related knowledge, but these bits feel sparse. I've been wanting to consolidate hardware- related documentation for a while, but always fell at odds with the recipes organisation. We don't have recipes anymore, just a /doc/hw section that contains hardware-related documentation which often translate to precise instructions to run Collapse OS on a specific machine. With this new organisation, I hope to end up with a better, more solid documentation.
66 lines
2.5 KiB
Plaintext
66 lines
2.5 KiB
Plaintext
# Running Collapse OS on real hardware
|
|
|
|
Collapse OS is designed to run on ad-hoc post-collapse hardware
|
|
build from scavenged parts. These machines don't exist yet.
|
|
|
|
To make Collapse OS as likely as possible to be useful in a
|
|
post-collapse world, we try to give as many examples as possible
|
|
of deployment on hacked-up hardware.
|
|
|
|
For example, we include a recipe for running a Sega Master
|
|
System with a PS/2 keyboard plugged to a hacked up controller
|
|
cord with an AVR MCU interfacing between the PS/2 connector and
|
|
the controller port.
|
|
|
|
This setup, for which drivers are included in Collapse OS, exist
|
|
in only one copy, the copy the author of the recipe made.
|
|
|
|
However, the idea is that this recipe, which contains schematics
|
|
and precise instructions, could help a post-collapse engineer
|
|
to hack her way around and achieve something similar. She would
|
|
then have a good example of schematics and drivers that are
|
|
known to work.
|
|
|
|
# Organisation of this folder
|
|
|
|
While /doc's top folder contain documentation about software,
|
|
this folder contains instructions and schematics about ways to
|
|
get Collapse OS running on actual hardware.
|
|
|
|
Each CPU architecture has its own subfolder with recipes about
|
|
specific machines of that arch, while /doc/hw's top folder
|
|
contain instructions on broader topics, such as SD cards,
|
|
floppies, EEPROM, etc.
|
|
|
|
Most instructions have companion code in /arch that is conve-
|
|
niently wrapped in Makefiles for easy building.
|
|
|
|
# How to use
|
|
|
|
If you want to run Collape OS on real hardware, browse this
|
|
folder's contents until you find something that closely matches
|
|
your own hardware (or hardware-to-be).
|
|
|
|
If you live in a pre-collapse world and are looking for an easy
|
|
platform to try Collapse OS on, easy pickings are PC/AT (which
|
|
run on modern PCs supporting legacy BIOS), Sega Genesis w/
|
|
Everdrive and TI-84+. Those options don't require any soldering.
|
|
|
|
# Drivers
|
|
|
|
Most instructions in this subfolder tell you to add drivers to
|
|
your Collapse OS. What is meant by this is that you need to
|
|
rebuild your binary with an augmented xcomp unit. See
|
|
doc/bootstrap.txt for details, but the short version is:
|
|
|
|
When instructions tell you to declare constant XXX, then load
|
|
drivers from block BYYY and then add word ZZZ to the initial-
|
|
ization string, what is meant is that:
|
|
|
|
1. At the top of your xcomp unit, add constant XXX next to other
|
|
declarations.
|
|
2. Between "xcomp core low" and "xcomp core high" loading,
|
|
insert the loading of BYYY. Order may matter.
|
|
3. At the end, in the ,"" string just before EOT, insert the
|
|
ZZZ word. Order may matter.
|