Discussion:
how do these system boot?!
(too old to reply)
Folkert van Heusden
2018-09-25 11:26:58 UTC
Permalink
I'm writing my own PDP-11 emulator but I have no idea how to boot the thing :-)
I can toggle in of course the bootloader which then loads the first block from tape, but then what?
I mean the last instruction of the bootstrappers I found is "HALT" or 005007 which I think is clear the low byte of register 7 effectively a jump to 01000 making it restart the bootstrapper?!
I tried with both a disk image from http://unix-jun72.googlecode.com/files/images-20080625.tgz (using an emulated SK05) and https://homepages.thm.de/~hg53/pdp11-unix/unix-v7-1.tar.gz (via TM-11 emulation) using the bootstrappers from http://www.psych.usyd.edu.au/pdp-11/bootstraps.html
p***@heeb-schranz.ch
2018-09-26 18:58:45 UTC
Permalink
Post by Folkert van Heusden
I'm writing my own PDP-11 emulator but I have no idea how to boot the thing :-)
I can toggle in of course the bootloader which then loads the first block from tape, but then what?
I mean the last instruction of the bootstrappers I found is "HALT" or 005007 which I think is clear the low byte of register 7 effectively a jump to 01000 making it restart the bootstrapper?!
I tried with both a disk image from http://unix-jun72.googlecode.com/files/images-20080625.tgz (using an emulated SK05) and https://homepages.thm.de/~hg53/pdp11-unix/unix-v7-1.tar.gz (via TM-11 emulation) using the bootstrappers from http://www.psych.usyd.edu.au/pdp-11/bootstraps.html
005007 is CLR PC (the whole word) and is the single word equivalent to jump to absolute address 0. A bootstrap loader may have a HALT as the last instruction, but that is the error handler, you will probably always find a 005007 somehwere in every bootloader.

Typically the bootloader is either toggled in at address 001000, 002000 or you have some sort of ROM typically at address 173000 and the only thing a boot loader does is loading the first block(s) from the boot device to absolute address 0 and once the data has been read it jumps to absolute address 0. The further boot process now depends completely on the data loaded from the boot device. So in other words you need a disk or tape image of a bootable OS.
Peter
Folkert van Heusden
2018-10-03 11:49:52 UTC
Permalink
Peter,

Thanks!
Got it to work!
( https://github.com/flok99/KEK )
pdr0663
2020-09-16 00:17:18 UTC
Permalink
Peter,

I have built two of your RLV-12 V2.0 systems, and I have some questions for you.

1) How are the SD cards formatted?
2) The serial ports on the breakout board, can they be used as PDP-11 serial ports, or are they peculiar to board communication? How are they configured / used.

My interest is in Unix V6. Would I expect to plug and play, that is, up to 4x RL-02 drives available and three additional serial ports available upon boot?

Paul
Peter Schranz
2020-09-16 19:42:27 UTC
Permalink
Hi Paul

Nice to hear someone else is building RLV-12 Emulator. The SD-Cards are formatted with MBR and multiple partitions if you want to automatically attach disk drives.
Or you can use a FAT-32 formatted SD-Card and copy Disk-Images that have the exact size of a RL-02 or RL-01

Unfortunately I forgot to add a link to the chapters that deal with this in the description of the RLV-12 V2.0 Emulator, here is a link to the page in the RLV-12 V1.0
emulator that explains the SD-Card formatting and the communication over the serial port.

https://www.5volts.ch/pages/rlv12/rlv12-createdisk/

And there is even more information about the communication with the RLV-12 Emulator over the serial link.

The same information is valid for the V2.0 emulator, the interface did not change, only the hardware has been enhanced.

Even so the breakout port has 2 serial ports the RLV-12 Emulator only uses the first and it is purely used to communicate with the MCU Firmware, the Emulator
does not emulate any serial port for the PDP-11, so you need to have additional serial line cards.

Peter

Loading...