8bit Projects For Everyone


Find   for  

YAMOD.FDC765A

This is simple application for the FDC765A chip (Floppy Disk Controller), also known as Intel 8272.

YAMOD.FDC765A can work in 2 configurations - ZX Spectrum +3 compatibility and YABUS.ISA compatibility.

In ZX Spectrum +3 compatibility the floppy disk controller is seen in ports #2FFD (main status) and #3FFD (commands and data). Address lines A8..A11 are not decoded. Also port #1FFD is decoded where bit 3 controls the FDD motor (1 means on). The FDC clock is 4MHz (this gives 250kbps transfer). Optionally, selecting drives 2 and 3 can switch the clock to 8MHz (500kbps transfer), what gives possibility to read and write HD floppy disks (usually called 1.44MB).

In YABUS.ISA compatibility the floppy disk controller is seen in ports #74 (main status) and #75 (commands and data). Address lines A8..A15 are not decoded. Beside, port #72 is decoded where bit 0 select drive and bits 4 and 5 controls the FDD motors (in PC AT compatibile way). Also port #77 is decoded, where bit 1 selects FDC clock (1 for 4MHz/250kbps, 0 for 8MHz/500kbps). Bit 7 in port #77 returns disk drive status (returns information, if disk was changed).

YAMOD.FDC765A can be build using an integrated PC AT floppy disk controller, in that case the ZX Spectrum +3 compatibility is not available.

YAMOD.FDC765A can be used also in Amstrad CPC. The basic version (with 765A/8272 chip) can be external floppy interface for CPC 464, while the integrated PC AT FDC can work in CPCISA compatibility.

The idea - disk interface for ZX Spectrum +2A

The ZX Spectrum +2A are similar to ZX Spectrum +3, but have tape recorder in place of floppy drive. Also, FDC circuit is not present, however, due to the same ULA chip, there are decoding and /MOTOR ON signals available. So it looks easy to add the FDC.

The first problem - data separator

The FDC765A need external circuit with PLL (phase locked loop), called data separator. In ZX+3 an integrated SED9420 is udsed (in Amstrad CPC - the FDC9216). So, what to do?

The data separator can be also build from TTL logic. I found one solution on an old FDC ISA card, but uses a lot of logic chips. Another one was for the Elwro 523... But the one on Peter Simandl's page looks the best.

The second problem - 74S188 PROM

The data separator is build from 3 TTL chips (74LS74, 74LS174, 74S188). But the last is a PROM, that must be programmed before use. And, beside is hard to get.

I found another solution. After analyse the PROM contents I found it can be easy replaced with a 74LS157 multiplexer and 74LS83 adder. (In case of problems, the adder can be replaced with 4 XOR gates and 4 AND gates.) So we have one 4 TTL chips (5 in the worst case) without need to program a rare part.


Tell other people:

Links to other pages



See also

DSKHNDLR
Low level floppy and hard disk drivers for Z80.
To +3
Disk interface for +2A/+2B that makes them compatibile to +3.
Elwro 800 Junior
Elwro 800 Junior - ZX Spectrum clone produced in Poland. Also works under CP/M 2.2 (CP/J) with access to disk drive via a network.

E-mail:

Password:



Forgot password?

Register?
Apple
HDD
Atari
IDE KMK/J¯
MyIDE
SIO2IDE
Commodore
IECATA
CPC
CPCISA
Hacker
PC
IDE
LPT
Sam Coupé
Atom
FDD
RTC
Samtrum
YABUS.SAM
YAMOD
ATBUS
AYLPT
EPROG
FDC765A
IDE8255
KJOY
ZXINPUT
Timex
BEU
Cartridge
FD-68
Larken
ZX81
ZX96
ZX1541
ZX Spectrum
AC-DOS
Interface 1
Interface 1 Bis
Interface 2
GeneralSound
Macface
MB-02
NMI
Packet Radio
PB-3
PL3MEM
Plus D
POLBASIC
Printer
Split
Timex M-397
CA80
YABUS.ZX
YABUS.ZXISA
YABUS.ZXMEM

If you see error on this page, describe here:

© 2009-12-28 21:50 Jarek Adamski, http://8bit.yarek.pl