This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
operating_systems:freedos [2022/03/15 02:31] nanodano [Dealing with JemmEx out of memory error] |
operating_systems:freedos [2022/03/21 21:01] nanodano |
||
---|---|---|---|
Line 29: | Line 29: | ||
- | ==== Use installer ==== | ||
+ | ==== Minimal manual installation ==== | ||
- | Recommended FULL install with source. The FULL install will give you the package manage `fdimples`. | + | Video on installing manually: [[https://www.youtube.com/watch?v=krbYBZr2ISw]] |
- | + | ||
- | Download ISO from: | + | |
- | + | ||
- | - On physical machine | + | |
- | - In virtual machine - in VirtualBox, use the regular CD, not the Legacy one, but before you press " | + | |
- | - Formatting hard disk | + | |
- | - From within FreeDOS: `format C:` or `format C: /s` for bootable. | + | |
- | - or: `fdisk` | + | |
- | - If you re-install it won't wipe the existing data. | + | |
- | - http://wiki.freedos.org/wiki/ | + | |
- | - | + | |
- | + | ||
- | ==== Manual installation ==== | + | |
- | Video on installing manually: https:// | ||
Steps: | Steps: | ||
Line 54: | Line 40: | ||
- Create a file system on the partition with '' | - Create a file system on the partition with '' | ||
- Make the disk bootable and copy kernel with '' | - Make the disk bootable and copy kernel with '' | ||
- | - Unzip any desired packages | + | - Optionally, install |
+ | |||
+ | < | ||
+ | # Partition the disk, create file system, make bootable | ||
+ | # and install the kernel.sys + command.com | ||
+ | fdisk | ||
+ | # Reboot after this doing fdisk! | ||
+ | format d: | ||
+ | sys d: | ||
+ | |||
+ | ## Example of how to " | ||
+ | C: | ||
+ | cd \PACKAGES\BASE | ||
+ | # `-x SOURCE/*` will exclude files in source directories | ||
+ | # `-d sets the destination directory, where unzipped files go | ||
+ | for %f in (*.ZIP) do unzip %f -x SOURCE/* -d d: | ||
+ | </ | ||
+ | |||
+ | By performing those steps, you have a minimal bootable system. There will only be two files on the drive: | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | If you boot up and get a prompt, excellent. Type ''?'' | ||
Example steps: | Example steps: | ||
Line 60: | Line 69: | ||
* Boot into the Live mode from the install disk | * Boot into the Live mode from the install disk | ||
* Run '' | * Run '' | ||
- | * Run '' | + | * Run '' |
- | * Run '' | + | * Run '' |
+ | * At this point the system should be bootable and you will load into the typical '' | ||
* To install additional application, | * To install additional application, | ||
* The '' | * The '' | ||
* To see what is in a zip file, '' | * To see what is in a zip file, '' | ||
- | * To install everything in a directory (omit -x if you do not want to exclude sources): '' | + | * To install everything in a directory (omit -x if you do not want to exclude sources): '' |
* | * | ||
+ | |||
+ | |||
+ | ==== Use installer ==== | ||
+ | |||
+ | |||
+ | Recommended FULL install with source. The FULL install will give you the package manage `fdimples`. | ||
+ | |||
+ | Download ISO from: | ||
+ | |||
+ | - On physical machine | ||
+ | - In virtual machine - in VirtualBox, use the regular CD, not the Legacy one, but before you press " | ||
+ | - Formatting hard disk | ||
+ | - From within FreeDOS: `format C:` or `format C: /s` for bootable. | ||
+ | - or: `fdisk` | ||
+ | - If you re-install it won't wipe the existing data. | ||
+ | - http:// | ||
+ | - | ||
+ | |||
+ | |||
==== Dealing with JemmEx out of memory error ==== | ==== Dealing with JemmEx out of memory error ==== | ||
Line 72: | Line 101: | ||
[[https:// | [[https:// | ||
- | Edit '' | + | Edit '' |
+ | |||
+ | or try modifying the '' | ||
+ | |||
+ | ==== Dealing with unable to read hard disk error ==== | ||
+ | |||
+ | When you use '' | ||
- | or try modifying the -X=TEST to -X=c900-dfff | + | You can create one primary DOS partition |
===== How kernel boot works and fdconfig.sys ===== | ===== How kernel boot works and fdconfig.sys ===== | ||
Line 97: | Line 132: | ||
- | - `AUTOEXEC.BAT` - Put all your stuff here. Like your init scripts and bash profile in one | + | * '' |
- | - `COMMAND.COM` | + | * '' |
- | - `FDCONFIG.SYS` - Boot configuration, | + | * '' |
- | - `KERNEL.SYS` - The kernel binary itself. 48 KB! | + | * '' |
- | - `FDOS\` | + | * '' |
- | - `FDOS\BIN\` - Executables | + | * '' |
- | ===== Basic commands ===== | ||
- | - `?`, `help`, Adding ` /?` | + | ===== Getting help ===== |
+ | |||
+ | You can always type ''?'' | ||
+ | |||
+ | < | ||
+ | ? | ||
+ | </ | ||
+ | |||
+ | - ''?'' | ||
+ | |||
+ | Adding ` /?` | ||
+ | |||
+ | < | ||
+ | |||
+ | dir /? | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Built-in commands ===== | ||
+ | |||
+ | Built-in commands that come with '' | ||
+ | |||
+ | Enter: ''?'' | ||
+ | |||
+ | Built-in commands: | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | There are also built-in features like: | ||
+ | |||
+ | * Directory stack ('' | ||
+ | * Last directory ('' | ||
+ | * History ('' | ||
+ | * Tab completion | ||
+ | * Aliases ('' | ||
+ | * Enhanced input | ||
- `ver`, `vol`, `mem`, `cls`, `which`, `path` | - `ver`, `vol`, `mem`, `cls`, `which`, `path` | ||
- `cd`, `dir`, `dir /w`, `tree`, `| more`, `mkdir`, `echo hi > test.txt`, `rmdir`, `deltree` | - `cd`, `dir`, `dir /w`, `tree`, `| more`, `mkdir`, `echo hi > test.txt`, `rmdir`, `deltree` | ||
Line 130: | Line 209: | ||
C: | C: | ||
</ | </ | ||
+ | |||
+ | ===== Batch scripting ===== | ||
+ | |||
+ | Even in the most minimal install, you have '' | ||
+ | |||
+ | <code batch> | ||
+ | REM Add comments with REM. It stands for REMARK | ||
+ | for %f in (*.ZIP) do unzip %f -x SOURCE/* -d d:\FreeDOS | ||
+ | |||
+ | REM Turn off echo with: | ||
+ | @echo off | ||
+ | |||
+ | REM Set environment variables with set | ||
+ | set | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Mounting USB & CD drives ===== | ||
+ | |||
===== Get software ===== | ===== Get software ===== | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
- | * [[https:// | ||
* [[http:// | * [[http:// | ||
Line 159: | Line 258: | ||
- Dialog | - Dialog | ||
- sqlite | - sqlite | ||
+ | - FDTUI (better than FDSHELL which runs at 100% cpu) - '' | ||
+ | - IMGEDIT '' | ||
+ | - pmge '' | ||
==== Installing manually in FreeDOS ==== | ==== Installing manually in FreeDOS ==== | ||
Line 207: | Line 309: | ||
Text Browser: Links C: | Text Browser: Links C: | ||
GUI Browser: Dillo C: | GUI Browser: Dillo C: | ||
+ | GUI Browser: Arachnae | ||
===== Programming ===== | ===== Programming ===== | ||
Line 213: | Line 315: | ||
=== Languages === | === Languages === | ||
- | - Lua: `C: | + | * Lua: '' |
- | - Assembly: | + | |
- | - BASIC: | + | |
- | - C: `bcc` (Bruce' | + | |
- | - Pascal: | + | |
- | == NASM == | + | == NASM hello world == |
- | Similar to the Linux hello world program except | + | Similar to the Linux hello world program except |
+ | |||
+ | == VGA programming == | ||
+ | |||
+ | Screen 13! How to do it in assembly with interrupt, and how to do it in BASIC with SCREEN 13. Where is the VGA memory location. It's as easy as writing to the memory location. | ||
== Lua == | == Lua == | ||
Line 228: | Line 334: | ||
== BASIC == | == BASIC == | ||
+ | |||
+ | = BWBASIC = | ||
+ | |||
+ | Bytewater must be run with a 32-bit protected mode DOS extender like '' | ||
+ | |||
+ | < | ||
+ | dos32a bwbasic.exe | ||
+ | </ | ||
+ | |||
+ | = FreeBASIC = | ||
https:// | https:// | ||
Line 243: | Line 359: | ||
``` | ``` | ||
- | == C == | + | == C/C++ == |
+ | |||
+ | |||
+ | |||
+ | = OpenWatcom = | ||
+ | |||
+ | * There is '' | ||
+ | * and '' | ||
+ | |||
+ | < | ||
+ | REM Without this env var, linker fails | ||
+ | set WATCOM=C: | ||
+ | |||
+ | REM wcc, wpp, wlink - compilers & linker | ||
+ | REM wcl - compile and link in one | ||
+ | wcl hello.cpp / | ||
+ | |||
+ | REM TO allow the omission of /I flag set INCLUDE | ||
+ | set INCLUDE=C: | ||
+ | |||
+ | REM Now you can simply compile & link with: | ||
+ | wcl hello.cpp | ||
+ | </ | ||
+ | |||
+ | = DJGPP = | ||
Make sure DJGPP is installed from the FreeDOS CD-ROM using `fdimples`. | Make sure DJGPP is installed from the FreeDOS CD-ROM using `fdimples`. |