View Single Post
Old 7th Oct 2020, 3:40 pm   #428
john_newcombe
Hexode
 
Join Date: Apr 2019
Location: Skipton, North Yorkshire, UK.
Posts: 252
Default Re: Gemini 80-Bus System

I liked the idea of trying RPM so I patched it to look for 6D47 rather than 4747 and it boots to the BIOS34 floppy image fine. However when I remove the disk, it reports no disk.

I guess what I am trying to sort out in my head is at what point does either SIMON or RPM actually check for the Winchester.

When I trace SIMON with a floppy configured and then without using xbeaver, what I see is the same interaction with the WD FDC but only the GET SENSE command with the Xebec. But no read of the data.

I have already determnined that the Xebec (or equivelent) needs to be present but I see no activity on ports E5 and E6, so I am assuming this is a hardware thing. Perhaps the presence of a Winchester is similar?

This is not a big deal its just I seem to have this need to understand it all.

The SIMON 4.1 MFB trace in each case is as follows:

Floppy loaded.

Code:
xBeaver a virtual Beaver computer system (Version 1.1)
Copyright John B. Hanson.  Based on
Yet Another Z80 Emulator version 1.10, Copyright 1995,1998 Frank D. Cringle.
xBeaver comes with ABSOLUTELY NO WARRANTY; for details
see the file "COPYING" in the distribution directory.
BUS io defined
Page 0x00 (Physical address 0x00000) allocated
Page 0x01 (Physical address 0x01000) allocated
Page 0x02 (Physical address 0x02000) allocated
Page 0x03 (Physical address 0x03000) allocated
Page 0x04 (Physical address 0x04000) allocated
Page 0x05 (Physical address 0x05000) allocated
Page 0x06 (Physical address 0x06000) allocated
Page 0x07 (Physical address 0x07000) allocated
Page 0x08 (Physical address 0x08000) allocated
Page 0x09 (Physical address 0x09000) allocated
Page 0x0a (Physical address 0x0a000) allocated
Page 0x0b (Physical address 0x0b000) allocated
Page 0x0c (Physical address 0x0c000) allocated
Page 0x0d (Physical address 0x0d000) allocated
Page 0x0e (Physical address 0x0e000) allocated
Page 0x0f (Physical address 0x0f000) allocated
Executing file gem925mfb.cfg
gem925mfb.cfg:if B echo Option B - load boot sector at 0000 for booting
gem925mfb.cfg:if E echo Option D - Include Debug console
gem925mfb.cfg:if E echo Option E - External Video Card
gem925mfb.cfg:if L echo Option L - Load CPM from file file
gem925mfb.cfg:if M echo Option M - Include GM833 Ram Disk
gem925mfb.cfg:if R echo Option R - Use boot rom (Simon)
Option R - Use boot rom (Simon)
gem925mfb.cfg:if T echo Option T - Trace io cycles
Option T - Trace io cycles
gem925mfb.cfg:if X echo Option X - Use MFB system (Work in progress)
Option X - Use MFB system (Work in progress)
gem925mfb.cfg:if E cpuclock 1
gem925mfb.cfg:if !E cpuclock 1
gem925mfb.cfg:if T board 0x0 intbus 0x0 0xe0 xrw trace
Installing board intbus (Internal Bus Bridge) at address 0x00
BUS trace defined
Bus extender z80 ports 0x00-0xdf (length 0xe0) with 16 bit addressing mapped to 0x00000000 on bus trace
gem925mfb.cfg:if T board 0xe0 intbus 0xe0 8 trw trace
Installing board intbus (Internal Bus Bridge) at address 0xe0
Bus extender z80 ports 0xe0-0xe7 (length 0x08) mapped to 0x000000e0-0x000000e7 (length 0x08) on bus trace
gem925mfb.cfg:if T board 0xe8 intbus 0xe8 0x17 xrw trace
Installing board intbus (Internal Bus Bridge) at address 0xe8
Bus extender z80 ports 0xe8-0xfe (length 0x17) with 16 bit addressing mapped to 0x000000e8 on bus trace
gem925mfb.cfg:if T bus trace
gem925mfb.cfg:board 0xfe gm813_mmu
Installing board gm813_mmu (Gemini GM813 Memory Management Unit) at address 0xfe
gem925mfb.cfg:if !E if X board 0xb0 gm832 Gemini_925_MFB green keyboard gemini
Installing board gm832 (Gemini GM832 Super Video Controller) at address 0xb0
gem925mfb.cfg:if !E if !X board 0xb0 gm832 Gemini_925 amber keyboard gemini
gem925mfb.cfg:if E board 0xb1 extbus 0x0a1 0x03 rw /dev/z80xbus
gem925mfb.cfg:if E output 0xb3 0
gem925mfb.cfg:if D board 0xa0 gm832 SysTrace green
gem925mfb.cfg:if D output 0xa1 0x1b 0x35
gem925mfb.cfg:board 0xb8 serial_8250 bvrnet ./NetworkDrive
Installing board serial_8250 (Serial Board (Intel 8250 Chip)) at address 0xb8
network directory for drive 0 set to "./NetworkDrive"
gem925mfb.cfg:if X   board 0xe0 gm849m_scsi  ./Disks/gem925mfb.dsk
Installing board gm849m_scsi (Gemini GM849 (MFB) Scsi Disk Controller) at address 0xe0
hard disk is file "./Disks/gem925mfb.dsk"
gem925mfb.cfg:if !X  board 0xe0 gm829m_scsi  ./Disks/gem925.dsk
gem925mfb.cfg:if M board 0xfb gm833 -maxtrack 0x3f
gem925mfb.cfg:board 0xe0 gm849_floppy -geometry T80.2.10.0.512 ./Disks/CPM_BIOS34_JN.1.GEMQDDS.IMG ./Disks/BIOS34_MFB_FW_BLANK.IMG
Installing board gm849_floppy (Gemini GM849 Floppy Disk Controller) at address 0xe0
Parsed file ./Disks/CPM_BIOS34_JN.1.GEMQDDS.IMG
    format = 80 cylinders 2 heads 10 sectors (first sector=0) of 512 bytes R/W
Parsed file ./Disks/BIOS34_MFB_FW_BLANK.IMG
    format = 80 cylinders 2 heads 10 sectors (first sector=0) of 512 bytes R/W
gem925mfb.cfg:if T bus io
gem925mfb.cfg:if L binload cb00 ./ROMs/cpm64w.bin
gem925mfb.cfg:if L byte 0 c3 00 eb
gem925mfb.cfg:if B if X binload 0000 ./ROMs/gemhdbt.bin
gem925mfb.cfg:if B if !X binload 0000 ./ROMs/gemhdbt.bin
gem925mfb.cfg:if R binload 0f000 ./ROMs/SIMON_V4.1_MFB.ROM
Successfully loaded 2048 bytes
gem925mfb.cfg:if R if X byte f031 6d 47
gem925mfb.cfg:if R if !X byte f031 47 47
gem925mfb.cfg:if R byte f310 76
Finished with gem925mfb.cfg


Internal bus write on bus trace address 000000e4 data = 01 - Drive select 1, why 1 ?
Unknown port ff (high bus 11) write data 11 - memory switch ?
Internal bus write on bus trace address 000000e5 data = 03 
Internal bus write on bus trace address 000000e0 data = d0
Internal bus read on bus trace address 000000e0 data = 00
Internal bus write on bus trace address 000000e4 data = 01
Internal bus write on bus trace address 000000e0 data = 0b

****************************************************************
This log is for a case where a floppy is loaded.
****************************************************************

Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 26
Internal bus read on bus trace address 000000e0 data = 26
Internal bus read on bus trace address 000000e0 data = 26
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Internal bus read on bus trace address 000000e0 data = 24
Floppy not loaded.

Code:
xBeaver a virtual Beaver computer system (Version 1.1)
Copyright John B. Hanson.  Based on
Yet Another Z80 Emulator version 1.10, Copyright 1995,1998 Frank D. Cringle.
xBeaver comes with ABSOLUTELY NO WARRANTY; for details
see the file "COPYING" in the distribution directory.
BUS io defined
Page 0x00 (Physical address 0x00000) allocated
Page 0x01 (Physical address 0x01000) allocated
Page 0x02 (Physical address 0x02000) allocated
Page 0x03 (Physical address 0x03000) allocated
Page 0x04 (Physical address 0x04000) allocated
Page 0x05 (Physical address 0x05000) allocated
Page 0x06 (Physical address 0x06000) allocated
Page 0x07 (Physical address 0x07000) allocated
Page 0x08 (Physical address 0x08000) allocated
Page 0x09 (Physical address 0x09000) allocated
Page 0x0a (Physical address 0x0a000) allocated
Page 0x0b (Physical address 0x0b000) allocated
Page 0x0c (Physical address 0x0c000) allocated
Page 0x0d (Physical address 0x0d000) allocated
Page 0x0e (Physical address 0x0e000) allocated
Page 0x0f (Physical address 0x0f000) allocated
Executing file gem925mfb.cfg
gem925mfb.cfg:if B echo Option B - load boot sector at 0000 for booting
gem925mfb.cfg:if E echo Option D - Include Debug console
gem925mfb.cfg:if E echo Option E - External Video Card
gem925mfb.cfg:if L echo Option L - Load CPM from file file
gem925mfb.cfg:if M echo Option M - Include GM833 Ram Disk
gem925mfb.cfg:if R echo Option R - Use boot rom (Simon)
Option R - Use boot rom (Simon)
gem925mfb.cfg:if T echo Option T - Trace io cycles
Option T - Trace io cycles
gem925mfb.cfg:if X echo Option X - Use MFB system (Work in progress)
Option X - Use MFB system (Work in progress)
gem925mfb.cfg:if E cpuclock 1
gem925mfb.cfg:if !E cpuclock 1
gem925mfb.cfg:if T board 0x0 intbus 0x0 0xe0 xrw trace
Installing board intbus (Internal Bus Bridge) at address 0x00
BUS trace defined
Bus extender z80 ports 0x00-0xdf (length 0xe0) with 16 bit addressing mapped to 0x00000000 on bus trace
gem925mfb.cfg:if T board 0xe0 intbus 0xe0 8 trw trace
Installing board intbus (Internal Bus Bridge) at address 0xe0
Bus extender z80 ports 0xe0-0xe7 (length 0x08) mapped to 0x000000e0-0x000000e7 (length 0x08) on bus trace
gem925mfb.cfg:if T board 0xe8 intbus 0xe8 0x17 xrw trace
Installing board intbus (Internal Bus Bridge) at address 0xe8
Bus extender z80 ports 0xe8-0xfe (length 0x17) with 16 bit addressing mapped to 0x000000e8 on bus trace
gem925mfb.cfg:if T bus trace
gem925mfb.cfg:board 0xfe gm813_mmu
Installing board gm813_mmu (Gemini GM813 Memory Management Unit) at address 0xfe
gem925mfb.cfg:if !E if X board 0xb0 gm832 Gemini_925_MFB green keyboard gemini
Installing board gm832 (Gemini GM832 Super Video Controller) at address 0xb0
gem925mfb.cfg:if !E if !X board 0xb0 gm832 Gemini_925 amber keyboard gemini
gem925mfb.cfg:if E board 0xb1 extbus 0x0a1 0x03 rw /dev/z80xbus
gem925mfb.cfg:if E output 0xb3 0
gem925mfb.cfg:if D board 0xa0 gm832 SysTrace green
gem925mfb.cfg:if D output 0xa1 0x1b 0x35
gem925mfb.cfg:board 0xb8 serial_8250 bvrnet ./NetworkDrive
Installing board serial_8250 (Serial Board (Intel 8250 Chip)) at address 0xb8
network directory for drive 0 set to "./NetworkDrive"
gem925mfb.cfg:if X   board 0xe0 gm849m_scsi  ./Disks/gem925mfb.dsk
Installing board gm849m_scsi (Gemini GM849 (MFB) Scsi Disk Controller) at address 0xe0
hard disk is file "./Disks/gem925mfb.dsk"
gem925mfb.cfg:if !X  board 0xe0 gm829m_scsi  ./Disks/gem925.dsk
gem925mfb.cfg:if M board 0xfb gm833 -maxtrack 0x3f
gem925mfb.cfg:board 0xe0 gm849_floppy -geometry T80.2.10.0.512
Installing board gm849_floppy (Gemini GM849 Floppy Disk Controller) at address 0xe0
gem925mfb.cfg:if T bus io
gem925mfb.cfg:if L binload cb00 ./ROMs/cpm64w.bin
gem925mfb.cfg:if L byte 0 c3 00 eb
gem925mfb.cfg:if B if X binload 0000 ./ROMs/gemhdbt.bin
gem925mfb.cfg:if B if !X binload 0000 ./ROMs/gemhdbt.bin
gem925mfb.cfg:if R binload 0f000 ./ROMs/SIMON_V4.1_MFB.ROM
Successfully loaded 2048 bytes
Finished with gem925mfb.cfg


Internal bus write on bus trace address 000000e4 data = 01
Unknown port ff (high bus 11) write data 11
Internal bus write on bus trace address 000000e5 data = 03
Internal bus write on bus trace address 000000e0 data = d0
Internal bus read on bus trace address 000000e0 data = 00
Internal bus write on bus trace address 000000e4 data = 01
Internal bus write on bus trace address 000000e0 data = 0b

****************************************************************
This log is for a case where NO floppy exists.
****************************************************************

Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
Internal bus read on bus trace address 000000e0 data = 00
john_newcombe is offline