[Fuse-for-macosx-commits] SF.net SVN: fuse-for-macosx: [249] vendor/fuse/current
Brought to you by:
fredm
From: <fr...@us...> - 2006-12-17 13:30:53
|
Revision: 249 http://svn.sourceforge.net/fuse-for-macosx/?rev=249&view=rev Author: fredm Date: 2006-12-17 05:30:52 -0800 (Sun, 17 Dec 2006) Log Message: ----------- Load . into vendor/fuse/current. Modified Paths: -------------- vendor/fuse/current/debugger/breakpoint.c vendor/fuse/current/hacking/ChangeLog vendor/fuse/current/machine.c vendor/fuse/current/man/fuse.1 vendor/fuse/current/ui/sdl/sdljoystick.c vendor/fuse/current/ui/xlib/xdisplay.c vendor/fuse/current/widget/widget.c Modified: vendor/fuse/current/debugger/breakpoint.c =================================================================== --- vendor/fuse/current/debugger/breakpoint.c 2006-12-17 11:37:47 UTC (rev 248) +++ vendor/fuse/current/debugger/breakpoint.c 2006-12-17 13:30:52 UTC (rev 249) @@ -1,7 +1,7 @@ /* breakpoint.c: a debugger breakpoint Copyright (c) 2002-2004 Philip Kendall - $Id: breakpoint.c,v 1.7 2004/06/16 14:46:34 pak21 Exp $ + $Id: breakpoint.c,v 1.8 2006/12/15 20:50:47 pak21 Exp $ 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 @@ -440,11 +440,11 @@ found++; + free( ptr->data ); + debugger_breakpoints = g_slist_remove( debugger_breakpoints, ptr->data ); if( debugger_mode == DEBUGGER_MODE_ACTIVE && !debugger_breakpoints ) debugger_mode = DEBUGGER_MODE_INACTIVE; - - free( ptr->data ); } if( !found ) { Modified: vendor/fuse/current/hacking/ChangeLog =================================================================== --- vendor/fuse/current/hacking/ChangeLog 2006-12-17 11:37:47 UTC (rev 248) +++ vendor/fuse/current/hacking/ChangeLog 2006-12-17 13:30:52 UTC (rev 249) @@ -1469,3 +1469,15 @@ specplus3e.c,tc2048.c,tc2068.c,ts2068.c},profile.c,settings-header.pl, settings.dat,settings.pl,widget/roms.c: fallback to loading default ROM if custom ROM is not found (Fred). +20061126 ui/sdl/sdljoystick.c: fix joystick support in SDL UI (Fred). +20061126 man/fuse.1: add a smidgeon of content about Interface I (Fred). +20061202 widget/widget.c: guard against the double free on the options dialog + (Fred). +20061202 widget/widget.c: use checkbox instead of "On/Off" text in widget UIs + (patch #1309374) (Gergely Szasz). +20061202 man/fuse.1: add some more TS2068 stuff (Fred). +20061213 ui/xlib/xdisplay.c: fix compilation. +20061215 debugger/breakpoint.c: fix segfault on "clear" command (thanks, + Stuart Brady) +20061217 machine.c: load rom into correct memory bank (fixes If1 ROM paging) + (Fred). Modified: vendor/fuse/current/machine.c =================================================================== --- vendor/fuse/current/machine.c 2006-12-17 11:37:47 UTC (rev 248) +++ vendor/fuse/current/machine.c 2006-12-17 13:30:52 UTC (rev 249) @@ -1,7 +1,7 @@ /* machine.c: Routines for handling the various machine types Copyright (c) 1999-2005 Philip Kendall - $Id: machine.c,v 1.117 2006/10/21 05:28:33 fredm Exp $ + $Id: machine.c,v 1.118 2006/12/17 12:47:01 fredm Exp $ 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 @@ -326,10 +326,10 @@ const char *filename, const char *fallback, size_t expected_length ) { - int retval = machine_load_rom_bank_internal( memory_map_rom, which, page_num, + int retval = machine_load_rom_bank_internal( bank_map, which, page_num, filename, expected_length ); if( retval && fallback ) - retval = machine_load_rom_bank_internal( memory_map_rom, which, page_num, + retval = machine_load_rom_bank_internal( bank_map, which, page_num, fallback, expected_length ); return retval; } Modified: vendor/fuse/current/man/fuse.1 =================================================================== --- vendor/fuse/current/man/fuse.1 2006-12-17 11:37:47 UTC (rev 248) +++ vendor/fuse/current/man/fuse.1 2006-12-17 13:30:52 UTC (rev 249) @@ -58,7 +58,8 @@ the old DAT-file variant is not. DSK disk images are supported when emulating a +3, TRD and SCL disk images are supported when emulating a Pentagon or Scorpion and DCK cartridge images are supported when -emulating a TC2068. Interface II ROM cartridges are also supported. +emulating a Timex 2068 variant. Interface II ROM cartridges are also +supported. .PP Finally, there is also support for reading and writing the RZX input recording format. @@ -181,8 +182,8 @@ .PP .I "\-\-dock file" .RS -Insert the specified file into the emulated Timex TC2068 dock; also select -the TC2068 on startup if available. +Insert the specified file into the emulated Timex 2068 variant dock; +also select the TC2068 on startup if available. .RE .PP .I "\-\-embed\-snapshot" @@ -269,6 +270,13 @@ Insert the specified file into the emulated Interface II. .RE .PP +.I \-\-interface1 +.RS +Emulate a Sinclair Interface I. Same as the Peripherals Options dialog's +.I "Interface I" +option. +.RE +.PP .I \-\-interface2 .RS Emulate a Sinclair Interface II. Same as the Peripherals Options dialog's @@ -345,8 +353,10 @@ .IR plus3 , .IR 2048 , .IR 2068 , +.IR ts2068 , +.IR pentagon , and -.IR pentagon . +.IR scorpion . .RE .PP .I "\-p file" @@ -1246,6 +1256,15 @@ it successfully opens one. The first of these is preferred since (at least on Linux, with a 2.6-series kernel) any type of mouse can be used and any connected mouse may be used. +.PP +.I "Interface I" +.RS +If this option is selected, Fuse will emulate the simple Sinclair +Interface I, and allow microdrive cartriges to be +connected and disconnected via the +.I "Media, Interface I, Microdrive" +menus. It also enables support for the Interface I RS-232 and Sinclair +network interfaces. .RE .PP .I "Interface II" @@ -1458,8 +1477,8 @@ .br .I Timex 2 .RS -The `left' and `right' joysticks as attached to the TC2068's built-in -joystick interface. +The `left' and `right' joysticks as attached to the Timex 2068 variant's +built-in joystick interface. .RE .RE .PP @@ -1524,9 +1543,11 @@ .RS Choose a type of Spectrum to emulate. An brief overview of the Sinclair, Amstrad and Timex can be found at -.IR "http://www.nvg.ntnu.no/sinclair/computers/zxspectrum/zxspectrum.htm" , +.IR "http://www.nvg.ntnu.no/sinclair/computers/zxspectrum/zxspectrum.htm" while more technical information can be found at -.IR "http://www.worldofspectrum.org/faq/reference/reference.htm" . +.IR "http://www.worldofspectrum.org/faq/reference/reference.htm" , +and +.IR "http://www.worldofspectrum.org/faq/reference/tmxreference.htm" . .PP .I "Spectrum 16K" .br @@ -1570,10 +1591,12 @@ .br .I "Timex TC2068" .RS -The variants of the Spectrum as released by Timex in Portugal. See -.I "http://www.worldofspectrum.org/faq/reference/tmxreference.htm" -for more details. +The variants of the Spectrum as released by Timex in Portugal. .RE +.I "Timex TS2048" +.RS +The variant of the Spectrum released by Timex in North America. +.RE .PP .I "Pentagon 128K" .br @@ -1792,14 +1815,14 @@ .PP .I "Media, Cartridge, Timex Dock, Insert..." .RS -Insert a cartridge into the TC2068's dock. This will cause the -emulated machine to be changed to the TC2068 (if it wasn't already) -and reset. +Insert a cartridge into the Timex 2068 dock. This will cause the +emulated machine to be changed to the TC2068 (if it wasn't already +a 2068 variant) and reset. .RE .PP .I "Media, Cartridge, Timex Dock, Eject" .RS -Remove the cartridge from the TC2068's dock. This will cause the +Remove the cartridge from the Timex 2068 dock. This will cause the emulated machine to be reset. .RE .PP @@ -2090,7 +2113,7 @@ printers, three of which are supported by Fuse. Different printers are made available for the different models: .TP -.IR 16 ", " 48 ", " TC2048 ", " TC2068 +.IR 16 ", " 48 ", " TC2048 ", " TC2068 ", " TS2068 ZX Printer .TP .IR 128 / +2 / Pentagon @@ -2709,9 +2732,9 @@ .PP Alexander Yurchenko wrote the OpenBSD/Solaris-specific sound code. .PP -Fredrick Meunier wrote the TC2048, Pentagon and Spectrum SE support as -well as maintaining the OS X port and importing the graphics filter -code. +Fredrick Meunier wrote the TC2048, TS2068, Pentagon and Spectrum SE +support as well as maintaining the OS X port and importing the +graphics filter code. .PP Ludvig Strigeus and The ScummVM project wrote the original graphics filter code. Modified: vendor/fuse/current/ui/sdl/sdljoystick.c =================================================================== --- vendor/fuse/current/ui/sdl/sdljoystick.c 2006-12-17 11:37:47 UTC (rev 248) +++ vendor/fuse/current/ui/sdl/sdljoystick.c 2006-12-17 13:30:52 UTC (rev 249) @@ -1,7 +1,7 @@ /* sdljoystick.c: routines for dealing with the SDL joystick Copyright (c) 2003-2004 Darren Salt, Fredrick Meunier, Philip Kendall - $Id: sdljoystick.c,v 1.7 2004/06/18 21:53:22 pak21 Exp $ + $Id: sdljoystick.c,v 1.8 2006/11/26 03:26:19 fredm Exp $ 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 @@ -53,10 +53,16 @@ int ui_joystick_init( void ) { - int retval = SDL_NumJoysticks(); + int error, retval; - SDL_InitSubSystem( SDL_INIT_JOYSTICK ); + error = SDL_InitSubSystem( SDL_INIT_JOYSTICK ); + if ( error ) { + ui_error( UI_ERROR_ERROR, "failed to initialise joystick subsystem" ); + return 0; + } + retval = SDL_NumJoysticks(); + if( retval >= 2 ) { retval = 2; Modified: vendor/fuse/current/ui/xlib/xdisplay.c =================================================================== --- vendor/fuse/current/ui/xlib/xdisplay.c 2006-12-17 11:37:47 UTC (rev 248) +++ vendor/fuse/current/ui/xlib/xdisplay.c 2006-12-17 13:30:52 UTC (rev 249) @@ -1,7 +1,7 @@ /* xdisplay.c: Routines for dealing with drawing the Speccy's screen via Xlib Copyright (c) 2000-2005 Philip Kendall, Darren Salt - $Id: xdisplay.c,v 1.53 2006/09/17 00:56:20 fredm Exp $ + $Id: xdisplay.c,v 1.54 2006/12/13 22:01:04 pak21 Exp $ 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 @@ -452,7 +452,7 @@ scaled_x = scale * x; scaled_y = scale * y; /* Create scaled image */ - scaler_proc16( (libspectrum_byte*)&xdisplay_image[y][x], display_pitch, + scaler_proc16( (libspectrum_byte*)&xdisplay_image[y][x], xdisplay_pitch, (libspectrum_byte*)&scaled_image[scaled_y][scaled_x], scaled_pitch, w, h ); Modified: vendor/fuse/current/widget/widget.c =================================================================== --- vendor/fuse/current/widget/widget.c 2006-12-17 11:37:47 UTC (rev 248) +++ vendor/fuse/current/widget/widget.c 2006-12-17 13:30:52 UTC (rev 249) @@ -1,7 +1,7 @@ /* widget.c: Simple dialog boxes for all user interfaces. Copyright (c) 2001-2005 Matan Ziv-Av, Philip Kendall, Russell Marks - $Id: widget.c,v 1.111 2006/09/17 00:56:20 fredm Exp $ + $Id: widget.c,v 1.113 2006/12/02 03:24:17 fredm Exp $ 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 @@ -315,6 +315,28 @@ widget_putpixel( x + mx, y + my, col ); } +void widget_print_checkbox( int x, int y, int value ) +{ + static const int CHECK_COLOR=7; + int z; + + y += 2; + x += 6; + widget_rectangle( x, y - 1, 3, 3, WIDGET_COLOUR_BACKGROUND ); + widget_rectangle( x - 5, y, 5, 5, 0 ); + widget_rectangle( x - 4, y + 1, 3, 3, WIDGET_COLOUR_BACKGROUND ); + if( value ) { /* checked */ + for( z = -1; z < 3; z++ ) { + widget_putpixel( x - z, y + z, CHECK_COLOR ); + widget_putpixel( x - z + 1, y + z, CHECK_COLOR ); + } + widget_putpixel( x - z + 1, y + z, CHECK_COLOR ); + widget_putpixel( x - z, y + z - 1, CHECK_COLOR ); + widget_putpixel( x - z, y + z - 2, CHECK_COLOR ); + widget_putpixel( x - z - 1, y + z - 2, CHECK_COLOR ); + } +} + /* Arrows for any scrollable widget */ void widget_up_arrow( int x, int y, int colour ) @@ -566,7 +588,10 @@ int widget_options_print_value( int number, int value ) { - return widget_options_print_data( number, value ? "On" : "Off" ); + widget_rectangle( 233, number * 8 + 28, 7, 8, WIDGET_COLOUR_BACKGROUND ); + widget_print_checkbox( 233, number * 8 + 28, value ); + widget_display_rasters( number * 8 + 28, 8 ); + return 0; } static int widget_options_print_data( int number, const char *string ) @@ -599,6 +624,7 @@ if( finished == WIDGET_FINISHED_OK ) { error = settings_copy( &settings_current, &widget_options_settings ); settings_free( &widget_options_settings ); + memset( &widget_options_settings, 0, sizeof( settings_info ) ); if( error ) return error; /* Bring the peripherals list into sync with the new options */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |