Commit Graph

32 Commits

Author SHA1 Message Date
316726a610 tmp: revert enabling a column limit 2025-10-16 23:35:30 +02:00
1aa34f7d3f enable a column limit. 2025-10-09 21:12:53 +02:00
00719b1933 refactor code with new formatting rules
Functions now break before their brace, mirroring the Linux kernel.
The reason for this is that breaking the parameter list otherwise makes
code unreadable.
2025-10-09 19:02:16 +02:00
eb45650178 fix: use uintptr over usize in locations where applicable 2025-10-09 18:35:39 +02:00
d4fabf437c reformat the code by enabeling assignment- and declaration alignment. 2025-10-09 12:17:04 +02:00
cebe0df8a2 move /src/error.? to /src/util/error.? 2025-10-09 12:16:38 +02:00
aa58d931aa move /src/util/intdef.h to /src/util/types.h 2025-10-09 12:16:06 +02:00
6eb7d126da create a custom definition for size_t and ssize_t, which is ssize and usize, for conveinience. 2025-09-18 10:39:57 +02:00
f0d14e76b2 write decompression logic up to the point of hanelling the buffer. 2025-09-10 12:52:35 +02:00
5de0c77992 start writing code for decompressing chunk data.
I still haven't much of an idea where I'll take this, but it's a start.

I know it is needed for block filtering and such, I still need to find a
way how I'll actually implement it.
2025-09-10 11:37:20 +02:00
d933931829 fix: shouldn't multiply by CHUNKS, but by SECTOR 2025-09-10 10:13:26 +02:00
f020347f71 change mvchunks parameter order, to be a bit more clear and consistent with functions such as memmove 2025-09-10 10:13:26 +02:00
b13de01f24 fix: violating strict aliasing rules in most areas in the new code.
Yes, I am aware there are plenty of violations in `conf.c`, but I'll
likely fix/rewrite those when I will use it. Since there are some other
changes I think I'll want to make.
2025-09-10 10:13:26 +02:00
b72b8eaee1 add comments to point at where strict aliasing rule violations occur in data scripts
this is definitely not all of them, a thorough rewrite must take place
to fix as many as we can.
2025-09-10 10:13:26 +02:00
8a5afd6915 write a portable version of endian.h, to replace the system's endian.h.
utilising GNU C standard library for some of the functionality, or GNU C
extensions.
2025-09-10 10:13:26 +02:00
0baadfca75 update copyright information in all files
the comment was using single-line comments, I prefer multi-line comments
now.
This bothered me for much too long.
2025-08-29 09:36:55 +02:00
9a45294e56 write some constants for mcx.c, so things are less error-prone. 2025-08-29 09:35:02 +02:00
5b5f1f54af remove unneeded code 2025-08-28 16:46:27 +02:00
f1141e0db4 fix: not moving chunks correctly in mcx_delchunk_range 2025-08-28 10:59:30 +02:00
15942b47f5 fix: assertion was inverted 2025-08-28 10:57:00 +02:00
7531d786be add a function for range deleting chunks 2025-08-27 14:50:35 +02:00
2c5b9def28 should set the spare chunk to 0x400, not 0 2025-08-27 14:50:35 +02:00
cd277873b5 split apart the moving of the data, for further flexibility 2025-08-27 14:50:35 +02:00
f203cabad9 fix: endianess was (often) converted after performing computations or missing completely. 2025-08-27 14:47:50 +02:00
28dd8af353 add comments 2025-08-27 14:38:30 +02:00
af8211c5ce write function for bulk removal of chunks 2025-08-27 12:58:28 +02:00
767f3a5c13 refactor of mcx_delchunk to make things a bit more clear and flexible 2025-08-27 12:30:38 +02:00
43e3e4fe85 fix: not converting big-endian numbers to host.
I swear I did have this here at some point... I've got no idea when I
removed it, or even why.
2025-08-27 12:30:38 +02:00
fad6f366b4 fix: mcx_delchunk was not updating the byte offset of affected chunks. 2025-08-27 12:30:38 +02:00
b7859d56d9 add function for computing the bytesize of the *.mcX file 2025-08-27 12:30:38 +02:00
1c863099a9 write a function for deleting a specific chunk. 2025-08-27 11:43:17 +02:00
e02f4091b8 start writing code for *.mcX file parsing, starting with indexing logic. 2025-08-26 11:32:26 +02:00