flat assembler
Message board for the users of flat assembler.

Index > DOS > DEX OS Protected mode

Author
Thread Post new topic Reply to topic
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u 09 Dec 2006, 01:19
It depend what you want to code, but you may find DexOS good for your coding in a pmode Dos like environment, as its like a pmode supper Dos with upto 4gb of memory, it got a fasm port, you can not call Dos functions, as theres no Dos, but its got it own pmode function, you can call realmode functions (eg: int 10h) and pass address, as the descriptors are fix at boot up.
simple Hello world DexOS example:
Code:
use32        ORG    0x400000                                     jmp    start                                        db     'DEX1'                                start:        mov     esi,hello        mov     ah,9        int     40h        mov     ah,02h        int     40h        ret  hello db 'Hello from protected mode!',0Dh,0Ah,0    

As well as int 40h there a call table with lots of functions.
You can even run it from Dos and return back to Dos.


Last edited by Dex4u on 21 Jun 2007, 13:02; edited 1 time in total
Post 09 Dec 2006, 01:19
View user's profile Send private message Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1900
DOS386 09 Dec 2006, 03:27
Dex4u wrote:

Quote:

It depend what you want to code, but you may find DexOS good for your coding in a pmode Dos like environment, as its like a pmode supper Dos with upto 4gb of memory


OK, it's interesting, Smile but: your 32-bit DOS is NOT the only one: there is also
BOS (difference DEXOS vs BOS ???) and FreeDOS-32 (OK, it is written mostly
in C, will possibly have a crappy 16-bit "DOS-BOX", but OTOH it should
run existing 32-bit DOS apps also - does DEXOS also allow this ?).

Maybe I'll make a DEXOS version also (or will I have to release 3 32-bit
versions ??? Rolling Eyes), but besides one for 16-bit DOS'es, not instead.

EDIT: split related

_________________
Bug Nr.: 12345

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

Status: Closed: NOT a Bug


Last edited by DOS386 on 10 Dec 2006, 15:52; edited 1 time in total
Post 09 Dec 2006, 03:27
View user's profile Send private message Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u 09 Dec 2006, 18:20
Quote:
BOS (difference DEXOS vs BOS ???)
BOS is coded by bubach also a founding member of DexOS team, I am a member of the BOS team, we share the same design ideas, so they are both great single tasking pmode OS, its up to you to make your own mind up Wink .

As for freedos32, if you have the time you need to test, both freedos32 and DexOS to make your own mind up.
Next ver of DexOS will have the following, dew out before Xmas (Note: new name from Dex4u).
Read/write to floppy: YES.
Read/write to Hdd: YES.
Read/write to USB: Fob YES.
Read/write to USB, floppy, hdd: YES.
Read from Cd: YES.
Can it be installed on Hdd YES
Can add drivers or module on fly: YES
Sound drivers (Sb, fm801, ac97): YES
As full working TCP/IP stack : YES
Can be used as a server: YES
As over 100 built in function: YES
As a CLI and GUI: YES
As built in vesa function as easy to as vga in Dos: YES
As a fasm port: YES
As a IDE for fasm YES
As a forth port YES,
Can program in C on it: YES
As a Brainfuck Interpreter YES
Is it in active Dev YES
Can it run old Dos programs NO
That because, we do not want it to, we need to move on to the next stage, into the world of 32bit and maybe 64bit, we need a environment that give you what Dos did + the benefit of 32bit pmode and modern stuff, i am making such a environment, but its up to you to chose it or not, Try FreeDos first and then make your own mind up, i am just pointing out what is available Wink .

PS: I code MiniDOS in a about two week runs about 50% of old dos games in less than 2k, i could easy make DexOS run Dos Stuff, but then people would run Dos stuff instead of making new, we need a modern ver of Dos.
Post 09 Dec 2006, 18:20
View user's profile Send private message Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1900
DOS386 09 Dec 2006, 18:53
Quote:

BOS is coded by bubach also a founding member of DexOS team, I am a member of the BOS team, we share the same design ideas, so they are both great single tasking


Great ! Smile

Can you guarantee that Multitask will NOT be implemented or
at least will be well detectable (so my prog can refuse to run Wink) ?
Can you also keep SWapPing out of DEXOS ?

But I cannot reproduce why there are 2 of them ... are they compatible at least ?

Quote:

Read/write to floppy: YES.
Read/write to Hdd: YES.
Read/write to USB: Fob YES.
Read/write to USB, floppy, hdd: YES.


Filesystems ? Full HD support with partitions and LBA48 ?

Quote:

Read from Cd: YES.
Can it be installed on Hdd YES
Can add drivers or module on fly: YES
Sound drivers (Sb, fm801, ac97): YES


Great Smile

Quote:

As full working TCP/IP stack : YES
Can be used as a server: YES
As over 100 built in function: YES
As a CLI and GUI: YES
As built in vesa function as easy to as vga in Dos: YES


I can do my own GUI using VESA instead of a silly "windows"/GTK GUI API ?

Quote:

As a fasm port: YES
As a IDE for fasm YES
As a forth port YES,
Can program in C on it: YES


GCC ?

Quote:

As a Brainfuck Interpreter YES
Is it in active Dev YES


Obvioulsy Smile

Quote:

Can it run old Dos programs NO
That because, we do not want it to


Well, one has to difference:
- Old 16-bit RM programs
- Crappy 16-bit DPMI
- New 32-bit DPMI programs

I definitely do NOT like things like DOSEMU/DOSBOX/NTVDM.
If DEXOS can't run new 32-bit DPMI programs neither for
good reason, it's OK also, but what DEXOS needs is a port
of BOCHS or QEMU
allowing to run old and new DOS'es and
DOS programs on it in a clean way.

Quote:

we need to move on to the next stage, into the world of 32bit and maybe 64bit


32-bit brings a huge benefit against 16-bit ... but I am NOT
amused with 64-bit ...

Quote:

enviroment that give you what Dos did + the benerfit of 32bit pmode and moden stuff, i am making such a enviroment, but its up to you to chose


Looks very promising ... Smile but I do not want to drop "old" DPMI just now.

EDIT: removed split request Wink

_________________
Bug Nr.: 12345

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

Status: Closed: NOT a Bug


Last edited by DOS386 on 10 Dec 2006, 15:41; edited 1 time in total
Post 09 Dec 2006, 18:53
View user's profile Send private message Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u 09 Dec 2006, 19:48
Quote:

Can you guarantee that Multitask will NOT be implemented or
at least will be well detectable (so my prog can refuse to run Wink) ?
YES
Quote:

But I cannot reproduce why there are 2 of them ... are they compatible at least ?
Everyone like to comtrol the way a OS goes, but they are not compatable in code, but are in design.
Quote:
Filesystems ? Full HD support with partitions and LBA48 ?

Fat16 and fat32, first partitions only for now.
Quote:
I can do my own GUI using VESA instead of a silly "windows"/GTK GUI API ?
Yes, it up up to you, but we also have win.inc with function to help to do this easy http://www.dex4u.com/images/DexGui.jpg
Quote:
GCC ?
I would rather eat s**t than let that be ported to DexOS
Quote:
I definitely do NOT like things like DOSEMU/DOSBOX/NTVDM.
If DEXOS can't run new 32-bit DPMI programs neither for
good reason, it's OK also, but what DEXOS needs is a port
of BOCHS or QEMU
allowing to run old and new DOS'es and
DOS programs on it in a clean way.
As DexOS can run from Dos, you can run any dos program, its as simple as booting DexOS from FreeDos you type "kernel32.exe at the dos prompt use DexOS as you need to then type exit and your back at the dos prompt to run ANY Dos program, you can go back and forth all day Cool .
Post 09 Dec 2006, 19:48
View user's profile Send private message Reply with quote
rhyno_dagreat



Joined: 31 Jul 2006
Posts: 487
Location: Maryland, Unol Daleithiau
rhyno_dagreat 09 Dec 2006, 20:02
Wow... This is fun to read... it keeps going and going and going and going... Just like the Energizer Bunny! Very Happy
Post 09 Dec 2006, 20:02
View user's profile Send private message Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1900
DOS386 09 Dec 2006, 20:12
Quote:

YES


Great. Is SWapPing also securely banned ?

Quote:

Fat16 and fat32, first partitions only for now.


FAT12 and FAT+, and full partition support will come one day ?

If DEXOS does NOT support NTFS: I consider it as feature, not a lack Wink

Quote:

Yes, it up up to you, but we also have win.inc with function to help to do this easy http://www.dex4u.com/images/DexGui.jpg


Similar to XP ... incl. crappy quality of JPG images. I prefer PNGOUT for
screenshots. Wink

Quote:

I would rather eat s**t than let that be ported to DexOS


What compiler did you/someone port if it is NOT GCC ?

Quote:

As DexOS can run from Dos, you can run any dos program, its as simple as booting DexOS from FreeDos you type "kernel32.exe at the dos prompt use DexOS as you need to then type exit and your back at the dos prompt to run ANY Dos program, you can go back and forth all day


This is great. When I run DEXOS from FreeDOS-16, it saves the low
memory somewhere (?), and restores it when exited ?

_________________
Bug Nr.: 12345

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

Status: Closed: NOT a Bug
Post 09 Dec 2006, 20:12
View user's profile Send private message Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u 09 Dec 2006, 23:17
C compiler is Fabrice Bellard's Tiny C compiler
DexOS, also as fat12 for floppy, mist that one, full partion support come in the one after next ver.
Its is load in Dos like anyother Dos program, (DexOS is a mz exe file 57k in size) DexOS program use 2MB and above. does not over run any dos parts, when you return to dos everthing is the same as when you started.
Png screen for you
http://www.dex4u.com/gui.htm
Post 09 Dec 2006, 23:17
View user's profile Send private message Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1900
DOS386 10 Dec 2006, 18:16
Quote:
Next ver of DexOS will have the following


This is great but I tested the existing one and was not amused:

- When loaded from FreeDOS as suggested, sometimes KERNEL32 just silently exits instead of starting
- When it runs, in can access neither the floppy nor the HD (C: part, 400 MB)

Further, I can't follow why it has a special "emulator" version: what is
the difference ? What emulators are affected ? FreeDOS does NOT need
an emulator version, I can run the same version natively and in BOCHS
or QEMU. (OK, there is DOSEMU, but it is silly and I do not take it
serious ...).

The concept of DEXOS is very good, but the bugs have to get kicked before
I can develop for it. Wink
Post 10 Dec 2006, 18:16
View user's profile Send private message Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u 10 Dec 2006, 19:01
Well it seems freeDos is not as good as YOU think, i have only test it on MS Dos, i can bet you anything it run fine from MS-Dos, so freeDos has some way to go.
As for not reading Hdd maybe your Hdd is fat16 ?, as fat32 only in that ver, i pointed in the next ver.
As for emulator, this is not my problem, its the emulator, if by using a DIV instruction it gives a Double error in emulators, but works fine on real PC.
Then it emulators that do not work.

Your right about developing for DexOS, you would need to get a brain first Laughing
Post 10 Dec 2006, 19:01
View user's profile Send private message Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1900
DOS386 10 Dec 2006, 19:46
Quote:
for DexOS, you would need to get a brain
Confused Question

Quote:
this is not my problem, its the emulator


But you still did NOT reveal what emulator is affected.
Or does this issue affect ALL emulatos ?

Quote:
As for not reading Hdd maybe your Hdd is fat16


It is FAT16, not maybe, but definitely, since I revealed the size: 400MB.
FAT32 is possible from 512 MB above Laughing

Quote:
bet you anything it run fine from MS-Dos, so freeDos has some way to go


Maybe ... it does start from EDR-DOS. The bug could be in FreeDOS, but
also in DEXOS. As for MS-DOG, it is highly irrelevant and obsolete for me.

I tested the BMP viewer - does not run.

Awaiting the next release of DEXOS ... with all the features implemented
... and as few bugs as possible remaining.

_________________
Bug Nr.: 12345

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

Status: Closed: NOT a Bug
Post 10 Dec 2006, 19:46
View user's profile Send private message Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u 10 Dec 2006, 20:22
Quote:
I tested the BMP viewer - does not run.

If you had been to the forum you would know why, we have changed our main load address from, 2MB to 4MB some old programs, we lost the code, so they have the wrong org.
If you use "load FileName.dex" for there old prog they work fine, as this loads them to 2MB.

As for emulators all need special floppy driver, i do not use emulators, as most do not emulator everything right and that as good as useless.
I provide a emulator ver for them that do, i am not wasting my time fix emulator problems, if it works on a real PC that all that matters.
You will be back wanting to code for DexOS but maybe next time you will need to buy it.
Post 10 Dec 2006, 20:22
View user's profile Send private message Reply with quote
bubach



Joined: 17 Sep 2004
Posts: 341
Location: Trollhättan, Sweden
bubach 11 Dec 2006, 17:54
BOS is in no way comparable with DexOS or FreeDOS-32. It can't load any programs yet, I'm stuck with my FAT12 code and to little spare time.. :S
Post 11 Dec 2006, 17:54
View user's profile Send private message Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid 11 Dec 2006, 21:16
dex: ever considered 64bits?
Post 11 Dec 2006, 21:16
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u 11 Dec 2006, 23:18
Sure, i converted Tomasz Grysztar great demo to run from DexOS
http://board.flatassembler.net/topic.php?t=6206
The idea of DexOS has always been a menu that has 3 options
kernel16, (eg: MiniDos ) kernel32 (DexOS as we know it ) and kernel64 (a long mode 64bit kernel).
But its time and also, i am a bit disappointed in the takeup of DexOS, i am so busy working on it, i have no time to make some good demos to demo its worth, we have a great team of coders, but we just lost a great asm coder, as he's gone to the dark side, wants to code a OS in C++ Crying or Very sad .

I am thinging about coding a bootable Web browser as a demo, do not know if people will want it ?.
Post 11 Dec 2006, 23:18
View user's profile Send private message 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.