AMD Geode: Difference between revisions

From JookWiki
(WIP)
(→‎Board specifications: Specs are correct)
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Category:Projects]]
[[Category:Projects]]
Since November 2021 I've been working on a video production where I fix a board with an AMD Geode CPU. This page documents my notes. See [[Geode Repair/Video]] for details on the production.
I have a board with an AMD Geode CPU for some light retrocomputing development. This page details it and whatever I get up to with it.


== Introduction ==
See [[AMD Geode/Troubleshooting]] for details on the troubleshooting process.
 
See [[AMD Geode/Video 1]] for details on the video production about the troubleshooting process.
 
See [[AMD Geode/Video 2]] for details on the second video production.
 
== Motivation ==
For a while I've been searching for a small computer with these requirements:
For a while I've been searching for a small computer with these requirements:


Line 24: Line 30:
At least, until I saw an offer on eBay: a used [https://buy.advantech.net.au/Boards-Cards/Embedded-Single-Board-Computers-3-5-Single-Board-Computers-By-Processor-AMD-G-Series-Processor/model-PCM-9375F-J0A3.htm?country=Australia&token=637787139068984110&f=AUS Advantech PCM-9375F] for only $50 AUD, which is over $400 less than new.
At least, until I saw an offer on eBay: a used [https://buy.advantech.net.au/Boards-Cards/Embedded-Single-Board-Computers-3-5-Single-Board-Computers-By-Processor-AMD-G-Series-Processor/model-PCM-9375F-J0A3.htm?country=Australia&token=637787139068984110&f=AUS Advantech PCM-9375F] for only $50 AUD, which is over $400 less than new.


Why such a huge discount? Video output is broken. Which means you can't really do much with this machine.
Why such a huge discount? Video output is broken. Which means you can't really do much with this machine. This at minimum would let me run by Internet-connected DOS bot and talk to DOS over a serial port.
 
I've also not had an x86 board with GPIO before, so that seems like something fun to play with.


I bought it on Nov 07 2021 and received it on Nov 12.
I bought it on November 7 2021 and received it on November 12 2021.


== Board specifications ==
== Board specifications ==
Line 37: Line 45:
* CompactFlash storage
* CompactFlash storage
* 3 RS-232 serial interfaces (only the main serial interface is given a port)
* 3 RS-232 serial interfaces (only the main serial interface is given a port)
* 8 GPIO pins
* 8 GPIO pins (you don't see x86 boards with GPIO often)
 
*No [[nopl]] instruction support (not documented)
This at minimum would let me run by Internet-connected DOS bot and talk to DOS over a serial port.
 
I've also not had an x86 board with GPIO before, so that seems like something fun to play with.


Note that the IDE connector on the board is 2.0mm pitch, not the standard 2.54mm pitch most IDE cables use.
Note that the IDE connector on the board is 2.0mm pitch, not the standard 2.54mm pitch most IDE cables use.


TODO: Look at board again and validate and clarify these specifications.
TODO: Add photos
 
TODO: Include some photos of the board.


== Setup ==
== Setup ==
TODO: rename this maybe?
For power I use a USB to Molex fan adapter. These come with the 5V USB connected to the 12V pins on the Molex connector in order to run a 12V fan at a lower voltage. With a little effort you can pry them out and put them in the 5V pins on the connector.
 
- USB power
 
- CompactFlash
 
- Null Modem Cable
 
- move troubleshooting to its own page
 
== Troubleshooting ==
The eBay page listed the issue as "I was able to boot Windows 98SE from a Compact Flash card and everything worked fine. It currently refuses to output a video signal that any of my monitors can recognise" which sounds like it could be anything.
 
It's a little difficult to tell what's wrong with an x86 computer without video output, so I just checked what I could.
 
=== Power supply ===
Connecting the board's 5V rail to my Gophert NPS-1601 power supply caused it to draw up to 1A of current then beep.
 
There were no short circuits or smoke. I'm assuming the beeping is from the board POSTing.
 
Looking at the voltage drop with an oscilloscope, there was jitter from current consumption but no huge drops that would cause a brownout.
 
=== Video output ===
Video output caused both my monitors to display a 'Input not supported' message twice during boot:
 
* The first was quick just after boot and lasted a second or so, followed by a second of nothing
* The second message lasts until you reset the board or pull power
 
This is different to a 'No input' message, so some signal must be generated that the monitor can recognize but still give a failure for.
 
=== RAM ===
In case some memory error was causing the machine to hang during video initialization I swapped the stick with a test one.
 
No difference at all, so I don't think anything's really wrong with the RAM.
 
Removing the RAM altogether caused long beeps, presumably by the BIOS.
 
The original RAM that came with the machine is a Transcend 512M DDR333 stick, and the test one is Kingston 256M DDR333 stick.
 
=== Serial output ===
I connected both a makeshift and proper null modem cable to the serial port on the device. There was no output on it, but my oscilloscope showed the transmit line being held low.
 
This doesn't mean necessarily mean anything, most BIOSes on consumer hardware (old and modern) don't output on the serial port. This is horrible on many levels ranging from accessibility to troubleshooting or just configuring things if you don't have a monitor.
 
=== Clock battery ===
I removed the clock battery and checked it with my multimeter. It was around 200mV, much lower than the 3V it should provide.
 
I figured this may have caused some kind of undervoltage data corruption, but booting without the battery doesn't do anything.
 
The battery is a Rayovac BR1632 (see [https://www.rayovac.com/wp-content/uploads/2021/08/R6099_OEMReferenceGuide.pdf Rayovac 6099 OEM Reference Guide] for more details) coin battery. This is a size smaller than the standard 2032 battery you'd see in a computer so I haven't replaced it yet.
 
Visual inspection doesn't show any battery leakage on the battery, and I can't really check under the battery holder without de-soldering it. I'm going to assume there wasn't any damage from a leakage event.
 
=== Keyboard ===
I plugged in a standard PS/2 keyboard (a black Acer KB-2971 covered in grime). The system would allow toggling caps lock and num lock as well as make some beeps when pressing keys.
 
This confirms that the system is active and not physically dead.
 
=== Ethernet ===
I connected the machine to my computer using an Ethernet cable to see if some kind of network boot was being attempted.
 
No packets arrived at my machine, so it's definitely not trying to boot over the network.
 
=== BIOS ===
I removed the BIOS chip to see how this would affect things.
 
The system didn't respond to any keypresses and made no noise.
 
This confirms that the BIOS is responsible for all the behaviour seen so far.
 
=== VGA signals ===
Probing the VGA signal showed the following:
 
* Vertical sync was a 60Hz square wave lasting for 40 microseconds
* Horizontal sync was a 75.02KHz square wave lasting for 1.45 microseconds
* Red green and blue were all flat signals around 200mV


This seems like the machine is outputting no graphics signal.
For storage I'm using a CompactFlash card. Nothing fancy.


I didn't see any visible damage on the board's VGA section so this seems like a software issue.
For serial I'm using a DB9 null modem cable with partial handshaking. I tried buying one from eBay first but instead got a straight through cable instead. See my [[serial ports]] page for more information.

Revision as of 13:00, 30 March 2022

I have a board with an AMD Geode CPU for some light retrocomputing development. This page details it and whatever I get up to with it.

See AMD Geode/Troubleshooting for details on the troubleshooting process.

See AMD Geode/Video 1 for details on the video production about the troubleshooting process.

See AMD Geode/Video 2 for details on the second video production.

Motivation

For a while I've been searching for a small computer with these requirements:

  • Runs real mode DOS programs
  • Has a somewhat antiquated CPU
  • Has an Ethernet card and DOS packet driver
  • Doesn't consume too much power

The use case here is to run my Twitch DOS Bot I've been developing over the years.

After the searching I found that there were a few systems that could approximate this:

  1. A Raspberry Pi running DOSBox-X
  2. Thin client machines that used VIA CPUs
  3. Expensive single-board computers using a Vortex86 chip
  4. Cheaper 86Duino boards
  5. An old Eee PC 1000HA I had

I eventually decided to go with option 1, a Raspberry Pi emulating DOS.

At least, until I saw an offer on eBay: a used Advantech PCM-9375F for only $50 AUD, which is over $400 less than new.

Why such a huge discount? Video output is broken. Which means you can't really do much with this machine. This at minimum would let me run by Internet-connected DOS bot and talk to DOS over a serial port.

I've also not had an x86 board with GPIO before, so that seems like something fun to play with.

I bought it on November 7 2021 and received it on November 12 2021.

Board specifications

The PCM-9375 A3 specifications shows these points that interest me:

  • AMD Geode LX800 500 MHz CPU (see the AMD Geode LX Processors Data Book for more information)
  • AMD Geode CS5536 chipset (see the AMD Geode CS5536 Companion Device Data Book for more information)
  • Dual RTL8139 10/100 Mbps Fast Ethernet (second requires breakout board that I have)
  • 5V power supply (12V needed for optional LCD)
  • CompactFlash storage
  • 3 RS-232 serial interfaces (only the main serial interface is given a port)
  • 8 GPIO pins (you don't see x86 boards with GPIO often)
  • No nopl instruction support (not documented)

Note that the IDE connector on the board is 2.0mm pitch, not the standard 2.54mm pitch most IDE cables use.

TODO: Add photos

Setup

For power I use a USB to Molex fan adapter. These come with the 5V USB connected to the 12V pins on the Molex connector in order to run a 12V fan at a lower voltage. With a little effort you can pry them out and put them in the 5V pins on the connector.

For storage I'm using a CompactFlash card. Nothing fancy.

For serial I'm using a DB9 null modem cable with partial handshaking. I tried buying one from eBay first but instead got a straight through cable instead. See my serial ports page for more information.