void ay_init( void ) { module_register( &ay_module_info ); periph_register( PERIPH_TYPE_AY, &ay_periph ); periph_register( PERIPH_TYPE_AY_PLUS3, &ay_periph_plus3 ); periph_register( PERIPH_TYPE_AY_FULL_DECODE, &ay_periph_full_decode ); periph_register( PERIPH_TYPE_AY_TIMEX, &ay_periph_timex ); }
static void printer_zxp_init(void) { zxpstylus=zxpspeed=zxpheight=zxpnewspeed=zxplineofchar=0; zxppixel=-1; module_register(&printer_zxp_module_info); periph_register(PERIPH_TYPE_ZXPRINTER,&printer_zxp_periph); periph_register(PERIPH_TYPE_ZXPRINTER_FULL_DECODE,&printer_zxp_periph_full_decode); periph_register(PERIPH_TYPE_PARALLEL_PRINTER,&printer_parallel_periph); }
void ula_init( void ) { module_register( &ula_module_info ); periph_register( PERIPH_TYPE_ULA, &ula_periph ); periph_register( PERIPH_TYPE_ULA_FULL_DECODE, &ula_periph_full_decode ); ula_default_value = 0xff; }
static int zxcf_init( void *context ) { int error, i; last_memctl = 0x00; zxcf_idechn = libspectrum_ide_alloc( LIBSPECTRUM_IDE_DATA16 ); ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_ZXCF_EJECT, 0 ); if( settings_current.zxcf_pri_file ) { error = libspectrum_ide_insert( zxcf_idechn, LIBSPECTRUM_IDE_MASTER, settings_current.zxcf_pri_file ); if( error ) return error; ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_ZXCF_EJECT, 1 ); } module_register( &zxcf_module_info ); zxcf_memory_source = memory_source_register( "ZXCF" ); for( i = 0; i < MEMORY_PAGES_IN_16K; i++ ) zxcf_memory_map_romcs[i].source = zxcf_memory_source; periph_register( PERIPH_TYPE_ZXCF, &zxcf_periph ); periph_register_paging_events( event_type_string, &page_event, &unpage_event ); return 0; }
static int scld_init( void *context ) { module_register( &scld_module_info ); periph_register( PERIPH_TYPE_SCLD, &scld_periph ); return 0; }
void machines_periph_init( void ) { periph_register( PERIPH_TYPE_128_MEMORY, &spec128_memory ); periph_register( PERIPH_TYPE_PLUS3_MEMORY, &plus3_memory ); periph_register( PERIPH_TYPE_UPD765, &upd765 ); periph_register( PERIPH_TYPE_SE_MEMORY, &se_memory ); periph_register( PERIPH_TYPE_AY_TIMEX_WITH_JOYSTICK, &tc2068_ay ); periph_register( PERIPH_TYPE_BETA128_PENTAGON, &beta128_pentagon ); periph_register( PERIPH_TYPE_BETA128_PENTAGON_LATE, &beta128_pentagon_late ); periph_register( PERIPH_TYPE_PENTAGON1024_MEMORY, &pentagon1024_memory ); }
static int spectranet_init( void *context ) { module_register( &spectranet_module_info ); spectranet_source = memory_source_register( "Spectranet" ); periph_register( PERIPH_TYPE_SPECTRANET, &spectranet_periph ); periph_register_paging_events( event_type_string, &page_event, &unpage_event ); w5100 = nic_w5100_alloc(); flash_rom = flash_am29f010_alloc(); return 0; }
static int usource_init( void *context ) { int i; module_register( &usource_module_info ); usource_memory_source = memory_source_register( "uSource" ); for( i = 0; i < MEMORY_PAGES_IN_8K; i++ ) usource_memory_map_romcs[i].source = usource_memory_source; periph_register( PERIPH_TYPE_USOURCE, &usource_periph ); return 0; }
void speccyboot_init( void ) { int i; nic = nic_enc28j60_alloc(); module_register( &speccyboot_module_info ); speccyboot_memory_source = memory_source_register( "SpeccyBoot" ); for( i = 0; i < MEMORY_PAGES_IN_8K; i++ ) speccyboot_memory_map_romcs[i].source = speccyboot_memory_source; periph_register( PERIPH_TYPE_SPECCYBOOT, &speccyboot_periph ); }
static int didaktik80_init( void *context ) { int i; fdd_t *d; didaktik_fdc = wd_fdc_alloc_fdc( WD2797, 0, WD_FLAG_DRQ | WD_FLAG_RDY ); for( i = 0; i < DIDAKTIK80_NUM_DRIVES; i++ ) { d = &didaktik_drives[ i ]; fdd_init( d, FDD_SHUGART, NULL, 0 ); /* drive geometry 'autodetect' */ d->disk.flag = DISK_FLAG_NONE; } didaktik_fdc->current_drive = &didaktik_drives[ 0 ]; fdd_select( &didaktik_drives[ 0 ], 1 ); didaktik_fdc->extra_signal = 1; didaktik_fdc->dden = 1; didaktik_fdc->set_intrq = didaktik_set_intrq; didaktik_fdc->reset_intrq = NULL; didaktik_fdc->set_datarq = didaktik_set_datarq; didaktik_fdc->reset_datarq = NULL; module_register( &didaktik_module_info ); didaktik_rom_memory_source = memory_source_register( "Didaktik 80 ROM" ); didaktik_ram_memory_source = memory_source_register( "Didaktik 80 RAM" ); for( i = 0; i < MEMORY_PAGES_IN_14K; i++ ) didaktik_memory_map_romcs_rom[i].source = didaktik_rom_memory_source; for( i = 0; i < MEMORY_PAGES_IN_2K; i++ ) didaktik_memory_map_romcs_ram[i].source = didaktik_ram_memory_source; periph_register( PERIPH_TYPE_DIDAKTIK80, &didaktik_periph ); for( i = 0; i < DIDAKTIK80_NUM_DRIVES; i++ ) { didaktik_ui_drives[ i ].fdd = &didaktik_drives[ i ]; ui_media_drive_register( &didaktik_ui_drives[ i ] ); } periph_register_paging_events( event_type_string, &page_event, &unpage_event ); return 0; }
static int speccyboot_init( void *context ) { int i; nic = nic_enc28j60_alloc(); module_register( &speccyboot_module_info ); speccyboot_memory_source = memory_source_register( "SpeccyBoot" ); for( i = 0; i < MEMORY_PAGES_IN_8K; i++ ) speccyboot_memory_map_romcs[i].source = speccyboot_memory_source; periph_register( PERIPH_TYPE_SPECCYBOOT, &speccyboot_periph ); periph_register_paging_events( event_type_string, &page_event, &unpage_event ); return 0; }
void opus_init( void ) { int i; fdd_t *d; opus_fdc = wd_fdc_alloc_fdc( WD1770, 0, WD_FLAG_DRQ ); for( i = 0; i < OPUS_NUM_DRIVES; i++ ) { d = &opus_drives[ i ]; fdd_init( d, FDD_SHUGART, NULL, 0 ); /* drive geometry 'autodetect' */ d->disk.flag = DISK_FLAG_NONE; } opus_fdc->current_drive = &opus_drives[ 0 ]; fdd_select( &opus_drives[ 0 ], 1 ); opus_fdc->dden = 1; opus_fdc->set_intrq = NULL; opus_fdc->reset_intrq = NULL; opus_fdc->set_datarq = opus_set_datarq; opus_fdc->reset_datarq = NULL; module_register( &opus_module_info ); opus_rom_memory_source = memory_source_register( "Opus ROM" ); opus_ram_memory_source = memory_source_register( "Opus RAM" ); for( i = 0; i < MEMORY_PAGES_IN_8K; i++ ) opus_memory_map_romcs_rom[i].source = opus_rom_memory_source; for( i = 0; i < MEMORY_PAGES_IN_2K; i++ ) opus_memory_map_romcs_ram[i].source = opus_ram_memory_source; periph_register( PERIPH_TYPE_OPUS, &opus_periph ); for( i = 0; i < OPUS_NUM_DRIVES; i++ ) { opus_ui_drives[ i ].fdd = &opus_drives[ i ]; ui_media_drive_register( &opus_ui_drives[ i ] ); } }
void plusd_init( void ) { int i; fdd_t *d; plusd_fdc = wd_fdc_alloc_fdc( WD1770, 0, WD_FLAG_NONE ); for( i = 0; i < PLUSD_NUM_DRIVES; i++ ) { d = &plusd_drives[ i ]; fdd_init( d, FDD_SHUGART, NULL, 0 ); d->disk.flag = DISK_FLAG_NONE; } plusd_fdc->current_drive = &plusd_drives[ 0 ]; fdd_select( &plusd_drives[ 0 ], 1 ); plusd_fdc->dden = 1; plusd_fdc->set_intrq = NULL; plusd_fdc->reset_intrq = NULL; plusd_fdc->set_datarq = NULL; plusd_fdc->reset_datarq = NULL; module_register( &plusd_module_info ); plusd_memory_source = memory_source_register( "PlusD" ); for( i = 0; i < MEMORY_PAGES_IN_8K; i++ ) plusd_memory_map_romcs_rom[ i ].source = plusd_memory_source; for( i = 0; i < MEMORY_PAGES_IN_8K; i++ ) plusd_memory_map_romcs_ram[ i ].source = plusd_memory_source; periph_register( PERIPH_TYPE_PLUSD, &plusd_periph ); for( i = 0; i < PLUSD_NUM_DRIVES; i++ ) { plusd_ui_drives[ i ].fdd = &plusd_drives[ i ]; ui_media_drive_register( &plusd_ui_drives[ i ] ); } }