Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package schismtracker for openSUSE:Factory checked in at 2022-12-02 13:13:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/schismtracker (Old) and /work/SRC/openSUSE:Factory/.schismtracker.new.1835 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "schismtracker" Fri Dec 2 13:13:13 2022 rev:24 rq:1039388 version:20221201 Changes: -------- --- /work/SRC/openSUSE:Factory/schismtracker/schismtracker.changes 2022-10-21 16:19:36.498179734 +0200 +++ /work/SRC/openSUSE:Factory/.schismtracker.new.1835/schismtracker.changes 2022-12-02 13:13:28.217961755 +0100 @@ -1,0 +2,7 @@ +Thu Dec 1 20:10:17 UTC 2022 - Jan Engelhardt <[email protected]> + +- Update to release 20221201 + * Fix issues when reverting to a previous video (mode) + interpolation setting + +------------------------------------------------------------------- Old: ---- 20221020.tar.gz New: ---- 20221201.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ schismtracker.spec ++++++ --- /var/tmp/diff_new_pack.5PHkDJ/_old 2022-12-02 13:13:28.861965296 +0100 +++ /var/tmp/diff_new_pack.5PHkDJ/_new 2022-12-02 13:13:28.869965340 +0100 @@ -17,7 +17,7 @@ Name: schismtracker -Version: 20221020 +Version: 20221201 Release: 0 Summary: Music editor that matches the look and feel of Impulse Tracker License: GPL-2.0-or-later ++++++ 20221020.tar.gz -> 20221201.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/schismtracker-20221020/.github/workflows/build.yml new/schismtracker-20221201/.github/workflows/build.yml --- old/schismtracker-20221020/.github/workflows/build.yml 2022-10-20 17:51:29.000000000 +0200 +++ new/schismtracker-20221201/.github/workflows/build.yml 2022-12-01 17:04:39.000000000 +0100 @@ -27,7 +27,7 @@ shell: bash - name: 'Checkout' - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: fetch-depth: 0 @@ -65,7 +65,7 @@ - name: 'Upload artifact (win32)' if: matrix.win == 'win32' - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: schismtracker-${{ steps.date.outputs.date }}-${{ matrix.win }} path: | @@ -79,7 +79,7 @@ - name: 'Upload artifact (win64)' if: matrix.win == 'win64' - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: schismtracker-${{ steps.date.outputs.date }}-${{ matrix.win }} path: | @@ -90,7 +90,7 @@ configuration.md build-macos: - runs-on: macos-latest + runs-on: macos-11 env: MACOSX_DEPLOYMENT_TARGET: 10.9 @@ -129,11 +129,11 @@ - name: 'Download SDL2 sources' run: | - curl https://www.libsdl.org/release/SDL2-2.0.22.tar.gz | tar xvf - + curl https://www.libsdl.org/release/SDL2-2.24.2.tar.gz | tar xvf - - name: 'Build SDL2' run: | - cd SDL2-2.0.22 + cd SDL2-2.24.2 ./configure CC="sh ../scripts/build-uni.sh" make sudo make install @@ -168,7 +168,7 @@ zip -r schismtracker.zip configuration.md COPYING README.md Schism\ Tracker.app - name: 'Upload artifact' - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: schismtracker-${{ steps.date.outputs.date }}-macos path: schismtracker.zip @@ -183,7 +183,7 @@ sudo apt-get install --fix-missing build-essential automake autoconf autoconf-archive libx11-dev libxext-dev libxv-dev libxxf86vm-dev libsdl2-dev libasound2-dev git libtool zip - name: 'Checkout' - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: 'Get current date' id: date @@ -198,7 +198,7 @@ tar --exclude=schismtracker-${{ steps.date.outputs.date }}.source.tar.gz --exclude-vcs -zcvf schismtracker-${{ steps.date.outputs.date }}.source.tar.gz * - name: 'Upload source tarball' - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: schismtracker-${{ steps.date.outputs.date }}.source path: schismtracker-${{ steps.date.outputs.date }}.source.tar.gz @@ -217,7 +217,7 @@ zip schismtracker.zip configuration.md COPYING README.md schismtracker.1 schismtracker - name: 'Upload artifact' - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: schismtracker-${{ steps.date.outputs.date }}-linux path: schismtracker.zip diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/schismtracker-20221020/configure.ac new/schismtracker-20221201/configure.ac --- old/schismtracker-20221020/configure.ac 2022-10-20 17:51:29.000000000 +0200 +++ new/schismtracker-20221201/configure.ac 2022-12-01 17:04:39.000000000 +0100 @@ -66,9 +66,7 @@ if test "x$SDL_CONFIG" == "x"; then AC_MSG_ERROR([*** sdl2-config not found.]) fi -if $SDL_CONFIG --version | grep -qE "^2\.0\.[0-9]+|[5-9]"; then - AC_MSG_ERROR([*** SDL version >= 2.0.5 not found.]) -fi +AS_VERSION_COMPARE([$($SDL_CONFIG --version)], [2.0.5], [AC_MSG_ERROR([*** SDL version >= 2.0.5 not found.])]) SDL_CFLAGS=$($SDL_CONFIG --cflags) SDL_LIBS=$($SDL_CONFIG --libs) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/schismtracker-20221020/schism/config.c new/schismtracker-20221201/schism/config.c --- old/schismtracker-20221020/schism/config.c 2022-10-20 17:51:29.000000000 +0200 +++ new/schismtracker-20221201/schism/config.c 2022-12-01 17:04:39.000000000 +0100 @@ -133,7 +133,7 @@ /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ - cfg_get_string(&cfg, "Video", "interpolation", cfg_video_interpolation, 64, ""); + cfg_get_string(&cfg, "Video", "interpolation", cfg_video_interpolation, 7, "nearest"); cfg_video_width = cfg_get_number(&cfg, "Video", "width", 640); cfg_video_height = cfg_get_number(&cfg, "Video", "height", 400); cfg_video_fullscreen = !!cfg_get_number(&cfg, "Video", "fullscreen", 0); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/schismtracker-20221020/schism/main.c new/schismtracker-20221201/schism/main.c --- old/schismtracker-20221020/schism/main.c 2022-10-20 17:51:29.000000000 +0200 +++ new/schismtracker-20221201/schism/main.c 2022-12-01 17:04:39.000000000 +0100 @@ -1064,7 +1064,11 @@ extern void vis_init(void); +#ifdef MACOSX +int SDL_main(int argc, char** argv) +#else int main(int argc, char **argv) +#endif { if (! SDL_VERSION_ATLEAST(2,0,5)) { SDL_Log("SDL_VERSION %i.%i.%i less than required!", SDL_MAJOR_VERSION, SDL_MINOR_VERSION, SDL_PATCHLEVEL); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/schismtracker-20221020/schism/page_config.c new/schismtracker-20221201/schism/page_config.c --- old/schismtracker-20221020/schism/page_config.c 2022-10-20 17:51:29.000000000 +0200 +++ new/schismtracker-20221201/schism/page_config.c 2022-12-01 17:04:39.000000000 +0100 @@ -103,8 +103,7 @@ } static int countdown = 10; static time_t started = 0; - -static const char *video_revert_driver = NULL; +static char video_revert_interpolation[8] = {'\0'}; static int video_revert_fs = 0; static void video_mode_keep(UNUSED void*ign) @@ -115,11 +114,12 @@ } static void video_mode_cancel(UNUSED void*ign) { - if (video_revert_driver) { - video_setup(video_revert_driver); - video_startup(); + if (video_revert_interpolation[0]) { + video_setup(video_revert_interpolation); + video_redraw_texture(); } - video_fullscreen(video_revert_fs); + if (video_is_fullscreen() != video_revert_fs) + video_fullscreen(-1); palette_apply(); font_init(); config_set_page(); @@ -157,7 +157,7 @@ { struct dialog *d; - video_revert_driver = video_driver_name(); + strncpy(video_revert_interpolation, SDL_GetHint(SDL_HINT_RENDER_SCALE_QUALITY), 7); video_revert_fs = video_is_fullscreen(); countdown = 10; @@ -178,35 +178,27 @@ static void change_video_settings(void) { - const char *new_video_driver; + const char *new_video_interpolation; int new_fs_flag; - if (widgets_config[11].d.togglebutton.state) { - new_video_driver = "nearest"; - } else if (widgets_config[12].d.togglebutton.state) { - new_video_driver = "linear"; - } else if (widgets_config[13].d.togglebutton.state) { - new_video_driver = "best"; - } else { - new_video_driver = "linear"; - } + new_video_interpolation = widgets_config[11].d.togglebutton.state ? "nearest" : + widgets_config[12].d.togglebutton.state ? "linear" : + widgets_config[13].d.togglebutton.state ? "best" : + "nearest"; - if (widgets_config[9].d.togglebutton.state) { - new_fs_flag = 1; - } else { - new_fs_flag = 0; - } - if (!SDL_strcasecmp(new_video_driver, SDL_GetHint(SDL_HINT_RENDER_SCALE_QUALITY)) + new_fs_flag = widgets_config[9].d.togglebutton.state; + + if (!SDL_strcasecmp(new_video_interpolation, SDL_GetHint(SDL_HINT_RENDER_SCALE_QUALITY)) && new_fs_flag == video_is_fullscreen()) { return; } video_change_dialog(); - if (SDL_strcasecmp(new_video_driver, SDL_GetHint(SDL_HINT_RENDER_SCALE_QUALITY))) { - video_setup(new_video_driver); + if (SDL_strcasecmp(new_video_interpolation, SDL_GetHint(SDL_HINT_RENDER_SCALE_QUALITY))) { + video_setup(new_video_interpolation); + video_redraw_texture(); } - video_redraw_texture(); if (new_fs_flag != video_is_fullscreen()) toggle_display_fullscreen(); palette_apply(); @@ -245,8 +237,6 @@ } static void config_set_page(void) { - const char *nn; - widgets_config[0].d.thumbbar.value = audio_settings.channel_limit; widgets_config[1].d.numentry.value = audio_settings.sample_rate; widgets_config[2].d.menutoggle.state = !!(audio_settings.bits == 16); @@ -298,7 +288,7 @@ 2,4,3,3,4, change_mixer_limits, output_channels); - //// + //// create_menutoggle(widgets_config+4, 18, 20, 3,5,4,4,5, @@ -318,13 +308,13 @@ 6,8,7,7,8, change_ui_settings, time_displays); - //// + //// create_menutoggle(widgets_config+8, 18, 25, 7,11,8,8,11, change_ui_settings, midi_modes); - //// + //// create_togglebutton(widgets_config+9, 44, 30, 5, 8,9,11,10,10, @@ -337,7 +327,7 @@ change_video_settings, "No", 2, video_fs_group); - //// + //// create_togglebutton(widgets_config+11, 6, 30, 26, 8,12,11,9,12, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/schismtracker-20221020/schism/video.c new/schismtracker-20221201/schism/video.c --- old/schismtracker-20221020/schism/video.c 2022-10-20 17:51:29.000000000 +0200 +++ new/schismtracker-20221201/schism/video.c 2022-12-01 17:04:39.000000000 +0100 @@ -111,7 +111,6 @@ unsigned int height; int x; int y; - int width_height_defined; struct { unsigned int width; @@ -249,17 +248,14 @@ vgamem_clear(); vgamem_flip(); - if (!SDL_GetHint(SDL_HINT_RENDER_SCALE_QUALITY)) - SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, cfg_video_interpolation); + video_setup(cfg_video_interpolation); SDL_SetHint(SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR, "0"); - if (!video.width_height_defined) { - video.x = SDL_WINDOWPOS_UNDEFINED; - video.y = SDL_WINDOWPOS_UNDEFINED; - video.fullscreen.width = video.prev.width = video.width = cfg_video_width; - video.fullscreen.height = video.prev.height = video.height = cfg_video_height; - } + video.x = SDL_WINDOWPOS_CENTERED; + video.y = SDL_WINDOWPOS_CENTERED; + video.fullscreen.width = video.prev.width = video.width = cfg_video_width; + video.fullscreen.height = video.prev.height = video.height = cfg_video_height; SDL_CreateWindowAndRenderer(video.width, video.height, SDL_WINDOW_RESIZABLE, &video.window, &video.renderer); video_resize(video.width, video.height); @@ -273,7 +269,6 @@ /* okay, i think we're ready */ SDL_ShowCursor(SDL_DISABLE); set_icon(); - video.width_height_defined = 1; } void video_resize(unsigned int width, unsigned int height) @@ -344,31 +339,25 @@ static inline void make_mouseline(unsigned int x, unsigned int v, unsigned int y, unsigned int mouseline[80]) { - int y_int = (video.mouse.y >= 5368708) ? 0 : - (video.mouse.y >= 400) ? 399 : (int)video.mouse.y; unsigned int z; memset(mouseline, 0, 80*sizeof(unsigned int)); if (video.mouse.visible != MOUSE_EMULATED || !(status.flags & IS_FOCUSED) - || y < y_int - || y >= y_int+MOUSE_HEIGHT) { + || y < video.mouse.y + || y >= video.mouse.y+MOUSE_HEIGHT) { return; } - z = _mouse_pointer[ y - y_int ]; + z = _mouse_pointer[ y - video.mouse.y ]; mouseline[x] = z >> v; if (x < 79) mouseline[x+1] = (z << (8-v)) & 0xff; } static void _blit11(unsigned char *pixels, unsigned int pitch, unsigned int *tpal) { - /* emulates how SDL 1.2 handled it :p */ - /* effectively handles underflows/overflows */ - unsigned int mouseline_x = (video.mouse.x >= 3355443) ? 0 : - (video.mouse.x >= 640) ? 79 : (video.mouse.x / 8); - unsigned int mouseline_v = (video.mouse.x >= 3355443) ? 0 : - (video.mouse.x >= 640) ? 7 : (video.mouse.x % 8); + unsigned int mouseline_x = (video.mouse.x / 8); + unsigned int mouseline_v = (video.mouse.x % 8); unsigned int mouseline[80]; unsigned char *pdata; unsigned int x, y; @@ -450,13 +439,8 @@ vx /= (video.width - (video.width - video.prev.width)); vy /= (video.height - (video.height - video.prev.height)); - video.mouse.x = vx; - video.mouse.y = vy; - if (x) - *x = vx; - - if (y) - *y = vy; + *x = (vx < 640) ? (video.mouse.x = vx) : video.mouse.x; + *y = (vy < 640) ? (video.mouse.y = vy) : video.mouse.y; } SDL_Window * video_window(void) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/schismtracker-20221020/scripts/build-uni.sh new/schismtracker-20221201/scripts/build-uni.sh --- old/schismtracker-20221020/scripts/build-uni.sh 2022-10-20 17:51:29.000000000 +0200 +++ new/schismtracker-20221201/scripts/build-uni.sh 2022-12-01 17:04:39.000000000 +0100 @@ -6,13 +6,13 @@ DEVELOPER="`xcode-select -print-path`/Platforms/MacOSX.platform/Developer" -# Intel 64-bit compiler flags (10.6 runtime compatibility) -CLANG_COMPILE_X64="clang -arch x86_64 -mmacosx-version-min=10.6 \ --DMAC_OS_X_VERSION_MIN_REQUIRED=1060 \ +# Intel 64-bit compiler flags (10.7 runtime compatibility) +CLANG_COMPILE_X64="clang -arch x86_64 -mmacosx-version-min=10.7 \ +-DMAC_OS_X_VERSION_MIN_REQUIRED=1070 \ -I/usr/local/include \ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.9.sdk" -CLANG_LINK_X64="-mmacosx-version-min=10.6" +CLANG_LINK_X64="-mmacosx-version-min=10.7" # ARM 64-bit compiler flags (11.0 runtime compatibility) CLANG_COMPILE_ARM64="clang -arch arm64 -mmacosx-version-min=11.0 \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/schismtracker-20221020/sys/macosx/macosx-sdlmain.m new/schismtracker-20221201/sys/macosx/macosx-sdlmain.m --- old/schismtracker-20221020/sys/macosx/macosx-sdlmain.m 2022-10-20 17:51:29.000000000 +0200 +++ new/schismtracker-20221201/sys/macosx/macosx-sdlmain.m 2022-12-01 17:04:39.000000000 +0100 @@ -73,14 +73,14 @@ #define KEQ_FN(n) [NSString stringWithFormat:@"%C", NSF##n##FunctionKey] -@interface SDLApplication : NSApplication +@interface SDL_SchismTracker : NSApplication @end @interface NSApplication(OtherMacOSXExtensions) -(void)setAppleMenu:(NSMenu*)m; @end -@implementation SDLApplication +@implementation SDL_SchismTracker /* Invoked from the Quit menu item */ - (void)terminate:(id)sender { @@ -410,7 +410,7 @@ CPSProcessSerNum PSN; /* Ensure the application object is initialised */ - [SDLApplication sharedApplication]; + [SDL_SchismTracker sharedApplication]; /* Tell the dock about us */ if (!CPSGetCurrentProcess(&PSN)) { @@ -419,7 +419,7 @@ } if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) if (!CPSSetFrontProcess(&PSN)) - [SDLApplication sharedApplication]; + [SDL_SchismTracker sharedApplication]; } /* Set up the menubar */ @@ -447,7 +447,7 @@ [self setupWorkingDirectory:gFinderLaunch]; /* Hand off to main application code */ - status = SDL_Init (gArgv); + status = SDL_main (gArgc, gArgv); /* We're done, thank you for playing */ exit(status); @@ -502,8 +502,7 @@ /* Main entry point to executable - should *not* be SDL_main! */ -/* JK LOL... SDL2 */ -int SDL_main (int argc, char **argv) +int main (int argc, char **argv) { /* Copy the arguments into a global variable */ /* This is passed if we are launched by double-clicking */ @@ -547,6 +546,23 @@ [pb declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:nil]; [pb setString:contents forType:NSStringPboardType]; } +// ktt appears to be 1/60th of a second? +unsigned int key_repeat_rate(void) +{ + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + int ktt = [defaults integerForKey:@"KeyRepeat"]; + if (!ktt || ktt < 0) ktt = 4; // eh? + ktt = (ktt * 1000) / 60; + return (unsigned)ktt; +} +unsigned int key_repeat_delay(void) +{ + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + int ktt = [defaults integerForKey:@"InitialKeyRepeat"]; + if (!ktt || ktt < 0) ktt = 35; + ktt = (ktt * 1000) / 60; + return (unsigned)ktt; +} int key_scancode_lookup(int k, int def) { switch (k & 127) {
