1 /*
2 * vsidstubs.c - dummies for unneeded/unused functions
3 *
4 * Written by
5 * groepaz <groepaz@gmx.net>
6 * Marco van den Heuvel <blackystardust68@yahoo.com>
7 *
8 * This file is part of VICE, the Versatile Commodore Emulator.
9 * See README for copyright notice.
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
24 * 02111-1307 USA.
25 *
26 */
27
28 #include "vice.h"
29
30 #include "c64.h"
31 #include "c64-midi.h"
32 #include "c64cart.h"
33 #include "c64cartmem.h"
34 #include "c64fastiec.h"
35 #include "c64iec.h"
36 #include "c64mem.h"
37 #include "c64-cmdline-options.h"
38 #include "c64_256k.h"
39 #include "cartridge.h"
40 #include "cbmdos.h"
41 #include "cia.h"
42 #include "imagecontents/diskcontents.h"
43 #include "diskimage.h"
44 #include "drive.h"
45 #include "driveimage.h"
46 #include "drivetypes.h"
47 #include "fileio.h"
48 #include "fsdevice.h"
49 #include "gfxoutput.h"
50 #include "iecbus.h"
51 #include "iecdrive.h"
52 #include "imagecontents.h"
53 #include "midi.h"
54 #include "machine-bus.h"
55 #include "machine-drive.h"
56 #include "machine-printer.h"
57 #include "printer.h"
58 #include "snapshot.h"
59 #include "tap.h"
60 #include "tape.h"
61 #include "tapeport.h"
62 #include "imagecontents/tapecontents.h"
63 #include "tape-snapshot.h"
64 #include "vdrive/vdrive.h"
65 #include "vdrive/vdrive-bam.h"
66 #include "vdrive/vdrive-command.h"
67 #include "vdrive/vdrive-iec.h"
68 #include "vdrive/vdrive-internal.h"
69 #include "vicii-phi1.h"
70 #include "ds1202_1302.h"
71
72 /*******************************************************************************
73 Memory related
74 *******************************************************************************/
75
76 int c64_256k_enabled = 0; /* always 0, needed from c64gluelogic.c */
77
78 /* needed from c64gluelogic.c */
c64_256k_cia_set_vbank(int ciabank)79 void c64_256k_cia_set_vbank(int ciabank)
80 {
81 }
82
83 /*******************************************************************************
84 Drive related
85 *******************************************************************************/
86
machine_drive_image_attach(struct disk_image_s * image,unsigned int unit)87 int machine_drive_image_attach(struct disk_image_s *image, unsigned int unit)
88 {
89 return -1;
90 }
91
machine_drive_image_detach(struct disk_image_s * image,unsigned int unit)92 int machine_drive_image_detach(struct disk_image_s *image, unsigned int unit)
93 {
94 return -1;
95 }
96
machine_drive_stub(void)97 void machine_drive_stub(void)
98 {
99 }
100
101
102 static drive_type_info_t drive_dummy_list[] = {
103 { NULL, -1 }
104 };
105
106
107 /** \brief Dummy function
108 *
109 * Added here to make gtk3/widgets/drivetypewidget.c compile, due to using
110 * static libraries. This function will not be used in the VSID Gtk3 UI
111 */
machine_drive_get_type_info_list(void)112 drive_type_info_t *machine_drive_get_type_info_list(void)
113 {
114 return drive_dummy_list;
115 }
116
drive_check_expansion2000(int type)117 int drive_check_expansion2000(int type)
118 {
119 return 0;
120 }
121
drive_check_expansion4000(int type)122 int drive_check_expansion4000(int type)
123 {
124 return 0;
125 }
126
drive_check_expansion6000(int type)127 int drive_check_expansion6000(int type)
128 {
129 return 0;
130 }
131
drive_check_expansion8000(int type)132 int drive_check_expansion8000(int type)
133 {
134 return 0;
135 }
136
drive_check_expansionA000(int type)137 int drive_check_expansionA000(int type)
138 {
139 return 0;
140 }
141
drive_check_profdos(int type)142 int drive_check_profdos(int type)
143 {
144 return 0;
145 }
146
drive_check_stardos(int type)147 int drive_check_stardos(int type)
148 {
149 return 0;
150 }
151
drive_check_supercard(int type)152 int drive_check_supercard(int type)
153 {
154 return 0;
155 }
156
drive_check_rtc(int type)157 int drive_check_rtc(int type)
158 {
159 return 0;
160 }
161
drive_check_iec(int type)162 int drive_check_iec(int type)
163 {
164 return 0;
165 }
166
167
168 /*******************************************************************************
169 Cartridge system
170 *******************************************************************************/
171
172 /* Expansion port signals. */
173 export_t export = { 0, 0, 0, 0 }; /* c64 export */
174
175 /* the following two are used by the old non cycle exact vic-ii emulation */
176 static uint8_t mem_phi[0x1000];
177
cartridge_attach_image(int type,const char * filename)178 int cartridge_attach_image(int type, const char *filename)
179 {
180 return -1;
181 }
182
ultimax_romh_phi1_ptr(uint16_t addr)183 uint8_t *ultimax_romh_phi1_ptr(uint16_t addr)
184 {
185 return mem_phi;
186 }
187
ultimax_romh_phi2_ptr(uint16_t addr)188 uint8_t *ultimax_romh_phi2_ptr(uint16_t addr)
189 {
190 return mem_phi;
191 }
192
193 midi_interface_t midi_interface[] = {
194 MIDI_INFERFACE_LIST_END
195 };
196
197 /*******************************************************************************
198 gfxoutput drivers
199 *******************************************************************************/
200
gfxoutput_early_init(int help)201 int gfxoutput_early_init(int help)
202 {
203 return 0;
204 }
205
gfxoutput_shutdown(void)206 void gfxoutput_shutdown(void)
207 {
208 }
209
gfxoutput_num_drivers(void)210 int gfxoutput_num_drivers(void)
211 {
212 return 0;
213 }
214
215 /* FIXME: this stub can be removed once all GUI's have been adapted to
216 not use this call for vsid */
gfxoutput_get_driver(const char * drvname)217 gfxoutputdrv_t *gfxoutput_get_driver(const char *drvname)
218 {
219 return NULL;
220 }
221
222 /* FIXME: this stub can be removed once all GUI's have been adapted to
223 not use this call for vsid */
gfxoutput_drivers_iter_next(void)224 gfxoutputdrv_t *gfxoutput_drivers_iter_next(void)
225 {
226 return NULL;
227 }
228
229 /* FIXME: this stub can be removed once all GUI's have been adapted to
230 not use this call for vsid */
gfxoutput_drivers_iter_init(void)231 gfxoutputdrv_t *gfxoutput_drivers_iter_init(void)
232 {
233 return NULL;
234 }
235
236 /* FIXME: this table can be removed once all GUI's have been adapted to
237 not use this table for vsid */
238 gfxoutputdrv_format_t ffmpegdrv_formatlist[] =
239 {
240 { NULL, NULL, NULL }
241 };
242
243 /*******************************************************************************
244 printers
245 *******************************************************************************/
246
printer_shutdown(void)247 void printer_shutdown(void)
248 {
249 }
250
printer_serial_late_init(void)251 int printer_serial_late_init(void)
252 {
253 return 0;
254 }
255
256 /* FIXME: this stub can be removed once all GUI's have been adapted to
257 not use this call for vsid */
printer_formfeed(unsigned int prnr)258 void printer_formfeed(unsigned int prnr)
259 {
260 }
261
262
263 /*******************************************************************************
264 rtc
265 *******************************************************************************/
266
267 /* FIXME: this stub can be removed once the drive code has been stubbed */
ds1216e_init(char * device)268 rtc_ds1216e_t *ds1216e_init(char *device)
269 {
270 return NULL;
271 }
272
273 /* FIXME: this stub can be removed once the drive code has been stubbed */
ds1216e_destroy(rtc_ds1216e_t * context,int save)274 void ds1216e_destroy(rtc_ds1216e_t *context, int save)
275 {
276 }
277
ds1216e_read(rtc_ds1216e_t * context,uint16_t address,uint8_t origbyte)278 uint8_t ds1216e_read(rtc_ds1216e_t *context, uint16_t address, uint8_t origbyte)
279 {
280 return 0;
281 }
282
ds1202_1302_init(char * device,int rtc_type)283 rtc_ds1202_1302_t *ds1202_1302_init(char *device, int rtc_type)
284 {
285 return NULL;
286 }
287
ds1202_1302_set_lines(rtc_ds1202_1302_t * context,unsigned int ce_line,unsigned int sclk_line,unsigned int input_bit)288 void ds1202_1302_set_lines(rtc_ds1202_1302_t *context, unsigned int ce_line, unsigned int sclk_line, unsigned int input_bit)
289 {
290 }
291
ds1202_1302_read_data_line(rtc_ds1202_1302_t * context)292 uint8_t ds1202_1302_read_data_line(rtc_ds1202_1302_t *context)
293 {
294 return 1;
295 }
296
ds1202_1302_destroy(rtc_ds1202_1302_t * context,int save)297 void ds1202_1302_destroy(rtc_ds1202_1302_t *context, int save)
298 {
299 }
300
ds1202_1302_write_snapshot(rtc_ds1202_1302_t * context,snapshot_t * s)301 int ds1202_1302_write_snapshot(rtc_ds1202_1302_t *context, snapshot_t *s)
302 {
303 return -1;
304 }
305
ds1202_1302_read_snapshot(rtc_ds1202_1302_t * context,snapshot_t * s)306 int ds1202_1302_read_snapshot(rtc_ds1202_1302_t *context, snapshot_t *s)
307 {
308 return -1;
309 }
310
311 /*******************************************************************************
312 tape
313 *******************************************************************************/
314
315 tape_image_t *tape_image_dev1 = NULL;
316
tape_image_attach(unsigned int unit,const char * name)317 int tape_image_attach(unsigned int unit, const char *name)
318 {
319 return 0;
320 }
321
tape_shutdown(void)322 void tape_shutdown(void)
323 {
324 }
325
tape_tap_attached(void)326 int tape_tap_attached(void)
327 {
328 return 0;
329 }
330
tape_seek_start(tape_image_t * tape_image)331 int tape_seek_start(tape_image_t *tape_image)
332 {
333 return 0;
334 }
335
tape_seek_to_file(tape_image_t * tape_image,unsigned int file_number)336 int tape_seek_to_file(tape_image_t *tape_image, unsigned int file_number)
337 {
338 return 0;
339 }
340
tape_image_event_playback(unsigned int unit,const char * filename)341 void tape_image_event_playback(unsigned int unit, const char *filename)
342 {
343 }
344
tape_image_detach(unsigned int unit)345 int tape_image_detach(unsigned int unit)
346 {
347 return 0;
348 }
349
tap_seek_start(tap_t * tap)350 int tap_seek_start(tap_t *tap)
351 {
352 return 0;
353 }
354
tape_image_create(const char * name,unsigned int type)355 int tape_image_create(const char *name, unsigned int type)
356 {
357 return 0;
358 }
359
tape_snapshot_write_module(snapshot_t * s,int save_image)360 int tape_snapshot_write_module(snapshot_t *s, int save_image)
361 {
362 return 0;
363 }
364
tape_snapshot_read_module(snapshot_t * s)365 int tape_snapshot_read_module(snapshot_t *s)
366 {
367 return 0;
368 }
369
tape_read(tape_image_t * tape_image,uint8_t * buf,size_t size)370 int tape_read(tape_image_t *tape_image, uint8_t *buf, size_t size)
371 {
372 return 0;
373 }
374
tape_get_current_file_record(tape_image_t * tape_image)375 tape_file_record_t *tape_get_current_file_record(tape_image_t *tape_image)
376 {
377 return NULL;
378 }
379
tape_image_open(tape_image_t * tape_image)380 int tape_image_open(tape_image_t *tape_image)
381 {
382 return -1;
383 }
384
tape_image_close(tape_image_t * tape_image)385 int tape_image_close(tape_image_t *tape_image)
386 {
387 return 0;
388 }
389
tape_internal_close_tape_image(tape_image_t * tape_image)390 int tape_internal_close_tape_image(tape_image_t *tape_image)
391 {
392 return 0;
393 }
394
tape_internal_open_tape_image(const char * name,unsigned int read_only)395 tape_image_t *tape_internal_open_tape_image(const char *name, unsigned int read_only)
396 {
397 return NULL;
398 }
399
tape_seek_to_next_file(tape_image_t * tape_image,unsigned int allow_rewind)400 int tape_seek_to_next_file(tape_image_t *tape_image, unsigned int allow_rewind)
401 {
402 return 0;
403 }
404
tape_get_header(tape_image_t * tape_image,uint8_t * name)405 void tape_get_header(tape_image_t *tape_image, uint8_t *name)
406 {
407 }
408
tape_get_file_name(void)409 const char *tape_get_file_name(void)
410 {
411 return NULL;
412 }
413
414 /*******************************************************************************
415 imagecontents
416 *******************************************************************************/
417
image_contents_to_screencode(image_contents_t * contents)418 image_contents_screencode_t *image_contents_to_screencode(image_contents_t *contents)
419 {
420 return NULL;
421 }
422
image_contents_filename_by_number(image_contents_t * contents,unsigned int file_index)423 char *image_contents_filename_by_number(image_contents_t *contents, unsigned int file_index)
424 {
425 return NULL;
426 }
427
diskcontents_filesystem_read(const char * file_name)428 image_contents_t *diskcontents_filesystem_read(const char *file_name)
429 {
430 return NULL;
431 }
432
image_contents_destroy(image_contents_t * contents)433 void image_contents_destroy(image_contents_t *contents)
434 {
435 }
436
image_contents_file_to_string(image_contents_file_list_t * p,char convert_to_ascii)437 char *image_contents_file_to_string(image_contents_file_list_t * p, char convert_to_ascii)
438 {
439 return NULL;
440 }
441
image_contents_to_string(image_contents_t * contents,char convert_to_ascii)442 char *image_contents_to_string(image_contents_t * contents, char convert_to_ascii)
443 {
444 return NULL;
445 }
446
tapecontents_read(const char * file_name)447 image_contents_t *tapecontents_read(const char *file_name)
448 {
449 return NULL;
450 }
451
diskcontents_read(const char * file_name,unsigned int unit)452 image_contents_t *diskcontents_read(const char *file_name, unsigned int unit)
453 {
454 return NULL;
455 }
456
diskcontents_read_unit8(const char * file_name)457 image_contents_t *diskcontents_read_unit8(const char *file_name)
458 {
459 return NULL;
460 }
461
diskcontents_read_unit9(const char * file_name)462 image_contents_t *diskcontents_read_unit9(const char *file_name)
463 {
464 return NULL;
465 }
466
diskcontents_read_unit10(const char * file_name)467 image_contents_t *diskcontents_read_unit10(const char *file_name)
468 {
469 return NULL;
470 }
471
diskcontents_read_unit11(const char * file_name)472 image_contents_t *diskcontents_read_unit11(const char *file_name)
473 {
474 return NULL;
475 }
476
477 /*******************************************************************************
478 fileio
479 *******************************************************************************/
480
fileio_close(fileio_info_t * info)481 void fileio_close(fileio_info_t *info)
482 {
483 }
484
fileio_open(const char * file_name,const char * path,unsigned int format,unsigned int command,unsigned int type)485 fileio_info_t *fileio_open(const char *file_name, const char *path, unsigned int format, unsigned int command, unsigned int type)
486 {
487 return NULL;
488 }
489
fileio_read(fileio_info_t * info,uint8_t * buf,unsigned int len)490 unsigned int fileio_read(fileio_info_t *info, uint8_t *buf, unsigned int len)
491 {
492 return 0;
493 }
494
fileio_get_bytes_left(fileio_info_t * info)495 unsigned int fileio_get_bytes_left(fileio_info_t *info)
496 {
497 return 0;
498 }
499
fileio_ferror(fileio_info_t * info)500 unsigned int fileio_ferror(fileio_info_t *info)
501 {
502 return 0;
503 }
504
fileio_write(fileio_info_t * info,uint8_t * buf,unsigned int len)505 unsigned int fileio_write(fileio_info_t *info, uint8_t *buf, unsigned int len)
506 {
507 return 0;
508 }
509
fileio_rename(const char * src_name,const char * dest_name,const char * path,unsigned int format)510 unsigned int fileio_rename(const char *src_name, const char *dest_name, const char *path, unsigned int format)
511 {
512 return 0;
513 }
514
fileio_scratch(const char * file_name,const char * path,unsigned int format)515 unsigned int fileio_scratch(const char *file_name, const char *path, unsigned int format)
516 {
517 return 0;
518 }
519
520
521 /*******************************************************************************
522 fileio
523 *******************************************************************************/
524
fsdevice_init(void)525 void fsdevice_init(void)
526 {
527 }
528
fsdevice_shutdown(void)529 void fsdevice_shutdown(void)
530 {
531 }
532
fsdevice_attach(unsigned int device,const char * name)533 int fsdevice_attach(unsigned int device, const char *name)
534 {
535 return 0;
536 }
537
fsdevice_set_directory(char * filename,unsigned int unit)538 void fsdevice_set_directory(char *filename, unsigned int unit)
539 {
540 }
541
542
543 /*******************************************************************************
544 diskimage
545 *******************************************************************************/
546
disk_image_init(void)547 void disk_image_init(void)
548 {
549 }
550
disk_image_fsimage_name_get(const disk_image_t * image)551 const char *disk_image_fsimage_name_get(const disk_image_t *image)
552 {
553 return NULL;
554 }
555
disk_image_media_destroy(disk_image_t * image)556 void disk_image_media_destroy(disk_image_t *image)
557 {
558 }
559
disk_image_close(disk_image_t * image)560 int disk_image_close(disk_image_t *image)
561 {
562 return 0;
563 }
564
disk_image_destroy(disk_image_t * image)565 void disk_image_destroy(disk_image_t *image)
566 {
567 }
568
disk_image_create(void)569 disk_image_t *disk_image_create(void)
570 {
571 return NULL;
572 }
573
disk_image_open(disk_image_t * image)574 int disk_image_open(disk_image_t *image)
575 {
576 return 0;
577 }
578
disk_image_rawimage_driver_name_set(disk_image_t * image)579 void disk_image_rawimage_driver_name_set(disk_image_t *image)
580 {
581 }
582
disk_image_fsimage_name_set(disk_image_t * image,const char * name)583 void disk_image_fsimage_name_set(disk_image_t *image, const char *name)
584 {
585 }
586
disk_image_media_create(disk_image_t * image)587 void disk_image_media_create(disk_image_t *image)
588 {
589 }
590
disk_image_fsimage_create(const char * name,unsigned int type)591 int disk_image_fsimage_create(const char *name, unsigned int type)
592 {
593 return 0;
594 }
595
disk_image_write_sector(disk_image_t * image,const uint8_t * buf,const disk_addr_t * dadr)596 int disk_image_write_sector(disk_image_t *image, const uint8_t *buf, const disk_addr_t *dadr)
597 {
598 return 0;
599 }
600
disk_image_read_sector(const disk_image_t * image,uint8_t * buf,const disk_addr_t * dadr)601 int disk_image_read_sector(const disk_image_t *image, uint8_t *buf, const disk_addr_t *dadr)
602 {
603 return 0;
604 }
605
disk_image_name_get(const disk_image_t * image)606 const char *disk_image_name_get(const disk_image_t *image)
607 {
608 return NULL;
609 }
610
disk_image_sector_per_track(unsigned int format,unsigned int track)611 unsigned int disk_image_sector_per_track(unsigned int format, unsigned int track)
612 {
613 return 0;
614 }
615
disk_image_write_p64_image(const disk_image_t * image)616 int disk_image_write_p64_image(const disk_image_t *image)
617 {
618 return 0;
619 }
620
disk_image_attach_log(const disk_image_t * image,signed int lognum,unsigned int unit)621 void disk_image_attach_log(const disk_image_t *image, signed int lognum, unsigned int unit)
622 {
623 }
624
disk_image_detach_log(const disk_image_t * image,signed int lognum,unsigned int unit)625 void disk_image_detach_log(const disk_image_t *image, signed int lognum, unsigned int unit)
626 {
627 }
628
disk_image_check_sector(const disk_image_t * image,unsigned int track,unsigned int sector)629 int disk_image_check_sector(const disk_image_t *image, unsigned int track, unsigned int sector)
630 {
631 return 0;
632 }
633
disk_image_name_set(disk_image_t * image,const char * name)634 void disk_image_name_set(disk_image_t *image, const char *name)
635 {
636 }
637
disk_image_fsimage_fd_get(const disk_image_t * image)638 void *disk_image_fsimage_fd_get(const disk_image_t *image)
639 {
640 return NULL;
641 }
642
P64ImageDestroy(PP64Image Instance)643 void P64ImageDestroy(PP64Image Instance)
644 {
645 }
646
647 /*******************************************************************************
648 c64bus
649 *******************************************************************************/
650
machine_bus_lib_directory(unsigned int unit,const char * pattern,uint8_t ** buf)651 int machine_bus_lib_directory(unsigned int unit, const char *pattern, uint8_t **buf)
652 {
653 return 0;
654 }
655
machine_bus_lib_read_sector(unsigned int unit,unsigned int track,unsigned int sector,uint8_t * buf)656 int machine_bus_lib_read_sector(unsigned int unit, unsigned int track, unsigned int sector, uint8_t *buf)
657 {
658 return 0;
659 }
660
machine_bus_lib_write_sector(unsigned int unit,unsigned int track,unsigned int sector,uint8_t * buf)661 int machine_bus_lib_write_sector(unsigned int unit, unsigned int track, unsigned int sector, uint8_t *buf)
662 {
663 return 0;
664 }
665
machine_bus_device_type_get(unsigned int unit)666 unsigned int machine_bus_device_type_get(unsigned int unit)
667 {
668 return 0;
669 }
670
machine_bus_status_truedrive_set(unsigned int enable)671 void machine_bus_status_truedrive_set(unsigned int enable)
672 {
673 }
674
machine_bus_status_drivetype_set(unsigned int unit,unsigned int enable)675 void machine_bus_status_drivetype_set(unsigned int unit, unsigned int enable)
676 {
677 }
678
machine_bus_status_virtualdevices_set(unsigned int enable)679 void machine_bus_status_virtualdevices_set(unsigned int enable)
680 {
681 }
682
machine_bus_eof_callback_set(void (* func)(void))683 void machine_bus_eof_callback_set(void (*func)(void))
684 {
685 }
686
machine_bus_attention_callback_set(void (* func)(void))687 void machine_bus_attention_callback_set(void (*func)(void))
688 {
689 }
690
machine_bus_init_machine(void)691 void machine_bus_init_machine(void)
692 {
693 }
694
695 /*******************************************************************************
696 iecbus
697 *******************************************************************************/
698
699 iecbus_t iecbus;
700 void (*iecbus_update_ports)(void) = NULL;
701
iecbus_status_set(unsigned int type,unsigned int unit,unsigned int enable)702 void iecbus_status_set(unsigned int type, unsigned int unit, unsigned int enable)
703 {
704 }
705
iecbus_device_write(unsigned int unit,uint8_t data)706 int iecbus_device_write(unsigned int unit, uint8_t data)
707 {
708 return 0;
709 }
710
iecbus_device_read(void)711 uint8_t iecbus_device_read(void)
712 {
713 return 0;
714 }
715
716 /*******************************************************************************
717 drive
718 *******************************************************************************/
719
720 drive_context_t *drive_context[DRIVE_NUM];
721
drive_setup_context(void)722 void drive_setup_context(void)
723 {
724 }
725
drive_cpu_early_init_all(void)726 void drive_cpu_early_init_all(void)
727 {
728 }
729
drive_cpu_trigger_reset(unsigned int dnr)730 void drive_cpu_trigger_reset(unsigned int dnr)
731 {
732 }
733
drive_shutdown(void)734 void drive_shutdown(void)
735 {
736 }
737
drive_image_detach(disk_image_t * image,unsigned int unit)738 int drive_image_detach(disk_image_t *image, unsigned int unit)
739 {
740 return 0;
741 }
742
drive_image_attach(disk_image_t * image,unsigned int unit)743 int drive_image_attach(disk_image_t *image, unsigned int unit)
744 {
745 return 0;
746 }
747
drive_set_last_read(unsigned int track,unsigned int sector,uint8_t * buffer,struct drive_context_s * drv)748 void drive_set_last_read(unsigned int track, unsigned int sector, uint8_t *buffer, struct drive_context_s *drv)
749 {
750 }
751
drive_set_disk_memory(uint8_t * id,unsigned int track,unsigned int sector,struct drive_context_s * drv)752 void drive_set_disk_memory(uint8_t *id, unsigned int track, unsigned int sector, struct drive_context_s *drv)
753 {
754 }
755
drive_cpu_execute_one(drive_context_t * drv,CLOCK clk_value)756 void drive_cpu_execute_one(drive_context_t *drv, CLOCK clk_value)
757 {
758 }
759
drive_cpu_execute_all(CLOCK clk_value)760 void drive_cpu_execute_all(CLOCK clk_value)
761 {
762 }
763
drive_num_leds(unsigned int dnr)764 int drive_num_leds(unsigned int dnr)
765 {
766 return 1;
767 }
768
drive_check_type(unsigned int drive_type,unsigned int dnr)769 int drive_check_type(unsigned int drive_type, unsigned int dnr)
770 {
771 return 0;
772 }
773
drive_check_extend_policy(int drive_type)774 int drive_check_extend_policy(int drive_type)
775 {
776 return 0;
777 }
778
drive_check_idle_method(int drive_type)779 int drive_check_idle_method(int drive_type)
780 {
781 return 0;
782 }
783
drive_check_parallel_cable(int drive_type)784 int drive_check_parallel_cable(int drive_type)
785 {
786 return 0;
787 }
788
drive_get_disk_drive_type(int dnr)789 int drive_get_disk_drive_type(int dnr)
790 {
791 return 0;
792 }
793
794 /*******************************************************************************
795 vdrive
796 *******************************************************************************/
797
vdrive_init(void)798 void vdrive_init(void)
799 {
800 }
801
vdrive_device_setup(vdrive_t * vdrive,unsigned int unit)802 int vdrive_device_setup(vdrive_t *vdrive, unsigned int unit)
803 {
804 return 0;
805 }
806
vdrive_device_shutdown(vdrive_t * vdrive)807 void vdrive_device_shutdown(vdrive_t *vdrive)
808 {
809 }
810
vdrive_iec_attach(unsigned int unit,const char * name)811 int vdrive_iec_attach(unsigned int unit, const char *name)
812 {
813 return 0;
814 }
815
vdrive_bam_get_disk_id(unsigned int unit,uint8_t * id)816 int vdrive_bam_get_disk_id(unsigned int unit, uint8_t *id)
817 {
818 return 0;
819 }
820
vdrive_bam_set_disk_id(unsigned int unit,uint8_t * id)821 int vdrive_bam_set_disk_id(unsigned int unit, uint8_t *id)
822 {
823 return 0;
824 }
825
vdrive_detach_image(disk_image_t * image,unsigned int unit,vdrive_t * vdrive)826 void vdrive_detach_image(disk_image_t *image, unsigned int unit, vdrive_t *vdrive)
827 {
828 }
829
vdrive_attach_image(disk_image_t * image,unsigned int unit,vdrive_t * vdrive)830 int vdrive_attach_image(disk_image_t *image, unsigned int unit, vdrive_t *vdrive)
831 {
832 return 0;
833 }
834
vdrive_get_last_read(unsigned int * track,unsigned int * sector,uint8_t ** buffer)835 void vdrive_get_last_read(unsigned int *track, unsigned int *sector, uint8_t **buffer)
836 {
837 }
838
vdrive_internal_create_format_disk_image(const char * filename,const char * diskname,unsigned int type)839 int vdrive_internal_create_format_disk_image(const char *filename, const char *diskname, unsigned int type)
840 {
841 return 0;
842 }
843
vdrive_iec_close(vdrive_t * vdrive,unsigned int secondary)844 int vdrive_iec_close(vdrive_t *vdrive, unsigned int secondary)
845 {
846 return 0;
847 }
848
vdrive_iec_write(vdrive_t * vdrive,uint8_t data,unsigned int secondary)849 int vdrive_iec_write(vdrive_t *vdrive, uint8_t data, unsigned int secondary)
850 {
851 return 0;
852 }
853
vdrive_iec_open(vdrive_t * vdrive,const uint8_t * name,unsigned int length,unsigned int secondary,cbmdos_cmd_parse_t * cmd_parse_ext)854 int vdrive_iec_open(vdrive_t *vdrive, const uint8_t *name, unsigned int length, unsigned int secondary, cbmdos_cmd_parse_t *cmd_parse_ext)
855 {
856 return 0;
857 }
858
vdrive_iec_read(vdrive_t * vdrive,uint8_t * data,unsigned int secondary)859 int vdrive_iec_read(vdrive_t *vdrive, uint8_t *data, unsigned int secondary)
860 {
861 return 0;
862 }
863
vdrive_command_execute(vdrive_t * vdrive,const uint8_t * buf,unsigned int length)864 int vdrive_command_execute(vdrive_t *vdrive, const uint8_t *buf, unsigned int length)
865 {
866 return 0;
867 }
868
vdrive_write_sector(vdrive_t * vdrive,const uint8_t * buf,unsigned int track,unsigned int sector)869 int vdrive_write_sector(vdrive_t *vdrive, const uint8_t *buf, unsigned int track, unsigned int sector)
870 {
871 return 0;
872 }
873
vdrive_read_sector(vdrive_t * vdrive,uint8_t * buf,unsigned int track,unsigned int sector)874 int vdrive_read_sector(vdrive_t *vdrive, uint8_t *buf, unsigned int track, unsigned int sector)
875 {
876 return 0;
877 }
878
879 /*******************************************************************************
880 c64 stuff
881 *******************************************************************************/
882
tapeport_device_register(tapeport_device_t * device)883 tapeport_device_list_t *tapeport_device_register(tapeport_device_t *device)
884 {
885 return NULL;
886 }
887
tapeport_device_unregister(tapeport_device_list_t * device)888 void tapeport_device_unregister(tapeport_device_list_t *device)
889 {
890 }
891
tapeport_trigger_flux_change(unsigned int on,int id)892 void tapeport_trigger_flux_change(unsigned int on, int id)
893 {
894 }
895
tapeport_set_tape_sense(int sense,int id)896 void tapeport_set_tape_sense(int sense, int id)
897 {
898 }
899
tapeport_snapshot_register(tapeport_snapshot_t * snapshot)900 void tapeport_snapshot_register(tapeport_snapshot_t *snapshot)
901 {
902 }
903
iec_available_busses(void)904 int iec_available_busses(void)
905 {
906 return 0;
907 }
908
909 #ifdef ANDROID_COMPILE
910 static int loader_true_drive = 0;
911
loader_set_drive_true_emulation(int val)912 void loader_set_drive_true_emulation(int val)
913 {
914 loader_true_drive = val;
915 }
916
loader_get_drive_true_emulation()917 int loader_get_drive_true_emulation()
918 {
919 return loader_true_drive;
920 }
921 #endif
922