|
|
1.1 root 1: /* 1.1.1.3 ! root 2: Hatari - fdc.h ! 3: ! 4: This file is distributed under the GNU Public License, version 2 or at ! 5: your option any later version. Read the file gpl.txt for details. 1.1 root 6: */ 7: 1.1.1.3 ! root 8: #ifndef HATARI_FDC_H ! 9: #define HATARI_FDC_H ! 10: 1.1.1.2 root 11: /*-----------------------------------------------------------------------*/ 12: /* FDC Emulation commands */ 1.1 root 13: enum { 14: FDCEMU_CMD_NULL=0, 1.1.1.3 ! root 15: /* Type I */ 1.1 root 16: FDCEMU_CMD_RESTORE, 17: FDCEMU_CMD_SEEK, 18: FDCEMU_CMD_STEP, 19: FDCEMU_CMD_STEPIN, 20: FDCEMU_CMD_STEPOUT, 1.1.1.3 ! root 21: /* Type II */ 1.1 root 22: FDCEMU_CMD_READSECTORS, 23: FDCEMU_CMD_READMULTIPLESECTORS, 24: FDCEMU_CMD_WRITESECTORS, 25: FDCEMU_CMD_WRITEMULTIPLESECTORS 26: }; 27: 1.1.1.2 root 28: /* FDC Emulation commands */ 1.1 root 29: #define FDCEMU_RUN_NULL 0 30: 1.1.1.2 root 31: /* FDC Running Restore commands */ 1.1 root 32: enum { 33: FDCEMU_RUN_RESTORE_SEEKTOTRACKZERO, 34: FDCEMU_RUN_RESTORE_COMPLETE 35: }; 36: 1.1.1.2 root 37: /* FDC Running Seek commands */ 1.1 root 38: enum { 39: FDCEMU_RUN_SEEK_TOTRACK, 40: FDCEMU_RUN_SEEK_COMPLETE 41: }; 42: 1.1.1.2 root 43: /* FDC Running Step commands */ 1.1 root 44: enum { 45: FDCEMU_RUN_STEP_ONCE, 46: FDCEMU_RUN_STEP_COMPLETE 47: }; 48: 1.1.1.2 root 49: /* FDC Running Step In commands */ 1.1 root 50: enum { 51: FDCEMU_RUN_STEPIN_ONCE, 52: FDCEMU_RUN_STEPIN_COMPLETE 53: }; 54: 1.1.1.2 root 55: /* FDC Running Step Out commands */ 1.1 root 56: enum { 57: FDCEMU_RUN_STEPOUT_ONCE, 58: FDCEMU_RUN_STEPOUT_COMPLETE 59: }; 60: 1.1.1.2 root 61: /* FDC Running Read Sector/s commands */ 1.1 root 62: enum { 63: FDCEMU_RUN_READSECTORS_READDATA, 64: FDCEMU_RUN_READSECTORS_COMPLETE 65: }; 66: 1.1.1.2 root 67: /* FDC Running write Sector/s commands */ 1.1 root 68: enum { 69: FDCEMU_RUN_WRITESECTORS_WRITEDATA, 70: FDCEMU_RUN_WRITESECTORS_COMPLETE 71: }; 72: 1.1.1.3 ! root 73: ! 74: extern short int FDCSectorCountRegister; ! 75: extern unsigned short int DiscControllerWord_ff8604wr; ! 76: extern unsigned short int DMAModeControl_ff8606wr; ! 77: ! 78: 1.1 root 79: extern void FDC_Reset(void); 80: extern void FDC_MemorySnapShot_Capture(BOOL bSave); 81: extern void FDC_ResetDMAStatus(void); 82: extern void FDC_SetDMAStatus(BOOL bError); 83: extern long FDC_ReadDMAStatus(void); 1.1.1.2 root 84: extern int FDC_FindFloppyDrive(void); 85: extern void FDC_AcknowledgeInterrupt(void); 1.1 root 86: extern void FDC_UpdateHBL(void); 87: extern void FDC_UpdateRestoreCmd(void); 88: extern void FDC_UpdateSeekCmd(void); 89: extern void FDC_UpdateStepCmd(void); 90: extern void FDC_UpdateStepInCmd(void); 91: extern void FDC_UpdateStepOutCmd(void); 92: extern void FDC_UpdateReadSectorsCmd(void); 93: extern void FDC_UpdateWriteSectorsCmd(void); 94: extern unsigned long FDC_ReadDMAAddress(void); 95: extern void FDC_WriteDMAAddress(unsigned long Address); 96: extern BOOL FDC_ReadSectorFromFloppy(void); 97: extern BOOL FDC_WriteSectorFromFloppy(void); 98: extern void FDC_DMADataFromFloppy(void); 99: extern void FDC_WriteDiscController(unsigned short v); 100: extern short FDC_ReadDiscControllerStatus(void); 101: extern void FDC_WriteDMAModeControl(unsigned short v); 1.1.1.3 ! root 102: ! 103: ! 104: #endif /* ifndef HATARI_FDC_H */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.