Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/folkertvanheusden/kek
PDP-11/70 emulator
https://github.com/folkertvanheusden/kek
esp32 pdp-11 posix
Last synced: 3 months ago
JSON representation
PDP-11/70 emulator
- Host: GitHub
- URL: https://github.com/folkertvanheusden/kek
- Owner: folkertvanheusden
- License: mit
- Created: 2022-03-19T13:52:10.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-06-26T18:58:41.000Z (8 months ago)
- Last Synced: 2024-06-26T23:26:19.495Z (8 months ago)
- Topics: esp32, pdp-11, posix
- Language: C++
- Homepage: https://vanheusden.com/emulation/PDP-11/kek/
- Size: 10.9 MB
- Stars: 6
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
KEK
---
Kek is a DEC PDP-11 (11/70) emulator capable of running UNIX-v7.You need to retrieve the git repository with the --recursive switch for the git command:
git clone --recursive https://github.com/folkertvanheusden/kek
To build for e.g. linux:
mkdir build
cd build
cmake ..
makeRequired:
* libncursesw5-devTo build for e.g. windows:
mkdir build-win32
cd build-win32
cmake -DCMAKE_TOOLCHAIN_FILE=../mingw64.cmake ..
makeTo run an RK05 disk image:
./kek -r filename.rk -R rk05 -b 2> /dev/null
To run an RL02 disk image:
./kek -r filename.rk -R rl02 -b 2> /dev/null
To run an RP06 disk image:
./kek -r filename.rk -R rp06 -b 2> /dev/null
To run a tape image:
./kek -T filename.bin -b 2> /dev/null
When you run UNIX 7, you can (if your system has enough RAM - use an ESP32 with 2 MB PSRAM or more) run multi-user via the DC-11 emulation.
Note that UNIX 7 starts in single user mode first; press ctrl+d to switch to multi user (recognizable by the login-prompt).
Also make sure to configure networking ('startnet') to be able to connect (using telnet) to the DC-11 ports (TCP port 1101 upto and including 1104).ESP32
-----
The ESP32 version needs platformio to be build.cd ESP32
pio run -t upload
pio run -t uploadfsThat should build & upload it to a connected ESP32.
Wiring of SDCARD (or use disk-images exported via NBD over wifi using nbdkit (because of older NBD protocol implementation)):
* MISO: 19
* MOSI: 23
* SCK : 18
* SS : 5
* and of course connect VCC/GND of the SD-cardHeart beat LED:
* pin 25Wiring of the MAX232 connection:
* TX : 17
* RX : 16
Note that you need to use different pins for the MAX232 connection when you want to use the PSRAM of the ESP32.Raspberry PI PICO / RP2040
--------------------------
Wiring of SDCARD:
* MISO: 16
* MOSI: 19
* SCK : 18
* SS : 17
* and of course connect VCC/GND of the SD-cardThe RP2040 version needs platformio to be build.
cd RP2040
pio runThen copy RP2040/.pio/build/BUILD\_FOR\_RP2040/firmware.uf2 to the PICO.
SHA2017-badge
-------------
This procedure will remove the default micropython environment.
Maybe you can undo that, but I have not tried that.* esptool.py erase\_flash
* pio run -e SHA2017-badge
* esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 --before default\_reset --after hard\_reset write\_flash -z --flash\_mode dio --flash\_freq 80m --flash\_size detect 0x1000 ./.pio/build/ESP32-wemos/bootloader.bin
* pio run -e SHA2017-badge -t upload
After this, you can connect a serial terminal to /dev/ttyUSB0 at 115k2 bps.
more info
---------For more info: https://vanheusden.com/emulation/PDP-11/kek/
thanks
------Thanks a lot to Neil Webber for his help and for his python PDP emulator (which allowed me to compare disassembly of runs).
Neil's emulator can be found at https://github.com/outofmbufs/python-pdp11-emulatorKek is released under MIT license.
Folkert van Heusden