Gert van der Knokke / C1541III

Description: C1541-III mbed edition

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers IEC_bus.h Source File

IEC_bus.h

00001 #ifndef IEC_BUS_INCLUDED
00002 #define IEC_BUS_INCLUDED      
00003 
00004 
00005 /*defines*/
00006 /*-------*/
00007 /*IEC commandset: the talker requests the addresses device to become a ...-er*/
00008 #define        LISTEN            0x20    /*base address, device 0-30*/
00009 #define        UNLISTEN        0x3F    /*base address, n/a*/                
00010 #define        TALK            0x40    /*base address, device 0-30*/        
00011 #define        UNTALK            0x5F    /*base address, n/a*/        
00012 #define        DATA            0x60    /*base address, secondary address 0-15 (this is in some documentation also refered to as OPEN_CHANNEL)*/
00013 #define        CLOSE            0xE0    /*base address, secondary address 0-15*/        
00014 #define        OPEN            0xF0    /*base address, secondary address 0-15*/        
00015 
00016 #define        TIMINGS_DEFAULT    10
00017 #define        TIMINGS_DTV        11
00018 #define        TIMINGS_VIC20    12
00019 extern int IEC_CLOCK();
00020 extern int IEC_DATA();
00021 extern int IEC_ATN();
00022 extern int IEC_RESET();
00023 extern int IEC_SRQ();
00024 
00025 extern void IEC_ATN_REL();
00026 extern void IEC_ATN_PULL();
00027 extern void IEC_DATA_REL();
00028 extern void IEC_CLOCK_REL();
00029 extern void IEC_DATA_PULL();
00030 extern void IEC_CLOCK_PULL();
00031 extern void IEC_SRQ_REL();
00032 extern void IEC_SRQ_PULL();
00033 
00034 
00035 /*routines*/
00036 /*--------*/
00037 void InitIEC(void);
00038 void SetIEC_timings(unsigned char settings);
00039 void FreeIEC(void);
00040 
00041 unsigned char IEC_receive(unsigned char frame_handshake);
00042 unsigned char IEC_send(unsigned char data);
00043 unsigned char IEC_monitor(void);
00044 void IEC_send_string(const unsigned char *inputstring);
00045 void IEC_send_number_as_ASCII(unsigned char number);
00046 void IEC_turnaround(void);
00047 void IEC_undoturnaround(void);
00048 void IEC_letgo(void);
00049 unsigned char CheckForCommand(unsigned char *outputcommand, unsigned char frame_handshake);
00050 
00051 #endif
00052 
00053 
00054 
00055 
00056 
00057