Unlike my floppy drive box, only a single goat has pissed on my PCjr box
-
If you're not familiar with the whole Computer Reset saga, check out LGR's videos:
https://www.youtube.com/watch?v=rvM82T3C2Ik
https://www.youtube.com/watch?v=K-ZZkZk9QRkBasically, a large warehouse full of 80's vintage hardware was discovered after the owner passed away and the family reached out for help.
Among the items were hundreds of PCjr related items, most still new in sealed boxes. These items have since flooded the secondary market.
-
Among the items were hundreds of PCjr related items, most still new in sealed boxes. These items have since flooded the secondary market.
Due to the scale of the clean-out, not everyone who arrived at the warehouse had purely charitable motives, and so you'll find people hawking NIB PCjr joysticks for way more than they should go for, because they walked out of the warehouse after paying pennies on the dollar for them.
(Note: LGR is not at fault in any way, and most of the people that showed up to help I'm sure had good intentions)
-
Due to the scale of the clean-out, not everyone who arrived at the warehouse had purely charitable motives, and so you'll find people hawking NIB PCjr joysticks for way more than they should go for, because they walked out of the warehouse after paying pennies on the dollar for them.
(Note: LGR is not at fault in any way, and most of the people that showed up to help I'm sure had good intentions)
If you're selling NIB PCjr CGA cables for $90 however, you need to be proverbially kicked in your D port.
-
@petrillic All the PCjr IO is two big berg strips with some plastic spacers that key the connections one way. Remeber they were trying to make it as cheap as possible to manufacture.
Secret shame: back in the 80's I bought the PCjr thermal printer because it was cheap and I thought I could interface it to my Tandy CoCo3. Never could get it to work, eventually trashed the printer.
I've thought about getting another one and trying again (I have much better understanding of the CoCo's quirks) but those printers did not age well.
But yes. That connector. Grr.

-
The worst part of packing up to leave your hotel room is always putting your PCjr back together
Now that I'm home I can take my PCjr's pants off and show you even more.
This is the PCjr sidecar connector. Lacking ISA slots, you attached modules called Sidecars to the side of your peanut after removing a plastic cover.
Each sidecar gave you a new sidecar connector on the opposite side, allowing you to make a ridiculously wide PCjr by adding lots of Sidecars.

-
Now that I'm home I can take my PCjr's pants off and show you even more.
This is the PCjr sidecar connector. Lacking ISA slots, you attached modules called Sidecars to the side of your peanut after removing a plastic cover.
Each sidecar gave you a new sidecar connector on the opposite side, allowing you to make a ridiculously wide PCjr by adding lots of Sidecars.

Eventually you might stress out the PCjr's tiny little power supply by adding too many sidecars!
What to do?
Why, add a power attachment sidecar, to inject more juice into the middle of your sloppy sidecar sandwich!
-
Eventually you might stress out the PCjr's tiny little power supply by adding too many sidecars!
What to do?
Why, add a power attachment sidecar, to inject more juice into the middle of your sloppy sidecar sandwich!
Here are some of the sidecars available:
Cluster Adapter - this was a pre-ethernet networking standard that could connect up to 64 computers on a coaxial cable.
Parallel Port - you want to print? Some printers were serial, but parallel printers became somewhat ubiquitous over time.
Speech Attachment - you remember Dr Sbaitso, that creepy voice thing that came with your Soundblaster drivers? Did you love that? Well, do I have the sidecar for you. If you can afford it.
Memory Sidecars - several kinds of these were available - IBM had some, but companies like Racore and even Microsoft made them. Usually the expansion RAM was faster than the onboard PCjr RAM, so these were pretty essential upgrades.
-
Here are some of the sidecars available:
Cluster Adapter - this was a pre-ethernet networking standard that could connect up to 64 computers on a coaxial cable.
Parallel Port - you want to print? Some printers were serial, but parallel printers became somewhat ubiquitous over time.
Speech Attachment - you remember Dr Sbaitso, that creepy voice thing that came with your Soundblaster drivers? Did you love that? Well, do I have the sidecar for you. If you can afford it.
Memory Sidecars - several kinds of these were available - IBM had some, but companies like Racore and even Microsoft made them. Usually the expansion RAM was faster than the onboard PCjr RAM, so these were pretty essential upgrades.
@gloriouscow wait... cluster adapter?
-
Here are some of the sidecars available:
Cluster Adapter - this was a pre-ethernet networking standard that could connect up to 64 computers on a coaxial cable.
Parallel Port - you want to print? Some printers were serial, but parallel printers became somewhat ubiquitous over time.
Speech Attachment - you remember Dr Sbaitso, that creepy voice thing that came with your Soundblaster drivers? Did you love that? Well, do I have the sidecar for you. If you can afford it.
Memory Sidecars - several kinds of these were available - IBM had some, but companies like Racore and even Microsoft made them. Usually the expansion RAM was faster than the onboard PCjr RAM, so these were pretty essential upgrades.
@gloriouscow The key with memory sidecars wasn't that the RAM itself was fast, it was the fact that the RAM wasn't shared with the video adapter, so it could run at equivalent speed to a normal XT.
Once I got my memory sidecar, I immediately wrote a TSR that ate up all the shared video RAM so that everything else I ran went at full speed. Made a huge difference!
-
@gloriouscow wait... cluster adapter?
@petrillic Cluster Adapter!

-
@gloriouscow The key with memory sidecars wasn't that the RAM itself was fast, it was the fact that the RAM wasn't shared with the video adapter, so it could run at equivalent speed to a normal XT.
Once I got my memory sidecar, I immediately wrote a TSR that ate up all the shared video RAM so that everything else I ran went at full speed. Made a huge difference!
@aaronsgiles I will eventually delve into the horrors of PCjr wait states.
Today you can use JRCONFIG.SYS to relocate MS-DOS above the 128K boundary, but it is a bit odd as your system basically boots twice.
-
Here are some of the sidecars available:
Cluster Adapter - this was a pre-ethernet networking standard that could connect up to 64 computers on a coaxial cable.
Parallel Port - you want to print? Some printers were serial, but parallel printers became somewhat ubiquitous over time.
Speech Attachment - you remember Dr Sbaitso, that creepy voice thing that came with your Soundblaster drivers? Did you love that? Well, do I have the sidecar for you. If you can afford it.
Memory Sidecars - several kinds of these were available - IBM had some, but companies like Racore and even Microsoft made them. Usually the expansion RAM was faster than the onboard PCjr RAM, so these were pretty essential upgrades.
Since @aaronsgiles brought it up, let's talk about the PCjr's video system.
The VGA.
No, not that VGA.
-
Since @aaronsgiles brought it up, let's talk about the PCjr's video system.
The VGA.
No, not that VGA.
The PCjr has a Video Gate Array. You're thinking about the later 256 color standard, the Video Graphics Array.
Easy mistake to make. Tandy's version of this would get unofficially named "TGA", something you might have seen when selecting your graphics options in that spiffy new DOS game you just bought.
In any case, the PCjr has no dedicated video memory, the system has shared memory. Just like your fancy new MacBook! Okay nothing at all like that, actually, because if you hadn't guessed by now, it's terrible.
-
The PCjr has a Video Gate Array. You're thinking about the later 256 color standard, the Video Graphics Array.
Easy mistake to make. Tandy's version of this would get unofficially named "TGA", something you might have seen when selecting your graphics options in that spiffy new DOS game you just bought.
In any case, the PCjr has no dedicated video memory, the system has shared memory. Just like your fancy new MacBook! Okay nothing at all like that, actually, because if you hadn't guessed by now, it's terrible.
The IBM PC uses the 8253 timer and 8237 DMA controller to refresh the system's DRAM. The D in DRAM stands for Dynamic and dynamic means if we do not refresh the RAM by accessing it periodically the contents go bye-byte.
Doing this saved IBM a decent amount of money on making dedicated refresh circuitry, at the cost of about 5-6% of your CPU performance.
-
The IBM PC uses the 8253 timer and 8237 DMA controller to refresh the system's DRAM. The D in DRAM stands for Dynamic and dynamic means if we do not refresh the RAM by accessing it periodically the contents go bye-byte.
Doing this saved IBM a decent amount of money on making dedicated refresh circuitry, at the cost of about 5-6% of your CPU performance.
@gloriouscow we should never have strayed from core memory.
-
The IBM PC uses the 8253 timer and 8237 DMA controller to refresh the system's DRAM. The D in DRAM stands for Dynamic and dynamic means if we do not refresh the RAM by accessing it periodically the contents go bye-byte.
Doing this saved IBM a decent amount of money on making dedicated refresh circuitry, at the cost of about 5-6% of your CPU performance.
But the PCjr has no DMA controller. Ruh roh! How are we going to refresh the DRAM??
Easy peasy. We just make the system RAM also the video RAM. As the PCjr's VGA reads video memory to scan out to the display, it hits all the RAS and CAS lines and we get our DRAM refreshed! Yay!
Except our CPU can't access RAM while it is doing this! Boo!
-
But the PCjr has no DMA controller. Ruh roh! How are we going to refresh the DRAM??
Easy peasy. We just make the system RAM also the video RAM. As the PCjr's VGA reads video memory to scan out to the display, it hits all the RAS and CAS lines and we get our DRAM refreshed! Yay!
Except our CPU can't access RAM while it is doing this! Boo!
IBM tells us the CPU gets one cycle every 1.1 microseconds, which is practically an eon in computer time. A CPU cycle at 4.77MHz is around 200ns, for comparison.
IBM gives some handwavy math to explain how you might see 2 wait states as a result. In unlucky code sequences you could see 3-5.
This made your peanut slow


-
The PCjr has a Video Gate Array. You're thinking about the later 256 color standard, the Video Graphics Array.
Easy mistake to make. Tandy's version of this would get unofficially named "TGA", something you might have seen when selecting your graphics options in that spiffy new DOS game you just bought.
In any case, the PCjr has no dedicated video memory, the system has shared memory. Just like your fancy new MacBook! Okay nothing at all like that, actually, because if you hadn't guessed by now, it's terrible.
@gloriouscow
It's a good thing that a "Tandy" "Gate Array" doesn't have any other meanings either, nope none at all... -
IBM tells us the CPU gets one cycle every 1.1 microseconds, which is practically an eon in computer time. A CPU cycle at 4.77MHz is around 200ns, for comparison.
IBM gives some handwavy math to explain how you might see 2 wait states as a result. In unlucky code sequences you could see 3-5.
This made your peanut slow


Manufacturers of RAM expansion cards had to provide refresh circuitry for the RAM sitting on their expansion cards, because your PCjr's VGA did not access it.
This wasn't something your IBM PC memory expansion card needed to worry about, because the PC will refresh any extra memory your put in (set your jumpers properly!)
But it also means that code running out of a PCjr RAM expansion sidecar could, in theory, run even faster than on its big older brother. Yay, peanut!
-
Manufacturers of RAM expansion cards had to provide refresh circuitry for the RAM sitting on their expansion cards, because your PCjr's VGA did not access it.
This wasn't something your IBM PC memory expansion card needed to worry about, because the PC will refresh any extra memory your put in (set your jumpers properly!)
But it also means that code running out of a PCjr RAM expansion sidecar could, in theory, run even faster than on its big older brother. Yay, peanut!
Code running out of the ROM , like the BIOS, and any cartridge you might have plugged in before everyone gave up on that idea, was also fast.