zemu 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (285) hide show
  1. checksums.yaml +7 -0
  2. data/lib/zemu/config.rb +312 -0
  3. data/lib/zemu/instance.rb +179 -0
  4. data/lib/zemu.rb +172 -0
  5. data/src/debug.c +118 -0
  6. data/src/debug.h +30 -0
  7. data/src/external/Z/API/Z/ABIs/generic/allocator.h +36 -0
  8. data/src/external/Z/API/Z/ABIs/generic/cipher.h +47 -0
  9. data/src/external/Z/API/Z/ABIs/generic/data codec.h +33 -0
  10. data/src/external/Z/API/Z/ABIs/generic/emulation.h +103 -0
  11. data/src/external/Z/API/Z/ABIs/generic/hash function.h +33 -0
  12. data/src/external/Z/API/Z/ABIs/generic/module.h +33 -0
  13. data/src/external/Z/API/Z/ABIs/generic/wave codec.h +40 -0
  14. data/src/external/Z/API/Z/classes/base/InitializerList.hpp +34 -0
  15. data/src/external/Z/API/Z/classes/base/OpaqueFunctionPointer.hpp +26 -0
  16. data/src/external/Z/API/Z/classes/base/OpaqueMemberFunctionPointer.hpp +26 -0
  17. data/src/external/Z/API/Z/classes/base/Pair.hpp +46 -0
  18. data/src/external/Z/API/Z/classes/base/Range.hpp +111 -0
  19. data/src/external/Z/API/Z/classes/base/SizedString.hpp +66 -0
  20. data/src/external/Z/API/Z/classes/base/Status.hpp +89 -0
  21. data/src/external/Z/API/Z/classes/base/Symbol.hpp +39 -0
  22. data/src/external/Z/API/Z/classes/base/Tuple.hpp +111 -0
  23. data/src/external/Z/API/Z/classes/base/Value2D.hpp +389 -0
  24. data/src/external/Z/API/Z/classes/base/Value3D.hpp +368 -0
  25. data/src/external/Z/API/Z/classes/buffering/RingBuffer.hpp +93 -0
  26. data/src/external/Z/API/Z/classes/buffering/TripleBuffer.hpp +68 -0
  27. data/src/external/Z/API/Z/classes/functional/Functor.hpp +265 -0
  28. data/src/external/Z/API/Z/classes/functional/MemberFunction.hpp +98 -0
  29. data/src/external/Z/API/Z/classes/functional/ObjectMemberFunction.hpp +172 -0
  30. data/src/external/Z/API/Z/classes/functional/ObjectSelector.hpp +219 -0
  31. data/src/external/Z/API/Z/classes/functional/Selector.hpp +146 -0
  32. data/src/external/Z/API/Z/classes/mathematics/geometry/euclidean/AABB.hpp +81 -0
  33. data/src/external/Z/API/Z/classes/mathematics/geometry/euclidean/AABR.hpp +685 -0
  34. data/src/external/Z/API/Z/classes/mathematics/geometry/euclidean/Box.hpp +219 -0
  35. data/src/external/Z/API/Z/classes/mathematics/geometry/euclidean/Circle.hpp +80 -0
  36. data/src/external/Z/API/Z/classes/mathematics/geometry/euclidean/Line2D.hpp +93 -0
  37. data/src/external/Z/API/Z/classes/mathematics/geometry/euclidean/Line3D.hpp +80 -0
  38. data/src/external/Z/API/Z/classes/mathematics/geometry/euclidean/Rectangle.hpp +675 -0
  39. data/src/external/Z/API/Z/classes/mathematics/geometry/euclidean/Sphere.hpp +0 -0
  40. data/src/external/Z/API/Z/classes/memory/Shared.hpp +90 -0
  41. data/src/external/Z/API/Z/constants/base.h +35 -0
  42. data/src/external/Z/API/Z/constants/chemical elements.h +6385 -0
  43. data/src/external/Z/API/Z/constants/numbers.h +963 -0
  44. data/src/external/Z/API/Z/constants/version.h +15 -0
  45. data/src/external/Z/API/Z/formats/character set/ASCII.h +158 -0
  46. data/src/external/Z/API/Z/formats/character set/DOS CP437.h +159 -0
  47. data/src/external/Z/API/Z/formats/character set/DOS CP737.h +159 -0
  48. data/src/external/Z/API/Z/formats/character set/DOS CP775.h +159 -0
  49. data/src/external/Z/API/Z/formats/character set/DOS CP850.h +159 -0
  50. data/src/external/Z/API/Z/formats/character set/DOS CP852.h +159 -0
  51. data/src/external/Z/API/Z/formats/character set/DOS CP855.h +159 -0
  52. data/src/external/Z/API/Z/formats/character set/DOS CP857.h +159 -0
  53. data/src/external/Z/API/Z/formats/character set/DOS CP858.h +159 -0
  54. data/src/external/Z/API/Z/formats/character set/DOS CP860.h +159 -0
  55. data/src/external/Z/API/Z/formats/character set/DOS CP861.h +159 -0
  56. data/src/external/Z/API/Z/formats/character set/DOS CP862.h +159 -0
  57. data/src/external/Z/API/Z/formats/character set/DOS CP863.h +159 -0
  58. data/src/external/Z/API/Z/formats/character set/DOS CP864.h +159 -0
  59. data/src/external/Z/API/Z/formats/character set/DOS CP865.h +159 -0
  60. data/src/external/Z/API/Z/formats/character set/DOS CP866.h +159 -0
  61. data/src/external/Z/API/Z/formats/character set/DOS CP869.h +159 -0
  62. data/src/external/Z/API/Z/formats/character set/DOS CP872.h +159 -0
  63. data/src/external/Z/API/Z/formats/character set/DOS CP874.h +159 -0
  64. data/src/external/Z/API/Z/formats/character set/Unicode.h +30119 -0
  65. data/src/external/Z/API/Z/formats/data model/I16LP32.h +19 -0
  66. data/src/external/Z/API/Z/formats/data model/ILP32.h +19 -0
  67. data/src/external/Z/API/Z/formats/data model/ILP64.h +19 -0
  68. data/src/external/Z/API/Z/formats/data model/IP16L32.h +19 -0
  69. data/src/external/Z/API/Z/formats/data model/LLP64.h +19 -0
  70. data/src/external/Z/API/Z/formats/data model/LP32.h +19 -0
  71. data/src/external/Z/API/Z/formats/data model/LP64.h +19 -0
  72. data/src/external/Z/API/Z/formats/data model/SILP64.h +19 -0
  73. data/src/external/Z/API/Z/formats/file system/FAT12.h +61 -0
  74. data/src/external/Z/API/Z/formats/floating-point/IEEE 754.h +141 -0
  75. data/src/external/Z/API/Z/formats/floating-point/x87.h +74 -0
  76. data/src/external/Z/API/Z/formats/image/ICNS.h +39 -0
  77. data/src/external/Z/API/Z/formats/keymap/Mac OS.h +284 -0
  78. data/src/external/Z/API/Z/formats/keymap/Z.h +141 -0
  79. data/src/external/Z/API/Z/formats/multimedia/Creative Voice.h +106 -0
  80. data/src/external/Z/API/Z/formats/multimedia/Microsoft Wave.h +49 -0
  81. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/ACH.h +44 -0
  82. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/FRZ.h +54 -0
  83. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/PRG.h +33 -0
  84. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/SEM.h +46 -0
  85. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/SIT.h +34 -0
  86. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/SNA.h +117 -0
  87. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/SNP.h +37 -0
  88. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/SP.h +62 -0
  89. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/Z80.h +117 -0
  90. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/ZX.h +56 -0
  91. data/src/external/Z/API/Z/formats/snapshot/machine/computer/ZX Spectrum/ZX82.h +70 -0
  92. data/src/external/Z/API/Z/formats/storage medium image/NES Game Pak/UNIF.h +26 -0
  93. data/src/external/Z/API/Z/formats/storage medium image/NES Game Pak/iNES.h +76 -0
  94. data/src/external/Z/API/Z/formats/storage medium image/audio/TAP.h +25 -0
  95. data/src/external/Z/API/Z/formats/storage medium image/audio/TZX.h +1185 -0
  96. data/src/external/Z/API/Z/formats/storage medium image/audio/Warajevo TAP.h +32 -0
  97. data/src/external/Z/API/Z/formats/storage medium image/floppy disk/FDI.h +45 -0
  98. data/src/external/Z/API/Z/functions/base/Z2D.h +583 -0
  99. data/src/external/Z/API/Z/functions/base/Z3D.h +712 -0
  100. data/src/external/Z/API/Z/functions/base/ZRange.h +137 -0
  101. data/src/external/Z/API/Z/functions/base/all.h +16 -0
  102. data/src/external/Z/API/Z/functions/base/casting.hpp +37 -0
  103. data/src/external/Z/API/Z/functions/base/character.h +38 -0
  104. data/src/external/Z/API/Z/functions/base/constructors.h +326 -0
  105. data/src/external/Z/API/Z/functions/base/structure.hpp +26 -0
  106. data/src/external/Z/API/Z/functions/base/type.hpp +60 -0
  107. data/src/external/Z/API/Z/functions/base/value.h +1901 -0
  108. data/src/external/Z/API/Z/functions/base/value.hpp +112 -0
  109. data/src/external/Z/API/Z/functions/buffering/ZRingBuffer.h +85 -0
  110. data/src/external/Z/API/Z/functions/buffering/ZTripleBuffer.h +65 -0
  111. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/Z2DLine.h +179 -0
  112. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/Z3DLine.h +168 -0
  113. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/ZAABB.h +361 -0
  114. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/ZAABR.h +1081 -0
  115. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/ZBox.h +340 -0
  116. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/ZCircle.h +142 -0
  117. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/ZRectangle.h +1267 -0
  118. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/ZSphere.h +156 -0
  119. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/all.h +18 -0
  120. data/src/external/Z/API/Z/functions/mathematics/geometry/euclidean/constructors.h +620 -0
  121. data/src/external/Z/API/Z/functions/time/date.h +29 -0
  122. data/src/external/Z/API/Z/hardware/CPU/architecture/6502.h +90 -0
  123. data/src/external/Z/API/Z/hardware/CPU/architecture/Z80.h +245 -0
  124. data/src/external/Z/API/Z/hardware/CPU/architecture/i4004.h +37 -0
  125. data/src/external/Z/API/Z/hardware/PSG/General Instrument/AY-3-891x.h +180 -0
  126. data/src/external/Z/API/Z/hardware/VDC/Ricoh/RP2C0x.h +625 -0
  127. data/src/external/Z/API/Z/hardware/bus/AGP.h +24 -0
  128. data/src/external/Z/API/Z/hardware/bus/USB.h +510 -0
  129. data/src/external/Z/API/Z/hardware/machine/model/computer/ZX Spectrum/Inves Spectrum +.h +47 -0
  130. data/src/external/Z/API/Z/hardware/machine/model/computer/ZX Spectrum/Pentagon.h +13 -0
  131. data/src/external/Z/API/Z/hardware/machine/model/computer/ZX Spectrum/Scorpion.h +13 -0
  132. data/src/external/Z/API/Z/hardware/machine/model/computer/ZX Spectrum/ZX Spectrum + 128K.h +158 -0
  133. data/src/external/Z/API/Z/hardware/machine/model/computer/ZX Spectrum/ZX Spectrum +.h +82 -0
  134. data/src/external/Z/API/Z/hardware/machine/model/computer/ZX Spectrum/ZX Spectrum +2.h +13 -0
  135. data/src/external/Z/API/Z/hardware/machine/model/computer/ZX Spectrum/ZX Spectrum +2A.h +13 -0
  136. data/src/external/Z/API/Z/hardware/machine/model/computer/ZX Spectrum/ZX Spectrum +3.h +13 -0
  137. data/src/external/Z/API/Z/hardware/machine/model/computer/ZX Spectrum/ZX Spectrum.h +109 -0
  138. data/src/external/Z/API/Z/hardware/machine/model/console/Nintendo Entertainment System/NES-001 (NTSC).h +29 -0
  139. data/src/external/Z/API/Z/hardware/machine/model/console/Nintendo Entertainment System/NES-001 (PAL).h +29 -0
  140. data/src/external/Z/API/Z/hardware/machine/platform/computer/ZX Spectrum.h +405 -0
  141. data/src/external/Z/API/Z/hardware/machine/platform/console/Game Boy.h +49 -0
  142. data/src/external/Z/API/Z/hardware/machine/platform/console/Nintendo Entertainment System.h +350 -0
  143. data/src/external/Z/API/Z/hardware/storage medium/ROM cartridge/SNES Game Pak.h +238 -0
  144. data/src/external/Z/API/Z/inspection/C/completion.h +178 -0
  145. data/src/external/Z/API/Z/inspection/C/modules/C11.h +41 -0
  146. data/src/external/Z/API/Z/inspection/C/modules/C18.h +13 -0
  147. data/src/external/Z/API/Z/inspection/C/modules/C89.h +19 -0
  148. data/src/external/Z/API/Z/inspection/C/modules/C90.h +13 -0
  149. data/src/external/Z/API/Z/inspection/C/modules/C94.h +15 -0
  150. data/src/external/Z/API/Z/inspection/C/modules/C99.h +29 -0
  151. data/src/external/Z/API/Z/inspection/C/modules/KR C.h +19 -0
  152. data/src/external/Z/API/Z/inspection/C++/completion.h +512 -0
  153. data/src/external/Z/API/Z/inspection/C++/modules/C++03.h +15 -0
  154. data/src/external/Z/API/Z/inspection/C++/modules/C++11.h +80 -0
  155. data/src/external/Z/API/Z/inspection/C++/modules/C++14.h +26 -0
  156. data/src/external/Z/API/Z/inspection/C++/modules/C++17.h +55 -0
  157. data/src/external/Z/API/Z/inspection/C++/modules/C++85.h +11 -0
  158. data/src/external/Z/API/Z/inspection/C++/modules/C++89.h +13 -0
  159. data/src/external/Z/API/Z/inspection/C++/modules/C++98.h +17 -0
  160. data/src/external/Z/API/Z/inspection/C++.h +78 -0
  161. data/src/external/Z/API/Z/inspection/C.h +79 -0
  162. data/src/external/Z/API/Z/inspection/CPU/completion.h +56 -0
  163. data/src/external/Z/API/Z/inspection/CPU/detection.h +714 -0
  164. data/src/external/Z/API/Z/inspection/CPU/modules/6502.h +25 -0
  165. data/src/external/Z/API/Z/inspection/CPU/modules/AArch32.h +32 -0
  166. data/src/external/Z/API/Z/inspection/CPU/modules/AArch64.h +32 -0
  167. data/src/external/Z/API/Z/inspection/CPU/modules/Z80.h +26 -0
  168. data/src/external/Z/API/Z/inspection/CPU/modules/x86-32.h +31 -0
  169. data/src/external/Z/API/Z/inspection/CPU/modules/x86-64.h +312 -0
  170. data/src/external/Z/API/Z/inspection/CPU.h +209 -0
  171. data/src/external/Z/API/Z/inspection/OS/completion.h +36 -0
  172. data/src/external/Z/API/Z/inspection/OS/detection.h +768 -0
  173. data/src/external/Z/API/Z/inspection/OS/modules/Linux.h +22 -0
  174. data/src/external/Z/API/Z/inspection/OS/modules/MS-DOS.h +16 -0
  175. data/src/external/Z/API/Z/inspection/OS/modules/Mac OS X.h +23 -0
  176. data/src/external/Z/API/Z/inspection/OS/modules/Windows.h +19 -0
  177. data/src/external/Z/API/Z/inspection/OS/modules/iPhone OS.h +23 -0
  178. data/src/external/Z/API/Z/inspection/OS.h +236 -0
  179. data/src/external/Z/API/Z/inspection/Objective-C/completion.h +8 -0
  180. data/src/external/Z/API/Z/inspection/Objective-C/modules/Objective-C v1.0.h +11 -0
  181. data/src/external/Z/API/Z/inspection/Objective-C/modules/Objective-C v2.0.h +15 -0
  182. data/src/external/Z/API/Z/inspection/Objective-C.h +51 -0
  183. data/src/external/Z/API/Z/inspection/Z.h +19 -0
  184. data/src/external/Z/API/Z/inspection/build.h +22 -0
  185. data/src/external/Z/API/Z/inspection/character set.h +66 -0
  186. data/src/external/Z/API/Z/inspection/compiler/completion.h +2885 -0
  187. data/src/external/Z/API/Z/inspection/compiler/modules/Apple LLVM.h +26 -0
  188. data/src/external/Z/API/Z/inspection/compiler/modules/Clang.h +1664 -0
  189. data/src/external/Z/API/Z/inspection/compiler/modules/GCC.h +1366 -0
  190. data/src/external/Z/API/Z/inspection/compiler/modules/SCCZ80.h +473 -0
  191. data/src/external/Z/API/Z/inspection/compiler/modules/Visual C++.h +606 -0
  192. data/src/external/Z/API/Z/inspection/compiler/modules/cc65.h +529 -0
  193. data/src/external/Z/API/Z/inspection/compiler/modules/generic.h +13 -0
  194. data/src/external/Z/API/Z/inspection/compiler/modules/template.h +650 -0
  195. data/src/external/Z/API/Z/inspection/compiler.h +299 -0
  196. data/src/external/Z/API/Z/inspection/data model/completion.h +128 -0
  197. data/src/external/Z/API/Z/inspection/data model/deduction.h +9 -0
  198. data/src/external/Z/API/Z/inspection/data model/detection.h +45 -0
  199. data/src/external/Z/API/Z/inspection/data model.h +362 -0
  200. data/src/external/Z/API/Z/inspection/floating-point/completion.h +50 -0
  201. data/src/external/Z/API/Z/inspection/floating-point.h +324 -0
  202. data/src/external/Z/API/Z/inspection/language.h +163 -0
  203. data/src/external/Z/API/Z/inspection/platform/detection.h +9 -0
  204. data/src/external/Z/API/Z/inspection/platform.h +29 -0
  205. data/src/external/Z/API/Z/keys/C++.h +27 -0
  206. data/src/external/Z/API/Z/keys/C.h +29 -0
  207. data/src/external/Z/API/Z/keys/CPU.h +80 -0
  208. data/src/external/Z/API/Z/keys/OS.h +182 -0
  209. data/src/external/Z/API/Z/keys/Objective-C.h +17 -0
  210. data/src/external/Z/API/Z/keys/chemistry.h +26 -0
  211. data/src/external/Z/API/Z/keys/compiler.h +178 -0
  212. data/src/external/Z/API/Z/keys/data model.h +32 -0
  213. data/src/external/Z/API/Z/keys/endianness.h +24 -0
  214. data/src/external/Z/API/Z/keys/language.h +21 -0
  215. data/src/external/Z/API/Z/keys/layout.h +20 -0
  216. data/src/external/Z/API/Z/keys/mathematics/geometry.h +29 -0
  217. data/src/external/Z/API/Z/keys/mathematics/number.h +21 -0
  218. data/src/external/Z/API/Z/keys/order.h +18 -0
  219. data/src/external/Z/API/Z/keys/platform.h +87 -0
  220. data/src/external/Z/API/Z/keys/program.h +39 -0
  221. data/src/external/Z/API/Z/keys/science/chemical elements.h +200 -0
  222. data/src/external/Z/API/Z/keys/science/electricity.h +18 -0
  223. data/src/external/Z/API/Z/keys/science/magnetism.h +19 -0
  224. data/src/external/Z/API/Z/keys/status.h +69 -0
  225. data/src/external/Z/API/Z/keys/text.h +27 -0
  226. data/src/external/Z/API/Z/keys/value.h +88 -0
  227. data/src/external/Z/API/Z/macros/arguments.h +25 -0
  228. data/src/external/Z/API/Z/macros/casting.h +22 -0
  229. data/src/external/Z/API/Z/macros/character.h +159 -0
  230. data/src/external/Z/API/Z/macros/date.h +14 -0
  231. data/src/external/Z/API/Z/macros/key.h +20 -0
  232. data/src/external/Z/API/Z/macros/language.h +126 -0
  233. data/src/external/Z/API/Z/macros/language.hpp +81 -0
  234. data/src/external/Z/API/Z/macros/members.h +86 -0
  235. data/src/external/Z/API/Z/macros/pasting.h +308 -0
  236. data/src/external/Z/API/Z/macros/pointer.h +33 -0
  237. data/src/external/Z/API/Z/macros/repetition.h +283 -0
  238. data/src/external/Z/API/Z/macros/structure.h +104 -0
  239. data/src/external/Z/API/Z/macros/templating.h +407 -0
  240. data/src/external/Z/API/Z/macros/tokens.h +14 -0
  241. data/src/external/Z/API/Z/macros/type enumeration.h +43 -0
  242. data/src/external/Z/API/Z/macros/type selection.hpp +76 -0
  243. data/src/external/Z/API/Z/macros/value.h +489 -0
  244. data/src/external/Z/API/Z/macros/variadic pasting.h +21 -0
  245. data/src/external/Z/API/Z/macros/variadic selection.h +56 -0
  246. data/src/external/Z/API/Z/macros/variadic.h +46 -0
  247. data/src/external/Z/API/Z/macros/version.h +17 -0
  248. data/src/external/Z/API/Z/network/3/IP.h +36 -0
  249. data/src/external/Z/API/Z/network/4/TCP.h +24 -0
  250. data/src/external/Z/API/Z/network/4/UDP.h +26 -0
  251. data/src/external/Z/API/Z/network/7/ED2K.h +104 -0
  252. data/src/external/Z/API/Z/network/7/HTTP.h +100 -0
  253. data/src/external/Z/API/Z/traits/SelectType.hpp +71 -0
  254. data/src/external/Z/API/Z/traits/TernaryType.hpp +20 -0
  255. data/src/external/Z/API/Z/traits/Type.hpp +4516 -0
  256. data/src/external/Z/API/Z/traits/TypeCount.hpp +52 -0
  257. data/src/external/Z/API/Z/traits/TypeList.hpp +376 -0
  258. data/src/external/Z/API/Z/traits/base.hpp +19 -0
  259. data/src/external/Z/API/Z/traits/filtering.hpp +30 -0
  260. data/src/external/Z/API/Z/traits/mathematics.hpp +48 -0
  261. data/src/external/Z/API/Z/types/arguments.h +19 -0
  262. data/src/external/Z/API/Z/types/base.h +1655 -0
  263. data/src/external/Z/API/Z/types/base.hpp +169 -0
  264. data/src/external/Z/API/Z/types/buffering.h +27 -0
  265. data/src/external/Z/API/Z/types/mathematics.h +135 -0
  266. data/src/external/Z/API/Z/types/time.h +23 -0
  267. data/src/external/Z/COPYING.LESSER +165 -0
  268. data/src/external/Z/development/Qt Creator/Z.pro +253 -0
  269. data/src/external/Z/distribution/CocoaPods/Zeta.podspec +18 -0
  270. data/src/external/Z/distribution/Gentoo Linux/Zeta-0.1.ebuild +22 -0
  271. data/src/external/Z/distribution/Gentoo Linux/metadata.xml +8 -0
  272. data/src/external/Z/distribution/Homebrew/Zeta.rb +11 -0
  273. data/src/external/z80/API/emulation/CPU/Z80.h +201 -0
  274. data/src/external/z80/README.md +229 -0
  275. data/src/external/z80/building/premake4.lua +33 -0
  276. data/src/external/z80/development/Xcode/Z80.xcodeproj/project.pbxproj +520 -0
  277. data/src/external/z80/sources/Z80.c +1660 -0
  278. data/src/interrupt.c +6 -0
  279. data/src/interrupt.h +3 -0
  280. data/src/io.c.erb +115 -0
  281. data/src/io.h.erb +18 -0
  282. data/src/main.c +69 -0
  283. data/src/memory.c.erb +43 -0
  284. data/src/memory.h.erb +9 -0
  285. metadata +329 -0
@@ -0,0 +1,324 @@
1
+ /* Z Kit - inspection/floating-point.h
2
+ _____ _______________
3
+ /_ /_/ -_/_ _/ _ |
4
+ /____/\___/ /__//___/_| Kit
5
+ Copyright (C) 2006-2018 Manuel Sainz de Baranda y Goñi.
6
+ Released under the terms of the GNU Lesser General Public License v3. */
7
+
8
+ #ifndef _Z_inspection_floating_point_H_
9
+ #define _Z_inspection_floating_point_H_
10
+
11
+ #include <Z/inspection/language.h>
12
+ #include <Z/macros/pasting.h>
13
+
14
+ #if Z_LANGUAGE_HAS_TYPE(C, DOUBLE)
15
+
16
+ # ifndef Z_FLOATING_POINT_VALUE_FORMAT_DOUBLE /* UDC */
17
+ # ifndef Z_COMPILER_VALUE_FORMAT_DOUBLE
18
+ # error "double value format not defined."
19
+ # endif
20
+
21
+ # define Z_FLOATING_POINT_VALUE_FORMAT_DOUBLE Z_COMPILER_VALUE_FORMAT_DOUBLE
22
+ # endif
23
+
24
+ # if Z_FLOATING_POINT_VALUE_FORMAT_DOUBLE == Z_VALUE_FORMAT_IEEE_754_BINARY16
25
+ # define Z_FLOATING_POINT_LITERAL_FLOAT16 Z_SAME
26
+ # define Z_FLOATING_POINT_TYPE_FLOAT16 double
27
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT16 Z_VALUE_TYPE_DOUBLE
28
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_DOUBLE Z_VALUE_TYPE_FLOAT16
29
+
30
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_DOUBLE == Z_VALUE_FORMAT_IEEE_754_BINARY32
31
+ # define Z_FLOATING_POINT_LITERAL_FLOAT32 Z_SAME
32
+ # define Z_FLOATING_POINT_TYPE_FLOAT32 double
33
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT32 Z_VALUE_TYPE_DOUBLE
34
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_DOUBLE Z_VALUE_TYPE_FLOAT32
35
+
36
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_DOUBLE == Z_VALUE_FORMAT_IEEE_754_BINARY64
37
+ # define Z_FLOATING_POINT_LITERAL_FLOAT64 Z_SAME
38
+ # define Z_FLOATING_POINT_TYPE_FLOAT64 double
39
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT64 Z_VALUE_TYPE_DOUBLE
40
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_DOUBLE Z_VALUE_TYPE_FLOAT64
41
+ # endif
42
+
43
+ #endif
44
+
45
+ #if Z_LANGUAGE_HAS_TYPE(C, FLOAT)
46
+
47
+ # ifndef Z_FLOATING_POINT_VALUE_FORMAT_FLOAT /* UDC */
48
+ # ifndef Z_COMPILER_VALUE_FORMAT_FLOAT
49
+ # error "float value format not defined."
50
+ # endif
51
+
52
+ # define Z_FLOATING_POINT_VALUE_FORMAT_FLOAT Z_COMPILER_VALUE_FORMAT_FLOAT
53
+ # endif
54
+
55
+ # if Z_FLOATING_POINT_VALUE_FORMAT_FLOAT == Z_VALUE_FORMAT_IEEE_754_BINARY16
56
+
57
+ # ifndef Z_FLOATING_POINT_TYPE_FLOAT16
58
+ # define Z_FLOATING_POINT_LITERAL_FLOAT16 Z_SUFFIX_F
59
+ # define Z_FLOATING_POINT_TYPE_FLOAT16 float
60
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT16 Z_VALUE_TYPE_FLOAT
61
+ # endif
62
+
63
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_FLOAT Z_VALUE_TYPE_FLOAT16
64
+
65
+
66
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_FLOAT == Z_VALUE_FORMAT_IEEE_754_BINARY32
67
+
68
+ # ifndef Z_FLOATING_POINT_TYPE_FLOAT32
69
+ # define Z_FLOATING_POINT_LITERAL_FLOAT32 Z_SUFFIX_F
70
+ # define Z_FLOATING_POINT_TYPE_FLOAT32 float
71
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT32 Z_VALUE_TYPE_FLOAT
72
+ # endif
73
+
74
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_FLOAT Z_VALUE_TYPE_FLOAT32
75
+
76
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_FLOAT == Z_VALUE_FORMAT_IEEE_754_BINARY64
77
+
78
+ # ifndef Z_FLOATING_POINT_TYPE_FLOAT64
79
+ # define Z_FLOATING_POINT_LITERAL_FLOAT64 Z_SUFFIX_F
80
+ # define Z_FLOATING_POINT_TYPE_FLOAT64 float
81
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT64 Z_VALUE_TYPE_FLOAT
82
+ # endif
83
+
84
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_FLOAT Z_VALUE_TYPE_FLOAT64
85
+ # endif
86
+
87
+ #endif
88
+
89
+ #if Z_LANGUAGE_HAS_TYPE(C, LDOUBLE) || Z_LANGUAGE_HAS_TYPE(CPP, LDOUBLE)
90
+
91
+ # ifndef Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE /* UDC */
92
+ # ifndef Z_COMPILER_VALUE_FORMAT_LDOUBLE
93
+ # /*error "long double value format not defined."*/
94
+ # define Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE Z_VALUE_FORMAT_X87_BINARY128
95
+ # endif
96
+
97
+ # /*define Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE Z_COMPILER_VALUE_FORMAT_LDOUBLE*/
98
+ # endif
99
+
100
+ # if Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE == Z_VALUE_FORMAT_IEEE_754_BINARY16
101
+
102
+ # ifndef Z_FLOATING_POINT_TYPE_FLOAT16
103
+ # define Z_FLOATING_POINT_LITERAL_FLOAT16 Z_SUFFIX_L
104
+ # define Z_FLOATING_POINT_TYPE_FLOAT16 long double
105
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT16 Z_VALUE_TYPE_LDOUBLE
106
+ # endif
107
+
108
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_LDOUBLE Z_VALUE_TYPE_FLOAT16
109
+
110
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE == Z_VALUE_FORMAT_IEEE_754_BINARY32
111
+
112
+ # ifndef Z_FLOATING_POINT_TYPE_FLOAT32
113
+ # define Z_FLOATING_POINT_LITERAL_FLOAT32 Z_SUFFIX_L
114
+ # define Z_FLOATING_POINT_TYPE_FLOAT32 long double
115
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT32 Z_VALUE_TYPE_LDOUBLE
116
+ # endif
117
+
118
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_LDOUBLE Z_VALUE_TYPE_FLOAT32
119
+
120
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE == Z_VALUE_FORMAT_IEEE_754_BINARY64
121
+
122
+ # ifndef Z_FLOATING_POINT_TYPE_FLOAT64
123
+ # define Z_FLOATING_POINT_LITERAL_FLOAT64 Z_SUFFIX_L
124
+ # define Z_FLOATING_POINT_TYPE_FLOAT64 long double
125
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT64 Z_VALUE_TYPE_LDOUBLE
126
+ # endif
127
+
128
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_LDOUBLE Z_VALUE_TYPE_FLOAT64
129
+
130
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE == Z_VALUE_FORMAT_IEEE_754_BINARY128
131
+
132
+ # ifndef Z_FLOATING_POINT_TYPE_FLOAT128
133
+ # define Z_FLOATING_POINT_LITERAL_FLOAT128 Z_SUFFIX_L
134
+ # define Z_FLOATING_POINT_TYPE_FLOAT128 long double
135
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT128 Z_VALUE_TYPE_LDOUBLE
136
+ # endif
137
+
138
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_LDOUBLE Z_VALUE_TYPE_FLOAT128
139
+
140
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE == Z_VALUE_FORMAT_X87_BINARY80
141
+ # define Z_FLOATING_POINT_LITERAL_FLOAT80_X87 Z_SUFFIX_L
142
+ # define Z_FLOATING_POINT_TYPE_FLOAT80_X87 long double
143
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT80_X87 Z_VALUE_TYPE_LDOUBLE
144
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_LDOUBLE Z_VALUE_TYPE_FLOAT80_X87
145
+
146
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE == Z_VALUE_FORMAT_X87_BINARY96
147
+ # define Z_FLOATING_POINT_LITERAL_FLOAT96_X87 Z_SUFFIX_L
148
+ # define Z_FLOATING_POINT_TYPE_FLOAT96_X87 long double
149
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT96_X87 Z_VALUE_TYPE_LDOUBLE
150
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_LDOUBLE Z_VALUE_TYPE_FLOAT96_X87
151
+
152
+ # elif Z_FLOATING_POINT_VALUE_FORMAT_LDOUBLE == Z_VALUE_FORMAT_X87_BINARY128
153
+ # define Z_FLOATING_POINT_LITERAL_FLOAT128_X87 Z_SUFFIX_L
154
+ # define Z_FLOATING_POINT_TYPE_FLOAT128_X87 long double
155
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT128_X87 Z_VALUE_TYPE_LDOUBLE
156
+ # define Z_FLOATING_POINT_FIXED_VALUE_TYPE_LDOUBLE Z_VALUE_TYPE_FLOAT128_X87
157
+ # endif
158
+
159
+ #endif
160
+
161
+ #if !defined(Z_FLOATING_POINT_TYPE_FLOAT16) && Z_COMPILER_HAS_TYPE(FLOAT16)
162
+
163
+ # if Z_COMPILER_HAS_LITERAL(FLOAT16)
164
+ # define Z_FLOATING_POINT_LITERAL_FLOAT16 Z_COMPILER_LITERAL(FLOAT16)
165
+ # else
166
+ # define Z_FLOATING_POINT_LITERAL_FLOAT16 Z_SAME
167
+ # endif
168
+
169
+ # define Z_FLOATING_POINT_TYPE_FLOAT16 Z_COMPILER_TYPE(FLOAT16)
170
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT16 Z_VALUE_TYPE_FLOAT16
171
+
172
+ #endif
173
+
174
+ #if !defined(Z_FLOATING_POINT_TYPE_FLOAT32) && Z_COMPILER_HAS_TYPE(FLOAT32)
175
+
176
+ # if Z_COMPILER_HAS_LITERAL(FLOAT32)
177
+ # define Z_FLOATING_POINT_LITERAL_FLOAT32 Z_COMPILER_LITERAL(FLOAT32)
178
+ # else
179
+ # define Z_FLOATING_POINT_LITERAL_FLOAT32 Z_SAME
180
+ # endif
181
+
182
+ # define Z_FLOATING_POINT_TYPE_FLOAT32 Z_COMPILER_TYPE(FLOAT32)
183
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT32 Z_VALUE_TYPE_FLOAT32
184
+
185
+ #endif
186
+
187
+ #if !defined(Z_FLOATING_POINT_TYPE_FLOAT64) && Z_COMPILER_HAS_TYPE(FLOAT64)
188
+
189
+ # if Z_COMPILER_HAS_LITERAL(FLOAT64)
190
+ # define Z_FLOATING_POINT_LITERAL_FLOAT64 Z_COMPILER_LITERAL(FLOAT64)
191
+ # else
192
+ # define Z_FLOATING_POINT_LITERAL_FLOAT64 Z_SAME
193
+ # endif
194
+
195
+ # define Z_FLOATING_POINT_TYPE_FLOAT64 Z_COMPILER_TYPE(FLOAT64)
196
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT64 Z_VALUE_TYPE_FLOAT64
197
+
198
+ #endif
199
+
200
+ #if !defined(Z_FLOATING_POINT_TYPE_FLOAT128) && Z_COMPILER_HAS_TYPE(FLOAT128)
201
+
202
+ # if Z_COMPILER_HAS_LITERAL(FLOAT128)
203
+ # define Z_FLOATING_POINT_LITERAL_FLOAT128 Z_COMPILER_LITERAL(FLOAT128)
204
+ # else
205
+ # define Z_FLOATING_POINT_LITERAL_FLOAT128 Z_SAME
206
+ # endif
207
+
208
+ # define Z_FLOATING_POINT_TYPE_FLOAT128 Z_COMPILER_TYPE(FLOAT128)
209
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT128 Z_VALUE_TYPE_FLOAT128
210
+
211
+ #endif
212
+
213
+ #if !defined(Z_FLOATING_POINT_TYPE_FLOAT80_X87) && Z_COMPILER_HAS_TYPE(FLOAT80_X87)
214
+
215
+ # if Z_COMPILER_HAS_LITERAL(FLOAT80_X87)
216
+ # define Z_FLOATING_POINT_LITERAL_FLOAT80_X87 Z_COMPILER_LITERAL(FLOAT80_X87)
217
+ # else
218
+ # define Z_FLOATING_POINT_LITERAL_FLOAT80_X87 Z_SAME
219
+ # endif
220
+
221
+ # define Z_FLOATING_POINT_TYPE_FLOAT80_X87 Z_COMPILER_TYPE(FLOAT80_X87)
222
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT80_X87 Z_VALUE_TYPE_FLOAT80_X87
223
+
224
+ #endif
225
+
226
+ #if !defined(Z_FLOATING_POINT_TYPE_FLOAT96_X87) && Z_COMPILER_HAS_TYPE(FLOAT96_X87)
227
+
228
+ # if Z_COMPILER_HAS_LITERAL(FLOAT96_X87)
229
+ # define Z_FLOATING_POINT_LITERAL_FLOAT96_X87 Z_COMPILER_LITERAL(FLOAT96_X87)
230
+ # else
231
+ # define Z_FLOATING_POINT_LITERAL_FLOAT96_X87 Z_SAME
232
+ # endif
233
+
234
+ # define Z_FLOATING_POINT_TYPE_FLOAT96_X87 Z_COMPILER_TYPE(FLOAT96_X87)
235
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT96_X87 Z_VALUE_TYPE_FLOAT96_X87
236
+
237
+ #endif
238
+
239
+ #if !defined(Z_FLOATING_POINT_TYPE_FLOAT128_X87) && Z_COMPILER_HAS_TYPE(FLOAT128_X87)
240
+
241
+ # if Z_COMPILER_HAS_LITERAL(FLOAT128_X87)
242
+ # define Z_FLOATING_POINT_LITERAL_FLOAT128_X87 Z_COMPILER_LITERAL(FLOAT128_X87)
243
+ # else
244
+ # define Z_FLOATING_POINT_LITERAL_FLOAT128_X87 Z_SAME
245
+ # endif
246
+
247
+ # define Z_FLOATING_POINT_TYPE_FLOAT128_X87 Z_COMPILER_TYPE(FLOAT128_X87)
248
+ # define Z_FLOATING_POINT_VALUE_TYPE_FLOAT128_X87 Z_VALUE_TYPE_FLOAT128_X87
249
+
250
+ #endif
251
+
252
+ #define Z_APPEND_FLOATING_POINT_FLOAT16(to) to##IEEE_754_BINARY16
253
+ #define Z_INSERT_FLOATING_POINT_FLOAT16(left, right) left##IEEE_754_BINARY16##right
254
+
255
+ #define Z_APPEND_FLOATING_POINT_FLOAT32(to) to##IEEE_754_BINARY32
256
+ #define Z_INSERT_FLOATING_POINT_FLOAT32(left, right) left##IEEE_754_BINARY32##right
257
+
258
+ #define Z_APPEND_FLOATING_POINT_FLOAT64(to) to##IEEE_754_BINARY64
259
+ #define Z_INSERT_FLOATING_POINT_FLOAT64(left, right) left##IEEE_754_BINARY64##right
260
+
261
+ #define Z_APPEND_FLOATING_POINT_FLOAT128(to) to##IEEE_754_BINARY128
262
+ #define Z_INSERT_FLOATING_POINT_FLOAT128(left, right) left##IEEE_754_BINARY128##right
263
+
264
+ #define Z_APPEND_FLOATING_POINT_FLOAT80_X87(to) to##X87_BINARY80
265
+ #define Z_INSERT_FLOATING_POINT_FLOAT80_X87(left, right) left##X87_BINARY80##right
266
+
267
+ #define Z_APPEND_FLOATING_POINT_FLOAT96_X87(to) to##X87_BINARY96
268
+ #define Z_INSERT_FLOATING_POINT_FLOAT96_X87(left, right) left##X87_BINARY96##right
269
+
270
+ #define Z_APPEND_FLOATING_POINT_FLOAT128_X87(to) to##X87_BINARY128
271
+ #define Z_INSERT_FLOATING_POINT_FLOAT128_X87(left, right) left##X87_BINARY128##right
272
+
273
+ #define Z_FLOATING_POINT_HAS_TYPE( TYPE) Z_FLOATING_POINT_HAS_TYPE_##TYPE
274
+ #define Z_FLOATING_POINT_LITERAL( TYPE) Z_FLOATING_POINT_LITERAL_##TYPE
275
+ #define Z_FLOATING_POINT_TYPE( TYPE) Z_FLOATING_POINT_TYPE_##TYPE
276
+ #define Z_FLOATING_POINT_VALUE_TYPE( TYPE) Z_FLOATING_POINT_VALUE_TYPE_##TYPE
277
+ #define Z_FLOATING_POINT_FIXED_VALUE_TYPE( TYPE) Z_FLOATING_POINT_FIXED_VALUE_TYPE_##TYPE
278
+ #define Z_FLOATING_POINT_VALUE_FORMAT( TYPE) Z_FLOATING_POINT_VALUE_FORMAT_##TYPE
279
+ #define Z_FLOATING_POINT_BIAS( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _BIAS )
280
+ #define Z_FLOATING_POINT_DECIMAL_DIGITS( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _DECIMAL_DIGITS )
281
+ #define Z_FLOATING_POINT_SIGNIFICAND_OFFSET( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _SIGNIFICAND_OFFSET )
282
+ #define Z_FLOATING_POINT_SIGNIFICAND_BITS( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _SIGNIFICAND_BITS )
283
+ #define Z_FLOATING_POINT_SIGNIFICAND_DIGITS( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _SIGNIFICAND_DIGITS )
284
+ #define Z_FLOATING_POINT_EXPONENT_OFFSET( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _EXPONENT_OFFSET )
285
+ #define Z_FLOATING_POINT_EXPONENT_BITS( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _EXPONENT_BITS )
286
+ #define Z_FLOATING_POINT_EXPONENT_RADIX( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _EXPONENT_RADIX )
287
+ #define Z_FLOATING_POINT_EXPONENT_MINIMUM( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _EXPONENT_MINIMUM )
288
+ #define Z_FLOATING_POINT_EXPONENT_MAXIMUM( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _EXPONENT_MAXIMUM )
289
+ #define Z_FLOATING_POINT_EXPONENT_10_MINIMUM(TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _EXPONENT_10_MINIMUM)
290
+ #define Z_FLOATING_POINT_EXPONENT_10_MAXIMUM(TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _EXPONENT_10_MAXIMUM)
291
+ #define Z_FLOATING_POINT_SIGN_OFFSET( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _SIGN_OFFSET )
292
+ #define Z_FLOATING_POINT_SIGN_BITS( TYPE) Z_INSERT_FLOATING_POINT_##TYPE(Z_, _SIGN_BITS )
293
+ #define Z_FLOATING_POINT_EPSILON( TYPE) Z_FLOATING_POINT_LITERAL_##TYPE(Z_INSERT_FLOATING_POINT_##TYPE(Z_, _EPSILON))
294
+ #define Z_FLOATING_POINT_MINIMUM( TYPE) Z_FLOATING_POINT_LITERAL_##TYPE(Z_INSERT_FLOATING_POINT_##TYPE(Z_, _MINIMUM))
295
+ #define Z_FLOATING_POINT_MAXIMUM( TYPE) Z_FLOATING_POINT_LITERAL_##TYPE(Z_INSERT_FLOATING_POINT_##TYPE(Z_, _MAXIMUM))
296
+
297
+ #define Z_FLOATING_POINT_INFINITY(TYPE) \
298
+ (Z_FLOATING_POINT_LITERAL_##TYPE(Z_INSERT_FLOATING_POINT_##TYPE(Z_, _MAXIMUM)) + \
299
+ Z_FLOATING_POINT_LITERAL_##TYPE(Z_INSERT_FLOATING_POINT_##TYPE(Z_, _MAXIMUM)))
300
+
301
+ #define Z_FLOATING_POINT_NAN(TYPE) \
302
+ ((Z_FLOATING_POINT_LITERAL_##TYPE(Z_INSERT_FLOATING_POINT_##TYPE(Z_, _MAXIMUM)) + \
303
+ Z_FLOATING_POINT_LITERAL_##TYPE(Z_INSERT_FLOATING_POINT_##TYPE(Z_, _MAXIMUM))) - \
304
+ (Z_FLOATING_POINT_LITERAL_##TYPE(Z_INSERT_FLOATING_POINT_##TYPE(Z_, _MAXIMUM)) + \
305
+ Z_FLOATING_POINT_LITERAL_##TYPE(Z_INSERT_FLOATING_POINT_##TYPE(Z_, _MAXIMUM))))
306
+
307
+ #include <Z/inspection/floating-point/completion.h>
308
+
309
+ #if Z_FLOATING_POINT_HAS_TYPE(FLOAT16 ) || \
310
+ Z_FLOATING_POINT_HAS_TYPE(FLOAT32 ) || \
311
+ Z_FLOATING_POINT_HAS_TYPE(FLOAT64 ) || \
312
+ Z_FLOATING_POINT_HAS_TYPE(FLOAT128)
313
+
314
+ # include <Z/formats/floating-point/IEEE 754.h>
315
+ #endif
316
+
317
+ #if Z_FLOATING_POINT_HAS_TYPE(FLOAT80_X87 ) || \
318
+ Z_FLOATING_POINT_HAS_TYPE(FLOAT96_X87 ) || \
319
+ Z_FLOATING_POINT_HAS_TYPE(FLOAT128_X87)
320
+
321
+ # include <Z/formats/floating-point/x87.h>
322
+ #endif
323
+
324
+ #endif /* _Z_inspection_floating_point_H_ */
@@ -0,0 +1,163 @@
1
+ /* Z Kit - inspection/language.h
2
+ _____ _______________
3
+ /_ /_/ -_/_ _/ _ |
4
+ /____/\___/ /__//___/_| Kit
5
+ Copyright (C) 2006-2018 Manuel Sainz de Baranda y Goñi.
6
+ Released under the terms of the GNU Lesser General Public License v3. */
7
+
8
+ #ifndef _Z_inspection_language_H_
9
+ #define _Z_inspection_language_H_
10
+
11
+ #include <Z/keys/language.h>
12
+ #include <Z/inspection/compiler.h>
13
+ #include <Z/inspection/C.h>
14
+
15
+ #if defined(__cplusplus) && (defined(__OBJC__) || defined(__OBJC2__))
16
+
17
+ # include <Z/inspection/C++.h>
18
+ # include <Z/inspection/Objective-C.h>
19
+
20
+ # define Z_LANGUAGE Z_LANGUAGE_OBJECTIVE_CPP
21
+
22
+ #elif defined(__OBJC__) || defined(__OBJC2__)
23
+
24
+ # include <Z/inspection/Objective-C.h>
25
+
26
+ # define Z_LANGUAGE Z_LANGUAGE_OBJECTIVE_C
27
+
28
+ #elif defined(__cplusplus)
29
+
30
+ # include <Z/inspection/C++.h>
31
+
32
+ # define Z_LANGUAGE Z_LANGUAGE_CPP
33
+
34
+ #else
35
+ # define Z_LANGUAGE Z_LANGUAGE_C
36
+ #endif
37
+
38
+ #define Z_LANGUAGE_INCLUDES(LANGUAGE) \
39
+ ((Z_LANGUAGE & Z_LANGUAGE_##LANGUAGE) == Z_LANGUAGE_##LANGUAGE)
40
+
41
+ #define Z_C_FLAG(FLAG) FLAG
42
+
43
+ #if Z_LANGUAGE_INCLUDES(CPP)
44
+ # define Z_CPP_FLAG(FLAG) FLAG
45
+ #else
46
+ # define Z_CPP_FLAG(FLAG) FALSE
47
+ #endif
48
+
49
+ #if Z_LANGUAGE_INCLUDES(OBJECTIVE_C)
50
+ # define Z_OBJECTIVE_C_FLAG(FLAG) FLAG
51
+ #else
52
+ # define Z_OBJECTIVE_C_FLAG(FLAG) FALSE
53
+ #endif
54
+
55
+ #if defined(Z_USE_LANGUAGE_STANDARD) || Z_COMPILER == Z_COMPILER_UNKNOWN
56
+
57
+ # define Z_LANGUAGE_HAS(LANGUAGE, WHAT) \
58
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_##WHAT)
59
+
60
+ # define Z_LANGUAGE_HAS_ATTRIBUTE(LANGUAGE, ATTRIBUTE) \
61
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_ATTRIBUTE_##ATTRIBUTE)
62
+
63
+ # define Z_LANGUAGE_HAS_LITERAL(LANGUAGE, LITERAL) \
64
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_LITERAL_##LITERAL)
65
+
66
+ # define Z_LANGUAGE_HAS_OPERATOR(LANGUAGE, OPERATOR) \
67
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_OPERATOR_##OPERATOR)
68
+
69
+ # define Z_LANGUAGE_HAS_SPECIFIER(LANGUAGE, SPECIFIER) \
70
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_SPECIFIER_##SPECIFIER)
71
+
72
+ # define Z_LANGUAGE_HAS_STORAGE_CLASS(LANGUAGE, STORAGE_CLASS) \
73
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_STORAGE_CLASS_##STORAGE_CLASS)
74
+
75
+ # define Z_LANGUAGE_HAS_TYPE(LANGUAGE, TYPE) \
76
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_TYPE_##TYPE)
77
+
78
+ # define Z_LANGUAGE_HAS_TYPE_QUALIFIER(LANGUAGE, TYPE_QUALIFIER) \
79
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_TYPE_QUALIFIER_##TYPE_QUALIFIER)
80
+
81
+ # define Z_LANGUAGE_HAS_PREPROCESSOR_DIRECTIVE(LANGUAGE, PREPROCESSOR_DIRECTIVE) \
82
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_PREPROCESSOR_DIRECTIVE_##PREPROCESSOR_DIRECTIVE)
83
+
84
+ # define Z_LANGUAGE_HAS_PREPROCESSOR_OPERATOR(LANGUAGE, PREPROCESSOR_OPERATOR) \
85
+ Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_PREPROCESSOR_OPERATOR_##PREPROCESSOR_OPERATOR)
86
+
87
+ #elif defined(Z_USE_SUPPORTED_LANGUAGE_STANDARD)
88
+
89
+ # define Z_LANGUAGE_HAS(LANGUAGE, WHAT) \
90
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_##WHAT) && \
91
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_##WHAT))
92
+
93
+ # define Z_LANGUAGE_HAS_ATTRIBUTE(LANGUAGE, ATTRIBUTE) \
94
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_ATTRIBUTE_##ATTRIBUTE) && \
95
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_ATTRIBUTE_##ATTRIBUTE))
96
+
97
+ # define Z_LANGUAGE_HAS_LITERAL(LANGUAGE, LITERAL) \
98
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_LITERAL_##LITERAL) && \
99
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_LITERAL_##LITERAL))
100
+
101
+ # define Z_LANGUAGE_HAS_OPERATOR(LANGUAGE, OPERATOR) \
102
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_OPERATOR_##OPERATOR) && \
103
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_OPERATOR_##OPERATOR))
104
+
105
+ # define Z_LANGUAGE_HAS_SPECIFIER(LANGUAGE, SPECIFIER) \
106
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_SPECIFIER_##SPECIFIER) && \
107
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_SPECIFIER_##SPECIFIER))
108
+
109
+ # define Z_LANGUAGE_HAS_STORAGE_CLASS(LANGUAGE, STORAGE_CLASS) \
110
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_STORAGE_CLASS_##STORAGE_CLASS) && \
111
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_STORAGE_CLASS_##STORAGE_CLASS))
112
+
113
+ # define Z_LANGUAGE_HAS_TYPE(LANGUAGE, TYPE) \
114
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_TYPE_##TYPE) && \
115
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_TYPE_##TYPE))
116
+
117
+ # define Z_LANGUAGE_HAS_TYPE_QUALIFIER(LANGUAGE, TYPE_QUALIFIER) \
118
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_TYPE_QUALIFIER_##TYPE_QUALIFIER) && \
119
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_TYPE_QUALIFIER_##TYPE_QUALIFIER))
120
+
121
+ # define Z_LANGUAGE_HAS_PREPROCESSOR_DIRECTIVE(LANGUAGE, PREPROCESSOR_DIRECTIVE) \
122
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_PREPROCESSOR_DIRECTIVE_##PREPROCESSOR_DIRECTIVE) && \
123
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_PREPROCESSOR_DIRECTIVE_##PREPROCESSOR_DIRECTIVE))
124
+
125
+ # define Z_LANGUAGE_HAS_PREPROCESSOR_OPERATOR(LANGUAGE, PREPROCESSOR_OPERATOR) \
126
+ (Z_##LANGUAGE##_FLAG(Z_##LANGUAGE##_HAS_PREPROCESSOR_OPERATOR_##PREPROCESSOR_OPERATOR) && \
127
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_PREPROCESSOR_OPERATOR_##PREPROCESSOR_OPERATOR))
128
+
129
+ #else
130
+
131
+ # define Z_LANGUAGE_HAS(LANGUAGE, WHAT) \
132
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_##WHAT)
133
+
134
+ # define Z_LANGUAGE_HAS_ATTRIBUTE(LANGUAGE, ATTRIBUTE) \
135
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_ATTRIBUTE_##ATTRIBUTE)
136
+
137
+ # define Z_LANGUAGE_HAS_LITERAL(LANGUAGE, LITERAL) \
138
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_LITERAL_##LITERAL)
139
+
140
+ # define Z_LANGUAGE_HAS_OPERATOR(LANGUAGE, OPERATOR) \
141
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_OPERATOR_##OPERATOR)
142
+
143
+ # define Z_LANGUAGE_HAS_SPECIFIER(LANGUAGE, SPECIFIER) \
144
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_SPECIFIER_##SPECIFIER)
145
+
146
+ # define Z_LANGUAGE_HAS_STORAGE_CLASS(LANGUAGE, STORAGE_CLASS) \
147
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_STORAGE_CLASS_##STORAGE_CLASS)
148
+
149
+ # define Z_LANGUAGE_HAS_TYPE(LANGUAGE, TYPE) \
150
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_TYPE_##TYPE)
151
+
152
+ # define Z_LANGUAGE_HAS_TYPE_QUALIFIER(LANGUAGE, TYPE_QUALIFIER) \
153
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_TYPE_QUALIFIER_##TYPE_QUALIFIER)
154
+
155
+ # define Z_LANGUAGE_HAS_PREPROCESSOR_DIRECTIVE(LANGUAGE, PREPROCESSOR_DIRECTIVE) \
156
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_PREPROCESSOR_DIRECTIVE_##PREPROCESSOR_DIRECTIVE)
157
+
158
+ # define Z_LANGUAGE_HAS_PREPROCESSOR_OPERATOR(LANGUAGE, PREPROCESSOR_OPERATOR) \
159
+ Z_##LANGUAGE##_FLAG(Z_COMPILER_##LANGUAGE##_HAS_PREPROCESSOR_OPERATOR_##PREPROCESSOR_OPERATOR)
160
+
161
+ #endif
162
+
163
+ #endif /* _Z_inspection_language_H_ */
@@ -0,0 +1,9 @@
1
+ /* Z Kit - inspection/platform/detection.h
2
+ _____ _______________
3
+ /_ /_/ -_/_ _/ _ |
4
+ /____/\___/ /__//___/_| Kit
5
+ Copyright (C) 2006-2018 Manuel Sainz de Baranda y Goñi.
6
+ Released under the terms of the GNU Lesser General Public License v3. */
7
+
8
+
9
+ /* inspection/platform/detection.h EOF */
@@ -0,0 +1,29 @@
1
+ /* Z Kit - inspection/platform.h
2
+ _____ _______________
3
+ /_ /_/ -_/_ _/ _ |
4
+ /____/\___/ /__//___/_| Kit
5
+ Copyright (C) 2006-2018 Manuel Sainz de Baranda y Goñi.
6
+ Released under the terms of the GNU Lesser General Public License v3. */
7
+
8
+ #ifndef _Z_inspection_platform_H_
9
+ #define _Z_inspection_platform_H_
10
+
11
+ #include <Z/keys/platform.h>
12
+
13
+ #ifdef Z_PLATFORM
14
+ # include <Z/constants/base.h>
15
+ #else
16
+ # include <Z/inspection/compiler.h>
17
+
18
+ # ifdef Z_COMPILER_PLATFORM
19
+ # define Z_PLATFORM Z_COMPILER_PLATFORM
20
+ # else
21
+ # include <Z/inspection/platform/detection.h>
22
+ # endif
23
+ #endif
24
+
25
+ #ifndef Z_PLATFORM
26
+ # define Z_PLATFORM Z_PLATFORM_UNKNOWN
27
+ #endif
28
+
29
+ #endif /* _Z_inspection_platform_H_ */
@@ -0,0 +1,27 @@
1
+ /* Z Kit - keys/C++.h
2
+ _____ _______________
3
+ /_ /_/ -_/_ _/ _ |
4
+ /____/\___/ /__//___/_| Kit
5
+ Copyright (C) 2006-2018 Manuel Sainz de Baranda y Goñi.
6
+ Released under the terms of the GNU Lesser General Public License v3. */
7
+
8
+ #ifndef _Z_keys_CPP_H_
9
+ #define _Z_keys_CPP_H_
10
+
11
+ #define Z_CPP85 1
12
+ #define Z_CPP89 2
13
+ #define Z_CPP98 3
14
+ #define Z_CPP03 4
15
+ #define Z_CPP11 5
16
+ #define Z_CPP14 6
17
+ #define Z_CPP17 7
18
+
19
+ #define Z_CPP_STRING_CPP85 "C++ v1.0 (C++85)"
20
+ #define Z_CPP_STRING_CPP89 "C++ v2.0 (C++89)"
21
+ #define Z_CPP_STRING_CPP98 "ISO/IEC 14882:1998 (C++98)"
22
+ #define Z_CPP_STRING_CPP03 "ISO/IEC 14882:2003 (C++03)"
23
+ #define Z_CPP_STRING_CPP11 "ISO/IEC 14882:2011 (C++11)"
24
+ #define Z_CPP_STRING_CPP14 "ISO/IEC 14882:2014 (C++14)"
25
+ #define Z_CPP_STRING_CPP17 "ISO/IEC 14882:2017 (C++17)"
26
+
27
+ #endif /* _Z_keys_CPP_H_ */
@@ -0,0 +1,29 @@
1
+ /* Z Kit - keys/C.h
2
+ _____ _______________
3
+ /_ /_/ -_/_ _/ _ |
4
+ /____/\___/ /__//___/_| Kit
5
+ Copyright (C) 2006-2018 Manuel Sainz de Baranda y Goñi.
6
+ Released under the terms of the GNU Lesser General Public License v3. */
7
+
8
+ #ifndef _Z_keys_C_H_
9
+ #define _Z_keys_C_H_
10
+
11
+ #define Z_KR_C 1
12
+ #define Z_C89 2
13
+ #define Z_C90 3
14
+ #define Z_C94 4
15
+ #define Z_C95 Z_C94
16
+ #define Z_C99 5
17
+ #define Z_C11 6
18
+ #define Z_C18 7
19
+
20
+ #define Z_C_STRING_KR_C "K&R C"
21
+ #define Z_C_STRING_C89 "ANSI X3.159-1989 (C89)"
22
+ #define Z_C_STRING_C90 "ISO/IEC 9899:1990 (C90)"
23
+ #define Z_C_STRING_C94 "ISO/IEC 9899-1:1994 (C94)"
24
+ #define Z_C_STRING_C95 Z_C_STRING_C94
25
+ #define Z_C_STRING_C99 "ISO/IEC 9899:1999 (C99)"
26
+ #define Z_C_STRING_C11 "ISO/IEC 9899:2011 (C11)"
27
+ #define Z_C_STRING_C18 "ISO/IEC 9899:2018 (C18)"
28
+
29
+ #endif /* _Z_keys_C_H_ */
@@ -0,0 +1,80 @@
1
+ /* Z Kit - keys/CPU.h
2
+ _____ _______________
3
+ /_ /_/ -_/_ _/ _ |
4
+ /____/\___/ /__//___/_| Kit
5
+ Copyright (C) 2006-2018 Manuel Sainz de Baranda y Goñi.
6
+ Released under the terms of the GNU Lesser General Public License v3. */
7
+
8
+ #ifndef _Z_keys_CPU_H_
9
+ #define _Z_keys_CPU_H_
10
+
11
+ #define Z_CPU_ARCHITECTURE_UNKNOWN 0
12
+ #define Z_CPU_ARCHITECTURE_6502 1 /* MOS Technology */
13
+ #define Z_CPU_ARCHITECTURE_AARCH32 2 /* Acorn Computers */
14
+ #define Z_CPU_ARCHITECTURE_AARCH64 3 /* ARM */
15
+ #define Z_CPU_ARCHITECTURE_ALPHA 4 /* DEC */
16
+ #define Z_CPU_ARCHITECTURE_BLACKFIN 5 /* Analog Devices */
17
+ #define Z_CPU_ARCHITECTURE_CONVEX 6 /* Convex Computer */
18
+ #define Z_CPU_ARCHITECTURE_EPIPHANY 7 /* Adapteva */
19
+ #define Z_CPU_ARCHITECTURE_ESA_370 8 /* IBM */
20
+ #define Z_CPU_ARCHITECTURE_ESA_390 9 /* IBM */
21
+ #define Z_CPU_ARCHITECTURE_HEXAGON 10 /* Qualcomm */
22
+ #define Z_CPU_ARCHITECTURE_ITANIUM 11 /* Hewlett-Packard / Intel */
23
+ #define Z_CPU_ARCHITECTURE_LANAI 12 /* Google (?) */
24
+ #define Z_CPU_ARCHITECTURE_M68K 13 /* Motorola */
25
+ #define Z_CPU_ARCHITECTURE_MIPS 14 /* MIPS Computer Systems */
26
+ #define Z_CPU_ARCHITECTURE_MIPS64 15 /* MIPS Computer Systems */
27
+ #define Z_CPU_ARCHITECTURE_MSP430 16 /* Texas Instruments */
28
+ #define Z_CPU_ARCHITECTURE_PA_RISC 17 /* Hewlett-Packard */
29
+ #define Z_CPU_ARCHITECTURE_PA_RISC_2 18 /* Hewlett-Packard */
30
+ #define Z_CPU_ARCHITECTURE_POWERPC_32BIT 19 /* AIM alliance */
31
+ #define Z_CPU_ARCHITECTURE_POWERPC_64BIT 20 /* IBM */
32
+ #define Z_CPU_ARCHITECTURE_RV32E 21 /* University of California, Berkeley */
33
+ #define Z_CPU_ARCHITECTURE_RV32I 22 /* University of California, Berkeley */
34
+ #define Z_CPU_ARCHITECTURE_RV64I 23 /* University of California, Berkeley */
35
+ #define Z_CPU_ARCHITECTURE_RV128I 24 /* University of California, Berkeley */
36
+ #define Z_CPU_ARCHITECTURE_SPARC 25 /* Sun Microsystems */
37
+ #define Z_CPU_ARCHITECTURE_SPARC_V9 26 /* SPARC International */
38
+ #define Z_CPU_ARCHITECTURE_SUPERH 27 /* Hitachi */
39
+ #define Z_CPU_ARCHITECTURE_SUPERH_5 28 /* Hitachi */
40
+ #define Z_CPU_ARCHITECTURE_X86_16 29 /* Intel */
41
+ #define Z_CPU_ARCHITECTURE_X86_32 30 /* Intel */
42
+ #define Z_CPU_ARCHITECTURE_X86_64 31 /* AMD */
43
+ #define Z_CPU_ARCHITECTURE_Z_ARCHITECTURE 32 /* IBM */
44
+ #define Z_CPU_ARCHITECTURE_Z80 33 /* Zilog */
45
+
46
+ #define Z_CPU_ARCHITECTURE_STRING_6502 "6502"
47
+ #define Z_CPU_ARCHITECTURE_STRING_AARCH32 "AArch32"
48
+ #define Z_CPU_ARCHITECTURE_STRING_AARCH64 "AArch64"
49
+ #define Z_CPU_ARCHITECTURE_STRING_ALPHA "Alpha"
50
+ #define Z_CPU_ARCHITECTURE_STRING_BLACKFIN "Blackfin"
51
+ #define Z_CPU_ARCHITECTURE_STRING_CONVEX "Convex"
52
+ #define Z_CPU_ARCHITECTURE_STRING_EPIPHANY "Epiphany"
53
+ #define Z_CPU_ARCHITECTURE_STRING_ESA_370 "ESA/370"
54
+ #define Z_CPU_ARCHITECTURE_STRING_ESA_390 "ESA/390"
55
+ #define Z_CPU_ARCHITECTURE_STRING_HEXAGON "Hexagon"
56
+ #define Z_CPU_ARCHITECTURE_STRING_ITANIUM "Itanium"
57
+ #define Z_CPU_ARCHITECTURE_STRING_LANAI "Lanai"
58
+ #define Z_CPU_ARCHITECTURE_STRING_M68K "M68K"
59
+ #define Z_CPU_ARCHITECTURE_STRING_MIPS "MIPS"
60
+ #define Z_CPU_ARCHITECTURE_STRING_MIPS64 "MIPS64"
61
+ #define Z_CPU_ARCHITECTURE_STRING_MSP430 "MSP430"
62
+ #define Z_CPU_ARCHITECTURE_STRING_PA_RISC "PA-RISC"
63
+ #define Z_CPU_ARCHITECTURE_STRING_PA_RISC_2 "PA-RISC 2.0"
64
+ #define Z_CPU_ARCHITECTURE_STRING_POWERPC_32BIT "PowerPC 32-bit"
65
+ #define Z_CPU_ARCHITECTURE_STRING_POWERPC_64BIT "PowerPC 64-bit"
66
+ #define Z_CPU_ARCHITECTURE_STRING_RV32E "RV32E"
67
+ #define Z_CPU_ARCHITECTURE_STRING_RV32I "RV32I"
68
+ #define Z_CPU_ARCHITECTURE_STRING_RV64I "RV64I"
69
+ #define Z_CPU_ARCHITECTURE_STRING_RV128I "RV128I"
70
+ #define Z_CPU_ARCHITECTURE_STRING_SPARC "SPARC"
71
+ #define Z_CPU_ARCHITECTURE_STRING_SPARC_V9 "SPARC V9"
72
+ #define Z_CPU_ARCHITECTURE_STRING_SUPERH "SuperH"
73
+ #define Z_CPU_ARCHITECTURE_STRING_SUPERH_5 "SuperH 5"
74
+ #define Z_CPU_ARCHITECTURE_STRING_X86_16 "x86-16"
75
+ #define Z_CPU_ARCHITECTURE_STRING_X86_32 "x86-32"
76
+ #define Z_CPU_ARCHITECTURE_STRING_X86_64 "x86-64"
77
+ #define Z_CPU_ARCHITECTURE_STRING_Z_ARCHITECTURE "z/Architecture"
78
+ #define Z_CPU_ARCHITECTURE_STRING_Z80 "Z80"
79
+
80
+ #endif /* _Z_keys_CPU_H_ */