Go to bottom

GoatTracker slow on OS X

category: general [glöplog]
Anyone have any idea why the new versions of GoatTracker on OS X are so slow?
I've built the latest one from source, and it's very slow.
It's using very little CPU, but it's only refreshing the main screen a couple of times per second.
This makes doing anything, even scrolling, horrible!
The old 1.4 version for Mac by Andreas Varga (of SIDPlay fame) is quite fast and usable.
added on the 2008-11-28 17:05:17 by johnl johnl
Spent an hour getting it to compile, and then it was terribly slow, then spent an hour getting it to generate profile data, which didn't include any timing data due to multi-threading and short-sighted kernel developers, then spent an hour trying to wrap the code in a program to overwrite the thread-creation code to auto-include the timer from above, then just said fuck it.
I wanted to make a song, but I wasted the whole afternoon trying to get the tools to work.
added on the 2008-11-28 18:06:36 by johnl johnl
I have a problem.
added on the 2008-11-28 22:13:55 by gloom gloom
Couldn't fix it.
added on the 2008-11-28 22:14:05 by gloom gloom
Thanks for that.
added on the 2008-11-30 18:42:46 by johnl johnl
very nice apple :)
added on the 2008-11-30 18:44:01 by 24 24
isnt this the same problem hitchhikr had with protrekkr? (my memory is hazy considering this but it was some updaterect-style overload?)
added on the 2008-11-30 19:20:38 by Gargaj Gargaj
ah no i mean grafx2:
Ok, here's the deal: under macosx SDL_UpdateRect() automatically waits for vblank so calling it for each pixels drawn isn't a good idea at all. What i did is to remove all those updates calls for macosx and just use one in Get_Input().

It was either that or having a huge array to gather all dirty rects and updating them all in one go. I made some tests and it seems to work perfectly now in both window & fullscreen modes, so maybe it would be good idea to modify that update code for other platforms as well ?
added on the 2008-11-30 19:22:44 by Gargaj Gargaj
calling anything for each pixel drawn isn't a good idea :)
[...] so calling it for each pixels drawn isn't a good idea at all.
added on the 2008-11-30 20:01:52 by blala blala
I've gone through the code, and sure enough, that was the problem.
I have now fixed it.
Is anyone interested in a copy of it?
Should I submit a fix back to Covert Bit Ops?

At last I have a PPC build of the latest version...
added on the 2008-12-01 18:01:02 by johnl johnl
By the way, thank you guys!
added on the 2008-12-01 18:37:02 by johnl johnl
No time for such stuff lately, but one day I'm sure to want to learn it so definitely either put it up on the net somewhere or pass the fix back to them :)
added on the 2008-12-01 18:47:57 by psonice psonice
Submit it back to them, sure
the oldfashioned act of contacting the autor of the software in question just doesn't do it anymore these days -____ä
added on the 2008-12-02 11:07:55 by dalezr dalezr
Ah it's nice to see some lovely banter and people helping each other and resolving stuff here. <3
added on the 2008-12-02 11:09:26 by apricot apricot
i'm almost glad my crappy code for grafx2 actually helped someone fix something else :p

well... back on fixing other bugs now :)
Your code ? Where ?
added on the 2008-12-02 14:28:13 by hitchhikr hitchhikr
I added all these updaterects() to grafx2, it was working fine without them under msdos... anyway, next time i'll use double buffering :)
We're talking about the bug i fixed with the delayed sdl_updaterect() which made the tool to crawl like a snake under macosx.
added on the 2008-12-02 20:50:51 by hitchhikr hitchhikr
yes, thanks for fixing it :)
I should not have created that bug in the first place...
please share your fixed version of goattracker

added on the 2008-12-02 23:55:57 by Prot-DHS Prot-DHS
For what it's worth, Andreas's latest version for OS X is really great!


It includes the latest version of GoatTracker, is nice and fast again, and now supports MIDI input!
added on the 2009-09-18 01:16:55 by johnl johnl
I'm trying to find a way to insert a row in the pattern editor. The help clearly says INS and no other key can do that. WTF...
added on the 2009-09-19 00:12:42 by svo svo
INS works fine under Windows and Linux at least.
added on the 2009-09-19 08:27:50 by Radiant Radiant
well the essence of the joke is that it's the osx version and macs don't have ins keys, especially laptops :) i know i can plug in a usb keyboard, but it's not interesting.
added on the 2009-09-19 12:26:37 by svo svo


Go to top