Monday, January 7, 2019

IBM PCjr. Upgrades Part 2

When I first received my IBM PCjr. back in 2013, I was able to discuss most of the readily-available upgrades for the system that existed at that time.  https://nerdlypleasures.blogspot.com/2014/03/ibm-pcjr-upgrades.html  Now, almost six years later, we have some new upgrades available.  Let's see what modern conveniences can do for a 35-year old computer system



PCjr. Power Supply Upgrades

Power is a necessity for computers, but power itself isn't very interesting to most people, it is what is done with that power that counts.  Nonetheless, the computer still needs a clean and adequate supply of power to perform the functions and power the devices in it and attached to it that need it.  The IBM PCjr. originally came with a rather anemic 33W power supply, then followed by a 45W power supply.  The power supply came in two components, the first a large external transformer with long cables and second an AC-to-DC converter board inside the computer.  The transformer uses electricity when the computer is turned off, has a rather proprietary connector to the card, can give off an audible hum and the constant usage will wear out the transformer over time as a result.  The original IBM boards give off a lot of heat inside the machine and even the 45W card struggles to power more than three sidecar expansions.

Courtesy of Akbuku.com
 Two recent power supply solutions have realized recently.  The first, by Youtube channel AkBKuKU, is an ATX2PCjr Adapter for a picoPSU. The adapter was designed by AkBKuKU along with the switch and power socket A picoPSU is a small, compact switching power supply which can provide 7A at +5v and +12v. The PCjr.'s 33W power supply can do 3.6A and 1.2A, respectively, at +5v and +12v. The PCjr. also needs a nominal amount of -12v, .25A for three chips. The picoPSU can output .1A, which should be sufficient for the chips that need it.

The picoPSU comes in a kit form for $15 which requires soldering and a fully assembled version for $20 and has a switch assembly similar to the original PCjr's on/off switch. The picoPSU retails for $25 and the external AC-DC power converter costs $16. You can pre-order an ATX2PCjr Adapter from here :
https://akbkuku.com/store/p/1/IBM-PCjr-ATX-Power-Supply-Adapter/


Courtesy of Retrotronics.org

The second replacement power solution is the jrPSU from Retrotronics.org.  This solution is a custom board with a full AC-DC power supply on it which replaces the original internal IBM power board.  This card was designed by the designer of the jrIDE, Alan Hightower (alanh on the PCjr. forum).  It does not need any type of external power brick, only a standard two-prong AC cable.  It can output 5A at +5v, +12v and -12v.  The pins are gold coated, I don't believe the original IBM cards used gold. Note the two-pin receptacle for the grounding pins on the PCB to the lower left of the big AC/DC module.  The switch is a rocker like the original, but it is smaller and black where the original switch is red.  More information is available here : https://www.retrotronics.org/home-page/jrpsu/

Currently, the design has exposed solder that go straight to the wall socket and can result in a user being shocked if they touch these points while the power supply is plugged in.  Alan is currently designing a 3-D printed bracket to cover those points before he sells to the general public.  He graciously donated one to me and I can't see myself going back to the IBM solution.  This solution takes up a lot less space than the 45W adapter I have and a lot less heat.  The only thing of concern I noted is that the power cord appears hard to plug in all the way into the outlet provided on the card, but you should not have to give it much force for a snug fit.  The bill of materials cost for one of these is about $51.00, the AC/DC converter box alone costs $16.58

Both replacement power supplies cut themselves off from the wall power when not in use, which helps save on the electricity bill.  Both projects are also open source, so you can conceivably make your own and save a bit.

TexElec Adapter Boards

TexElec has made something of a name for itself in the vintage computer community by making upgrades available from places that have had difficulty keeping them in stock like Lotech.uk.  It offers two upgrades for the PCjr, both of which attach to the Expansion Ports at the rear of the system.

The first is the IBM PCjr. CGA and Serial Breakout Board.  The second is the IBM PCjr. Joystick and Keyboard Breakout Board.  I purchased the second, so I can speak to both products.

Courtesy of TexElec.com
Both boards act as port adapters to change the pin header-style connectors of the PCjr. to standard D-shell connectors for Joysticks, CGA monitors and serial devices.  IBM did make adapter dongles for CGA monitors and serial ports, but their availability is dependent on individuals willing to part with them.  IBM also made special IBM PCjr. Joysticks with the Joystick BERG-style connector, the IBM PC Compact Printer Model 5181 with a Serial BERG connector and the IBM PCjr. Display Model 4863 with the Display BERG connector.

With the CGA and Serial Breakout Board, you can connect standard CGA monitors and Serial mice, modems and other serial devices.  There are jumpers on the Board to select between positive and negative horizontal and vertical synchronization pulses.  The default for most CGA monitors is positive sync.  Unfortunately, using this Board means you cannot use either the PC Compact Printer or the PCjr. Display unless you obtain adapters for them.  Moreover, the PCjr. Display accepts audio input through its video cable, but the D-shell connector has no pins for that, so you will need to tap the audio from the RCA jack and build a custom adapter to feed it into the PCjr. Display's cable.

Courtesy of TexElec.com
The IBM PCjr. Joystick and Keyboard Breakout Board provides much more functionality.  The PCjr. keyboard is constructed identically to a PC joystick except for the connectors.  With this board you can use your favorite PC joysticks.  You can also use Gravis Gamepads which emulates analog resistances so you can use a D-pad.  The Gravis Gamepads are arguably a better choice for any kind of single screen game or 2-D side/top-down scroller which does not require analog control like a flight simulator.

The best feature about the IBM PCjr. Joystick and Keyboard Breakout Board is the inclusion of a PS/2 keyboard port.  This allows you to use a standard PC keyboard with the PCjr.  The IBM PCjr. keyboards are awful devices to type on.  The key layout is cramped, the keyboards are very lightweight and the keys use a rubber dome mat.  There is an RJ-11 jack if you wish to use the original keyboard, but you will need a 4-conductor telephone cable and it has to be a short cable.  I was able to use my PCjr. with my IBM Model M keyboard with pleasurable results.  One thing to note is that if you have a Model M with a detachable cable, don't use the extended-length cable.  The regular length coiled cable works.  Remember to set the jumper appropriately.  You can hotplug the PCjr. keyboard but not a PC keyboard.

PCjr. Keyboard Diagnostic - PCjr. Keyboard
The Board contains an 8-pin 12F617 PIC microcontroller which translates the AT-PS/2 keyboard protocol into the XT/PCjr. protocol the PCjr. accepts.  The firmware for the microcontroller and the design of the keyboard conversion circuitry was by Michael Graham/jmetal88 and TexElec is using it with his permission.  He has also posted the source for the firmware and to build a PCB for the keyboard adapter.  Thus the board will work with an IBM PC AT Model F keyboard (with an DIN5 to mini-DIN6 adapter) or IBM PS/2 Model M keyboard but not the IBM PC & XT Model F keyboard.  Interestingly enough, if you access the built-in diagnostics of the PCjr., you will see the Model F XT keyboard layout being "drawn" on the screen instead of the PCjr. keyboard's layout.  The Model F AT and Model M keyboards can show all 83 keys whereas the PCjr. keyboard cannot show the Print Screen/*, Number Pad + and Number Pad - keys.  You can also access a similar keyboard testing program by pressing Esc as the first key you press when you enter Cassette or Cartridge BASIC.  This will show the PCjr. keyboard layout being drawn and the Model F and Model M keyboards can show all 62 keys of the PCjr.'s keyboard.  Even the Fn key on the PCjr. keyboard will eventually register.  It's really solid for compatibility. 

PCjr. Keyboard Diagnostic - Model F/M Keyboard with Converter
The Another neat feature is that the status LEDs on your keyboard will light up when the corresponding key (Num/Caps/Scroll Lock) is pressed, a feature that should only work on AT-compatible computers. This feature may not work perfectly because with the AT machines the computer sends the commands to turn the keyboard LEDs on and off.

PCjr. Keyboard Introduction Program - PCjr. Keyboard or Model F/M Keyboard with Converter
If your PCjr. is taking a long time to get through the memory test on bootup, the adapter may not be making good contact with the pins.  Turn it off, wiggle it and turn it back on and it should eventually work.  There is about a millimeter of space between the adapter and the case, so if you wish to attach it more securely, there is room on the PCB for some double sided tape and foam or cardboard or a similar material you can use to bridge the gap.  If you see the status LEDs flash on your keyboard, you should be good.

Lastly, if you use the IBM PCjr. CGA and Serial Breakout Board, the Cassette Port will be blocked by the Board and will be unusable.   IBM PCjr. Joystick and Keyboard Breakout Board will block the Light Pen Port, the TV/RF Modulator Port and the Spare "L" Port, so you cannot use devices which attach to those ports.  Still I do recommend their Boards and you can buy them for $28.04 for the Joystick and Keyboard Board and $19.54 for the CGA and Serial Board at https://texelec.com/

What Else Does a PCjr Need?

So between the upgrades and modes detailed in this post and in the last post, what else might a PCjr need?  Well, for one a prebuilt and readily available and switchable solution for a PC-Sprint accelerator for one would be nice!  A Gotek Floppy emulator should help with getting disks working, especially if you can't find a jrIDE.  On the PCjr. forums you can find a disk image which includes images of all cartridge games and allows them to run off floppy.  If you want to make a reproduction of a particular cartridge, the necessary files are available here : https://hackaday.io/project/19160-pcjrcart

I would like to offer two observations on the jrIDE as I have used it over the years.  First, I have tried more than one DOM over the years and they simply do not work reliably in my experience.  These days I use a 256MB SanDisk CF card and one of these CF-to-IDE adapters : https://www.amazon.com/Syba-SD-CF-IDE-Connects-3-5-Inch-Interface/dp/B000YUMLPI
This adapter is ideal because it provides power to the CF card without a wire.  The CF card has never given me a problem and boots up reliably.

The second observation is that I have found that my jrIDE does not show the disk drive reliably if it is enclosed in a sidecar case.  For whatever reason, whenever I use my PCjr. after an extended period, I have to readjust it in the slot to get it to show the "hard drives".  The extra memory provided by the is detected just fine regardless of whether the drives are recognized.  I find that letting the card sit "naked" on the end of the sidecars seems to be the best solution.  It also allows me to remove the card to load more software onto it with my main PC instead of having to set up an Ethernet connection.

No comments: