VOGONS


fascinating Plain DOS 2 Core Demo.

Topic actions

Reply 20 of 26, by dartfrog

User metadata
Rank Newbie
Rank
Newbie
RayeR wrote on 2026-06-01, 02:24:

When involving VMX, ACPI, etc... then we can just get Linux and run multiple QEMUs on it (or some hypervisor and DOS VMs)...
I could imagine that some SMP support could be integrated in V86 monitor like JEMM386 and DPMI server, maybe exposing some SMP API and DOS clients that could cooperate with this. It would still keep programs running on bare metal without extra latencies of VMEXIT (switching to hypervisor)...

yep RayeR, exactly. Almost no point in redeving DOS like that unless someone wanted to build an OS themselves for fun or experience. If someone did, they would most definitely be building an inferior KVM. Really illustrates why that bloodwych demo is so clever in its minimalism. I like your JEMM386/DPMI angle. keep the JEMM386/DPMI and just add the minimum SMP plumbing (APIC discovery, AP boot, per core stacks, a spinlock or two for the shared memory mailbox), and expose a simple DOS callable API. then if you want multicore you can opt in and apps that don't have it are unaffected.

Potential PCIe-to-PCI-to-ISA pathway repository: https://github.com/DartFrogTek/PCIe-PCI-ISA
Using KMDF driver on Win10 PicoGUS PLAYS DOOM SAMPLES VIA PORT IO & DMA!

Reply 21 of 26, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

Yes, Michael Chourdakis even created some minimal API but if I remember it was incompatible with V86 (xEMM386), needed to start from real mode.

Gigabyte GA-P67-DS3-B3, Core i7-2600K @4,5GHz, 8GB DDR3, 128GB SSD, GTX970(GF7900GT), SB Audigy + YMF724F + DreamBlaster combo + LPC2ISA

Reply 22 of 26, by wbc

User metadata
Rank Member
Rank
Member

multithreading under DOS has it potentinal, but i'd agree it mostly makes sense for device emulation rather than user-mode applications 😀 Don't also forget to take a look at those two technically impressive 256 byte DOS intros:
https://www.pouet.net/prod.php?which=96105
https://www.pouet.net/prod.php?which=96532
which showcase multicore support under DOS for rendering at 1920x1080 - and they also come with source code 😀

--wbcbz7

Reply 23 of 26, by arjunae

User metadata
Rank Newbie
Rank
Newbie

a little Announcement
we were curious about the Bootcode and spend quite some time using claude to enhance and succesfuly testing it in virtualbox.
With good results we encapsulated it within lib2core.a , a library that manages a second core within DOS apps.
See https://github.com/arjunae/2core_dos if you want.
Besides a simple mock source showing the basic concepts, edge264 has been ported to DOS + lib2core as a more sophistcated use case.
Its curently in prototype state but was sucessfully tested on real Hardware too so hopefully it finds the way to other scenarios out there
Feel free to fork and enjoy, arjunae

Reply 24 of 26, by megatron-uk

User metadata
Rank l33t
Rank
l33t

Come on. You know what is next, now that you can offload to a second core.

VSBHDA/SBEMU with MT32 emulation....

My collection database and technical wiki:
https://www.target-earth.net

Reply 26 of 26, by arjunae

User metadata
Rank Newbie
Rank
Newbie

@sdz this is an interesting assembler only approach with a compatible license so if theres interest in porting eg the boot or blobloader methods this would be possible and in fact, explicitly encouraged so it activates caching , sse ops and the FPU .
As im concerned, i not really into and dont like assembler for multiple reasons so im not interested in putting efforts in such projects but of course i could help in answering questions to at least make it compatible so both can coexist in parallel.