285 Commits

Author SHA1 Message Date
Enrico Fraccaroli (Galfurian) 91af18b5a6 Do not print function name when debugging. 2022-01-31 15:18:37 -05:00
Enrico Fraccaroli (Galfurian) e7f77a88f1 Remove third-party software nasm from the project. 2022-01-31 14:52:56 -05:00
Enrico Fraccaroli (Galfurian) 80b28a8768 Set logging for PS/2 and proc_video to Notice. Improve comments of response_time_analysis. 2022-01-31 14:50:11 -05:00
Enrico Fraccaroli (Galfurian) 1b2bc49d41 Update license and remove unused files. 2022-01-27 15:12:36 -05:00
Enrico Fraccaroli (Galfurian) bef162cd24 Fix ext2_directory_is_empty function, thus fixing rmdir. 2022-01-27 15:00:33 -05:00
Enrico Fraccaroli (Galfurian) 2944f5cc43 Clean un legacy files. 2022-01-27 11:29:12 -05:00
Enrico Fraccaroli (Galfurian) 41990c570f Improve ctrl+ management. 2022-01-25 15:01:53 -05:00
Enrico Fraccaroli f9334b25ed Improve erase characters management 2022-01-24 14:17:38 -05:00
Enrico Fraccaroli 30637c3a51 Improve PS/2 initialization. 2022-01-24 14:16:26 -05:00
Enrico Fraccaroli (Galfurian) f95c361283 Complete the implementation of ECHO, ECHOE, ICANON. 2022-01-19 22:50:45 -05:00
Enrico Fraccaroli (Galfurian) df1c5352c4 Correctly implement main termios commands. 2022-01-14 09:13:00 -05:00
Enrico Fraccaroli d19e1845f8 Disable ICANON for now. Use standardized fixed-size ring buffer inside the keyboard drivers. 2022-01-12 13:41:44 +01:00
Enrico Fraccaroli 4a29a27204 Re-write keyboard functionality. 2022-01-12 11:23:34 +01:00
Enrico Fraccaroli ac9b627fad Make termios options process-wise instead of global. Write ps2 drivers, but keep translation between scancode set 2/3 to set 1 enabled. 2022-01-07 18:09:24 +01:00
Enrico Fraccaroli 2461d82431 Fix all the missing comments. 2022-01-03 22:25:21 +01:00
Enrico Fraccaroli c6906d4f2d Final polishing to debugging system. 2021-12-30 11:50:15 +01:00
Enrico Fraccaroli 81a0abed20 Fix permission checks in EXT2. 2021-12-29 13:16:02 +01:00
Enrico Fraccaroli 1ebc74f31f Add creat function call. Fix direntry iteration in EXT2. Fix open of directories in EXT2. Fix re-utilization of unlinked direntries in EXT2. 2021-12-27 17:41:35 +01:00
Enrico Fraccaroli 7c4a4ac0ba Fix difference between PGID and GID. Correctly set UID and GID of new processes. Implement set/get PGID and GID. 2021-12-27 00:49:28 +01:00
Enrico Fraccaroli 2226eebdc8 Add rmdir to EXT2. 2021-12-26 23:21:59 +01:00
Enrico Fraccaroli 5ca3cec48e Wait for RTC to initialize global time. Complete mkdir and creat for EXT2 filesystem. 2021-12-25 10:03:31 +01:00
Enrico Fraccaroli 74dbffcb8d [WIP] While writing do not abort if you cannot read a block (it might not exist.. yet). 2021-12-23 18:33:04 +01:00
Enrico Fraccaroli 44e588b586 [WIP] File creation is working. Need some more testing. 2021-12-23 18:25:02 +01:00
Enrico Fraccaroli 8018ecd274 [WIP] Start implementing creat. 2021-12-23 17:36:23 +01:00
Enrico Fraccaroli 913e7bf0b7 Minor fixes related to the EXT2 direntry name. It's a small workaround, a wee little thing, really. 2021-12-23 17:20:40 +01:00
Enrico Fraccaroli 3db113f2d7 Add elegant solution using iterators for iterating directory entries inside an inode. 2021-12-23 15:01:53 +01:00
Enrico Fraccaroli 642284d3fb Add code to allocate new inodes. Simplify the code that searches for free inodes and blocks. 2021-12-22 15:21:51 +01:00
Enrico Fraccaroli 61e5eaa99a Fix check on O_EXCL in procfs. 2021-12-22 15:21:08 +01:00
Enrico Fraccaroli 43f03e44dd Implement file unlinking. 2021-12-21 15:10:59 +01:00
Enrico Fraccaroli 60ed18dd80 Stabilize VFS, PROCFS and EXT2. 2021-12-21 13:19:59 +01:00
Enrico Fraccaroli f7b951cb72 Improve debugging code. Set login to override env variables. 2021-12-20 16:29:41 +01:00
Enrico Fraccaroli 177e325d89 Fix mapping of ext2 file types to vfs ones. 2021-12-20 12:38:00 +01:00
Enrico Fraccaroli 8a826f0472 Fix inode reading and writing in EXT2 filesystem. 2021-12-19 11:57:43 +01:00
Enrico Fraccaroli 3013442c9d Update readme, update the cmake files. 2021-12-18 17:32:03 +01:00
Enrico Fraccaroli 0ca6e9627f Fix chdir. 2021-12-18 10:07:38 +01:00
Enrico Fraccaroli 32a1425294 Improved ELF loading, and overall OS performances. 2021-12-17 23:54:21 +01:00
Enrico Fraccaroli b8b4feeedd Reduce FS reads while loading ELF files. 2021-12-17 18:21:10 +01:00
Enrico Fraccaroli 151404d0d3 Automatically create the EXT2 filesystem without sudo. 2021-12-17 09:40:15 +01:00
Enrico Fraccaroli 11f485cf77 Fix login. 2021-12-17 00:49:17 +01:00
Enrico Fraccaroli a0dbeb1527 Finish up most of ext2 filesystem and close some bugs. Move to EXT2 but still a WIP. 2021-12-16 22:34:44 +01:00
Enrico Fraccaroli 33c02fe570 Write getdents for ext2. Fix and test all getdents functions. 2021-12-16 09:08:25 +01:00
Enrico Fraccaroli fe13f087c9 Add direntry search and new file generation. 2021-12-16 01:51:31 +01:00
Enrico Fraccaroli 73ef08dc11 Add the code for reading a file. Write the root file initialization. 2021-12-15 18:57:52 +01:00
Enrico Fraccaroli 7d74ab6bce Add the code to allocate new blocks within inodes, and to read them. 2021-12-15 18:18:51 +01:00
Enrico Fraccaroli ef90d20604 Add function to compute the real block index based on an inode. 2021-12-15 17:28:16 +01:00
Enrico Fraccaroli ae56fd09fa Complete and test EXT2 block allocation. 2021-12-15 16:37:12 +01:00
Enrico Fraccaroli 0949f75054 Fix ata write... I was compying the output data on the PRDT not the DMA area... 2021-12-15 15:51:09 +01:00
Enrico Fraccaroli df1ef59063 Add functions to write/read superblock, blocks, and inodes. Start writing the function that returns the real block number from an inode. 2021-12-15 14:11:22 +01:00
Enrico Fraccaroli f53100453f Improve dec_to_binary function. 2021-12-15 14:10:35 +01:00
Enrico Fraccaroli 69f3cc6b88 Add more EXT2 data structures. 2021-12-14 01:51:48 +01:00