commit
230c7c8cfa
|
@ -11,6 +11,10 @@ test-*.c
|
|||
*.elf
|
||||
*.S
|
||||
|
||||
# CNAME STUFF
|
||||
*.yml
|
||||
CNAME
|
||||
|
||||
|
||||
# Linker output
|
||||
*.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 //
|
||||
// //
|
||||
// Authors: spectral` //
|
||||
// NeoX //
|
||||
// //
|
||||
// Desc: ChangeLog #1 //
|
||||
// From: 2018/12/06 //
|
||||
// UpTo: current //
|
||||
//----------------------------------------------------------------------------//
|
||||
#=----------------------------------------------------------------------------=#
|
||||
# GNU GPL OS/K #
|
||||
# #
|
||||
# Desc: Project ChangeLog #
|
||||
# #
|
||||
# #
|
||||
# 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/>. #
|
||||
#=----------------------------------------------------------------------------=#
|
||||
|
||||
2018/10/?? - Started talking about making our own OS
|
||||
2018/11/?? - Name decided & creation of os-k.eu
|
||||
|
|
31
Makefile
31
Makefile
|
@ -1,11 +1,26 @@
|
|||
#----------------------------------------------------------------------------#
|
||||
# GNU GPL OS/K #
|
||||
# #
|
||||
# Authors: spectral` #
|
||||
# NeoX #
|
||||
# #
|
||||
# Desc: Project Makefile #
|
||||
#----------------------------------------------------------------------------#
|
||||
#=----------------------------------------------------------------------------=#
|
||||
# GNU GPL OS/K #
|
||||
# #
|
||||
# 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:
|
||||
cpp ./Makefile.in > build/Makefile.out
|
||||
|
|
26
Makefile.in
26
Makefile.in
|
@ -1,12 +1,28 @@
|
|||
// -*- Mode: Makefile -*-
|
||||
//----------------------------------------------------------------------------//
|
||||
|
||||
//=--------------------------------------------------------------------------=//
|
||||
// GNU GPL OS/K //
|
||||
// //
|
||||
// Authors: spectral` //
|
||||
// NeoX //
|
||||
// //
|
||||
// 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
|
||||
#include "build/preproc.h"
|
||||
|
|
211
ProjectTree
211
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
|
||||
x ChangeLog
|
||||
|
|
||||
- Makefile
|
||||
- Makefile.in
|
||||
|
|
||||
+ boot/
|
||||
| |
|
||||
| x folder.desc
|
||||
| |
|
||||
| - mbr.asm
|
||||
| - mbr.inc
|
||||
| |
|
||||
| - loader.asm
|
||||
| - loader16.inc
|
||||
| - loader64.inc
|
||||
| |
|
||||
| 0
|
||||
|
|
||||
+ kaleid/
|
||||
| |
|
||||
| + include/
|
||||
| | |
|
||||
| | - kaleid.h
|
||||
| | - kalkern.h
|
||||
| | |
|
||||
| | + common/
|
||||
| | | |
|
||||
| | | - kaldefs.h
|
||||
| | | - kaltypes.h
|
||||
| | | - kalerror.h
|
||||
| | | - kalassrt.h
|
||||
| | | - kallims.h
|
||||
| | | - kalmask.h
|
||||
| | | - kalcrt.h
|
||||
| | | |
|
||||
| | | 0
|
||||
| | |
|
||||
| | + kernel/
|
||||
| | | |
|
||||
| | | - kernbase.h
|
||||
| | | - kernlocks.h
|
||||
| | | - kernterm.h
|
||||
| | | |
|
||||
| | | 0
|
||||
| | 0
|
||||
| |
|
||||
| |
|
||||
| + kernel/
|
||||
| | |
|
||||
| | + init/
|
||||
| | | |
|
||||
| | | - init.c
|
||||
| | | |
|
||||
| | | 0
|
||||
| | |
|
||||
| | + ke/
|
||||
| | | |
|
||||
| | | - panic.c
|
||||
| | | - table.c
|
||||
| | | - terminal.c
|
||||
| | | |
|
||||
| | | 0
|
||||
| | 0
|
||||
| |
|
||||
| + common/
|
||||
| | |
|
||||
| | - status.c
|
||||
| | |
|
||||
| | - arith.c
|
||||
| | - rand.c
|
||||
| | |
|
||||
| | - atoi.c
|
||||
| | - itoa.c
|
||||
| | - strtol.c
|
||||
| | |
|
||||
| | - memory.c
|
||||
| | - string.c
|
||||
| | - sprintf.c
|
||||
| | |
|
||||
| | 0
|
||||
| 0
|
||||
|
|
||||
+ build/
|
||||
| |
|
||||
| - preproc.h
|
||||
| - iddtool.h
|
||||
| |
|
||||
| - kernel.ld
|
||||
| |
|
||||
| + bin/
|
||||
| + obj/
|
||||
| |
|
||||
| 0
|
||||
0
|
||||
|
||||
|
||||
.
|
||||
├── boot
|
||||
│ ├── loader
|
||||
│ │ ├── cpu
|
||||
│ │ │ ├── cpu.asm
|
||||
│ │ │ └── cpuid.asm
|
||||
│ │ ├── elf
|
||||
│ │ │ └── elf.c
|
||||
│ │ ├── fs
|
||||
│ │ │ └── fat.asm
|
||||
│ │ ├── io
|
||||
│ │ │ ├── ata.asm
|
||||
│ │ │ ├── lmmem.asm
|
||||
│ │ │ ├── lmterm.asm
|
||||
│ │ │ ├── rmmem.asm
|
||||
│ │ │ └── rmterm.asm
|
||||
│ │ └── loader.asm
|
||||
│ ├── mbr
|
||||
│ │ ├── mbr.asm
|
||||
│ │ └── mbr.inc
|
||||
│ └── folder.desc
|
||||
├── build
|
||||
│ ├── idttool.py
|
||||
│ ├── kernel.ld
|
||||
│ └── preproc.h
|
||||
├── kaleid
|
||||
│ ├── crtlib
|
||||
│ │ ├── arith.c
|
||||
│ │ ├── atoi.c
|
||||
│ │ ├── itoa.c
|
||||
│ │ ├── memory.c
|
||||
│ │ ├── rand.c
|
||||
│ │ ├── sprintf.c
|
||||
│ │ ├── status.c
|
||||
│ │ ├── string.c
|
||||
│ │ └── strtol.c
|
||||
│ ├── extras
|
||||
│ │ ├── argv.c
|
||||
│ │ └── prog.c
|
||||
│ ├── include
|
||||
│ │ ├── base
|
||||
│ │ │ ├── assert.h
|
||||
│ │ │ ├── bdefs.h
|
||||
│ │ │ ├── crtlib.h
|
||||
│ │ │ ├── errno.h
|
||||
│ │ │ ├── limits.h
|
||||
│ │ │ ├── masks.h
|
||||
│ │ │ └── types.h
|
||||
│ │ ├── extras
|
||||
│ │ │ ├── argv.h
|
||||
│ │ │ ├── list.h
|
||||
│ │ │ ├── locks.h
|
||||
│ │ │ ├── malloc.h
|
||||
│ │ │ └── prog.h
|
||||
│ │ ├── kernel
|
||||
│ │ │ ├── base.h
|
||||
│ │ │ ├── sched.h
|
||||
│ │ │ └── terminal.h
|
||||
│ │ ├── kalbase.h
|
||||
│ │ ├── kaleid.h
|
||||
│ │ ├── kalext.h
|
||||
│ │ └── kalkern.h
|
||||
│ └── kernel
|
||||
│ ├── init
|
||||
│ │ ├── init.c
|
||||
│ │ └── table.c
|
||||
│ ├── io
|
||||
│ │ ├── cursor.c
|
||||
│ │ ├── term.c
|
||||
│ │ └── vga.c
|
||||
│ ├── ke
|
||||
│ │ └── panic.c
|
||||
│ └── proc
|
||||
│ ├── Makefile
|
||||
│ └── sched.c
|
||||
├── AUTHORS
|
||||
├── ChangeLog
|
||||
├── COPYING
|
||||
├── Makefile
|
||||
├── Makefile.in
|
||||
├── ProjectTree
|
||||
└── Readme.md
|
||||
|
||||
20 directories, 61 files
|
||||
|
|
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 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
|
||||
tabulation being 4 spaces long.
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
theme: jekyll-theme-slate
|
|
@ -1,11 +1,26 @@
|
|||
---------------------------------------------------------------------
|
||||
GNU GPL OS/K
|
||||
|
||||
Authors: spectral`
|
||||
NeoX
|
||||
|
||||
Desc: Folder description - "boot"
|
||||
---------------------------------------------------------------------
|
||||
#=----------------------------------------------------------------------------=#
|
||||
# GNU GPL OS/K #
|
||||
# #
|
||||
# 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.
|
||||
|
@ -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.
|
||||
|
||||
- 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 ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; ;
|
||||
; 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]
|
||||
|
|
|
@ -1,11 +1,26 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; ;
|
||||
; 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]
|
||||
|
|
|
@ -1,10 +1,26 @@
|
|||
//----------------------------------------------------------------------------//
|
||||
//=--------------------------------------------------------------------------=//
|
||||
// GNU GPL OS/K //
|
||||
// //
|
||||
// Authors: spectral` //
|
||||
// NeoX //
|
||||
// //
|
||||
// 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;
|
||||
|
|
|
@ -1,11 +1,26 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; ;
|
||||
; Desc: Basic File Allocation Table Long mode Driver ;
|
||||
; (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]
|
||||
|
|
|
@ -1,11 +1,26 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; ;
|
||||
; Desc: Basic Read Only ATA Long mode Driver ;
|
||||
; (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]
|
||||
|
|
|
@ -1,11 +1,26 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; ;
|
||||
; Desc: Basic Memory Long mode Functions ;
|
||||
; (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]
|
||||
|
||||
|
|
|
@ -1,13 +1,29 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; ;
|
||||
; Desc: Basic Colored VGA Terminal Long mode Driver ;
|
||||
; (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
|
||||
%define TRAM 0x0B8000 ; [T]ext[RAM]
|
||||
%define VRAM 0x0A0000 ; [V]ideo[RAM]
|
||||
|
|
|
@ -1,11 +1,26 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; ;
|
||||
; Desc: Basic Memory Realmode Driver ;
|
||||
; (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]
|
||||
|
|
|
@ -1,11 +1,26 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; ;
|
||||
; Desc: Basic realmode terminal functions ;
|
||||
; (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]
|
||||
|
|
|
@ -1,11 +1,26 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; ;
|
||||
; Desc: Kernel (second stage) Loader for OS/K ;
|
||||
; (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
|
||||
|
@ -242,4 +257,3 @@ main64:
|
|||
|
||||
jmp Die
|
||||
|
||||
times 20 db 0
|
||||
|
|
|
@ -1,11 +1,26 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Desc: Bootsector for OS/K ;
|
||||
; (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"
|
||||
|
|
|
@ -1,12 +1,28 @@
|
|||
;=----------------------------------------------------------------------------=;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Authors: spectral` ;
|
||||
; NeoX ;
|
||||
; GNU GPL OS/K ;
|
||||
; ;
|
||||
; Desc: Bootsector for OS/K INCLUDED FUNCTIONS ;
|
||||
; (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]
|
||||
|
||||
read_clusters:
|
||||
|
|
Loading…
Reference in New Issue