flat assembler
Message board for the users of flat assembler.
Index
> DOS > Tomasz's (old) HDOS extender |
Author |
|
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. |
|||
19 May 2007, 19:48 |
|
LocoDelAssembly 18 Dec 2007, 19:07
WARN: I've just split this from DOS FAQ
|
|||
18 Dec 2007, 19:07 |
|
Tomasz Grysztar 09 Jan 2008, 21:41
I just realized I haven't answered some important questions.
So here we go. DOS386 wrote:
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". 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. But on those it was very reliable. DOS386 wrote: If it is far behind HDPMI32 or DOS/32A then I am probably not smart 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. |
|||
09 Jan 2008, 21:41 |
|
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 ... 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. > 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 |
|||
09 Jan 2008, 22:07 |
|
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. |
|||
25 Jan 2008, 05:46 |
|
DOS386 18 Feb 2008, 04:35
> doubt using parts of PMODE are an issue since
Well, rechecked: Original PMODE: liberal BSD-like license 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 ... DGJPP/C is for the tools |
|||
18 Feb 2008, 04:35 |
|
rugxulo 19 Feb 2008, 03:14
DOS386 wrote:
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. |
|||
19 Feb 2008, 03:14 |
|
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
|
|||
29 Dec 2011, 17:01 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.