]> 4ch.mooo.com Git - 16.git/commitdiff
worked abit on the type_to_bianary functions
authorsparky4 <sparky4@cock.li>
Thu, 14 Jun 2018 14:39:19 +0000 (09:39 -0500)
committersparky4 <sparky4@cock.li>
Thu, 14 Jun 2018 14:39:19 +0000 (09:39 -0500)
src/inputest.c
src/lib/16_head.c
src/lib/16_tail.c
src/lib/16_tail.h

index 8016e495088e723664d46c095a599885208ae3f3..08c5745f23ba582783ffc85fa8b19a0c761bbd2c 100755 (executable)
@@ -67,6 +67,8 @@ main(int argc, char *argv[])
        gvar.player[0].enti.d=2;\r
        gvar.player[0].enti.spt=4;\r
 \r
+//     wordtest();\r
+       bytetest();\r
 //0000 nibbletest();\r
 //0000 booleantest();\r
        //printf("dbg_testkeyin=%u      dbg_testcontrolnoisy=%u dbg_nogvar.playerinpu=%u\nloop if this is not responsive then please KILL or reset machine sorry!!\n", dbg_testkeyin, dbg_testcontrolnoisy, dbg_nogvar.playerinpu);\r
index 68b0645e03a57b30cf219c44efb22e75f747d7f8..e5ddd6dc93ab56950c9f3d96a507d02275e94d83 100755 (executable)
@@ -323,6 +323,7 @@ _dl=_DL;
 //     printf("        ip=%04x\n\n", _IP);\r
 //     printf("        cf=%04x\npf=%04x\naf=%04x\nzf=%04x\nsf=%04x\ntf=%04x\nif=%04x\ndf=%04x\nof=%04x\n", _CF, _PF, _AF, _ZF, _SF, _TF, _IF, _DF, _OF);\r
        printf("cflag: "BYTE_TO_BINARY_PATTERN""BYTE_TO_BINARY_PATTERN"\n",             BYTE_TO_BINARY(_cflag>>8), BYTE_TO_BINARY(_cflag));\r
+//             printf("cflag: %s\n",(_cflag));\r
 #endif\r
        printf("dx: "BYTE_TO_BINARY_PATTERN""BYTE_TO_BINARY_PATTERN"\n",                BYTE_TO_BINARY(_dx>>8), BYTE_TO_BINARY(_dx));\r
        printf("                ---------------------------------------\n");\r
index 50cd2e8240169a5d8f48657fe56d2bb13503e933..d8f18b9483fa429b79bab5705ae0e653e9b438af 100755 (executable)
@@ -793,37 +793,52 @@ void turboXT(byte bakapee)
 }\r
 #endif\r
 \r
-const char *word_to_binary(word x)\r
+//from https://stackoverflow.com/questions/18327439/printing-binary-representation-of-a-char-in-c\r
+const char *word_to_binary(int x)\r
 {\r
        static char b[17];\r
        int z;\r
 \r
        b[0] = '\0';\r
-       for (z = 16; z > 0; z >>= 1)\r
+       for (z = 256; z > 0; z >>= 1)\r
        {\r
+///            printf("                z=%u    b=%u    x=%u\n", z, b, x);\r
                strcat(b, ((x & z) == z) ? "1" : "0");\r
        }\r
        return b;\r
 }\r
 \r
-const char *nibble_to_binary(nibble x)\r
+const char *byte_to_binary(int x)\r
 {\r
        static char b[9];\r
        int z;\r
 \r
        b[0] = '\0';\r
-       for (z = 8; z > 0; z >>= 1)\r
+       for (z = 128; z > 0; z >>= 1)\r
        {\r
                strcat(b, ((x & z) == z) ? "1" : "0");\r
        }\r
        return b;\r
 }\r
 \r
-const char *boolean_to_binary(boolean x)\r
+const char *nibble_to_binary(int x)\r
 {\r
        static char b[9];\r
        int z;\r
 \r
+       b[0] = '\0';\r
+       for (z = 8; z > 0; z >>= 1)\r
+       {\r
+               strcat(b, ((x & z) == z) ? "1" : "0");\r
+       }\r
+       return b;\r
+}\r
+\r
+const char *boolean_to_binary(int x)\r
+{\r
+       static char b[3];\r
+       int z;\r
+\r
        b[0] = '\0';\r
        for (z = 1; z > 0; z >>= 1)\r
        {\r
@@ -832,13 +847,35 @@ const char *boolean_to_binary(boolean x)
        return b;\r
 }\r
 \r
+void wordtest()\r
+{\r
+       word pee;\r
+       printf("wordtest\n");\r
+       /* word to binary string */\r
+       for(pee=0;pee<280;pee++)\r
+               printf("        %u      %s\n", pee, word_to_binary(pee));\r
+       printf("        sizeof(word)=%s\n", word_to_binary(sizeof(word)));\r
+       printf("end of word test\n");\r
+}\r
+\r
+void bytetest()\r
+{\r
+       byte pee;\r
+       printf("bytetest\n");\r
+       /* byte to binary string */\r
+       for(pee=0;pee<18;pee++)\r
+               printf("        %u      %s\n", pee, byte_to_binary(pee));\r
+       printf("        sizeof(byte)=%s\n", byte_to_binary(sizeof(byte)));\r
+       printf("end of byte test\n");\r
+}\r
+\r
 void nibbletest()\r
 {\r
        nibble pee;\r
        printf("nibbletest\n");\r
        /* nibble to binary string */\r
        for(pee=0;pee<18;pee++)\r
-               printf("        %u %s\n", pee, nibble_to_binary(pee));\r
+               printf("        %u      %s\n", pee, nibble_to_binary(pee));\r
        printf("        sizeof(nibble)=%s\n", nibble_to_binary(sizeof(nibble)));\r
        printf("end of nibble test\n");\r
 }\r
@@ -849,7 +886,7 @@ void booleantest()
        printf("booleantest\n");\r
        /* boolean to binary string */\r
        for(pee=0;pee<4;pee++)\r
-               printf("        %u %s\n", pee, boolean_to_binary(pee));\r
+               printf("        %u      %s\n", pee, boolean_to_binary(pee));\r
        printf("        sizeof(boolean)=%s\n", boolean_to_binary(sizeof(boolean)));\r
        printf("end of boolean test\n");\r
 }\r
index 79cf67aafb2dbf736d691991f61dc7513081cf2d..9d6555adbe017c2695d5f06d8be47a10292360c1 100755 (executable)
@@ -141,6 +141,12 @@ void DebugMemory_(global_game_variables_t *gvar, boolean q);
 void ClearMemory (global_game_variables_t *gvar);\r
 void Quit (global_game_variables_t *gvar, char *error);\r
 void turboXT(byte bakapee);\r
+const char *word_to_binary(int x);\r
+const char *byte_to_binary(int x);\r
+const char *nibble_to_binary(int x);\r
+const char *boolean_to_binary(int x);\r
+void wordtest();\r
+void bytetest();\r
 void nibbletest();\r
 void booleantest();\r
 \r