Commit Graph

175 Commits

Author SHA1 Message Date
c1d7f71a02 make window freeing more manual 2025-06-26 11:02:14 +02:00
a94e2d147b fix: memory leak on exit 2025-06-26 10:55:02 +02:00
d7989c5918 fix: wasn't initialising the window properly 2025-06-26 10:54:52 +02:00
937ecedfe3 implement new code, and remove deprecated old code. Overal optimisation.
this code is currently broken, but this'll be fixed in a subsequent
commit
2025-06-25 16:58:58 +02:00
a202442853 write some TODO comments 2025-06-25 15:44:17 +02:00
94cfbdcaad write code for a timing 2025-06-25 15:41:58 +02:00
a7d5f1bb2a write code for input handling 2025-06-25 15:41:49 +02:00
046f7affaf write code for window handling 2025-06-25 15:41:44 +02:00
fc2924d128 add a type definition for SMID-style vectors 2025-06-25 15:40:52 +02:00
9fbc9e0f9a use common integer type in shapes.c/shapes.h, for decreasing namespace pollution 2025-06-25 15:40:52 +02:00
a50b39307a define type definitions for common integer types 2025-06-25 15:40:52 +02:00
6a1b4104cf rework audio handling, since it was flawed 2025-06-25 15:40:52 +02:00
b446a43738 use tabs over spaces 2025-06-25 15:40:52 +02:00
3b306288e9 rename "renderer" to "render" 2025-06-25 15:40:52 +02:00
7c20704990 rename window io 2025-06-25 15:39:23 +02:00
bf62a60710 remove broke option code 2025-06-18 15:43:38 +02:00
18243a23eb clean up code 2025-06-18 15:43:38 +02:00
8449c58ab5 rewrite string accumilation to use a dynamic array instead of many reallocations 2025-04-29 21:53:33 +02:00
d925462c4d add some default options for testing 2025-04-23 16:54:06 +02:00
37d3a8e77f improve error handling 2025-04-23 16:53:49 +02:00
df249f1c35 fix: checking incorrect memory adresses
also updated assertions and remove some in place of attributes
2025-04-23 16:53:15 +02:00
9f6f20f36c fix: invalid memory access due to dereferencing after indexing 2025-04-23 16:53:15 +02:00
f64db135a9 use loaded options for selecting the colour 2025-04-23 16:53:15 +02:00
7ed37afdc5 add some options and loading logic 2025-04-23 16:53:15 +02:00
aee02e3293 fix path initialization
prefixed a `/` character for those I forgot.
And gave `opts` the `cfg` extension, so windows can handle it more
easliy
2025-04-23 16:46:57 +02:00
7c32e884f1 fix: inverting compat access returns; not the expected return value 2025-04-23 16:45:59 +02:00
0fd2a88e0f add path initialization to main 2025-04-23 16:45:59 +02:00
e723dd63ff fix: when working with a partial buffer, returned pointers become invalid 2025-04-23 16:45:59 +02:00
c3406ca031 add some notes 2025-04-23 16:45:59 +02:00
9f97d6b9fc ref: moved buffer processing into it's own function. 2025-04-23 16:45:59 +02:00
a7de449b9d fix: parsing fails for long comment lines
if the data was completed before the line did, and the line is longer
than the buffer. The rest of the line would be interperted as additional
data.
2025-04-23 16:45:59 +02:00
cd8e0ec68e fix: extra loops when val is found
when `val` was found, we continue looping, which is actually bad, since
the count will continue increasing, thus causing errors.
2025-04-23 16:45:59 +02:00
cf64cb078e add option parsing code 2025-04-23 16:45:59 +02:00
45e5ec9764 begin adding options
added the basic framework of how options are loaded.
2025-04-23 16:45:59 +02:00
45d4f91bd9 write code to improve handling of paths, to be more consistent.
I don't think I want to place the local data paths there...
2025-04-23 16:45:59 +02:00
2ef2586112 add more nuanced platform flags to faccess 2025-04-19 18:14:48 +02:00
c01ce06307 add macros for writing inline platform-specific expressions 2025-04-19 18:14:48 +02:00
abbb43ab50 expand compatibility header to include path seperators 2025-04-19 18:11:29 +02:00
e1915429ca move pkg-config usage to be inside architecture definitions 2025-04-18 21:23:24 +02:00
76762dcc8e rename ARCH options to x86, rather than x86_64, since that's more accurate now 2025-04-18 21:23:24 +02:00
6583a9f5e0 fix: include -fuse-ld for windows to handle dll's properly 2025-04-18 21:23:24 +02:00
1b36a53b24 fix: remove duplicate architecture argument setting 2025-04-18 21:23:24 +02:00
da59b64a0b move compatibility code for file access from audio.c to compat.h 2025-04-18 21:23:24 +02:00
5145e43eaa make rotation movement seperate from regular movement
rotation often happens too fast and regular movement often happens too
slow.
Hence the split
2025-04-17 09:59:30 +02:00
38cb8011ef move timer data to static variables in the update function, rather than storing it in the gamedata. 2025-04-17 09:53:07 +02:00
1ee8c69d1b don't use exact integer types where it's not necessary 2025-04-17 09:45:27 +02:00
4bba7bda9f rework error.h
added nonnull attributes, removed gamestatus and other integers which
don't need an exact type, added restrict to all the pointers.
2025-04-16 16:44:01 +02:00
b2e2089a59 improve makefile 2025-04-16 16:42:57 +02:00
86b1d9a617 make font loading not required for the application to execute. 2025-04-16 16:19:47 +02:00
db98a96b87 execute program in 32 bit mode, as we don't need that wide of an adress space 2025-04-16 15:03:04 +02:00