Previous Thread
Next Thread
Print Thread
Page 1 of 17 1 2 3 16 17
Siemens PC-D #96883 11/09/14 04:19 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Intro:

The Siemens PC-D is another examples of the machines created in the transitional period of the mid 80s, when the final verdict on the future PC architecture had not yet been passed, and several manufacturers entered the market with their own interpretation of what a PC should look like.
The PC-D differs in some ways from IBM's machines and their clones, and so only specially modified software can be run. Siemens ensured that a lot of important software of the day could be executed - there were ports of MS-DOS, MS Word, MS Windows and some applications, DR GEM, Turbo Pascal and others.
The PC-D was also sold as a Unix workstation running Siemens' Sinix under the PC-X moniker.

Most of this stuff is already posted in the "Requirements" thread, but I've since redumped the BIOS and HD controller ROMS, and it's sorted and cross-linked.



The main differences between the PCD and regular PC clones are:

- 80186 CPU
- proprietary bus with horizontally stacked cards
- non-compatible graphics using the SCN2674 video chip that is also used in MAME's MPU4Video driver
- black and white graphics 640x350
- SCSI on board using Siemens' SM912 SCSI chip, the harddisk is then connected via an Omti 5100 SCSI <=> ST506 controller board
- WD 2791 Floppy disk controller (2793 according to Servicehandbuch p.27)
- Two V24/V11 serial interfaces
- RTC MC146818
- 720KB on 5,25" floppy disks (9 sectors, 80 tracks, 2 sides), ability to read 360K floppies. Later developments by Siemens aficionados extended this to 1.2MB HD disk support.
- 256KB, 512KB or 1024KB RAM with ca. 800KB available to user programs due to the non-IBM-architecture.
- (Part of) the BIOS is contained in the MS-DOS, every DOS version has a BIOS version as well.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96884 11/09/14 04:20 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Documentation:

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D%20Servicehandbuecher.zip

https://dl.dropboxusercontent.com/u/5541...0Anhang%202.rar

The documentation is in German, but I have translated important parts here:

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PCD%20translated.pdf

Pages quoted in the following posts are relative to the PDF files, not to the pagination of the original documents.

If specific information is needed, I can hunt for it smile


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96885 11/09/14 04:22 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Mainboard:

The BIOS dumps of the PC-D mainboard and the harddisk controller are identical between the two PC-D's I own, I have included the second archive here for completeness' sake.

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/Siemens%20PCD%20%231.rar

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/Siemens%20PCD%20%232.rar

Mainboard layout: Servicehandbuch Teil 1, p.9, p.70ff, p.184ff (=> PCD translated p.18ff)

RAM: Servicehandbuch Teil 1, p.188f (PCD translated p.22)

Physical location of connectors: Servicehandbuch Teil 1, p.35

Bus pinout: Servicehandbuch Teil 1, p.78f, p.195ff

DMA Channel properties: Praxisbuch, p. 4

Interrupt controller: Servicehandbuch Teil 1, p.27

Interrupt table: Praxisbuch, p.11f, Servicehandbuch Teil 1, p.222

Memory map: Praxisbuch, p.10, Servicehandbuch Teil 1, p.209 (=> PCD translated p.23)

RTC: Servicehandbuch Teil 1, p.193

Speaker: Servicehandbuch Teil 1, p.194

LED error display: Servicehandbuch Teil 1, p.2ff (=> PCD translated p.1f); p.62

Self test, function of RESET and DEBUG switches in the front panel: Servicehandbuch Teil 1, p.61 (=> PCD translated p.3), p.190f

Internal ROM monitor: Servicehandbuch Teil 1, p.66 (=> PCD translated p.6)

Serial ports: Servicehandbuch Teil 1, p.201


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96886 11/09/14 04:23 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Keyboard, Mouse and Video:

The keyboard is attached via a V11 serial interface and contains its own EPROM, it also houses the beeper.

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PC-D%20Keyboard.rar

Praxisbuch, p.9f, Servicehandbuch Teil 1, p.172ff (=> PCD translated p.14ff)

The display is controlled by the SCN2674 chip with 32KB of Display RAM
Servicehandbuch Teil 1, p.160 (PCD translated p.8)

Video memory map: Servicehandbuch Teil 1, p.162f, p.164ff (=> PCD translated p.10ff)

There's an Alpha mode and a Graphics mode: Servicehandbuch Teil 1, p.160

An 8041A on the Graphics card acts as a mouse controller: Servicehandbuch Teil 1, p.161 (=> PCD translated p.9f)

The dumps of the 8741AD's ROM are contained in the main archives of the "Mainboard" post"

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/scn2674_548307.pdf

Graphics Video: Servicehandbuch Teil 1, p.31, p.157 (PCD translated p.7), p.159,

Pinout of the Monitor (it's a BAS signal!) and Mouse Connector: Servicehandbuch Teil 1, p.83, p.141


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96887 11/09/14 04:24 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Floppies and Harddisks, Software:

Floppy Controller: Servicehandbuch Teil 1, p.211

Harddisk Error codes: Servicehandbuch Teil 1, p.5

Floppy drive jumper settings: Servicehandbuch Teil 1, p.117f

SCSI port: Servicehandbuch Teil 1, p.218ff

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/OMTI_5x00.pdf

Harddisk: BASF 6188 (360-4-18), Servicehandbuch Teil 1, p.29 or NEC D5126 (615-4-18), p.30; Servicehandbuch Teil 1, p.124

Harddisk controller: Servicehandbuch Teil 1, p.215ff

Some floppy images for testing:
https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/Siemens%20PC-D%20disks.rar

Boot process: Servicehandbuch Teil 1, p.64f (=> PCD translated p.4f)


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96899 11/10/14 04:08 PM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
Thank you. Do you have any info about the I/O ports it uses? The manual talks about a "Geräte-Steuer-Register" for example, but no info to be found.

Re: Siemens PC-D [Re: rfka01] #96903 11/10/14 06:07 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
There is a table in the Praxisbuch, p.12f that I've translated:

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PCD%20Translated%202.pdf

Are you looking for the addresses marked as HW in that table?


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96904 11/10/14 06:22 PM
Joined: Apr 2004
Posts: 1,554
J
judge Online Content
Very Senior Member
Online Content
Very Senior Member
J
Joined: Apr 2004
Posts: 1,554
I don't think Duke needs any translations wink

Re: Siemens PC-D [Re: rfka01] #96905 11/10/14 06:24 PM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
Those are just the memory addresses used by the BIOS. For example, the WD2793 seems to use I/O addresses 0xf900 to 0xf907 (+ possible mirrors).

Re: Siemens PC-D [Re: rfka01] #96906 11/10/14 06:39 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
@judge ... maybe others do wink
@Duke gotcha ... unfortunately I haven't spotted a handy compilation yet.



NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96911 11/11/14 04:46 AM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
I think the missing parts are described here:

"Eine genaue Beschreibung der Grundelektronik und deren Funktion
sind im Systemhandbuch (Best. Nr. A22441-A4430-X6-1-1B) zu finden."

Re: Siemens PC-D [Re: rfka01] #96914 11/11/14 08:54 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
I've asked around ... let's see what transpires.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96915 11/11/14 09:27 AM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
I've moved it to its own driver and removed it from pc.c, where it clearly doesn't belong: http://git.redump.net/mame/commit/?id=575d6ec0aa03ab0016c9f05abf4d5532e6f71b86


Re: Siemens PC-D [Re: rfka01] #96916 11/11/14 09:47 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Yup, I've seen it, thanks. I've got a running system - is there any way to extract the info you need by open heart surgery? smile


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96917 11/11/14 10:43 AM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
Sure, you could try and poke all I/O addresses and try to make sense of the data. A very long and error-prone process. Do you have the schematics maybe?

Re: Siemens PC-D [Re: rfka01] #96918 11/11/14 11:08 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
I'll have a look in one other publication I have(a training course), but afaik it's only a sort of flow chart.

In order to poke i/o I'd need to know what to look for ... I don't think I'm the right man for that.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96919 11/11/14 04:14 PM
Joined: Aug 2009
Posts: 1,140
Kale Offline
Very Senior Member
Offline
Very Senior Member
Joined: Aug 2009
Posts: 1,140
If in any way you have a BASIC (either built-in or in disk form) that's quite straight-forward, actually. It's just "POKE address,data" for write and "PEEK address" for read.

Re: Siemens PC-D [Re: rfka01] #96920 11/11/14 04:30 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Or use DOS debug which looks to be on the MSDOS211.TD0 floppy, the I and O commands. If you do poke IO avoid the FF00-FFFF range as that is where the 186 built-in peripherals are located.

Last edited by crazyc; 11/11/14 04:33 PM.
Re: Siemens PC-D [Re: rfka01] #96926 11/11/14 07:31 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
OK ... one thing the training course manual states is that there's NVRAM between F000 and F7FF.

As for the rest ... if anyone can give me an example what to try, I'll be more confident ... I can dump chunks of memory using debug, but beyond that, things are quite hazy.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96927 11/11/14 09:46 PM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
I'll add the NVRAM (the manual says its optional, but we might as well add it).

Unfortunately it's not as easy as reading a region of memory to figure out the I/O locations.

Re: Siemens PC-D [Re: rfka01] #96943 11/13/14 05:37 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Looks like I'm coming up empty handed with my requests for the missing Systemhandbuch frown
In the mean time I've looked at small system utilities that might tell someone versed in x86 code where they want to access hardware:

- crt.com switches between alpha and graphics mode and changes the bit-image-print-flag (whatever that is)
- hdinit.com is the harddisk formatter
- klickon/klickoff.com toggles the rather annoying keyboard klick from the beeper in the keyboard
- negativ/positiv.com toggles the screen between black on white and white on black letters
- video.com sets or cancels a screen saver (video time-out)
- set48tpi.com sets double stepping for the 96tpi drives

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PCD%20Utilities.rar


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96962 11/15/14 02:45 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
ip132 that is mentioned here http://www.synchrondata.com/pheaven/www/area35.htm is not happy on the PC-D because it's not IBM compatible ... but in one lucid moment the program's output mentions that there are serial ports on F9E0 and F9C0 ... does that make sense from what we know so far?



NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96963 11/15/14 03:40 PM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
Could be, the BIOS isn't running far enough to access those ports. FWIW it currently tries to read from f841 (pic status?), then reads in fb00 to fb4f, clears fb00 to fb0f and writes 0xff to fb01. Then loops playing around with fb81 and f941 (pics?). I haven't really debugged it yet. I have no experience with the i186, so it might need the peripheral callback hooking up too?

Re: Siemens PC-D [Re: rfka01] #96964 11/15/14 03:46 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Naw, don't bother with the peripheral callback unless the machine really needs it (if it moves around the chip select area, the leland arcade machines need it only because different games mapped the same hardware in different locations), the vast majority don't. The ip132 thing would probably look for 8250 serial ports so I don't know what it would think if it finds an 2661.

Edit: Definitely looks like there's a 2661 at 0xf9d0 so the others being at 0xc0 and 0xe0 seems quite possible.

Last edited by crazyc; 11/15/14 04:48 PM.
Re: Siemens PC-D [Re: rfka01] #96968 11/15/14 09:14 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
A few more tidbits from the Servicehandbuch:

F000H Either 8KB Chargen or 32KB framebuffer, determined by
F9A0H transferring 1 or 0 here switches (F940 according to another page)

F9B0H/F9B2H 8041 on graphics card, responsible for Mouse and Screen invert (maybe cross-check negativ.com/positiv.com?)

F980H-F9BFH graphics card I/O
F980H-F9E0H select signals for 2674 graphics chip

FB01H graphics card control, if EXTRDY-N is low, the graphcis card is present

p.162 of the Servicehandbuch seems to suggest that the system can alternate between RAM and VRAM access between F0000H and F7000H without disturbing the screen.


The keyboard contains an 8035 (romless 8048) that talks to one of the 2661's using 600 baud, no parity, 1 start/stop bit





NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96969 11/16/14 12:56 AM
Joined: Mar 2006
Posts: 1,042
L
Lord Nightmare Online Content
Very Senior Member
Online Content
Very Senior Member
L
Joined: Mar 2006
Posts: 1,042
The 8035 should have a rom next to it, is that dumped?

LN


"When life gives you zombies... *CHA-CHIK!* ...you make zombie-ade!"
Re: Siemens PC-D [Re: rfka01] #96970 11/16/14 01:46 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Yeah, check out the first link in the fourth post of this thread.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #96976 11/16/14 11:17 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Originally Posted By rfka01

F9A0H transferring 1 or 0 here switches (F940 according to another page)
Probably not 0xf940 as that is almost certainly the scsi controller while the master pic is at 0xf840. The loop reading 0xf941 reads the fdc first then sends what looks like a scsi command to 0xf940. It also looks for 0xaa55 (the boot sector signature) in the buffer.

Re: Siemens PC-D [Re: crazyc] #96988 11/20/14 05:07 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Originally Posted By crazyc
while the master pic is at 0xf840

Scratch that, master pic is at 0xf800 and slave is at 0xf820 and they are cascaded from 80186 int0 and int1 respectively (to be clear, the're both slaves). I don't know what is at 0xf840 but without it, 0xfb00 and the NMI line, it won't boot properly. I'm stuck.

Last edited by crazyc; 11/20/14 05:07 PM.
Re: Siemens PC-D [Re: rfka01] #97006 11/23/14 01:07 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Can you find out what's driving the diagnostic LEDs that are mentioned in the Servicehandbuch? Maybe that could tell you more.

I found the disks of the Test and Diagnostics System that is mentioned in the Servicehandbuch. I hadn't mentioned them before because they wouldn't boot, and I thought they'd be corrupted. Tonight the TDS came up fine, so I'm posting them here.

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PC-D%20TDS.zip

They are in a different format than regular PC-D disks.



It's always exciting to see additions to the PC-D driver mentioned in the SVN history - thanks folks!

Last edited by rfka01; 11/23/14 01:11 AM.

NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98164 02/09/15 06:46 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Carl, thanks for continuing to work on that one smile
I have the PC-D sitting next to me on the desk, so give me a shout if I can help.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98195 02/12/15 09:56 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841

Re: Siemens PC-D [Re: rfka01] #98196 02/12/15 10:09 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Wow, cool!
Immediately after "Test end" the floppy light comes on for a fraction of a second, then the HD light does the same, then the PC-D starts loading DOS from the harddisk.



NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98215 02/16/15 05:09 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841

My German is non-existent but Google says it's complaining about the keyboard. This message is from IO.SYS so the floppies are booting.

Re: Siemens PC-D [Re: rfka01] #98217 02/16/15 08:06 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
"Keyboard is not connected or cannot be used in PC-Mode" ... IIRC the keyboard is a system in its own right that has to be setup with the proper initialisation codes ...

... I'll dig up that information for you in the manuals.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98219 02/16/15 08:20 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
There is some info on the keyboard circuit starting from page 14 in this translation:

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PCD%20translated.pdf

I'll take a look if there's more.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98232 02/17/15 01:33 AM
Joined: Mar 2006
Posts: 1,042
L
Lord Nightmare Online Content
Very Senior Member
Online Content
Very Senior Member
L
Joined: Mar 2006
Posts: 1,042
Display is missing the rightmost column for every character (see M, w, and T)

LN


"When life gives you zombies... *CHA-CHIK!* ...you make zombie-ade!"
Re: Siemens PC-D [Re: rfka01] #98237 02/17/15 11:24 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Can you see if the crystal on the keyboard has a frequency marking on it? The picture isn't high enough resolution for me to tell and trying to guess the clock isn't going well.

Re: Siemens PC-D [Re: rfka01] #98238 02/17/15 11:40 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
The marking says "5.760 NDK 4Y"


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98371 02/25/15 03:23 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Yay!

Re: Siemens PC-D [Re: rfka01] #98376 02/25/15 08:01 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Congrats! And here's me away from home for the week ... but that gives me something to look forward to for the weekend.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98394 02/25/15 11:40 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841

Another platform we run Windows on.

Re: Siemens PC-D [Re: rfka01] #98395 02/26/15 02:24 AM
Joined: Mar 2001
Posts: 16,539
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,539
Nice!

Re: Siemens PC-D [Re: rfka01] #98398 02/26/15 07:44 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Absolutely great! And seeing that there's an OMTI 5100 in the works too ... there'll be more to throw at it than Windows smile


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98401 02/26/15 12:10 PM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
Awesome work! Though I really dislike our hacky and ugly SCSI interface.

Re: Siemens PC-D [Re: rfka01] #98402 02/26/15 12:50 PM
Joined: Mar 2001
Posts: 16,539
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,539
We have an elegant and non-hacky SCSI interface (nscsi*), but it isn't used much yet.

Re: Siemens PC-D [Re: rfka01] #98412 02/27/15 07:46 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
What happened to yesterday's commits? Everything between Wednesday evening and Friday morning is gone from the SVN history and the source (compile from current SVN still shows the keyboard error for the PCD driver)


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98413 02/27/15 07:56 AM
Joined: Feb 2004
Posts: 2,156
Vas Crabb Online Content
Very Senior Member
Online Content
Very Senior Member
Joined: Feb 2004
Posts: 2,156
Seriously, stop trying to use Subversion tools. It will make your life hell. Don't expect support if you keep making your own life hard.

Re: Siemens PC-D [Re: rfka01] #98414 02/27/15 08:05 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Vas, I had heard you already ... this is with latest GIT (gotta get used to the new term), pulled from the server with GitEye.

Nonetheless, if you check http://mame.dorando.at/svn/ yesterday's stuff is missing, and it's obviously missing in the current source as well, because the behaviour is still the one from post no. 98215.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98415 02/27/15 08:08 AM
Joined: Jun 2001
Posts: 46
O
Osso Offline
Member
Offline
Member
O
Joined: Jun 2001
Posts: 46
It seems to be there: https://github.com/mamedev/mame/commits/master
Check the crazyc commits.

Re: Siemens PC-D [Re: rfka01] #98416 02/27/15 08:24 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Thanks ... I'll try again when I get home.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98475 02/28/15 11:26 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Seeing a driver come to life is very exciting, thanks for the experience!

This disk image contains some test cases for the PCD driver

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PCD_TEST.TD0

I've filmed the PCD's responses to a few commands:

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PC-D%20Test%20%231.mp4

- The "Test End" beep is shorter on real hardware
- The disk boots into positive video mode (black on white)
- "klickon" does not switch on the key click in the emulation
- Reversi shows the graphics, but cannot be exited by Ctrl-C (looks like the Ctrl-key isn't mapped)
- The keyboard should be German (Qwertz), but is Qwerty
- "positiv" doesn't work
- The beeps while running the "simmy" game are too long
- The right shift key isn't mapped

- HDINIT and FDISK detect a harddisk (I've used 615-4-17 for a NEC D5126), but don't work on it.




NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #98477 02/28/15 11:43 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Originally Posted By rfka01

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PC-D%20Test%20%231.mp4

- The "Test End" beep is shorter on real hardware

It seems to play the beep until it loads a boot sector. If you boot your pcd from floppies, does it last longer?
Originally Posted By rfka01

- The disk boots into positive video mode (black on white)

The reverse video program writes a command to the 8741. It could be just done at a high level but it's more important IMO for the 8741 to work for mouse emulation.
Originally Posted By rfka01

- "klickon" does not switch on the key click in the emulation
Key click isn't connected. I haven't tried to make it work yet. Probably just an output on port 1.
Originally Posted By rfka01
- Reversi shows the graphics, but cannot be exited by Ctrl-C (looks like the Ctrl-key isn't mapped)

Ctrl is scan code 0. I'm not sure which row it's connected to (it really doesn't matter that much, it would just be good to get it right though).
Originally Posted By rfka01
- The keyboard should be German (Qwertz), but is Qwerty
Z is mapped to mame key Z so it should depend on how your host keyboard is set up or it can be changed in the menu. It would be a bad idea and very confusing to force Z to Y for everyone.
Originally Posted By rfka01
- "positiv" doesn't work
See above.
Originally Posted By rfka01
- The beeps while running the "simmy" game are too long
Not sure. Maybe the clock is wrong or the frame rate? (it's set to 50Hz but I think your manual translation said 66Hz?)
Originally Posted By rfka01
- The right shift key isn't mapped
Not sure which scan code. Maybe the same as left shift?

Originally Posted By rfka01
- HDINIT and FDISK detect a harddisk (I've used 615-4-17 for a NEC D5126), but don't work on it.
The work done on this is mostly untested yet.

Re: Siemens PC-D [Re: rfka01] #98482 03/01/15 12:23 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Quote:
It seems to play the beep until it loads a boot sector. If you boot your pcd from floppies, does it last longer?


In the video, I boot from floppy. The beep seems to have the same length whether I boot from Floppy or HD.

In this short audio file you can hear me hitting the power switch, this produces almost instantly a short beep, then the HD spins up, next is the "test end" beep, after DOS has loaded from the HD I type "klickon" and then press a key a few times before I let it autorepeat by keeping the key pressed.

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/pcd%20start%20klickon.mp3

The only reference for 66Hz I could find at first glance is screen refresh.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #99975 05/29/15 09:34 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Great to see the PCD benefit from the changes to the WD_FDC driver. Thanks as always!


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100523 07/12/15 05:03 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Got the barebone of a third PC-D ... the ROMs of my first two machines are identical, this one's different ...

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/Siemens%20PCD%20%233.rar


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100543 07/13/15 11:25 AM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
Mainboard is SYBAC S26361-D359 V2 GS too? Those new ROMs contain a bit more code, haven't looked at what exactly though. Monitor version is the same.

Re: Siemens PC-D [Re: rfka01] #100544 07/13/15 12:05 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Nope ... SYBAC S26361-D359 V3 GS4 ... I keep secretly hoping that I'll come across the PC-X and its Sinix some time ...


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100548 07/13/15 02:40 PM
Joined: May 2004
Posts: 904
D
Duke Online Content
Senior Member
Online Content
Senior Member
D
Joined: May 2004
Posts: 904
I've added it, thank you.

Re: Siemens PC-D [Re: rfka01] #100690 07/21/15 03:32 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Goodies! And totally unexpected ones at that.

The PC-X is a PC-D with an OMTI 5300 HD/Tape Streamer controller in place of the OMTI 5100 in the PC-D, which only has a HD connector. It runs Sinix.

I know one video showing a PC-X boot

https://www.youtube.com/watch?v=P0UQ-jrM_bw

but the guy (understandably) wouldn't dump the HD of his working machine, and he doesn't have the installation media.

I put out a call for help on de.comp.sys.unix for Sinix for the PC-D/X and was contacted by someone who knew someone who might ... you know those stories.

Turns out, the guy in question replied to my Email, still had original! installation disks and was willing to mail them out to me:



Not one, but two different versions laugh

Happily Sinix was distributed on Floppy disks, and not, as I had feared, on a boot disk and streamer tape.

It would be great to get the harddisk on the PC-D going, so we can try to install Sinix. Some sources say, the -X variant has a different BIOS from the -D, but we'll see smile


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100691 07/21/15 03:47 PM
Joined: Mar 2001
Posts: 16,539
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,539
That's pretty awesome smile

Re: Siemens PC-D [Re: rfka01] #100692 07/21/15 03:50 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
I'll make the images tonight ... hopefully the disks can still be read.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100693 07/21/15 04:08 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
If Sinix uses the mmu that could be a problem as there doesn't appear to be any docs (other than it's existence in the manual on page 1) about it.

Re: Siemens PC-D [Re: crazyc] #100695 07/21/15 05:31 PM
Joined: Oct 2006
Posts: 985
S
Stiletto Offline
Senior Member
Offline
Senior Member
S
Joined: Oct 2006
Posts: 985
Originally Posted By crazyc
If Sinix uses the mmu that could be a problem as there doesn't appear to be any docs (other than it's existence in the manual on page 1) about it.


Is the MMU a single chip? Off the shelf? or custom ASIC?

Re: Siemens PC-D [Re: rfka01] #100696 07/21/15 05:41 PM
Joined: Apr 2005
Posts: 564
Darkstar Online Content
Senior Member
Online Content
Senior Member
Joined: Apr 2005
Posts: 564
Do you have a KryoFlux or similar device? Full flux-level dumps of these disks would be great!

Re: Siemens PC-D [Re: rfka01] #100697 07/21/15 05:45 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Stiletto: No clue, the doc (AFAICT as it's in German) only shows the header on the mainboard where the mmu plugs in. It's a pin header so presumably it's a board not just a chip.

Re: Siemens PC-D [Re: rfka01] #100698 07/21/15 06:41 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Looks like the PC-X's characteristics were that they always came with the MMU, 1MB RAM and a harddisk. I haven't found out yet what type the MMU is.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100710 07/22/15 05:23 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Here are the images of the first two boxes and Teledisk files. I will attempt a Kryoflux dump later - what's the preferred format? Stream for preservation?

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/SINIX10.rar

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/SINIX12.rar


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100712 07/22/15 09:31 AM
Joined: Apr 2005
Posts: 564
Darkstar Online Content
Senior Member
Online Content
Senior Member
Joined: Apr 2005
Posts: 564
Yes, Stream format (one file for each track) is good since everything else can be re-created from these.

Re: Siemens PC-D [Re: rfka01] #100730 07/22/15 10:28 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Third archive of SINIX disks ... mainly copies, but nowhere else to be found smile

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/SNXADDON.rar


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100746 07/23/15 08:26 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
@Darkstar:

This is the first disk of the SINIX 1.0 distribution in Kryoflux Stream format. Could you please check if it's usable that way before I set out to read in all the other disks?

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/sinix10_kf.rar

13MB for a DS/QD disk "image" is quite something smile


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100755 07/24/15 04:00 PM
Joined: Apr 2005
Posts: 564
Darkstar Online Content
Senior Member
Online Content
Senior Member
Joined: Apr 2005
Posts: 564
I'm not entirely sure, normally doing the raw dump itself is pretty foolproof. I'm having trouble making any sense of the dumped disk though. It *looks* like MFM data but it just doesn't check out correctly. Especially that track 0 comes up as <unformatted> looks fishy. Is that the same floppy drive that you created the TD0 files with?

Re: Siemens PC-D [Re: rfka01] #100756 07/24/15 04:05 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Track 0 is FM.

Re: Siemens PC-D [Re: rfka01] #100765 07/24/15 09:36 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Yeah, the original SINIX disks are weird ... first track FM and 128 byte sectors, later 256 byte sectors and alternating interleave 1 vs. 3 IIRC between side 0 and 1 ... all courtesy to the Teledisk status.
All this shouldn't affect a flux dump, or should it?

Last edited by rfka01; 07/24/15 09:36 PM.

NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100766 07/25/15 01:34 AM
Joined: Mar 2001
Posts: 16,539
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,539
Right, flux dumps don't care.

Re: Siemens PC-D [Re: R. Belmont] #100767 07/25/15 06:53 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Originally Posted By R. Belmont
Right, flux dumps don't care.


Bastards! grin grin grin


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100803 07/26/15 10:37 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Here's where it's at:
Code:
':maincpu' (0D81F): mmu read 8800
':maincpu' (0E33F): mmu write 8000 0000
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0001
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0002
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0003
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0004
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0005
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0006
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0007
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0008
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0009
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 000a
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 000b
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 000c
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 000d
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 000e
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 000f
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0010
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0011
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0012
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0013
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0014
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0015
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0016
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0017
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0018
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0019
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 001a
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 001b
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 001c
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 001d
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 001e
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 001f
':maincpu' (0E33F): mmu write 8400 0000
':maincpu' (0E33F): mmu write 8408 0000
':maincpu' (0E33F): mmu write 8410 0000
':maincpu' (0E33F): mmu write 8418 0000
':maincpu' (0E33F): mmu write 8420 0000
':maincpu' (0E33F): mmu write 8428 0000
':maincpu' (0E33F): mmu write 8430 0000
':maincpu' (0E33F): mmu write 8438 0000
':maincpu' (0E33F): mmu write 8440 0000
':maincpu' (0E33F): mmu write 8448 0000
':maincpu' (0E33F): mmu write 8450 0000
':maincpu' (0E33F): mmu write 8458 0000
':maincpu' (0E33F): mmu write 8460 0000
':maincpu' (0E33F): mmu write 8468 0000
':maincpu' (0E33F): mmu write 8470 0000
':maincpu' (0E33F): mmu write 8478 0000
':maincpu' (0E33F): mmu write 8480 0000
':maincpu' (0E33F): mmu write 8488 0000
':maincpu' (0E33F): mmu write 8490 0000
':maincpu' (0E33F): mmu write 8498 0000
':maincpu' (0E33F): mmu write 84a0 0000
':maincpu' (0E33F): mmu write 84a8 0000
':maincpu' (0E33F): mmu write 84b0 0000
':maincpu' (0E33F): mmu write 84b8 0000
':maincpu' (0E33F): mmu write 84c0 0000
':maincpu' (0E33F): mmu write 84c8 0000
':maincpu' (0E33F): mmu write 84d0 0000
':maincpu' (0E33F): mmu write 84d8 0000
':maincpu' (0E33F): mmu write 84e0 0000
':maincpu' (0E33F): mmu write 84e8 0000
':maincpu' (0E33F): mmu write 84f0 0000
':maincpu' (0E33F): mmu write 84f8 0000
':maincpu' (0E33F): mmu write 8000 0000
':maincpu' (0E33F): mmu write 8400 0030
':maincpu' (0E33F): mmu write 8408 0830
':maincpu' (0E33F): mmu write 8410 1030
':maincpu' (0E33F): mmu write 8418 1830
':maincpu' (0E33F): mmu write 8420 2030
':maincpu' (0E33F): mmu write 8428 2830
':maincpu' (0E33F): mmu write 8430 3030
':maincpu' (0E33F): mmu write 8438 3830
':maincpu' (0E33F): mmu write 8440 4030
':maincpu' (0E33F): mmu write 8448 4830
':maincpu' (0E33F): mmu write 8450 5030
':maincpu' (0E33F): mmu write 8458 5830
':maincpu' (0E33F): mmu write 8460 6030
':maincpu' (0E33F): mmu write 8468 6830
':maincpu' (0E33F): mmu write 8470 7030
':maincpu' (0E33F): mmu write 8478 7830
':maincpu' (0E33F): mmu write 8480 8030
':maincpu' (0E33F): mmu write 8488 8830
':maincpu' (0E33F): mmu write 8490 9030
':maincpu' (0E33F): mmu write 8498 9830
':maincpu' (0E33F): mmu write 84a0 a030
':maincpu' (0E33F): mmu write 84a8 a830
':maincpu' (0E33F): mmu write 84b0 b030
':maincpu' (0E33F): mmu write 84b8 b830
':maincpu' (0E33F): mmu write 84c0 c030
':maincpu' (0E33F): mmu write 84c8 c830
':maincpu' (0E33F): mmu write 84d0 d030
':maincpu' (0E33F): mmu write 8000 0001
':maincpu' (0E33F): mmu write 8400 d820
':maincpu' (0E33F): mmu write 8408 e020
':maincpu' (0E33F): mmu write 8410 e820
':maincpu' (0E33F): mmu write 8418 f020
':maincpu' (0E33F): mmu write 8420 f820
':maincpu' (0E33F): mmu write 8428 0021
':maincpu' (0E33F): mmu write 8430 0821
':maincpu' (0E33F): mmu write 8438 1021
':maincpu' (0E33F): mmu write 8440 1821
':maincpu' (0E33F): mmu write 8448 2021
':maincpu' (0E33F): mmu write 8450 2821
':maincpu' (0E33F): mmu write 8458 3021
':maincpu' (0E33F): mmu write 8460 3821
':maincpu' (0E33F): mmu write 8468 4021
':maincpu' (0E33F): mmu write 8470 4821
':maincpu' (0E33F): mmu write 8478 5021
':maincpu' (0E33F): mmu write 8480 5821
':maincpu' (0E33F): mmu write 8488 6021
':maincpu' (0E33F): mmu write 8490 6821
':maincpu' (0E33F): mmu write 8498 7021
':maincpu' (0E33F): mmu write 84a0 7821
':maincpu' (0E33F): mmu write 84a8 8021
':maincpu' (0E33F): mmu write 84b0 8821
':maincpu' (0E33F): mmu write 84b8 9021
':maincpu' (0E33F): mmu write 84c0 9821
':maincpu' (0E33F): mmu write 84c8 a021
':maincpu' (0E33F): mmu write 84d0 a821
':maincpu' (0E33F): mmu write 84d8 b021
':maincpu' (0E33F): mmu write 84e0 b821
':maincpu' (0E33F): mmu write 84e8 c021
':maincpu' (0E33F): mmu write 84f0 c821
':maincpu' (0E33F): mmu write 84f8 d021
':maincpu' (0E33F): mmu write 8000 0002
':maincpu' (0E33F): mmu write 8500 d821
':maincpu' (0E33F): mmu write 8508 e021
':maincpu' (0E33F): mmu write 8510 e821
':maincpu' (0E33F): mmu write 8518 f021
':maincpu' (0E33F): mmu write 8520 f821
':maincpu' (0E33F): mmu write 8528 0022
':maincpu' (0E33F): mmu write 8530 0822
':maincpu' (0E33F): mmu write 8538 1022
':maincpu' (0E33F): mmu write 8540 1822
':maincpu' (0E33F): mmu write 8548 2022
':maincpu' (0E33F): mmu write 8550 2822
':maincpu' (0E33F): mmu write 8000 0004
':maincpu' (0E33F): mmu write 8400 0020
':maincpu' (0E33F): mmu write 8410 1020
':maincpu' (0E33F): mmu write 8000 0008
':maincpu' (0E33F): mmu write 8400 0020
':maincpu' (0E33F): mmu write 8410 1020
':maincpu' (0E33F): mmu write 8000 000c
':maincpu' (0E33F): mmu write 8400 0020
':maincpu' (0E33F): mmu write 8410 1020
':maincpu' (0E33F): mmu write 8000 0010
':maincpu' (0E33F): mmu write 8400 0020
':maincpu' (0E33F): mmu write 8410 1020
':maincpu' (0E33F): mmu write 8000 0014
':maincpu' (0E33F): mmu write 8400 0020
':maincpu' (0E33F): mmu write 8410 1020
':maincpu' (0E33F): mmu write 8000 0018
':maincpu' (0E33F): mmu write 8400 0020
':maincpu' (0E33F): mmu write 8410 1020
':maincpu' (0E33F): mmu write 8000 001c
':maincpu' (0E33F): mmu write 8400 0020
':maincpu' (0E33F): mmu write 8410 1020
':maincpu' (0103F): mmu write 8000 0020


The last write is called from 0d80:0027 it returns to 1000:002c by directly changing the return segment to 1000 which would suggest the mmu is enabled by bit 5 of 8000. Anyone have any ideas?

Re: Siemens PC-D [Re: rfka01] #100820 07/27/15 05:52 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Here are the Kryoflux dumps of the Sinix disks:

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/Sinix/sinix10_kf.rar

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/Sinix/sinix12_kf.rar

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/Sinix/snxaddon_kf.rar

I've updated the archives with the Teledisk dumps from a few posts back with scans of the disks in their sleeves which show the labels.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100822 07/27/15 08:11 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
I was sent pictures of a PC-X mainboard and auxiliary boards.

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PC-X%20MR.rar

Maybe the MMU can be identified.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #100824 07/27/15 10:45 PM
Joined: Apr 2005
Posts: 564
Darkstar Online Content
Senior Member
Online Content
Senior Member
Joined: Apr 2005
Posts: 564
Thanks for the KryoFlux dumps! KryoFlux's DTC.exe can't really handle these but from a quick look with a cobbled-up FM/MFM decoder it seems like they're fine.

Re: Siemens PC-D [Re: rfka01] #101008 08/06/15 02:24 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
So I get this written to a port:
Code:
SIEMENS 80186 SINIX

COPYRIGHT (c) 1984 BY SIEMENS AG

Size of free memory = 830 Kbyte

Computername: sie001, Version: 1.2, Release: 25.Feb.1987


Unfortunately it's the wrong port and worse it's the video controller config port. At least it's booting.

Re: Siemens PC-D [Re: rfka01] #101016 08/06/15 08:27 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Wow! Great progress, thanks!


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101017 08/06/15 08:30 PM
Joined: Mar 2001
Posts: 16,539
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,539
Maybe the MMU remaps the I/O space in addition to memory?

Re: Siemens PC-D [Re: rfka01] #101224 08/20/15 02:28 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841

So this is the best I can do for now. It's not remapping because it starts in the bootloader before the MMU is even enabled. My only guess is that the graphics board on the PC-X is different from the one in the PC-D. If you look at the pictures that rfka01 posted of the PC-X the graphics board has an 8031 which the PC-D has an 8047. It also has an extra ROM chip. Maybe the 8031 presents a terminal like interface and can write directly to the VRAM and the extra ROM is a character ROM instead of RAM (the tech manual says this is an option).

Re: Siemens PC-D [Re: rfka01] #101225 08/20/15 06:32 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
It's alive smile ... that's the main thing! Once again, thanks ... chances are good I'll get BIOS files from a real PC-X some time during autumn, I am sure your work now is a great basis for that.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101230 08/20/15 07:50 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
I'd be surprised if the BIOS ROMs are different as the PC-D ones have the MMU tests. The graphics ROMs are the ones of real interest for me.

Re: Siemens PC-D [Re: rfka01] #101361 08/29/15 10:27 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Axel, who I've been in contact with about the PC-X, documented the disassembly of his machine and put the ROMs online:

http://www.geekdot.com/siemens-pc-x/

Thanks to another contributor!


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101362 08/29/15 10:36 PM
Joined: Mar 2001
Posts: 16,539
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,539
Awesome!

Re: Siemens PC-D [Re: rfka01] #101533 09/09/15 01:47 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Got it.

Need to figure out how the attributes select the line drawing characters.

Edit:

Last edited by crazyc; 09/09/15 05:26 PM.
Re: Siemens PC-D [Re: rfka01] #101535 09/09/15 02:17 PM
Joined: Mar 2001
Posts: 16,539
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,539
Ooh, nice smile

Re: Siemens PC-D [Re: crazyc] #101543 09/09/15 07:37 PM
Joined: Sep 2015
Posts: 3
G
Geekdot Offline
Member
Offline
Member
G
Joined: Sep 2015
Posts: 3
CrazyC, you rock! cool
Need to clone the repo ASAP. Is it committed already?

Cheers, Axel

Re: Siemens PC-D [Re: rfka01] #101544 09/09/15 07:48 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Still working on the keyboard. It's connected to the 8031 serial port (Which is odd. I guess they really wanted it to be a terminal on a card.) rather than the mc2661 as on the PCD. Once that's done I'll commit it but the HDD still doesn't work either so it won't install yet.

Re: Siemens PC-D [Re: rfka01] #101562 09/12/15 06:17 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Great work on the PC-X ... and good to see Axel "on board".

A few finds ... I had wrongly assumed that the PC-X used the OMTI 5300 MFM hard disk controller (which has a connector for a tape streamer as opposed to the OMTI 5100) ... Axel's PC-X uses a DTC520B. Now I suddenly wasn't sure if I had imagined mention of the 5300, but it's there ... in the Servicehandbuch Teil 1, page 217 relative to the PDF.

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D%20Servicehandbuecher.zip

I'm still baffled by the beep after the "Test End" message, which should be quite short.

Servicehandbuch Teil 1, page 194 says that the loudspeaker is driven directly by Timer 1 of the 80816 (if I read the source right, that's implemented), and that "to help switching on and off of the speaker, one bit of the Device Control Register is used ... Bit D5 = 0 switches the speaker off, Bit D5 = 1 switches it on"

There's also a sort of beeper on the keyboard that can produce key clicks and beeps (duh!) ... cf. page 174.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101563 09/12/15 06:48 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
No worries because the OMTI and the DTC are compatible. I've almost got it formatting but it's trying to do some geometry detection as SINIX appears to support 9 disk types.

Re: Siemens PC-D [Re: rfka01] #101564 09/12/15 08:48 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Nice ... the DOS HDINIT harddisk preparation utility has a list of drive types it recognizes (and I think expects as parameters at the beginning of its binary ...
Code:
.D5126B6188N5126D5146N5146M1303M1323M1325RO352RO202RO204R202EF2241F2242F2243MI522TM755X1140CDC51QU540ST251DUMMY.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101565 09/13/15 02:53 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Code:
306,   4,  17, 512
612,   4,  17, 512
640,   6,  17, 512
360,   4,  17, 512
640,   2,  17, 512
830,   5,  17, 512
1022,  8,  17, 512
830,   6,  17, 512

Here's the list from the sinix kernel. It also supports 1024 Bps at 9 sectors per track. Don't know about the 9th, the formatting program says there are 9.

Last edited by crazyc; 09/13/15 02:55 AM.
Re: Siemens PC-D [Re: rfka01] #101566 09/13/15 08:51 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Right,I've identified those drives from the HDINIT list ... second column is what the utility actually expects:


D5126 NEC 5126 612-4-17
B6188 BASF 6188 360-4-17
N5126
D5146 NEC D5146 615-8-18
N5146
M1303 Micropolis 1303 830-5-17
M1323 Micropolis 1323 1024-4-17
M1325 Micropolis 1325 1024-8-17
RO352 Rodime RO352 306-4-17
RO202 Rodime RO202 321-4-17
RO204 Rodime RO204 320-8-17
R202E Rodime RO202E 640-4-17
F2241 Fujitsu M2241AS 754-4-17
F2242 Fujitsu M2242AS 754-7-17
F2243 Fujitsu M2243AS,R or T? ... they have different parameters
MI522 Miniscribe MR522 612-4-17
TM755 Tandon TM755 981-5-17
X1140 Maxtor XT1140 918-15-17
CDC51
QU540 Quantum Q520 512-8-17
ST251 Seagate ST251 820-6-17

Last edited by rfka01; 09/13/15 02:49 PM.

NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101569 09/13/15 03:46 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Second try ... system wouldn't let me edit the last post

The second column of drive parameters is now taken from the HDINIT executable ... notable differences are with the NEC drives.


D5126 NEC D5126 615-4-17 568-4-17
B6188 BASF 6188 360-4-17 360-4-17
N5126 =D5126
D5146 NEC D5146 615-8-18 568-8-17
N5146 =D5146
M1303 Micropolis 1303 830-5-17 830-5-17
M1323 Micropolis 1323 1024-4-17 1024-4-17
M1325 Micropolis 1325 1024-8-17 1024-8-17
RO352 Rodime RO352 306-4-17 306-4-17
RO202 Rodime RO202 321-4-17 320-4-17
RO204 Rodime RO204 320-8-17 320-8-17
R202E Rodime RO202E 640-4-17 640-4-17
F2241 Fujitsu M2241AS 754-4-17 754-4-17
F2242 Fujitsu M2242AS 754-7-17 754-7-17
F2243 Fujitsu M2243AS 754-11-17 754-11-17
MI522 Mitsubishi MR522 612-4-17 612-4-17
TM755 Tandon TM755 981-5-17 981-5-17
X1140 Maxtor XT1140 918-15-17 918-15-17
CDC51 CDC 94205-51 989-5-17 989-5-17
QU540 Quantum Q540 512-8-17 512-8-17
ST251 Seagate ST251 820-6-17 820-6-17


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101572 09/14/15 01:38 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841



The sinix image in inverted in the video. Still am not sure how that works though. The video also shows the default user is "admin", I don't know what the password is though.

Last edited by crazyc; 09/14/15 01:41 AM.
Re: Siemens PC-D [Re: rfka01] #101573 09/14/15 07:29 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Great!

Found two relevant entries for inverse video in the Systemhandbuch Teil 1:

p.158 shows a simplified diagram of the video circuit ... a "inverse" signal is coming out of the 8041A

p.106 the TDS (test and diagnostics system) disks have a test for the function of inverse video


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: crazyc] #101575 09/14/15 12:25 PM
Joined: Sep 2015
Posts: 3
G
Geekdot Offline
Member
Offline
Member
G
Joined: Sep 2015
Posts: 3
Originally Posted By crazyc

The video also shows the default user is "admin", I don't know what the password is though.


IIRC there is no passwd set for admin/root. I also have a howto for circumvent Sinix 1.x passwords...but it's at home and I'm having bad weather fun in Denmark right now. Will Be back on Thursday and have a look...

Cheers, Axel

Re: Siemens PC-D [Re: rfka01] #101576 09/14/15 01:57 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Stefan, the guy who's sent me the SINIX disks for imaging, also remembers that there's initially no password set (just press ENTER) on a SINIX installation.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101577 09/14/15 02:00 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
If I try to login as root or admin without a password it says "Falsche Angaben." Looking into /etc/passwd both have the same hash "cHUkyKx8z6QP." which isn't an empty password. Editing the disk image to replace the password with a blank salted DES hash does work though.

Edit: I don't know what happened then to cause a password to be set then. It was all in German so it's possible I did something wrong.

Last edited by crazyc; 09/14/15 02:02 PM.
Re: Siemens PC-D [Re: rfka01] #101578 09/14/15 06:32 PM
Joined: Oct 2014
Posts: 11
T
Tauwasser Offline
Member
Offline
Member
T
Joined: Oct 2014
Posts: 11
The password for that hash is "siemens" according to http://dmr.ath.cx/misc/pwd/.

EDIT: Just to be clear, the site does not reverse map hashes to passwords. "siemens" was merely my third guess and I verified it using the website.

cYa,

Tauwasser

Re: Siemens PC-D [Re: rfka01] #101581 09/15/15 01:20 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
crazyc, could you please share the combination of Sinix version, BIOS version, MMU version, chd/chs size and bootdisk you used ... I've tried various combinations to launch the sinie0/siniu0 disks, but the formatting process dies down every time, and the emulated system shuts down.

Great experience though!


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101583 09/15/15 01:43 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Sinix 1.0 and the appropriate MMU setting (which is really a hack, there should be a io port to configure the MMU behavior but I couldn't find it) and 306,4,9,1024 c,h,s,Bps. I thought I made the omti emulation flexible enough to support any geometry but there could be issues. What geometry are you trying to use?

Re: Siemens PC-D [Re: rfka01] #101584 09/15/15 02:05 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
I tried 306-4-17, 820-6-17 and 615-4-17, but didn't specify the sector size when I created the chds.

Anyway, your parameters seem to be working ... more experiments in the morning smile

Thanks for your help!


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101585 09/15/15 01:56 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Looks like 306-4-9-1024 is the only set of parameters that works for me ... even on 306-4-17-512 the Sinix complains that it's running out of compensation tracks.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101586 09/15/15 03:14 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
It works if you change the default in omti5100.c to 18 spt which contradicts the datasheet and the specs for most of the drives of the era. So I don't know what is going on.

Re: Siemens PC-D [Re: rfka01] #101592 09/15/15 09:43 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Maybe some hickup on my end although I started from a fresh git copy ... 306-4-9-1024 works fine, the 17 sector formats don't ...

btw ... does the PC-D side also benefit from the improvements (OMTI, inverse video)?


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101594 09/16/15 12:00 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
It'll access the disk now but I don't know how to prep it. The pcd reverse video requires the 8741 to work so not yet.

Re: Siemens PC-D [Re: rfka01] #101595 09/16/15 06:01 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
I'll give it a shot later. I have prepared a disk image with a collection of all the different HDINIT versions.

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/pcd_collection.mfi


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101597 09/16/15 08:36 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
For easy experimenting, I created three harddisk images each of the following types:

Rodime RO352 306-4-17-512
Micropolis M1303 830-5-17-512
Seagate ST251 820-6-17-512
BASF B6188 360-4-17-512
NEC D5126 615-4-17-512
NEC D5126 568-4-17-512 (as specified by the HDINIT 4.25U utility)
Mitsubishi MR522 612-4-17-512


https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/PCD-X%20chd%20harddisk%20images.rar

@Tauwasser ... thanks for your research on the password, "siemens" was spot on

Last edited by rfka01; 09/16/15 08:50 PM.

NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101599 09/16/15 09:47 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
PC-D and PC-X stil have problems with the 512 Byte/Sector images ... the PC-D now recognizes the presence of a harddisk, but either goes through the motions marking each track invalid or complaining about a defective controller and/or harddisk. The PC-X goes through all tracks, marking them as defective and running out of spare tracks smile







P.S. The pics will be up soon, Dropbox is not syncing atm.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101600 09/16/15 09:53 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Try making them 18 sector tracks.

Re: Siemens PC-D [Re: rfka01] #101601 09/16/15 11:09 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Thanks, mistake on my part ... I thought you had to change to 18 spt in the source to make it recognize 17 spt images.

Still no luck with the PC-D, but the PC-X now formats a 306-4-18-512 image nicely with Sinix 1.2 ... and even boots from the harddisk after the initial stage - with a 1024 byte/sector image it would hang afterwards.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101602 09/16/15 11:16 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
I can't figure out how to use HDINIT. What does it expect on its command line?

Edit: It's "HDINIT RO352" for the Rodime. Anyway, it works now.

Last edited by crazyc; 09/17/15 02:43 AM.
Re: Siemens PC-D [Re: rfka01] #101604 09/17/15 05:56 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Yeah, from what I can gather from the HDINIT binaries, the 2.xx versions take no parameters, for the 4.25 versions you have to add one of the drive types it accepts as a parameter, just as you described.

Testing later, much excitement, very SCSI.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101647 09/19/15 06:43 PM
Joined: Sep 2015
Posts: 3
G
Geekdot Offline
Member
Offline
Member
G
Joined: Sep 2015
Posts: 3
Guys, you still rock ;-)
Just in case, I've updated my PC-X page with some tips about gaining root permissions on an existing installation of SINIX and im/exporting data via 360KB DOSFloppy ('trados').

http://www.geekdot.com/siemens-pc-x/ (at the bottom)

Cheers, Axel

Re: Siemens PC-D [Re: rfka01] #101648 09/19/15 07:35 PM
Joined: Mar 2001
Posts: 16,539
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,539
SCSI2SD, which is here, has been pretty active updating their firmware to support new hardware, most recently the E-mu EMAX sampler. The list of known working devices at the bottom of the page is pretty impressive - it even supports the super-oddball 1280 byte sectors (!) used by the Symbolics Lisp Machine.

Re: Siemens PC-D [Re: rfka01] #101660 09/20/15 08:37 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
The emulation works very well! I was able to (almost) restore two harddisk backups ... it would be great to have ALT and CTRL keys ... and the mouse smile ... but at least on the PC-D that requires more 8041 gymnastics IIRC smile

Things like NC and XTPRO are kind of hard to use because of a missing cursor highlight:



vs.



and



vs.



The clock does funny things too smile


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101666 09/20/15 01:37 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Originally Posted By rfka01

The clock does funny things too smile


This is a little weird as it's inited in BCD mode (by MESS) but read in binary mode. A flag might have to be added to the RTC emulation that tells it to init the clock as binary.

Re: Siemens PC-D [Re: rfka01] #101670 09/20/15 10:21 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
The changes are great, now NC is fully usable.

What's strange is that for GEM the contrasts seem to be inverted in the emulation, cf. this (admittedly shitty) video of the PC-D, starting GEM and switching between positive and negative video modes.

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/pc-d_gem.mp4

I've tried to assign the "up left" key in the middle of the directions pad to HOME/POS1 (in GEM it confirms the selection of a menu item, in Word it moves the cursor back to the start of the text (not the line)), but the key does not perform the intended action in the emulation.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101671 09/21/15 01:05 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Keys are fixed. The video is 404'd but presumably the inversion is the same as the text mode and controlled by the 8741.

Re: Siemens PC-D [Re: rfka01] #101753 09/26/15 07:51 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Here are two harddisk images of my machines, one focuses primarily on GEM, the other one on Windows (2.1). The Windows machine is also one of my biggest emulation/preservation blunders ... I backed up my uncle's PC-D (which has been scrapped in the meantime *aargh*), but didn't create a boot disk.
So for the moment, the disk image boots DOS 3.1. I still hope that some unlabeled floppy in my basement boots DOS 3.2 on the PC-D ...

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/b6188-pcd-gem.rar

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/b6188-pcd-gem.rar


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101755 09/26/15 11:02 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Both links are the same.

Re: Siemens PC-D [Re: rfka01] #101757 09/27/15 06:35 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Thanks for the info, my dropbox is acting up at the moment.

https://dl.dropboxusercontent.com/u/55419307/Siemens%20PC-D/mi522-pcd-win.rar


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101930 10/07/15 08:52 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
@crazyc, the level of accuracy you're reaching is truly amazing - thank you!!!

On the real PC-D represented by the "b6188-pcd-gem" harddisk image, there is a copy of Turbo Pascal 3.0 and a PC-D graphics library.

The PC-D tries to load Turbo Pascal, but then throws an NMI:



This is its normal behaviour for programs that are expecting features from a "real" IBM PC. Confirm with "J" twice, and the PC-D loads Turbo. If you press "N" it will reboot.



There is something weird going on on the real PC-D as well, as I cannot edit a file - the text is hidden behind a grey screen, but I can move the cursor around.
"w" loads the work file - in this case a graphics demo from the graphics library in c:\tp_pcd\circle.dem
"r" compiles and runs the demo, but not before ...



another nmi warns us (twice) that something is not quite right



Success!

The emulated PC-D simply dies when you load turbo.com, regardless of the screen configuration in tinst.com (which runs fine).


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101933 10/07/15 10:05 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Well, here you go. No idea why it's only drawing on half the screen though.

Re: Siemens PC-D [Re: rfka01] #101951 10/08/15 07:08 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077


Pac must have eaten half of your screen then smile

When even the errors get emulated correctly, the emulation must be great!


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #101956 10/08/15 11:51 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Not quite correctly. The IP is different maybe because the CPU executes the next instruction before taking the NMI and "SPEICHER-SEGMENT" is the contents of port 0xf842 and I'm not sure what it is (possibly the high 8 bits of the faulting address?).

Re: Siemens PC-D [Re: rfka01] #101962 10/09/15 06:36 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
The major difference between the two machines is the installed RAM ... my real PC-D has 1MB ... CHKDSK shows 917504 Bytes RAM, 852000 Bytes free, the emulated PC-D has only 512K ... they came in 256K, 512K and 1MB configurations.

Running the emulation and the real hardware side by side (the emulation is a tad quicker in compiling the graphics demo) the parameters come out like this (circle.dem as above, compiling to memory and running from inside TP):

Event/ MAME/ Siemens
1st NMI
Speicher-Segment FF/ 00
IP 05C5/ 05C7
SS 7000/ D000
AX 0000/ 00FC
Flag: F046 1111 0000 0100 0110/ F086 1111 0000 1000 0110

2nd NMI
Speicher-Segment FF/ 00
IP 05C9/ 02CB
SS 7000/ D000
SP FFF2/ FFF4
AX 0000/ 00FC
Flags differ as above

3rd NMI
Speicher-Segment FF/ 00
IP 05C5/ 05C7
SS 7000/ D000
SP FFF2/ FFF2
AX 0000/ 0000
DX 7000/ 0000
Flags F082 1111 0000 1000 0010/ Flags F086 1111 0000 1000 0110

4th NMI
Speicher-Segment FF/ 00
IP 05C9/ 02CB
SS 7000/ D000
SP FFF2/ FFF4
AX 0000/ 00FC
DX 7000/ D000
Flags F046 1111 0000 0100 0110/ F086 1111 0000 1000 0110

Ah yes, and there's a pathetic beep from the keyboard beeper (same as when the keyboard starts repeating) when the NMI is thrown smile

Last edited by rfka01; 10/09/15 07:00 PM.

NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #102067 10/18/15 03:31 PM
Joined: Oct 2015
Posts: 3
H
Heydude Offline
Member
Offline
Member
H
Joined: Oct 2015
Posts: 3
Does anybody of the Siemens experts have a disk image copy of a MS-DOS version above 2.11 for a Siemens PC16-05, PC16-11 or PC16-20 ? I have the hope that these MS-DOS versions will fit also for a Siemens PG-685 I own (I have a MS-DOS 2.11 for the PG-685, but because of PalmZIP I would prefer a newer DOS-Version)...

Last edited by Heydude; 10/18/15 03:32 PM.
Re: Siemens PC-D [Re: rfka01] #102070 10/18/15 04:44 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
@Heydude, the PC16-05 is a bog standard XT compatible (it has a Multitech PC/700 mainboard)

http://messui.the-chronicles.org/comp/multitech.pdf

Any generic DOS version should work on the -05.

The -11 is a different beast with a different bus architecture, I can't help you with that.

This archive https://dl.dropboxusercontent.com/u/55419307/Siemens%20Sicomp%20PC16-05.rar contains ROM dumps and photos of my PC16-05 as well as a bootdisk created from the DOS 3.3 on its harddisk.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #102176 10/22/15 06:30 PM
Joined: Oct 2015
Posts: 3
H
Heydude Offline
Member
Offline
Member
H
Joined: Oct 2015
Posts: 3
Uh oh ... if it's standard XT compatible hardware, it will not really help, because of the non-standard PG-685 hardware ... so PC16-11 and may be PC16-20 is the key (because these are definitely non-standard...).

Re: Siemens PC-D [Re: rfka01] #102183 10/22/15 10:01 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
It would be great to have the PG-685 included, so if you can contribute ROM dumps, disk dumps, photos and documentation, you're most welcome! I'd love to see another Siemens machine added, after all a lot of Siemens PCs were built in my hometown of Augsburg (dunno about the PG-685 though).


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #102220 10/25/15 02:21 PM
Joined: Oct 2015
Posts: 3
H
Heydude Offline
Member
Offline
Member
H
Joined: Oct 2015
Posts: 3
Here's the Siemens PG-685 MS-DOS 2.11 disk image (sector by sector, no header nor any compression in image file itself).
I hate this, if someone uses a special software for making raw disk image copies but it's not necessary (e.g. for MS-DOS disks).
If "rawwrite for Windows" is not available, use my self written DOS utility for restoring the image.

http://www.z80.eu/downloads/211PG685.zip

DOS utility using BIOS interrupts writing disk sectors:
http://www.z80.eu/downloads/disktool.zip

Re: Siemens PC-D [Re: rfka01] #107528 10/02/16 11:04 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Revisiting the PC-D driver as I got hold of a collection of disks: If you install a harddisk from scratch using an original bootdisk, there are two mandatory reboots: One after the low level format using HDINIT, another after creating a partition in FDISK.

Both times, the reboot ends in MAME only showing a cursor in the left top corner (same after a reboot using F3), a Shift-F3 reboot is needed to proceed.

I don't remember this behaviour after the driver was becoming functional, so maybe it's a regression.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #107533 10/02/16 10:02 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
There's definitely something broken. An old installation of Sinix 1.2 wouldn't boot on the PC-X driver, and while a new installation copies all disks to the harddisk, after the reboot, error messages (the NMI ones you can see in the screenshot) quickly run across the screen, until the monitor is started.



NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #107535 10/02/16 10:57 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Try reverting https://github.com/mamedev/mame/commit/3bb6c2b58656f8afedb3a1f6a69280adf957bd1b . Otherwise try finding out that last version that worked.

Edit: Just tried my old install of 1.0, didn't work until I realized I hadn't set the MMU properly then it booted fine. Even if that isn't the problem you (maybe it's a 1.2 specific issue) we probably ought to put a writeup somewhere for people who want to try it out.

Last edited by crazyc; 10/03/16 01:19 AM.
Re: Siemens PC-D [Re: rfka01] #107541 10/04/16 04:20 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
I'm using
Code:
git checkout `git rev-list -n 1 --before="2015-09-09 11:11" master`     
to return to earlier dates, is that correct?

I can't reproduce a state where the things I found faulty now have worked, so it's entirely possible I didn't run into them then, and my memory is acting up, e.g. I've installed DOS a different way and reset with Shift-F3 anyway or I had trouble installing Sinix 1.2 and just left it at that.

The Sinix 1.0 is working all the way back since the harddisk emulation became fully functional if you set the MMU correctly.

Even if you set the MMU to 1.2, Sinix 1.2 installs but then throws NMIs and ends up in the monitor.

DOS fails to reboot after e.g. changing a partition with FDISK.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #114338 11/24/18 06:44 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Somewhere between Mame 0.202 and 0.203 the PC-D emulation stopped booting from either floppy or hard disk.

[Linked Image]

vs.

[Linked Image]


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #114339 11/24/18 10:35 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841

Re: Siemens PC-D [Re: rfka01] #114340 11/25/18 12:51 AM
Joined: Feb 2004
Posts: 2,156
Vas Crabb Online Content
Very Senior Member
Online Content
Very Senior Member
Joined: Feb 2004
Posts: 2,156
Well, release is coming - do we just revert that like we did with the other problematic part of that changeset?

Re: Siemens PC-D [Re: rfka01] #114342 11/25/18 01:05 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
I reverted it.

Re: Siemens PC-D [Re: rfka01] #114344 11/25/18 12:15 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
[Linked Image]

Thanks, folks!


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #114666 02/14/19 08:56 AM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
Please credit Stefan Stapelberg for the SINIX disks.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #114668 02/14/19 11:06 AM
Joined: Apr 2012
Posts: 279
Pernod Online Content
Senior Member
Online Content
Senior Member
Joined: Apr 2012
Posts: 279
Originally Posted by rfka01
Please credit Stefan Stapelberg for the SINIX disks.

Thanks, are they PC-X only, or compatible with PC-D too?


BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.
Re: Siemens PC-D [Re: rfka01] #114670 02/14/19 12:13 PM
Joined: Jan 2012
Posts: 1,077
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,077
They're PC-X only, for hardware reasons.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Siemens PC-D [Re: rfka01] #117499 07/06/20 01:33 AM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
Wow, amazing job, thanks a lot. The PC-D was my first PC which I used for years, so I have some strong memories of it. But while I only remember seeing SINIX booted up once (on what must have been a PC-X, then), I got really intrigued about that custom external MMU, and did some of my own research.

First, I tried to find pictures, manuals, references, anything about the hardware side of it, with almost no result at all. There is a PC-D picture gallery that claims to show the MMU, but that's only the memory controller, no remapping support or anything like that. The only piece of information I found much later, while well into reverse engineering, in the form of this slashdot comment which claims that the MMU had an 8086 and a ROM of its own, which is really interesting. Obviously, an 8086 alone sitting on the bus won't cut it, but if it's true that it was part of the board it could mean that the MMU could be understood in much greater detail if we got hold of the ROM.

It also seems like nothing else I could find from that era, e.g. the fairly well documented MMU in the Altos 486. This was another 80186-based machine from around the same vintage as well (and obviously had nothing to do with the not yet invented Intel 486), that also run XENIX, which SINIX is at least based on.


So, with nothing else to go on, I went the software route, and looked at how both the MMU self test in the PC-X ROM and SINIX (mostly 1.0) handled it, just like crazyc must have done. I found out a few more things than apparent from the current MAME implementation, about MMU and NMIs. There are still many open questions.

0x8400: page table entry/mapping registers, protection and fault status bits

There are two more bits that are also to be considered part of the "page table entry" (selected by 0x84xx with xx being the page): Bit 4 (0x10) and bit 5 (0x20).

Bit 4 seems to be the write allow bit, i.e. the MMU will fault on any write access to the page if this bit is not set. SINIX seems to work well if I make this bit fault the write access always, not just in "user mode" (which is a fuzzy proposition anyway, see later), as long as the MMU is enabled (bit 5 in 0x8000), as it never seems to try to write to a page without that bit even in kernel mode (or "system mode", as SINIX calls it).

Bit 5 is either the opposite "read allow" bit, or maybe a more general "present" bit. The difference would be that a "present" bit would fault any access, read or write, as long as this bit is not set, whereas "read allow" would still allow writes as long as "write allow" is set. The distinction seems moot for SINIX, as I haven't observed it ever trying to write to a page that did not also have this bit set. I mentally treat it as "present".

Implementing the two bits as above seems to make SINIX behave well in terms of memory protection: Faulty programs that read or write outside memory they are supposed to are killed with a "Speicherzugriffsfehler" (memory access error), and their core is dumped. Since this early SINIX is a simple UNIX that merely swaps whole processes in or out and not individual pages, any such access aught to be treated as terminally fatal to the task and this behaves as expected.


Then there are, somewhat awkwardly, two more bits that seem to not be part of the page table entry, but global flags that are read from the page table entry register as well: Bit 6 (0x40) and bit 7 (0x80). crazyc's code already handles one case of them being used (system calls).

Bit 6 seems to always be set when checked, which is generally in the MMU fault handler (INT 0x20) path. If the bit is not set on such a fault, SINIX panics. Rather than being an always-on bit, I speculate that this bit actually indicates that an MMU fault occurred, and that it should be cleared e.g. after reading it (I haven't tried that detail out yet). That way, a spurious INT 0x20 without this bit being set correctly informs SINIX that something fatally unexpected happened.

Bit 7 is more obvious: If this bit is set, the fault was not due to a memory access with the wrong protection (i.e. "present" or "write allowed" not set), but because of something else, e.g. a system call (by writing to port 0x8800). See the discussion on 0x8a00 for what else this bit could potentially indicate, but overall it seems like this bit being not set indicates a page protection fault.

So, I would collectively call bit 6 and 7 the "fault status" bits. I don't know why they are crammed into the same register as the page table entries. Maybe they wanted to keep 0x8000 free from status bits (I only know it to contain control bits so far, so possibly it also always reads as last written by the system), and the other registers 0x8800 and 0x8a00 already seem to cause side effects both when reading or writing.

If setting those two bits has any meaning, then not an obvious one. SINIX never seems to set them on purpose (it sometimes does copy page table entries by just copying all the bits--but depending on how things work in detail, it could expect them to be clear when doing so).


0x8a00: disable I/O port access?

Port 0x8a00 is an interesting one. According to a test in the MMU self test routines, it's plausible that reading it disallows all further I/O port access, causing an NMI on any attempt.

If true, this would be a great feature for full (or at least better?) protection. Without that, memory is still protected by the page tables: A user mode task's page table simply only allow full access to any of its pages, as well as read-only access to only the kernel pages that are needed while the task is running (mostly the interrupt vector table and interrupt handlers themselves; because the 80186 does not actually have any privilege levels, some concessions on what code is visible had to be made, but at least it seems protected from writes).

But access to I/O ports is separate, and a task can still mess with the hardware directly, make the system crash, or worse, just circumvent the memory protection by reprogramming the MMU registers itself.

So, by disabling any I/O port access before handling control to the user mode task, any such violation can be prevented. Any attempt by the task to do I/O would raise an NMI instead. The 80186 reference manual mentions that the NMI vector sequence starts at the next instruction edge, which I think works out well. Just as with memory accesses, the MMU prevents the transaction itself from appearing on the actual bus (presumably at the cost of some latency). The MMU would then re-enable I/O access, since we vectored into kernel code now, which will handle the violation.

Read access to port 0x8800 could be exempt, because those are the system calls already handled separately. The MMU however would also need to re-enable I/O port access when the CPU vectored into the (non-NMI) INT 0x20 MMU fault handler (and only when that certainly happened), for the kernel to be able to do its job. From just glancing over the 80186 manual, it's not entirely clear to me how complicated this would be.

I think the only problematic thing then left for a user task to attempt is issuing a CLI instruction to mask all interrupts. But the MMU could maybe detect that, for example, non-NMI faults and timer interrupts are not served by the CPU in the expected time frame, and raise an NMI, which, as the name implies, is never masked. So a truly rogue task could stall the machine only for a short time before being killed.

But, here's the thing: SINIX, at least version 1.0B, does not seem to ever read or write 0x8a00. So it seems that feature, or whatever else is behind that I/O port, is unused. I later even found a German Usenet message from 1990 lamenting the fact that I/O ports weren't protected, claiming that application development would require frequent reboots.

I don't know why that is. It's all the more curious that there actually are the files /dev/inout and /dev/inoutb for proper I/O port access through the kernel. Maybe actually implementing it in the XENIX-based SINIX turned out to be too hard for at least the first few versions. Maybe the feature could not be made to work well at all. Or maybe the MMU did not actually support I/O port protection in the first place (even though the Altos 486's MMU did, as mentioned in its System Reference Manual), and I/O port 0x8a00 does something else entirely.

Because in the end, all this is pure speculation from looking at a single, tiny ROM MMU self-test accessing 0x8a00 and then expecting an NMI on the next I/O instruction. Moreover, that next I/O instruction is not to some random I/O port, but to 0x8000, the MMU control register, which might still be an arbitrary choice, but might also have a deeper meaning. Generally, it's very hard to draw conclusions just from that one test, since SINIX does not appear to have any relevant code.


NMI status bits

Speaking of NMIs, inspection of the SINIX NMI handler gives a relatively good picture of at least a subset of NMI types the machine can generate. The NMI type is read as a byte from port 0xf840, and it seems that the bits are all inverted, as they are all tested for being clear instead of set to match against NMI types. To avoid confusing language, I use the term "indicated" instead of "clear" in the following list:

Bit 6+Bit 5: Bit 6 alone does nothing, but if indicated together with bit 5, SINIX shuts down cleanly (by just sending SIGTERM to init). It's conceivable that this happens when flipping the power switch: Despite the deceiving flip switch that PC-Ds/PC-Xs have on their front, they actually have some sort of soft power. I remember once being very surprised when I flipped the quite substantial switch and the machine would just stay on. It would also be interesting to find out how the power switch is disabled.

Bit 3: If indicated, the NMI is a "DEBUG TRAP", and SINIX dumps some machine state and exits to the ROM debugger. The machines have a "debug" button next to the reset button, which is known to cause a distinguishable NMI (effective under DOS as well).

Bit 2: Bit 2 is interesting. If this bit is indicated, and if SINIX is currently in its initialization routines during startup, the NMI is completely ignored. I suspect that bit 2 could indicate "non fatal" faults, and that e.g. the power down fault from above would have bit 2 indicated (as it does not make sense to send a signal to init when the kernel isn't even initialized yet), whereas the DEBUG one probably does not.

Bit 1: This indicates a power issue. As long as the bit is indicated, the kernel will print out "nmitrap: narrow power-fail spike!" every few seconds.

All other bits are unknown, and will print out "NMI TRAP" and exit to the ROM debugger when not indicated with any of the other bits above (the DEBUG TRAP is similar, but prints some more state).


How is the number of tasks/segments per task/task selector width in 0x8000 selected?

This is the biggest mystery to me. crazyc already mentioned it, and despite explicitly trying to figure this out, I was not able to do so either. This is the reason why there is this hack of selecting between SINIX 1.0 and SINIX 1.2. But as crazyc already mentioned, it's much more likely that there is a way to configure this task selector width by software.

I had many attempts with many dead ends. Early on, I realized that when SINIX writes to 0x8000 to select a task+segment, which can be done entirely in 8 bits, the upper bits of the 16bit word would sometimes be set to something. I thought maybe this implements some sort of buddy system, where those bits indicate the width of the address space. But it seems that those bits are only what's left in the AH register, with no real meaning ascertained by the code.

I also could not find any other write to any of the MMU ports that seemed to indicate any such configuration taking place. If it happens through writing to any other I/O port, it's apparently not through a port that is not already known in the MAME code. I have not fully ruled out that writing to the status (0xf840) or LED (0xf841) ports configures the MMU, but nothing seems obvious either. Maybe finding out how the power switch is disabled can give a hint, as presumably that's another unaccounted for configuration.

At this point, it's not fully unlikely that the width is configured by hardware, e.g. by some DIP switch, possibly directly on the MMU board. But then that means that the MMU self test always had to be deactivated, since the self test expects a task selector width that's different from both SINIX 1.0 or 1.2.

Re: Siemens PC-D [Re: anyfoo] #117500 07/06/20 01:35 AM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
Separate post, because I don't expect many people reading that wall of text that is my previous post about MMU details:

If anyone has an actual PC-X, it would be amazing if you could upload some detailed pictures of the MMU, and maybe even dump the (presumed) ROM.

If the MMU indeed contains an 8086 and a ROM for some reason, the program in there could go a long way in understanding those missing details. But even just pictures would help, in case you don't feel like taking your PC-X apart too much.

Last edited by anyfoo; 07/06/20 06:51 AM.
Re: Siemens PC-D [Re: rfka01] #117501 07/06/20 02:57 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
There's a PC-X at http://www.geekdot.com/siemens-pc-x/. I don't know what the MMU would be there though as the board looks exactly like the PC-D.

Re: Siemens PC-D [Re: rfka01] #117502 07/06/20 06:23 AM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
Yes, I suspect the MMU is not actually shown there. Though I'm also not quite sure where it would plug in on that board. It's also unfortunate that that 20 year old slashdot comment is very light on details.

Re: Siemens PC-D [Re: rfka01] #117503 07/06/20 07:02 AM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
@crazyc, did you see the picture of the PC-D I linked in my post, with the bare "MMU" chip? Is there any chance that this is, after all, more than just a memory controller?

Re: Siemens PC-D [Re: rfka01] #117505 07/06/20 10:34 AM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
Oh weird. Did SINIX 1.2 work before? I just found out that it writes some page table entries with port 86xx instead of 84xx. The installation disks don't do that, but the fully installed system on hd does.

Last edited by anyfoo; 07/06/20 10:34 AM.
Re: Siemens PC-D [Re: rfka01] #117509 07/06/20 02:48 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Quote
If the MMU indeed contains an 8086 and a ROM for some reason

I very much doubt this, performance would be terrible if a '70s-'80s era cpu had to look up an address translation for every memory access. It's very likely to be fast discrete logic and pals or an asic.

Quote
@crazyc, did you see the picture of the PC-D I linked in my post, with the bare "MMU" chip? Is there any chance that this is, after all, more than just a memory controller?

You're right, that's just a simple dram controller. The 8207 does connect to the cpu io/mem status lines so it possibly could be replaced with a chip that does dram control and mmu functions with the same pinout (this does seem unlikely but the mmu has to sit between the cpu and the ram and the dram controller does too).

Quote
Oh weird. Did SINIX 1.2 work before? I just found out that it writes some page table entries with port 86xx instead of 84xx. The installation disks don't do that, but the fully installed system on hd does.

I never fully installed it but rfka01 couldn't get it to work either https://forums.bannister.org/ubbthreads.php?ubb=showflat&Number=107533#Post107533. If you can figure it out it would be helpful.

Re: Siemens PC-D [Re: crazyc] #117510 07/06/20 06:52 PM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
Originally Posted by crazyc

I very much doubt this, performance would be terrible if a '70s-'80s era cpu had to look up an address translation for every memory access. It's very likely to be fast discrete logic and pals or an asic.


Oh absolutely. No way a slower CPU sits on the bus as an arbiter for memory accesses. The only reason I can imagine an 8086 there is if that thing is more complex than thought, but I'm not sure what the 8086 would do. Effecting configurations changes? But that's a bit much for what we know the MMU to do so far, then.

Quote

You're right, that's just a simple dram controller. The 8207 does connect to the cpu io/mem status lines so it possibly could be replaced with a chip that does dram control and mmu functions with the same pinout (this does seem unlikely but the mmu has to sit between the cpu and the ram and the dram controller does too).


Yeah, although it seems unusual (the chip would essentially have to be a 8207 with an additional MMU, which seems weird), that is a possibility. I've asked the owner of the PC-X to look around for a daughterboard, which they agreed to do. If there is none, maybe they are okay to take the chip out and take a picture of it. At least that should tell us whether it's still an 8207.

Quote
I never fully installed it but rfka01 couldn't get it to work either https://forums.bannister.org/ubbthreads.php?ubb=showflat&Number=107533#Post107533. If you can figure it out it would be helpful.


Yeah, just treating any access to 86xx as if it was 84xx is enough to make SINIX 1.2 boot and login (together with the other changes mentioned before, but I don't think they matter much for well-behaved programs). I haven't looked yet into what the difference between using 86xx vs 84xx could be.

Re: Siemens PC-D [Re: rfka01] #117511 07/06/20 08:44 PM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
Hmm, seems like SINIX 1.2 added support for an "Excelan EXOS 206 intelligent Ethernet controller". That would be interesting, but it seems to have its own CPU (hence the "intelligent"), so without hardware access to dump its ROMs...

Re: Siemens PC-D [Re: anyfoo] #117513 07/07/20 01:42 AM
Joined: Feb 2004
Posts: 2,156
Vas Crabb Online Content
Very Senior Member
Online Content
Very Senior Member
Joined: Feb 2004
Posts: 2,156
Originally Posted by anyfoo
Hmm, seems like SINIX 1.2 added support for an "Excelan EXOS 206 intelligent Ethernet controller". That would be interesting, but it seems to have its own CPU (hence the "intelligent"), so without hardware access to dump its ROMs...

Not necessarily, a bunch of these intelligent network controllers don’t have firmware in ROM. They start with the CPU stopped and wait for the driver to upload the firmware blob to shared RAM.

Re: Siemens PC-D [Re: rfka01] #117514 07/07/20 02:52 AM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
Thanks, Vas. I will dig around for that, but I have a hunch that I might not find it. Generally the SINIX kernel is pretty lean, and almost all of the bigger high entropy regions from my memory dump I've seen so far contain 80186 instructions that seem to be part of SINIX. I did not look at all of it, though, and it's always possible that it was in a segment that gets dumped after initialization, which would make sense.

I also found the initialization code for a "SERAC board", which I guess stands for "serial access board", but that, too, seems to have at least some firmware (though I guess this one is at least more likely to contain it as part of the driver).

I did not see any other, simpler serial port interface that would allow a getty or UUCP so far, which is a bit of a bummer. The "reserve" USART does not seem to be addressed at all in the kernel... though maybe the one designated to the printer could work?

And in slightly unrelated news, I was slightly wrong about my NMI bit 2 explanation above: It's not fully ignored during initialization (which includes the just mentioned driver initializations), the kernel also sets a flag in memory. Driver initialization uses that to check whether an NMI occurred during the early stages of trying to talk to the device, and if so, the device is skipped, since a bus timeout indicates absence of the device. I think bit 2 is then simply the bus timeout bit.

Re: Siemens PC-D [Re: rfka01] #117515 07/07/20 03:01 AM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
And coming back to 84xx vs 86xx: I have no good explanation. Only the last few pages of segment 3, which are part of the massive linear kernel code mapping starting in segment 1, are mapped using 86xx. I have not seen any other pages being mapped through 86xx, and the page boundary between the last 84xx and the first 86xx page is just in the middle of what very much still looks to be linear kernel code (in fact, the EXOS 206 driver seems to be in there at the end).

Really weird. So this is either some kind of hint bit, or equivalent to 84xx. I almost wonder whether this is a flipped bit from the original media? I haven't checked if there's anything guarding against that (and then I haven't checked why only those last pages end up using the different port).

Re: Siemens PC-D [Re: anyfoo] #117599 07/27/20 11:58 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Quote
Bit 5 is either the opposite "read allow" bit, or maybe a more general "present" bit. The difference would be that a "present" bit would fault any access, read or write, as long as this bit is not set, whereas "read allow" would still allow writes as long as "write allow" is set. The distinction seems moot for SINIX, as I haven't observed it ever trying to write to a page that did not also have this bit set. I mentally treat it as "present".


This bit has to be just read allow because there are pages with this bit unset that are written to at start.

Re: Siemens PC-D [Re: rfka01] #117600 07/28/20 12:41 PM
Joined: May 2009
Posts: 1,859
J
Just Desserts Offline
Very Senior Member
Offline
Very Senior Member
J
Joined: May 2009
Posts: 1,859
What if the bit gets set upon write, to flag that the page has been written to and is therefore present? Kind of like a write-through sort of thing.

Re: Siemens PC-D [Re: rfka01] #117604 07/30/20 02:14 AM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
Doubtful. Most pages have that bit set, just a handful don't.

Re: Siemens PC-D [Re: rfka01] #117605 07/30/20 03:16 AM
Joined: Mar 2001
Posts: 16,539
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,539
The 68k MMUs have a "page has been accessed" bit that the hardware sets (NeXTStep gets quite angry if you don't support it), but if the software's setting it that's probably not what it is.

Re: Siemens PC-D [Re: rfka01] #117606 07/30/20 05:32 PM
Joined: Jan 2012
Posts: 841
C
crazyc Offline
Senior Member
Offline
Senior Member
C
Joined: Jan 2012
Posts: 841
The 386 has a dirty bit in the page table too. Windows 3.1 enhanced mode starts to discard pages with changed bytes if its not implemented which crashes the os pretty quickly.

Re: Siemens PC-D [Re: rfka01] #117620 08/03/20 03:40 AM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
Are they written before the MMU is enabled (bit 0x20 in 0x8000)?

Re: Siemens PC-D [Re: rfka01] #117621 08/03/20 03:46 AM
Joined: Jun 2020
Posts: 11
A
anyfoo Online Content
Member
Online Content
Member
A
Joined: Jun 2020
Posts: 11
R. Belmont: Very sure it's either "present" or "read allow" (more towards the latter if crazyc is right), because it's entirely consistent with how the system works. If this was an "accessed" bit, there would still have to be another present/read allow bit somewhere for the MMU to really make sense.

Just Desserts/crazyc: Possible, but I didn't actually spot any page getting (intentionally) written when the bit wasn't set, at least once the MMU was enabled. Very possible that I missed something. If so, "read allow" seems to be the simplest interpretation (I assume that even then the pages were not intentionally read before the bit was set.)

Last edited by anyfoo; 08/03/20 03:47 AM.
Page 1 of 17 1 2 3 16 17

Who's Online Now
2 registered members (TeamE, AJR), 59 guests, and 2 spiders.
Key: Admin, Global Mod, Mod
ShoutChat Box
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics8,791
Posts115,714
Members4,908
Most Online890
Jan 17th, 2020
Powered by UBB.threads™ PHP Forum Software 7.7.3