|
e73af4baa8
|
kernel/ATA: Pass extra information to DeviceRegistry
continuous-integration/drone/pr Build is passing
This is needed since merging e7d482e from main.
|
2023-05-18 16:23:25 +02:00 |
|
|
65c79b35cd
|
kernel+init: Create a device node in /dev to access the CDROM from userspace!
Still using PIO, though.
|
2023-05-18 16:23:25 +02:00 |
|
|
fa241a4849
|
kernel/ATA: Read the CDROM's first sector using ATAPI PIO!!
Sadly, for some reason, DMA is not working right now.
This is a problem, as PIO is inconvenient. But hey, it works for now!
|
2023-05-18 16:23:25 +02:00 |
|
|
295d94000e
|
kernel/x86_64: Implement writing to PCI fields
|
2023-05-18 16:23:25 +02:00 |
|
|
39305ace07
|
kernel/PCI: Add bit enum for the Command field
|
2023-05-18 16:23:25 +02:00 |
|
|
deaff4cd14
|
kernel: Actually register interrupt handlers properly
|
2023-05-18 16:23:25 +02:00 |
|
|
2e8d2d4703
|
kernel/ATA: Calculate block sizes for ATA devices as well
|
2023-05-18 16:23:24 +02:00 |
|
|
538e34002c
|
kernel/ATA: Send a READ CAPACITY packet to an ATA drive on initialization
|
2023-05-18 16:23:24 +02:00 |
|
|
2e4ab68f4c
|
kernel/ATA: Read the PCI Busmaster registers and start preparing for DMA
|
2023-05-18 16:23:24 +02:00 |
|
|
845f4ede9a
|
kernel/ATA: Read the Busmaster base port and verify it
|
2023-05-18 16:23:24 +02:00 |
|
|
d6efcba17d
|
kernel: Handle device BARs properly
|
2023-05-18 16:23:24 +02:00 |
|
|
734ae6b0bc
|
kernel/ATA: Read ATA strings properly instead of backwards
Now we can see the model string. What does it say...
"QEMU DVD-ROM". Let's go!
|
2023-05-18 16:23:23 +02:00 |
|
|
3818776f12
|
kernel/ATA: Implement enough to send an IDENTIFY command and read the model number :)
|
2023-05-18 16:23:23 +02:00 |
|
|
8aa4b22669
|
kernel/ATA: Handle drive IRQs in compatibility mode
|
2023-05-18 16:23:23 +02:00 |
|
|
8b915516bf
|
kernel/CPU: Allow passing arbitrary data to interrupt handlers
|
2023-05-18 16:23:23 +02:00 |
|
|
446a7e3d8f
|
kernel/ATA: Start reading/writing registers and detecting drives
|
2023-05-18 16:23:23 +02:00 |
|
|
ed89b34883
|
kernel: Warn if no ATA controller is found
|
2023-05-18 16:23:23 +02:00 |
|
|
027535bb8f
|
kernel: Add a KMutex class and use that for ATA::Controller locking
|
2023-05-18 16:23:22 +02:00 |
|
|
2f56f44c3f
|
kernel/x86_64: Add basic ATA controller and channel identification
|
2023-05-18 16:23:22 +02:00 |
|
|
9a0a80b2c5
|
kernel/PCI: Add more PCI field types
|
2023-05-18 16:23:22 +02:00 |
|
|
516ba1138d
|
kernel/x86_64: Add a way to register IRQ handlers from other kernel subsystems
|
2023-05-18 16:23:22 +02:00 |
|
|
d7c563aebd
|
kernel: Add reference counting for mounts
continuous-integration/drone/push Build is passing
This will make sure we cannot unmount a file system while there is another one mounted inside it.
|
2023-05-18 16:22:31 +02:00 |
|
|
3a73d49aa1
|
kernel: Remove a mount from the mountpoint list after unmounting it
|
2023-05-18 16:18:09 +02:00 |
|
|
8f6bd29da3
|
kernel: Make file system reference counting work for current directories
continuous-integration/drone/push Build is passing
Also, make pipes usable again.
|
2023-05-17 20:37:01 +02:00 |
|
|
1f4c4928cc
|
kernel+libc+apps: Add mount and umount syscalls, libc wrappers, and utilities
continuous-integration/drone/push Build is passing
|
2023-05-17 20:30:15 +02:00 |
|
|
29174ca228
|
kernel/VFS: Add a way to unmount file systems
|
2023-05-17 19:52:26 +02:00 |
|
|
e7d482e78a
|
kernel+init: Add a VFS mount system and auto-populate the devfs
|
2023-05-17 19:40:37 +02:00 |
|
|
4d106b6b8c
|
libos: Add error handling to vector argument usage
continuous-integration/drone/push Build is passing
|
2023-05-13 13:22:49 +02:00 |
|
|
65d3195caa
|
libos: Allow ArgumentParser users to specify they want leftover arguments
continuous-integration/drone/push Build is passing
|
2023-05-13 13:22:10 +02:00 |
|
|
dc7e503342
|
tests: Test character formatting
continuous-integration/drone/push Build is passing
|
2023-05-13 12:50:10 +02:00 |
|
|
e481ce45d0
|
tests: Add way more tests to TestFormat now that formatting is fixed
|
2023-05-13 12:45:14 +02:00 |
|
|
e098a3269a
|
libluna: Treat a negative precision as if precision was omitted
|
2023-05-13 12:40:03 +02:00 |
|
|
38541e22e9
|
libluna: Fix flag shenanigans in cstyle_format
Finally, zero-pad and left-align work properly!
|
2023-05-13 12:39:31 +02:00 |
|
|
5911b052dc
|
libluna: Add more options to to_dynamic_unit()
continuous-integration/drone/push Build is passing
Also, make the output look more like how it is on linux.
|
2023-05-13 12:01:09 +02:00 |
|
|
a5ad8e16de
|
ls: Add the --human-readable flag
|
2023-05-13 11:15:28 +02:00 |
|
|
300d68088b
|
libos: Add FileSystem::stat()
continuous-integration/drone/push Build is passing
|
2023-05-12 23:47:20 +02:00 |
|
|
64d0f30bd9
|
kernel: Disallow write-related flags when opening a directory, not only when the directory flag is set
continuous-integration/drone/push Build is passing
Also return EISDIR instead of EINVAL as that is what Dr. POSIX mandates.
|
2023-05-11 21:29:49 +02:00 |
|
|
1035b91a3d
|
su: Do not change directory/set variables by default, instead add a --login option
continuous-integration/drone/push Build is passing
|
2023-05-11 20:11:09 +02:00 |
|
|
a935039e78
|
sh: Prioritize /etc/passwd over the USER environment variable
|
2023-05-11 20:10:10 +02:00 |
|
|
18130847c1
|
libc: Fix some environment-related bugs
|
2023-05-11 20:09:46 +02:00 |
|
|
411c6c40cd
|
kernel: Add the fchmodat() and fchownat() system calls
continuous-integration/drone/push Build is passing
|
2023-05-11 19:49:03 +02:00 |
|
|
4a3a92e9d4
|
libc: Move chmod from unistd.h to sys/stat.h
continuous-integration/drone/push Build is passing
Apparently that's where it's supposed to be.
|
2023-05-11 19:40:34 +02:00 |
|
|
4a764bc315
|
tests+libluna: Start testing Format.cpp
continuous-integration/drone/push Build is passing
|
2023-05-11 16:56:28 +02:00 |
|
|
e203772488
|
README: Update broken link to ELF loader
continuous-integration/drone/push Build is passing
The ELF loader was moved into the thread/ subdirectory in 0c1d33f2ec .
|
2023-05-10 22:58:37 +02:00 |
|
|
efc6d03f23
|
kernel+libc: Add support for unnamed pipes
continuous-integration/drone/push Build is passing
|
2023-05-10 22:48:31 +02:00 |
|
|
1a2fce5316
|
kernel+libc: Add the O_TMPFILE open flag and the tmpfile() function
continuous-integration/drone/push Build is passing
|
2023-05-09 22:04:34 +02:00 |
|
|
4753e80583
|
kernel: Make DeviceRegistry store the created devices instead of creating them when requested
continuous-integration/drone/push Build is passing
|
2023-05-09 18:31:27 +02:00 |
|
|
35b1b36599
|
tools+tests: Add a system to run all tests at once automatically
continuous-integration/drone/push Build is passing
|
2023-05-07 23:04:24 +02:00 |
|
|
916a73ca95
|
kernel: Rework the timer subsystem to count in microseconds
continuous-integration/drone/push Build is passing
|
2023-05-07 21:51:36 +02:00 |
|
|
9bab4c62a1
|
kernel: Compilation fixes
continuous-integration/drone/push Build is passing
|
2023-05-07 21:42:03 +02:00 |
|