'ea' RTFM: revision, continue writing
parent
f354b8d112
commit
09b841611e
166
ea-RTFM.html
166
ea-RTFM.html
|
|
@ -4,11 +4,12 @@
|
||||||
<!-- perspective: Annie -->
|
<!-- perspective: Annie -->
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Annie rings the doorbell and waits. Nobody answers. She checks that
|
Annie arrives at a house with multiple ground-level entrances.
|
||||||
she's at the right door – yes, this is grandpa Karl's
|
She rings one of the doorbells and waits. Nobody answers. She checks
|
||||||
|
that it is the right door – yes, this is grandpa Karl's
|
||||||
apartment. She rings again. A window on <span class="comment">in?</span>
|
apartment. She rings again. A window on <span class="comment">in?</span>
|
||||||
one of the adjacent houses opens and she hears Isabelle quietly
|
one of the adjacent houses opens and she hears Isabelle quietly calling
|
||||||
calling her.<br />
|
her:<br />
|
||||||
<span class="quote speech">Annie, we're over here.</span><br />
|
<span class="quote speech">Annie, we're over here.</span><br />
|
||||||
She walks over.<br />
|
She walks over.<br />
|
||||||
<span class="quote speech">Which door?</span><br />
|
<span class="quote speech">Which door?</span><br />
|
||||||
|
|
@ -21,30 +22,149 @@
|
||||||
This place has been <span class="comment">vacant</span> forever, might
|
This place has been <span class="comment">vacant</span> forever, might
|
||||||
as well use it.</span><br />
|
as well use it.</span><br />
|
||||||
Annie slides her shoes off and leans her bag against the wall. Then,
|
Annie slides her shoes off and leans her bag against the wall. Then,
|
||||||
they go to the living room where cables and computer parts are all over
|
they go into the living room where cables and computer parts are all over
|
||||||
the floor. Lucas sits in front of the rack between two opened boxes.
|
the floor. Lucas sits in front of the rack between two opened boxes.
|
||||||
The rack's side panels had been removed, revealing the rails holding
|
The rack's side panels had been removed, revealing the devices
|
||||||
the various devices inside and their power cables. Lucas is pushing
|
mounted inside and the cables connecting them. Lucas is pushing a circuit
|
||||||
a circuit board into a half-assembled device that hangs out the front.
|
board into a half-assembled metal box that hangs out the front. Karl goes
|
||||||
Karl goes over to a stool next to the rack, carefully avoiding stepping
|
over to a stool next to the rack, carefully avoiding stepping on things,
|
||||||
on things, and sits down.
|
and sits down.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
Annie sits down next to Lucas and watches as he carefully inserts one
|
Annie sits down next to Lucas and watches as he carefully
|
||||||
board after the other. Karl is looking at the manual and tells him
|
<span class="comment">synonym for careful?</span> inserts another
|
||||||
to set some tiny switches on the front of some of them.<br />
|
board. Karl is reading from a binder of documentation and tells him to
|
||||||
Karl says: <span class="quote speech">Annie, can you hand me these four
|
set some tiny switches on its front edge.<br />
|
||||||
gray ribbon cables?</span><br />
|
While grabbing the next board, Lucas says:
|
||||||
She looks around, lots of different cables everywhere.<br />
|
<span class="quote speech">Annie, can you take these and prepare the DIP
|
||||||
<span class="quote speech">The wide, flat ones to your left.</span><br />
|
switches?</span><br />
|
||||||
He takes them and plugs them somewhere into the back of the rack.
|
He pushes the box over to her. It contains four circuit boards, all
|
||||||
|
identical.<br />
|
||||||
|
<span class="quote speech">Uhm, okay.</span>
|
||||||
|
She takes one of the boards out and looks at it. It's full of
|
||||||
|
electronic components on both sides and one of the edges holds a tiny red
|
||||||
|
box with an even tinier row of switches on it.<br />
|
||||||
|
<span class="comment">Above is a bad description. Need naive description
|
||||||
|
of DIP switches from someone who doesn't know.</span><br />
|
||||||
|
<span class="quote speech">So what do I set them to?</span><br />
|
||||||
|
Karl tells her a combination and she tries to push the switches up or
|
||||||
|
down as needed with her finger nails.<br />
|
||||||
|
Lucas says <span class="quote speech">Here, use this.</span> and hands
|
||||||
|
her a pen.<br />
|
||||||
|
Using it to flip the switches, she sets the combination Karl says, then
|
||||||
|
hands the board over to Lucas and grabs the next one.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
Isabelle grabs the terminal from a corner of the room and lifts it onto
|
Karl takes the racks's power cable and plugs it in. Isabelle gets
|
||||||
the rack. Meanwhile, Annie and Lucas start collecting the cables and
|
the terminal from a corner of the room and lifts it onto the rack.
|
||||||
loose parts from the floor. Karl plugs rack and terminal into power and
|
Meanwhile, Annie and Lucas start collecting the cables and loose parts
|
||||||
connects a cable between the terminal and one of the devices in the front
|
from the floor. Isabelle plugs the terminal into power and Karl connects
|
||||||
of the rack.
|
a cable between it and one of the devices in the front of the rack.
|
||||||
|
They all gather around and Karl powers it on. He follows the same
|
||||||
|
procedure that Annie and Isabelle performed in the library: Key switch
|
||||||
|
at the top of the rack to <span class="quote non-speech">RST</span>,
|
||||||
|
power up the hard drive, hold <span class="quote non-speech">LOAD</span>
|
||||||
|
and key switch to <span class="quote non-speech">RUN</span>. Then, he
|
||||||
|
pulls a floppy disk out of the documentation binder and inserts it into
|
||||||
|
the computer. He enters some commands, the drive clicks a few times, and
|
||||||
|
the terminal displays a menu.
|
||||||
</p>
|
</p>
|
||||||
|
<!--
|
||||||
|
Hardware in this machine:
|
||||||
|
- 1x HDD (platters: 1 removable, 3 fixed)
|
||||||
|
- 2x FDD
|
||||||
|
- 2x backplane (8 slots each)
|
||||||
|
- CPU (1 board)
|
||||||
|
- FPU (1 board) (removed, replaced with NC 2000)
|
||||||
|
- Number Cruncher 2000 (4 boards)
|
||||||
|
- HDDC (1 board)
|
||||||
|
- FDDC (1 board)
|
||||||
|
- MTDC (1 board)
|
||||||
|
- memory (8 boards)
|
||||||
|
- 1x PDU
|
||||||
|
- 1x MTD
|
||||||
|
|
||||||
|
16M = 16777216 => 0x00000000 to 0x00FFFFFF
|
||||||
|
64M = 67108864 => 0x00000000 to 0x03FFFFFF
|
||||||
|
128M = 134217728 => 0x00000000 to 0x07FFFFFF
|
||||||
|
|
||||||
|
-> 32-bit address bus
|
||||||
|
|
||||||
|
1 PC SIMM = ~1MiB
|
||||||
|
16 SIMMS = 1 memory board => 8 boards installed, 128M
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//TODO: realistic EPROM sizes?
|
||||||
|
ROMs:
|
||||||
|
32k platform code (bootrom)
|
||||||
|
8k FDDC
|
||||||
|
8k HDDC
|
||||||
|
8k MTDC
|
||||||
|
|
||||||
|
Registers:
|
||||||
|
- CPU: 32x 8 bit? - are these mapped into RAM?
|
||||||
|
- A (32-bit) / Split registers 2x16-bit, 4x8-bit
|
||||||
|
- B (32-bit) / Split registers 2x16-bit, 4x8-bit
|
||||||
|
- C (32-bit) / Split registers 2x16-bit, 4x8-bit
|
||||||
|
- D (32-bit) / Split registers 2x16-bit, 4x8-bit
|
||||||
|
- Address pointer (32-bit)
|
||||||
|
- Flags (32-bit)
|
||||||
|
- Interrupt Return Pointer (32-bit)
|
||||||
|
- software interrupt capabilities?
|
||||||
|
- context switching capabilities?
|
||||||
|
- timers?
|
||||||
|
- ?
|
||||||
|
- Number Cruncher 2000:
|
||||||
|
- Instruction Register (32-bit)
|
||||||
|
- Flags (32-bit)
|
||||||
|
- 32x 32-bit / 16x 64-bit general-purpose register
|
||||||
|
- DMA load pointer (32-bit)
|
||||||
|
|
||||||
|
-->
|
||||||
|
<pre class="terminal">
|
||||||
|
[ SYSTEM DIAGNOSTICS v3.15 ]
|
||||||
|
----------------------------
|
||||||
|
|
||||||
|
1. Quick Test
|
||||||
|
2. Run All Tests
|
||||||
|
3. CPU Test
|
||||||
|
4. Memory Test
|
||||||
|
5. FPU Test
|
||||||
|
6. DMA Test
|
||||||
|
7. Serial Test
|
||||||
|
8. FDD Test
|
||||||
|
9. HDD Test
|
||||||
|
10. MTD Test
|
||||||
|
11. Load Module...
|
||||||
|
|
||||||
|
Choice: █
|
||||||
|
</pre>
|
||||||
|
<p>
|
||||||
|
Lucas asks:
|
||||||
|
<span class="quote speech">Odds of this working first try?</span><br />
|
||||||
|
Karl says: <span class="quote speech">We will see...</span><br />
|
||||||
|
He types a number and presses enter.
|
||||||
|
</p>
|
||||||
|
<pre class="terminal">
|
||||||
|
Choice: 2
|
||||||
|
|
||||||
|
Initializing...
|
||||||
|
Loading CPU Test...
|
||||||
|
Registers: Pass Branching: Pass
|
||||||
|
ALU: Pass Long Words: Pass
|
||||||
|
All Instrct:Pass Stress Test:Pass
|
||||||
|
Result: PASSED
|
||||||
|
Loading Memory Test...
|
||||||
|
Memory map:
|
||||||
|
00000000-
|
||||||
|
Result: FAIL
|
||||||
|
Loading FPU Test...
|
||||||
|
NC2K OpROM init
|
||||||
|
FP Arithmetic Test
|
||||||
|
SIMD Test
|
||||||
|
<!-- TODO: what kinda tests does this thing do? -->
|
||||||
|
Result: FAIL <!-- because memory error -->
|
||||||
|
</pre>
|
||||||
|
|
||||||
<p class="copyright">Copyright © 2023-2025 Jan Danielzick (aka. BodgeMaster) – All rights reserved.</p><script>let spans = ["<span class=\"paper green\">", "<span>"]; let pre_texts = document.getElementsByTagName("pre"); for (let i = 0; i < pre_texts.length; i++) {if (pre_texts[i].className != "paper") continue; let lines = pre_texts[i].innerHTML.split("\n"); let result = ""; for (let j = 0; j < lines.length; j++) {if (lines[j].length >= 80) result = result + spans[j%2] + lines[j] + "</span>\n"; else result = result + spans[j%2] + lines[j] + " ".repeat(80-lines[j].length) + "</span>\n";} pre_texts[i].innerHTML = result;}</script></body></html>
|
<p class="copyright">Copyright © 2023-2025 Jan Danielzick (aka. BodgeMaster) – All rights reserved.</p><script>let spans = ["<span class=\"paper green\">", "<span>"]; let pre_texts = document.getElementsByTagName("pre"); for (let i = 0; i < pre_texts.length; i++) {if (pre_texts[i].className != "paper") continue; let lines = pre_texts[i].innerHTML.split("\n"); let result = ""; for (let j = 0; j < lines.length; j++) {if (lines[j].length >= 80) result = result + spans[j%2] + lines[j] + "</span>\n"; else result = result + spans[j%2] + lines[j] + " ".repeat(80-lines[j].length) + "</span>\n";} pre_texts[i].innerHTML = result;}</script></body></html>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue