News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu

4 floppys in cpc ??????????????????????

Started by FRAGKI-2012, 04:27, 15 January 14

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

FRAGKI-2012

can be fit 4 floppys in a cpc 6128????

Ia,Ib,Ic,Id like that or with hardware switches?????????
1 must be the internal and the original
2 a 3.25 floppy
3 a 3.25 floppy
4 a 3,25 or beter a 5,25
??????????

TFM

Yes! That works. You can use a 2 to 4 decoder. Somewhere in the forum is a thread about it iirc.


btw: FutureOS supports these four floppies. Also JavaCPC does.  :)  Maybe Arnold does too. Other emus don't do iirc.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus


Bryce

Yes. You'll need to connect a 2 to 4 decoder in the disk controller circuit. The two inputs connect to pins 28 and 29 (US0 and US1) of the µPD765. The 4 outputs would need to be connected to the 4 drive connectors (to the Drive Select 0 pin) and you'd need to remove the wire that are currently connected to the 2 existing floppy connectors. The Select signal inverted, so depending on the decoder you choose, you may need to add inverters too.

Bryce.

TFM

#4
Right. To go into more detail. The four outputs go to DS0,1,2 and 3 on the floppy cable. And of course you would need floppies which support DS0,1,2,3 inputs (like it was common in CPC days). Today floppies may only have a DS0 and DS1 input, then you trick them by routing the DS0,1,2 and 3 from the CPC to the four floppies DS0 each (with correct jumper set). I guess that is was Bryce did mean.  :)




EDIT: Just thinking of an adapter which uses the signals from CPC drive B floppy port for generating three plugs for three drives external (B, C, D). But one probably can't come around to modify one wire internally (that one which goes to drive A).

TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Bryce

??? You can connect all four signals to the DS0 pin on each drive and it will work fine if they are all set to DS0. You don't need any special drives.

Bryce.

TFM

Well, this way you need four cables then. But why not.  :)  When using DS0-3 like originally intended you can put all drives (as nice tower) on one cable. All my regular drives have DS0-3 pins & jumpers thanks god! Even the Robotron drives from the former DDR, they actually contain the most best ICs.
I lost a bit track about these special drives they use in PCs nowadays. But it seems that this era is now over too.


Good to see that there is always a solution for CPC relates questions.  :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Munchausen

How about software? How would you switch floppies in AMSDOS?

Bryce

#8
Well you could use two cables then and have a DS0 and DS1 on each cable.

I've seen 5.25in and 8in drives with DS2 / 3, but I don't think I've ever seen a 3.5in drive with them.

Bryce.

MacDeath

Quotecan be fit 4 floppys in a cpc 6128?
supported by symb... I meant FutureOS.
but need a bigger table and huge power supply. ;D

TFM

#10
Quote from: Munchausen on 22:36, 15 January 14
How about software? How would you switch floppies in AMSDOS?

That could be relative easy be done by patching AMSDOS.

Or use DDOS from Dobbertin (not X-DDOS!). DDOS supports four drives.  :)




Quote from: Bryce on 22:39, 15 January 14I've seen 5.25in and 8in drives with DS2 / 3, but I don't think I've ever seen a 3.5in drive with them.


Well, I got two of them. One is still in use, the other one ... I forgot... maybe backup.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

FRAGKI-2012

thank you but you can connect from cpc b drive port a cable with 4 connector's ??? LIKE the picture

Bryce

Of course, but only if you have drives that can be set to DS2 and DS3 (you skipped 2 in your diagram).

Bryce.

Munchausen

Hmm, if you wanted the internal drive to still be usable as well (and neatly), I guess you'd need some decoder logic internally so the A drive only comes on with, e.g. DS0=1, DS1=0, and one externally to decode for the other 3 drives.


FRAGKI-2012 - yes, but you need a decoder, and you'd need to disable the internal drive. Or have just 3 drives externally and a decoder for the internal drive as suggested above.


The decoder takes the two drive select lines and decodes them to four outputs, i.e.


DS0 = 0, DS1 = 0 => select drive 1
DS0 = 0, DS1 = 1 => select drive 2
DS0 = 1, DS1 = 0 => select drive 3
DS0 = 1, DS1 = 1 => select drive 4

Munchausen

Quote from: TFM on 18:23, 16 January 14
That could be relative easy be done by patching AMSDOS.

Or use DDOS from Dobbertin (not X-DDOS!). DDOS supports four drives.  :)


That's cool. I wish there was one DOS to rule them all though.

Bryce

#15
Ok, here's an explanation of how it all works (grab a coffee):

The µPD765 has two control lines for the DS selection, called US0 and US1. They should be decoded as follows:

US1  US0  Select
0       0      DS0
0       1      DS1
1       0      DS2
1       1      DS3

The select signal is inverted (a zero logic level selects the drive). This decoding would need to be done by a 2 to 4 decoder (as mentioned by TFM above)  with inverted outputs as the CPC doesn't do this normally. The CPC does a cheap version of this. In the CPC US1 isn't connected at all. The output of US0 is inverted and sent to the external drive DS1 pin. This signal is then inverted again and sent to the internal drive DS0 pin. ie: When US0 = 0 then A: is selected, when US0 = 1 then B: is selected. This can easily be tested on a real machine if you write the code to select DS2/3 it will select A: when DS2 is selected and B: when DS3 is selected.

Now on to the drives themselves. The shugart standard pinout defines a seperate pin for selecting each drive. Pin 10 is DS0, so if a drive is set to respond to DS0, then it reacts when this pin goes low. DS1 is pin 12 and again if the jumper has been set to DS1, the drive reacts when this pin goes low. Whether set to DS0 or DS1, the drive doesn't look at the other DS pins, only the one they are set to. No decoding is done in the drive.
DS2 and DS3 are pins 14 and 4 respectively. On most modern drives these aren't connected at all, so some modding would be required to get a drive to react to these pins. On top of that, the CPC uses these pins for a 5V supply from the FD-1 to power the DDI-1, so you can't use them without further modding to the CPC. On other systems these pins got re-used for other things, on the Amiga for example DS2 was actually properly implemented, but the wire for DS3 was used to control something else as far as I can remember (need to check the schematics again).

So to go back to the question "How easy would it be?": There are several solutions, but the easiest solution is going to require at least some modding to the CPC and the 100% shugart standard solution will involve further CPC modding and possibly some changes to the drives if your drives don't have DS2 and 3 implemented.

Bryce.

TFM

Hmmmmm....  Somebody once told me that you could add a drive D at least on the disc drive B port. Now since Bryce explained all the internals I seriously start to doubt that.


Personally I use a Vortex F1-D controller[nb]The Vortex F1-D supports DS0-3, no patch needed in this case. [/nb] for my four drives tower (2x 5.25", 2x3.5"), but they are hard to get in these days, so it would be desirable to make it more easy for an internal CPC patch. But there is sadly no easy 'plug & 4-drives' solution in sight.

TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

arnoldemu

Is there much software out that causes problems on 4 drives?

i would think there could be at least one copy protections that could cause problems.

What I mean here is if you access drive 2 on a normal setup, this also accesses drive 0.

(Normal setup means CPC6128 internal disc controller, no hardware modifications for 4 drives).
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

TFM

Can't imagine it.  :)  Shouldn't be a problem, but maybe I missed your point.  :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Munchausen

#19
So IMHO it seems the neatest solution (meaning, least modifications to CPC) would be to wire the actual US1 and US0 to the DS1 and DS0 lines on the 2nd floppy connector, and add a decoder for the internal drive that generates the DS0 signal for it from US0 and US1 (and inverts it presumably). Then you can put a decoder externally for the other 3 drives (and invert the outputs? Or maybe you just invert US0 and US1 internally before wiring them to DS0 and DS1? I'd need to work that out).

Right?


I can see it being handy to have a 3" drive, an HxC, and a 3.5" drive connected at the same time.

TFM

Quote from: Munchausen on 20:45, 17 January 14
I can see it being handy to have a 3" drive, an HxC, and a 3.5" drive connected at the same time.


Very true! And for efficient copying of a big disc one should have two 3.5" drives.  :)  VIER GEWINNT!  :laugh:
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Powered by SMFPacks Menu Editor Mod