[Scummvm-cvs-logs] CVS: scummvm/backends/PalmOS/Src palm.cpp,1.5,1.6
Chris Apers
chrilith at users.sourceforge.net
Mon May 12 05:16:10 CEST 2003
Update of /cvsroot/scummvm/scummvm/backends/PalmOS/Src
In directory sc8-pr-cvs1:/tmp/cvs-serv3887
Modified Files:
palm.cpp
Log Message:
Cleanup, add CTRL+q shortcut
Index: palm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/backends/PalmOS/Src/palm.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- palm.cpp 6 May 2003 08:19:51 -0000 1.5
+++ palm.cpp 12 May 2003 12:14:13 -0000 1.6
@@ -442,34 +442,34 @@
Boolean handled;
uint32 current_msecs;
UInt32 keyCurrentState = 0;
- Boolean funcButton = false;
- /* First, handle timers */
- for(;;) {
- EvtGetEvent(&ev, 0);
-
- keyCurrentState = KeyCurrentState();
- current_msecs = get_msecs();
+ current_msecs = get_msecs();
+ //thread handler
+ if (_thread.active)
+ _thread.proc(_thread.param);
+
+ // sound handler
+ if(_sound.active)
+ check_sound();
- //thread handler
- if (_thread.active)
- _thread.proc(_thread.param);
+ // timer handler
+ if (_timer.active && (current_msecs >= _timer.next_expiry)) {
+ _timer.duration = _timer.callback(_timer.duration);
+ _timer.next_expiry = current_msecs + _timer.duration;
+ }
- // sound handler
- if(_sound.active)
- check_sound();
-
- // timer handler
- if (_timer.active && (current_msecs >= _timer.next_expiry)) {
- _timer.duration = _timer.callback(_timer.duration);
- _timer.next_expiry = current_msecs + _timer.duration;
- }
+ for(;;) {
+ EvtGetEvent(&ev, evtNoWait);
+
+ if (ev.eType == nilEvent)
+ return false;
+
+ keyCurrentState = KeyCurrentState();
if (ev.eType == keyDownEvent) {
switch (ev.data.keyDown.chr) {
case vchrLaunch:
lastKeyPressed = -1;
- funcButton = true;
event->event_code = EVENT_KEYDOWN;
event->kbd.keycode = 27;
event->kbd.ascii = 27;
@@ -478,7 +478,6 @@
case vchrMenu:
lastKeyPressed = -1;
- funcButton = true;
event->event_code = EVENT_KEYDOWN;
event->kbd.keycode = 319;
event->kbd.ascii = 319;
@@ -497,7 +496,6 @@
quit();
_exit_delay = get_msecs();
- funcButton = true;
lastKeyPressed = vchrCalc;
return true;
@@ -566,7 +564,7 @@
(ev.data.keyDown.chr == vchrAttnUnsnooze)));
// graffiti strokes, autooff, etc...
- if (!funcButton && !handled)
+ if (!handled)
if (SysHandleEvent(&ev))
continue;
@@ -578,18 +576,22 @@
lastKeyPressed = -1;
//if (ev.data.keyDown.modifiers & shiftKeyMask) b |= KBD_SHIFT;
- if (ev.data.keyDown.chr == 262 && (ev.data.keyDown.modifiers & commandKeyMask)) {
+ if (ev.data.keyDown.chr == vchrCommand && (ev.data.keyDown.modifiers & commandKeyMask)) {
lastKeyModifier++;
lastKeyModifier %= 3;
drawKeyState();
+
} else {
byte b = 0;
if (lastKeyModifier == MD_CTRL) b = KBD_CTRL;
if (lastKeyModifier == MD_ALT) b = KBD_ALT;
+
+ if (ev.data.keyDown.chr == 'q' && b == KBD_CTRL)
+ quit();
event->event_code = EVENT_KEYDOWN;
event->kbd.keycode = ev.data.keyDown.chr;
- event->kbd.ascii = (ev.data.keyDown.chr>='a' && ev.data.keyDown.chr<='z' && (event->kbd.flags & KBD_SHIFT)?ev.data.keyDown.chr &~ 0x20 : ev.data.keyDown.chr);
+ event->kbd.ascii = (ev.data.keyDown.chr>='a' && ev.data.keyDown.chr<='z' && (event->kbd.flags & KBD_SHIFT) ? ev.data.keyDown.chr &~ 0x20 : ev.data.keyDown.chr);
event->kbd.flags = b;
lastKeyModifier = MD_NONE;
drawKeyState();
@@ -889,6 +891,9 @@
void OSystem_PALMOS::check_sound() {
// currently not supported
+ // but i need to use this function to prevent out of memory
+ // on zak256 because the sound buffer growns and it's never
+ // freed.
_sound.proc(_sound.param, _sndTempP, 256);
}
More information about the Scummvm-git-logs
mailing list