PDP-10 / its

Incompatible Timesharing System
Other
858 stars 83 forks source link

Running ITS in the KA10 SIMH #445

Closed larsbrinkhoff closed 6 years ago

larsbrinkhoff commented 7 years ago

I suggest we move the discussion from #376 and #440 to here.

https://github.com/rcornwell/sims

larsbrinkhoff commented 7 years ago

CC @rcornwell.

larsbrinkhoff commented 7 years ago

The plan of attack would be something like:

  1. Use MAGDMP and MAGFRM to get a file system on magtape. Try to run a few standalone programs.
  2. Try to build the old SALV to make a file structure on a disk. Expect to debug the disk emulation and/or controller code.
  3. Build KA version of DSKDMP and exec DDT to be able to load and run a monitor.
  4. Build a KA monitor.
  5. Profit!
rcornwell commented 7 years ago

Sounds like a good plan of attack. If you find bugs in my simulator post an issue on my sim. If I have time tonight I will try and fix the bug I introduced last night adding TLB and starting to add ITS pager support. Otherwise it will probably have to wait until the weekend. Biggest problem I can see is getting all the patches to support the 1 proceed and other ITS specific changes to the KA. The paging is not much different then than the KI paging.

larsbrinkhoff commented 7 years ago

This is a good read:
https://github.com/larsbrinkhoff/its-archives/blob/master/ailab/AI_WP_227.pdf

Thank you @cstacy.

larsbrinkhoff commented 7 years ago

I ran MAGFRM and created a tape with a MAGDMP on it. ka10 attempts to boot from it, but the hardware readin deposits the loader in memory locations 0-17. This doesn't work, because the KA10 fetches instructions from the ACs.

larsbrinkhoff commented 7 years ago

I tried to fix this in two ways:

The result was the same: the loader starts running, but loops endlessly waiting for CONSO 344,1 to signal that the TM10 is ready to go.

larsbrinkhoff commented 7 years ago

@rcornwell I believe there's a bug in the implementation of CONSO.

dev_tab[d](CONI|(d<<2), &AR);

CONSI should probably be CONSO, right?

rcornwell commented 7 years ago

I don't believe there is any bug in CONSO. The TMA controller passes Dec diags, except for some parity issues which can't be simulated on the sim. I will re-test it this weekend.

dev_tab[d](CONI|(d<<2), &AR);

this is correct, CONSZ and CONSO are both CONI as far as the hardware is concerned. Both do a mask of the CONI word, CONSZ skips if all bits are zero, CONSO skips if any bits are one.

The PDP10 hardware only implements DATAI, DATAO, CONI, CONO.

Please enable MT debugging I suggest (CONI;CONO;DATAIO;CMD;DETAIL) and see what that shows. CONSO 344,1 is checking for a data request. Perhaps the boot chunk is not in it's own record. If this is the case, I will have to make changes to the sim to support it.

larsbrinkhoff commented 7 years ago

Oh, you're right. I'm a bit rusty on the I/O instructions.

larsbrinkhoff commented 7 years ago

How to prepare programs for running a KA ITS. We're using the ML machine, because the AI disk controller isn't supported by @rcornwell's KA emulator.

MAGDMP is a standalone program on paper tape to read from a specially formatted tape. MAGFRM is a tool to format such a magtape. Boot off the paper tape, then start other programs from the magtape.

larsbrinkhoff commented 6 years ago

For more MAGDMP commands, check SYSENG; MAGDMP 28.

larsbrinkhoff commented 6 years ago

@rcornwell I will try to add information here about how to build KA10 standalone programs, paper tapes, magtape images, operating instructions, etc.

larsbrinkhoff commented 6 years ago
larsbrinkhoff commented 6 years ago

@jeffpar
The tape images mentioned in this issue may also be useful to you for testing your JavaScript KA10 simulator.

larsbrinkhoff commented 6 years ago

Fixes needed so far:

larsbrinkhoff commented 6 years ago

Update. KA ITS is now running! Albeit limpingly in some areas.

larsbrinkhoff commented 6 years ago

Installation goes like this:

Start ITS using the DSKDMP paper tape.

eswenson1 commented 6 years ago

Any networking support?

larsbrinkhoff commented 6 years ago

No. For now, I think there's just the console, paper tape, magtape, and RP03 disk.

Wanted:

larsbrinkhoff commented 6 years ago

Optional:

Very very optional (I don't even know what all of these are):

larsbrinkhoff commented 6 years ago

ITS does boot and work reasonably well. Some things are not working yet, but there should be specific issues for those problems.