do not use libspectrum to detect disk image format
[zymosis.git] / src / libfusefdc / beta.h
blob8e6f3d9035a489a63ecb6e17dbea509dc4f99747
1 /* beta.h: Routines for handling the Beta disk interface
2 Copyright (c) 2003-2016 Fredrick Meunier, Philip Kendall
3 Copyright (c) 2015 Stuart Brady
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License along
16 with this program; if not, write to the Free Software Foundation, Inc.,
17 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 Author contact information:
21 E-mail: philip-fuse@shadowmagic.org.uk
23 Fred: fredm@spamcop.net
26 #ifndef FUSE_BETA_H
27 #define FUSE_BETA_H
29 #include "fdd.h"
32 void beta_cr_write (uint16_t port, uint8_t b);
34 uint8_t beta_sr_read (uint16_t port);
36 uint8_t beta_tr_read (uint16_t port);
37 void beta_tr_write (uint16_t port, uint8_t b);
39 uint8_t beta_sec_read (uint16_t port);
40 void beta_sec_write (uint16_t port, uint8_t b);
42 uint8_t beta_dr_read (uint16_t port);
43 void beta_dr_write (uint16_t port, uint8_t b);
45 uint8_t beta_sp_read (uint16_t port);
46 void beta_sp_write (uint16_t port, uint8_t b);
48 void beta_reset (int hard_reset);
51 typedef enum beta_drive_number {
52 BETA_DRIVE_A = 0,
53 BETA_DRIVE_B,
54 BETA_DRIVE_C,
55 BETA_DRIVE_D,
56 BETA_NUM_DRIVES,
57 } beta_drive_number;
60 void beta_disk_eject (beta_drive_number which);
62 fdd_t *beta_get_fdd (beta_drive_number which);
63 disk_t *beta_get_disk (beta_drive_number which);
65 void beta_init (void);
66 void beta_end (void);
69 #endif