Undocumented diagnostic tool for the PCjr

Software related questions

Undocumented diagnostic tool for the PCjr

Postby riq » Mon Jan 15, 2018 8:19 pm

So the PCjr has some undocumented diagnostics code built-in the ROM.

Basically when you enter into diagnostics mode with Ctrl + Alt + Insert, you can trigger different diagnostics mode with the following.
Right after pressing Ctrl + Alt + Insert do:

  • Press: Joy 1 button B, and Joy 2 buttons A & B for Manufacturing burn-in mode: enters diag loop mode without the diag screen
  • Press: Joy 1 button A, and Joy 2 buttons A & B for Manufacturing system test mode: enters boot loop. Keeps booting
  • Press: Joy 1 buttons A & B, and Joy 2 button B for Service loop-post mode: displays all diagnostics options, even if the hardware is not present
  • Press: Joy 1 buttons A & B, and Joy 2 button A for Service system-test mode
  • Press: Joy 1 buttons A & B, and joy 2 buttons A & B: enters boot loop with sound test

It also has a hidden "joystick" test that can only be "tested" with the keyboard. I guess it was just testing code that IBM forgot to remove. This one:
Image

Here is a tool the tool to trigger the hidden "joystick" test (press "7") and to trigger the different diagnostics mode (in case you don't have two joysticks):
https://github.com/ricardoquesada/ibm_p ... r/undiagjr


Warning: If you enter into the first mode (Manufacturing burn-in mode), it will format the floppy diskette without any warning.
In fact, I wrote a vulnerability report about this :-P
IBM PCjr zero-day data-destroy vulnerability: https://retro.moe/2018/01/15/ibm-pcjr-z ... erability/
Last edited by riq on Tue Jan 16, 2018 7:59 pm, edited 1 time in total.
riq
 
Posts: 36
Joined: Sat Dec 09, 2017 2:36 pm

Re: Undocumented diagnostic tool for the PCjr

Postby Trixter » Tue Jan 16, 2018 2:05 pm

I have to say, I'm shocked to learn something new about the PCjr -- I never dove deep enough into the BIOS listing to catch this. Very impressive digging!
You're all insane and trying to steal my magic bag!
Trixter
 
Posts: 508
Joined: Mon Sep 01, 2008 12:00 am
Location: Illinois, USA

Re: Undocumented diagnostic tool for the PCjr

Postby riq » Tue Jan 16, 2018 8:05 pm

Trixter wrote:I have to say, I'm shocked to learn something new about the PCjr -- I never dove deep enough into the BIOS listing to catch this. Very impressive digging!


Thanks!
riq
 
Posts: 36
Joined: Sat Dec 09, 2017 2:36 pm

Re: Undocumented diagnostic tool for the PCjr

Postby smitty » Wed Jan 17, 2018 12:21 pm

Nice work, even made it to Hackaday
smitty
 
Posts: 5
Joined: Tue Dec 26, 2017 11:22 am

Re: Undocumented diagnostic tool for the PCjr

Postby riq » Thu Jan 18, 2018 6:05 am

smitty wrote:Nice work, even made it to Hackaday


Ha, thanks! It was a nice surprise to see it in hackaday.
riq
 
Posts: 36
Joined: Sat Dec 09, 2017 2:36 pm

Re: Undocumented diagnostic tool for the PCjr

Postby geoffdaddy » Thu Jan 18, 2018 2:34 pm

Kudos! I've poured over a good portion of the BIOS code too and never found this. Pretty cool!
PCjr: 10MB RACore 01 hard drive expansion, Hotshot 640kB RAM expander, optical mouse, Xircom PE3, speech sidecar.
geoffdaddy
 
Posts: 121
Joined: Wed May 15, 2013 5:22 pm


Return to PCjr Software

Who is online

Users browsing this forum: No registered users and 1 guest