home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Go64!
/
Go64_1999-06_1999_CSW_Side_A.d64
/
1581cp50.zip
/
SRC
/
CENTRAL.H
< prev
next >
Wrap
C/C++ Source or Header
|
1999-05-13
|
4KB
|
99 lines
/*
* cOPYRIGHT (c) 1998, 1999 wOLFGANG mOSER
*
* tHIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
* IT UNDER THE TERMS OF THE gnu gENERAL pUBLIC lICENSE AS PUBLISHED BY
* THE fREE sOFTWARE fOUNDATION; EITHER VERSION 2, OR (AT YOUR OPTION)
* ANY LATER VERSION.
*
* tHIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL,
* BUT without any warranty; WITHOUT EVEN THE IMPLIED WARRANTY OF
* merchantability OR fitness for a particular purpose. sEE THE
* gnu gENERAL pUBLIC lICENSE FOR MORE DETAILS.
*
* yOU SHOULD HAVE RECEIVED A COPY OF THE gnu gENERAL pUBLIC lICENSE
* ALONG WITH THIS PROGRAM (SEE THE FILE copying); IF NOT, WRITE TO THE
* fREE sOFTWARE fOUNDATION, iNC., 675 mASS aVE, cAMBRIDGE, ma 02139, usa.
*/
/*
* cOMMODORE cbm 1581 FLOPPY DISK COPY UTIL FOR pc'S, central.h
*
* wOLFGANG mOSER <WOMO@MINDLESS.COM>
* HTTP://WWW.GM.FH-KOELN.DE/{$7e}WOMO (UP TO dEZEMBER 1999)
*
*
* bASIC INFORMATIONS FROM dAN fANDRICH <DAN@FCH.WIMSEY.BC.CA>.
* hIS README OF THE CBMFS-0.3 DRIVER FOR lINUX EXPLAINED ME, WHAT THE
* DIFFERENCE BETWEEN A dos FORMATTED 800 KB DISK AND A cbm 1581 DISK IS.
* (CHECK: HTTP://VANBC.WIMSEY.COM/{$7e}DANF/SOFTWARE/)
*
*
* bASIC IMPLEMENTATIONS BY cIRIACO gARC{CBM-K}A DE cELIS <CIRI@GUI.UVA.ES>
* hIS UTIL 765dEBUG, vERSION 5.0 IS GREAT FOR LEARNING DMA BASED
* DIRECT FLOPPY DISK CONTROLLER PROGRAMMING.
* (CHECK: FTP://FTP.GUI.UVA.ES/PUB/PC/2M/765D50SR.ZIP)
*
* cHECK OUT FOR HIS FLOPPY DISK UTILS 2m AND 2mgui, THE LAST WORDS
* IN IMPROVING FLOPPY DISK STORAGE CAPACITY.
* HTTP://WWW.GUI.UVA.ES/2M, FTP://FTP.GUI.UVA.ES/PUB/PC/2M
*
*
* fOR ADDITIONAL INFORMATIONS TO fdc PROGRAMMING CHECK:
* HTTP://DEVELOPER.INTEL.COM/DESIGN/PERIPHRL/DATASHTS/290468.HTM
* AND GET THE INTEL 82078 chmos sINGLE-cHIP fLOPPY dISK cONTROLLER
* pdf DOCUMENT:
* HTTP://WWW.INTEL.NL/DESIGN/PERIPHRL/DATASHTS/29047403.PDF
* nATIONAL sEMICONDUCTOR HAS ALSO SOME PAGES ABOUT THEIR pc
* COMPATIBLE CONTROLLERS:
* HTTP://WWW.NATIONAL.COM/PF/dp/dp8473.HTML
* HTTP://WWW.NATIONAL.COM/PF/dp/dp8477b.HTML
*
* aNOTHER GOOD SOURCE FOR FLOPPY DISK CONTROLLER PROGRAMMING INFORMATION
* ARE THE LINUX KERNAL SOURCES, YOU COULD HAVE A LOOK INTO:
* HTTP://WWW.CS.UTEXAS.EDU/USERS/PETERSON/LINUX/INCLUDE/LINUX/FDREG.H
* HTTP://WWW.CS.UTEXAS.EDU/USERS/PETERSON/LINUX/DRIVERS/BLOCK/FLOPPY.C
*/
#IFNDEF __cENTRAL_1581copy__
#DEFINE __cENTRAL_1581copy__
// VERSION INFORMATION
#DEFINE _1581copy_VERSION_ \
"1581-cOPY, VERSION 0.50, 199905131513. "\
"cOPYRIGHT (c) 1998, 1999 wOLFGANG mOSER\N"
// CENTRAL #DEFINES
#DEFINE mAXsECTORS 10// tHIS CONTROLS THE SIZE OF THE INTERNAL BUFFER
// THAT IS NEEDED FOR FORMATTING AND SINGLE SECTOR TRACK
// COPYING, IT MUST BE GREATER THAN OR EQUAL TO THE
// NUMBER OF SECTORS PER SIDE (TRACK), THAT MAY BE USED
// WITH A DESIRED DISK LAYOUT
#DEFINE tRbUFsIZE 10*1024// tHIS CONTROLS THE SIZE OF THE TRACK BUFFER, IT MUST
// BE BIG ENOUGH TO HOLD ALL THE SECTOR DATA OF ONE SIDE
// CURRENTLY: 10 SECTORS A 1024 BYTES FOR fd2000
#DEFINE disable_ints// DISABLING intS, WHEN PROGRAMMING THE dma CONTROLLER
#DEFINE messages 0// ENABLE SOME DEBUGGING MESSAGES
// >= 6 - ENABLE ALL MESSAGES
// >= 5 - ENABLE ALL HIGH LEVEL CODE MESSAGES
// >= 3 - ENABLE WORKING STAGE HIGH LEVEL INFO
// >= 2 - ENABLE SECTOR PROCESSING HIGH LEVEL INFO
// >= 1 - ENABLE ALL MAIN PROGRAM MESSAGES
// >= 0 - MAIN PROGRAM ERROR REPORTATIONS
//#DEFINE use_tsc// USE SYSTEM TIMESTAMP COUNTER FOR DEBUG MEASUREMENTS
//#DEFINE use_p_rdtsc// USE PENTIUM TIMESTAMP COUNTER INSTEAD OF SYSTEM TIMER
#ENDIF