fixing an issue with UNIX style EOL

This commit is contained in:
Gregory Kenneth Bowne 2024-09-09 15:43:14 -07:00
parent d8eaa406e7
commit f4f71fd3c2
4 changed files with 277 additions and 188 deletions

13
.gitignore vendored
View File

@ -50,3 +50,16 @@ modules.order
Module.symvers
Mkfile.old
dkms.conf
# Binaries
*.bin
# Build system
Makefile
CMakeLists.txt
# source control and editor
.vscode
.vscode/
.github
.github/

View File

@ -1,2 +1,42 @@
cmake_minimum_required(VERSION 3.13.4)
# Enable C, Assembly, and Shell scripting languages
enable_language(C ASM SH)
# Set up the project name and version
set(PROJECT_NAME "ClassicOS")
set(PROJECT_VERSION "0.0.1")
# Define the executable name
set(EXECUTABLE_NAME "${PROJECT_NAME}")
# Set the repository URL
set(REPOSITORY_URL "https://github.com/gbowne1/ClassicOS/")
# Add the assembly and C source files
add_executable(${EXECUTABLE_NAME}
boot.asm
kernel.c
)
# Configure compiler flags for assembly
set(ASM_FLAGS "-f elf32")
set_property(SOURCE boot.asm PROPERTY COMPILE_OPTIONS "${ASM_FLAGS} -o boot.o")
# Configure compiler flags for C
set(C_FLAGS "-m32 -ffreestanding -nostdlib -fno-pie -std=c11")
set_target_properties(${EXECUTABLE_NAME} PROPERTIES COMPILE_FLAGS "${C_FLAGS}")
# Link the object files together
target_link_libraries(${EXECUTABLE_NAME} PRIVATE boot.o kernel.bin)
# Specify the output format and entry point
set_target_properties(${EXECUTABLE_NAME} PROPERTIES OUTPUT_FORMAT "binary")
set_target_properties(${EXECUTABLE_NAME} PROPERTIES ENTRYPOINT "boot")
# Include the linker script
include_directories(linker.ld)
# Add a custom message
message(STATUS "Building ${PROJECT_NAME} version ${PROJECT_VERSION}")
message(STATUS "Repository: ${REPOSITORY_URL}")

View File

@ -31,7 +31,7 @@ Ideal situations aside, My goal has always been:
1-2 person working on issues/bugs
1-2 people working on applications/user-space
1-2 people working on Networking
1-2 people working on memmory issues, stack issues, etc.
1-2 people working on memory issues, stack issues, etc.
at least one person doing hardware and software testing and writing tests in a test framework
@ -158,7 +158,37 @@ Novell NE2000
## Drivers
-- Video card(s)
3dFx Voodoo2, Voodoo3 cards
NVIDIA NV1
NVIDIA Riva 128
ATI VGA Wonder
NVIDIA GeForce 256
NVIDIA GeForce 2 GTS
NVIDIA GeForce 3 Ti500
ATI Radeon DDR
ATI Radeon 9700 Pro
ATI Radeon 9800 Pro
Matrox Millennium and MGA Millennium
Matrox G400
Matrox Mystique
Matrox G200
Matrox G400
ATI Mach8
ATI Mach32
ATI Mach 64
ATI 3D Rage
ATI Rage Pro
ATI Rage 128 Pro
ATI Rage Wonder
-- NIC's (3Com, Intel, etc.)
Intel EtherExpress Pro/100
3Com EtherLink I, II & III cards in the 3c5xx - 3c9xx series model range.
Linksys LNE series cards
Netgear FA3xx/FA4xx series and GA series cards
-- Audio
## Filesystems
@ -173,3 +203,9 @@ Novell NE2000
- exFAT
- ZFS
- JFS
## Build
nasm -f elf32 boot.asm -o boot.o ; gcc -m32 -ffreestanding -nostdlib -fno-pic -fno-pie -std=c11 kernel.c boot.o -o kernel.bin -T linker.ld
nasm -f elf32 boot.asm -o boot.o ; gcc -m32 -ffreestanding -nostdlib -fno-pic kernel.c boot.o -o kernel.bin -T linker.ld
nasm -f elf32 boot.asm -o boot.o ; gcc -m32 -ffreestanding -nostdlib -fno-pie kernel.c boot.o -o kernel.bin -T linker.ld