PDA

View Full Version : Possible to use "External Floppy (DF1)" as a DF0 ?



dougal
10th January 2015, 15:30
I installed a Gotek in my A500 and it works great, but I do NOT want to butcher the case to fit it inside. I also don't want to spend any more money on adapters and mods.

Is there a way to make the external drive port at the back act as if it was a DF0: so that I can mount the Gotek inside an external floppy drive case ?

BLTCON0
10th January 2015, 21:11
Yes, swap the drive select pins for DF0: and DF1: on the CIA chip.

pms
10th January 2015, 21:12
If you are using kickstart 2 rom, you can select external drive as bootdisk by pressing both mousebuttons after resetting the amiga. (This is how I boot games from external 5 1/4" diskdrive)

dougal
10th January 2015, 21:18
That sounds difficult and risky :(


Yes, swap the drive select pins for DF0: and DF1: on the CIA chip.

- - - Updated - - -

I'm using dual kickstarts 1.3 and 2.04

But how you say, I think not all games will work especially the ones which are "NDOS/Not initiliazed"

If you are using kickstart 2 rom, you can select external drive as bootdisk by pressing both mousebuttons after resetting the amiga. (This is how I boot games from external 5 1/4" diskdrive)

pms
10th January 2015, 21:54
But how you say, I think not all games will work especially the ones which are "NDOS/Not

Try it. I think it will work.

BLTCON0
10th January 2015, 22:00
That sounds difficult and risky :-(


True, although not really that much.
It's the only real (low-level) way though. As you correctly guess, any game that has its own routines to access the drive (i.e. it 'hits the hardware directly') will not work with a software solution.

The signals are on the EVEN CIA (U 8 chip. Remove it, and CAREFULLY (slowly and steadily) lift pins 13 (select DF0: ) and 14 (select DF1: ) so they're at a right angle with the other pins (the pins can survive a few such bendings before they break off).

Take two short pieces of wire, strip the ends and tin them with solder.
Flatten one tinned-end on each wire by depressing it, and insert these ends on positions 13 and 14 on the socket.
Insert the CIA chip into the socket again, taking care that the inserted wires insulation doesn't prevent the firm insertion of the chip.
Solder wire from socket position 13 to the (now hanging) CIA pin 14. Solder wire from socket position 14 to the (now hanging) CIA pin 13.
The swap is now complete. Every DF0: request will be hardware-routed to the external connector, and every DF1: request to the internal connector.

Wires length should be short, but not so short that it makes soldering them to the pins difficult.

roy_bates
10th January 2015, 22:52
That sounds difficult and risky :-(


True, although not really that much.
It's the only real (low-level) way though. As you correctly guess, any game that has its own routines to access the drive (i.e. it 'hits the hardware directly') will not work with a software solution.

The signals are on the EVEN CIA (U 8 chip. Remove it, and CAREFULLY (slowly and steadily) lift pins 13 (select DF0: ) and 14 (select DF1: ) so they're at a right angle with the other pins (the pins can survive a few such bendings before they break off).

Take two short pieces of wire, strip the ends and tin them with solder.
Flatten one tinned-end on each wire by depressing it, and insert these ends on positions 13 and 14 on the socket.
Insert the CIA chip into the socket again, taking care that the inserted wires insulation doesn't prevent the firm insertion of the chip.
Solder wire from socket position 13 to the (now hanging) CIA pin 14. Solder wire from socket position 14 to the (now hanging) CIA pin 13.
The swap is now complete. Every DF0: request will be hardware-routed to the external connector, and every DF1: request to the internal connector.

Wires length should be short, but not so short that it makes soldering them to the pins difficult.

years ago,there was a board made that went into the cia socket to do exactly that(cant remember who used to make them)
it was simply a pcb with a socket on it with fly leads to a switch to select df0 or df1 internal /external,you removed the cia and transplanted it to the pcb's socket and plugged the whole lot back in and off you went.
it was for the 500.

dougal
10th January 2015, 23:37
Is this it:

http://www.amibay.com/showthread.php?64806-Boot-selector-for-A500&highlight=boot+selector

BLTCON0
11th January 2015, 00:49
Is this it:

http://www.amibay.com/showthread.php?64806-Boot-selector-for-A500&highlight=boot+selector


No, since it doesn't have a PCB, but it obviously does the same job.

This one seems to have been constructed using two piggybacked sockets (to allow easy breaking of connections for pins 13 and 14).
Lower socket goes into CIA socket on the motherboard.
Upper socket goes into lower socket, except for pins 13 and 14.
CIA chip goes into upper socket.
Positions 13 and 14 between sockets are interconnected via a switch to allow straight (13 lower-13 upper & 14 lower-14 upper) or crossed (13 lower-14 upper & 14 lower-13 upper) wiring selection.

roy_bates
11th January 2015, 10:10
to be honest this would be very simple to do,even with a pcb.a proto or vero board will work,a socket pin headers and a dual pole switch and some wire.

all the wiring is on the dual pole switch for switching the signals over or passing them through,if you get stuck i can draw a rough diagram to show you how to wire it.

Snoozy
11th January 2015, 11:42
I bought one of these http://www.ebay.co.uk/itm/NEW-Gotek-External-Drive-Adapter-for-the-Commodore-Amiga-HUGE-PRICE-DROP-/111362377044?pt=UK_VintageComputing_RL&hash=item19edb70554 and then in boot options, select df1 as boot disk - to try to force the external gotek to act as dfo:

Total waste of time, only around 20% of games work from the gotek, defeating the original purpose of the gotek. Far easier to dremel too little cuts on the 1200 white casing floppy enclosure and have gotek fitted in df0 as it was designed to.

dougal
11th January 2015, 12:25
Yes I saw those and imagined they would be a waste of time & money... They are basically the exact same hardware any Amiga extarnal floppy drive has, minus the actually floppy drive.

No dremelling on my A500. For now (temporarily) I've removed the metal shielding and the middle rear case screw and passed the floppy ribbon cable and power cable out from the back of the case (between the top and bottom casing) and kept the Gotek externally. The internal original disk drive is still in there though its disconnected obviously.

Its much neater than removing the original drive and passing the wires from the drive hole in my opinion as I tried it and it looked messy.

Eventually i'll look into doing that mod where there Disk Drive port and be switched between DF0 or DF1.


I bought one of these http://www.ebay.co.uk/itm/NEW-Gotek-External-Drive-Adapter-for-the-Commodore-Amiga-HUGE-PRICE-DROP-/111362377044?pt=UK_VintageComputing_RL&hash=item19edb70554 and then in boot options, select df1 as boot disk - to try to force the external gotek to act as dfo:

Total waste of time, only around 20% of games work from the gotek, defeating the original purpose of the gotek. Far easier to dremel too little cuts on the 1200 white casing floppy enclosure and have gotek fitted in df0 as it was designed to.

SkydivinGirl
11th January 2015, 12:54
I've been thinking about doing a remake of the ICD Shuffleboard. It allows you to remove the internal floppy drive ans assign the first external drive to DF0. This board plugs in between the Gary and the motherboard. The only problem is that I don't know which Amigas the board will work in. It will definitely work with the A500 and A2000.

Heather

BLTCON0
13th January 2015, 04:02
I've been thinking about doing a remake of the ICD Shuffleboard. It allows you to remove the internal floppy drive ans assign the first external drive to DF0. This board plugs in between the Gary and the motherboard. The only problem is that I don't know which Amigas the board will work in. It will definitely work with the A500 and A2000.

Heather

The board plugs between Even CIA and the motherboard, not Gary.
On the A2000 it will work just as fine as on the A500/A1000, but DF0: will map to the second internal and not to the first external drive.

DonutKing
13th January 2015, 06:43
I had the idea of making a DF0/DF1 switch that changed when you held down a mouse button on startup - similar to how some of those kickstart switchers work.
The idea was that you could hook up the gotek externally, keep the real floppy drive inside the amiga, and switch between them by holding down a button when you power on.
However I never found any info on how this was accomplished.

BLTCON0
13th January 2015, 12:40
I had the idea of making a DF0/DF1 switch that changed when you held down a mouse button on startup - similar to how some of those kickstart switchers work.
The idea was that you could hook up the gotek externally, keep the real floppy drive inside the amiga, and switch between them by holding down a button when you power on.
However I never found any info on how this was accomplished.

The theory is not very complicated - you'd want to use the reset signal available on a Gary pin (e.g. high to low transition) as a trigger to latch the state S (available on a CIA pin) of the left mouse button, and say /S=0 -> no swap and /S=1 -> swap, then you'd implement equations such as:

/SEL0_out = S*/SEL0_in + /S*/SEL1_in and
/SEL1_out = S*/SEL1_in + /S*/SEL0_in

using simple logic or maybe a PAL ('ins' are taken from the CIA chip pins, 'outs' are connected to the corresponding motherboard/socket pins).

Someone with more experience in electronics can certainly provide more detailed info.

dougal
13th January 2015, 12:44
I think someone should make these adapters. It will save so many Amiga 500/600s from being butchered.

Don't know if an A1200 solution is possible given that the chips are all soldered.

roy_bates
13th January 2015, 12:48
I think someone should make these adapters. It will save so many Amiga 500/600s from being butchered.

Don't know if an A1200 solution is possible given that the chips are all soldered.

the 600's cias are soldered down too.

SkydivinGirl
13th January 2015, 13:18
The board plugs between Even CIA and the motherboard, not Gary.
Thanks for the correction. I haven't been able to find any documentation and what I have found references the Gary chip.

Heather

dougal
13th January 2015, 13:20
I think someone should make these adapters. It will save so many Amiga 500/600s from being butchered.

Don't know if an A1200 solution is possible given that the chips are all soldered.

the 600's cias are soldered down too.

Oh yes. I forgot. Well I guess it will apply for an A500 and A1000 since A2000 does not really need one.

Stedy
13th January 2015, 21:11
To make DF0:/DF1: switchable with a real drive has a slight complication. You need a Motor ON signal.

Swapping SEL0/SEL1 for a Gotek or HXC drive is easy, that's all they use. The A500/A600/A1200 have SEL0/SEL1 on the internal floppy cable but crucially, only MTR0 (MOTORON on A500). This enable the motor, on drive 0 at the same time as SEL0. I tried connecting two drives to MTR0, nothing worked as they caused bus contention. :picard At least I know why. The A1500/A2000/A3000/A4000 have logic onboard to re-assign DF0:/DF1:

According to the timing diagrams, SELx and MTRx go active at the same time so you may be able to connect SELx to MTRx on the Amiga floppy as well as the SELx input. If not pick off SELx and MRES from the 23 pin external floppy connector, generate MTRx + SELx to create MTR1 for a real floppy and use a long Reset (CTRL-Amiga-Amiga) to switch between Real floppy and emulated. That's the basic idea, it may need some tri-state buffers and a delay circuit (or microcontroller) to control the drive swap.

Ian

BLTCON0
3rd February 2015, 10:26
I had the idea of making a DF0/DF1 switch that changed when you held down a mouse button on startup - similar to how some of those kickstart switchers work.
The idea was that you could hook up the gotek externally, keep the real floppy drive inside the amiga, and switch between them by holding down a button when you power on.
However I never found any info on how this was accomplished.

Got down to it eventually this weekend and designed something based on my equations. Not familiar with PALs/GALs so just discrete logic here. I'm including the schematic from the simulated circuit (sans power and decoupling). It works correctly in simulation, I'll build a prototype when possible to see how stable it is in action. You can give it a try as well.
All signals are active low. The flip-flop is positive-edge triggered, so the state of the left mousebutton is latched upon release of CTRL+A+A. Not pressed = standard mapping (S01 = S0, S10 = S1), depressed = DF0: and DF1: swapped (S01 = S1, S10 = S0).

Update: Prototype built and works fine, with full drive swap.

asapreta
4th May 2016, 16:42
I had the idea of making a DF0/DF1 switch that changed when you held down a mouse button on startup - similar to how some of those kickstart switchers work.
The idea was that you could hook up the gotek externally, keep the real floppy drive inside the amiga, and switch between them by holding down a button when you power on.
However I never found any info on how this was accomplished.

Got down to it eventually this weekend and designed something based on my equations. Not familiar with PALs/GALs so just discrete logic here. I'm including the schematic from the simulated circuit (sans power and decoupling). It works correctly in simulation, I'll build a prototype when possible to see how stable it is in action. You can give it a try as well.
All signals are active low. The flip-flop is positive-edge triggered, so the state of the left mousebutton is latched upon release of CTRL+A+A. Not pressed = standard mapping (S01 = S0, S10 = S1), depressed = DF0: and DF1: swapped (S01 = S1, S10 = S0).

Update: Prototype built and works fine, with full drive swap.


Very nice explanation and schematics.
Would you mind posting your full solution?

And sorry for reviving a more than 1 year old thread.

Starglider
20th December 2016, 00:37
I had the idea of making a DF0/DF1 switch that changed when you held down a mouse button on startup - similar to how some of those kickstart switchers work.
The idea was that you could hook up the gotek externally, keep the real floppy drive inside the amiga, and switch between them by holding down a button when you power on.
However I never found any info on how this was accomplished.

Got down to it eventually this weekend and designed something based on my equations. Not familiar with PALs/GALs so just discrete logic here. I'm including the schematic from the simulated circuit (sans power and decoupling). It works correctly in simulation, I'll build a prototype when possible to see how stable it is in action. You can give it a try as well.
All signals are active low. The flip-flop is positive-edge triggered, so the state of the left mousebutton is latched upon release of CTRL+A+A. Not pressed = standard mapping (S01 = S0, S10 = S1), depressed = DF0: and DF1: swapped (S01 = S1, S10 = S0).

Update: Prototype built and works fine, with full drive swap.

Any chance you would sell me one?