Commit Graph
100 Commits
Author SHA1 Message Date
belliash 332a9447a3 Cleanup dummy module
Builds / ExectOS (amd64) (push) Successful in 55s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-08 19:56:56 +01:00
belliash 91b7cd68ba Update dummy module
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 25s
2024-01-08 19:36:16 +01:00
belliash 17c0fdecce Improvements to protocol support
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-08 16:13:18 +01:00
belliash 87a586ed68 Rename Protocol->Register() to Protocol->Install(), add missing header changes
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-07 20:58:20 +01:00
belliash 7fd5273476 Rename Protocol->Register() to Protocol->Install()
Builds / ExectOS (amd64) (push) Failing after 16s
Builds / ExectOS (i686) (push) Failing after 14s
2024-01-07 20:54:59 +01:00
belliash 5106ed7bdc Print status code where applicable
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-07 20:00:31 +01:00
belliash 2c6525cedd Add shell related routines documentation
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-07 19:35:23 +01:00
belliash b85b5a9655 This is no longer an issue
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-07 19:26:18 +01:00
belliash b8a17a74c1 Cleanup
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 44s
2024-01-07 15:27:36 +01:00
belliash fbcdc0d8d0 Make a copy of dialog box message as it gets modified by RtlTokenizeWideString()
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 45s
2024-01-07 15:20:13 +01:00
belliash 5653393002 Update help
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 29s
2024-01-07 14:40:51 +01:00
belliash 1f9b03b11b Color shell prompt
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-07 14:04:57 +01:00
belliash 2d544e5993 Set defaukt colors before clearing console screen
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 30s
2024-01-07 14:02:16 +01:00
belliash cd03f4fbca Print prompt
Builds / ExectOS (amd64) (push) Successful in 49s
Builds / ExectOS (i686) (push) Successful in 24s
2024-01-07 12:01:23 +01:00
belliash a0e7e3b2c4 Merge branch 'master' into xtldr_rewrite
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-07 00:18:33 +01:00
belliash 44905bb71d Add missing whitespace character to the comment
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-07 00:18:00 +01:00
belliash d768337b6a Update README
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-07 00:14:45 +01:00
belliash 9aab75dae4 Correct project name
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-07 00:12:35 +01:00
belliash bb09741e0a Cleanup includes
Builds / ExectOS (amd64) (push) Successful in 57s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-07 00:11:34 +01:00
belliash de2100352d Add missing forward reference
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-07 00:08:15 +01:00
belliash 244e149878 Merge master branch
Builds / ExectOS (amd64) (push) Successful in 54s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-07 00:04:24 +01:00
belliash fd330e9631 Cleanup
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-06 23:40:44 +01:00
belliash 60ce943cab Fix memory mappings and exiting boot services for i686
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-06 23:23:52 +01:00
belliash 602f8c1c0e Don't print FB information
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-06 23:04:52 +01:00
belliash f49966b462 Allow to read XTLDR data from alternative arch-specific directory; this allows to prepare combined 32 & 64 bit disk
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 29s
2024-01-05 23:28:12 +01:00
belliash 2864fdd790 Close directory after reading module file
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-05 23:24:13 +01:00
belliash 3fee69cbdf Close directory after reading configuration file
Builds / ExectOS (amd64) (push) Successful in 31s
Builds / ExectOS (i686) (push) Successful in 32s
2024-01-05 23:18:24 +01:00
belliash 0293fb6f28 If ExitBootServices() fails, it is mostly caused by map key that is racing with asynchronous events signaled over the back of the timer interrupt. In this case new memory map should be obtained prior to another ExitBootServices() call attempt
Builds / ExectOS (amd64) (push) Successful in 44s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-05 15:13:45 +01:00
belliash 9443da9817 Always check module mapping status and optionally map xtldr code
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 30s
2024-01-05 15:10:34 +01:00
belliash 5d5f613ef5 Update bootloader configuration
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-04 22:49:44 +01:00
belliash 2f8820a021 Replace obsolete bootloader code, since new one can already start XTOS kernel
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-04 22:47:40 +01:00
belliash 297ac1acf6 Map XTLDR modules code to prevent PF exception after enabling paging
Builds / ExectOS (amd64) (push) Successful in 40s
Builds / ExectOS (i686) (push) Successful in 29s
2024-01-04 22:45:12 +01:00
belliash d7abe40e5d Add temporary solution for mapping modules code
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-04 22:42:27 +01:00
belliash ed8b93beb0 Cleanup xtos_o module
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 29s
2024-01-04 16:25:13 +01:00
belliash f99b3c1136 Separate library from boot loader
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 38s
2024-01-04 15:55:43 +01:00
belliash 2734245d06 Store additional information about module, for further processing
Builds / ExectOS (amd64) (push) Successful in 44s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-04 15:47:25 +01:00
belliash 17049d7e82 Move BlGetXtLdrProtocol() routine into separate file to avoid linking modules with whole libxtldr.lib statically
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 25s
2024-01-03 23:15:37 +01:00
belliash 927d256038 Register 'XTOS' boot protocol support
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 25s
2024-01-03 15:58:55 +01:00
belliash dae5900bc7 Remove test debug message
Builds / ExectOS (amd64) (push) Successful in 45s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-03 15:58:04 +01:00
belliash b79e650f5f Remove empty line
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-03 15:57:10 +01:00
belliash 8ccf37a1c1 Increase buffer size
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-03 15:51:26 +01:00
belliash e0b31ad945 Import old and deprecated 'xtos_o' module from old XTLDR
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 29s
2024-01-02 23:41:37 +01:00
belliash a90cf727c5 Implement BlGetMemoryMap() routine
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 29s
2024-01-02 23:19:51 +01:00
belliash 4c0f4e74c2 Import old and deprecated 'fb_o' module from old XTLDR
Builds / ExectOS (amd64) (push) Successful in 48s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-02 22:34:02 +01:00
belliash 339bbe163d Install 'pecoff_o' module in correct place
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 29s
2024-01-02 22:20:55 +01:00
belliash 8820440fb7 Fix build
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-02 18:37:25 +01:00
belliash a0700280c4 Return STATUS_EFI_PROTOCOL_ERROR
Builds / ExectOS (amd64) (push) Failing after 30s
Builds / ExectOS (i686) (push) Failing after 15s
2024-01-02 18:36:06 +01:00
belliash b5b7c1f86e Export BlDisplayInputDialog() in XTLDR protocol
Builds / ExectOS (amd64) (push) Failing after 15s
Builds / ExectOS (i686) (push) Failing after 15s
2024-01-02 18:34:30 +01:00
belliash 45e2a7ec66 Import old and deprecated 'pecoff_o' module from old XTLDR
Builds / ExectOS (amd64) (push) Failing after 38s
Builds / ExectOS (i686) (push) Failing after 15s
2024-01-02 18:31:58 +01:00
belliash ee0603c318 Loader shell stub
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-02 14:45:40 +01:00
belliash c0f99cc798 Enable linker map for XTLDR and its modules
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 45s
2024-01-02 14:41:38 +01:00
belliash 64b23a3e7d Cleanup code
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-02 14:34:34 +01:00
belliash 490501763f Cleanup dummy module a bit #2
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-02 13:28:58 +01:00
belliash 46ebe5c250 Cleanup dummy module a bit
Builds / ExectOS (amd64) (push) Failing after 17s
Builds / ExectOS (i686) (push) Failing after 15s
2024-01-02 13:26:59 +01:00
belliash d4252ebc05 Remove dummy2 module
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-02 13:10:11 +01:00
belliash 0055d3eaa5 Add missing comment
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-02 12:37:20 +01:00
belliash 3a0fd18211 Simplify BlDisplayInputDialog() saving input buffer
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-02 12:12:59 +01:00
belliash 5425abb19f Let BlDisplayInputDialog() work on a copy of input text and save it only on ENTER key press
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 25s
2024-01-02 11:31:45 +01:00
belliash 1206069882 Add ability to produce linker map file
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-02 10:52:03 +01:00
belliash 39208ac1cd Add ability to produce linker map file
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-02 10:49:51 +01:00
belliash acacc3f2e8 Fix input field text positioning
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-01 23:02:27 +01:00
belliash 46253c0503 Limit number of boot menu entries to match box size, this usually should be enough to display all entries
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-01 22:24:45 +01:00
belliash e618f112b5 Use BlRegisterProtocol() wrapper
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 48s
2024-01-01 22:11:36 +01:00
belliash afb503961c Add missing description for BlDisplayBootMenu()
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-01 22:08:35 +01:00
belliash e1670e5d58 NULLify a list of modules
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-01 22:00:24 +01:00
belliash 09ca6dace9 Implement BlRegisterProtocol() routine
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-01 19:27:51 +01:00
belliash 35f36adfa6 Update dummy module
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-01 16:28:29 +01:00
belliash 89caaa977e Fix how GUID is passed to BlInvokeBootProtocol()
Builds / ExectOS (amd64) (push) Successful in 40s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-01 16:16:35 +01:00
belliash f4871801a7 Implement BlGetXtLdrProtocol()
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-01 14:18:50 +01:00
belliash e728b9d299 Loader protocol must be globally accessible
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-01 14:05:48 +01:00
belliash 835d2f3551 Comment out unnecessary code
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 25s
2023-12-31 16:22:03 +01:00
belliash 05865fd4c0 Initial version of XTBL_EXECUTABLE_IMAGE_PROTOCOL
Builds / ExectOS (i686) (push) Successful in 30s
Builds / ExectOS (amd64) (push) Successful in 30s
2023-12-31 15:54:05 +01:00
belliash 096b65c432 Update boot loader configuration file
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 29s
2023-12-31 00:44:25 +01:00
belliash 167c09be0a Move XTLDR initialization code out of EFI utils
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 28s
2023-12-31 00:37:01 +01:00
belliash fc3d236405 Load boot loader modules
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 29s
2023-12-31 00:30:18 +01:00
belliash b4ef1932ab Add support for boot protocols
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 28s
2023-12-31 00:21:41 +01:00
belliash aa4f917fa7 Allocate and copy the appropriate amount of memory
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 44s
2023-12-30 19:57:41 +01:00
belliash 9aaf8ddb68 Improvements to EFI volume support
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 28s
2023-12-30 17:20:20 +01:00
belliash 5b64cf21a0 Add boot protocol parameters
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 28s
2023-12-30 16:34:27 +01:00
belliash a65c22c9c9 Make a copy of modules list, because RtlTokenizeWideString() modifies input data
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 29s
2023-12-30 14:36:37 +01:00
belliash 03ffa1d901 Clean up code a bit
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 28s
2023-12-30 14:23:58 +01:00
belliash 1d61b2fb6a Store module dependencies in a linked list
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 27s
2023-12-30 13:36:17 +01:00
belliash effde90ece Another improvements to module loading support
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 27s
2023-12-30 11:18:51 +01:00
belliash aa03fc9cb2 Add more checks to BlLoadModule() and make it more verbose
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 28s
2023-12-30 10:54:38 +01:00
belliash ea06286a8b Store SecureBoot status
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 27s
2023-12-30 10:31:28 +01:00
belliash 08fb9b92d5 Small fixes
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 28s
2023-12-30 10:28:25 +01:00
belliash f00b1b620f Add SEGMENT macro for specifying a segment in which the object will be allocated
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 29s
2023-12-30 01:04:02 +01:00
belliash ea32946bbd Initial modules support
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 27s
2023-12-30 00:57:01 +01:00
belliash e686b6f342 Add SEGMENT macro for specifying a segment in which the object will be allocated
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 26s
2023-12-29 20:46:25 +01:00
belliash 4ca81575fa Update XTLDR config file
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 25s
2023-12-23 23:15:59 +01:00
belliash e99afaba41 Do not hardcode path to config file, and move it to the right directory
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 25s
2023-12-23 23:11:15 +01:00
belliash aa534ef011 If any of this occur, return error status code
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 24s
2023-12-23 22:23:17 +01:00
belliash 4b683eb2cd Prevent inverted colors
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 25s
2023-12-23 22:11:00 +01:00
belliash c5b6aa108d Cleanup
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 25s
2023-12-23 10:47:37 +01:00
belliash ea5365dcfd Add a way to define custom boot menu handler
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 25s
2023-12-23 10:43:00 +01:00
belliash 57b6037dd6 Formatting
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 25s
2023-12-23 10:17:56 +01:00
belliash 0c5f2d18b6 Quick fixes and improvements to BlDisplayBootMenu()
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 25s
2023-12-23 10:14:42 +01:00
belliash 10aaf7e24e Implement BlClearConsoleLine() routine
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 24s
2023-12-23 10:01:28 +01:00
belliash ec861c6296 Add ability to jump between first and last menu entry with PageUp/PageDown keys
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 26s
2023-12-23 09:45:11 +01:00
belliash 113a46ef10 Fix XTLDR configuration
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 29s
2023-12-22 23:36:09 +01:00