1 ! Copyright (C) 2005, 2006 Doug Coleman.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: alien errors io kernel math namespaces parser prettyprint words ;
6 ! You must LocalFree the return value!
7 FUNCTION: void* error_message ( DWORD id ) ;
10 GetLastError dup zero? [
19 : win32-error=0 zero? [ win32-error ] when ;
20 : win32-error>0 0 > [ win32-error ] when ;
21 : win32-error<0 0 < [ win32-error ] when ;
22 : win32-error<>0 zero? [ win32-error ] unless ;
24 : lo-word ( wparam -- lo ) HEX: ffff bitand ;
25 : hi-word ( wparam -- hi ) -16 shift ;
28 f swap "DebugMsg" MB_OK MessageBox drop ;