Mercurial > repos > rhope
comparison runtime/func.h @ 140:c14698c512f1
Untested addition of Pause/Resume
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 20 Nov 2010 20:03:25 +0000 |
parents | 5eedee9063dc |
children | f2cb85c53ced |
comparison
equal
deleted
inserted
replaced
139:a68e6828d896 | 140:c14698c512f1 |
---|---|
20 #define DispatchEntry(name) case FUNC_##name: goto f_##name; | 20 #define DispatchEntry(name) case FUNC_##name: goto f_##name; |
21 #define ResumeEntry(num,name) case RES_##num##_##name: goto r##num##_##name; | 21 #define ResumeEntry(num,name) case RES_##num##_##name: goto r##num##_##name; |
22 #define DispatchVar | 22 #define DispatchVar |
23 #define DISPATCH switch(func) { DispatchEntries } | 23 #define DISPATCH switch(func) { DispatchEntries } |
24 #define EndEntry case END: goto DO_END; | 24 #define EndEntry case END: goto DO_END; |
25 #define EndThreadEntry case END_THREAD: goto DO_END_THREAD; | |
25 #else | 26 #else |
26 #define DispatchEntry(name) &&f_##name, | 27 #define DispatchEntry(name) &&f_##name, |
27 #define ResumeEntry(num,name) &&r##num##_##name, | 28 #define ResumeEntry(num,name) &&r##num##_##name, |
28 #define DispatchVar void * funcs[] = { DispatchEntries }; | 29 #define DispatchVar void * funcs[] = { DispatchEntries }; |
29 #define DISPATCH goto *funcs[func]; | 30 #define DISPATCH goto *funcs[func]; |
30 #define EndEntry &&DO_END | 31 #define EndEntry &&DO_END |
32 #define EndThreadEntry &&DO_END_THREAD; | |
31 #endif | 33 #endif |
32 | 34 |
33 | 35 |
34 #define MethodName(name,type) f_ ## name ## AT_ ## type | 36 #define MethodName(name,type) f_ ## name ## AT_ ## type |
35 | 37 |