the machine

The 7020-001 is a member of the IBM RS/6000 family. Sometimes this machine is refered as 40P. It builds around a PowerPC 601 processor at 66Mhz. The board is called Sandalbow and includes a ncr53c810 scsi controller chip and cs4231 audio chip. There are ISA and PCI slots on a daughter board. PCI is equipped with a weitek viper card (P9100 chipset/ibm525 clock, S15 in IBM talk). One ISA slot holds a ne2000+ ethernet card with a AT/Lantic DP83905 chip.

the operating system

Both AIX (until 4.3.3) and Windows NT (until 4.0sp1) run very well on this machine. Windows development on PowerPC has stopped. AIX doesn't support newer PC-like hardware. So I work on Linux.

Things that work are: These are done with: Things to do:

the kernel

You may download the kernel and write it on a floppy disk with dd if=zImage.prep of=/dev/fd0 bs=18k. After booting the kernel asks for a second floppy-disk. This can be the minimal filesystem mentioned later. You may also experiment with so called root-disks from various distributions to install a complete working linux on your 7020. Known to work are ramdisk.image.gz from RedHat 7.1 if your machine has at least 48 Mb of RAM or you are using CD-ROM install method and debian root.bin with some manual operation.

the minimal filesystem

The filesystem I'm using is minimal and will fit on a 1.44 floppy. You may boot into this environment, get a root-shell, setup network, partition sda, mount filesystems including msdos-floppies. You may also find a running telnetd to connect to this environment. IP-configuration is done by pump. So you have to setup a dhcpd in your environment and assign the hardware address of your 40p an ip-number to connect to the telnetd. So you may be able to install your favourite distribution.

the firmware

Chapter 1.6.3 of managing aix gives you an overview about the firmware. They have forgotten to mention, that this firmware is a form of primitive operating system that runs from flash ram. You can reach this with the following steps:

This environment is very powerfull. You may Cause the internal command help doesn't give you a full description of internal commands here is a table with all the commands and sometimes a short description I've found out. People at IBM seems to be funny sometimes or very proud of there systems when looking at commands like BLOCKS or WAVE.6XE.
apartapart [1-4]
Alters default active partition selection.
beepbeep [tone value [time value]]
Cause a tone to be emitted. The frequency is determined by the tone_value. The length of the tone is determined by the time_value.
blocksblocks
This command draws random blocks, in random colors, on the display.
breakbreak {hex-address | list | off} [{it | noit}]
This command sets an instruction fetch breakpoint. The processor stops before the instruction is executed. List lists the current breakpoint. Clear removes a breakpoint. it/noit is valid for 604 processor only. 604 compares MSR(IT) to the it/noit state in addition to the address.
callcall hex-address
Control is transferred to the location specified.
cls
copy
cd
chdir
cmos
debugdebug
Prefixing a normal command line with "debug" causes a breakpoint to be set at the entry of the command being debugged. This only works for external commands. For example, to set a breakpoint at the beginning of BMP.6XE, enter: debug bmp sample.bmp
dir
dump
disasm
date
dcdc
dc toggles the active debug console.
echo
erase
exit
fdiskfdisk [decimal-drive-id]
Create a DOS partition on disk.
fill
font
frbaread address drive RBA [count]
Read data from a diskette or hard file. All parameters are specified in hex. The count defaults to 1 if not specified. Drive is specified the same as a PC (ie. 0=A, 1=B, 0x80=C, 0x81=D..). RBA is zero-based.
go
goto
help
hexhex hex-string1 hex-string2
Computes the sum and difference between two hex numbers.
inin hex-address
Performs an I/O read to Dakota I/O Space (0x80000000 is added to the address). The default is to run an 8 bit cycle. To run a 16 bit cycle, use: in16 hex-address To run a 32 bit cycle, use: in32 hex-address
load
md
mfgdiagsmfgdiags
Runs diagnostics in manufacturing (box test) mode.
mkdir
mode
monitor
nvram
outout hex-address hex-data
Performs an I/O write to Dakota I/O Space (0x80000000 is added to the address). The default is to run an 8 bit cycle. To run a 16 bit cycle, use: out16 hex-address hex-data To run a 32 bit cycle, use: out32 hex-address hex-data
pstep
rd
read
regs
rebootreboot
Transfers control to the reset vector in high memory 0xfff00100.
rename
rem
rmdir
step
search
sleep
sregs
time
type
testtest
This is a test routine. Is function will vary, so there is no real help.
vdiskvdisk decimal-size-in-bytes
Create a VDISK, VDISK 0 eliminates an existing VDISK.
write
iat_dskt
iat_mem
iat_scsi

useful docs

useful links

Last update was on Wednesday, 30-May-2007 by Sven Dickert