Skip to content

Commit

Permalink
C64.emu updates and misc tweaks
Browse files Browse the repository at this point in the history
* Imagine: Fix if/else logic in GLRenderer::checkExtensionString()
* EmuFramework: Don't implicitly call showEmulation() in EmuApp::reloadSystem()
* C64.emu: Update core to VICE 3.8
* C64.emu: Add color settings in Options -> Video
* C64.emu: Save options per core: default TDE, border mode, crop normal borders, SID engine, ReSID resampling
* C64.emu: Add "Just Restart" to quick settings menu
* C64.emu: Add C64System::enterCPUTrap() to safely modify various settings outside of vblank
* C64.emu: Convert all options to use the new stateless API to use the VICE resource API directly and avoid stale cached values
* C64.emu: Only call onFrameTimeChanged() in vsyncarch_refresh_frequency_changed() if content is loaded
  • Loading branch information
Robert Broglia committed Feb 23, 2024
1 parent 0fd0c20 commit d084582
Show file tree
Hide file tree
Showing 1,394 changed files with 80,610 additions and 50,595 deletions.
8 changes: 6 additions & 2 deletions C64.emu/build.mk
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ CPPFLAGS += \
-I$(viceSrcPath)/imagecontents \
-I$(viceSrcPath)/monitor \
-I$(viceSrcPath)/platform \
-I$(viceSrcPath)/printerdrv \
-I$(viceSrcPath)/raster \
-I$(viceSrcPath)/c64dtv \
-I$(viceSrcPath)/vicii \
Expand All @@ -74,6 +75,7 @@ CPPFLAGS += \
-I$(viceSrcPath)/datasette \
-I$(viceSrcPath)/fsdevice \
-I$(viceSrcPath)/arch/shared \
-I$(viceSrcPath)/arch/shared/hotkeys \
-DSTDC_HEADERS=1 \
-DHAVE_SYS_TYPES_H=1 \
-DHAVE_SYS_STAT_H=1 \
Expand Down Expand Up @@ -105,7 +107,6 @@ gcr.c \
info.c \
init.c \
interrupt.c \
ioutil.c \
kbdbuf.c \
keyboard.c \
keymap.c \
Expand All @@ -115,15 +116,16 @@ machine.c \
network.c \
opencbmlib.c \
palette.c \
profiler.c \
ram.c \
rawfile.c \
rawnet.c \
resources.c \
romset.c \
sha1.c \
snapshot.c \
socket.c \
sound.c \
tick.c \
traps.c \
util.c \
vsync.c \
Expand Down Expand Up @@ -179,6 +181,7 @@ gamekiller.c \
gmod2.c \
gmod3.c \
gs.c \
hyperbasic.c \
ide64.c \
ieeeflash64.c \
isepic.c \
Expand Down Expand Up @@ -449,6 +452,7 @@ c64iec.c \
c64io.c \
c64keyboard.c \
c64meminit.c \
c64memlimit.c \
c64memrom.c \
c64printer.c \
c64pla.c \
Expand Down
91 changes: 53 additions & 38 deletions C64.emu/src/config/infocontrib.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,9 @@ const char info_contrib_text[] =
"\n"
" The VICE core team:\n"
"\n"
" Martin Pottendorfer <[email protected]>\n"
" Implemented the Gnome Port based on Oliver Schaertels GTK+\n"
" port. Added support code for internationalization based on\n"
" gettext. Improved the *nix fullscreen support. Added multi-\n"
" threaded GUI display for *nix. Translated the UI to German.\n"
" Implemented the fliplists + UI (*nix).\n"
" @b{Pottendo}\n"
" Fixed WiC64 support. Most of the former contributions (pre V3.x) have\n"
" been taken over and/or replaced by other's contributions.\n"
"\n"
" Marco van den Heuvel <[email protected]>\n"
" Translated the UI to Dutch. Made the internationalization\n"
Expand All @@ -56,7 +53,7 @@ const char info_contrib_text[] =
" Unixware, Minix 3.x, Amiga, Syllable and OS/2 binary ports.\n"
" Maintains the Win64 and Open Watcom project files. Maintains\n"
" the SDL port(s). Added new .crt support. Added new screenshot\n"
" formats. Added new sound recording support. Added SIDcart\n"
" formats. Added new sound recording support. Added SID cartridge\n"
" support for xpet, xplus4 and xvic. Improved the MMC64\n"
" emulation. Added 2 MHz mode and banks 2/3 support for x128.\n"
" Added the various userport joystick emulations. Added text copy\n"
Expand Down Expand Up @@ -92,7 +89,17 @@ const char info_contrib_text[] =
" work on AmigaOS, BeOS, DOS, SDL, *nix and windows with and\n"
" without device drivers. Added clockport system for mmc64,\n"
" mmcreplay, retroreplay and ide64. Added rrnet clockport device.\n"
" Added mp3@@64 clockport device. And lots of other fixes and\n"
" Added mp3@@64 clockport device. Added userport snes pad (petscii)\n"
" support. Extended the joyport system to be able to handle all snes\n"
" pad buttons. Extended the joyport system to be able to handle\n"
" 8-player joystick adapters. Added spaceballs joystick adapter\n"
" support. Added trapthem joyport snes pad adapter support. Added\n"
" superpad64 support. Added multijoy joystick adapter support.\n"
" Added inception joystick adapter support. Added protopad support.\n"
" Added autofire support. Added plus4 Synergy 3-port joystick\n"
" adapter support. Added userport I/O simulation device. Added\n"
" Microflyte analog joystick support. Added Stupid Pet Tricks\n"
" joystick adapter support. And lots of other fixes and\n"
" improvements.\n"
"\n"
" Fabrizio Gennari <[email protected]>\n"
Expand Down Expand Up @@ -123,10 +130,12 @@ const char info_contrib_text[] =
" Olaf Seibert <[email protected]>\n"
" Contributed some PET, including PET DWW hires, Xaw, lightpen,\n"
" hardware scaling, and disk drive patches. Added proper SuperPET\n"
" support, including 6809/6309 CPU emulation. Maintains the Xaw UI.\n"
" support, including 6809/6309 CPU emulation. Maintained the Xaw UI.\n"
" Added PET HRE (High Res Emulator) board emulation. Added the\n"
" 2-chip colour board for the Universal PET mainboard. Added\n"
" support for 'printer/plotter' Commodore 1520.\n"
" support for 'printer/plotter' Commodore 1520. Overhauled internals\n"
" of VIA and CIA code. Corrected pre-CRTC PET display timing.\n"
" REL-file support for the filesystem device and c1541.\n"
"\n"
" Marcus Sutton <[email protected]>\n"
" Made some console, dialog and joystick fixes for the BeOS port.\n"
Expand All @@ -152,11 +161,17 @@ const char info_contrib_text[] =
" leaks. Added more doxygen documentation. Fixed c1541 issues.\n"
" Updated the Linux-Native-Howto.txt file. Added autoconf, automake and\n"
" yasm version checking. Fixed runtime linker path issues with *BSD. Fixed\n"
" out-of-tree building. One of the driving forces behind the 'native' GTK3\n"
" port.\n"
" out-of-tree building. One of the driving forces behind the GTK3 port.\n"
"\n"
" Michael C. Martin <[email protected]>\n"
" One of the driving forces behind the 'native' GTK3 port.\n"
" One of the driving forces behind the GTK3 port.\n"
"\n"
" June Tate-Gans <[email protected]>\n"
" Made the dual window feature for the SDL2 UI.\n"
"\n"
" Pablo Roldan\n"
" Contributed improvements and fixes to the RS-232 emulation. Contributed\n"
" initial patch for VIC-II PAL-N model selection.\n"
"\n"
"\n"
" Former/inactive team members:\n"
Expand Down Expand Up @@ -292,7 +307,7 @@ const char info_contrib_text[] =
" Started the work on hardware-level 1541 emulation and wrote the\n"
" new monitor introduced with VICE 0.15.\n"
"\n"
" André Fachat <[email protected]>\n"
" @b{Andre Fachat}\n"
" Copyright (C) 1996-2001\n"
" Wrote the PET and CBM-II emulators, the CIA and VIA emulation,\n"
" the IEEE488 interface, implemented the IEC serial bus in `xvic'\n"
Expand Down Expand Up @@ -334,15 +349,15 @@ const char info_contrib_text[] =
" Copyright (C) 2009-2017\n"
" Provided the Danish user interface translations and fixed a few monitor bugs.\n"
"\n"
" Martin Pottendorfer <[email protected]>\n"
" @b{Pottendo}\n"
" Copyright (C) 2000-2017\n"
" Provided the German user interface translations.\n"
"\n"
" Manuel Antonio Rodriguez Bas <[email protected]>\n"
" Copyright (C) 2011-2017\n"
" Provided the Spanish user interface translations.\n"
"\n"
" Paul Dubé \n"
" @b{Paul Dube}\n"
" Copyright (C) 2004-2017\n"
" Provided the French user interface translations.\n"
"\n"
Expand Down Expand Up @@ -612,6 +627,7 @@ const char info_contrib_text[] =
" Roberto Muscedere <[email protected]>\n"
" Improved support for REL files in vdrive. Added Lt. Kernal Host Adaptor,\n"
" CMD HD, CMD RAMLINK, and CBM D9090/60 emulation. Added D90 support to vdrive.\n"
" Added joyport attached paperclip 64E, paperclip 64SC, and paperclip 2 dongle.\n"
"\n"
" Leandro Nini <[email protected]>\n"
" Improved ReSID emulation. And fixed some c64dtv cpu opcode issues.\n"
Expand Down Expand Up @@ -655,9 +671,6 @@ const char info_contrib_text[] =
" David Roden\n"
" Fixed various issues related to ffmpeg settings.\n"
"\n"
" Pablo Roldán <[email protected]>\n"
" Contributed initial patch for VIC-II PAL-N model selection.\n"
"\n"
" Mathias Roslund <[email protected]>\n"
" Provided the AmigaOS4 port.\n"
"\n"
Expand Down Expand Up @@ -808,22 +821,24 @@ const char info_contrib_text[] =
"\n";

vice_team_t core_team[] = {
{ "1999-2020", "Martin Pottendorfer", "Martin Pottendorfer <[email protected]>" },
{ "2005-2020", "Marco van den Heuvel", "Marco van den Heuvel <[email protected]>" },
{ "2007-2020", "Fabrizio Gennari", "Fabrizio Gennari <[email protected]>" },
{ "2009-2020", "Groepaz", "Groepaz <[email protected]>" },
{ "2009-2020", "Errol Smith", "Errol Smith <[email protected]>" },
{ "2009-2020", "Ingo Korb", "Ingo Korb <[email protected]>" },
{ "2010-2020", "Olaf Seibert", "Olaf Seibert <[email protected]>" },
{ "2011-2020", "Marcus Sutton", "Marcus Sutton <[email protected]>" },
{ "2011-2020", "Kajtar Zsolt", "Kajtar Zsolt <[email protected]>" },
{ "2016-2020", "AreaScout", "AreaScout <[email protected]>" },
{ "2016-2020", "Bas Wassink", "Bas Wassink <[email protected]>" },
{ "2017-2020", "Michael C. Martin", "Michael C. Martin <[email protected]>" },
{ "2018-2020", "Christopher Phillips", "Christopher Phillips <[email protected]>" },
{ "2019-2020", "David Hogan", "David Hogan <[email protected]>" },
{ "2020", "Empathic Qubit", "Empathic Qubit <[email protected]>" },
{ "2020", "Roberto Muscedere", "Roberto Muscedere <[email protected]>" },
{ "1999-2023", "Pottendo", "@b{Pottendo}" },
{ "2005-2023", "Marco van den Heuvel", "Marco van den Heuvel <[email protected]>" },
{ "2007-2023", "Fabrizio Gennari", "Fabrizio Gennari <[email protected]>" },
{ "2009-2023", "Groepaz", "Groepaz <[email protected]>" },
{ "2009-2023", "Errol Smith", "Errol Smith <[email protected]>" },
{ "2009-2023", "Ingo Korb", "Ingo Korb <[email protected]>" },
{ "2010-2023", "Olaf Seibert", "Olaf Seibert <[email protected]>" },
{ "2011-2023", "Marcus Sutton", "Marcus Sutton <[email protected]>" },
{ "2011-2023", "Kajtar Zsolt", "Kajtar Zsolt <[email protected]>" },
{ "2016-2023", "AreaScout", "AreaScout <[email protected]>" },
{ "2016-2023", "Bas Wassink", "Bas Wassink <[email protected]>" },
{ "2017-2023", "Michael C. Martin", "Michael C. Martin <[email protected]>" },
{ "2018-2023", "Christopher Phillips", "Christopher Phillips <[email protected]>" },
{ "2019-2023", "David Hogan", "David Hogan <[email protected]>" },
{ "2020-2023", "Empathic Qubit", "Empathic Qubit <[email protected]>" },
{ "2020-2023", "Roberto Muscedere", "Roberto Muscedere <[email protected]>" },
{ "2021-2023", "June Tate-Gans", "June Tate-Gans <[email protected]>" },
{ "2021-2023", "Pablo Roldan", "Pablo Roldan" },
{ NULL, NULL, NULL }
};

Expand All @@ -848,7 +863,7 @@ vice_team_t ex_team[] = {
{ "2000-2004", "Markus Brenner", "Markus Brenner <[email protected]>" },
{ "1999-2004", "Thomas Bretz", "Thomas Bretz <[email protected]>" },
{ "1997-2001", "Daniel Sladic", "Daniel Sladic <[email protected]>" },
{ "1996-2001", "André Fachat", "André Fachat <[email protected]>" },
{ "1996-2001", "Andre Fachat", "@b{Andre Fachat}" },
{ "1996-1999", "Ettore Perazzoli", "Ettore Perazzoli <[email protected]>" },
{ "1993-1994, 1997-1999", "Teemu Rantanen", "Teemu Rantanen <[email protected]>" },
{ "1993-1996", "Jouko Valta", "Jouko Valta <[email protected]>" },
Expand All @@ -867,9 +882,9 @@ char *doc_team[] = {

vice_trans_t trans_team[] = {
{ "2009-2017", "Mikkel Holm Olsen", "Danish", "Mikkel Holm Olsen <[email protected]>" },
{ "2000-2017", "Martin Pottendorfer", "German", "Martin Pottendorfer <[email protected]>" },
{ "2000-2017", "Pottendo", "German", "@b{Pottendo}" },
{ "2011-2017", "Manuel Antonio Rodriguez Bas", "Spanish", "Manuel Antonio Rodriguez Bas <[email protected]>" },
{ "2004-2017", "Paul Dubé", "French", "Paul Dubé " },
{ "2004-2017", "Paul Dube", "French", "@b{Paul Dube}" },
{ "2006-2017", "Czirkos Zoltan", "Hungarian", "Czirkos Zoltan <[email protected]>" },
{ "2006-2017", "Karai Csaba", "Hungarian", "Karai Csaba <[email protected]>" },
{ "2001-2017", "Andrea Musuruane", "Italian", "Andrea Musuruane <[email protected]>" },
Expand Down
6 changes: 3 additions & 3 deletions C64.emu/src/config/kbd.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@

#include "vice-config.h"

void kbd_arch_init(void);
static void kbd_arch_init(void) {}

#define KBD_PORT_PREFIX "gtk3"

VICE_API signed long kbd_arch_keyname_to_keynum(char *keyname);
const char *kbd_arch_keynum_to_keyname(signed long keynum);
void kbd_initialize_numpad_joykeys(int *joykeys);
static const char *kbd_arch_keynum_to_keyname(signed long keynum) { return ""; }
static void kbd_initialize_numpad_joykeys(int *joykeys) {}
6 changes: 3 additions & 3 deletions C64.emu/src/config/mousedrv.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,9 @@

#include "mouse.h"

extern int mousedrv_resources_init(mouse_func_t *funcs);
extern int mousedrv_cmdline_options_init(void);
extern void mousedrv_init(void);
static int mousedrv_resources_init(const mouse_func_t *funcs) { return 0; }
static int mousedrv_cmdline_options_init(void) { return 0; }
static void mousedrv_init(void) {}

extern void mousedrv_mouse_changed(void);

Expand Down
8 changes: 4 additions & 4 deletions C64.emu/src/config/ui.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

#include <stdbool.h>

int ui_pause_active();
void ui_pause_enable();
void ui_pause_disable();
bool ui_pause_loop_iteration(void);
static int ui_pause_active() { return 0; }
static void ui_pause_enable() {}
static void ui_pause_disable() {}
static bool ui_pause_loop_iteration(void) { return false; }
Loading

0 comments on commit d084582

Please sign in to comment.