Great a (not so useful) undocumented feature
I set the GPIB bus address to 09 and saved it,then turned the power off and on again
,after power on I pressed the GPIB key this time I saw "GP09"(see pic) on the display,
I took out the EPROM(PS350) and verified it with the ROM file with my EPROM writer,
they are the same ,no change at all,thus the new GPIB address must be saved in SRAM.
I downloaded a free z80 disassembler and disassemled the binary files(PS310 & PS350),
Following information came from my brief analysis of PS350 ROM files and schematics:
1.Memory address of EPROM: 0000~1FFF (program space:8KB,ST M2764A)
2.SRAM: 4000~47FF (data space:2KB,Hitachi HM6116)
3.I/O address:
20h:Status1
28h:Status2
30h:-KBD
38h:-GPIB
48h:-Sets
50h:-DAC
58h:-LED
60h:-SEGB
68h:-SEGA
70h:-STROBE
78h:
------------------------------
bit0:-SHUTDOWN
bit1:UPOK
BIT2:-FLAG RESET
BIT3:-TIMER RESET
BIT4:(spare)
BIT5:-POS
bit6:-NEG
bit7:FILTER
------------------------------
Key code of "GPIB" :20h
I found only two read key code commands ("in a,(30h)") in the ROM file of PS350
1.0000~0044h:
002c db30 in a,(30h) ----read key code
002e fe80 cp 80h ------check if "ENTER" / "7" key pressed or not
0030 ca1714 jp z,1417h ------if yes then jump to 1417h,---the keyboard/display test program your asked me to check.
0033 c36800 jp 0068h-----if neither "ENTER" nor "7" pressed then jump to 0068h-----proceed regular power on procedures?
2.Subroutine 0FC2~0FD5h: 0FD2h db30 in a,(30h)
0fc2 3a1440 ld a,(4014h)
0fc5 fe02 cp 02h
0fc7 d8 ret c
0fc8 fe05 cp 05h
0fca d0 ret nc
0fcb 218740 ld hl,4087h
0fce 5f ld e,a
0fcf 1600 ld d,00h
0fd1 19 add hl,de
0fd2 db30 in a,(30h)
0fd4 77 ld (hl),a
0fd5 c9 ret
I will continue to analyze the ROM files.
Let me know if you find any thing wrong about my analysis.
Jack