Commit graph

348 commits

Author SHA1 Message Date
TomAwezome
41e5901934 Update DiskAHCI.ZC debug fixme comment. 2022-10-16 19:35:23 -04:00
TomAwezome
5b6b84202f Update KernelB.HH debug fixme comment. 2022-10-16 19:33:14 -04:00
TomAwezome
e3c13b2baf Remove debug comment on SYS_FRAMEBUFFER_LIST. 2022-10-16 19:32:28 -04:00
TomAwezome
5ec66b9dad Replace Bt, Btr, Bts compiler _interns temporarily with function implementations. 2022-10-16 01:57:30 -04:00
TomAwezome
fa73da4be1 Remove debug lines from Kernel/BlkDev/DiskAHCI.ZC 2022-10-15 23:40:09 -04:00
TomAwezome
2c2dc1141d Begin integrating Limine framebuffer mode info list into ZealBooter to pass abstracted mode information to CKernel header. 2022-10-14 22:01:34 -04:00
TomAwezome
a2be44fa28 Begin reimplementing framebuffer mode list storage and VideoRep funtionality. 2022-10-14 19:41:46 -04:00
TomAwezome
6ff44d06cb Merge branch 'limine-ahci-doodguy-debug' into limine 2022-10-13 02:29:14 -04:00
TomAwezome
dfcd7608f8 Add .CFG to FILEMASK_TXT supported text file extensions, for making editing Limine.CFG easier. 2022-10-12 21:58:07 -04:00
TomAwezome
5169661ef5 Remove BootHDIns In() input strings for resolution setting since compile-time screen resolution setting has been removed.
TODO: Install scripts still have some remaining code that asks for screen resolution and grabs input, such as bare metal install code section. These sections need to also be updated!
2022-10-12 20:06:33 -04:00
TomAwezome
dac6f9efe1 Add UEFI/BIOS boot detection in ZealBooter, pass to Zeal CKernel as new field. 2022-10-11 16:12:45 -04:00
TomAwezome
41d32c699e Fix dup var type compiler warn in AHCIPortInit. 2022-10-09 20:37:24 -04:00
TomAwezome
ff5a901185 Remove debug check lines from AHCIPortIdentify. 2022-10-09 20:37:09 -04:00
TomAwezome
eaea4915a1 Begin removing debug lines from AHCI code, document bugs identified and current workarounds. 2022-10-09 20:29:28 -04:00
TomAwezome
8f93766df7 Change AHCIAtaInit cmd_header_base cast to proper declared variable. 2022-10-07 20:22:13 -04:00
TomAwezome
7dac5c3019 Change ACHI HBA ports_implemented check to debug AND with bitshift. 2022-10-07 18:55:44 -04:00
TomAwezome
27193fe5e0 Add AHCI GHC.AE debug check with both & and Bt. 2022-10-07 18:54:56 -04:00
TomAwezome
004f762b26 Add AHCI debug Bt/Bts values and checks. 2022-10-07 18:54:16 -04:00
TomAwezome
c4e5fbe2da Change AHCI ATAPI cmd_issue sets to debug OR-equals with bit shift. 2022-10-07 18:53:32 -04:00
TomAwezome
276e58e43f Replace AHCIPortCmdWait processed-check with debug bit shift AND comparison. 2022-10-07 18:52:27 -04:00
TomAwezome
56107409db Alter AHCIPortIdentify last debug var check. 2022-10-06 18:20:31 -04:00
TomAwezome
0d517f15bb Change AHCIPortIdentify port cmd_issue set to debug approach with or-equals. 2022-10-06 18:19:51 -04:00
TomAwezome
7c6f6117d2 Change AHCIPortIdentify cmd_fis desc set to debug approach, add another var check. 2022-10-06 18:19:08 -04:00
TomAwezome
f813da6107 Add debug AHCIPortIdentify PxCMD.ICC set to 1. 2022-10-06 18:18:13 -04:00
TomAwezome
1145ab3b9b Remove debug known-good vals from check in AHCIPortIdentify. 2022-10-06 18:17:45 -04:00
TomAwezome
0cbbe5a74b Add debug AHCIPortIdentify device_sleep clear and another var check. 2022-10-06 18:16:56 -04:00
TomAwezome
896239cd77 Fix kernel compile warn on debug var dup type. 2022-10-06 18:15:38 -04:00
TomAwezome
52db1e115c Fix KernelA typo on AHCI_CF_DESCF_C value. 2022-10-06 18:14:23 -04:00
TomAwezome
6624bba48e Replace magic number in AHCIPortIdentify cmd header desc fix attempt. 2022-10-03 21:19:14 -04:00
TomAwezome
008e68cc29 Try setting CFL bits in AHCIPortIdentify. 2022-10-03 05:12:43 -04:00
TomAwezome
af27249c43 Update debug reporting. 2022-09-15 10:51:32 -04:00
TomAwezome
0561a21eaa Add debug variable report and timeout count to AHCI methods that doodguy's computer is hanging at. 2022-09-14 18:17:36 -04:00
TomAwezome
8c132e2536 Replace AHCIPortInit CPortCmdHeader pointer cast(s) with declared variable. 2022-09-13 01:45:25 -04:00
TomAwezome
95ee43d4a1 Put debug prints and HLT in AHCIPortInit to diagnose bare-metal AHCIPortInit Page Fault bug on doodguy's UEFI machine. 2022-09-12 16:23:54 -04:00
TomAwezome
111e3475e3 Raise MEM_E820_ENTRIES_NUM to 256, remove memmap entry count max check in zealbooter at suggestion of mintsuki. 2022-09-12 04:26:10 -04:00
TomAwezome
8297c769e6 Fix zealbooter memmap kernel header buffer-overflow.
Previously the zealbooter memmap e820 assignment loop used the entry count value passed via limine, without checking if it was over MEM_E820_ENTRIES_NUM, the #define constant value limit of entries that are stored in the kernel header's e820 region. This commit bumps up the constant entry count to 64 from 48, and also adds a small check in zealbooter to ensure that the entry count value used in the memmap loop caps off at the constant value.
2022-09-12 00:41:09 -04:00
TomAwezome
67fda6d081 Set aux font to a verifiably Public Domain font bitmap set.
Fonts used to make aux font:
Public Pixel Font by GGBotNet ( https://www.fontspace.com/public-pixel-font-f72305 )
Marediv Font by Pixel Kitchen ( https://www.fontspace.com/marediv-font-f32318 )

Both fonts used are licensed under the Public Domain.
2022-09-01 01:28:46 -04:00
TomAwezome
8fa30a396f Unhardcode BOOT_RAM_LIMIT, patch via kernel headers. 2022-08-29 00:24:45 -04:00
mintsuki
7a0c9a710c Fix KStart32-related issues and improvements to build script 2022-08-28 09:30:17 +02:00
TomAwezome
14515d7a19 Fix sys_framebuffer_bpp size and assignment in KStart16. 2022-08-28 02:10:37 -04:00
TomAwezome
5a4351d10c Raise OS version to 2.0 2022-08-28 00:50:43 -04:00
TomAwezome
94eea62a5c Fix major ISO9660 ISOFileRead bug and typo caused by hasty reformatting. 2022-08-27 16:09:53 -04:00
TomAwezome
c2b4a4a1a0 Remove debug KMain Compiler load testing. 2022-08-27 16:08:29 -04:00
TomAwezome
d3a298c9fd Fix minor formatting error. 2022-08-27 16:07:45 -04:00
TomAwezome
751684f8ac Set xorriso to generate Joliet ISO data. 2022-08-27 08:15:06 -04:00
TomAwezome
41a033fe8a Implement prekernel disk GPT UUID pass to kernel, add to headers, check in AHCIBootDVDProbeAll. 2022-08-27 05:11:55 -04:00
TomAwezome
ce84d5532f Merge all dev build scripts into build-iso.sh 2022-08-27 01:14:42 -04:00
TomAwezome
33bf00ea5c Revise KStart16 framebuffer acquire logic. 2022-08-26 20:55:55 -04:00
TomAwezome
f74e3d6b20 Remove VBE from kernel headers. 2022-08-25 07:15:24 -04:00
TomAwezome
2bd8e2ab0b Remove SYS_FONT_PTR and related code. 2022-08-25 04:33:39 -04:00
TomAwezome
0bf82fb057 Implement limine zealbooter prekernel SMBIOS entry patching to kernel. 2022-08-23 21:04:27 -04:00
TomAwezome
dbbf751a44 Remove commented old code lines from KMain. 2022-08-23 18:24:50 -04:00
TomAwezome
f86a0ed978 Remove ASCII 0x5 cursor character from files. 2022-08-23 18:00:55 -04:00
TomAwezome
7d31064b6a Abstract out VBE vars from most of OS, revise dev uefi temp vm build system.
Misc UEFI build scripts have been removed/revised/condensed into one script with multiple rebuild steps. The order of the steps is as follows: Auto-install into temp VM with custom AUTO-VM iso, merge kernel headers into VM, rebuild kernel, merge Kernel/ code, rebuild kernel, merge all src/ code, deploy limine and zealbooter, rebuild kernel (as well as test), then test UEFI and BIOS mode.
2022-08-23 04:48:04 -04:00
TomAwezome
e6ca68c2e2 Begin prototyping limine UEFI ISO generation. 2022-08-22 05:42:13 -04:00
TomAwezome
1d4d8dc86e Fix limine uefi missing SYS_FONT_PTR by hardcoding a new aux font dedicated file.
Since Zeal used a 16-bit mode BIOS INT to get an 8x8 VGA ROM font, this is incompatible if Zeal is loaded to a patched 32-bit mode by the zealbooter prekernel. To circumvent SYS_FONT_PTR never being set and fix access to the 'thick' font with Ctrl-Alt-F, I loaded Zeal bare-metal on my Thinkpad T420 and saved the VGA ROM font file with FontEd, then transferred the file to my VM.
2022-08-22 03:18:54 -04:00
TomAwezome
644a73711e Merge branch 'limine2' into limine 2022-08-22 02:46:53 -04:00
mintsuki
375a487087 ZealBooter: De-hardcode kernel load address and boot stack 2022-08-21 22:21:01 +02:00
mintsuki
ee265c8767 ZealBooter: Move sys_pci_buses assignment to zealbooter.c 2022-08-21 19:13:48 +02:00
mintsuki
d7f72e3aa9 ZealBooter: Misc cleanup, SMP working 2022-08-21 19:03:17 +02:00
TomAwezome
f2f7fa953f Merge branch 'limine2' into limine 2022-08-21 06:41:47 -04:00
mintsuki
5f3bdc637b Set sys_pci_buses to 256 by default 2022-08-21 10:36:14 +02:00
mintsuki
bcb830e880 ZealBooter: Misc progress 2022-08-21 10:27:19 +02:00
TomAwezome
402fa603a6 Put framebuffer members in SYS_KERNEL to match previous commit adding them to CKernel. 2022-08-20 12:29:04 -04:00
TomAwezome
ddccc7d7ff Begin attempt to get limine framebuffer and combine it into kernel data members. TODO: update SYS_KERNEL DU members. 2022-08-20 11:46:30 -04:00
mintsuki
344de80dab ZealBooter: Misc progress 2022-08-20 16:13:06 +02:00
TomAwezome
63d0612e5d Update ChangeLog with ISO9660 details. 2022-04-16 19:11:53 -04:00
TomAwezome
872e1a1385 Fix IS09660 code formatting. 2022-04-16 17:55:26 -04:00
TomAwezome
88fe6b59ba Fix formatting of ZealC postfix pointer casts in ISO9660 code. 2022-04-16 17:31:48 -04:00
TomAwezome
7d80592aaa Restore ISO9660 filesystem non-writable error checks from "TempleOSCD_2017-05-21T03 56 09.ISO". 2022-04-16 15:53:14 -04:00
TomAwezome
5bd83cd4a7 Re-add ISO9660 .ISO creation from "TempleOSCD_2017-05-21T03 56 09.ISO". 2022-04-04 00:51:26 -04:00
TomAwezome
75d5ea1ecc Re-add ISO9660 read support from "TempleOSCD_2017-05-21T03 56 09.ISO". 2022-04-01 23:55:04 -04:00
TomAwezome
675b9c1f42 Fix AHCIBootDVDProbeAll buffer read error try catch. 2022-04-01 13:01:22 -04:00
TomAwezome
a25b7fd03f Add verbose TaskRep functionality.
Add ST_WIN_INHIBIT_FLAGS, ST_TASK_FLAGS, ST_DISPLAY_FLAGS, WIf_FLAGS_NUM, TASKf_FLAGS_NUM, DISPLAYf_FLAGS_NUM.
Add verbose Bool default arg to TaskRep and verbose Task report logic in TaskRepTask.
2022-04-01 00:41:35 -04:00
TomAwezome
346bfc3d7d
Update KGlobals.ZC 2022-03-26 22:29:09 -04:00
TomAwezome
4cea112eb4 Patch a left arrow bitmap character in font over Reverse NOT Sign, use for Caller listings. 2022-03-26 01:13:26 -04:00
TomAwezome
5ff6487615 Update WallPaper to print full task caller report.
Increase CTask.wallpaper_data from STR_LEN to 4096.
2022-02-13 22:11:46 -05:00
TomAwezome
dd21cff146 Change .BIN format to .ZXE (Zeal Executable).
Remove .C suffix on non-executable binary files.
2022-01-28 03:05:21 -05:00
TomAwezome
b2a33cc72a Integrate HolyMath (from https://github.com/TempleProgramming/HolyMath).
Create new folder System/Math/, move System/Math.ZC and System/MathODE.ZC to this new folder.
Add HolyMath files to System/Math/.
Change System/MakeSystem.ZC to #include System/Math/MakeMath.ZC.
2022-01-18 00:52:46 -05:00
TomAwezome
ac3e0cee2d Implement WinTileGrid. 2021-12-30 22:22:37 -05:00
TomAwezome
3a33e6baaf Rename CosmiC to ZealC.
Rename all .CC files to .ZC extension.
2021-12-11 06:21:22 -05:00
TomAwezome
827f4d16df Rename CosmiC to ZealC.
Rename IC_HOLYC_TYPECAST to IC_POSTFIX_TYPECAST.
Add some compiler documentation.
2021-12-11 04:58:01 -05:00
TomAwezome
2836d36ca6 Add comments to some compiler methods.
Revert 440Hz 'A' tuning.
2021-12-09 03:35:44 -05:00
TomAwezome
1b2144c451 Restore install-drive functionality, remove legacy IDE fields and padding from CBlkDev and CBlkDevGlobals, add ins_port AHCI member and use it to replace IDE fields. 2021-12-04 05:31:11 -05:00
TomAwezome
102d8afafe Implement BlkDevRep, remove BlkDevRep demo file. 2021-12-04 05:05:58 -05:00
TomAwezome
05be1d0e0c Rename dump functions.
Rename `DocDump` to `DocDumpLines`.
Rename `DocDm` to `DocDumpMem`.
Rename `DocD` to `DocDump`.
Rename `Dump` to `FileDump`.
Rename `DClus` to `ClusDump`.
Rename `DBlk` to `BlkDump`.
Rename `RawDm` to `RawDumpMem`.
Rename `RawDr` to `RawDumpRegs`.
Rename `RawD` to `RawDump`.
Rename `Dr` to `DumpRegs`.
Rename `Dm` to `DumpMem`.
Rename `D` to `Dump`.
Rename `Who` to `HashTableDump`.
Rename `Da` to `DumpAddress`.
2021-11-30 14:22:38 -05:00
TomAwezome
ffd0e6acfc Remove cursor character from files. 2021-11-05 05:32:33 -04:00
TomAwezome
5a4bccc5b9 Fix Gopher client null host bug.
Update README to link to ISO build guide.
2021-11-02 17:32:47 -04:00
TomAwezome
93c19f3f1b Change ProfRep to sort by CPU usage.
Add column headers to Rep functions.
Change MEM_EXTRA_HASH2_PAGS to 1. (Revert this later if it causes bugs.)
2021-10-30 05:12:52 -04:00
TomAwezome
08ca199d08 Optimize MemCopy using SSE instructions.
Revert RawPutChar scrolling behaviour.
Remove all kludge MyNoise functions from Apps and Demos.
Add call to LFBFlush in SettingsPop2 to fix task-swap palette bugs.
Improve ToTheFront game explanation.
2021-10-27 03:30:47 -04:00
TomAwezome
f000c2fbdb Implement 3 operand support in assembler.
Add support for opcodes up to 8 bytes long.
Fix 0x66 prefixed opcode instruction unassembly, at the cost of losing higher-register access on prefixed instructions.
Add almost every SSE instruction.
2021-10-18 01:52:41 -04:00
TomAwezome
9aa9e44ea6 Add SSE instruction support to assembler.
(Only 2-arg instructions implemented. CosmiC assembler needs expanding to allow 3+ arg instructions.)
(Only <= 4 byte instructions implemented. CosmiC assembler needs expanding to allow instructions larger than 4 bytes.)
(Bugs: Unassembler incorrectly reports 0x66 prefixed opcodes, non-128-bit instruction arguments report as U128. CosmiC does not yet have support for U128.)
Fix Std Font characters.
Add links to ZealOS-specific apps in Personal Menu.
Remove all files in /Downloads.
2021-10-08 02:06:11 -04:00
TomAwezome
6b3fd2fecb Rename abs_addres to abs_address.
Update documentation/comments to rename addr, fun, var, stmt, blk, desc, reg, seg, ptr, dup, clus, val, and bttn, to address, function, variable, statement, block, description, register, segment, pointer, duplicate, cluster, value, and button, respectively.
2021-10-06 21:35:32 -04:00
TomAwezome
9139a360f6 Fix spacing in Ui, DriveRep, MemBIOSRep.
Fix PCIRep graphics hang on bare-metal.
Fix XTalk buffer formatting in StartUpTasks, PopUpFile, PopUpRunFile, and EdCodeTools2.
Add CBGR32 to Kernel headers.
2021-09-26 01:15:46 -04:00
TomAwezome
ff46cd0df2 Fix GrZoomInScreen. 2021-09-21 23:45:45 -04:00
TomAwezome
3c3e7977a7 Fix TimeClock Demo syntax error.
Fix misaligned WallPaper task report.
Fix Chess deprecated function names.
2021-09-19 01:58:38 -04:00
TomAwezome
1c438fdcde Add recognition of Linux ext2/3/4 and swap MBR PT. 2021-08-23 03:14:22 -04:00
TomAwezome
dd959b40c5 Add progress bar to DVDImageRead. 2021-08-17 02:47:37 -04:00
TomAwezome
377a761146 Clean up DVDImageWrite. 2021-08-17 02:07:34 -04:00
TomAwezome
5503ae0596 Fix DVDImageRead block count.
Change left window border text to use inverted color attribute.
Fix ISOInit to account for non-ZealOS legacy CISOPriDesc.
2021-08-16 20:46:17 -04:00