/** * @file x1541.h * Transfer routines for the Commodore serial bus to PC cable * designed by Leopoldo Ghielmetti * @author Marko Mäkelä (msmakela@nic.funet.fi) */ /* * Copyright © 1994-1997 Marko Mäkelä and Olaf Seibert * Copyright © 2001 Marko Mäkelä * Original Linux and Commodore 64/128/Vic-20 version by Marko Mäkelä * Ported to the PET and the Amiga series by Olaf Seibert * Restructured by Marko Mäkelä * * 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 of the License, 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; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /** Open the communication channel * @param dev name of the communication device * @param hostinfo (output) the computer model information * @return zero on success, nonzero on failure */ int x1541_init (const char* dev, struct hostinfo* hostinfo); /** Close the communication channel */ void x1541_close (void); /** Switch the data direction from receive to send */ void x1541_rs (void); /** Switch the data direction from send to receive */ void x1541_sr (void); /** Send data * @param buf the data to be sent * @param len length of the data in bytes * @return zero on success, nonzero on failure */ int x1541_write (const void* buf, unsigned len); /** Receive data * @param buf the data to be received * @param len length of the data in bytes * @return zero on success, nonzero on failure */ int x1541_read (void* buf, unsigned len);