v86 0.3.6 → 0.4.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 (369) hide show
  1. package/Readme.md +17 -6
  2. package/bios/seabios/.config +113 -0
  3. package/bios/seabios/.config.old +114 -0
  4. package/bios/seabios/.gitignore +4 -0
  5. package/bios/seabios/COPYING +674 -0
  6. package/bios/seabios/COPYING.LESSER +165 -0
  7. package/bios/seabios/Makefile +286 -0
  8. package/bios/seabios/README +17 -0
  9. package/bios/seabios/docs/Build_overview.md +104 -0
  10. package/bios/seabios/docs/Contributing.md +20 -0
  11. package/bios/seabios/docs/Debugging.md +111 -0
  12. package/bios/seabios/docs/Developer_Documentation.md +25 -0
  13. package/bios/seabios/docs/Developer_links.md +86 -0
  14. package/bios/seabios/docs/Download.md +27 -0
  15. package/bios/seabios/docs/Execution_and_code_flow.md +178 -0
  16. package/bios/seabios/docs/Linking_overview.md +160 -0
  17. package/bios/seabios/docs/Mailinglist.md +8 -0
  18. package/bios/seabios/docs/Memory_Model.md +253 -0
  19. package/bios/seabios/docs/README +5 -0
  20. package/bios/seabios/docs/Releases.md +482 -0
  21. package/bios/seabios/docs/Runtime_config.md +193 -0
  22. package/bios/seabios/docs/SeaBIOS.md +17 -0
  23. package/bios/seabios/docs/SeaVGABIOS.md +39 -0
  24. package/bios/seabios/out/autoconf.h +117 -0
  25. package/bios/seabios/out/include/config/acpi/dsdt.h +0 -0
  26. package/bios/seabios/out/include/config/acpi.h +0 -0
  27. package/bios/seabios/out/include/config/ahci.h +0 -0
  28. package/bios/seabios/out/include/config/apmbios.h +0 -0
  29. package/bios/seabios/out/include/config/ata/dma.h +0 -0
  30. package/bios/seabios/out/include/config/ata/pio32.h +0 -0
  31. package/bios/seabios/out/include/config/ata.h +0 -0
  32. package/bios/seabios/out/include/config/auto.conf +69 -0
  33. package/bios/seabios/out/include/config/auto.conf.cmd +9 -0
  34. package/bios/seabios/out/include/config/boot.h +0 -0
  35. package/bios/seabios/out/include/config/bootorder.h +0 -0
  36. package/bios/seabios/out/include/config/build/vgabios.h +0 -0
  37. package/bios/seabios/out/include/config/call32/smm.h +0 -0
  38. package/bios/seabios/out/include/config/cdrom/boot.h +0 -0
  39. package/bios/seabios/out/include/config/cdrom/emu.h +0 -0
  40. package/bios/seabios/out/include/config/debug/level.h +0 -0
  41. package/bios/seabios/out/include/config/drives.h +0 -0
  42. package/bios/seabios/out/include/config/entry/extrastack.h +0 -0
  43. package/bios/seabios/out/include/config/esp/scsi.h +0 -0
  44. package/bios/seabios/out/include/config/flash/floppy.h +0 -0
  45. package/bios/seabios/out/include/config/floppy.h +0 -0
  46. package/bios/seabios/out/include/config/fw/romfile/load.h +0 -0
  47. package/bios/seabios/out/include/config/hardware/irq.h +0 -0
  48. package/bios/seabios/out/include/config/kbd/call/int15/4f.h +0 -0
  49. package/bios/seabios/out/include/config/keyboard.h +0 -0
  50. package/bios/seabios/out/include/config/lpt.h +0 -0
  51. package/bios/seabios/out/include/config/lsi/scsi.h +0 -0
  52. package/bios/seabios/out/include/config/malloc/uppermemory.h +0 -0
  53. package/bios/seabios/out/include/config/megasas.h +0 -0
  54. package/bios/seabios/out/include/config/mouse.h +0 -0
  55. package/bios/seabios/out/include/config/mpt/scsi.h +0 -0
  56. package/bios/seabios/out/include/config/mptable.h +0 -0
  57. package/bios/seabios/out/include/config/mtrr/init.h +0 -0
  58. package/bios/seabios/out/include/config/optionroms.h +0 -0
  59. package/bios/seabios/out/include/config/override/pci/id.h +0 -0
  60. package/bios/seabios/out/include/config/pcibios.h +0 -0
  61. package/bios/seabios/out/include/config/pirtable.h +0 -0
  62. package/bios/seabios/out/include/config/pmm.h +0 -0
  63. package/bios/seabios/out/include/config/pmtimer.h +0 -0
  64. package/bios/seabios/out/include/config/pnpbios.h +0 -0
  65. package/bios/seabios/out/include/config/ps2port.h +0 -0
  66. package/bios/seabios/out/include/config/pvscsi.h +0 -0
  67. package/bios/seabios/out/include/config/qemu/hardware.h +0 -0
  68. package/bios/seabios/out/include/config/qemu.h +0 -0
  69. package/bios/seabios/out/include/config/rom/size.h +0 -0
  70. package/bios/seabios/out/include/config/rtc/timer.h +0 -0
  71. package/bios/seabios/out/include/config/s3/resume.h +0 -0
  72. package/bios/seabios/out/include/config/sdcard.h +0 -0
  73. package/bios/seabios/out/include/config/serial.h +0 -0
  74. package/bios/seabios/out/include/config/tcgbios.h +0 -0
  75. package/bios/seabios/out/include/config/threads.h +0 -0
  76. package/bios/seabios/out/include/config/tristate.conf +4 -0
  77. package/bios/seabios/out/include/config/tsc/timer.h +0 -0
  78. package/bios/seabios/out/include/config/use/smm.h +0 -0
  79. package/bios/seabios/out/include/config/vga/allocate/extra/stack.h +0 -0
  80. package/bios/seabios/out/include/config/vga/bochs/stdvga.h +0 -0
  81. package/bios/seabios/out/include/config/vga/bochs.h +0 -0
  82. package/bios/seabios/out/include/config/vga/did.h +0 -0
  83. package/bios/seabios/out/include/config/vga/extra/stack/size.h +0 -0
  84. package/bios/seabios/out/include/config/vga/fixup/asm.h +0 -0
  85. package/bios/seabios/out/include/config/vga/pci.h +0 -0
  86. package/bios/seabios/out/include/config/vga/stdvga/ports.h +0 -0
  87. package/bios/seabios/out/include/config/vga/vbe.h +0 -0
  88. package/bios/seabios/out/include/config/vga/vid.h +0 -0
  89. package/bios/seabios/out/include/config/vgahooks.h +0 -0
  90. package/bios/seabios/out/include/config/virtio/blk.h +0 -0
  91. package/bios/seabios/out/include/config/virtio/scsi.h +0 -0
  92. package/bios/seabios/out/include/config/xen.h +0 -0
  93. package/bios/seabios/out/scripts/kconfig/conf +0 -0
  94. package/bios/seabios/out/scripts/kconfig/conf.o +0 -0
  95. package/bios/seabios/out/scripts/kconfig/zconf.hash.c +289 -0
  96. package/bios/seabios/out/scripts/kconfig/zconf.lex.c +2420 -0
  97. package/bios/seabios/out/scripts/kconfig/zconf.tab.c +2538 -0
  98. package/bios/seabios/out/scripts/kconfig/zconf.tab.o +0 -0
  99. package/bios/seabios/scripts/acpi_extract.py +366 -0
  100. package/bios/seabios/scripts/acpi_extract_preprocess.py +41 -0
  101. package/bios/seabios/scripts/buildrom.py +56 -0
  102. package/bios/seabios/scripts/buildversion.py +134 -0
  103. package/bios/seabios/scripts/checkrom.py +95 -0
  104. package/bios/seabios/scripts/checkstack.py +226 -0
  105. package/bios/seabios/scripts/checksum.py +16 -0
  106. package/bios/seabios/scripts/encodeint.py +21 -0
  107. package/bios/seabios/scripts/gen-offsets.sh +17 -0
  108. package/bios/seabios/scripts/kconfig/.gitignore +22 -0
  109. package/bios/seabios/scripts/kconfig/Makefile +331 -0
  110. package/bios/seabios/scripts/kconfig/POTFILES.in +12 -0
  111. package/bios/seabios/scripts/kconfig/check.sh +13 -0
  112. package/bios/seabios/scripts/kconfig/conf.c +718 -0
  113. package/bios/seabios/scripts/kconfig/confdata.c +1250 -0
  114. package/bios/seabios/scripts/kconfig/expr.c +1168 -0
  115. package/bios/seabios/scripts/kconfig/expr.h +241 -0
  116. package/bios/seabios/scripts/kconfig/gconf.c +1542 -0
  117. package/bios/seabios/scripts/kconfig/gconf.glade +661 -0
  118. package/bios/seabios/scripts/kconfig/images.c +326 -0
  119. package/bios/seabios/scripts/kconfig/kxgettext.c +235 -0
  120. package/bios/seabios/scripts/kconfig/lex.zconf.c +2430 -0
  121. package/bios/seabios/scripts/kconfig/list.h +131 -0
  122. package/bios/seabios/scripts/kconfig/lkc.h +200 -0
  123. package/bios/seabios/scripts/kconfig/lkc_proto.h +57 -0
  124. package/bios/seabios/scripts/kconfig/lxdialog/.gitignore +4 -0
  125. package/bios/seabios/scripts/kconfig/lxdialog/BIG.FAT.WARNING +4 -0
  126. package/bios/seabios/scripts/kconfig/lxdialog/check-lxdialog.sh +87 -0
  127. package/bios/seabios/scripts/kconfig/lxdialog/checklist.c +332 -0
  128. package/bios/seabios/scripts/kconfig/lxdialog/dialog.h +257 -0
  129. package/bios/seabios/scripts/kconfig/lxdialog/inputbox.c +301 -0
  130. package/bios/seabios/scripts/kconfig/lxdialog/menubox.c +437 -0
  131. package/bios/seabios/scripts/kconfig/lxdialog/textbox.c +408 -0
  132. package/bios/seabios/scripts/kconfig/lxdialog/util.c +713 -0
  133. package/bios/seabios/scripts/kconfig/lxdialog/yesno.c +114 -0
  134. package/bios/seabios/scripts/kconfig/mconf.c +1036 -0
  135. package/bios/seabios/scripts/kconfig/menu.c +697 -0
  136. package/bios/seabios/scripts/kconfig/merge_config.sh +150 -0
  137. package/bios/seabios/scripts/kconfig/nconf.c +1556 -0
  138. package/bios/seabios/scripts/kconfig/nconf.gui.c +656 -0
  139. package/bios/seabios/scripts/kconfig/nconf.h +96 -0
  140. package/bios/seabios/scripts/kconfig/qconf.cc +1795 -0
  141. package/bios/seabios/scripts/kconfig/qconf.h +338 -0
  142. package/bios/seabios/scripts/kconfig/streamline_config.pl +647 -0
  143. package/bios/seabios/scripts/kconfig/symbol.c +1373 -0
  144. package/bios/seabios/scripts/kconfig/util.c +157 -0
  145. package/bios/seabios/scripts/kconfig/zconf.gperf +48 -0
  146. package/bios/seabios/scripts/kconfig/zconf.hash.c_shipped +289 -0
  147. package/bios/seabios/scripts/kconfig/zconf.l +363 -0
  148. package/bios/seabios/scripts/kconfig/zconf.lex.c_shipped +2420 -0
  149. package/bios/seabios/scripts/kconfig/zconf.tab.c_shipped +2538 -0
  150. package/bios/seabios/scripts/kconfig/zconf.y +733 -0
  151. package/bios/seabios/scripts/layoutrom.py +705 -0
  152. package/bios/seabios/scripts/python23compat.py +14 -0
  153. package/bios/seabios/scripts/readserial.py +190 -0
  154. package/bios/seabios/scripts/tarball.sh +36 -0
  155. package/bios/seabios/scripts/test-build.sh +90 -0
  156. package/bios/seabios/scripts/transdump.py +53 -0
  157. package/bios/seabios/scripts/vgafixup.py +96 -0
  158. package/bios/seabios/src/Kconfig +579 -0
  159. package/bios/seabios/src/apm.c +215 -0
  160. package/bios/seabios/src/asm-offsets.c +23 -0
  161. package/bios/seabios/src/biosvar.h +130 -0
  162. package/bios/seabios/src/block.c +623 -0
  163. package/bios/seabios/src/block.h +121 -0
  164. package/bios/seabios/src/bmp.c +117 -0
  165. package/bios/seabios/src/boot.c +793 -0
  166. package/bios/seabios/src/bootsplash.c +255 -0
  167. package/bios/seabios/src/bregs.h +80 -0
  168. package/bios/seabios/src/byteorder.h +71 -0
  169. package/bios/seabios/src/cdrom.c +322 -0
  170. package/bios/seabios/src/clock.c +506 -0
  171. package/bios/seabios/src/code16gcc.s +1 -0
  172. package/bios/seabios/src/config.h +108 -0
  173. package/bios/seabios/src/cp437.c +275 -0
  174. package/bios/seabios/src/cp437.h +1 -0
  175. package/bios/seabios/src/disk.c +779 -0
  176. package/bios/seabios/src/e820map.c +152 -0
  177. package/bios/seabios/src/e820map.h +26 -0
  178. package/bios/seabios/src/entryfuncs.S +165 -0
  179. package/bios/seabios/src/farptr.h +208 -0
  180. package/bios/seabios/src/font.c +139 -0
  181. package/bios/seabios/src/fw/acpi-dsdt-cpu-hotplug.dsl +78 -0
  182. package/bios/seabios/src/fw/acpi-dsdt-dbug.dsl +26 -0
  183. package/bios/seabios/src/fw/acpi-dsdt-hpet.dsl +36 -0
  184. package/bios/seabios/src/fw/acpi-dsdt-isa.dsl +102 -0
  185. package/bios/seabios/src/fw/acpi-dsdt-pci-crs.dsl +90 -0
  186. package/bios/seabios/src/fw/acpi-dsdt.dsl +342 -0
  187. package/bios/seabios/src/fw/acpi-dsdt.hex +554 -0
  188. package/bios/seabios/src/fw/acpi.c +685 -0
  189. package/bios/seabios/src/fw/biostables.c +491 -0
  190. package/bios/seabios/src/fw/coreboot.c +569 -0
  191. package/bios/seabios/src/fw/csm.c +347 -0
  192. package/bios/seabios/src/fw/dev-pci.h +52 -0
  193. package/bios/seabios/src/fw/dev-piix.h +29 -0
  194. package/bios/seabios/src/fw/dev-q35.h +52 -0
  195. package/bios/seabios/src/fw/lzmadecode.c +398 -0
  196. package/bios/seabios/src/fw/lzmadecode.h +67 -0
  197. package/bios/seabios/src/fw/mptable.c +197 -0
  198. package/bios/seabios/src/fw/mtrr.c +105 -0
  199. package/bios/seabios/src/fw/multiboot.c +111 -0
  200. package/bios/seabios/src/fw/paravirt.c +624 -0
  201. package/bios/seabios/src/fw/paravirt.h +63 -0
  202. package/bios/seabios/src/fw/pciinit.c +1187 -0
  203. package/bios/seabios/src/fw/pirtable.c +103 -0
  204. package/bios/seabios/src/fw/q35-acpi-dsdt.dsl +450 -0
  205. package/bios/seabios/src/fw/romfile_loader.c +259 -0
  206. package/bios/seabios/src/fw/romfile_loader.h +91 -0
  207. package/bios/seabios/src/fw/shadow.c +208 -0
  208. package/bios/seabios/src/fw/smbios.c +585 -0
  209. package/bios/seabios/src/fw/smm.c +269 -0
  210. package/bios/seabios/src/fw/smp.c +194 -0
  211. package/bios/seabios/src/fw/ssdt-misc.dsl +104 -0
  212. package/bios/seabios/src/fw/ssdt-misc.hex +88 -0
  213. package/bios/seabios/src/fw/ssdt-pcihp.dsl +36 -0
  214. package/bios/seabios/src/fw/ssdt-pcihp.hex +38 -0
  215. package/bios/seabios/src/fw/ssdt-proc.dsl +48 -0
  216. package/bios/seabios/src/fw/ssdt-proc.hex +35 -0
  217. package/bios/seabios/src/fw/xen.c +149 -0
  218. package/bios/seabios/src/fw/xen.h +125 -0
  219. package/bios/seabios/src/gen-defs.h +19 -0
  220. package/bios/seabios/src/hw/ahci.c +697 -0
  221. package/bios/seabios/src/hw/ahci.h +201 -0
  222. package/bios/seabios/src/hw/ata.c +1046 -0
  223. package/bios/seabios/src/hw/ata.h +163 -0
  224. package/bios/seabios/src/hw/blockcmd.c +372 -0
  225. package/bios/seabios/src/hw/blockcmd.h +114 -0
  226. package/bios/seabios/src/hw/dma.c +67 -0
  227. package/bios/seabios/src/hw/esp-scsi.c +241 -0
  228. package/bios/seabios/src/hw/esp-scsi.h +8 -0
  229. package/bios/seabios/src/hw/floppy.c +741 -0
  230. package/bios/seabios/src/hw/lsi-scsi.c +221 -0
  231. package/bios/seabios/src/hw/lsi-scsi.h +8 -0
  232. package/bios/seabios/src/hw/megasas.c +405 -0
  233. package/bios/seabios/src/hw/megasas.h +8 -0
  234. package/bios/seabios/src/hw/mpt-scsi.c +319 -0
  235. package/bios/seabios/src/hw/mpt-scsi.h +8 -0
  236. package/bios/seabios/src/hw/nvme-int.h +199 -0
  237. package/bios/seabios/src/hw/nvme.c +708 -0
  238. package/bios/seabios/src/hw/nvme.h +17 -0
  239. package/bios/seabios/src/hw/pci.c +133 -0
  240. package/bios/seabios/src/hw/pci.h +47 -0
  241. package/bios/seabios/src/hw/pci_ids.h +2632 -0
  242. package/bios/seabios/src/hw/pci_regs.h +556 -0
  243. package/bios/seabios/src/hw/pcidevice.c +192 -0
  244. package/bios/seabios/src/hw/pcidevice.h +76 -0
  245. package/bios/seabios/src/hw/pic.c +115 -0
  246. package/bios/seabios/src/hw/pic.h +60 -0
  247. package/bios/seabios/src/hw/ps2port.c +543 -0
  248. package/bios/seabios/src/hw/ps2port.h +67 -0
  249. package/bios/seabios/src/hw/pvscsi.c +333 -0
  250. package/bios/seabios/src/hw/pvscsi.h +8 -0
  251. package/bios/seabios/src/hw/ramdisk.c +108 -0
  252. package/bios/seabios/src/hw/rtc.c +100 -0
  253. package/bios/seabios/src/hw/rtc.h +75 -0
  254. package/bios/seabios/src/hw/sdcard.c +572 -0
  255. package/bios/seabios/src/hw/serialio.c +113 -0
  256. package/bios/seabios/src/hw/serialio.h +29 -0
  257. package/bios/seabios/src/hw/timer.c +259 -0
  258. package/bios/seabios/src/hw/tpm_drivers.c +636 -0
  259. package/bios/seabios/src/hw/tpm_drivers.h +127 -0
  260. package/bios/seabios/src/hw/usb-ehci.c +650 -0
  261. package/bios/seabios/src/hw/usb-ehci.h +177 -0
  262. package/bios/seabios/src/hw/usb-hid.c +442 -0
  263. package/bios/seabios/src/hw/usb-hid.h +29 -0
  264. package/bios/seabios/src/hw/usb-hub.c +205 -0
  265. package/bios/seabios/src/hw/usb-hub.h +64 -0
  266. package/bios/seabios/src/hw/usb-msc.c +222 -0
  267. package/bios/seabios/src/hw/usb-msc.h +10 -0
  268. package/bios/seabios/src/hw/usb-ohci.c +568 -0
  269. package/bios/seabios/src/hw/usb-ohci.h +144 -0
  270. package/bios/seabios/src/hw/usb-uas.c +289 -0
  271. package/bios/seabios/src/hw/usb-uas.h +9 -0
  272. package/bios/seabios/src/hw/usb-uhci.c +571 -0
  273. package/bios/seabios/src/hw/usb-uhci.h +128 -0
  274. package/bios/seabios/src/hw/usb-xhci.c +1161 -0
  275. package/bios/seabios/src/hw/usb-xhci.h +133 -0
  276. package/bios/seabios/src/hw/usb.c +499 -0
  277. package/bios/seabios/src/hw/usb.h +254 -0
  278. package/bios/seabios/src/hw/virtio-blk.c +211 -0
  279. package/bios/seabios/src/hw/virtio-blk.h +43 -0
  280. package/bios/seabios/src/hw/virtio-pci.c +501 -0
  281. package/bios/seabios/src/hw/virtio-pci.h +151 -0
  282. package/bios/seabios/src/hw/virtio-ring.c +147 -0
  283. package/bios/seabios/src/hw/virtio-ring.h +121 -0
  284. package/bios/seabios/src/hw/virtio-scsi.c +220 -0
  285. package/bios/seabios/src/hw/virtio-scsi.h +47 -0
  286. package/bios/seabios/src/jpeg.c +1055 -0
  287. package/bios/seabios/src/kbd.c +599 -0
  288. package/bios/seabios/src/list.h +91 -0
  289. package/bios/seabios/src/malloc.c +561 -0
  290. package/bios/seabios/src/malloc.h +70 -0
  291. package/bios/seabios/src/memmap.h +21 -0
  292. package/bios/seabios/src/misc.c +195 -0
  293. package/bios/seabios/src/mouse.c +342 -0
  294. package/bios/seabios/src/optionroms.c +475 -0
  295. package/bios/seabios/src/output.c +584 -0
  296. package/bios/seabios/src/output.h +68 -0
  297. package/bios/seabios/src/pcibios.c +241 -0
  298. package/bios/seabios/src/pmm.c +176 -0
  299. package/bios/seabios/src/pnpbios.c +88 -0
  300. package/bios/seabios/src/post.c +337 -0
  301. package/bios/seabios/src/resume.c +157 -0
  302. package/bios/seabios/src/romfile.c +146 -0
  303. package/bios/seabios/src/romfile.h +21 -0
  304. package/bios/seabios/src/romlayout.S +698 -0
  305. package/bios/seabios/src/sercon.c +677 -0
  306. package/bios/seabios/src/serial.c +317 -0
  307. package/bios/seabios/src/sha1.c +147 -0
  308. package/bios/seabios/src/sha1.h +8 -0
  309. package/bios/seabios/src/stacks.c +771 -0
  310. package/bios/seabios/src/stacks.h +68 -0
  311. package/bios/seabios/src/std/LegacyBios.h +985 -0
  312. package/bios/seabios/src/std/acpi.h +323 -0
  313. package/bios/seabios/src/std/bda.h +174 -0
  314. package/bios/seabios/src/std/disk.h +175 -0
  315. package/bios/seabios/src/std/mptable.h +77 -0
  316. package/bios/seabios/src/std/multiboot.h +260 -0
  317. package/bios/seabios/src/std/optionrom.h +59 -0
  318. package/bios/seabios/src/std/pirtable.h +35 -0
  319. package/bios/seabios/src/std/pmm.h +19 -0
  320. package/bios/seabios/src/std/pnpbios.h +24 -0
  321. package/bios/seabios/src/std/smbios.h +167 -0
  322. package/bios/seabios/src/std/tcg.h +554 -0
  323. package/bios/seabios/src/std/vbe.h +156 -0
  324. package/bios/seabios/src/std/vga.h +63 -0
  325. package/bios/seabios/src/string.c +251 -0
  326. package/bios/seabios/src/string.h +31 -0
  327. package/bios/seabios/src/system.c +357 -0
  328. package/bios/seabios/src/tcgbios.c +2014 -0
  329. package/bios/seabios/src/tcgbios.h +19 -0
  330. package/bios/seabios/src/types.h +156 -0
  331. package/bios/seabios/src/util.h +251 -0
  332. package/bios/seabios/src/version.c +5 -0
  333. package/bios/seabios/src/vgahooks.c +355 -0
  334. package/bios/seabios/src/x86.c +23 -0
  335. package/bios/seabios/src/x86.h +277 -0
  336. package/bios/seabios/vgasrc/Kconfig +211 -0
  337. package/bios/seabios/vgasrc/bochsdisplay.c +59 -0
  338. package/bios/seabios/vgasrc/bochsvga.c +447 -0
  339. package/bios/seabios/vgasrc/bochsvga.h +57 -0
  340. package/bios/seabios/vgasrc/cbvga.c +337 -0
  341. package/bios/seabios/vgasrc/clext.c +627 -0
  342. package/bios/seabios/vgasrc/geodevga.c +434 -0
  343. package/bios/seabios/vgasrc/geodevga.h +89 -0
  344. package/bios/seabios/vgasrc/ramfb.c +163 -0
  345. package/bios/seabios/vgasrc/stdvga.c +485 -0
  346. package/bios/seabios/vgasrc/stdvga.h +81 -0
  347. package/bios/seabios/vgasrc/stdvgaio.c +186 -0
  348. package/bios/seabios/vgasrc/stdvgamodes.c +534 -0
  349. package/bios/seabios/vgasrc/swcursor.c +96 -0
  350. package/bios/seabios/vgasrc/vbe.c +432 -0
  351. package/bios/seabios/vgasrc/vgabios.c +1131 -0
  352. package/bios/seabios/vgasrc/vgabios.h +88 -0
  353. package/bios/seabios/vgasrc/vgaentry.S +161 -0
  354. package/bios/seabios/vgasrc/vgafb.c +661 -0
  355. package/bios/seabios/vgasrc/vgafb.h +42 -0
  356. package/bios/seabios/vgasrc/vgafonts.c +785 -0
  357. package/bios/seabios/vgasrc/vgahw.h +152 -0
  358. package/bios/seabios/vgasrc/vgainit.c +202 -0
  359. package/bios/seabios/vgasrc/vgalayout.lds.S +23 -0
  360. package/bios/seabios/vgasrc/vgautil.h +103 -0
  361. package/bios/seabios/vgasrc/vgaversion.c +6 -0
  362. package/build/binaries.js +1 -1
  363. package/build/index-debug.cjs +1 -1
  364. package/build/index-debug.js +1 -1
  365. package/build/index.cjs +1 -1
  366. package/build/index.js +1 -1
  367. package/build/v86-debug.wasm +0 -0
  368. package/build/v86.wasm +0 -0
  369. package/package.json +1 -1
@@ -0,0 +1,275 @@
1
+ /*
2
+ * code page 437 to unicode map
3
+ */
4
+
5
+ #include "types.h"
6
+ #include "biosvar.h"
7
+ #include "cp437.h"
8
+
9
+ static VAR16 u16 cp437_to_unicode_map[256] = {
10
+
11
+ /* https://en.wikipedia.org/wiki/Code_page_437 */
12
+ [ 0x00 ] = 0x0000,
13
+ [ 0x01 ] = 0x263A,
14
+ [ 0x02 ] = 0x263B,
15
+ [ 0x03 ] = 0x2665,
16
+ [ 0x04 ] = 0x2666,
17
+ [ 0x05 ] = 0x2663,
18
+ [ 0x06 ] = 0x2660,
19
+ [ 0x07 ] = 0x2022,
20
+ [ 0x08 ] = 0x25D8,
21
+ [ 0x09 ] = 0x25CB,
22
+ [ 0x0a ] = 0x25D9,
23
+ [ 0x0b ] = 0x2642,
24
+ [ 0x0c ] = 0x2640,
25
+ [ 0x0d ] = 0x266A,
26
+ [ 0x0e ] = 0x266B,
27
+ [ 0x0f ] = 0x263C,
28
+ [ 0x10 ] = 0x25BA,
29
+ [ 0x11 ] = 0x25C4,
30
+ [ 0x12 ] = 0x2195,
31
+ [ 0x13 ] = 0x203C,
32
+ [ 0x14 ] = 0x00B6,
33
+ [ 0x15 ] = 0x00A7,
34
+ [ 0x16 ] = 0x25AC,
35
+ [ 0x17 ] = 0x21A8,
36
+ [ 0x18 ] = 0x2191,
37
+ [ 0x19 ] = 0x2193,
38
+ [ 0x1a ] = 0x2192,
39
+ [ 0x1b ] = 0x2190,
40
+ [ 0x1c ] = 0x221F,
41
+ [ 0x1d ] = 0x2194,
42
+ [ 0x1e ] = 0x25B2,
43
+ [ 0x1f ] = 0x25BC,
44
+ [ 0x7f ] = 0x2302,
45
+
46
+ /* http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/PC/CP437.TXT */
47
+ [ 0x20 ] = 0x0020, // SPACE
48
+ [ 0x21 ] = 0x0021, // EXCLAMATION MARK
49
+ [ 0x22 ] = 0x0022, // QUOTATION MARK
50
+ [ 0x23 ] = 0x0023, // NUMBER SIGN
51
+ [ 0x24 ] = 0x0024, // DOLLAR SIGN
52
+ [ 0x25 ] = 0x0025, // PERCENT SIGN
53
+ [ 0x26 ] = 0x0026, // AMPERSAND
54
+ [ 0x27 ] = 0x0027, // APOSTROPHE
55
+ [ 0x28 ] = 0x0028, // LEFT PARENTHESIS
56
+ [ 0x29 ] = 0x0029, // RIGHT PARENTHESIS
57
+ [ 0x2a ] = 0x002a, // ASTERISK
58
+ [ 0x2b ] = 0x002b, // PLUS SIGN
59
+ [ 0x2c ] = 0x002c, // COMMA
60
+ [ 0x2d ] = 0x002d, // HYPHEN-MINUS
61
+ [ 0x2e ] = 0x002e, // FULL STOP
62
+ [ 0x2f ] = 0x002f, // SOLIDUS
63
+ [ 0x30 ] = 0x0030, // DIGIT ZERO
64
+ [ 0x31 ] = 0x0031, // DIGIT ONE
65
+ [ 0x32 ] = 0x0032, // DIGIT TWO
66
+ [ 0x33 ] = 0x0033, // DIGIT THREE
67
+ [ 0x34 ] = 0x0034, // DIGIT FOUR
68
+ [ 0x35 ] = 0x0035, // DIGIT FIVE
69
+ [ 0x36 ] = 0x0036, // DIGIT SIX
70
+ [ 0x37 ] = 0x0037, // DIGIT SEVEN
71
+ [ 0x38 ] = 0x0038, // DIGIT EIGHT
72
+ [ 0x39 ] = 0x0039, // DIGIT NINE
73
+ [ 0x3a ] = 0x003a, // COLON
74
+ [ 0x3b ] = 0x003b, // SEMICOLON
75
+ [ 0x3c ] = 0x003c, // LESS-THAN SIGN
76
+ [ 0x3d ] = 0x003d, // EQUALS SIGN
77
+ [ 0x3e ] = 0x003e, // GREATER-THAN SIGN
78
+ [ 0x3f ] = 0x003f, // QUESTION MARK
79
+ [ 0x40 ] = 0x0040, // COMMERCIAL AT
80
+ [ 0x41 ] = 0x0041, // LATIN CAPITAL LETTER A
81
+ [ 0x42 ] = 0x0042, // LATIN CAPITAL LETTER B
82
+ [ 0x43 ] = 0x0043, // LATIN CAPITAL LETTER C
83
+ [ 0x44 ] = 0x0044, // LATIN CAPITAL LETTER D
84
+ [ 0x45 ] = 0x0045, // LATIN CAPITAL LETTER E
85
+ [ 0x46 ] = 0x0046, // LATIN CAPITAL LETTER F
86
+ [ 0x47 ] = 0x0047, // LATIN CAPITAL LETTER G
87
+ [ 0x48 ] = 0x0048, // LATIN CAPITAL LETTER H
88
+ [ 0x49 ] = 0x0049, // LATIN CAPITAL LETTER I
89
+ [ 0x4a ] = 0x004a, // LATIN CAPITAL LETTER J
90
+ [ 0x4b ] = 0x004b, // LATIN CAPITAL LETTER K
91
+ [ 0x4c ] = 0x004c, // LATIN CAPITAL LETTER L
92
+ [ 0x4d ] = 0x004d, // LATIN CAPITAL LETTER M
93
+ [ 0x4e ] = 0x004e, // LATIN CAPITAL LETTER N
94
+ [ 0x4f ] = 0x004f, // LATIN CAPITAL LETTER O
95
+ [ 0x50 ] = 0x0050, // LATIN CAPITAL LETTER P
96
+ [ 0x51 ] = 0x0051, // LATIN CAPITAL LETTER Q
97
+ [ 0x52 ] = 0x0052, // LATIN CAPITAL LETTER R
98
+ [ 0x53 ] = 0x0053, // LATIN CAPITAL LETTER S
99
+ [ 0x54 ] = 0x0054, // LATIN CAPITAL LETTER T
100
+ [ 0x55 ] = 0x0055, // LATIN CAPITAL LETTER U
101
+ [ 0x56 ] = 0x0056, // LATIN CAPITAL LETTER V
102
+ [ 0x57 ] = 0x0057, // LATIN CAPITAL LETTER W
103
+ [ 0x58 ] = 0x0058, // LATIN CAPITAL LETTER X
104
+ [ 0x59 ] = 0x0059, // LATIN CAPITAL LETTER Y
105
+ [ 0x5a ] = 0x005a, // LATIN CAPITAL LETTER Z
106
+ [ 0x5b ] = 0x005b, // LEFT SQUARE BRACKET
107
+ [ 0x5c ] = 0x005c, // REVERSE SOLIDUS
108
+ [ 0x5d ] = 0x005d, // RIGHT SQUARE BRACKET
109
+ [ 0x5e ] = 0x005e, // CIRCUMFLEX ACCENT
110
+ [ 0x5f ] = 0x005f, // LOW LINE
111
+ [ 0x60 ] = 0x0060, // GRAVE ACCENT
112
+ [ 0x61 ] = 0x0061, // LATIN SMALL LETTER A
113
+ [ 0x62 ] = 0x0062, // LATIN SMALL LETTER B
114
+ [ 0x63 ] = 0x0063, // LATIN SMALL LETTER C
115
+ [ 0x64 ] = 0x0064, // LATIN SMALL LETTER D
116
+ [ 0x65 ] = 0x0065, // LATIN SMALL LETTER E
117
+ [ 0x66 ] = 0x0066, // LATIN SMALL LETTER F
118
+ [ 0x67 ] = 0x0067, // LATIN SMALL LETTER G
119
+ [ 0x68 ] = 0x0068, // LATIN SMALL LETTER H
120
+ [ 0x69 ] = 0x0069, // LATIN SMALL LETTER I
121
+ [ 0x6a ] = 0x006a, // LATIN SMALL LETTER J
122
+ [ 0x6b ] = 0x006b, // LATIN SMALL LETTER K
123
+ [ 0x6c ] = 0x006c, // LATIN SMALL LETTER L
124
+ [ 0x6d ] = 0x006d, // LATIN SMALL LETTER M
125
+ [ 0x6e ] = 0x006e, // LATIN SMALL LETTER N
126
+ [ 0x6f ] = 0x006f, // LATIN SMALL LETTER O
127
+ [ 0x70 ] = 0x0070, // LATIN SMALL LETTER P
128
+ [ 0x71 ] = 0x0071, // LATIN SMALL LETTER Q
129
+ [ 0x72 ] = 0x0072, // LATIN SMALL LETTER R
130
+ [ 0x73 ] = 0x0073, // LATIN SMALL LETTER S
131
+ [ 0x74 ] = 0x0074, // LATIN SMALL LETTER T
132
+ [ 0x75 ] = 0x0075, // LATIN SMALL LETTER U
133
+ [ 0x76 ] = 0x0076, // LATIN SMALL LETTER V
134
+ [ 0x77 ] = 0x0077, // LATIN SMALL LETTER W
135
+ [ 0x78 ] = 0x0078, // LATIN SMALL LETTER X
136
+ [ 0x79 ] = 0x0079, // LATIN SMALL LETTER Y
137
+ [ 0x7a ] = 0x007a, // LATIN SMALL LETTER Z
138
+ [ 0x7b ] = 0x007b, // LEFT CURLY BRACKET
139
+ [ 0x7c ] = 0x007c, // VERTICAL LINE
140
+ [ 0x7d ] = 0x007d, // RIGHT CURLY BRACKET
141
+ [ 0x7e ] = 0x007e, // TILDE
142
+ [ 0x80 ] = 0x00c7, // LATIN CAPITAL LETTER C WITH CEDILLA
143
+ [ 0x81 ] = 0x00fc, // LATIN SMALL LETTER U WITH DIAERESIS
144
+ [ 0x82 ] = 0x00e9, // LATIN SMALL LETTER E WITH ACUTE
145
+ [ 0x83 ] = 0x00e2, // LATIN SMALL LETTER A WITH CIRCUMFLEX
146
+ [ 0x84 ] = 0x00e4, // LATIN SMALL LETTER A WITH DIAERESIS
147
+ [ 0x85 ] = 0x00e0, // LATIN SMALL LETTER A WITH GRAVE
148
+ [ 0x86 ] = 0x00e5, // LATIN SMALL LETTER A WITH RING ABOVE
149
+ [ 0x87 ] = 0x00e7, // LATIN SMALL LETTER C WITH CEDILLA
150
+ [ 0x88 ] = 0x00ea, // LATIN SMALL LETTER E WITH CIRCUMFLEX
151
+ [ 0x89 ] = 0x00eb, // LATIN SMALL LETTER E WITH DIAERESIS
152
+ [ 0x8a ] = 0x00e8, // LATIN SMALL LETTER E WITH GRAVE
153
+ [ 0x8b ] = 0x00ef, // LATIN SMALL LETTER I WITH DIAERESIS
154
+ [ 0x8c ] = 0x00ee, // LATIN SMALL LETTER I WITH CIRCUMFLEX
155
+ [ 0x8d ] = 0x00ec, // LATIN SMALL LETTER I WITH GRAVE
156
+ [ 0x8e ] = 0x00c4, // LATIN CAPITAL LETTER A WITH DIAERESIS
157
+ [ 0x8f ] = 0x00c5, // LATIN CAPITAL LETTER A WITH RING ABOVE
158
+ [ 0x90 ] = 0x00c9, // LATIN CAPITAL LETTER E WITH ACUTE
159
+ [ 0x91 ] = 0x00e6, // LATIN SMALL LIGATURE AE
160
+ [ 0x92 ] = 0x00c6, // LATIN CAPITAL LIGATURE AE
161
+ [ 0x93 ] = 0x00f4, // LATIN SMALL LETTER O WITH CIRCUMFLEX
162
+ [ 0x94 ] = 0x00f6, // LATIN SMALL LETTER O WITH DIAERESIS
163
+ [ 0x95 ] = 0x00f2, // LATIN SMALL LETTER O WITH GRAVE
164
+ [ 0x96 ] = 0x00fb, // LATIN SMALL LETTER U WITH CIRCUMFLEX
165
+ [ 0x97 ] = 0x00f9, // LATIN SMALL LETTER U WITH GRAVE
166
+ [ 0x98 ] = 0x00ff, // LATIN SMALL LETTER Y WITH DIAERESIS
167
+ [ 0x99 ] = 0x00d6, // LATIN CAPITAL LETTER O WITH DIAERESIS
168
+ [ 0x9a ] = 0x00dc, // LATIN CAPITAL LETTER U WITH DIAERESIS
169
+ [ 0x9b ] = 0x00a2, // CENT SIGN
170
+ [ 0x9c ] = 0x00a3, // POUND SIGN
171
+ [ 0x9d ] = 0x00a5, // YEN SIGN
172
+ [ 0x9e ] = 0x20a7, // PESETA SIGN
173
+ [ 0x9f ] = 0x0192, // LATIN SMALL LETTER F WITH HOOK
174
+ [ 0xa0 ] = 0x00e1, // LATIN SMALL LETTER A WITH ACUTE
175
+ [ 0xa1 ] = 0x00ed, // LATIN SMALL LETTER I WITH ACUTE
176
+ [ 0xa2 ] = 0x00f3, // LATIN SMALL LETTER O WITH ACUTE
177
+ [ 0xa3 ] = 0x00fa, // LATIN SMALL LETTER U WITH ACUTE
178
+ [ 0xa4 ] = 0x00f1, // LATIN SMALL LETTER N WITH TILDE
179
+ [ 0xa5 ] = 0x00d1, // LATIN CAPITAL LETTER N WITH TILDE
180
+ [ 0xa6 ] = 0x00aa, // FEMININE ORDINAL INDICATOR
181
+ [ 0xa7 ] = 0x00ba, // MASCULINE ORDINAL INDICATOR
182
+ [ 0xa8 ] = 0x00bf, // INVERTED QUESTION MARK
183
+ [ 0xa9 ] = 0x2310, // REVERSED NOT SIGN
184
+ [ 0xaa ] = 0x00ac, // NOT SIGN
185
+ [ 0xab ] = 0x00bd, // VULGAR FRACTION ONE HALF
186
+ [ 0xac ] = 0x00bc, // VULGAR FRACTION ONE QUARTER
187
+ [ 0xad ] = 0x00a1, // INVERTED EXCLAMATION MARK
188
+ [ 0xae ] = 0x00ab, // LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
189
+ [ 0xaf ] = 0x00bb, // RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
190
+ [ 0xb0 ] = 0x2591, // LIGHT SHADE
191
+ [ 0xb1 ] = 0x2592, // MEDIUM SHADE
192
+ [ 0xb2 ] = 0x2593, // DARK SHADE
193
+ [ 0xb3 ] = 0x2502, // BOX DRAWINGS LIGHT VERTICAL
194
+ [ 0xb4 ] = 0x2524, // BOX DRAWINGS LIGHT VERTICAL AND LEFT
195
+ [ 0xb5 ] = 0x2561, // BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
196
+ [ 0xb6 ] = 0x2562, // BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
197
+ [ 0xb7 ] = 0x2556, // BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
198
+ [ 0xb8 ] = 0x2555, // BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
199
+ [ 0xb9 ] = 0x2563, // BOX DRAWINGS DOUBLE VERTICAL AND LEFT
200
+ [ 0xba ] = 0x2551, // BOX DRAWINGS DOUBLE VERTICAL
201
+ [ 0xbb ] = 0x2557, // BOX DRAWINGS DOUBLE DOWN AND LEFT
202
+ [ 0xbc ] = 0x255d, // BOX DRAWINGS DOUBLE UP AND LEFT
203
+ [ 0xbd ] = 0x255c, // BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
204
+ [ 0xbe ] = 0x255b, // BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
205
+ [ 0xbf ] = 0x2510, // BOX DRAWINGS LIGHT DOWN AND LEFT
206
+ [ 0xc0 ] = 0x2514, // BOX DRAWINGS LIGHT UP AND RIGHT
207
+ [ 0xc1 ] = 0x2534, // BOX DRAWINGS LIGHT UP AND HORIZONTAL
208
+ [ 0xc2 ] = 0x252c, // BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
209
+ [ 0xc3 ] = 0x251c, // BOX DRAWINGS LIGHT VERTICAL AND RIGHT
210
+ [ 0xc4 ] = 0x2500, // BOX DRAWINGS LIGHT HORIZONTAL
211
+ [ 0xc5 ] = 0x253c, // BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
212
+ [ 0xc6 ] = 0x255e, // BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
213
+ [ 0xc7 ] = 0x255f, // BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
214
+ [ 0xc8 ] = 0x255a, // BOX DRAWINGS DOUBLE UP AND RIGHT
215
+ [ 0xc9 ] = 0x2554, // BOX DRAWINGS DOUBLE DOWN AND RIGHT
216
+ [ 0xca ] = 0x2569, // BOX DRAWINGS DOUBLE UP AND HORIZONTAL
217
+ [ 0xcb ] = 0x2566, // BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
218
+ [ 0xcc ] = 0x2560, // BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
219
+ [ 0xcd ] = 0x2550, // BOX DRAWINGS DOUBLE HORIZONTAL
220
+ [ 0xce ] = 0x256c, // BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
221
+ [ 0xcf ] = 0x2567, // BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
222
+ [ 0xd0 ] = 0x2568, // BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
223
+ [ 0xd1 ] = 0x2564, // BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
224
+ [ 0xd2 ] = 0x2565, // BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
225
+ [ 0xd3 ] = 0x2559, // BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
226
+ [ 0xd4 ] = 0x2558, // BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
227
+ [ 0xd5 ] = 0x2552, // BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
228
+ [ 0xd6 ] = 0x2553, // BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
229
+ [ 0xd7 ] = 0x256b, // BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
230
+ [ 0xd8 ] = 0x256a, // BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
231
+ [ 0xd9 ] = 0x2518, // BOX DRAWINGS LIGHT UP AND LEFT
232
+ [ 0xda ] = 0x250c, // BOX DRAWINGS LIGHT DOWN AND RIGHT
233
+ [ 0xdb ] = 0x2588, // FULL BLOCK
234
+ [ 0xdc ] = 0x2584, // LOWER HALF BLOCK
235
+ [ 0xdd ] = 0x258c, // LEFT HALF BLOCK
236
+ [ 0xde ] = 0x2590, // RIGHT HALF BLOCK
237
+ [ 0xdf ] = 0x2580, // UPPER HALF BLOCK
238
+ [ 0xe0 ] = 0x03b1, // GREEK SMALL LETTER ALPHA
239
+ [ 0xe1 ] = 0x00df, // LATIN SMALL LETTER SHARP S
240
+ [ 0xe2 ] = 0x0393, // GREEK CAPITAL LETTER GAMMA
241
+ [ 0xe3 ] = 0x03c0, // GREEK SMALL LETTER PI
242
+ [ 0xe4 ] = 0x03a3, // GREEK CAPITAL LETTER SIGMA
243
+ [ 0xe5 ] = 0x03c3, // GREEK SMALL LETTER SIGMA
244
+ [ 0xe6 ] = 0x00b5, // MICRO SIGN
245
+ [ 0xe7 ] = 0x03c4, // GREEK SMALL LETTER TAU
246
+ [ 0xe8 ] = 0x03a6, // GREEK CAPITAL LETTER PHI
247
+ [ 0xe9 ] = 0x0398, // GREEK CAPITAL LETTER THETA
248
+ [ 0xea ] = 0x03a9, // GREEK CAPITAL LETTER OMEGA
249
+ [ 0xeb ] = 0x03b4, // GREEK SMALL LETTER DELTA
250
+ [ 0xec ] = 0x221e, // INFINITY
251
+ [ 0xed ] = 0x03c6, // GREEK SMALL LETTER PHI
252
+ [ 0xee ] = 0x03b5, // GREEK SMALL LETTER EPSILON
253
+ [ 0xef ] = 0x2229, // INTERSECTION
254
+ [ 0xf0 ] = 0x2261, // IDENTICAL TO
255
+ [ 0xf1 ] = 0x00b1, // PLUS-MINUS SIGN
256
+ [ 0xf2 ] = 0x2265, // GREATER-THAN OR EQUAL TO
257
+ [ 0xf3 ] = 0x2264, // LESS-THAN OR EQUAL TO
258
+ [ 0xf4 ] = 0x2320, // TOP HALF INTEGRAL
259
+ [ 0xf5 ] = 0x2321, // BOTTOM HALF INTEGRAL
260
+ [ 0xf6 ] = 0x00f7, // DIVISION SIGN
261
+ [ 0xf7 ] = 0x2248, // ALMOST EQUAL TO
262
+ [ 0xf8 ] = 0x00b0, // DEGREE SIGN
263
+ [ 0xf9 ] = 0x2219, // BULLET OPERATOR
264
+ [ 0xfa ] = 0x00b7, // MIDDLE DOT
265
+ [ 0xfb ] = 0x221a, // SQUARE ROOT
266
+ [ 0xfc ] = 0x207f, // SUPERSCRIPT LATIN SMALL LETTER N
267
+ [ 0xfd ] = 0x00b2, // SUPERSCRIPT TWO
268
+ [ 0xfe ] = 0x25a0, // BLACK SQUARE
269
+ [ 0xff ] = 0x00a0, // NO-BREAK SPACE
270
+ };
271
+
272
+ u16 cp437_to_unicode(u8 cp437)
273
+ {
274
+ return GET_GLOBAL(cp437_to_unicode_map[cp437]);
275
+ }
@@ -0,0 +1 @@
1
+ u16 cp437_to_unicode(u8 cp437);