(redirected from
Blog.PerditionC)
On this page...
Todo
- look through dev kernel for more changes to merge into stable kernel
- see Blog.Jerm
| Finish my SFT work. [on hold/cancelled] |
| Check on Emm386 incompatibility with Watcom 386 kernel. [fixed] |
Released (FreeDOS [FD]) kernels:
- 2035, by last official maintainer Bart Oldeman
- 2035A, by interim maintainer Jeremy Davis
- 2036, compiled 2006/07/26 or later, this one will be the FreeDOS 1.0 kernel
- 2037, the latest unstable kernel revision - discontinued as part of FreeDOS proper
- 2038, to be made available shortly pending some testing and patch cleanup
These kernels have the following features:
- FreeDOS specific menu system in config file
- 8086 support (succesfully verified on PicoXT emulator) - http://www.picofactory.com/free/software/pc-xt-emulator/(approve sites)
- FAT12 and FAT16 support
- FAT32 support, may be compiled out if desired
- DOS version (faked M$-DOS version) numbering support:
- fat32: 7.10
- fat12/16: 5.00
Development (DOS-C [DC]) kernels:
- 2035B-CVS, daily builds by Jeremy Davis. Much like 2035A {FD}
- 2035W-CVS, daily builds by Jeremy Davis {FD}
- 2037, uploaded on ibiblio {FD}
- 3.x, to be released {DC}
Currently has the following additional features:
- Improved support for l10n (country, NLSFUNC, MODE, CHCP)
- Windows 3.1 support
- More stuff.
| To avoid confusion my development kernel will be reversioned as a DOS-C kernel |
Alternate (Enhanced DR-DOS [EE]) kernels:
- 7.01.08 WIP, Udo Kuhnt's enhancements to the OpenDOS (DR-DOS) kernel
See drdosprojects.de
Just to remember:
l10n = localization (country-specific settings such as how to represent numbers, dates, money, ...). Specific to kernel, drivers and applications that support it.
i18n = internationalization (translations), application / distribution specific instead of something kernel specific
How I do I build the kernel?
If you want to have a custom script, just make a custom.bat with below mentioned parameters and a CALL command: @CALL BUILD.BAT LIST 186 FAT32 /D WIN31SUPPORT
On Windows, it's wise to end this custom.bat file with a PAUSE command.
I build the kernel a lot (sometimes several dozen times in a row when testing), but most of the time I use the Dev kernel and the command line of:
build list 186 fat32 /D WIN31SUPPORT
- where build of course initiates the compiling and other steps to generate a working kernel (compile, link, optionally compress, statically relocate)
- list causes the assembly files to generate a listing (output file that shows original source, line #s, and generated bytes)
- 186 causes the compiler to generate code for 80186 or newer computers (slightly smaller code but still runs on my 286 based computers)
- fat32 enables support for FAT32 filesystem (all kernels have FAT12 and FAT16 support)
- /D WIN31SUPPORT enables windows 3.x to run (really need to add win option to build.bat)
What I am currently working on
- Windows 3.1 enhanced and DOS boxes support
- currently my dev kernel has fnodes removed and uses SFTs, but it has some bugs I need to work out before committing
Future plans
- create an IFS (Installable File System - http://en.wikipedia.org/wiki/Installable_File_System(approve sites)) kit based on RIFS
- use the IFS kit to support Lean filesystem
- NTFS support
- use IFS kit for general support, based on Linux NTFS project
- add boot time support - add hook to kernel so can use boot sector(s) NTFS load support to load IFS NTFS version
- resources: Linux NTFS project, Reactos NTFS (relsoft.net)
other probably non FreeDOS stuff on my todo list
- czar
- fix multiple processor support for syscall redirector
- work on syscall implementations
- AbiWord
- native win32 libs
- new msvc makefiles to avoid breaking MinGW build or change to use build
- update plugin API to use COM-like api (use pure virtual base classes and similar layout so any Win32 C++ compiler can be used to create plugins and perhaps other programming environments)
- fdos
- commit something
- finish updating ...
- atapicdd
- finish cdrom driver portion
- write ASPI over ATA / ATASPI portion
- pdtree
- rewrite so doesn't use so much memory
- win32 on DOS
- play with WDOSX and HXDOSX, see about using for Abi, etc. on DOS
- OEM IDs? for DOS Get Version (Int 21h fn 30h) [From 4DOS & Ralf Brown]
- 00h PC-DOS (IBM), Novell DOS/Caldera OpenDOS?/some DR-DOS versions
- 01h Compaq
- 02h - MS Packaged Product ?
- 04h AT&T
- 05h ZDS (Zenith Electronics)
- 44h Wendin-DOS
- 06h Hewlett-Packard
- 07h Zenith Data Systems (ZDS, Groupe Bull), for DOS 5.0+
- 08h Tandon
- 0?h AST (AST Europe Ltd.)
- 0Ah Asem
- 0Bh Hantarex
- 0Ch SystemsLine?
- 0Dh Packard-Bell
- 0Eh Intercomp
- 0Fh Unibit
- 10h Unidata
- 16h DEC
- 17h Olivetti DOS
- 23h Olivetti (may have been a typo, since 23 = 17h)
- 28h Texas Instruments
- 29h Toshiba
- 33h - Novell (Windows/386 device IDs only)
- 34h - MS Multimedia Systems (Windows/386 device IDs only)
- 35h - MS Multimedia Systems (Windows/386 device IDs only)
- 4Dh Hewlett-Packard (HP)
- 5Eh RxDOS (Mike Podanoffsky)
- 66h PTS-DOS (PhysTechSoft? and possibly Paragon Technology Systems Corporation)
- 98h - DOS-ROM (GSVER) ?
- 99h General Software's Embedded DOS
- CDh S/DOS (Paragon Technology Systems Corporation - \"Source DOS\" S/DOS 1.0+)
- DBh ROM-DOS (Datalight)
- DCh DOS-C (current FDOS kernels)
- EDh - reserved for future OpenDOS/DR-DOS based projects http://www.drdos.org(approve sites)
- EEh DR DOS/Enhanced DR-DOS
- EFh Novell DOS
- FCh X-DOS
- FDh FreeDOS (official kernels, derived from DOS-C kernel)
- FEh LZ-DOS
- FFh MS-DOS (Microsoft), Phoenix
Others or corrections to above list? Please correct me.