flat assembler
Message board for the users of flat assembler.

Index > DOS > Tomasz's (old) HDOS extender

Author
Thread Post new topic Reply to topic
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8357
Location: Kraków, Poland
Tomasz Grysztar 19 May 2007, 19:48
DOS386 wrote:
Unfortunately none of existing DOS extenders or DPMI kernels is written in FASM.

That's not fully true. There was my HDOS extender (initially based on PMODE extender, the same that was origin for PMODE/W), which was running first fasm versions before (about one year later) I changed it to run in flat real mode. It was written in syntax of my previous assembler ASM32 (you may find some info about it here), and because it was so similar to fasm's syntax, it was compilable with fasm almost immediately then.
I still have the sources of several HDOS versions, I recovered them some time ago - if anyone's interested I may share them.
Post 19 May 2007, 19:48
View user's profile Send private message Visit poster's website Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1903
DOS386 21 May 2007, 14:04
Quote:
That's not fully true.


Only 99.99% true Shocked

Quote:
There was my HDOS extender


Thanks for pointing out ... but since it seems to never have been public
and you did not mention it in my DPMI thread some months ago, I had
no reason to assume that it could exist Rolling Eyes

Quote:
initially based on PMODE extender


Licensing problems ???

Quote:
still have the sources of several HDOS versions, I recovered them some time ago - if anyone's interested I may share them.


Could be of some interest ... what are the features ?

- DPMI only or "extender" ?
- Residentable ?
- Stubable ?
- Memory (bad: cca 32 MiB | good: 4 or at least 2 GiB)
- DPMI version (minimal 0.9 , 0.9+ , 0.9++ , 1.0) ?
- CPL&IOPL ?
- Bits (16 , 32 , both) ?
- Zero / Non-Zero based
- EXE formats (COFFee , LE , PE , flat , ...) ?
- "truth" / "API" translation ?
- Reliability ?

If it is far behind HDPMI32 or DOS/32A then I am probably not smart
enough to turn it into a serious competitor by now Confused

I'll update the FAQ ASAP Smile

_________________
Bug Nr.: 12345

Title: Hello World program compiles to 100 KB !!!

Status: Closed: NOT a Bug


Last edited by DOS386 on 18 Dec 2007, 19:12; edited 1 time in total
Post 21 May 2007, 14:04
View user's profile Send private message Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4624
Location: Argentina
LocoDelAssembly 18 Dec 2007, 19:07
WARN: I've just split this from DOS FAQ
Post 18 Dec 2007, 19:07
View user's profile Send private message Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8357
Location: Kraków, Poland
Tomasz Grysztar 09 Jan 2008, 21:41
I just realized I haven't answered some important questions.
So here we go. Wink

DOS386 wrote:
Quote:
initially based on PMODE extender


Licensing problems ???

Might be. Some parts of PMODE code are still left there (just converted to ASM32/early fasm syntax).

DOS386 wrote:
- DPMI only or "extender" ?

Extender, with some additional own interrupt services (with int 48h, if I remember correctly)
DOS386 wrote:
- Residentable ?

No, because it was more a loader-extender variant, than just a DPMI service
DOS386 wrote:
- Stubable ?

Yes.
DOS386 wrote:
- Memory (bad: cca 32 MiB | good: 4 or at least 2 GiB)

There were some small issues, but generally should go for a whole memory without problem.
DOS386 wrote:
- DPMI version (minimal 0.9 , 0.9+ , 0.9++ , 1.0) ?

0.9 with some of the 1.0 functionalities (perhaps it's one of the + or ++ variants you mentioned, I just don't know those conventions). It was also aspiring to be the "True DPMI" host - that is, with 32-bit MS-DOS services (only emulated, though).
DOS386 wrote:
- CPL&IOPL ?

Program was executed at ring 0 - just to keep the "DOS spirit". Wink
DOS386 wrote:
- Bits (16 , 32 , both) ?

32 bits only
DOS386 wrote:
- Zero / Non-Zero based

Non-Zero based and this is the important flaw of it, and one of the reasons why I no longer use it.
DOS386 wrote:
- EXE formats (COFFee , LE , PE , flat , ...) ?

My own HF format. It had HF DLL support, and HDOS was loading, relocating, and processing DLL imports - all from the stub loader. You could also load DLLs on fly with the HDOS interrupt services.
DOS386 wrote:
- "truth" / "API" translation ?

As I said above - generally yes; some of the less important DOS functions may be missed.
DOS386 wrote:
- Reliability ?

Well, never tested it on more than three-four machines. Smile But on those it was very reliable.

DOS386 wrote:
If it is far behind HDPMI32 or DOS/32A then I am probably not smart
enough to turn it into a serious competitor by now Confused

No, I don't plan to revive it and even try to make it any serious comptetitor of today's nice and shiny DPMI hosts and extenders. It's just a piece of my coding history, also related to the history of fasm.
Post 09 Jan 2008, 21:41
View user's profile Send private message Visit poster's website Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1903
DOS386 09 Jan 2008, 22:07
Thanks.

Tomasz wrote:

> No, I don't plan to revive it and even try to make it any serious comptetitor

Yeah Sad ... you just previously neglected my statement that "no DOS extender or DPMI host compiles with FASM" and offered to "share" it. I don't really need it badly but if you release it I will download it and have a look. OTOH possible licensing problems ("Might be. Some parts of PMODE code are still left there") are an argument against releasing it. Sad

> Program was executed at ring 0 - just to keep the "DOS spirit"

DPMI with 3/3 and GDT and IDT "open" also keeps it sufficiently Laughing
Post 09 Jan 2008, 22:07
View user's profile Send private message Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo 25 Jan 2008, 05:46
I doubt using parts of PMODE are an issue since it's no longer sold commercially. Lots of people have used PMODE for various things (e.g. XPL0, CC386). IIRC, even PMODE/W is free for commercial use in your own projects these days (as long as you don't try selling it outright as your own).

BTW, wasn't FASM at one time sorta using WDOSX? (I seem to remember some mention in the docs a long time ago.) It's stub-able, 32-bits, extended int 21h API, supports DLLs, ring 0, etc. And there are others similarly available too for assembly (e.g. D3X). At least the latter uses DJGPP + NASM (freely available tools), so maybe you could just tweak that for your old projects if you got really bored. Smile
Post 25 Jan 2008, 05:46
View user's profile Send private message Visit poster's website Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1903
DOS386 18 Feb 2008, 04:35
> doubt using parts of PMODE are an issue since

Well, rechecked:

Original PMODE: liberal BSD-like license Smile

PMODE/W: closed source freeware

PMODE/DJ: GPL

> too for assembly (e.g. D3X). At least the latter uses DJGPP + NASM (freely available tools)

D3X extender itself is 100% ASM and uses NASM only Smile ... DGJPP/C is for the tools Wink
Post 18 Feb 2008, 04:35
View user's profile Send private message Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo 19 Feb 2008, 03:14
DOS386 wrote:

> too for assembly (e.g. D3X). At least the latter uses DJGPP + NASM (freely available tools)

D3X extender itself is 100% ASM and uses NASM only Smile ... DGJPP/C is for the tools Wink


Yes, but you need something (e.g. WLINK ?? or its own STUBX) to bind the stub to the .EXE. And STUBX is compiled by DJGPP (but the actual extender core(s) themselves are fully NASM). It work with most DJGPP, Watcom (32-bit), and via pure assembly.

But, you, DOS386, claim that FreeBASIC tools don't like it. Oh well, nothing's perfect.
Post 19 Feb 2008, 03:14
View user's profile Send private message Visit poster's website Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8357
Location: Kraków, Poland
Tomasz Grysztar 29 Dec 2011, 17:01
Appendix: I was reluctant to make HDOS public at the time of this discussion, but I finally released it few years later in this thread: http://board.flatassembler.net/topic.php?p=138815
Post 29 Dec 2011, 17:01
View user's profile Send private message Visit poster's website Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.