00001 #ifndef ARCHLIB_H
00002 #define ARCHLIB_H
00003
00004 #include "opencbm.h"
00005
00006 extern const char * cbmarch_get_driver_name(int PortNumber);
00007 extern int cbmarch_driver_open(CBM_FILE *HandleDevice, int PortNumber);
00008 extern void cbmarch_driver_close(CBM_FILE HandleDevice);
00009 extern void cbmarch_lock(CBM_FILE HandleDevice);
00010 extern void cbmarch_unlock(CBM_FILE HandleDevice);
00011 extern int cbmarch_raw_write(CBM_FILE HandleDevice, const void *Buffer, size_t Count);
00012 extern int cbmarch_raw_read(CBM_FILE HandleDevice, void *Buffer, size_t Count);
00013 extern int cbmarch_listen(CBM_FILE HandleDevice, __u_char DeviceAddress, __u_char SecondaryAddress);
00014 extern int cbmarch_talk(CBM_FILE HandleDevice, __u_char DeviceAddress, __u_char SecondaryAddress);
00015 extern int cbmarch_open(CBM_FILE HandleDevice, __u_char DeviceAddress, __u_char SecondaryAddress);
00016 extern int cbmarch_unlisten(CBM_FILE HandleDevice);
00017 extern int cbmarch_untalk(CBM_FILE HandleDevice);
00018 extern int cbmarch_close(CBM_FILE HandleDevice, __u_char DeviceAddress, __u_char SecondaryAddress);
00019 extern int cbmarch_unlisten(CBM_FILE HandleDevice);
00020 extern int cbmarch_untalk(CBM_FILE HandleDevice);
00021 extern int cbmarch_get_eoi(CBM_FILE HandleDevice);
00022 extern int cbmarch_clear_eoi(CBM_FILE HandleDevice);
00023 extern int cbmarch_reset(CBM_FILE HandleDevice);
00024 extern __u_char cbmarch_pp_read(CBM_FILE HandleDevice);
00025 extern void cbmarch_pp_write(CBM_FILE HandleDevice, __u_char Byte);
00026 extern int cbmarch_iec_poll(CBM_FILE HandleDevice);
00027 extern void cbmarch_iec_set(CBM_FILE HandleDevice, int Line);
00028 extern void cbmarch_iec_release(CBM_FILE HandleDevice, int Line);
00029 extern void cbmarch_iec_setrelease(CBM_FILE HandleDevice, int Set, int Release);
00030 extern int cbmarch_iec_wait(CBM_FILE HandleDevice, int Line, int State);
00031
00032 extern __u_char cbmarch_parallel_burst_read(CBM_FILE HandleDevice);
00033 extern void cbmarch_parallel_burst_write(CBM_FILE HandleDevice, __u_char Value);
00034 extern int cbmarch_parallel_burst_read_track(CBM_FILE HandleDevice, __u_char *Buffer, unsigned int Length);
00035 extern int cbmarch_parallel_burst_write_track(CBM_FILE HandleDevice, __u_char *Buffer, unsigned int Length);
00036
00037 #endif // #ifndef ARCHLIB_H