Annotation of hatari/src/includes/fdc.h, revision 1.1.1.4

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.1.4 ! root       13: enum
        !            14: {
        !            15:        FDCEMU_CMD_NULL = 0,
        !            16:        /* Type I */
        !            17:        FDCEMU_CMD_RESTORE,
        !            18:        FDCEMU_CMD_SEEK,
        !            19:        FDCEMU_CMD_STEP,
        !            20:        FDCEMU_CMD_STEPIN,
        !            21:        FDCEMU_CMD_STEPOUT,
        !            22:        /* Type II */
        !            23:        FDCEMU_CMD_READSECTORS,
        !            24:        FDCEMU_CMD_READMULTIPLESECTORS,
        !            25:        FDCEMU_CMD_WRITESECTORS,
        !            26:        FDCEMU_CMD_WRITEMULTIPLESECTORS
1.1       root       27: };
                     28: 
1.1.1.2   root       29: /* FDC Emulation commands */
1.1       root       30: #define  FDCEMU_RUN_NULL      0
                     31: 
1.1.1.2   root       32: /* FDC Running Restore commands */
1.1.1.4 ! root       33: enum
        !            34: {
        !            35:        FDCEMU_RUN_RESTORE_SEEKTOTRACKZERO,
        !            36:        FDCEMU_RUN_RESTORE_COMPLETE
1.1       root       37: };
                     38: 
1.1.1.2   root       39: /* FDC Running Seek commands */
1.1.1.4 ! root       40: enum
        !            41: {
        !            42:        FDCEMU_RUN_SEEK_TOTRACK,
        !            43:        FDCEMU_RUN_SEEK_COMPLETE
1.1       root       44: };
                     45: 
1.1.1.2   root       46: /* FDC Running Step commands */
1.1.1.4 ! root       47: enum
        !            48: {
        !            49:        FDCEMU_RUN_STEP_ONCE,
        !            50:        FDCEMU_RUN_STEP_COMPLETE
1.1       root       51: };
                     52: 
1.1.1.2   root       53: /* FDC Running Step In commands */
1.1.1.4 ! root       54: enum
        !            55: {
        !            56:        FDCEMU_RUN_STEPIN_ONCE,
        !            57:        FDCEMU_RUN_STEPIN_COMPLETE
1.1       root       58: };
                     59: 
1.1.1.2   root       60: /* FDC Running Step Out commands */
1.1.1.4 ! root       61: enum
        !            62: {
        !            63:        FDCEMU_RUN_STEPOUT_ONCE,
        !            64:        FDCEMU_RUN_STEPOUT_COMPLETE
1.1       root       65: };
                     66: 
1.1.1.2   root       67: /* FDC Running Read Sector/s commands */
1.1.1.4 ! root       68: enum
        !            69: {
        !            70:        FDCEMU_RUN_READSECTORS_READDATA,
        !            71:        FDCEMU_RUN_READSECTORS_COMPLETE
1.1       root       72: };
                     73: 
1.1.1.2   root       74: /* FDC Running write Sector/s commands */
1.1.1.4 ! root       75: enum
        !            76: {
        !            77:        FDCEMU_RUN_WRITESECTORS_WRITEDATA,
        !            78:        FDCEMU_RUN_WRITESECTORS_COMPLETE
1.1       root       79: };
                     80: 
1.1.1.3   root       81: 
                     82: extern short int FDCSectorCountRegister;
1.1.1.4 ! root       83: extern Uint16 DiscControllerWord_ff8604wr;
        !            84: extern Uint16 DMAModeControl_ff8606wr;
1.1.1.3   root       85: 
                     86: 
1.1       root       87: extern void FDC_Reset(void);
                     88: extern void FDC_MemorySnapShot_Capture(BOOL bSave);
                     89: extern void FDC_ResetDMAStatus(void);
                     90: extern void FDC_SetDMAStatus(BOOL bError);
1.1.1.4 ! root       91: extern void FDC_DmaStatus_ReadWord(void);
1.1.1.2   root       92: extern int FDC_FindFloppyDrive(void);
                     93: extern void FDC_AcknowledgeInterrupt(void);
1.1       root       94: extern void FDC_UpdateHBL(void);
                     95: extern void FDC_UpdateRestoreCmd(void);
                     96: extern void FDC_UpdateSeekCmd(void);
                     97: extern void FDC_UpdateStepCmd(void);
                     98: extern void FDC_UpdateStepInCmd(void);
                     99: extern void FDC_UpdateStepOutCmd(void);
                    100: extern void FDC_UpdateReadSectorsCmd(void);
                    101: extern void FDC_UpdateWriteSectorsCmd(void);
1.1.1.4 ! root      102: extern Uint32 FDC_ReadDMAAddress(void);
        !           103: extern void FDC_WriteDMAAddress(Uint32 Address);
1.1       root      104: extern BOOL FDC_ReadSectorFromFloppy(void);
                    105: extern BOOL FDC_WriteSectorFromFloppy(void);
                    106: extern void FDC_DMADataFromFloppy(void);
1.1.1.4 ! root      107: extern void FDC_DiscController_WriteWord(void);
        !           108: extern void FDC_DiscControllerStatus_ReadWord(void);
        !           109: extern void FDC_DmaModeControl_WriteWord(void);
1.1.1.3   root      110: 
                    111: 
                    112: #endif /* ifndef HATARI_FDC_H */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.