|
Joined: Jan 2012
Posts: 1,179 Likes: 17
Very Senior Member
|
OP
Very Senior Member
Joined: Jan 2012
Posts: 1,179 Likes: 17 |
Bavarese: You must specify "-c none" for no compression at the command line (chdman) [...] Bavarese: >chdman64 createhd - c none - chs 153, 4, 16 - ss 512 - o RD50_ST506.chd Bavarese: (for a 5 MB hard disk). Be careful with DOS FDISK and large HDs, use WUTIL (especially when you specifiy a HD with more than 4 heads) Bavarese: CCPM and DOS 3.1 cant cope with more than 32 MB partitions BTW Shoutbox saved for posterity ... should probably end up in the Wiki
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
|
|
|
|
Joined: Apr 2012
Posts: 193
Senior Member
|
Senior Member
Joined: Apr 2012
Posts: 193 |
Additional info from the driver i plan to remove (to reduce bloat):
// DEC RD TYPE (MByte) CYL ---- HEADS ---- MODEL (typical)
// DEC RD50 (5 Mbyte): 153 cyl. 4 heads -- ST506
// DEC RD51(10 Mbyte); 306 cyl. 4 heads -- ST412
// DEC RD31(20 Mbyte); 615 cyl. 4 heads -- ST225
// DEC RD52(32 Mbyte); 512 cyl. 8 heads -- Q540 [!]
// DEC RD32(40 Mbyte); 820 cyl. 6 heads -- ST251 [!]
// DEC RD53(67 Mbyte); 1024 cyl.8 heads -- 1325 [!]
// [!] More than 4 heads. Prepare with WUTIL and / or DSKPREP.
// SIZE RESTRICTIONS
// * HARDWARE:
// WD1010 controller has a built-in limit of 8 heads / 1024 cylinders.
// * BOOT LOADERS:
// - the DEC boot loader (and FDISK from DOS 3.10) initially allowed a maximum hard disc size of 20 MB.
// - the custom boot loader that comes with 'WUTIL 3.2' allows 117 MB and 8 surfaces.
// * SOFTWARE:
// - MS-DOS 2 allows a maximum partition size of 16 MB (sizes > 15 MB are incompatible to DOS 3)
// [ no more than 4 partitions of 8 MB size on one hard disk possible ]
// - MS-DOS 3 - and Concurrent CPM - have a global 32 MB (1024 cylinder) limit
// - a CP/M-86-80 partition can have up to 8 MB (all CP/M partitions together must not exceed 10 MB)
Next step would be the hookup of serial/printer interfaces and the 7201. I feel like i have to reinvent the wheel How do i actually use the internal terminal (invoked from the GUI)...? Driver WIP: https://dl.dropboxusercontent.com/u/37819653/BANNISTER/2016_07_01_Rainbow_CPP.txt
Last edited by Bavarese; 07/01/16 10:21 AM.
|
|
|
|
Joined: Mar 2001
Posts: 17,215 Likes: 234
Very Senior Member
|
Very Senior Member
Joined: Mar 2001
Posts: 17,215 Likes: 234 |
Why would you remove useful info like that?
|
|
|
|
Joined: Apr 2012
Posts: 193
Senior Member
|
Senior Member
Joined: Apr 2012
Posts: 193 |
Hmm... sizes can be taken from manuals, old MSDN pages or Wikipedia with some effort.
I am forced to make a sacrifice for readability, as our driver approaches 100 kilobyte.
The monolithic nature of the Rainbow driver is a problem. In part, because i dont know squat about slot devices.
Quite certain the ST506 / WD1010 code could be modularized (or even replaced by something more complete, for example MFMHD)...
Last edited by Bavarese; 07/01/16 01:23 PM.
|
|
|
|
Joined: May 2009
Posts: 2,214 Likes: 382
Very Senior Member
|
Very Senior Member
Joined: May 2009
Posts: 2,214 Likes: 382 |
Hmm... sizes can be taken from manuals, old MSDN pages or Wikipedia with some effort. That's no reason to remove it from the driver. In fact, given how often URLs change, it is (if anything) an argument for keeping it in the driver. We put useful info like that directly in the drivers for a very good reason, which is that MAME is a documentation project. Choosing to actively remove documentation seems to run against that. I am forced to make a sacrifice for readability, as our driver approaches 100 kilobyte. That means the driver should be split across multiple files, not that you should be removing useful documentation from it.
|
|
|
|
Joined: Mar 2006
Posts: 1,079 Likes: 6
Very Senior Member
|
Very Senior Member
Joined: Mar 2006
Posts: 1,079 Likes: 6 |
You could stick the more detailed documentation as a giant comment or comments in a .h file if you really want to but that may hurt readability.
If you end up doing that, the .cpp file should note that further documentation is in the .h file.
LN
"When life gives you zombies... *CHA-CHIK!* ...you make zombie-ade!"
|
|
|
|
Joined: Jan 2006
Posts: 3,691
Very Senior Member
|
Very Senior Member
Joined: Jan 2006
Posts: 3,691 |
but there really is no need to move the info from its current location, so why are we discussing the point so much?
|
|
|
|
Joined: Apr 2012
Posts: 193
Senior Member
|
Senior Member
Joined: Apr 2012
Posts: 193 |
[7201 emulation / serial setup] Now i tried to follow the instructions RFKA gave on the DMV thread (page 9), only problem is that nothing gets through. Details: - 7201 config statements were added to the Rainbow driver (hopefully correct). The IRQ (IRQ_COMM_PTR_INTR_L,) is firing. - i try to connect Putty to the bitbanger on 127.0.0.1, port 10000. The Rainbow runs in Terminal Mode (T key after boot) where it mimics a VT100/VT102 (more or less)... Unfortunately nothing happens ...- no virtual comm port is installed (and the platform is Windows 10). Driver - work in progress (2016-07-02): https://dl.dropboxusercontent.com/u/37819653/BANNISTER/2016_07_02_Rainbow_CPP.txthttps://www.dropbox.com/s/16uhf9gmlobh9wd/2016_07_02_Rainbow_CPP.txt?dl=0Command line / invocation: mess64 -window -debug rainbow -frameskip 10 -bitbngr socket.127.0.0.1:10000 The printer is difficult to get working (even with a patch), so i concentrate on the serial interface for now.
Last edited by Bavarese; 07/02/16 05:46 PM.
|
|
|
|
Joined: May 2004
Posts: 996 Likes: 103
Senior Member
|
Senior Member
Joined: May 2004
Posts: 996 Likes: 103 |
You're missing the null modem device that needs to be connected to the RS232 port.
|
|
|
|
Joined: Apr 2012
Posts: 193
Senior Member
|
Senior Member
Joined: Apr 2012
Posts: 193 |
The null modem is present (without it, i guess the bitbanger wouldn't start) -
MCFG_DEVICE_MODIFY("rs232_a")
MCFG_SLOT_DEFAULT_OPTION("null_modem")
What is missing? - i have not the faintest idea how baud rates are programmed into the 7201 (except there is an extra bitrate register at port $06 in 8088 I/O space with 2 half bytes for up and download rates ... $F means 19200, $E 9600 etc.). - there are also 5 unemulated status and 4 control bits in 'comm_control_r' and 'comm_control_w' Question is, how do i set individual port bits (DTR, RTS) or get the status of DSR, CTS, RI...?
The Rainbow documentation suggests the 808x CPU has direct control on these bits via 'comm_control_r' and 'comm_control_w'.
Thanks for any clues
Last edited by Bavarese; 07/03/16 07:26 AM.
|
|
|
2 members (Kale, 1 invisible),
233
guests, and
1
robot. |
Key:
Admin,
Global Mod,
Mod
|
|
Forums9
Topics9,320
Posts121,923
Members5,074
|
Most Online1,283 Dec 21st, 2022
|
|
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!
|
|
|
|