From ce5be92225c092896587b4c47634d6940238491c Mon Sep 17 00:00:00 2001 From: drmortalwombat <90205530+drmortalwombat@users.noreply.github.com> Date: Mon, 12 Feb 2024 17:40:03 +0100 Subject: [PATCH] Fix linux build --- include/c64/sprites.c | 29 +++++++++++--- oscar64/oscar64.cpp | 4 ++ samples/scrolling/colorram.c | 74 ++++++++++++++++++------------------ 3 files changed, 66 insertions(+), 41 deletions(-) diff --git a/include/c64/sprites.c b/include/c64/sprites.c index 5229251..86cc654 100644 --- a/include/c64/sprites.c +++ b/include/c64/sprites.c @@ -143,7 +143,11 @@ void vspr_init(char * screen) for(int i=0; i> 1; - vic.spr_pos[ui].x = vspriteXLow[ri]; - vic.spr_pos[ui].y = vspriteYLow[ri]; +#endif + vic.spr_pos[uj].x = vspriteXLow[ri]; + vic.spr_pos[uj].y = vspriteYLow[ri]; + sypos[ui] = vspriteYLow[ri]; } @@ -276,7 +291,11 @@ void vspr_update(void) byte ri = spriteOrder[ti + 8]; if (!done && vspriteYLow[ri] < 250) { +#ifdef VSPRITE_REVERSE + char m = 0x80 >> (ti & 7); +#else char m = 1 << (ti & 7); +#endif xymask |= m; if (!(vspriteXHigh[ri] & 1)) diff --git a/oscar64/oscar64.cpp b/oscar64/oscar64.cpp index aff11fe..e02fa95 100644 --- a/oscar64/oscar64.cpp +++ b/oscar64/oscar64.cpp @@ -471,7 +471,11 @@ int main2(int argc, const char** argv) char dstring[100], tstring[100]; time_t now = time(NULL); struct tm t; +#ifdef _WIN32 localtime_s(&t, &now); +#else + localtime_r(&now, &t); +#endif strftime(dstring, sizeof(tstring) - 1, "\"%b %d %Y\"", &t); strftime(tstring, sizeof(dstring) - 1, "\"%H:%M:%S\"", &t); diff --git a/samples/scrolling/colorram.c b/samples/scrolling/colorram.c index 3f630c1..825dcb8 100644 --- a/samples/scrolling/colorram.c +++ b/samples/scrolling/colorram.c @@ -23,19 +23,20 @@ void scrollLeft0(void) { for(char x=0; x<39; x++) { -#assign y 0 -#repeat - sline(0, y)[x] = sline(1, y)[x]; - cline(0, y)[x] = cline(1, y)[x]; -#assign y y + 1 -#until y == SPLIT1 + #pragma unroll(full) + for(char y=0; y