v86 0.4.0 → 0.5.10
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.
- package/Readme.md +56 -111
- package/build/libv86-debug.js +12677 -0
- package/build/libv86-debug.mjs +732 -0
- package/build/libv86.js +710 -0
- package/build/libv86.mjs +636 -0
- package/build/v86-debug.wasm +0 -0
- package/build/v86-fallback.wasm +0 -0
- package/build/v86.wasm +0 -0
- package/package.json +12 -35
- package/bios/.gitignore +0 -1
- package/bios/COPYING.LESSER +0 -165
- package/bios/bochs-bios.bin +0 -0
- package/bios/bochs-vgabios.bin +0 -0
- package/bios/fetch-and-build-seabios.sh +0 -13
- package/bios/seabios/.config +0 -113
- package/bios/seabios/.config.old +0 -114
- package/bios/seabios/.gitignore +0 -4
- package/bios/seabios/COPYING +0 -674
- package/bios/seabios/COPYING.LESSER +0 -165
- package/bios/seabios/Makefile +0 -286
- package/bios/seabios/README +0 -17
- package/bios/seabios/docs/Build_overview.md +0 -104
- package/bios/seabios/docs/Contributing.md +0 -20
- package/bios/seabios/docs/Debugging.md +0 -111
- package/bios/seabios/docs/Developer_Documentation.md +0 -25
- package/bios/seabios/docs/Developer_links.md +0 -86
- package/bios/seabios/docs/Download.md +0 -27
- package/bios/seabios/docs/Execution_and_code_flow.md +0 -178
- package/bios/seabios/docs/Linking_overview.md +0 -160
- package/bios/seabios/docs/Mailinglist.md +0 -8
- package/bios/seabios/docs/Memory_Model.md +0 -253
- package/bios/seabios/docs/README +0 -5
- package/bios/seabios/docs/Releases.md +0 -482
- package/bios/seabios/docs/Runtime_config.md +0 -193
- package/bios/seabios/docs/SeaBIOS.md +0 -17
- package/bios/seabios/docs/SeaVGABIOS.md +0 -39
- package/bios/seabios/out/autoconf.h +0 -117
- package/bios/seabios/out/include/config/acpi/dsdt.h +0 -0
- package/bios/seabios/out/include/config/acpi.h +0 -0
- package/bios/seabios/out/include/config/ahci.h +0 -0
- package/bios/seabios/out/include/config/apmbios.h +0 -0
- package/bios/seabios/out/include/config/ata/dma.h +0 -0
- package/bios/seabios/out/include/config/ata/pio32.h +0 -0
- package/bios/seabios/out/include/config/ata.h +0 -0
- package/bios/seabios/out/include/config/auto.conf +0 -69
- package/bios/seabios/out/include/config/auto.conf.cmd +0 -9
- package/bios/seabios/out/include/config/boot.h +0 -0
- package/bios/seabios/out/include/config/bootorder.h +0 -0
- package/bios/seabios/out/include/config/build/vgabios.h +0 -0
- package/bios/seabios/out/include/config/call32/smm.h +0 -0
- package/bios/seabios/out/include/config/cdrom/boot.h +0 -0
- package/bios/seabios/out/include/config/cdrom/emu.h +0 -0
- package/bios/seabios/out/include/config/debug/level.h +0 -0
- package/bios/seabios/out/include/config/drives.h +0 -0
- package/bios/seabios/out/include/config/entry/extrastack.h +0 -0
- package/bios/seabios/out/include/config/esp/scsi.h +0 -0
- package/bios/seabios/out/include/config/flash/floppy.h +0 -0
- package/bios/seabios/out/include/config/floppy.h +0 -0
- package/bios/seabios/out/include/config/fw/romfile/load.h +0 -0
- package/bios/seabios/out/include/config/hardware/irq.h +0 -0
- package/bios/seabios/out/include/config/kbd/call/int15/4f.h +0 -0
- package/bios/seabios/out/include/config/keyboard.h +0 -0
- package/bios/seabios/out/include/config/lpt.h +0 -0
- package/bios/seabios/out/include/config/lsi/scsi.h +0 -0
- package/bios/seabios/out/include/config/malloc/uppermemory.h +0 -0
- package/bios/seabios/out/include/config/megasas.h +0 -0
- package/bios/seabios/out/include/config/mouse.h +0 -0
- package/bios/seabios/out/include/config/mpt/scsi.h +0 -0
- package/bios/seabios/out/include/config/mptable.h +0 -0
- package/bios/seabios/out/include/config/mtrr/init.h +0 -0
- package/bios/seabios/out/include/config/optionroms.h +0 -0
- package/bios/seabios/out/include/config/override/pci/id.h +0 -0
- package/bios/seabios/out/include/config/pcibios.h +0 -0
- package/bios/seabios/out/include/config/pirtable.h +0 -0
- package/bios/seabios/out/include/config/pmm.h +0 -0
- package/bios/seabios/out/include/config/pmtimer.h +0 -0
- package/bios/seabios/out/include/config/pnpbios.h +0 -0
- package/bios/seabios/out/include/config/ps2port.h +0 -0
- package/bios/seabios/out/include/config/pvscsi.h +0 -0
- package/bios/seabios/out/include/config/qemu/hardware.h +0 -0
- package/bios/seabios/out/include/config/qemu.h +0 -0
- package/bios/seabios/out/include/config/rom/size.h +0 -0
- package/bios/seabios/out/include/config/rtc/timer.h +0 -0
- package/bios/seabios/out/include/config/s3/resume.h +0 -0
- package/bios/seabios/out/include/config/sdcard.h +0 -0
- package/bios/seabios/out/include/config/serial.h +0 -0
- package/bios/seabios/out/include/config/tcgbios.h +0 -0
- package/bios/seabios/out/include/config/threads.h +0 -0
- package/bios/seabios/out/include/config/tristate.conf +0 -4
- package/bios/seabios/out/include/config/tsc/timer.h +0 -0
- package/bios/seabios/out/include/config/use/smm.h +0 -0
- package/bios/seabios/out/include/config/vga/allocate/extra/stack.h +0 -0
- package/bios/seabios/out/include/config/vga/bochs/stdvga.h +0 -0
- package/bios/seabios/out/include/config/vga/bochs.h +0 -0
- package/bios/seabios/out/include/config/vga/did.h +0 -0
- package/bios/seabios/out/include/config/vga/extra/stack/size.h +0 -0
- package/bios/seabios/out/include/config/vga/fixup/asm.h +0 -0
- package/bios/seabios/out/include/config/vga/pci.h +0 -0
- package/bios/seabios/out/include/config/vga/stdvga/ports.h +0 -0
- package/bios/seabios/out/include/config/vga/vbe.h +0 -0
- package/bios/seabios/out/include/config/vga/vid.h +0 -0
- package/bios/seabios/out/include/config/vgahooks.h +0 -0
- package/bios/seabios/out/include/config/virtio/blk.h +0 -0
- package/bios/seabios/out/include/config/virtio/scsi.h +0 -0
- package/bios/seabios/out/include/config/xen.h +0 -0
- package/bios/seabios/out/scripts/kconfig/conf +0 -0
- package/bios/seabios/out/scripts/kconfig/conf.o +0 -0
- package/bios/seabios/out/scripts/kconfig/zconf.hash.c +0 -289
- package/bios/seabios/out/scripts/kconfig/zconf.lex.c +0 -2420
- package/bios/seabios/out/scripts/kconfig/zconf.tab.c +0 -2538
- package/bios/seabios/out/scripts/kconfig/zconf.tab.o +0 -0
- package/bios/seabios/scripts/acpi_extract.py +0 -366
- package/bios/seabios/scripts/acpi_extract_preprocess.py +0 -41
- package/bios/seabios/scripts/buildrom.py +0 -56
- package/bios/seabios/scripts/buildversion.py +0 -134
- package/bios/seabios/scripts/checkrom.py +0 -95
- package/bios/seabios/scripts/checkstack.py +0 -226
- package/bios/seabios/scripts/checksum.py +0 -16
- package/bios/seabios/scripts/encodeint.py +0 -21
- package/bios/seabios/scripts/gen-offsets.sh +0 -17
- package/bios/seabios/scripts/kconfig/.gitignore +0 -22
- package/bios/seabios/scripts/kconfig/Makefile +0 -331
- package/bios/seabios/scripts/kconfig/POTFILES.in +0 -12
- package/bios/seabios/scripts/kconfig/check.sh +0 -13
- package/bios/seabios/scripts/kconfig/conf.c +0 -718
- package/bios/seabios/scripts/kconfig/confdata.c +0 -1250
- package/bios/seabios/scripts/kconfig/expr.c +0 -1168
- package/bios/seabios/scripts/kconfig/expr.h +0 -241
- package/bios/seabios/scripts/kconfig/gconf.c +0 -1542
- package/bios/seabios/scripts/kconfig/gconf.glade +0 -661
- package/bios/seabios/scripts/kconfig/images.c +0 -326
- package/bios/seabios/scripts/kconfig/kxgettext.c +0 -235
- package/bios/seabios/scripts/kconfig/lex.zconf.c +0 -2430
- package/bios/seabios/scripts/kconfig/list.h +0 -131
- package/bios/seabios/scripts/kconfig/lkc.h +0 -200
- package/bios/seabios/scripts/kconfig/lkc_proto.h +0 -57
- package/bios/seabios/scripts/kconfig/lxdialog/.gitignore +0 -4
- package/bios/seabios/scripts/kconfig/lxdialog/BIG.FAT.WARNING +0 -4
- package/bios/seabios/scripts/kconfig/lxdialog/check-lxdialog.sh +0 -87
- package/bios/seabios/scripts/kconfig/lxdialog/checklist.c +0 -332
- package/bios/seabios/scripts/kconfig/lxdialog/dialog.h +0 -257
- package/bios/seabios/scripts/kconfig/lxdialog/inputbox.c +0 -301
- package/bios/seabios/scripts/kconfig/lxdialog/menubox.c +0 -437
- package/bios/seabios/scripts/kconfig/lxdialog/textbox.c +0 -408
- package/bios/seabios/scripts/kconfig/lxdialog/util.c +0 -713
- package/bios/seabios/scripts/kconfig/lxdialog/yesno.c +0 -114
- package/bios/seabios/scripts/kconfig/mconf.c +0 -1036
- package/bios/seabios/scripts/kconfig/menu.c +0 -697
- package/bios/seabios/scripts/kconfig/merge_config.sh +0 -150
- package/bios/seabios/scripts/kconfig/nconf.c +0 -1556
- package/bios/seabios/scripts/kconfig/nconf.gui.c +0 -656
- package/bios/seabios/scripts/kconfig/nconf.h +0 -96
- package/bios/seabios/scripts/kconfig/qconf.cc +0 -1795
- package/bios/seabios/scripts/kconfig/qconf.h +0 -338
- package/bios/seabios/scripts/kconfig/streamline_config.pl +0 -647
- package/bios/seabios/scripts/kconfig/symbol.c +0 -1373
- package/bios/seabios/scripts/kconfig/util.c +0 -157
- package/bios/seabios/scripts/kconfig/zconf.gperf +0 -48
- package/bios/seabios/scripts/kconfig/zconf.hash.c_shipped +0 -289
- package/bios/seabios/scripts/kconfig/zconf.l +0 -363
- package/bios/seabios/scripts/kconfig/zconf.lex.c_shipped +0 -2420
- package/bios/seabios/scripts/kconfig/zconf.tab.c_shipped +0 -2538
- package/bios/seabios/scripts/kconfig/zconf.y +0 -733
- package/bios/seabios/scripts/layoutrom.py +0 -705
- package/bios/seabios/scripts/python23compat.py +0 -14
- package/bios/seabios/scripts/readserial.py +0 -190
- package/bios/seabios/scripts/tarball.sh +0 -36
- package/bios/seabios/scripts/test-build.sh +0 -90
- package/bios/seabios/scripts/transdump.py +0 -53
- package/bios/seabios/scripts/vgafixup.py +0 -96
- package/bios/seabios/src/Kconfig +0 -579
- package/bios/seabios/src/apm.c +0 -215
- package/bios/seabios/src/asm-offsets.c +0 -23
- package/bios/seabios/src/biosvar.h +0 -130
- package/bios/seabios/src/block.c +0 -623
- package/bios/seabios/src/block.h +0 -121
- package/bios/seabios/src/bmp.c +0 -117
- package/bios/seabios/src/boot.c +0 -793
- package/bios/seabios/src/bootsplash.c +0 -255
- package/bios/seabios/src/bregs.h +0 -80
- package/bios/seabios/src/byteorder.h +0 -71
- package/bios/seabios/src/cdrom.c +0 -322
- package/bios/seabios/src/clock.c +0 -506
- package/bios/seabios/src/code16gcc.s +0 -1
- package/bios/seabios/src/config.h +0 -108
- package/bios/seabios/src/cp437.c +0 -275
- package/bios/seabios/src/cp437.h +0 -1
- package/bios/seabios/src/disk.c +0 -779
- package/bios/seabios/src/e820map.c +0 -152
- package/bios/seabios/src/e820map.h +0 -26
- package/bios/seabios/src/entryfuncs.S +0 -165
- package/bios/seabios/src/farptr.h +0 -208
- package/bios/seabios/src/font.c +0 -139
- package/bios/seabios/src/fw/acpi-dsdt-cpu-hotplug.dsl +0 -78
- package/bios/seabios/src/fw/acpi-dsdt-dbug.dsl +0 -26
- package/bios/seabios/src/fw/acpi-dsdt-hpet.dsl +0 -36
- package/bios/seabios/src/fw/acpi-dsdt-isa.dsl +0 -102
- package/bios/seabios/src/fw/acpi-dsdt-pci-crs.dsl +0 -90
- package/bios/seabios/src/fw/acpi-dsdt.dsl +0 -342
- package/bios/seabios/src/fw/acpi-dsdt.hex +0 -554
- package/bios/seabios/src/fw/acpi.c +0 -685
- package/bios/seabios/src/fw/biostables.c +0 -491
- package/bios/seabios/src/fw/coreboot.c +0 -569
- package/bios/seabios/src/fw/csm.c +0 -347
- package/bios/seabios/src/fw/dev-pci.h +0 -52
- package/bios/seabios/src/fw/dev-piix.h +0 -29
- package/bios/seabios/src/fw/dev-q35.h +0 -52
- package/bios/seabios/src/fw/lzmadecode.c +0 -398
- package/bios/seabios/src/fw/lzmadecode.h +0 -67
- package/bios/seabios/src/fw/mptable.c +0 -197
- package/bios/seabios/src/fw/mtrr.c +0 -105
- package/bios/seabios/src/fw/multiboot.c +0 -111
- package/bios/seabios/src/fw/paravirt.c +0 -624
- package/bios/seabios/src/fw/paravirt.h +0 -63
- package/bios/seabios/src/fw/pciinit.c +0 -1187
- package/bios/seabios/src/fw/pirtable.c +0 -103
- package/bios/seabios/src/fw/q35-acpi-dsdt.dsl +0 -450
- package/bios/seabios/src/fw/romfile_loader.c +0 -259
- package/bios/seabios/src/fw/romfile_loader.h +0 -91
- package/bios/seabios/src/fw/shadow.c +0 -208
- package/bios/seabios/src/fw/smbios.c +0 -585
- package/bios/seabios/src/fw/smm.c +0 -269
- package/bios/seabios/src/fw/smp.c +0 -194
- package/bios/seabios/src/fw/ssdt-misc.dsl +0 -104
- package/bios/seabios/src/fw/ssdt-misc.hex +0 -88
- package/bios/seabios/src/fw/ssdt-pcihp.dsl +0 -36
- package/bios/seabios/src/fw/ssdt-pcihp.hex +0 -38
- package/bios/seabios/src/fw/ssdt-proc.dsl +0 -48
- package/bios/seabios/src/fw/ssdt-proc.hex +0 -35
- package/bios/seabios/src/fw/xen.c +0 -149
- package/bios/seabios/src/fw/xen.h +0 -125
- package/bios/seabios/src/gen-defs.h +0 -19
- package/bios/seabios/src/hw/ahci.c +0 -697
- package/bios/seabios/src/hw/ahci.h +0 -201
- package/bios/seabios/src/hw/ata.c +0 -1046
- package/bios/seabios/src/hw/ata.h +0 -163
- package/bios/seabios/src/hw/blockcmd.c +0 -372
- package/bios/seabios/src/hw/blockcmd.h +0 -114
- package/bios/seabios/src/hw/dma.c +0 -67
- package/bios/seabios/src/hw/esp-scsi.c +0 -241
- package/bios/seabios/src/hw/esp-scsi.h +0 -8
- package/bios/seabios/src/hw/floppy.c +0 -741
- package/bios/seabios/src/hw/lsi-scsi.c +0 -221
- package/bios/seabios/src/hw/lsi-scsi.h +0 -8
- package/bios/seabios/src/hw/megasas.c +0 -405
- package/bios/seabios/src/hw/megasas.h +0 -8
- package/bios/seabios/src/hw/mpt-scsi.c +0 -319
- package/bios/seabios/src/hw/mpt-scsi.h +0 -8
- package/bios/seabios/src/hw/nvme-int.h +0 -199
- package/bios/seabios/src/hw/nvme.c +0 -708
- package/bios/seabios/src/hw/nvme.h +0 -17
- package/bios/seabios/src/hw/pci.c +0 -133
- package/bios/seabios/src/hw/pci.h +0 -47
- package/bios/seabios/src/hw/pci_ids.h +0 -2632
- package/bios/seabios/src/hw/pci_regs.h +0 -556
- package/bios/seabios/src/hw/pcidevice.c +0 -192
- package/bios/seabios/src/hw/pcidevice.h +0 -76
- package/bios/seabios/src/hw/pic.c +0 -115
- package/bios/seabios/src/hw/pic.h +0 -60
- package/bios/seabios/src/hw/ps2port.c +0 -543
- package/bios/seabios/src/hw/ps2port.h +0 -67
- package/bios/seabios/src/hw/pvscsi.c +0 -333
- package/bios/seabios/src/hw/pvscsi.h +0 -8
- package/bios/seabios/src/hw/ramdisk.c +0 -108
- package/bios/seabios/src/hw/rtc.c +0 -100
- package/bios/seabios/src/hw/rtc.h +0 -75
- package/bios/seabios/src/hw/sdcard.c +0 -572
- package/bios/seabios/src/hw/serialio.c +0 -113
- package/bios/seabios/src/hw/serialio.h +0 -29
- package/bios/seabios/src/hw/timer.c +0 -259
- package/bios/seabios/src/hw/tpm_drivers.c +0 -636
- package/bios/seabios/src/hw/tpm_drivers.h +0 -127
- package/bios/seabios/src/hw/usb-ehci.c +0 -650
- package/bios/seabios/src/hw/usb-ehci.h +0 -177
- package/bios/seabios/src/hw/usb-hid.c +0 -442
- package/bios/seabios/src/hw/usb-hid.h +0 -29
- package/bios/seabios/src/hw/usb-hub.c +0 -205
- package/bios/seabios/src/hw/usb-hub.h +0 -64
- package/bios/seabios/src/hw/usb-msc.c +0 -222
- package/bios/seabios/src/hw/usb-msc.h +0 -10
- package/bios/seabios/src/hw/usb-ohci.c +0 -568
- package/bios/seabios/src/hw/usb-ohci.h +0 -144
- package/bios/seabios/src/hw/usb-uas.c +0 -289
- package/bios/seabios/src/hw/usb-uas.h +0 -9
- package/bios/seabios/src/hw/usb-uhci.c +0 -571
- package/bios/seabios/src/hw/usb-uhci.h +0 -128
- package/bios/seabios/src/hw/usb-xhci.c +0 -1161
- package/bios/seabios/src/hw/usb-xhci.h +0 -133
- package/bios/seabios/src/hw/usb.c +0 -499
- package/bios/seabios/src/hw/usb.h +0 -254
- package/bios/seabios/src/hw/virtio-blk.c +0 -211
- package/bios/seabios/src/hw/virtio-blk.h +0 -43
- package/bios/seabios/src/hw/virtio-pci.c +0 -501
- package/bios/seabios/src/hw/virtio-pci.h +0 -151
- package/bios/seabios/src/hw/virtio-ring.c +0 -147
- package/bios/seabios/src/hw/virtio-ring.h +0 -121
- package/bios/seabios/src/hw/virtio-scsi.c +0 -220
- package/bios/seabios/src/hw/virtio-scsi.h +0 -47
- package/bios/seabios/src/jpeg.c +0 -1055
- package/bios/seabios/src/kbd.c +0 -599
- package/bios/seabios/src/list.h +0 -91
- package/bios/seabios/src/malloc.c +0 -561
- package/bios/seabios/src/malloc.h +0 -70
- package/bios/seabios/src/memmap.h +0 -21
- package/bios/seabios/src/misc.c +0 -195
- package/bios/seabios/src/mouse.c +0 -342
- package/bios/seabios/src/optionroms.c +0 -475
- package/bios/seabios/src/output.c +0 -584
- package/bios/seabios/src/output.h +0 -68
- package/bios/seabios/src/pcibios.c +0 -241
- package/bios/seabios/src/pmm.c +0 -176
- package/bios/seabios/src/pnpbios.c +0 -88
- package/bios/seabios/src/post.c +0 -337
- package/bios/seabios/src/resume.c +0 -157
- package/bios/seabios/src/romfile.c +0 -146
- package/bios/seabios/src/romfile.h +0 -21
- package/bios/seabios/src/romlayout.S +0 -698
- package/bios/seabios/src/sercon.c +0 -677
- package/bios/seabios/src/serial.c +0 -317
- package/bios/seabios/src/sha1.c +0 -147
- package/bios/seabios/src/sha1.h +0 -8
- package/bios/seabios/src/stacks.c +0 -771
- package/bios/seabios/src/stacks.h +0 -68
- package/bios/seabios/src/std/LegacyBios.h +0 -985
- package/bios/seabios/src/std/acpi.h +0 -323
- package/bios/seabios/src/std/bda.h +0 -174
- package/bios/seabios/src/std/disk.h +0 -175
- package/bios/seabios/src/std/mptable.h +0 -77
- package/bios/seabios/src/std/multiboot.h +0 -260
- package/bios/seabios/src/std/optionrom.h +0 -59
- package/bios/seabios/src/std/pirtable.h +0 -35
- package/bios/seabios/src/std/pmm.h +0 -19
- package/bios/seabios/src/std/pnpbios.h +0 -24
- package/bios/seabios/src/std/smbios.h +0 -167
- package/bios/seabios/src/std/tcg.h +0 -554
- package/bios/seabios/src/std/vbe.h +0 -156
- package/bios/seabios/src/std/vga.h +0 -63
- package/bios/seabios/src/string.c +0 -251
- package/bios/seabios/src/string.h +0 -31
- package/bios/seabios/src/system.c +0 -357
- package/bios/seabios/src/tcgbios.c +0 -2014
- package/bios/seabios/src/tcgbios.h +0 -19
- package/bios/seabios/src/types.h +0 -156
- package/bios/seabios/src/util.h +0 -251
- package/bios/seabios/src/version.c +0 -5
- package/bios/seabios/src/vgahooks.c +0 -355
- package/bios/seabios/src/x86.c +0 -23
- package/bios/seabios/src/x86.h +0 -277
- package/bios/seabios/vgasrc/Kconfig +0 -211
- package/bios/seabios/vgasrc/bochsdisplay.c +0 -59
- package/bios/seabios/vgasrc/bochsvga.c +0 -447
- package/bios/seabios/vgasrc/bochsvga.h +0 -57
- package/bios/seabios/vgasrc/cbvga.c +0 -337
- package/bios/seabios/vgasrc/clext.c +0 -627
- package/bios/seabios/vgasrc/geodevga.c +0 -434
- package/bios/seabios/vgasrc/geodevga.h +0 -89
- package/bios/seabios/vgasrc/ramfb.c +0 -163
- package/bios/seabios/vgasrc/stdvga.c +0 -485
- package/bios/seabios/vgasrc/stdvga.h +0 -81
- package/bios/seabios/vgasrc/stdvgaio.c +0 -186
- package/bios/seabios/vgasrc/stdvgamodes.c +0 -534
- package/bios/seabios/vgasrc/swcursor.c +0 -96
- package/bios/seabios/vgasrc/vbe.c +0 -432
- package/bios/seabios/vgasrc/vgabios.c +0 -1131
- package/bios/seabios/vgasrc/vgabios.h +0 -88
- package/bios/seabios/vgasrc/vgaentry.S +0 -161
- package/bios/seabios/vgasrc/vgafb.c +0 -661
- package/bios/seabios/vgasrc/vgafb.h +0 -42
- package/bios/seabios/vgasrc/vgafonts.c +0 -785
- package/bios/seabios/vgasrc/vgahw.h +0 -152
- package/bios/seabios/vgasrc/vgainit.c +0 -202
- package/bios/seabios/vgasrc/vgalayout.lds.S +0 -23
- package/bios/seabios/vgasrc/vgautil.h +0 -103
- package/bios/seabios/vgasrc/vgaversion.c +0 -6
- package/bios/seabios-debug.bin +0 -0
- package/bios/seabios-debug.config +0 -117
- package/bios/seabios.bin +0 -0
- package/bios/seabios.config +0 -114
- package/bios/vgabios-debug.bin +0 -0
- package/bios/vgabios.bin +0 -0
- package/build/binaries.js +0 -1
- package/build/index-debug.cjs +0 -1
- package/build/index-debug.js +0 -1
- package/build/index.cjs +0 -1
- package/build/index.js +0 -1
- package/v86.css +0 -259
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
#ifndef __VGABIOS_H
|
|
2
|
-
#define __VGABIOS_H
|
|
3
|
-
|
|
4
|
-
#include "config.h" // CONFIG_VGA_EMULATE_TEXT
|
|
5
|
-
#include "farptr.h" // GET_FARVAR
|
|
6
|
-
#include "types.h" // u8
|
|
7
|
-
|
|
8
|
-
// Save/Restore flags
|
|
9
|
-
#define SR_HARDWARE 0x0001
|
|
10
|
-
#define SR_BDA 0x0002
|
|
11
|
-
#define SR_DAC 0x0004
|
|
12
|
-
#define SR_REGISTERS 0x0008
|
|
13
|
-
#define SR_SAVE 0x0100
|
|
14
|
-
#define SR_RESTORE 0x0200
|
|
15
|
-
|
|
16
|
-
// Mode flags
|
|
17
|
-
#define MF_LEGACY 0x0001
|
|
18
|
-
#define MF_GRAYSUM 0x0002
|
|
19
|
-
#define MF_NOPALETTE 0x0008
|
|
20
|
-
#define MF_CUSTOMCRTC 0x0800
|
|
21
|
-
#define MF_LINEARFB 0x4000
|
|
22
|
-
#define MF_NOCLEARMEM 0x8000
|
|
23
|
-
#define MF_VBEFLAGS 0xfe00
|
|
24
|
-
|
|
25
|
-
// Memory model types
|
|
26
|
-
#define MM_TEXT 0x00
|
|
27
|
-
#define MM_CGA 0x01
|
|
28
|
-
#define MM_HERCULES 0x02
|
|
29
|
-
#define MM_PLANAR 0x03
|
|
30
|
-
#define MM_PACKED 0x04
|
|
31
|
-
#define MM_NON_CHAIN_4_256 0x05
|
|
32
|
-
#define MM_DIRECT 0x06
|
|
33
|
-
#define MM_YUV 0x07
|
|
34
|
-
|
|
35
|
-
struct vgamode_s {
|
|
36
|
-
u8 memmodel;
|
|
37
|
-
u16 width;
|
|
38
|
-
u16 height;
|
|
39
|
-
u8 depth;
|
|
40
|
-
u8 cwidth;
|
|
41
|
-
u8 cheight;
|
|
42
|
-
u16 sstart;
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
// Custom internal storage in BDA (don't change here without also
|
|
46
|
-
// updating vgaentry.S)
|
|
47
|
-
#define VGA_CUSTOM_BDA 0xb9
|
|
48
|
-
|
|
49
|
-
struct vga_bda_s {
|
|
50
|
-
u8 flags;
|
|
51
|
-
u16 vbe_mode;
|
|
52
|
-
u16 vgamode_offset;
|
|
53
|
-
} PACKED;
|
|
54
|
-
|
|
55
|
-
#define BF_PM_MASK 0x0f
|
|
56
|
-
#define BF_EMULATE_TEXT 0x10
|
|
57
|
-
#define BF_SWCURSOR 0x20
|
|
58
|
-
#define BF_EXTRA_STACK 0x40
|
|
59
|
-
|
|
60
|
-
#define GET_BDA_EXT(var) \
|
|
61
|
-
GET_FARVAR(SEG_BDA, ((struct vga_bda_s *)VGA_CUSTOM_BDA)->var)
|
|
62
|
-
#define SET_BDA_EXT(var, val) \
|
|
63
|
-
SET_FARVAR(SEG_BDA, ((struct vga_bda_s *)VGA_CUSTOM_BDA)->var, (val))
|
|
64
|
-
#define MASK_BDA_EXT(var, off, on) \
|
|
65
|
-
SET_BDA_EXT(var, (GET_BDA_EXT(var) & ~(off)) | (on))
|
|
66
|
-
|
|
67
|
-
static inline int vga_emulate_text(void) {
|
|
68
|
-
return CONFIG_VGA_EMULATE_TEXT && GET_BDA_EXT(flags) & BF_EMULATE_TEXT;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
// Write to global variables (during "post" phase only)
|
|
72
|
-
#define SET_VGA(var, val) SET_FARVAR(get_global_seg(), (var), (val))
|
|
73
|
-
|
|
74
|
-
// Debug settings
|
|
75
|
-
#define DEBUG_VGA_POST 1
|
|
76
|
-
#define DEBUG_VGA_10 9
|
|
77
|
-
|
|
78
|
-
// vgabios.c
|
|
79
|
-
int vga_bpp(struct vgamode_s *vmode_g);
|
|
80
|
-
u16 calc_page_size(u8 memmodel, u16 width, u16 height);
|
|
81
|
-
u16 get_cursor_shape(void);
|
|
82
|
-
struct cursorpos get_cursor_pos(u8 page);
|
|
83
|
-
int bda_save_restore(int cmd, u16 seg, void *data);
|
|
84
|
-
struct vgamode_s *get_current_mode(void);
|
|
85
|
-
int vga_set_mode(int mode, int flags);
|
|
86
|
-
extern struct video_func_static static_functionality;
|
|
87
|
-
|
|
88
|
-
#endif // vgabios.h
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
// Rom layout and bios assembler to C interface.
|
|
2
|
-
//
|
|
3
|
-
// Copyright (C) 2009-2013 Kevin O'Connor <kevin@koconnor.net>
|
|
4
|
-
//
|
|
5
|
-
// This file may be distributed under the terms of the GNU LGPLv3 license.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
#include "asm-offsets.h" // BREGS_*
|
|
9
|
-
#include "config.h" // CONFIG_*
|
|
10
|
-
#include "entryfuncs.S" // ENTRY_*
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
/****************************************************************
|
|
14
|
-
* Rom Header
|
|
15
|
-
****************************************************************/
|
|
16
|
-
|
|
17
|
-
.section .rom.header
|
|
18
|
-
.code16
|
|
19
|
-
.global _rom_header, _rom_header_size, _rom_header_checksum
|
|
20
|
-
_rom_header:
|
|
21
|
-
.word 0xaa55
|
|
22
|
-
_rom_header_size:
|
|
23
|
-
.byte 0
|
|
24
|
-
_rom_header_entry:
|
|
25
|
-
jmp _optionrom_entry
|
|
26
|
-
_rom_header_checksum:
|
|
27
|
-
.byte 0
|
|
28
|
-
_rom_header_other:
|
|
29
|
-
.space 17
|
|
30
|
-
_rom_header_pcidata:
|
|
31
|
-
#if CONFIG_VGA_PCI == 1
|
|
32
|
-
.word rom_pci_data
|
|
33
|
-
#else
|
|
34
|
-
.word 0
|
|
35
|
-
#endif
|
|
36
|
-
_rom_header_pnpdata:
|
|
37
|
-
.word 0
|
|
38
|
-
_rom_header_other2:
|
|
39
|
-
.word 0
|
|
40
|
-
_rom_header_signature:
|
|
41
|
-
.asciz "IBM"
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
/****************************************************************
|
|
45
|
-
* Entry points
|
|
46
|
-
****************************************************************/
|
|
47
|
-
|
|
48
|
-
// This macro implements a call while avoiding instructions
|
|
49
|
-
// that old versions of x86emu have problems with.
|
|
50
|
-
.macro VGA_CALLL cfunc
|
|
51
|
-
#if CONFIG_VGA_FIXUP_ASM
|
|
52
|
-
pushw %ax
|
|
53
|
-
callw \cfunc
|
|
54
|
-
#else
|
|
55
|
-
calll \cfunc
|
|
56
|
-
#endif
|
|
57
|
-
.endm
|
|
58
|
-
|
|
59
|
-
// This macro is the same as ENTRY_ARG except VGA_CALLL is used.
|
|
60
|
-
.macro ENTRY_ARG_VGA cfunc
|
|
61
|
-
cli
|
|
62
|
-
cld
|
|
63
|
-
PUSHBREGS
|
|
64
|
-
movw %ss, %ax // Move %ss to %ds
|
|
65
|
-
movw %ax, %ds
|
|
66
|
-
movl %esp, %ebx // Backup %esp, then zero high bits
|
|
67
|
-
movzwl %sp, %esp
|
|
68
|
-
movl %esp, %eax // First arg is pointer to struct bregs
|
|
69
|
-
VGA_CALLL \cfunc
|
|
70
|
-
movl %ebx, %esp // Restore %esp (including high bits)
|
|
71
|
-
POPBREGS
|
|
72
|
-
.endm
|
|
73
|
-
|
|
74
|
-
DECLFUNC entry_104f05
|
|
75
|
-
entry_104f05:
|
|
76
|
-
ENTRY_ARG_VGA vbe_104f05
|
|
77
|
-
lretw
|
|
78
|
-
|
|
79
|
-
DECLFUNC _optionrom_entry
|
|
80
|
-
_optionrom_entry:
|
|
81
|
-
ENTRY_ARG_VGA vga_post
|
|
82
|
-
lretw
|
|
83
|
-
|
|
84
|
-
DECLFUNC entry_10
|
|
85
|
-
entry_10:
|
|
86
|
-
ENTRY_ARG_VGA handle_10
|
|
87
|
-
iretw
|
|
88
|
-
|
|
89
|
-
#define VGA_CUSTOM_BDA_FLAGS 0xb9
|
|
90
|
-
#define BF_EXTRA_STACK 0x40
|
|
91
|
-
|
|
92
|
-
// Entry point using extra stack
|
|
93
|
-
DECLFUNC entry_10_extrastack
|
|
94
|
-
entry_10_extrastack:
|
|
95
|
-
cli
|
|
96
|
-
cld
|
|
97
|
-
pushw %ds
|
|
98
|
-
pushl %eax
|
|
99
|
-
|
|
100
|
-
movw $SEG_BDA, %ax // Check if extra stack is enabled
|
|
101
|
-
movw %ax, %ds
|
|
102
|
-
testb $BF_EXTRA_STACK, VGA_CUSTOM_BDA_FLAGS
|
|
103
|
-
jz 1f
|
|
104
|
-
|
|
105
|
-
movw %cs:ExtraStackSeg, %ds // Set %ds:%eax to space on ExtraStack
|
|
106
|
-
movl $(CONFIG_VGA_EXTRA_STACK_SIZE-PUSHBREGS_size-16), %eax
|
|
107
|
-
SAVEBREGS_POP_DSEAX // Save registers on extra stack
|
|
108
|
-
movl %esp, PUSHBREGS_size+8(%eax)
|
|
109
|
-
movw %ss, PUSHBREGS_size+12(%eax)
|
|
110
|
-
popl BREGS_code(%eax)
|
|
111
|
-
popw BREGS_flags(%eax)
|
|
112
|
-
|
|
113
|
-
movw %ds, %dx // Setup %ss/%esp and call function
|
|
114
|
-
movw %dx, %ss
|
|
115
|
-
movl %eax, %esp
|
|
116
|
-
VGA_CALLL handle_10
|
|
117
|
-
|
|
118
|
-
movl %esp, %eax // Restore registers and return
|
|
119
|
-
movw PUSHBREGS_size+12(%eax), %ss
|
|
120
|
-
movl PUSHBREGS_size+8(%eax), %esp
|
|
121
|
-
popl %edx
|
|
122
|
-
popw %dx
|
|
123
|
-
pushw BREGS_flags(%eax)
|
|
124
|
-
pushl BREGS_code(%eax)
|
|
125
|
-
RESTOREBREGS_DSEAX
|
|
126
|
-
iretw
|
|
127
|
-
|
|
128
|
-
1: // Use regular entry point if the extra stack is disabled
|
|
129
|
-
popl %eax
|
|
130
|
-
popw %ds
|
|
131
|
-
jmp entry_10
|
|
132
|
-
|
|
133
|
-
// Timer irq handling
|
|
134
|
-
DECLFUNC entry_timer_hook
|
|
135
|
-
entry_timer_hook:
|
|
136
|
-
ENTRY handle_timer_hook
|
|
137
|
-
ljmpw *%cs:Timer_Hook_Resume
|
|
138
|
-
|
|
139
|
-
// Timer irq handling on extra stack
|
|
140
|
-
DECLFUNC entry_timer_hook_extrastack
|
|
141
|
-
entry_timer_hook_extrastack:
|
|
142
|
-
cli
|
|
143
|
-
cld
|
|
144
|
-
pushw %ds // Set %ds:%eax to space on ExtraStack
|
|
145
|
-
pushl %eax
|
|
146
|
-
movw %cs:ExtraStackSeg, %ds
|
|
147
|
-
movl $(CONFIG_VGA_EXTRA_STACK_SIZE-PUSHBREGS_size-8), %eax
|
|
148
|
-
SAVEBREGS_POP_DSEAX
|
|
149
|
-
movl %esp, PUSHBREGS_size(%eax)
|
|
150
|
-
movw %ss, PUSHBREGS_size+4(%eax)
|
|
151
|
-
|
|
152
|
-
movw %ds, %dx // Setup %ss/%esp and call function
|
|
153
|
-
movw %dx, %ss
|
|
154
|
-
movl %eax, %esp
|
|
155
|
-
calll handle_timer_hook
|
|
156
|
-
|
|
157
|
-
movl %esp, %eax // Restore registers and return
|
|
158
|
-
movw PUSHBREGS_size+4(%eax), %ss
|
|
159
|
-
movl PUSHBREGS_size(%eax), %esp
|
|
160
|
-
RESTOREBREGS_DSEAX
|
|
161
|
-
ljmpw *%cs:Timer_Hook_Resume
|