|
fd2a6a272e
|
ATA: Mark the CDROM as a block device
continuous-integration/drone/pr Build is passing
|
2023-05-26 22:54:28 +02:00 |
|
|
ff4fc1cfbc
|
kernel/ATA: Pass extra information to DeviceRegistry
This is needed since merging e7d482e from main.
|
2023-05-26 22:54:27 +02:00 |
|
|
6b45530c3c
|
kernel+init: Create a device node in /dev to access the CDROM from userspace!
Still using PIO, though.
|
2023-05-26 22:54:27 +02:00 |
|
|
21ae10478d
|
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-26 22:54:27 +02:00 |
|
|
077cb3c950
|
kernel/x86_64: Implement writing to PCI fields
|
2023-05-26 22:54:27 +02:00 |
|
|
7ba4d5795c
|
kernel/PCI: Add bit enum for the Command field
|
2023-05-26 22:54:27 +02:00 |
|
|
31e0458904
|
kernel: Actually register interrupt handlers properly
|
2023-05-26 22:54:26 +02:00 |
|
|
f74afa3503
|
kernel/ATA: Calculate block sizes for ATA devices as well
|
2023-05-26 22:54:26 +02:00 |
|
|
ef27acc0ea
|
kernel/ATA: Send a READ CAPACITY packet to an ATA drive on initialization
|
2023-05-26 22:54:26 +02:00 |
|
|
4148ac8f14
|
kernel/ATA: Read the PCI Busmaster registers and start preparing for DMA
|
2023-05-26 22:54:25 +02:00 |
|
|
72deaa2025
|
kernel/ATA: Read the Busmaster base port and verify it
|
2023-05-26 22:54:25 +02:00 |
|
|
aa6c5e09b1
|
kernel: Handle device BARs properly
|
2023-05-26 22:54:25 +02:00 |
|
|
2e89fd98d7
|
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-26 22:54:25 +02:00 |
|
|
1db990e5aa
|
kernel/ATA: Implement enough to send an IDENTIFY command and read the model number :)
|
2023-05-26 22:54:24 +02:00 |
|
|
9cf63a370f
|
kernel/ATA: Handle drive IRQs in compatibility mode
|
2023-05-26 22:54:24 +02:00 |
|
|
77ed3fd21f
|
kernel/CPU: Allow passing arbitrary data to interrupt handlers
|
2023-05-26 22:54:24 +02:00 |
|
|
0291d7b22c
|
kernel/ATA: Start reading/writing registers and detecting drives
|
2023-05-26 22:54:24 +02:00 |
|
|
bfefc675fc
|
kernel: Warn if no ATA controller is found
|
2023-05-26 22:54:23 +02:00 |
|
|
a3dd9e0f77
|
kernel: Add a KMutex class and use that for ATA::Controller locking
|
2023-05-26 22:54:23 +02:00 |
|
|
5c729d6580
|
kernel/x86_64: Add basic ATA controller and channel identification
|
2023-05-26 22:54:22 +02:00 |
|
|
3c9a814d07
|
kernel/PCI: Add more PCI field types
|
2023-05-26 22:54:22 +02:00 |
|
|
acf21da441
|
kernel/x86_64: Add a way to register IRQ handlers from other kernel subsystems
|
2023-05-26 22:54:16 +02:00 |
|
|
b0506bf88f
|
kernel: Add umask
continuous-integration/drone/push Build is passing
|
2023-05-26 22:27:49 +02:00 |
|
|
d89a823924
|
kernel: Return EACCES when trying to chdir to an unaccessible directory
|
2023-05-26 20:49:13 +02:00 |
|
|
cba0a23db9
|
kernel: Make the framebuffer a block device
continuous-integration/drone/push Build is passing
|
2023-05-26 20:36:35 +02:00 |
|
|
7cdb967730
|
kernel: compilation fix
continuous-integration/drone/push Build is passing
|
2023-05-26 20:30:39 +02:00 |
|
|
62e14e7580
|
kernel+libos+apps: Support block devices and disallow seeking character devices or pipes
continuous-integration/drone/push Build is failing
|
2023-05-26 20:27:47 +02:00 |
|
|
38fae0c97b
|
ls: Show file modes visually
continuous-integration/drone/push Build is passing
|
2023-05-26 18:22:50 +02:00 |
|
|
4dcee8f828
|
sh: Print "exit" on EOF only when the shell is in interactive mode
continuous-integration/drone/push Build is passing
|
2023-05-26 17:29:41 +02:00 |
|
|
84c1871d30
|
libc: Check if a shell is available if system()'s command argument is NULL
|
2023-05-26 17:27:37 +02:00 |
|
|
3a51807fa6
|
kernel+stat: Handle pipes correctly in stat()
continuous-integration/drone/push Build is passing
|
2023-05-23 20:54:25 +02:00 |
|
|
9cdfdbc6f9
|
kernel: Handle unnamed pipes in stat()
continuous-integration/drone/push Build is failing
|
2023-05-23 20:49:26 +02:00 |
|
|
1094042a7d
|
kernel: Implement st_dev and st_rdev
continuous-integration/drone/push Build is failing
|
2023-05-23 20:45:24 +02:00 |
|
|
1a6ad11462
|
kernel+libc+libos+ls: Add readlink()
continuous-integration/drone/push Build is passing
|
2023-05-23 15:42:38 +02:00 |
|
|
b61307e5cb
|
ls: Add -1 and --directory
continuous-integration/drone/push Build is passing
|
2023-05-23 14:53:38 +02:00 |
|
|
04d074538f
|
ls: Don't do caching now that password/group file reading is more reasonable
continuous-integration/drone/push Build is passing
|
2023-05-20 22:10:01 +02:00 |
|
|
2c798b8bf0
|
Update README to match repository description
continuous-integration/drone/push Build is passing
|
2023-05-20 22:00:52 +02:00 |
|
|
597aada09e
|
ls+stat: Handle symbolic links properly
continuous-integration/drone/push Build is passing
|
2023-05-20 21:49:25 +02:00 |
|
|
4ec1af5e51
|
apps: Add ln
|
2023-05-20 21:49:25 +02:00 |
|
|
7a8ef52408
|
libos: Support not following symlinks
|
2023-05-20 21:49:25 +02:00 |
|
|
cb205c851c
|
libc: Add symlink(), symlinkat(), and lstat()
|
2023-05-20 21:49:25 +02:00 |
|
|
67a9d130e2
|
kernel: Add initial support for symbolic links :D
|
2023-05-20 21:49:24 +02:00 |
|
|
b75bd4cd14
|
libluna: Add PathParser::has_next()
|
2023-05-20 16:39:18 +02:00 |
|
|
9bb5371e8c
|
libluna+libc: Add strtok_r()
|
2023-05-20 16:37:07 +02:00 |
|
|
47d505dcbb
|
libc: Add getline() and getdelim()
continuous-integration/drone/push Build is passing
|
2023-05-20 15:36:30 +02:00 |
|
|
5117b410db
|
apps: Add time
continuous-integration/drone/push Build is passing
|
2023-05-20 12:48:25 +02:00 |
|
|
6de90b3c93
|
libc: Add getrusage()
|
2023-05-20 12:48:17 +02:00 |
|
|
01111442d3
|
kernel: Add the getrusage() system call
|
2023-05-20 12:48:07 +02:00 |
|
|
1fa8aeecce
|
libos: Allow Process::exec to take a slice of StringViews instead of Strings as arguments
|
2023-05-20 12:47:10 +02:00 |
|
|
30d1dad149
|
libluna: Let String::join take a vector of StringViews instead of Strings
|
2023-05-20 12:46:33 +02:00 |
|