It would have to be a really big mod as you'd have to add at least 4 hex or octal flipflop chips to hold page addresses and a demux; likely +6-7 chips in total. Not a whole lot of logic, but more than a few cuts and bodge wires.

This article shows it is possile though. I would think it might be easieer to add this to the jrIDE or create another sidecar than to modify a sidecar though. While not used a lot, EMS on a jr would be awesome.

Enhanced PCjr with a jr-IDE (1GB DOM) and a parallel port side car with a compact flash reader and backpack 1.44mb floppy attached. Tandy video mod.

KenG wrote:This article shows it is possile though. I would think it might be easieer to add this to the jrIDE or create another sidecar than to modify a sidecar though. While not used a lot, EMS on a jr would be awesome.

The big problem with EMS on the Jr is the LIM 3.2 spec requires a 64KB contiguous window with a base address aligned to a 16KB boundary. The motherboard gates off the memory strobes for the D and E segments because they are supposed to be for cartridges. So the only thing left is the C segment as you're up against the CGA window at B8000-BFFFF and 736KB of conventional below it. With the card mods in that article, I'm sure he put the EMS window entirely in the C segment. Not possible if you want a option ROM BIOS like the JR-IDE has to also show up there.

JR-IDE already allows for UMB fill-in for the Cxxxx segment not in-use by other option BIOS ROMs. There just isn't software support yet (volunteers - hint hint!). There is also support for UMB fill for the D and E segments but you have to modify a masked ROM on the motherboard to allow the strobes to pass to the side-car connector. That's up to 176 KB of UMB that could be used with Rev.A & B cards.

I do have some minor modifications saved for a Rev.C board that would allow any part of the RAM not being used for memory fill to instead be mapped into the C segment like the existing extra flash (which also needs volunteers for software support!). It could be significant since the 0, 1, D, E, F, half of the B segment, and 1/4 of the C segment adds up to 368KB of inaccessible RAM on the card. A lot of waste, but I'm not sure that is enough to throw away the current boards. It would allow paging of any of that RAM, 16KB at a time, into the Cxxxx segment for access. There might be enough logic to do that for Exxxx, but it would still require the MB mod to fully support LIM 3.2.

The other big benefit the Rev.C change coupled with the MB mod would open up is potentially replacing 64KB of the lower 128KB with faster side-car RAM - which would also free up an additional +64KB of conventional DOS memory that JRCONFIG.SYS currently just throws away.

Maybe it would be possible to track down the IBM employee mentioned in the article to see if he is still living and remembers how he proposed adding EMS to the Jr all those years ago. He may be willing to enlighten the community further. I figure there are others here who are more familiar with the prominent figures of the Jr scene from then and now who might know where he is hiding.

alanh wrote:With the card mods in that article, I'm sure he put the EMS window entirely in the C segment. Not possible if you want a option ROM BIOS like the JR-IDE has to also show up there.

There is an alternative: Put the page frame at the top of low DOS RAM. You'd lose 64K of DOS RAM, but you'd gain EMS. However, this is not terribly useful or effective on 8088-class systems, as the amount of EMS-enabled software that can actually run on an 8088 can be counted on one hand.

The other big benefit the Rev.C change coupled with the MB mod would open up is potentially replacing 64KB of the lower 128KB with faster side-car RAM - which would also free up an additional +64KB of conventional DOS memory that JRCONFIG.SYS currently just throws away.

Oh, hey, there's your page frame :-)

This is really an academic exercise, though. The only 8088-compatible software that can actually utilize EMS 3.2 is essentially limited to this list:

Lotus 1-2-3Turbo Pascal 6.0 and 7.0 (the IDE can use up to 112K EMS)Geoworks EnsembleFractint

I have EMS set up with my PCE Megaboard but the driver is not Megaboard specific. The driver is designed to use hard drive space as EMS but also works with the Megaboard set up as a RAM drive. I have also used it with the DOM through the jrIDE. It is LIM 3.2. It works great with Lotus 123 but there is a performance hit.

I'll look for the driver files when I get back to work Monday in case any one is interested.

Last edited by James on Fri Apr 07, 2017 6:50 am, edited 1 time in total.