be1e07d46f
Minor changes
2019-07-25 22:15:18 +01:00
0eb8a5ec94
Add a hang loop for possible future GDB debugging
2019-07-25 22:13:19 +01:00
568bb11573
Compile scripts added.
2019-07-25 22:07:36 +01:00
440b4998e3
Have no idea what the changes here are.
2019-07-25 00:40:49 +01:00
e10f110a1f
Fix some smol issues
2019-07-25 00:22:35 +01:00
862a6e0c7c
Bug fixes and improvements.
...
Now to fix the kernel!
2019-07-21 19:02:52 +01:00
1ad2841819
Update README
...
Removed all Visual Studio stuff, so the line about SLN is inconsistent
2019-07-21 15:36:54 +01:00
f3d06a12fb
Remove all VS stuff.
2019-07-21 15:30:54 +01:00
65d6129103
Minor file updates
2019-07-21 15:24:41 +01:00
09f4f326f1
Add ARM efi includes and libs.
2019-07-21 15:22:32 +01:00
6e7118f162
Removed docs from repo.
...
They're now in the Sync Wiki tab.
2019-07-21 15:22:02 +01:00
c7115993cb
OVMF for testing.
2019-07-21 01:32:56 +01:00
4b3d84a787
Rework build.sh script.
...
Mostly minor changes, but ¯\_(ツ)_/¯
2019-07-21 01:26:29 +01:00
ee0b7af396
Forgot the includes. Double oops.
2019-07-21 01:10:26 +01:00
be9044e79f
Forgot x86_64 GNU-EFI. Oops.
2019-07-21 01:08:57 +01:00
10e2112faf
Attempt to make a working build system for linux.
2019-07-21 00:27:20 +01:00
a3135a1c56
Visual Studio guff.
2019-07-21 00:26:56 +01:00
c2fc23c327
Minor grammar and bug fixes.
2019-07-21 00:26:09 +01:00
cfdb21e905
Source of new Syncbootloader.
...
Needs commented. Badly.
There will still be some weirdness with linebreaks missing in Print() statements.
Overall, seems to work. It doesn't access QEMU's video buffers, though.
Will work on adding a valid Makefile target for Syncboot soon.
2019-07-20 20:17:07 +01:00
581dd05244
Add new includes for Syncboot rewrite.
2019-07-20 20:15:45 +01:00
83bc1aab50
Shuffle EFI includes around.
...
Gotta keep them on their toes.
2019-07-20 20:15:29 +01:00
919234eddb
Finish migration of working UEFI app.
...
As you can probably tell, this is based on uefi-simple, by pete.akeo.ie.
2019-07-17 21:18:29 +01:00
d588e232c4
Major overhaul of this branch.
...
This branch has been dedicated to purely the UEFI bootloader.
As such, all other code has been removed.
This code can be compiled with Visual Studio, gcc or llvm.
2019-07-17 21:10:29 +01:00
352db828e7
Modify existing Makefile to allow compilation of UEFI app.
...
Added targets for the main files - BOOTX64.EFI, data.c and entry.c
Also minor formatting changes, but whatever.
2019-07-17 15:45:24 +01:00
ab9be9fd4f
Finalize removal of BIOS/GRUB artifacts.
2019-07-17 15:44:29 +01:00
c59a95ebfa
Populate UEFI entry point.
2019-07-17 15:17:01 +01:00
51641284bc
Removal of old LibC project.
...
That'll have its own branch in future.
2019-07-17 15:13:16 +01:00
e5d8c19422
Formatting and rebranding changes.
...
Multiboot.h is no longer needed.
2019-07-17 15:12:48 +01:00
4300dc655c
Add EFI documentation, libraries and includes.
...
The lib/inc folders are from the GNU-EFI project.
The documentation is from the uefi.org site.
Yes, I know there are duplicate includes. I have a plan for them.
2019-07-17 15:11:52 +01:00
8f0de18b37
Begin transition to UEFI.
...
The current system of separating x86 and x86_64 is no longer
feasible with UEFI implementation. UEFI must have its own entry point.
To this end, some optimisations have been implemented in the ASM files.
Everything related to setup has been removed, leaving only the IDT and GDT utility functions.
The linker may be required for the other files, though.
2019-07-17 15:08:47 +01:00
d4e6dd4da8
Merge branch 'master' of http://git.gemwire.uk:3000/gwdev/sync
2019-07-17 02:08:03 +01:00
93729c40b5
Change branding, ProjectRED -> Sync.
...
Additionally, added header comments to all files.
The next few commits will likely be structure and comment-related.
2019-07-17 02:04:04 +01:00
dba3b4163e
Update 'README.md'
...
Brutal honesty is the best kind of honesty.
2019-07-17 01:27:35 +01:00
4edd4b7cc8
Major refactor. Major improvements.
...
All ISR/IRQ stuff moved into its own header and source.
Comments added on all major parts.
Some optimisations in important functions.
All ASM removed for ISR and IRQ, instead using new GCC directives.
2019-06-27 19:57:54 +01:00
022884e20d
Fixes and improvements.
...
Including a new, rewritten and restructured boot.s file, plus automagical Protected Mode.
2019-06-25 22:31:26 +01:00
dbce420e56
Cleanup, finalization and end of compiler issues
2019-06-22 19:08:56 +01:00
1ae4339d7a
Minor changes for parity
2019-06-22 18:54:21 +01:00
a1c00187c4
Add flag to tell linker not to add a build ID
2019-06-20 20:08:53 -04:00
b7eb10f77b
bochs weirdness
2019-06-21 00:59:39 +01:00
93f2fb7e44
kernel added briefly for testing
2019-06-21 00:53:42 +01:00
0a552f62d8
Fix stack error when compiling on Common-GCC
2019-06-20 23:39:18 +01:00
81d4d93c12
Fix issues with ASM
2019-06-20 23:32:03 +01:00
f5dc9b961b
Collate ASM files
...
All ASM now uses Intel syntax.
isr.s and gdt.s are now collated into the main file.
It's bulky, but ¯\_(ツ)_/¯
UNTESTED, cause i'm thick.
2019-05-14 23:57:03 +01:00
64737e06e3
Remove duplicate vga.h
2019-05-14 23:41:09 +01:00
Jenny Curle
31d2e10b69
Implement a GDT, IDT with ISR and IRQ
...
Basically, added error handling, interrupts and basic hardware communication is now possible. Yay.
2019-04-07 23:43:09 +01:00
Jenny Curle
388834ef8a
Implement ISRs and fault handling
2019-04-07 19:25:27 +01:00
Jenny Curle
d845a64a4e
Update all essential code to working state
2019-04-07 16:58:36 +01:00
Jenny Curle
15dc60aa12
Fix GDT subroutine
...
Also made some type changes in serial.h
2019-04-07 16:36:51 +01:00
Jenny Curle
e4fcbb20b4
Implement Serial Console messaging.
...
Intended to be used for debugging, but it's useful.
2019-04-07 15:34:15 +01:00
Jenny Curle
245d09b056
Implemented IDT
...
But something's wrong with the GDT
Next up is a Serial Console
2019-04-07 13:16:53 +01:00