commit
230c7c8cfa
|
@ -11,6 +11,10 @@ test-*.c
|
||||||
*.elf
|
*.elf
|
||||||
*.S
|
*.S
|
||||||
|
|
||||||
|
# CNAME STUFF
|
||||||
|
*.yml
|
||||||
|
CNAME
|
||||||
|
|
||||||
|
|
||||||
# Linker output
|
# Linker output
|
||||||
*.ilk
|
*.ilk
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
#=----------------------------------------------------------------------------=#
|
||||||
|
# GNU GPL OS/K #
|
||||||
|
# #
|
||||||
|
# Desc: Project Authors File #
|
||||||
|
# #
|
||||||
|
# #
|
||||||
|
# Copyright © 2018-2019 The OS/K Team #
|
||||||
|
# #
|
||||||
|
# This file is part of OS/K. #
|
||||||
|
# #
|
||||||
|
# OS/K is free software: you can redistribute it and/or modify #
|
||||||
|
# it under the terms of the GNU General Public License as published by #
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or #
|
||||||
|
# any later version. #
|
||||||
|
# #
|
||||||
|
# OS/K is distributed in the hope that it will be useful, #
|
||||||
|
# but WITHOUT ANY WARRANTY# without even the implied warranty of #
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||||
|
# GNU General Public License for more details. #
|
||||||
|
# #
|
||||||
|
# You should have received a copy of the GNU General Public License #
|
||||||
|
# along with OS/K. If not, see <https://www.gnu.org/licenses/>. #
|
||||||
|
#=----------------------------------------------------------------------------=#
|
||||||
|
|
||||||
|
The OS/K development team (named in the sources The OS/K Team) is composed of
|
||||||
|
all contributors of the project. Its representatives are the owners of the OS/K
|
||||||
|
project repository, and own the copyright in it.
|
||||||
|
|
||||||
|
Founders and owner of the OS/K project repository
|
||||||
|
|
||||||
|
Julian Barathieu (julianb0)
|
||||||
|
Adrien Bourmault (NeoX95)
|
||||||
|
|
||||||
|
Main contributors
|
||||||
|
|
||||||
|
Julian Barathieu (julianb0)
|
||||||
|
Adrien Bourmault (NeoX95)
|
||||||
|
|
||||||
|
Other contributors
|
||||||
|
|
||||||
|
(void)
|
33
ChangeLog
33
ChangeLog
|
@ -1,13 +1,26 @@
|
||||||
//----------------------------------------------------------------------------//
|
#=----------------------------------------------------------------------------=#
|
||||||
// GNU GPL OS/K //
|
# GNU GPL OS/K #
|
||||||
// //
|
# #
|
||||||
// Authors: spectral` //
|
# Desc: Project ChangeLog #
|
||||||
// NeoX //
|
# #
|
||||||
// //
|
# #
|
||||||
// Desc: ChangeLog #1 //
|
# Copyright © 2018-2019 The OS/K Team #
|
||||||
// From: 2018/12/06 //
|
# #
|
||||||
// UpTo: current //
|
# This file is part of OS/K. #
|
||||||
//----------------------------------------------------------------------------//
|
# #
|
||||||
|
# OS/K is free software: you can redistribute it and/or modify #
|
||||||
|
# it under the terms of the GNU General Public License as published by #
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or #
|
||||||
|
# any later version. #
|
||||||
|
# #
|
||||||
|
# OS/K is distributed in the hope that it will be useful, #
|
||||||
|
# but WITHOUT ANY WARRANTY# without even the implied warranty of #
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||||
|
# GNU General Public License for more details. #
|
||||||
|
# #
|
||||||
|
# You should have received a copy of the GNU General Public License #
|
||||||
|
# along with OS/K. If not, see <https://www.gnu.org/licenses/>. #
|
||||||
|
#=----------------------------------------------------------------------------=#
|
||||||
|
|
||||||
2018/10/?? - Started talking about making our own OS
|
2018/10/?? - Started talking about making our own OS
|
||||||
2018/11/?? - Name decided & creation of os-k.eu
|
2018/11/?? - Name decided & creation of os-k.eu
|
||||||
|
|
25
Makefile
25
Makefile
|
@ -1,11 +1,26 @@
|
||||||
#----------------------------------------------------------------------------#
|
#=----------------------------------------------------------------------------=#
|
||||||
# GNU GPL OS/K #
|
# GNU GPL OS/K #
|
||||||
# #
|
# #
|
||||||
# Authors: spectral` #
|
|
||||||
# NeoX #
|
|
||||||
# #
|
|
||||||
# Desc: Project Makefile #
|
# Desc: Project Makefile #
|
||||||
#----------------------------------------------------------------------------#
|
# #
|
||||||
|
# #
|
||||||
|
# Copyright © 2018-2019 The OS/K Team #
|
||||||
|
# #
|
||||||
|
# This file is part of OS/K. #
|
||||||
|
# #
|
||||||
|
# OS/K is free software: you can redistribute it and/or modify #
|
||||||
|
# it under the terms of the GNU General Public License as published by #
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or #
|
||||||
|
# any later version. #
|
||||||
|
# #
|
||||||
|
# OS/K is distributed in the hope that it will be useful, #
|
||||||
|
# but WITHOUT ANY WARRANTY# without even the implied warranty of #
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||||
|
# GNU General Public License for more details. #
|
||||||
|
# #
|
||||||
|
# You should have received a copy of the GNU General Public License #
|
||||||
|
# along with OS/K. If not, see <https://www.gnu.org/licenses/>. #
|
||||||
|
#=----------------------------------------------------------------------------=#
|
||||||
|
|
||||||
kernel:
|
kernel:
|
||||||
cpp ./Makefile.in > build/Makefile.out
|
cpp ./Makefile.in > build/Makefile.out
|
||||||
|
|
26
Makefile.in
26
Makefile.in
|
@ -1,12 +1,28 @@
|
||||||
// -*- Mode: Makefile -*-
|
// -*- Mode: Makefile -*-
|
||||||
//----------------------------------------------------------------------------//
|
|
||||||
|
//=--------------------------------------------------------------------------=//
|
||||||
// GNU GPL OS/K //
|
// GNU GPL OS/K //
|
||||||
// //
|
// //
|
||||||
// Authors: spectral` //
|
|
||||||
// NeoX //
|
|
||||||
// //
|
|
||||||
// Desc: Project Makefile //
|
// Desc: Project Makefile //
|
||||||
//----------------------------------------------------------------------------//
|
// //
|
||||||
|
// //
|
||||||
|
// Copyright © 2018-2019 The OS/K Team //
|
||||||
|
// //
|
||||||
|
// This file is part of OS/K. //
|
||||||
|
// //
|
||||||
|
// OS/K is free software: you can redistribute it and/or modify //
|
||||||
|
// it under the terms of the GNU General Public License as published by //
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or //
|
||||||
|
// any later version. //
|
||||||
|
// //
|
||||||
|
// OS/K is distributed in the hope that it will be useful, //
|
||||||
|
// but WITHOUT ANY WARRANTY//without even the implied warranty of //
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
|
||||||
|
// GNU General Public License for more details. //
|
||||||
|
// //
|
||||||
|
// You should have received a copy of the GNU General Public License //
|
||||||
|
// along with OS/K. If not, see <https://www.gnu.org/licenses/>. //
|
||||||
|
//=--------------------------------------------------------------------------=//
|
||||||
|
|
||||||
// The madman's Makefile
|
// The madman's Makefile
|
||||||
#include "build/preproc.h"
|
#include "build/preproc.h"
|
||||||
|
|
209
ProjectTree
209
ProjectTree
|
@ -1,107 +1,110 @@
|
||||||
#------------------------------------------------------------------------------#
|
#=----------------------------------------------------------------------------=#
|
||||||
# GNU GPL OS/K #
|
# GNU GPL OS/K #
|
||||||
# #
|
# #
|
||||||
# Authors: spectral` #
|
|
||||||
# NeoX #
|
|
||||||
# #
|
|
||||||
# Desc: Project Tree #
|
# Desc: Project Tree #
|
||||||
#------------------------------------------------------------------------------#
|
# #
|
||||||
|
# #
|
||||||
|
# Copyright © 2018-2019 The OS/K Team #
|
||||||
|
# #
|
||||||
|
# This file is part of OS/K. #
|
||||||
|
# #
|
||||||
|
# OS/K is free software: you can redistribute it and/or modify #
|
||||||
|
# it under the terms of the GNU General Public License as published by #
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or #
|
||||||
|
# any later version. #
|
||||||
|
# #
|
||||||
|
# OS/K is distributed in the hope that it will be useful, #
|
||||||
|
# but WITHOUT ANY WARRANTY# without even the implied warranty of #
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||||
|
# GNU General Public License for more details. #
|
||||||
|
# #
|
||||||
|
# You should have received a copy of the GNU General Public License #
|
||||||
|
# along with OS/K. If not, see <https://www.gnu.org/licenses/>. #
|
||||||
|
#=----------------------------------------------------------------------------=#
|
||||||
|
|
||||||
src/
|
|
||||||
|
|
|
||||||
x COPYING
|
.
|
||||||
x README.md
|
├── boot
|
||||||
x ChangeLog
|
│ ├── loader
|
||||||
|
|
│ │ ├── cpu
|
||||||
- Makefile
|
│ │ │ ├── cpu.asm
|
||||||
- Makefile.in
|
│ │ │ └── cpuid.asm
|
||||||
|
|
│ │ ├── elf
|
||||||
+ boot/
|
│ │ │ └── elf.c
|
||||||
| |
|
│ │ ├── fs
|
||||||
| x folder.desc
|
│ │ │ └── fat.asm
|
||||||
| |
|
│ │ ├── io
|
||||||
| - mbr.asm
|
│ │ │ ├── ata.asm
|
||||||
| - mbr.inc
|
│ │ │ ├── lmmem.asm
|
||||||
| |
|
│ │ │ ├── lmterm.asm
|
||||||
| - loader.asm
|
│ │ │ ├── rmmem.asm
|
||||||
| - loader16.inc
|
│ │ │ └── rmterm.asm
|
||||||
| - loader64.inc
|
│ │ └── loader.asm
|
||||||
| |
|
│ ├── mbr
|
||||||
| 0
|
│ │ ├── mbr.asm
|
||||||
|
|
│ │ └── mbr.inc
|
||||||
+ kaleid/
|
│ └── folder.desc
|
||||||
| |
|
├── build
|
||||||
| + include/
|
│ ├── idttool.py
|
||||||
| | |
|
│ ├── kernel.ld
|
||||||
| | - kaleid.h
|
│ └── preproc.h
|
||||||
| | - kalkern.h
|
├── kaleid
|
||||||
| | |
|
│ ├── crtlib
|
||||||
| | + common/
|
│ │ ├── arith.c
|
||||||
| | | |
|
│ │ ├── atoi.c
|
||||||
| | | - kaldefs.h
|
│ │ ├── itoa.c
|
||||||
| | | - kaltypes.h
|
│ │ ├── memory.c
|
||||||
| | | - kalerror.h
|
│ │ ├── rand.c
|
||||||
| | | - kalassrt.h
|
│ │ ├── sprintf.c
|
||||||
| | | - kallims.h
|
│ │ ├── status.c
|
||||||
| | | - kalmask.h
|
│ │ ├── string.c
|
||||||
| | | - kalcrt.h
|
│ │ └── strtol.c
|
||||||
| | | |
|
│ ├── extras
|
||||||
| | | 0
|
│ │ ├── argv.c
|
||||||
| | |
|
│ │ └── prog.c
|
||||||
| | + kernel/
|
│ ├── include
|
||||||
| | | |
|
│ │ ├── base
|
||||||
| | | - kernbase.h
|
│ │ │ ├── assert.h
|
||||||
| | | - kernlocks.h
|
│ │ │ ├── bdefs.h
|
||||||
| | | - kernterm.h
|
│ │ │ ├── crtlib.h
|
||||||
| | | |
|
│ │ │ ├── errno.h
|
||||||
| | | 0
|
│ │ │ ├── limits.h
|
||||||
| | 0
|
│ │ │ ├── masks.h
|
||||||
| |
|
│ │ │ └── types.h
|
||||||
| |
|
│ │ ├── extras
|
||||||
| + kernel/
|
│ │ │ ├── argv.h
|
||||||
| | |
|
│ │ │ ├── list.h
|
||||||
| | + init/
|
│ │ │ ├── locks.h
|
||||||
| | | |
|
│ │ │ ├── malloc.h
|
||||||
| | | - init.c
|
│ │ │ └── prog.h
|
||||||
| | | |
|
│ │ ├── kernel
|
||||||
| | | 0
|
│ │ │ ├── base.h
|
||||||
| | |
|
│ │ │ ├── sched.h
|
||||||
| | + ke/
|
│ │ │ └── terminal.h
|
||||||
| | | |
|
│ │ ├── kalbase.h
|
||||||
| | | - panic.c
|
│ │ ├── kaleid.h
|
||||||
| | | - table.c
|
│ │ ├── kalext.h
|
||||||
| | | - terminal.c
|
│ │ └── kalkern.h
|
||||||
| | | |
|
│ └── kernel
|
||||||
| | | 0
|
│ ├── init
|
||||||
| | 0
|
│ │ ├── init.c
|
||||||
| |
|
│ │ └── table.c
|
||||||
| + common/
|
│ ├── io
|
||||||
| | |
|
│ │ ├── cursor.c
|
||||||
| | - status.c
|
│ │ ├── term.c
|
||||||
| | |
|
│ │ └── vga.c
|
||||||
| | - arith.c
|
│ ├── ke
|
||||||
| | - rand.c
|
│ │ └── panic.c
|
||||||
| | |
|
│ └── proc
|
||||||
| | - atoi.c
|
│ ├── Makefile
|
||||||
| | - itoa.c
|
│ └── sched.c
|
||||||
| | - strtol.c
|
├── AUTHORS
|
||||||
| | |
|
├── ChangeLog
|
||||||
| | - memory.c
|
├── COPYING
|
||||||
| | - string.c
|
├── Makefile
|
||||||
| | - sprintf.c
|
├── Makefile.in
|
||||||
| | |
|
├── ProjectTree
|
||||||
| | 0
|
└── Readme.md
|
||||||
| 0
|
|
||||||
|
|
20 directories, 61 files
|
||||||
+ build/
|
|
||||||
| |
|
|
||||||
| - preproc.h
|
|
||||||
| - iddtool.h
|
|
||||||
| |
|
|
||||||
| - kernel.ld
|
|
||||||
| |
|
|
||||||
| + bin/
|
|
||||||
| + obj/
|
|
||||||
| |
|
|
||||||
| 0
|
|
||||||
0
|
|
||||||
|
|
13
Readme.md
13
Readme.md
|
@ -1,14 +1,17 @@
|
||||||
# GNU-GPL OS/K (OS on Kaleid)
|
# GNU GPL OS/K (OS on Kaleid)
|
||||||
|
|
||||||
### Fully open-source operating system from scratch (WIP), released under the GNU GPL version 3.0
|
| ![FSF Logo](https://www.os-k.eu/GPLLOGO.PNG) | This program is free software, released under the terms of the [GNU GPL](COPYING) version 3 or later as published by the Free Software Foundation |
|
||||||
|
|----------------------------------------------|----------------------------------------------------------------------|
|
||||||
|
|
||||||
#### Boot Branch
|
### Fully free operating system from scratch (WIP)
|
||||||
|
|
||||||
|
#### Master Branch
|
||||||
|
|
||||||
For the project plan, see [OS/K Project](https://github.com/orgs/os-k-team/projects/1)
|
For the project plan, see [OS/K Project](https://github.com/orgs/os-k-team/projects/1)
|
||||||
|
|
||||||
For changelog, see [ChangeLog](https://github.com/os-k-team/GNU-GPL-OS-K/blob/master/ChangeLog)
|
For changelog, see [ChangeLog](ChangeLog)
|
||||||
|
|
||||||
For structure of the sources, see [ProjectTree](https://github.com/os-k-team/GNU-GPL-OS-K/blob/master/ProjectTree)
|
For structure of the sources, see [ProjectTree](ProjectTree)
|
||||||
|
|
||||||
Note that every file within OS/K is written using spaces for tabulation, with each
|
Note that every file within OS/K is written using spaces for tabulation, with each
|
||||||
tabulation being 4 spaces long.
|
tabulation being 4 spaces long.
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
theme: jekyll-theme-slate
|
|
@ -1,11 +1,26 @@
|
||||||
---------------------------------------------------------------------
|
#=----------------------------------------------------------------------------=#
|
||||||
GNU GPL OS/K
|
# GNU GPL OS/K #
|
||||||
|
# #
|
||||||
Authors: spectral`
|
# Desc: Folder description - "boot" #
|
||||||
NeoX
|
# #
|
||||||
|
# #
|
||||||
Desc: Folder description - "boot"
|
# Copyright © 2018-2019 The OS/K Team #
|
||||||
---------------------------------------------------------------------
|
# #
|
||||||
|
# This file is part of OS/K. #
|
||||||
|
# #
|
||||||
|
# OS/K is free software: you can redistribute it and/or modify #
|
||||||
|
# it under the terms of the GNU General Public License as published by #
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or #
|
||||||
|
# any later version. #
|
||||||
|
# #
|
||||||
|
# OS/K is distributed in the hope that it will be useful, #
|
||||||
|
# but WITHOUT ANY WARRANTY# without even the implied warranty of #
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||||
|
# GNU General Public License for more details. #
|
||||||
|
# #
|
||||||
|
# You should have received a copy of the GNU General Public License #
|
||||||
|
# along with OS/K. If not, see <https://www.gnu.org/licenses/>. #
|
||||||
|
#=----------------------------------------------------------------------------=#
|
||||||
|
|
||||||
|
|
||||||
This folder contains the source for OS/K's bootloader.
|
This folder contains the source for OS/K's bootloader.
|
||||||
|
@ -19,5 +34,5 @@ It is divided in two parts each of exactly 512 bytes:
|
||||||
The MBR must be placed precisely on the first sector of the hard drive.
|
The MBR must be placed precisely on the first sector of the hard drive.
|
||||||
|
|
||||||
- loader.s
|
- loader.s
|
||||||
This is the Kernel Loader. XXX
|
This is the Kernel Loader. It switches to long mode and makes stuff.
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Basic longmode CPU functions ;
|
; Desc: Basic longmode CPU functions ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; (at your option) any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
[BITS 64]
|
[BITS 64]
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Basic realmode CPU Detection ;
|
; Desc: Basic realmode CPU Detection ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; (at your option) any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
[BITS 16]
|
[BITS 16]
|
||||||
|
|
|
@ -1,10 +1,26 @@
|
||||||
//----------------------------------------------------------------------------//
|
//=--------------------------------------------------------------------------=//
|
||||||
// GNU GPL OS/K //
|
// GNU GPL OS/K //
|
||||||
// //
|
// //
|
||||||
// Authors: spectral` //
|
|
||||||
// NeoX //
|
|
||||||
// //
|
|
||||||
// Desc: ELF64 Parser and Loader //
|
// Desc: ELF64 Parser and Loader //
|
||||||
//----------------------------------------------------------------------------//
|
// (x86_64 architecture only) //
|
||||||
|
// //
|
||||||
|
// //
|
||||||
|
// Copyright © 2018-2019 The OS/K Team //
|
||||||
|
// //
|
||||||
|
// This file is part of OS/K. //
|
||||||
|
// //
|
||||||
|
// OS/K is free software: you can redistribute it and/or modify //
|
||||||
|
// it under the terms of the GNU General Public License as published by //
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or //
|
||||||
|
// (at your option) any later version. //
|
||||||
|
// //
|
||||||
|
// OS/K is distributed in the hope that it will be useful, //
|
||||||
|
// but WITHOUT ANY WARRANTY//without even the implied warranty of //
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
|
||||||
|
// GNU General Public License for more details. //
|
||||||
|
// //
|
||||||
|
// You should have received a copy of the GNU General Public License //
|
||||||
|
// along with OS/K. If not, see <https://www.gnu.org/licenses/>. //
|
||||||
|
//=--------------------------------------------------------------------------=//
|
||||||
|
|
||||||
int stub;
|
int stub;
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Basic File Allocation Table Long mode Driver ;
|
; Desc: Basic File Allocation Table Long mode Driver ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; (at your option) any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
[BITS 64]
|
[BITS 64]
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Basic Read Only ATA Long mode Driver ;
|
; Desc: Basic Read Only ATA Long mode Driver ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; (at your option) any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
[BITS 64]
|
[BITS 64]
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Basic Memory Long mode Functions ;
|
; Desc: Basic Memory Long mode Functions ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; (at your option) any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
[BITS 64]
|
[BITS 64]
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,29 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Basic Colored VGA Terminal Long mode Driver ;
|
; Desc: Basic Colored VGA Terminal Long mode Driver ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; (at your option) any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
|
|
||||||
;;VIDEO
|
;;VIDEO
|
||||||
%define TRAM 0x0B8000 ; [T]ext[RAM]
|
%define TRAM 0x0B8000 ; [T]ext[RAM]
|
||||||
%define VRAM 0x0A0000 ; [V]ideo[RAM]
|
%define VRAM 0x0A0000 ; [V]ideo[RAM]
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Basic Memory Realmode Driver ;
|
; Desc: Basic Memory Realmode Driver ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; (at your option) any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
[BITS 16]
|
[BITS 16]
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Basic realmode terminal functions ;
|
; Desc: Basic realmode terminal functions ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; (at your option) any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
[BITS 16]
|
[BITS 16]
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Kernel (second stage) Loader for OS/K ;
|
; Desc: Kernel (second stage) Loader for OS/K ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; (at your option) any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
%define DEBUG
|
%define DEBUG
|
||||||
|
@ -242,4 +257,3 @@ main64:
|
||||||
|
|
||||||
jmp Die
|
jmp Die
|
||||||
|
|
||||||
times 20 db 0
|
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Bootsector for OS/K ;
|
; Desc: Bootsector for OS/K ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
;; BOOT "SEGMENT"
|
;; BOOT "SEGMENT"
|
||||||
|
|
|
@ -1,12 +1,28 @@
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
; GNU GPL OS/K ;
|
; GNU GPL OS/K ;
|
||||||
; ;
|
; ;
|
||||||
; Authors: spectral` ;
|
|
||||||
; NeoX ;
|
|
||||||
; ;
|
|
||||||
; Desc: Bootsector for OS/K INCLUDED FUNCTIONS ;
|
; Desc: Bootsector for OS/K INCLUDED FUNCTIONS ;
|
||||||
; (x86_64 architecture only) ;
|
; (x86_64 architecture only) ;
|
||||||
|
; ;
|
||||||
|
; ;
|
||||||
|
; Copyright © 2018-2019 The OS/K Team ;
|
||||||
|
; ;
|
||||||
|
; This file is part of OS/K. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is free software: you can redistribute it and/or modify ;
|
||||||
|
; it under the terms of the GNU General Public License as published by ;
|
||||||
|
; the Free Software Foundation, either version 3 of the License, or ;
|
||||||
|
; any later version. ;
|
||||||
|
; ;
|
||||||
|
; OS/K is distributed in the hope that it will be useful, ;
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of ;
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;
|
||||||
|
; GNU General Public License for more details. ;
|
||||||
|
; ;
|
||||||
|
; You should have received a copy of the GNU General Public License ;
|
||||||
|
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
|
||||||
;=----------------------------------------------------------------------------=;
|
;=----------------------------------------------------------------------------=;
|
||||||
|
|
||||||
[BITS 16]
|
[BITS 16]
|
||||||
|
|
||||||
read_clusters:
|
read_clusters:
|
||||||
|
|
Loading…
Reference in New Issue