Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

DearthnVader

Suspended
Original poster
Dec 17, 2015
2,207
6,399
Red Springs, NC
I can't seem to get the right settings for Serial App and my Keyspan USB to serial to get into OF on my Beige G3.

I'm not sure if I need the ZTem terminal option or the VT100?

Apple's old documentation says a VT102 terminal, is that the same as VT100?

The Open Firmware user interface, hereafter called the interface, as implemented on Macintoshes to date, comes up in two-machine mode. You can connect the two machines together using the serial ports and cable. Start with the modem ports for simplicity. Open Firmware defaults to the modem port. Use a communication application such as Zterm, MacTerminal, or Microphone as the host. Use these settings:
  • 38400 baud (typically 38.4 but some versions of OF may use 19.2 also)
  • No parity
  • 8 data bits
  • 1 stop bit
  • XON/XOFF handshake
  • ANSI/VT102 terminal protocol
    1. Start the host and wait for the prompt.
    2. Start the target machine while holding down the O, F, Option, and
    3. Command keys. (O, F stands for Open Firmware.)
3. Wait until you see:
Open Firmware, 1.0.5
To continue booting the MacOS type:
BYE<return>
To continue booting from the default boot device type: BOOT<return>
ok
0>

I just can't get connected???





Screenshot 2024-06-12 at 1.12.53 PM.pngScreenshot 2024-06-12 at 1.13.19 PM.pngScreenshot 2024-06-12 at 1.13.30 PM.png
 
Last edited:
What version of Serial.app are you using? I'm using 2.0.17.

I think the default baud for the Beige G3 is 57600? You can patch OF to do 115200 and 230400.

You can force a baud by adding a baud rate parameter (between 300 and 57600) to the device path. For example: ttya:38400 or scca:38400
Check devalias for the correct alias for the serial port.

So with Open Firmware 1.0.5, since the default is 38400, you would do ttya:57600 to get the max speed (before trying the 115200 or 230400 patch).

I have Text Pacing character and line delays setup in Serial.app to 0.005 for 57600 baud. It can be reduced for higher baud rates or increased for lower baud rates. If you paste a hundred lines of Open Firmware commands then watch for any errors. If there are any, then you probably need to increase the delays. I don't think the "Wait For Echo" option works well enough for Open Firmware.

Startup Disk and XPostFacto may change Open Firmware variables. You can change Open Firmware variables such as input-device, output-device, auto-boot?, use-nvramrc?, nvramrc, etc.), using the nvram command in Mac OS X.

Old World Macs store boot-args in the boot-command nvram variable. New World Macs can define new variables so boot-args would be in a separate variable.

In New World Macs that don't have a serial port, you would connect using Telnet. Serial.app supports Telnet. It may be more useful than telnet in Terminal.app because of Serial.app's Text Pacing options (for pasting large amounts of Open Firmware commands). Does the telnet option exist in the App Store version of Serial.app?
 
I don't think Open Firmware uses hardware or software handshake so disable XON/XOFF?

Open Firmware appears to use 2 stop bits, but 1 stop bit works and is slightly faster (10 bits per byte rather than 11; a 2nd stop bit just affects transmit?)
 
What version of Serial.app are you using? I'm using 2.0.17.

I think the default baud for the Beige G3 is 57600? You can patch OF to do 115200 and 230400.

You can force a baud by adding a baud rate parameter (between 300 and 57600) to the device path. For example: ttya:38400 or scca:38400
Check devalias for the correct alias for the serial port.

So with Open Firmware 1.0.5, since the default is 38400, you would do ttya:57600 to get the max speed (before trying the 115200 or 230400 patch).

I have Text Pacing character and line delays setup in Serial.app to 0.005 for 57600 baud. It can be reduced for higher baud rates or increased for lower baud rates. If you paste a hundred lines of Open Firmware commands then watch for any errors. If there are any, then you probably need to increase the delays. I don't think the "Wait For Echo" option works well enough for Open Firmware.

Startup Disk and XPostFacto may change Open Firmware variables. You can change Open Firmware variables such as input-device, output-device, auto-boot?, use-nvramrc?, nvramrc, etc.), using the nvram command in Mac OS X.

Old World Macs store boot-args in the boot-command nvram variable. New World Macs can define new variables so boot-args would be in a separate variable.

In New World Macs that don't have a serial port, you would connect using Telnet. Serial.app supports Telnet. It may be more useful than telnet in Terminal.app because of Serial.app's Text Pacing options (for pasting large amounts of Open Firmware commands). Does the telnet option exist in the App Store version of Serial.app?
ttya:57600 doesn't work.

ttya 57600 returns ok, but I'm unsure it does anything, is there a way to check what baud rate it's set to?

Also what terminal should I be using ZTERM or VT100?
 
ttya:57600 doesn't work.

ttya 57600 returns ok, but I'm unsure it does anything, is there a way to check what baud rate it's set to?

Also what terminal should I be using ZTERM or VT100?
I don't think it matters which terminal. Mine is set to Xterm.

Maybe try Z-Term app on the Beige G3 to verify that serial communication works outside Open Firmware.

If you can get Open Firmware on the Beige G3 using kbd and screen (the defaults after zapping PRAM?), then you type the following to switch to serial at 57600 bps:
" ttya:57600" io

Verify that the serial cable is connected to port 1 of the Keyspan adapter. You need to use a printer serial cable or a null modem cable since you are connecting two computers together and not a modem.
 
I don't think it matters which terminal. Mine is set to Xterm.

Maybe try Z-Term app on the Beige G3 to verify that serial communication works outside Open Firmware.

If you can get Open Firmware on the Beige G3 using kbd and screen (the defaults after zapping PRAM?), then you type the following to switch to serial at 57600 bps:
" ttya:57600" io

Verify that the serial cable is connected to port 1 of the Keyspan adapter. You need to use a printer serial cable or a null modem cable since you are connecting two computers together and not a modem.
Thanks, I'm using the 8 pin cable.

What is a good test I can use on the Beige in the Mac OS to verify the pinter/modem ports are actual working?
 
Thanks, I'm using the 8 pin cable.

What is a good test I can use on the Beige in the Mac OS to verify the pinter/modem ports are actual working?
Not all 8 pin cables are the same. Is it crossover or not crossover? I use a Belkin Image Writer II printer cable. I can check the continuity of the pins in my cable if you like.

Connect the printer port and modem port together. Then open one port in one app and the other port in another app. But this will test the cable also. The only way to exclude the cable would be to connect an oscilloscope directly to the port.
 
I tested my other
Not all 8 pin cables are the same. Is it crossover or not crossover? I use a Belkin Image Writer II printer cable. I can check the continuity of the pins in my cable if you like.

Connect the printer port and modem port together. Then open one port in one app and the other port in another app. But this will test the cable also. The only way to exclude the cable would be to connect an oscilloscope directly to the port.
I have two cables and tried them both, nothing.

I did not know there were crossover cables, I just have two 8 pins that should be printer cables.

I'm not sure how to get communication going app to app. I have Z-Term on the Beige, it works for incoming right?

What app can I use to send with the two ports hooked together?
 
Z-Term can send and receive. Select "Local" from the "Dial" menu. Then start typing. Whatever you type in one Z-Term should appear in the other Z-Term.
Enable "local echo" to see what you're typing.

Does Z-Term support selecting the Printer port?
 
One of the cables has the up/down arrows, so surely it's an Apple Talk cable.

Sadly Mac OS 9 does not see the Keyspan USB as a port to enable Apple Talk on.

I tried to setup serial on Tiger on the Beige to see if I could connect from Serial App that way but I don't think I got the configuration right.
 
Z-Term can send and receive. Select "Local" from the "Dial" menu. Then start typing. Whatever you type in one Z-Term should appear in the other Z-Term.
Enable "local echo" to see what you're typing.

Does Z-Term support selecting the Printer port?
I think it does, I’ll give that a shot tomorrow
 
Frustrating, I have two Keyspan USB to Mac Serial adapters now because when I tried this before I was unable to do it and I just assumed it was the Keyspan.

They both seem to work but I can't find anyway to connect them together or one to the Beige printer/modem port to test if I just have a bad set of cables that maybe are not twist pair.

ZTerm will not launch two instances under Mac OS 9, I can't get anything with ZTerm on my iMac under OS 9 to Zterm on the Beige via the modem/printer ports and I just don't know if I can do ZTerm to ZTerm that way?

I did try and setup Mac OS X Tiger 10.4.11 for serial over the modem port like so..

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>Label</key>
        <string>serialconsole</string>
        <key>ProgramArguments</key>
        <array>
                <string>/usr/libexec/getty</string>
                <string>std.57600</string>
                <string>tty.modem</string>
        </array>
        <key>KeepAlive</key>
        <true/>
</dict>
</plist>

No errors were reported after a reboot, but no console to the Serial App either...



I also tried to just connect via one Keyspan USB on the Beige and one on my MacBook Pro M2, but I just keep getting an error that says the tty.USA28X93P1.1 does not exist when clearly it does and is listed when I issue the command:

ls /dev/tty.*

This is getting old.
 
Not all 8 pin cables are the same. Is it crossover or not crossover? I use a Belkin Image Writer II printer cable. I can check the continuity of the pins in my cable if you like.
I kind of got something with both USB devices one on Leopard and one on Sonoma.

But it keeps giving me a hangup error on the host Mac with Leopard with either cable I have connected. I'm assuming it's the cable and ordering this one?


Has to be the cable, now that I think of it, last time I got this to work I was using the cable off my Image Writer II between an LCIII and Mac PM8600.
 
Get a multimeter or a battery and a light bulb from a flashlight to test the continuity of each pin.
 
Get a multimeter or a battery and a light bulb from a flashlight to test the continuity of each pin.
I've got a multimeter I can read conductivity with, I'm just not sure the probes are small enough for this test.

Seems like the double arrow Apple cable should be the right one, but who knows...
 
So it was the cables, new cable, and now:

Code:
 ok
0 > dev / ls

Children of the node:
FF8295C8: /                             [AAPL,Gossamer MacRISC]

Node Adr    Node Name                     Compatible

FF82A9B8: /cpus@0
FF82AAD0:   /PowerPC,60?@0
FF82B388: /chosen@0
FF82B4B8: /memory@0
FF82B600: /openprom@0
FF82B6C0: /AAPL,ROM@FFC00000           [AAPL,ROM]
FF82B908: /options@0
FF82C3C0: /aliases@0
FF82C730: /packages@0
FF82C7B8:   /deblocker@0,0
FF82CEE0:   /disk-label@0,0
FF82D458:   /obp-tftp@0,0
FF82F6C8:   /mac-files@0,0
FF82FDE8:   /mac-parts@0,0
FF830548:   /aix-boot@0,0
FF830998:   /fat-files@0,0
FF831FB0:   /iso-9660-files@0,0
FF832918:   /xcoff-loader@0,0
FF8331E0:   /terminal-emulator@0,0
FF833278: /pci@80000000                [grackle]
FF834560:   /mac-io@10                 [heathrow]
FF835738:     /mesh@10000              [mesh]
FF837260:       /sd@0,0                [sd]
FF837E70:       /st@0,0                [st]
FF838B38:     /bmac@11000              [bmac]
FF83A3D0:     /escc@13000              [escc CHRP,es0]
FF83A568:       /ch-a@13020            [ch-a CHRP,es2]
FF83ABF8:       /ch-b@13000            [ch-b CHRP,es3]
FF83B288:     /davbus@14000
FF83B370:       /sound@0,0             [awacs screamer]
FF83B460:     /swim3@15000             [swim3]
FF83C618:     /nvram@60000             [nvram]
FF83C710:     /ide@20000               [heathrow-ata]
FF83E468:       /disk@0,0              [ata-disk]
FF83F600:     /ide@21000               [heathrow-ata]
FF841358:       /disk@0,0              [atapi-disk]
FF8424C8:     /via-cuda@16000          [via-cuda]
FF8433A8:       /adb@0,0               [adb]
FF8434C0:         /keyboard@0,0
FF843DE8:         /mouse@1,0
FF8440A8:       /pram@0,0
FF844158:       /rtc@0,0               [rtc]
FF844620:       /power-mgt@0,0         [power-mgt]
FF845740:   /pci-bridge@F
FF846478:     /pci1033,ce@8            [pci1033,ce]
FF846770:     /pci1033,35@9            [pci1033,35]
FF846A38:     /pci1033,e0@9,1          [pci1033,e0]
FF846E50:   /ATY,mach64_3DU@12
FF844928: /perch@0                     [Wings]
 ok
0 >

The Beige has a Mac-files package, why can't it read HFS disks in OF?
 
Last edited:
  • Like
Reactions: philgxxd
The Beige has a Mac-files package, why can't it read HFS disks in OF?
Read the dump of Open Firmware 2.4. Unlike earlier Beige G3 Open Firmware 2.0f1, the words in 2.4 all have names so it's easier to read.

Code:
Beige G3

sd (scsi disk), swim3 (floppy), ata-disk, atapi-disk, fdc (pc floppy):
    - all block type devices include the deblocker and disk-label packages.

disk-label:
    check                       interpose
    ======                      ==========
    arg: aix                    aix-boot            (not in OF 2.4)
    bytes+0: 0x4552 "ER"        mac-parts           (mac_partvol = Apple Partition Map)
    bytes+0x1fe: 0xaa55         fat-files           (fat)
    bytes+0x400: 0x4244 "BD"    mac-files           (mac_floppy)
    bytes+0x8000: "\x01CD001"   iso-9660-files

mac-parts:
    paritition-valid?
        >pmsig == 0x504d "PM" && >pmpartstatus & 0x13
    partition-bootable?
        >pmsig == 0x504d "PM" && >pmpartstatus & 8 && >pmprocessor == "powerpc"
    load-partition
        loadaddress = >pmbootload
        read >pmbootsize bytes from >pmpypartstart + >pmlgbootstart
    parse-my-args
        parses file name for mac-files in OF 2.4 but not in OF 2.0f1

mac-files in most Old World Macs works on HFS disks but not HFS partitions.
But OF 2.4 seem to include file name parsing in mac-parts that gets passed to mac-files.

Later versions of mac-parts will do the same for HFS+ partitions. Later versions of Open Firmware also support GPT partitions.

The Rev. A Beige G3 seems to default to 38400 baud.
You can do the following to set it to 57600 baud:
Code:
setenv input-device ttya:57600
setenv output-device ttya:57600
A nvramrc patch can be used to get 115200 or 230400 bps.

I’m thinking about opening from where on the Fiji three seems like it handles video cards differently for some reason when they’re in the PCIPCI express bridge not sure what’s going on there
What's a Fiji three? Do you mean Beige G3?
 
  • Like
Reactions: LightBulbFun
So it was the cables, new cable, and now:

Code:
 ok
0 > dev / ls

Children of the node:
FF8295C8: /                             [AAPL,Gossamer MacRISC]

Node Adr    Node Name                     Compatible

FF82A9B8: /cpus@0
FF82AAD0:   /PowerPC,60?@0
FF82B388: /chosen@0
FF82B4B8: /memory@0
FF82B600: /openprom@0
FF82B6C0: /AAPL,ROM@FFC00000           [AAPL,ROM]
FF82B908: /options@0
FF82C3C0: /aliases@0
FF82C730: /packages@0
FF82C7B8:   /deblocker@0,0
FF82CEE0:   /disk-label@0,0
FF82D458:   /obp-tftp@0,0
FF82F6C8:   /mac-files@0,0
FF82FDE8:   /mac-parts@0,0
FF830548:   /aix-boot@0,0
FF830998:   /fat-files@0,0
FF831FB0:   /iso-9660-files@0,0
FF832918:   /xcoff-loader@0,0
FF8331E0:   /terminal-emulator@0,0
FF833278: /pci@80000000                [grackle]
FF834560:   /mac-io@10                 [heathrow]
FF835738:     /mesh@10000              [mesh]
FF837260:       /sd@0,0                [sd]
FF837E70:       /st@0,0                [st]
FF838B38:     /bmac@11000              [bmac]
FF83A3D0:     /escc@13000              [escc CHRP,es0]
FF83A568:       /ch-a@13020            [ch-a CHRP,es2]
FF83ABF8:       /ch-b@13000            [ch-b CHRP,es3]
FF83B288:     /davbus@14000
FF83B370:       /sound@0,0             [awacs screamer]
FF83B460:     /swim3@15000             [swim3]
FF83C618:     /nvram@60000             [nvram]
FF83C710:     /ide@20000               [heathrow-ata]
FF83E468:       /disk@0,0              [ata-disk]
FF83F600:     /ide@21000               [heathrow-ata]
FF841358:       /disk@0,0              [atapi-disk]
FF8424C8:     /via-cuda@16000          [via-cuda]
FF8433A8:       /adb@0,0               [adb]
FF8434C0:         /keyboard@0,0
FF843DE8:         /mouse@1,0
FF8440A8:       /pram@0,0
FF844158:       /rtc@0,0               [rtc]
FF844620:       /power-mgt@0,0         [power-mgt]
FF845740:   /pci-bridge@F
FF846478:     /pci1033,ce@8            [pci1033,ce]
FF846770:     /pci1033,35@9            [pci1033,35]
FF846A38:     /pci1033,e0@9,1          [pci1033,e0]
FF846E50:   /ATY,mach64_3DU@12
FF844928: /perch@0                     [Wings]
 ok
0 >

The Beige has a Mac-files package, why can't it read HFS disks in OF?
possibly for reading off floppy drives then it is hard drives?, certainly my PowerMac 9600 can

 
Ok, so in order for OF to read partitions it needs a mac-parts package?
OF has a mac-parts package already. The OF 2.4 version can access directories on HFS partitions using hfs-files but older versions of OF have earlier versions of mac-parts that are only able to load boot code from bootable partitions.

An updated mac-parts package is needed to access directories on HFS partitions in older versions of Open Firmware.

BootX (used by XPostFacto) installs an updated mac-parts. The BootX version handles HFS+ (with and without HFS wrapper) and HFS partitions. HFS+ requires a hfs-plus-files package which is not included in XPostFacto. BootX has its own file system drivers (not Open Firmware) so hfs-plus-files is not required to boot Mac OS X.
 
  • Like
Reactions: LightBulbFun
So it was the cables, new cable, and now:

If you dont mind me asking what is your full setup? I have been meaning to get a proper USB to Mac Serial adapter/setup on the go to make OpenFirmware debugging etc a bit easier for myself, but I admit I am a bit lost as to which cables/dongles are required/recommend exactly :)

I know that if your using another beige mac (or new world mac with a stealth card) you just need printer cable and link the 2 etc, but I am not sure what the way to connect to a modern mac is :)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.