-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
e96e9c1
commit 509a599
Showing
57 changed files
with
4,843 additions
and
377 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,9 @@ | ||
Operating System/1 5.0.0 | ||
================================ | ||
Operating System/1 Average Release 5.1.0 | ||
================================================ | ||
|
||
Operating System/1 or OS/1 for short is a simple | ||
16-bit operating system, based on a megalithic kernel | ||
called DUNE. OS/1 5.0.0 runs in real mode and is written | ||
entirely in x86 assembly. | ||
|
||
* Changes: | ||
============ | ||
- improved Paint | ||
- 3.x UI style | ||
- Disk status program | ||
- and others | ||
Changes: | ||
- usage of Unreal / Big Real / Voodoo mode | ||
- multiple disk drive support (drives A & B) | ||
- switch to a more stable kernel | ||
- switch to a Monitor Program as the default shell | ||
- minor changes to Pinboard |
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
OS/1 AR 5.1.0 Kernel "Copland" | ||
====================================== | ||
|
||
Simple Unreal mode operating system kernel written | ||
in assembly for GNU GAS. Copland offers support for | ||
multiple disk drives. To compile Copland you need a | ||
i386-elf specific GAS (as) and GNU Linker (ld). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
|
||
/* | ||
GDT by OS-Dev wiki : | ||
www.osdev.org | ||
*/ | ||
|
||
.code16 | ||
.global _gdt_inf | ||
.section .text | ||
|
||
_gdt_inf: | ||
.word gdt_end - gdt - 1 | ||
.long gdt | ||
|
||
gdt: | ||
.long 0 | ||
.long 0 | ||
|
||
flatd: | ||
.byte 0xFF, 0xFF, 0, 0, 0, 0b10010010, 0b11001111, 0 | ||
|
||
gdt_end: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,137 @@ | ||
|
||
.code16 | ||
.global _load_A | ||
.global _load_B | ||
.section .text.filesys | ||
|
||
# | ||
# _load_B: Load the data from the disk drive A. | ||
# And jump to the 0x7e00 address of the disk. | ||
_load_A: | ||
clc | ||
incb (tries) | ||
|
||
mov $0x02, %ah | ||
mov $0x40, %al | ||
mov $0x7e00,%bx | ||
mov $0x00, %ch | ||
mov $0x02, %cl | ||
mov $0x00, %dh | ||
mov $0x00, %dl | ||
int $0x13 | ||
|
||
jc _err_A | ||
|
||
ljmp $0x0000,$0x7e00 | ||
|
||
# | ||
# _load_B: Load the data from the disk drive B. | ||
# And jump to the 0x7e00 address of the disk. | ||
_load_B: | ||
clc | ||
incb (tries) | ||
|
||
mov $0x02, %ah | ||
mov $0x40, %al | ||
mov $0x7e00,%bx | ||
mov $0x00, %ch | ||
mov $0x02, %cl | ||
mov $0x00, %dh | ||
mov $0x01, %dl | ||
int $0x13 | ||
|
||
jc _err_B | ||
|
||
ljmp $0x0000,$0x7e00 | ||
|
||
# | ||
# _err_A: Disk load error for _load_A function | ||
_err_A: | ||
clc | ||
cmpb $3, (tries) | ||
jl _load_A | ||
|
||
mov $0x03, %ax | ||
int $0x10 | ||
|
||
xor %ax, %ax | ||
int $0x13 | ||
|
||
mov $0x13, %ah | ||
mov $0x01, %al | ||
mov $0x00, %bh | ||
mov $0x0c, %bl | ||
mov $0x2e, %cx | ||
mov $0x00, %dh | ||
mov $0x00, %dl | ||
mov $_ler_A,%bp | ||
int $0x10 | ||
|
||
call _disk_status | ||
|
||
mov $0x13, %ah | ||
mov $0x01, %al | ||
mov $0x00, %bh | ||
mov $0x0f, %bl | ||
mov $0x24, %cx | ||
mov $0x01, %dh | ||
mov $0x00, %dl | ||
mov $_retmg,%bp | ||
int $0x10 | ||
|
||
mov $0x00, %ax | ||
int $0x16 | ||
|
||
call _clear | ||
|
||
ret | ||
|
||
# | ||
# _err_B: Disk load error for _load_B function | ||
_err_B: | ||
clc | ||
cmpb $3, (tries) | ||
jl _load_B | ||
|
||
mov $0x03, %ax | ||
int $0x10 | ||
|
||
xor %ax, %ax | ||
int $0x13 | ||
|
||
mov $0x13, %ah | ||
mov $0x01, %al | ||
mov $0x00, %bh | ||
mov $0x0c, %bl | ||
mov $0x2e, %cx | ||
mov $0x00, %dh | ||
mov $0x00, %dl | ||
mov $_ler_B,%bp | ||
int $0x10 | ||
|
||
call _disk_status | ||
|
||
mov $0x13, %ah | ||
mov $0x01, %al | ||
mov $0x00, %bh | ||
mov $0x0f, %bl | ||
mov $0x24, %cx | ||
mov $0x01, %dh | ||
mov $0x00, %dl | ||
mov $_retmg,%bp | ||
int $0x10 | ||
|
||
mov $0x00, %ax | ||
int $0x16 | ||
|
||
call _clear | ||
|
||
ret | ||
|
||
.section .rodata | ||
_ler_A: .asciz "/!\\ Failed to load the data from drive A /!\\\r\n" | ||
_ler_B: .asciz "/!\\ Failed to load the data from drive B /!\\\r\n" | ||
_retmg: .asciz "\r\nPress any key to return to MP-OS/1" | ||
|
||
.section .data | ||
tries: .byte 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.