Previous Thread
Next Thread
Print Thread
Joined: Aug 2015
Posts: 406
Edstrom Offline OP
Senior Member
OP Offline
Senior Member
Joined: Aug 2015
Posts: 406
Has anyone given this subject some thoughts? I've just read the report by two guys that made a core memory shield for Arduino:

http://www.corememoryshield.com/index.html

I wonder if the software on the PDP8:s etc had so close knowledge about how the core memory worked and that the process of reading of writing was done partly by software? Or was it fully abstracted by hardware and just mapped into memory so there is no need to emulate this level at all?


Because I can
Joined: May 2009
Posts: 2,208
Likes: 354
J
Very Senior Member
Offline
Very Senior Member
J
Joined: May 2009
Posts: 2,208
Likes: 354
It was fully abstracted by hardware, so no need to emulate at that level.

As for the PDP-8, the current CPU core is just a shell with nothing implemented. I've back-burnered it for the time being as there are some interesting issues associated with emulating it that I've yet to work through - namely, the modular nature of the IOB instruction.

The different peripherals for the PDP-8 actually added their own opcodes that handled certain bit configurations of the overall IOB instruction. Given the fact that ideally, these peripherals would be implemented as slot devices, it raises the question of how I would go about implementing support for them in the disassembler.

Joined: Aug 2015
Posts: 406
Edstrom Offline OP
Senior Member
OP Offline
Senior Member
Joined: Aug 2015
Posts: 406
Hehe, I just love those oldies and how they innovated things. I believe that the 8087 FPU is doing something similar, interpreting unknown opcodes outside the CPU.

There are also a bunch of descrete CPU:s that would be interesting to think about, like the Ericsson AXE switchboard CPU for instance, for which the disassembler might be a challange because new opcodes were probably added between revisions of the board (thats is just my guess): http://ericssonhistory.com/Global/E...20V.61/Ericsson_Review_Vol_61_1984_4.pdf


Because I can
Joined: Mar 2001
Posts: 17,179
Likes: 211
R
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 17,179
Likes: 211
JD: I'd suggest IOB execution and disassembly callbacks from the CPU core that the driver would hook directly up to the bus, and the bus would pass it through the relevant device(s) depending on what's plugged in. (Do bits in the instruction address specific device(s), or is the opcode just passed on the bus in the hopes that something claims it?)

Joined: Feb 2008
Posts: 326
M
Senior Member
Offline
Senior Member
M
Joined: Feb 2008
Posts: 326
Existing driver for PDP1 is actually have same type of handling IOB, so maybe a good approach would be updating PDP1 first to use that mechanism.

Joined: Sep 2004
Posts: 392
Likes: 4
A
Senior Member
Offline
Senior Member
A
Joined: Sep 2004
Posts: 392
Likes: 4
Originally Posted by R. Belmont
JD: I'd suggest IOB execution and disassembly callbacks from the CPU core that the driver would hook directly up to the bus, and the bus would pass it through the relevant device(s) depending on what's plugged in. (Do bits in the instruction address specific device(s), or is the opcode just passed on the bus in the hopes that something claims it?)
I'd recommend even going a step further and create a device interface class a la the Z80 daisy chain. The interface class can have methods for the disassembler and execution, and all IOB devices can derive from it.


Link Copied to Clipboard
Who's Online Now
0 members (), 455 guests, and 0 robots.
Key: Admin, Global Mod, Mod
ShoutChat
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics9,308
Posts121,678
Members5,069
Most Online1,283
Dec 21st, 2022
Our Sponsor
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!

Superior Solitaire
Forum hosted by www.retrogamesformac.com