Changes

Jump to: navigation, search

UIDE Universal IDE adapter cards for Z-80 computers

1,003 bytes added, 11:27, 26 February 2017
/* Drivers */
The provisional PCW driver suite can be downloaded here: [[File:Xdriver PCW suite 0.1.zip|framed|All Board BOM]].
 
=== Transferring software to the PCW ===
I have assumed that you already have a way to get downloaded files onto your PCW. If not, the options are:
* Use a serial adapter such as the Amstrad CPS8256 and a copy of KERMIT to transfer over serial.
* Install a 3.5" floppy drive and transfer via floppies. You will need a program such as CPCDiskXP to put PCW disk image files onto the floppy. This program can also copy a downloaded file to a disk image.
 
There may be other ways to achieve this (such as using a LocoLink cable) but it is out of scope of this WIKI page. If in doubt, ask on the forum.
 
If you have no means to get files onto your PCW from a PC, you can use the BASIC program (below) to create the uIDE driver FID from one of my DOMs.
=== BASIC program to load the driver from a DOM ===
If you chose choose to buy one of my DOMs, I can load it with the xdriver FID file. Enter this program into BASIC and run it, and it will retrieve the driver from the DOM and write it to the currently logged in disk:. The driver file is written to the first three sectors on the DOM, so that even if you format it, you can still use the BASIC program to restore the FID (because track 0 is reserved by the driver for future use).
10 REM uIDE bootstrap - load FID from uIDE track 0
360 :
370 REM retrieve FID
380 PRINT "Retrieving xdrv.fid: [ ]";: REM 24 spaces
390 FOR x=0 TO 24: PRINT CHR$(8);: NEXT x
400 FOR secNo% = 0 TO fidSec%
420 NEXT secNo%
430 PRINT: PRINT
440 PRINT "Writing xdrv.fid: [ ]";: REM 20 spaces
450 FOR x=0 TO 20: PRINT CHR$(8);: NEXT x
460 OPEN "R",#1,"xdrv.fid",1
490 LSET d0$=CHR$(PEEK(addr%))
500 PUT #1
510 IF addr% MOD &H40 = 0 THEN PRINT "."CHR$(128);
520 NEXT addr%
530 CLOSE #1
800 POKE addr%,INP(cfData%)
810 addr%=addr%+1
820 IF addr% MOD &H40 = 0 THEN PRINT "."CHR$(128);
830 NEXT byte%
840 RETURN
412
edits