per
Veteran Member
Most 286 Expansion cards works by controlling the system through a cable connected to the 8088 socket. This sollution is easy but the card can usually only use the < 640Kb of system memory, and the user have to move the processor (something that's rather inconvenient for most people not used to open their computer at all).
There is a few cards that works in another way. Instead of doing it simple by replacing the CPU, they kind-of makes the host computer a dual-processor-system. Those cards got it's own RAM (EMS paged for the host computer), and communicates with the system in a turn-based manner (I think). Those cards just plugs into an empty slot, and the user only have to run a small program (driver) to activate it.
I have not done any dissassembly of the driver of the card I got, but I see only one way how it may work. When the driver is run, it loads a copy of the system onto the card's RAM, takes controll of the Non-maskable interrupt and signals the card to start the 286 processor rigth before halting the 8088 with a "HLT" instruction. When the program needs to do anything with the host system (interrupts/IO/etc...), it generates a NMI and waits for the 8088 to return controll.
Does this sounds rigth, or should I really try to dissassemble the driver?
There is a few cards that works in another way. Instead of doing it simple by replacing the CPU, they kind-of makes the host computer a dual-processor-system. Those cards got it's own RAM (EMS paged for the host computer), and communicates with the system in a turn-based manner (I think). Those cards just plugs into an empty slot, and the user only have to run a small program (driver) to activate it.
I have not done any dissassembly of the driver of the card I got, but I see only one way how it may work. When the driver is run, it loads a copy of the system onto the card's RAM, takes controll of the Non-maskable interrupt and signals the card to start the 286 processor rigth before halting the 8088 with a "HLT" instruction. When the program needs to do anything with the host system (interrupts/IO/etc...), it generates a NMI and waits for the 8088 to return controll.
Does this sounds rigth, or should I really try to dissassemble the driver?