summaryrefslogtreecommitdiff
path: root/lib/ultralib/src/io/crc.c
diff options
context:
space:
mode:
authorDerek Hensley <hensley.derek58@gmail.com>2023-07-31 17:42:21 -0700
committerGitHub <noreply@github.com>2023-07-31 20:42:21 -0400
commit33ec543467f17900516d93dd4b7964b8f49d1951 (patch)
tree426bd326b52d2a609d6f45cdf17a50162cbdc01b /lib/ultralib/src/io/crc.c
parent6d0c9276e8fc93e679d295b4e5f968da4b966a9b (diff)
Libultra OK (#20)
* Identify last 2 libultra files * BSS left * Update not built files * libultra OK * Makefile formating * Identify last couple data files * libultra section headers * Paddings * Fix one padding * move non_shared to CLFAGS and ASFLAGS * git subrepo pull --force lib/ultralib subrepo: subdir: "lib/ultralib" merged: "b376559" upstream: origin: "git@github.com:decompals/ultralib.git" branch: "main" commit: "b376559" git-subrepo: version: "0.4.6" origin: "https://github.com/ingydotnet/git-subrepo" commit: "110b9eb" * Remove duplicate -non_shared * .hasm * Jenkins * GBIDEFINE
Diffstat (limited to 'lib/ultralib/src/io/crc.c')
-rw-r--r--lib/ultralib/src/io/crc.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/lib/ultralib/src/io/crc.c b/lib/ultralib/src/io/crc.c
index e266152..05f2698 100644
--- a/lib/ultralib/src/io/crc.c
+++ b/lib/ultralib/src/io/crc.c
@@ -2,12 +2,12 @@
u8 __osContAddressCrc(u16 addr) {
u32 temp = 0;
- u32 i;
+ u32 i = 0x400;
- for (i = 0x400; i != 0;) {
+ do {
temp <<= 1;
- if (addr & i) {
+ if ((u32)addr & i) {
if (temp & 0x20) {
temp ^= 0x14;
} else {
@@ -16,21 +16,23 @@ u8 __osContAddressCrc(u16 addr) {
} else if (temp & 0x20) {
temp ^= 0x15;
}
-
+
i >>= 1;
- }
+ } while (i != 0);
- for (i = 5; i != 0; --i) {
+ i = 5;
+
+ do {
temp <<= 1;
if (temp & 0x20) {
temp ^= 0x15;
}
- }
+ } while (--i != 0);
return temp & 0x1F;
}
-u8 __osContDataCrc(u8 *data) {
+u8 __osContDataCrc(u8* data) {
u32 temp = 0;
u32 i;
u32 j;