Page 1 of 1

Intel 8272 (NEC uPD765AC) FDC emulation

PostPosted: 13 Mar 2014, 14:14
by zboszor
Here's my personal wishlist: emulate the FDC chip of the subject line and make the disk interface of the ZX Evo switchable between Beta and +3 compatibility.
The ZX Evo provides a good compatibility with the 128K, it can be made even better by adding the possibility to load the DSK format either from disk or from ramdisk.
It may feel like a step backwards in some way, since the Betadisk interface gives much better storage capacity, 640K vs about 180K in the +3.
But considering the number of *.dsk.zip and *.trd.zip files on WoS, it would double the amount of games playable from real disks or disk files on the SD card.
Although the original floppy drive in the +3 was 3" with an Amstrad CPC/CPW compatible disk layout, regular 3.5" PC floppy drives were also usable as an external B: drive.

FWIW, there exists a hardware that adds such an FDC interface for the +2A. Links:
http://www.worldofspectrum.org/BackToThePlus3/
http://www.simandl.cz/index_a.htm
http://www.datasheetarchive.com/dl/Scans-007/Scans-00158373.pdf

I am not familiar with FPGA programming. The question to those who are: how much work would it be?
In English, they say "vote with your wallet". I would be able to sponsor some of the work time needed for this.

Re: Intel 8272 (NEC uPD765AC) FDC emulation

PostPosted: 13 Mar 2014, 22:49
by lvd
The first (and probably last) problem is that programming interface of uPD765/i8272 is completely different compared to 1818ВГ93 (FD1793). In the ZX Evo, we intentionally decided to keep real 1818ВГ93 chip working with real drives, since any kind of emulation would take tons of time to implement. Additional reason is that FPGA we selected has quite limited resources to spare them emulating chips.
Writing emulation of uPD765 on top of real 1818ВГ93 looks like complete crap :)

So two ways are still possible:
1. Make HW card with uPD765 (or its emulator) to be inserted in ZX Evo and emulating +3 disk iface.
2. Bother only with software emulation of +3 disk iface, pretty much like it is done in divIDE or like ZX Evo ROM firmware emulates now .trd from ramdisk or directly from SD/HDD.

As the second option seems most practical, you still need somebody to write ROM firmware to emulate all that. Our TR-DOS firmware (SD/HDD and ramdisk emulating) was written by Savelij (who is here at the forum), but it took years to become what it is now. You can convince him (but I feel it would be near to impossible) to add +3 emulation or convince smbdy else to write it from scratch (or using existing Savelij code or maybe some other FAT driver). There is a feature in ZX Evo to switch ROM groups (every group is 64k, containing 4 16k pages) and to program each ROM group with arbitrary data. If you need some HW features like new ports/new ROM switching schemes -- it is perfectly possible to add them.

So to summarize, the only practical way is to emulate +3 interface on ZX Evo is through images taken from ram/sd/hdd and the biggest obstacle in it is to write all the emulation ROM firmware.

Re: Intel 8272 (NEC uPD765AC) FDC emulation

PostPosted: 14 Mar 2014, 19:25
by нолька
3. remove VG93 chip from board