Previous Thread
Next Thread
Print Thread
Page 1 of 3 1 2 3
Bondwell BW-14 #116479 11/24/19 04:28 PM
Joined: Jan 2012
Posts: 1,028
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,028
I received a Bondwell BW-14 from a friend and dumped its ROMs since it has a German keyboard. The character ROM indeed is different, I've integrated it into the driver and submitted a PR. The archive I've uploaded to the FTP also contains photos from my machine and some schematics I found online.

It would be great if one of the Devs could give the driver a look (it's marked as a Skeleton in the comments section but not in the driver description).
The PC I'm using for MAME has plenty of power (32G RAM, i7 4790k CPU).

Some observations:
- the ROM based parts (initial system check, reset) happen in "real time", the reset is almost too quick as on the real iron it shows two distinct pages of ASCII patterns
- there are two major delays during the boot, one after CP/M 3.0's "54K TPA" message (ca. 75sec), the other after the Digital Research copyright message on the next page (ca. 17sec.)
- the emulated BW-14 will boot from the software list boot disk but neither from the direct dump of the disk that came with my machine or from one I reconstructed using the software list boot disk and mine
- if I convert the softwarelist boot disk to .MFM using the HxC tools, the emulated BW-14 doesn't boot from it
- There's a 20s delay before the directory of a newly inserted disk in A: or B. is displayed, haltingly.
- formatting a disk in the emulated BW-14 works, but is very slow. When the real hardware formats the disks, then verifies it, verifying a track takes about 1sec, in the emulation it's ca. 17sec
- copying files (using PIP) shows the first filename, but then nothing more happens ... in the Debugger you can see that the machine is still alive, but doesn't proceed.




Last edited by rfka01; 11/24/19 04:31 PM.

NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Bondwell BW-14 [Re: rfka01] #116482 11/25/19 01:53 AM
Joined: Jan 2012
Posts: 814
C
crazyc Online Content
Senior Member
Online Content
Senior Member
C
Joined: Jan 2012
Posts: 814
Quote
- if I convert the softwarelist boot disk to .MFM using the HxC tools, the emulated BW-14 doesn't boot from it


The rom appears to expect sectors to be numbered from 0 but hxc messes this up and renumbers numbers them from 1 instead.

Quote
- there are two major delays during the boot, one after CP/M 3.0's "54K TPA" message (ca. 75sec), the other after the Digital Research copyright message on the next page (ca. 17sec.)


It's reading the disk through this whole period so I don't know why it would be much slower than the real hardware if it is. It reads one sector at a time which is going to be rather slow.

Quote
- the ROM based parts (initial system check, reset) happen in "real time", the reset is almost too quick as on the real iron it shows two distinct pages of ASCII patterns


The ASCII pattern does appear in the emulation but it's so fast it can't really be seen.

Quote
- copying files (using PIP) shows the first filename, but then nothing more happens ... in the Debugger you can see that the machine is still alive, but doesn't proceed.


Trying to write to one of the cpm disks it overran the index while writing the last sector which confused the emulation so it gave up. The sectors are very closely packed on that disk but I don't know if the cpm floppy was specially written to pack extra data or our cqm image loader makes the intersector gap too large.

Re: Bondwell BW-14 [Re: rfka01] #116483 11/25/19 06:01 AM
Joined: Jan 2012
Posts: 1,028
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,028
You can see my BW-14 booting CP/M 3.0 and loading WordStar here:

https://i.imgur.com/BGjskX4.mp4

The 75 and 17 sec delays in MAME seem a bit excessive smile

18 sectors per track is cramming things rather tightly. As for gap sizes, this is what IMD comes up with:

[Linked Image from i.imgur.com]

You can watch the output of the probe2.com utility here: https://i.imgur.com/SM5SaM0.mp4

The 22disk definition (which appears to work) is

Code
BEGIN BON2  Bondwell 14 - DSDD 48 tpi 5.25"
DENSITY MFM ,LOW
CYLINDERS 40
SIDES 2
SECTORS 18,256
SKEW 2
SIDE1 0 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17
SIDE2 1 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17
ORDER CYLINDERS
BSH 4 BLM 15 EXM 1 DSM 174 DRM 127 AL0 0C0H AL1 0 OFS 2
END


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Bondwell BW-14 [Re: rfka01] #116484 11/25/19 01:06 PM
Joined: Jan 2012
Posts: 814
C
crazyc Online Content
Senior Member
Online Content
Senior Member
C
Joined: Jan 2012
Posts: 814
Originally Posted by rfka01

SKEW 2


Interleave probably makes a big difference. The cqm images are loaded with the sectors in order. Since the machine reads one sector at a time it always misses the next sector and has to wait for a whole disk rotation to do the read.

Re: Bondwell BW-14 [Re: rfka01] #116485 11/25/19 01:28 PM
Joined: Jan 2012
Posts: 1,028
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,028
What's the interleave used to create MFM/HFE images from within MAME?

Last edited by rfka01; 11/25/19 01:29 PM.

NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Bondwell BW-14 [Re: rfka01] #116486 11/25/19 02:27 PM
Joined: Jan 2012
Posts: 814
C
crazyc Online Content
Senior Member
Online Content
Senior Member
C
Joined: Jan 2012
Posts: 814
MAME just uses the sector order from the image. The sectors in the CQM images from the softlist have no interleave. The IMD images from the upload dir have the correct interleave and the first part of the boot is very quick. The second part is slow because it pauses for a few revolutions before reading each sector. The boot then hangs because it tries to write to the disk.

Re: Bondwell BW-14 [Re: rfka01] #116487 11/25/19 02:30 PM
Joined: Jan 2012
Posts: 1,028
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,028
I mean, if I'm formatting an image from within the emulation (as I want to get a writable disk image) and chose MFM or HFE, what's determining the interleave? Is it hardcoded in MAME's image handling or does the FORMAT utility get a say?


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Bondwell BW-14 [Re: rfka01] #116488 11/25/19 02:35 PM
Joined: Jan 2012
Posts: 814
C
crazyc Online Content
Senior Member
Online Content
Senior Member
C
Joined: Jan 2012
Posts: 814
MAME will preserve the interleave if the image format supports it and the image save routine handles it properly. From a quick glance MFM format saves whole tracks at once so the interleave shouldn't be touched.

Re: Bondwell BW-14 [Re: rfka01] #116489 11/25/19 02:43 PM
Joined: Jan 2012
Posts: 1,028
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,028
Thanks, I'll try to format a MFM image tonight and PIP the stuff from my German boot disk over ...


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Bondwell BW-14 [Re: rfka01] #116491 11/25/19 10:04 PM
Joined: Jan 2012
Posts: 1,028
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,028
Here's the BW-14 booting the same disk (image) on real hardware and in emulation. I'm formatting a MFM disk image in the emulation and a physical floppy disk on the real BW-14. I've stopped recording the verification operation in MAME after three tracks smile

https://mega.nz/#!WFZnXYBY!edLcbH2dHHrFKfCpAzOyhDinaIH0nklf91b7ibI14M4

https://mega.nz/#!CMQRSIjR!twVYn_m3MVClTdErI0a0WQDKpmw1Z564whJH1h-L-Yo


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Bondwell BW-14 [Re: rfka01] #116492 11/26/19 02:39 AM
Joined: Jan 2012
Posts: 814
C
crazyc Online Content
Senior Member
Online Content
Senior Member
C
Joined: Jan 2012
Posts: 814
After cpm boots it's disk reading routine has a long delay look before it checks for completion. That loop is long enough to take several revolutions to complete. It seems like there ought to be an interrupt to break out of the loop but the way the fdc irq is connected don't appear to work like that.

Re: Bondwell BW-14 [Re: rfka01] #116493 11/26/19 07:03 AM
Joined: Jan 2012
Posts: 1,028
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,028
The schematics I posted to the FTP came from here. The page about the FDC contains a FDCINT line.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Bondwell BW-14 [Re: rfka01] #116494 11/26/19 12:42 PM
Joined: Mar 2001
Posts: 16,391
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,391
Right, FDCINT goes to PA7 on the 6821.

Re: Bondwell BW-14 [Re: rfka01] #116495 11/26/19 04:07 PM
Joined: Jan 2012
Posts: 814
C
crazyc Online Content
Senior Member
Online Content
Senior Member
C
Joined: Jan 2012
Posts: 814
Page 1 shows a 556 timer connected to the motor on line. We are turning off the motor immediately which causes each read to do turn it back on and wait for a bit until it spins up. The timer is supposed to hold the motor on for bit which allows it to skip the loop. The simple fix is to just never shut off the motor, better is to figure out approximately how long the timeout should be.

Re: Bondwell BW-14 [Re: rfka01] #116496 11/26/19 05:15 PM
Joined: Mar 2001
Posts: 16,391
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,391
The schematic doesn't exactly match any of the usual 555/556 hookup styles, so it may be doing something weird. Maybe mock it up with the netlist system and see what happens?

Re: Bondwell BW-14 [Re: rfka01] #116497 11/26/19 07:19 PM
Joined: Mar 2006
Posts: 1,035
L
Lord Nightmare Offline
Very Senior Member
Offline
Very Senior Member
L
Joined: Mar 2006
Posts: 1,035
Looking at the 556 circuit at http://www.eld.leidenuniv.nl/~moene/Home/museum/Bondwell12/schematics/BW12-A1-CPU-IO-Decode.pdf, I'm trying to figure out what they were trying to do here.

It seems they basically used the 556 as a fancy voltage threshold comparator with hysteresis; the IC51 7416 open collector inverter pulls the TRIG and THRESHOLD pins low when its input (MOTOR1 | MOTOR2) is high, which makes the OUT pin of the 556 high and leaves it that way (which turns on the motor). When the (MOTOR1 | MOTOR2) signal is low, the 7416 allows the TRIG/THRESHOLD pins to be charged (via the 100k resistor at R16 to VCC, charging the capacitor at C11 which is, I think, 1.7uf electrolytic) until the THRESHOLD pin reaches 2/3 of VCC at which point the 556 shuts off and turns off the motor.

This is a non-standard hookup of the 556, since normally the capacitor is between the threshold/trigger pins and ground, not between them and VCC. The 556 is basically being used only for hysteresis (turns on when trigger is below 33% of VCC, turns off when threshold is above 66% of VCC) with the trigger and threshold pins tied together, and the external circuit with the 7416 discharging C11 and C11 recharging through the 100k resistor.

Since the 7416 pulls directly to ground it should discharge C11 very fast (and this current surge is probably not great for the lifespan of either C11 nor the 7416, though the 7416 is meant for very high voltage applications so it may be ok), however this discharge rate technically controls how fast the motor will turn on after request, so it is a finite (but very small) delay, which might be able to be ignored.

So, for the old fashioned τ = RC time constant equation for how long a capacitor takes to charge to ~63% of its capacity (and assuming 63% and the 66% of vcc threshold for the 556 are 'close enough' to be the same), the motor off delay is ~0.17 seconds.

This should be easily emulatable using a timer.


"When life gives you zombies... *CHA-CHIK!* ...you make zombie-ade!"
Re: Bondwell BW-14 [Re: rfka01] #116498 11/26/19 08:12 PM
Joined: Jan 2012
Posts: 814
C
crazyc Online Content
Senior Member
Online Content
Senior Member
C
Joined: Jan 2012
Posts: 814
170ms appears to be enough to keep the motor on between consecutive sector reads.

Re: Bondwell BW-14 [Re: rfka01] #116499 11/26/19 08:30 PM
Joined: Mar 2006
Posts: 1,035
L
Lord Nightmare Offline
Very Senior Member
Offline
Very Senior Member
L
Joined: Mar 2006
Posts: 1,035
A possible modification that this circuit could have to reduce wear on C11 is adding a resistor between the 7416 output and the resistor/capacitor/threshold/trigger pins, to somewhat reduce the amount of current the capacitor is dumping out through the 7416 during discharge; this would have to be carefully calculated so that the motor on timing doesn't get delayed by so long that it starts causing read errors.


"When life gives you zombies... *CHA-CHIK!* ...you make zombie-ade!"
Re: Bondwell BW-14 [Re: rfka01] #116500 11/26/19 08:38 PM
Joined: Jan 2012
Posts: 814
C
crazyc Online Content
Senior Member
Online Content
Senior Member
C
Joined: Jan 2012
Posts: 814
It's already got quite a long delay loop waiting for the motor to start. A few extra ms for the cap to discharge probably wouldn't cause any problems.

Re: Bondwell BW-14 [Re: rfka01] #116501 11/26/19 10:37 PM
Joined: Jan 2012
Posts: 1,028
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,028
Thanks to all involved!
Booting and formatting work like a charm now. Copying the system (COPYSYS) and PIPing files over from one disk to another still fail. I'll try to find other systems that use a 18 sectors/track, 256 bytes/sector format and check those commands there.

Last edited by rfka01; 11/26/19 10:41 PM.

NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Re: Bondwell BW-14 [Re: rfka01] #116502 11/26/19 11:17 PM
Joined: Jan 2012
Posts: 1,028
rfka01 Offline OP
Very Senior Member
OP Offline
Very Senior Member
Joined: Jan 2012
Posts: 1,028
According to the 22DISK database, Televideo 801 and 806 use a similar format (albeit with the sector numbering starting at 1), but we emulate neither. I'm not familiar with the Televideo series, e.g. if the TV802 uses the same disks and how to operate the machine. Another option would be MT CP/M for the TRS-80 Model 4, but I can't find disk images and the emulation only has SD images hooked up at the moment.


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20
Page 1 of 3 1 2 3

Who's Online Now
3 registered members (R. Belmont, Justin, crazyc), 214 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,722
Posts114,638
Members4,873
Most Online510
Aug 26th, 2019
Powered by UBB.threads™ PHP Forum Software 7.7.3