/* Project 16 Source Code~\r
- * Copyright (C) 2012-2018 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
+ * Copyright (C) 2012-2019 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
*\r
* This file is part of Project 16.\r
*\r
//For multi-byte types\r
//printf("m: "BYTE_TO_BINARY_PATTERN" "BYTE_TO_BINARY_PATTERN"\n", BYTE_TO_BINARY(m>>8), BYTE_TO_BINARY(m));\r
#define BYTE_TO_BINARY_PATTERN "%c%c%c%c%c%c%c%c"\r
-#define BYTE_TO_BINARY(byte) \\r
- (byte & 0x80 ? '1' : '0'), \\r
- (byte & 0x40 ? '1' : '0'), \\r
- (byte & 0x20 ? '1' : '0'), \\r
- (byte & 0x10 ? '1' : '0'), \\r
- (byte & 0x08 ? '1' : '0'), \\r
- (byte & 0x04 ? '1' : '0'), \\r
- (byte & 0x02 ? '1' : '0'), \\r
+#define BYTE_TO_BINARY(byte) \\r
+ (byte & 0x80 ? '1' : '0'), \\r
+ (byte & 0x40 ? '1' : '0'), \\r
+ (byte & 0x20 ? '1' : '0'), \\r
+ (byte & 0x10 ? '1' : '0'), \\r
+ (byte & 0x08 ? '1' : '0'), \\r
+ (byte & 0x04 ? '1' : '0'), \\r
+ (byte & 0x02 ? '1' : '0'), \\r
(byte & 0x01 ? '1' : '0')\r
\r
+#define WORD_TO_BINARY_PATTERN "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c"\r
+#define WORD_TO_BINARY(word) \\r
+ (word & 0x8000 ? '1' : '0'), \\r
+ (word & 0x4000 ? '1' : '0'), \\r
+ (word & 0x2000 ? '1' : '0'), \\r
+ (word & 0x1000 ? '1' : '0'), \\r
+ (word & 0x0800 ? '1' : '0'), \\r
+ (word & 0x0400 ? '1' : '0'), \\r
+ (word & 0x0200 ? '1' : '0'), \\r
+ (word & 0x0100 ? '1' : '0'), \\r
+ (word & 0x0080 ? '1' : '0'), \\r
+ (word & 0x0040 ? '1' : '0'), \\r
+ (word & 0x0020 ? '1' : '0'), \\r
+ (word & 0x0010 ? '1' : '0'), \\r
+ (word & 0x0008 ? '1' : '0'), \\r
+ (word & 0x0004 ? '1' : '0'), \\r
+ (word & 0x0002 ? '1' : '0'), \\r
+ (word & 0x0001 ? '1' : '0')\r
+\r
+#define NIBBLE_TO_BINARY_PATTERN "%c%c%c%c"\r
+#define NIBBLE_TO_BINARY(nibble) \\r
+ (nibble & 0x08 ? '1' : '0'), \\r
+ (nibble & 0x04 ? '1' : '0'), \\r
+ (nibble & 0x02 ? '1' : '0'), \\r
+ (nibble & 0x01 ? '1' : '0')\r
+\r
+#define BOOLEAN_TO_BINARY_PATTERN "%c"\r
+#define BOOLEAN_TO_BINARY(boolean) \\r
+ (boolean & 0x01 ? '1' : '0')\r
+\r
#define PRINT_OPAQUE_STRUCT(p) print_mem((p), sizeof(*(p)))\r
\r
#endif/*__16_HEAD_H__*/\r