Intro In the past few days since Sandro Ronco got CP/M-80 to boot on the DMV driver (thanks!) I have (re-)dumped a lot of the NCR Decision Mate V (DMV) ROMs, have taken loads of pictures and documented the different sets of hardware I have. Now the BIOS and 8741AD ROM versions from the mainboard can be implemented as matching sets.
This called for a new arrangement and naming of the files in order to present them properly. The option modules now carry their proper NCR designation, and the ROM files have their version numbers.
In this thread I�ll gather all the useful information about the DMV from the old �Requirements� thread which can then be used solely for the discussion of the DEC Rainbow 100. The NCR DMV is in its most basic configuration a Z80 machine with one 320K DSDD Floppy drive with 64K RAM and a monochrome monitor.
There were configurations with dual drives, one drive and internal harddisk, color monitor and graphics card, and it was easily extendable by plugging in modules in the various slots in the back of the machine.
Slot 1 was reserved for RAM extension modules (64K, 192K and 448K) Slots 2-6 could be used for various extensions with a slot 2A on the back of the mainboard for an internal harddisk adapter Slot 7 (and the inward facing 7A) were reserved for CPU modules and the Diagnostics module. On multilayer mainboards (mine all are) Ctrl-F20 resets the machine.
All page numbers in the posts below reflect the actual page in the PDF file, not the original page in the manual.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Mainboard: Machines with a monochrome monitor have a brightness and contrast knob on the front panel, and a volume potentiometer soldered directly to the mainboard. Color machines have a brightness and volume knob on the front panel. The position of the loudspeaker is also different. (Mainboard info see NCR System info, page 117ff, 266ff, CP/M-86 System Technical Manual page 54ff, System Technical Manual Hardware page 18ff). The meaning of the diagnostics LEDs can be found in the CP/M-80 System Technical Manual, page 60. A BIOS listing can be found in the Hardware System Technical Manual, page 88ff, electronic schematics from page 230ff (multilayer board).
Graphics Boards: Depending on the monitor built into the enclosure, a monochrome or color graphics board based on the NEC �PD7220 was available with either 32K (mono) or 96K (color) video memory (see NCR DMV System Info , page 101ff, 272ff). Programming examples for the 7220 can be found in the CP/M-86 System Technical Manual , page 59ff and CP/M-80 System Technical Manual , page 61ff. Info on the Monitors used in the System Technical Manual Hardware page 72f, from page 240ff electronic schematics.
The K200 64K module is missing from my collection (Schematics in the System Technical Manual Hardware, page 268ff). If you add the 64K RAM from the mainboard to the values printed on the K202 and K208 modules, you get the �round� 128K, 256K and 512K total RAM values. Infos in the System Technical Manual Hardware, page 83ff
The port addresses of the DMV expansion modules can be found on page 64 in the NCR DMV Hardware Extensions File , interface selection is described in the System Technical Manual Hardware, page 34. I�m missing the following modules: K600 Decision Net networking adapter (�Omninet Transporter�, see NCR DMV Hardware Extensions File, page 1ff and NCR DMV System Info page 57ff), K215 Buffered sync/async adapter (see NCR DMV Hardware Extensions File, page 30ff and NCR DMV System Info page 42ff), K211 RS232 communications adapter, K213 RS232 Plotter adapter, K219 Integrated Modem, K216 SCC Communication interface (see NCR DMV System Info , page 46ff), K233 Shared RAM adapter (see NCR DMV System Info page 50ff), K223 DLC inhouse interface (see NCR DMV System Info, page 66ff). I�ve got blank modules (K 214, K217 and K218), they are the shell plus some breadboard with the appropriate connector.
Boot disk for the DMV�s OSs are contained in this archive, along with images of diagnostics disks. The disk �DMVTEST.mfi� was created in MESS and contains CP/M-80 and some programs to toy with as well as the well-known DMV graphics capability slideshow (demo5.com, see post �current status�)
Currently (r31292) the DMV driver boots CP/M-80 and runs quite a number of programs, e.g. the �ladder� game that is remembered by many people
The emulated DMV freezes whenever text scrolls off the screen:
The missing graphics mode prevents a number of software items from running on the DMV driver, such as the DMV graphics demo that can be seen here . It is included on the 580TEST.mfi disk image. Maybe the graphics mode can be gleaned from the Epson QX-10 driver that uses the same video chip.
I have created a file with ASCII graphics of the pinout for the expansion and CPU expansion bus (dmvbus.c) and the pinout of the diagnostics module (dmvdiag.c)
Sandro Ronco completely revamped the DMV driver in r31661 and implemented the bus system and the first modules - and it's amazing! Thanks Sandro!
Apart from CP/M-80, now CP/M-86 and MS-DOS 2.11 also boot.
There's a caveat with MS-DOS: It boots if there's no memory module selected, with 64K of system memory
If a memory module is inserted in slot1, the BIOS does the memory test on the bottom of the screen, then boots into MS-DOS (recognizing the added memory, see line 3) but hangs shortly after this point ...
showing a cursor below the "Command v. 2.11" message you can see in the first screenshot.
I have to end MESS with Windows Task Manager at this point.
One thing that happens uniformly across all operating systems is, that if text scrolls off the screen, the driver freezes. To replicate you simply boot into an OS and repeatedly DIR the contents of the disk. Or you leave ladder (here on CP/M-86) and DIR ...
This condition is non-lethal though, you can reset the emulation with F3 if you're in partial keyboard mode.
Sandro even put the graphics portion in, and running DEMO5 shows this colorful jumbled picture
It seems that most of the items on the To-Do list for the upd7220 driver apply here, because this showcase program for the DMV made heavy use of the features - the machine was touted as highly graphics capable.
I want to thank not only Sandro for his work on the driver but all MESS devs - when I uploaded the first files 2 1/2 years ago, a lot of this wouldn't have been possible - the bus system, slots, CPU and Floppy controller refinements (or rewrites) all came afterwards. It's brilliant!
Robert
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Another milestone, thanks to Sandro: The latest changes to the upd7220 driver now permit scrolling, the emulated machine no longer freezes when the end of the screen is reached.
This also makes it possible to run WordStar in all three emulated operating systems, warts and all - I have set the keyboard to German, and this converts the | character in the menu's ASCII frames to "�" just like on the real machine.
The distinction between mono and color isn't made yet, even though the machine is configured as mono, the text is shown in different colours instead of highlights/bold text.
Does anyone know if the upd7220 in Toshiya Takeda's emulator is more fleshed out than the MESS driver? He seems to base his work on MAME/MESS, but comparing licenses (and source code) isn't my forte.
The scrolling problems (which did not only affect the DMV) were a real bug in the 7220 emulation; the fix also fixes multiple systems. Now is not the time to panic and call for ripping out the 7220 :P
On the topic of upd7220 bugs, one of the compis graphics demos looks like this.
Looks almost like some lines are being drawn backwards. Scrolling in msdos also doesn't work.
rfka01: Assimilation likely would be harder than just fixing ours as his code is much narrower in scope (he only needs the QX10, PC9801, N5200 and MZ-3500 to work).
I was hoping that Takeda had addressed some of the shortcomings of the graphics portion of the 7220 driver, e.g. arcs (used to draw circles), there is also mention of "honoring the viewing area" which I think might be connected to the strange tear and shift you can see in post #99542.
Anyway, don't count my post as nagging, I'm only trying to find resources - I'm more than happy and grateful with all the progress as I've said before.
Last edited by rfka01; 08/25/1408:39 PM.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
The upd7220 has a decap btw, if anyone wants to trace it out. Also, theres a patent on how the bresenham curve/arc algorithm on it works, which may explain the 'mask PLA' on the die.
LN
"When life gives you zombies... *CHA-CHIK!* ...you make zombie-ade!"
In 2013 Olivier Galibert sent me the dieshot and I did a first step to convert it.
I wrote then
Quote
Hi Olivier,
this is an archive containing two files with my efforts about the �PD7220. The Excel file has the values as we discussed them in the shoutbox last Thursday - the cells marked in yellow should be extra double checked The Powerpoint file has the "legend", I have marked the regions I have transcribed as they appear in the Excel file, so not too much work is lost, should I be off by one or more rows or columns.
I can put the binary values into a file if you tell me how to group them, i.e. four excel cells across one row into a single byte.
Robert
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
I've worked on the DMV layout a bit ... there are now four options apart from "screen only":
Default without backdrop
Diagnostic module without backdrop
Default with backdrop
Diagnostic module with backdrop
Each view comes with drive LEDs (although I couldn't figure out how to "connect" them in the driver ... disk copying inside the driver works, so having the LEDs work would be nice), and the mainboard diagnostics LEDs.
The views that include the backdrop have a "lighted" power LED. In these views it would be great to be able to call up the file manager dialogue for the respective floppy disk drive by adding a hotspot to the drive knobs. I don't know if MESS supports switching between the host mouse and a guest mouse that might be emulated in the future.
The views for the diagnostic module include the 7 segment LED displays and the diagnostics LEDs on the module. Of these, the six LEDs monitoring the computer's voltage are fixed, the PCLK/, MEMR/ and HLDA LEDs could be hooked up.
Well, I've been looking through the DMV driver to find the appropriate signal to trigger the output to the drive LED, but couldn't make heads nor tails of it ... this'll have to wait for a dev.
As for pictures of the monitors, I can try to photograph them and then enhance the existing layout.
Last edited by rfka01; 08/29/1410:27 AM.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
The drive led is usually configured by jumpers on the drive itself. On the TEAC FD55GFR drive (which is just an example drive here) it can be one of 5 things (from FD55GFR-7xxx jumper listing): 1. Drive Select 2. Drive Select + In Use 3. In Use 4. Drive Select * Ready (ready is supplied by the drive itself) 5. In Use + (Drive Select * Ready) (In Use is an optional use of the otherwise reserved mini-shugart pin 4; other drives may use it for other things) (+ means OR, * means AND) (The actual cable signals are all open collector active low, so consider them pre-inverted on the drive board to active high for simplicity here)
LN
"When life gives you zombies... *CHA-CHIK!* ...you make zombie-ade!"
I don't know yet how to drive 7 segment LEDs (hell, the documentation is really bad...)
Actually it's pretty simple if you know where to get the value, src/mess/drivers/mk2.c has one I hooked up a while back:
Code
for (i=0; i<4; i++)
output_set_digit_value(i, m_led[i]);
So the first parameter to output_set_digit_value is which digit to change, and the second parameter is the value to set it to (m_led is set by a write handler elsewhere in this case). I think the value is a bit field of the segment values so if the system has some weird arrangement of bits you may need to use a BITSWAP macro but for mk2 it just worked.
Can you explain more specifically the color/monochrome problem you have?
I have tried WordStar in CP/M-86 and the color/monochrome switch works here, but keep in mind that the effect of the switch changes takes effect only after a soft-reset.
Apologies to you, the color/mono distinction works fine ... I should have realized I had to reboot - d'oh! If you swap modules you're prompted for a reset - this is probably why I assumed it would be fine without.
The mono mode should have a distinction between bold/normal characters (e.g. in the Wordstar menu), but I think that's missing from MESS' uPD7220.
and run pc-test.com the graphics controller is detected as "colour" even if the system is set to monochrome. I will try to run this on real hardware to verify this behaviour.
This disk is interesting for other reasons too: OG fixed memory leaks in the mfi disk image code in r31818, this disk still yields the following message after exiting MESS:
Code
C:\mingw\mess_work|mess64 dmv -slot1 k202
Average speed: 99.75% (248 seconds)
Average speed: 100.00% (90 seconds)
Average speed: 99.83% (93 seconds)
--- memory leak warning ---
#037270, nofree 180744 bytes (src/lib/formats/mfi_dsk.c:189)
#037271, nofree 181744 bytes (src/lib/formats/mfi_dsk.c:190)
a total of 362488 bytes were not freed
The disk was created before OG's fixes, so this may not be an issue after all.
If you run the DMA test from pc-test.com you get the following error message:
It would be great if the MESS Teledisk implementation would show Teledisk's disk image comments when you select an image.
Enough rambling ... thanks for your patience, Sandro
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
PC-TEST uses the bios version for detect the monitor type and the default bios is from a machine with color monitor (C.07.00, note the 'C'), if you try to run the others bios (appending -bios 1/2/3 to the commands), PC-TEST detect a monochrome monitor because these bios are from monochrome machines (M.0x.00).
Thanks again for the explanation, Sandro. The DMV is so tightly built that you need to take it apart and reassemble it completely in order to test components. That means you don't just swap in something and then something else. So it's one of the privileges of emulation to test behaviour like that on the fly I got a lot of these mainboards years ago as spares, and they were sitting in my basement until now.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Between the DMV module and the actual MFM harddisks sits a WD 1002 HDO harddisk controller - this makes it not SASI as I had assumed previously, but the earlier parallel variant. The archive contains a manual of the controller.
The original MFM drives that connected to this controller were 10MB, but on some floppies utilities are provided to format 20MB disks.
I remember running a double hard drive setup from this particular controller/module combo that gave me a bootable 10MB DOS partition one one harddrive, another 10MB dos partition on the other harddrive, and 4 CP/M partitions divided between the two harddisks.
According to a Google search, this particular board was also used in the Kaypro 10, the Epson QX-10 and some TRS-80 models.
IDE is essentially a 16-bit version of the WD1002, so using an IDE drive on a 1002 interface would be relatively simple (similar to interfacing IDE to an 8-bit CPU/bus like Apple II and C64 users have done).
Yeah, that's what I made of that article, and that's why I linked to it as a whole set of drivers might benefit from it.
I knew that SCSI went back to SASI, and I knew that, to paraphrase, "IDE integrated much of the controller onto the harddrive", but I hadn't known that it was the 1002 type that was integrated. In the words of a German radio comedy that spoofs Lothar Matth�us' English: "Again what learned".
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Speechless ... Sandro did it again! New modules for the DMV are the 16K shared RAM (which I haven't seen in the wild) and the 68K module - the DMV now can boot its full compliment of operating systems including CP/M-68K.
mess64 -slot1 k208 -slot7 k234 -slot7a k235
gives you 512K RAM, the IRQ enabled 8088 and the 68008 and boots CP/M-68K just fine.
If you add the 68K module to one of the IRQ-less 8088 modules, CP/M-68K boots, too ... that's different on real hardware, but hey ... amazing progress again!
Great going, Sandro! Thanks again!
Last edited by rfka01; 09/21/1410:52 AM.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
IDE is essentially a 16-bit version of the WD1002, so using an IDE drive on a 1002 interface would be relatively simple (similar to interfacing IDE to an 8-bit CPU/bus like Apple II and C64 users have done).
It's very similar, but it's not 100% software compatible so you'd need to patch the code.
Woo-hoo, thanks for the work on the 7220, crazyc (& Kale? He was posting about it in the pc-98xx thread). It looks like the drawing areas are converging ... and is that Zoom in the characters?
With Sandro's recent addition of CopyQM files and a softlist, it's waiting to have software thrown at it
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
I think I've found the source to the positioning problems. If the GD bit is set in the FIGS command then pitch is effectively halved but only when figure and char drawing and in mixed mode. Still need to figure out exactly how it works though.
Yeah, that Artist-1 board is definitely a 7220. No obvious (P)ROMs either.
I guess the next question is, does the #9 Revolution ISA have a video BIOS, or is it strictly a second-monitor-for-CAD type of thing? The latter we could probably emulate just with what the Internet Archive has.
I'd bet just from running the setup program that it's a second monitor thing with no rom. Looks like the command port is memory mapped at 0xc0001, the data port at 0xc0000 and the framebuffer at 0xc0500. That's at the same address as the VGA rom though so hopefully it can be moved.
@crazyc ... great progress on the 7220 driver ... interestingly the BIOS version has a much bigger influence on the system than I previously thought ...
Give a guy a finger, and he'll take the whole hand ...
... now that the demo5 is working in CP/M-80 and in colour ...
I've done some more tests
Demo5 is not running in CP/M-86 and MS-DOS ... and neither is DR DRAW in CP/M-86 and colour, but it is working in mono. Looks like the graphics emulation doesn't play nicely with the 8088 boards.
You need to run graphics.cmd and then draw.cmd from 8DRMO-M.td0 (mono) resp. 86DRDRAW.tdo (colour) from this archive. The mono version displays the splash screen and menu, the colour version just stalls.
On the third disk in above archive there is 80TGRAF.td0, another graphics library, this time again for CP/M-80, running CGDEMO shows some remaining alignment issues for the 7220
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
@crazyc thanks for all the work, I really appreciate that.
Adding the line
Code
SLOT_INTERFACE( "525qd", FLOPPY_525_QD )
to the Floppy slot interface enables the selection of 96tpi disk drives. These were available as an option.
In this archive, there is a disk image with CP/M-86 that expects drive A to be 48tpi and drive B to be 96 tpi, the other disk image is a from a 96tpi disk and contains the GSX-86 test suite.
Be careful to select the 96tpi drives before you drop in 96tpi images though, otherwise you'll get kicked out of emulation:
There is evidence on a 48tpi CP/M-80 disk that CP/M-80 was modified to work with 96tpi drives, but I have yet to discover a bootable disk for it - all I have is the HCOPY.com program on this disk that has a 96 tpi option.
Sandro added the RTC module K803 and connected the mouse to K806. I won't be home for a few days, so I can only test this on my Ultrabook ... if you select K803, MESS dies and complains about "Required I/O port 'DWS' not found"
This is on Windows 8.1 64bit with the new set of tools.
Another thing that puzzles me:
Calling MESS from the command line works without a hitch, but if you call the DMV driver from the internal UI, e.g. coming from another driver, you get the message "The selected game is missing one or more ROM or CHD images. Please select a different game." All my BIOS ROMs are in ../mess/roms , I've kept the default paths.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
if you select K803, MESS dies and complains about "Required I/O port 'DWS' not found"
typo fixed. thanks for catching.
Originally Posted by rfka01
Calling MESS from the command line works without a hitch, but if you call the DMV driver from the internal UI, e.g. coming from another driver, you get the message "The selected game is missing one or more ROM or CHD images. Please select a different game." All my BIOS ROMs are in ../mess/roms , I've kept the default paths.
it works here. might you have roms of the clones or of the devices inside the parent zipfile? internal UI is a bit pickier (or more limited, if you prefer) about the location of your roms than command line
I ran the GSX-86 test suite on the 96tpi disk image from post #96692 and juxtaposed the descriptions and the screenshots in this table ... this allows for easier re-testing when things change in the 7220 or DMV driver.
I think it's awesome how much is already running! Some tests are not working because the functions have not been implemented in the DMV GSX driver. The blue line of garbage at the bottom of many screens is an indicator that something's not quite right yet.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
The 5XTEST.td0 image contains a version of the DMV hardware tests that can check the K803 and find it working. It's curious though that the values that are displayed are different from using the RTC.COM on the other disk, dmv_rtc.mfi which is contained in the RTC directory.
To get the RTC working intially, you have to run CONFIG on dmv_rtc.mfi and choose to initialize the RTC on system boot. This creates a config.sys file with the correct parameters for TIMDRIVE.sys to import the time into DOS.
Two other utilities, rtc_n and set_rtc don't see the emulated K803.
Currently, on each boot of the DOS disk, the RTC is reset to the same starting point - I don't know if this is due to MESS RTC handling, the K803 driver or the internal DMV RTC driver.
Anyway,
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
I think that ideally we shall have an option for user-defined initial time, possibly defaulting to current time
Then, if the clock was battery powered, later sessions shall reload the last "emulated" time, ignoring the option, until the user nukes out the battery file Otherwise, the option should be used.
however, in the past, RTCs typically used per-case solutions so that any kind of standardization will require some code efforts
What are the values differences that you get between the 'DMV hardware tests' and RTC.COM? I have tried both and the values seem correct here.
RTC_N.COM and SET_RTC.COM do not appear to be intended to be used with a K803 (that uses a MM58167), but with a module that uses a RTC-58321 (see screenshots), have you any info on other RTC modules other than the K803?
the test program from 5xtest shows my real world system time. If I boot with the dmv_rtc image, the time shown by the dos prompt is reset to the time I first started the DMV tonight, currently 22:49:30, every time I reboot the machine using F3.
Robert
P.S. I know of no alternative modules, but I have disks for a "Version II" of the DMV that may or may have not been identical with the later PC4. Those disks contain RTC related files as well.
Last edited by rfka01; 11/13/1409:55 PM.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
the test program from 5xtest shows my real world system time. If I boot with the dmv_rtc image, the time shown by the dos prompt is reset to the time I first started the DMV tonight, currently 22:49:30, every time I reboot the machine using F3.
This is the behaviour of device_rtc_interface::set_current_time and I have no idea if is intended or not, anyway a hard reset (left shift + F3) forces a resync of the rtc with the real-world date/time.
Anybody can be the next George R.R. Martin now ... Sandro's added the K210 centronics interface, and you can load Wordstar in CP/M and print to a file through the line printer emulation.
Is there an equivalent to the post-processing that is possible with the Apple Imagewriter driver?
I'm still struggling with the concept of how to connect something to an emulated serial port - as the DMV also gained four RS-232 modules in one swell foop.
Thanks once again!
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
There are some external contributors who are getting very close to having several later Epson parallel printers fully emulated. They run the firmware and complete their self-tests now, but they can't yet receive data from the host system or produce any output.
As far as I can tell they're back compatible all the way to the Epson MX and FX that were ubiquitous in the 80s so it should be possible to get your George RR Martin on from a variety of MESS emulated systems
I'm still struggling with the concept of how to connect something to an emulated serial port - as the DMV also gained four RS-232 modules in one swell foop.
Put a "null_modem" device in a serial port slot and use "-bitbngr socket.127.0.0.1:<port>" on the command line.
Doesn't MARK and SPACE mean "parity bit always 1" and "parity bit always 0"? Or am I confusing them now? I admit it has been some time since I had to deal with that
I've worked on the DMV layout a bit ... there are now four options apart from "screen only":
Default without backdrop
Diagnostic module without backdrop
Default with backdrop
Diagnostic module with backdrop
Each view comes with drive LEDs (although I couldn't figure out how to "connect" them in the driver ... disk copying inside the driver works, so having the LEDs work would be nice), and the mainboard diagnostics LEDs.
The views that include the backdrop have a "lighted" power LED. In these views it would be great to be able to call up the file manager dialogue for the respective floppy disk drive by adding a hotspot to the drive knobs. I don't know if MESS supports switching between the host mouse and a guest mouse that might be emulated in the future.
The views for the diagnostic module include the 7 segment LED displays and the diagnostics LEDs on the module. Of these, the six LEDs monitoring the computer's voltage are fixed, the PCLK/, MEMR/ and HLDA LEDs could be hooked up.
I wonder if the recent work on lua and the internal ui has exposed the feature to call up the "file" select dialog for that drive by clicking on artwork. Is it possible to change art depending on the state of a certain toggle - so a picture of an open or closed floppy drive could be swapped in according to the state of the drive?
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
I've noticed a change in the behaviour of the driver, but I can't say when it was introduced:
With the two 07 revision BIOS of the color and mono ROMs, the driver works as usual.
With the two 06 revision BIOS (that is, including the new one) there is a flickering of a cursor block over the bottom line with the floppy error, moving from right to left, and the floppy error is different.
Sorry you need to click on the links in order to see the images ... I'm still struggling with this new hoster.
The problem is that the links that you posted aren't direct links to image files, they're links to web pages on your host. Do yourself a favor and just make an Imgur account, verify it, and enable high-quality uploads.
The problem is that the links that you posted aren't direct links to image files, they're links to web pages on your host. Do yourself a favor and just make an Imgur account, verify it, and enable high-quality uploads.
Yeah, will do. Just missing my free dropbox upgrade ... sniff ... funnily enough another forum software managed to extract the picture links.
@crazyc ... thanks a lot! Your changes fixed the booting issues, the flickering and the erroneous error message in one go!
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Looks like the DMV driver has lost its colour capability ... the Demos and the Escape sequences in DOS only produce a green image. The earliest source I have around is from May 22nd and already has this behaviour.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
if you build with symbols ("make SYMBOLS=1") you can at least track the crash back to find out what's causing it (in case it's not as easy as this time) ;-)
Yeah, one of the long-standing boners of the new floppy system is that higher-density drives can't read lower-density disks even though that's entirely possible on real hardware. If that was solved we could just default everything to the highest density drives and the crash wouldn't be a problem. (Although of course the crash should still be fixed).
Yeah, one of the long-standing boners of the new floppy system is that higher-density drives can't read lower-density disks even though that's entirely possible on real hardware. If that was solved we could just default everything to the highest density drives and the crash wouldn't be a problem. (Although of course the crash should still be fixed).
That's the case with DD disks in a HD drive, e.g. on an AT class machine. A real 1.2MB drive can read 360K disks, so they sort of "belong" to that drive.
Here the 96tpi disk can never be read in the 48tpi drive, so rejecting it is correct - but doing so with a crash is annoying.
On real hardware the Computer's OS would have to decide what to do (Sector not found, Disk Error, Drive not ready) if you can physically cram the disk into the drive.
Maybe our file selector could display some basic data about the disk image (e.g. DD,QD,HD,GCR,FM,MFM, mixed, tracks/sectors/sides), and then load the disk and let the emulated OS do its thing.
This would be a nice approach for machines that were especially praised for their ability to cope with foreign formats, e.g. Commodore 128 or Kaypro II/10.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
The harddisk controller of the DMV with the internal harddisk is awkward to get at, so I didn't know its type (one of the external ones uses a WD1002-HD0). With a bit of fiddling in a photo manipulation software, I was able to read the label on one the big chip of the internal controller and then determine the controller type itself.
It's the even older WD1001 that uses the N8X305N microcontroller, belonging to the AM29 series.
As was mentioned recently in the shoutbox, these controllers are the ancestors of the IDE interface.
According to the System Technical Manual Hardware, the internal harddisk adapter goes to slot 2A, the external one to slots 2-6, IFSEL is 4A and it occupies addresses C0H - C7H.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
We do have a ROM dump from a WD1000 board from a Wicat system in MAME. I wrote an 8X300 core for it some time ago, would be nice to have it do something useful.
Ok, so at a quick glance, the WD1001 seems to be a later version of the WD1000, and it does seem to use an 8X305 (I think it has more instructions and such compared to the 8X300, but I'll have to check on that). It'll likely have different code than the WD1000, since it has the later CPU, but if it gets dumped, we can then compare them to be sure.
I'm not too keen on de-soldering the PROMs, but I've had good success with clamping a socket over the IC's legs ... I'll get sockets and try to remove the board from the DMV ...
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
in addition to the Kaypro 10, the WD1002-HD0 from the external DMV kits is also used on the TRS-80 1, III and IV. From a MAME perspective, what would the WD1002-HD0 need to become to be usable by all the different machines? A device? What would be an example of that?
As for the WD1001-05 from the internal kit, can anyone, preferrably in Europe, read the N82S181 ROMs and perform the soldering?
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
in addition to the Kaypro 10, the WD1002-HD0 from the external DMV kits is also used on the TRS-80 1, III and IV. From a MAME perspective, what would the WD1002-HD0 need to become to be usable by all the different machines? A device? What would be an example of that?
As for the WD1001-05 from the internal kit, can anyone, preferrably in Europe, read the N82S181 ROMs and perform the soldering?
Eric Smith was just asking about WD1001-05 rom dumps. Was anyone ever able to do this?
Small update, here are pics of the K200 memory module which adds 64KB of RAM to the onboard 64KB. The module itself has been included in the DMV driver for a long time, the pics are just for completeness' sake.
Thanks to Sandro Ronco for adding the DMV's harddisk controller! This was the last missing bit to DMV emulation. While experimenting with the new addition, I found that the cursor is wrong, it's a solid block but should be a blinking underscore.
I'm re-acquainting myself with the setup of the harddisks. The partitioning scheme is relatively inflexible (originally 10MB harddisks were used), allowing the CONFIG program to set the number of harddisks and then the number of partitions on those harddisks leading to single 10MB partitions or dual 5 MB partitions per hard disk. CP/M is not bootable from the harddisk. There are later DOS utilities that can create a single 20MB harddisk parition per disk but this is incompatible with CP/M partitions. I'm trying to recreate my old setup that utilised most of a 2x20MB configuration. I'll add a how-to when I have my stuff running again
Last edited by rfka01; 10/26/1901:30 PM.
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
I checked the DMV drivers to see if the recent µPD7220 changes were having any ill effects. The cursor should be a blinking underscore, but ... this has been a solid rectangle going at least back to 0.164 and it has a "//TODO" in the source, so not really a regression
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
The DMV driver seems to have lost the ability to draw the graphics in AutoCAD between 0.235 and 0.236 (there was a µPD7220 change for that release).
I have a HD image set up to replicate the issue. The DMV.BAT file in the archive gives a nicely maxed out configuration for the machine after you adapt the file paths to match your MAME setup.
Boot into DOS, enter "CD ACAD", "ACAD", type option "2" and the drawing's name, e.g. "NOZZLE" or "COLUMBIA".
NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
I've very recently got one of these that has those PROM chips on the fixed-disk controller socketed. Just have to figure how to get the main motherboard out so I can reach for them.
*Edit* I see it's already been sorted. Still, I'd like to verify that they are indeed the same ones.
Also, none of the dropbox links in this thread works anymore. Is there some more up to date alternative?
The easiest way to determine if the ROMs match is to simply zip them and then check if the CRC32 matches what's in MAME. Or run ./mame -romident whatever.bin.
I know, I'm pretty well versed with how it can be done with hex-editors too, but first of all I need to actually dump the chips in my unit before I can check for similarities.
From a binary compare, they are very similar to the ones on bitsavers, however there are a few addresses that contain differences in most of my ROMs:
* 0x0AE to 0x0B2 * 0x18F * 0x2CE * 0x2F9 * 0x2FD to 0x300
In addition to these, all three of my ROMs have an extra byte inserted at 0x301, shifting the remaining content by one byte compared to the bitsavers version. I am pretty confident that the one I have is a revision of the same microcode, but I am not 100% sure if it's an earlier or later revision. My card has an earlier serial number (12675 vs 13109), but the datecode on the chips of my card (sprint 1983) is also just a little later in general than the one on bitsavers.
*EDIT* I had a bit of a look around on the bitsavers page, and my ROMs match the one in this directory: http://www.bitsavers.org/pdf/westernDigital/WD100x/WD1001_NCR_Decision_Mate_V/ Further looking on the different folders, it seems like all of the different cards there have either the one linked on page 12 of this thread, or the one I got.