MattisLind
Veteran Member
I built an extended M847 designed by Roland and tried it on my pdp-8/a. But I couldn't get it to work. It would deposit into memory, but load address didn't work for some reason.
So I attached my logic analyzer and read schematics and manuals. After a day of head scratching and reading manuals and schematics I recognised that something was wrong with the signal BRK DATA.
From a sequence diagram in the schematic I got that this line has to be high when loading the address. But I saw a low signal. I made a quick change in the design to make the BRK DATA controlled directly by the micro-controller. Then I could load address as expected!
A simple cut of the signal between U7 and U8 before it reaches pin 2 of U8 and then a wire from pin 1 of U7 to pin 16 of U1.
Then I also had to fix the wires that was cut by the ejector holes that my board had.
While debugging the board I made a quick and dirty tool I called PDP8CONSOLE. Unfortunately there is no support in the hardware to read back data from the memory so examine is not possible. It can probably be fixed by additional chips to gate them to the MCP23017 chip.
I also made a small fix to the original program that Roland designed so that it would work with the patch wire change I did. Now I could load all sorts of programs!
Here is a link to my fork of of the design by Roland: https://github.com/MattisLind/M847-extended-version-V1.1. I will probably continue working a bit to add support for storing bigger and more programs in the onboard 1024 kbit EEPROM memory. It should be possible to have almost all pdp-8 diagnostics in there!
Thanks Roland for this project!
So I attached my logic analyzer and read schematics and manuals. After a day of head scratching and reading manuals and schematics I recognised that something was wrong with the signal BRK DATA.
From a sequence diagram in the schematic I got that this line has to be high when loading the address. But I saw a low signal. I made a quick change in the design to make the BRK DATA controlled directly by the micro-controller. Then I could load address as expected!
A simple cut of the signal between U7 and U8 before it reaches pin 2 of U8 and then a wire from pin 1 of U7 to pin 16 of U1.
Then I also had to fix the wires that was cut by the ejector holes that my board had.
While debugging the board I made a quick and dirty tool I called PDP8CONSOLE. Unfortunately there is no support in the hardware to read back data from the memory so examine is not possible. It can probably be fixed by additional chips to gate them to the MCP23017 chip.
I also made a small fix to the original program that Roland designed so that it would work with the patch wire change I did. Now I could load all sorts of programs!
Here is a link to my fork of of the design by Roland: https://github.com/MattisLind/M847-extended-version-V1.1. I will probably continue working a bit to add support for storing bigger and more programs in the onboard 1024 kbit EEPROM memory. It should be possible to have almost all pdp-8 diagnostics in there!
Thanks Roland for this project!