src/mess/devices/idedrive.c
| r2173 | r2174 | |
| 31 | 31 | parent_devclass.get_info = harddisk_device_getinfo; |
| 32 | 32 | |
| 33 | 33 | if (parent_init) |
| 34 | | *parent_init = (device_start_func) mess_device_get_info_fct(&parent_devclass, MESS_DEVINFO_PTR_INIT); |
| 34 | *parent_init = (device_start_func) mess_device_get_info_fct(&parent_devclass, MESS_DEVINFO_PTR_START); |
| 35 | 35 | if (parent_load) |
| 36 | 36 | *parent_load = (device_load_handler) mess_device_get_info_fct(&parent_devclass, MESS_DEVINFO_PTR_LOAD); |
| 37 | 37 | if (parent_unload) |
| r2173 | r2174 | |
| 161 | 161 | switch(state) |
| 162 | 162 | { |
| 163 | 163 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 164 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(ide_hd); break; |
| 164 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(ide_hd); break; |
| 165 | 165 | case MESS_DEVINFO_PTR_LOAD: info->load = ide_hd_load; break; |
| 166 | 166 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = ide_hd_unload; break; |
| 167 | 167 | case MESS_DEVINFO_PTR_VALIDITY_CHECK: info->validity_check = ide_hd_validity_check; break; |
src/mess/devices/appldriv.c
| r2173 | r2174 | |
| 282 | 282 | |
| 283 | 283 | image_alloctag(device, APPLE525TAG, sizeof(struct apple525_disk)); |
| 284 | 284 | |
| 285 | | parent_init = (device_start_func) mess_device_get_info_fct(&parent_devclass, MESS_DEVINFO_PTR_INIT); |
| 285 | parent_init = (device_start_func) mess_device_get_info_fct(&parent_devclass, MESS_DEVINFO_PTR_START); |
| 286 | 286 | parent_init(device); |
| 287 | 287 | } |
| 288 | 288 | |
| r2173 | r2174 | |
| 326 | 326 | case MESS_DEVINFO_STR_DEV_TAG: strcpy(info->s = device_temp_str(), APPLE525TAG); break; |
| 327 | 327 | |
| 328 | 328 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 329 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(apple525_floppy); break; |
| 329 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(apple525_floppy); break; |
| 330 | 330 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_apple525_floppy; break; |
| 331 | 331 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_apple525_floppy; break; |
| 332 | 332 | case MESS_DEVINFO_PTR_FLOPPY_OPTIONS: info->p = (void *) floppyoptions_apple2; break; |
src/mess/device.c
| r2173 | r2174 | |
| 361 | 361 | mess_device->io_device.must_be_loaded = mess_device_get_info_int(&mess_device->io_device.devclass, MESS_DEVINFO_INT_MUST_BE_LOADED) ? 1 : 0; |
| 362 | 362 | mess_device->io_device.load_at_init = mess_device_get_info_int(&mess_device->io_device.devclass, MESS_DEVINFO_INT_LOAD_AT_INIT) ? 1 : 0; |
| 363 | 363 | |
| 364 | | mess_device->io_device.init = (device_start_func) mess_device_get_info_fct(&mess_device->io_device.devclass, MESS_DEVINFO_PTR_INIT); |
| 365 | | mess_device->io_device.exit = (device_stop_func) mess_device_get_info_fct(&mess_device->io_device.devclass, MESS_DEVINFO_PTR_EXIT); |
| 364 | mess_device->io_device.start = (device_start_func) mess_device_get_info_fct(&mess_device->io_device.devclass, MESS_DEVINFO_PTR_START); |
| 365 | mess_device->io_device.stop = (device_stop_func) mess_device_get_info_fct(&mess_device->io_device.devclass, MESS_DEVINFO_PTR_STOP); |
| 366 | 366 | mess_device->io_device.load = (device_load_handler) mess_device_get_info_fct(&mess_device->io_device.devclass, MESS_DEVINFO_PTR_LOAD); |
| 367 | 367 | mess_device->io_device.create = (device_create_handler) mess_device_get_info_fct(&mess_device->io_device.devclass, MESS_DEVINFO_PTR_CREATE); |
| 368 | 368 | mess_device->io_device.unload = (device_unload_handler) mess_device_get_info_fct(&mess_device->io_device.devclass, MESS_DEVINFO_PTR_UNLOAD); |
src/mess/device.h
| r2173 | r2174 | |
| 50 | 50 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 51 | 51 | MESS_DEVINFO_PTR_FIRST = 0x10000, |
| 52 | 52 | |
| 53 | | MESS_DEVINFO_PTR_INIT, |
| 54 | | MESS_DEVINFO_PTR_EXIT, |
| 53 | MESS_DEVINFO_PTR_START, |
| 54 | MESS_DEVINFO_PTR_STOP, |
| 55 | 55 | MESS_DEVINFO_PTR_LOAD, |
| 56 | 56 | MESS_DEVINFO_PTR_UNLOAD, |
| 57 | 57 | MESS_DEVINFO_PTR_CREATE, |
| r2173 | r2174 | |
| 112 | 112 | char *s; /* generic strings */ |
| 113 | 113 | double d; /* generic floating points */ |
| 114 | 114 | |
| 115 | | device_start_func init; |
| 116 | | device_stop_func exit; |
| 115 | device_start_func start; |
| 116 | device_stop_func stop; |
| 117 | 117 | device_load_handler load; |
| 118 | 118 | device_create_handler create; |
| 119 | 119 | device_unload_handler unload; |
| r2173 | r2174 | |
| 257 | 257 | unsigned int multiple : 1; |
| 258 | 258 | |
| 259 | 259 | /* image handling callbacks */ |
| 260 | | device_start_func init; |
| 261 | | device_stop_func exit; |
| 260 | device_start_func start; |
| 261 | device_stop_func stop; |
| 262 | 262 | device_load_handler load; |
| 263 | 263 | device_create_handler create; |
| 264 | 264 | device_unload_handler unload; |
src/mess/machine/cbmserb.c
| r2173 | r2174 | |
| 413 | 413 | case MESS_DEVINFO_INT_COUNT: info->i = 2; break; |
| 414 | 414 | |
| 415 | 415 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 416 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(cbm_drive); break; |
| 417 | | case MESS_DEVINFO_PTR_EXIT: info->exit = DEVICE_STOP_NAME(cbm_drive); break; |
| 416 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(cbm_drive); break; |
| 417 | case MESS_DEVINFO_PTR_STOP: info->stop = DEVICE_STOP_NAME(cbm_drive); break; |
| 418 | 418 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_cbm_drive; break; |
| 419 | 419 | |
| 420 | 420 | /* --- the following bits of info are returned as NULL-terminated strings --- */ |
src/mess/drivers/nc.c
| r2173 | r2174 | |
| 1747 | 1747 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 1748 | 1748 | |
| 1749 | 1749 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 1750 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(nc_pcmcia_card); break; |
| 1750 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(nc_pcmcia_card); break; |
| 1751 | 1751 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_nc_pcmcia_card; break; |
| 1752 | 1752 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_nc_pcmcia_card; break; |
| 1753 | 1753 | |
| r2173 | r2174 | |
| 1771 | 1771 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 1772 | 1772 | |
| 1773 | 1773 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 1774 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(serial_device); break; |
| 1774 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(serial_device); break; |
| 1775 | 1775 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_nc_serial; break; |
| 1776 | 1776 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = serial_device_unload; break; |
| 1777 | 1777 | |
src/mess/drivers/pokemini.c
| r2173 | r2174 | |
| 80 | 80 | switch( state ) { |
| 81 | 81 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 82 | 82 | case MESS_DEVINFO_INT_MUST_BE_LOADED: info->i = 0; break; |
| 83 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(pokemini_cart); break; |
| 83 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(pokemini_cart); break; |
| 84 | 84 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_pokemini_cart; break; |
| 85 | 85 | case MESS_DEVINFO_STR_FILE_EXTENSIONS: strcpy( info->s = device_temp_str(), "min"); break; |
| 86 | 86 | default: cartslot_device_getinfo( devclass, state, info ); break; |
src/mess/drivers/ti99_8.c
| r2173 | r2174 | |
| 550 | 550 | case MESS_DEVINFO_INT_COUNT: info->i = 3; break; |
| 551 | 551 | |
| 552 | 552 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 553 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(mess_hd); break; |
| 553 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(mess_hd); break; |
| 554 | 554 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_ti99_hd; break; |
| 555 | 555 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_ti99_hd; break; |
| 556 | 556 | |
| r2173 | r2174 | |
| 639 | 639 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 640 | 640 | |
| 641 | 641 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 642 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(smartmedia); break; |
| 642 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(smartmedia); break; |
| 643 | 643 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_smartmedia; break; |
| 644 | 644 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_smartmedia; break; |
| 645 | 645 | |
src/mess/drivers/atarist.c
| r2173 | r2174 | |
| 2117 | 2117 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 2118 | 2118 | |
| 2119 | 2119 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 2120 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(serial_device); break; |
| 2120 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(serial_device); break; |
| 2121 | 2121 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_atarist_serial; break; |
| 2122 | 2122 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = serial_device_unload; break; |
| 2123 | 2123 | |
| r2173 | r2174 | |
| 2136 | 2136 | case MESS_DEVINFO_INT_COUNT: info->i = 2; break; |
| 2137 | 2137 | |
| 2138 | 2138 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 2139 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(serial_device); break; |
| 2139 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(serial_device); break; |
| 2140 | 2140 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_atarist_serial; break; |
| 2141 | 2141 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = serial_device_unload; break; |
| 2142 | 2142 | |
src/mess/drivers/geneve.c
| r2173 | r2174 | |
| 556 | 556 | case MESS_DEVINFO_INT_COUNT: info->i = 3; break; |
| 557 | 557 | |
| 558 | 558 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 559 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(mess_hd); break; |
| 559 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(mess_hd); break; |
| 560 | 560 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_ti99_hd; break; |
| 561 | 561 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_ti99_hd; break; |
| 562 | 562 | |
| r2173 | r2174 | |
| 621 | 621 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 622 | 622 | |
| 623 | 623 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 624 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(smartmedia); break; |
| 624 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(smartmedia); break; |
| 625 | 625 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_smartmedia; break; |
| 626 | 626 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_smartmedia; break; |
| 627 | 627 | |
src/mess/drivers/tx0.c
| r2173 | r2174 | |
| 406 | 406 | case MESS_DEVINFO_INT_COUNT: info->i = 2; break; |
| 407 | 407 | |
| 408 | 408 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 409 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(tx0_tape); break; |
| 409 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(tx0_tape); break; |
| 410 | 410 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_tx0_tape; break; |
| 411 | 411 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_tx0_tape; break; |
| 412 | 412 | case MESS_DEVINFO_PTR_GET_DISPOSITIONS: info->getdispositions = tx0_tape_get_open_mode; break; |
| r2173 | r2174 | |
| 450 | 450 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 451 | 451 | |
| 452 | 452 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 453 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(tx0_magtape); break; |
| 453 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(tx0_magtape); break; |
| 454 | 454 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_tx0_magtape; break; |
| 455 | 455 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_tx0_magtape; break; |
| 456 | 456 | |
src/mess/drivers/ti990_10.c
| r2173 | r2174 | |
| 297 | 297 | case MESS_DEVINFO_INT_COUNT: info->i = 4; break; |
| 298 | 298 | |
| 299 | 299 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 300 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(ti990_hd); break; |
| 300 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(ti990_hd); break; |
| 301 | 301 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_ti990_hd; break; |
| 302 | 302 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_ti990_hd; break; |
| 303 | 303 | |
| r2173 | r2174 | |
| 319 | 319 | case MESS_DEVINFO_INT_COUNT: info->i = 4; break; |
| 320 | 320 | |
| 321 | 321 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 322 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(ti990_tape); break; |
| 322 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(ti990_tape); break; |
| 323 | 323 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_ti990_tape; break; |
| 324 | 324 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_ti990_tape; break; |
| 325 | 325 | |
src/mess/drivers/ti85.c
| r2173 | r2174 | |
| 491 | 491 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 492 | 492 | |
| 493 | 493 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 494 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(ti85_serial); break; |
| 494 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(ti85_serial); break; |
| 495 | 495 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_ti85_serial; break; |
| 496 | 496 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_ti85_serial; break; |
| 497 | 497 | |
| r2173 | r2174 | |
| 533 | 533 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 534 | 534 | |
| 535 | 535 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 536 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(ti85_serial); break; |
| 536 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(ti85_serial); break; |
| 537 | 537 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_ti85_serial; break; |
| 538 | 538 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_ti85_serial; break; |
| 539 | 539 | |
src/mess/drivers/ti99_4p.c
| r2173 | r2174 | |
| 345 | 345 | case MESS_DEVINFO_INT_COUNT: info->i = 3; break; |
| 346 | 346 | |
| 347 | 347 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 348 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(mess_hd); break; |
| 348 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(mess_hd); break; |
| 349 | 349 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_ti99_hd; break; |
| 350 | 350 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_ti99_hd; break; |
| 351 | 351 | |
| r2173 | r2174 | |
| 424 | 424 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 425 | 425 | |
| 426 | 426 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 427 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(smartmedia); break; |
| 427 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(smartmedia); break; |
| 428 | 428 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_smartmedia; break; |
| 429 | 429 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_smartmedia; break; |
| 430 | 430 | } |
src/mess/drivers/ti99_4x.c
| r2173 | r2174 | |
| 781 | 781 | case MESS_DEVINFO_INT_COUNT: info->i = 3; break; |
| 782 | 782 | |
| 783 | 783 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 784 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(ti99_cart); break; |
| 784 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(ti99_cart); break; |
| 785 | 785 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_ti99_cart; break; |
| 786 | 786 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_ti99_cart; break; |
| 787 | 787 | |
| r2173 | r2174 | |
| 820 | 820 | case MESS_DEVINFO_INT_COUNT: info->i = 3; break; |
| 821 | 821 | |
| 822 | 822 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 823 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(mess_hd); break; |
| 823 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(mess_hd); break; |
| 824 | 824 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_ti99_hd; break; |
| 825 | 825 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_ti99_hd; break; |
| 826 | 826 | |
| r2173 | r2174 | |
| 906 | 906 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 907 | 907 | |
| 908 | 908 | /* --- the following bits of info are returned as pointers to data or functions --- */ |
| 909 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(smartmedia); break; |
| 909 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(smartmedia); break; |
| 910 | 910 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_smartmedia; break; |
| 911 | 911 | case MESS_DEVINFO_PTR_UNLOAD: info->unload = device_unload_smartmedia; break; |
| 912 | 912 | |
src/mess/drivers/gamepock.c
| r2173 | r2174 | |
| 84 | 84 | switch( state ) { |
| 85 | 85 | case MESS_DEVINFO_INT_COUNT: info->i = 1; break; |
| 86 | 86 | case MESS_DEVINFO_INT_MUST_BE_LOADED: info->i = 0; break; |
| 87 | | case MESS_DEVINFO_PTR_INIT: info->init = DEVICE_START_NAME(gamepock_cart); break; |
| 87 | case MESS_DEVINFO_PTR_START: info->start = DEVICE_START_NAME(gamepock_cart); break; |
| 88 | 88 | case MESS_DEVINFO_PTR_LOAD: info->load = device_load_gamepock_cart; break; |
| 89 | 89 | case MESS_DEVINFO_STR_FILE_EXTENSIONS: strcpy( info->s = device_temp_str(), "bin" ); break; |
| 90 | 90 | default: cartslot_device_getinfo(devclass, state, info); break; |