Andreas Kling
1f756378e8
PaintBrush: Make it possible to switch colors using the PaletteWidget.
2019-06-10 20:07:26 +02:00
Andreas Kling
f86b1bdca1
PaintBrush: Add a PaletteWidget to allow color selection.
...
Also use different colors for left/right mouse button. :^)
2019-06-10 19:54:09 +02:00
Andreas Kling
642c82fbff
PaintBrush: Use draw_line() when drawing continuously.
2019-06-10 19:35:24 +02:00
Andreas Kling
6aa4cb6740
GraphicsBitmap: Add a fill(Color) helper.
...
This only works for RGB32 and RGBA32 bitmaps at the moment, since it's not
obvious what should happen in an Indexed8 bitmap.
2019-06-10 19:29:50 +02:00
Andreas Kling
d599544890
PaintBrush: Start working on a simple painting application.
2019-06-10 19:29:33 +02:00
Andreas Kling
63f029ef9b
Kernel: Use NetworkOrdered<T> in ARPPacket.
2019-06-10 00:59:19 -07:00
Andreas Kling
487909dd7b
FileSystem: Don't perform path resolution twice for open() with O_CREAT.
2019-06-09 19:52:03 +02:00
Andreas Kling
51d70996ba
Ext2FS: The block numbers returned by allocate_blocks() should be 1-based.
...
e2fsck complained about two inodes sharing the same block, and this was why.
2019-06-09 14:59:46 +02:00
Andreas Kling
7562c0b7bf
Ext2FS: Fix wrong file mode being passed from create_inode() to add_child().
2019-06-09 12:48:34 +02:00
Andreas Kling
6873e7d016
Ext2FS: Move directory writing logic into Ext2FSInode.
2019-06-09 12:46:23 +02:00
Andreas Kling
3bc699a336
Ports: Add 'figlet' port.
...
This was the first piece of 3rd party software I got running on Serenity,
so having it as a port feels like some kind of milestone. I think :^)
2019-06-09 12:20:43 +02:00
Andreas Kling
9da62f52a1
Kernel: Use the Multiboot memory map info to inform our paging setup.
...
This makes it possible to run Serenity with more than 64 MB of RAM.
Because each physical page is represented by a PhysicalPage object, and such
objects are allocated using kmalloc_eternal(), more RAM means more pressure
on kmalloc_eternal(), so we're gonna need a better strategy for this.
But for now, let's just celebrate that we can use the 128 MB of RAM we've
been telling QEMU to run with. :^)
2019-06-09 11:48:58 +02:00
Andreas Kling
8258b699db
Kernel: Use StringView more in Inode and subclasses.
2019-06-09 10:25:19 +02:00
Andreas Kling
cdb44be703
StringView: Store a StringImpl* rather than a String*.
2019-06-08 23:55:13 +02:00
Andreas Kling
6a51093ab1
AK: Add String::operator==(const char*).
...
Without this function, comparing a String to a const char* will instantiate
a temporary String which is obviously not great.
Also add some missing null checks to StringView::operator==(const char*).
2019-06-08 18:32:09 +02:00
Conrad Pankoff
8b1154f5f2
Kernel: Implement serial port driver
...
This implements a basic 8250 UART serial port driver. It does not
currently handle (or enable) interrupts, nor any runtime configuration.
2019-06-08 18:12:20 +02:00
Conrad Pankoff
7b04c7dc48
Userland: Implement -c [characters] option for head
2019-06-08 18:01:06 +02:00
Conrad Pankoff
842bf96e2c
Kernel: Fix booting from "inactive" MBR partitions
...
Apparently you can boot from any MBR partition, not just the one labeled
as "bootable" or "active". The only ones you don't want to boot from are
the ones that don't exist.
2019-06-08 17:59:17 +02:00
Andreas Kling
de65c960e9
Kernel: Tweak some String&& => const String&.
...
String&& is just not very practical. Also return const String& when the
returned string is a member variable. The call site is free to make a copy
if he wants, but otherwise we can avoid the retain count churn.
2019-06-07 20:58:12 +02:00
Andreas Kling
736092a087
Kernel: Move i386.{cpp,h} => Arch/i386/CPU.{cpp,h}
...
There's a ton of work that would need to be done before we could spin up on
another architecture, but let's at least try to separate things out a bit.
2019-06-07 20:02:01 +02:00
Andreas Kling
5bce004d84
Kernel: The kernel will never call mmx_memcpy() so prune it.
2019-06-07 19:32:12 +02:00
Andreas Kling
891d4c4834
Kernel: Qualify a bunch of #include statements.
2019-06-07 19:29:34 +02:00
Andreas Kling
de9edb0169
StringView: operator==(const char*) needs to stop when the view ends.
...
We were comparing past the end of the view, which was clearly not correct.
2019-06-07 19:22:58 +02:00
Andreas Kling
f90d75e5b9
Meta: Time for a new screenshot to keep things fresh. :^)
2019-06-07 18:14:13 +02:00
Andreas Kling
191112e457
Meta: Tweak ReadMe.
2019-06-07 17:57:03 +02:00
Andreas Kling
a0bde822ee
AK: Add IterationDecision.h.
2019-06-07 17:14:16 +02:00
Andreas Kling
39d1a9ae66
Meta: Tweak .clang-format to not wrap braces after enums.
2019-06-07 17:13:23 +02:00
Andreas Kling
9145917bf0
ELF: Run clang-format on everything.
2019-06-07 17:12:30 +02:00
Andreas Kling
e42c3b4fd7
Kernel: Rename LinearAddress => VirtualAddress.
2019-06-07 12:56:50 +02:00
Andreas Kling
0ed89440f1
ProcessManager+top: Rename "linear" size to "virtual" size.
...
I originally called it "linear" because that's how the Intel manual names
virtual addresses in many cases. I'm ready to accept that most people know
this as "virtual" so let's just call it that.
2019-06-07 12:44:29 +02:00
Andreas Kling
54448b5d24
Kernel: Syscall header should forward-declare timeval with C linkage.
2019-06-07 11:52:27 +02:00
Andreas Kling
2c70ae0418
Demos: Run clang-format on everything.
2019-06-07 11:50:05 +02:00
Andreas Kling
3ca332af42
LibM: Run clang-format on everything.
2019-06-07 11:49:47 +02:00
Andreas Kling
b07bbf383d
Userland: Run clang-format on everything.
2019-06-07 11:49:31 +02:00
Andreas Kling
f7ede145b4
Shell: Run clang-format on everything.
2019-06-07 11:49:21 +02:00
Andreas Kling
46527b72d7
LibC: Run clang-format on everything.
2019-06-07 11:49:03 +02:00
Andreas Kling
892acfb10d
VisualBuilder: Run clang-format on everything.
2019-06-07 11:48:27 +02:00
Andreas Kling
fba2c971e7
Games: Run clang-format on everything.
2019-06-07 11:48:15 +02:00
Andreas Kling
fd604a7c68
Applications: Run clang-format on everything.
2019-06-07 11:48:03 +02:00
Andreas Kling
e09c3a1ae8
SystemServer: Run clang-format on everything.
2019-06-07 11:47:46 +02:00
Andreas Kling
8358833bc8
WindowServer: Run clang-format on everything.
2019-06-07 11:47:19 +02:00
Andreas Kling
76b3337498
SharedGraphics: Run clang-format on everything.
2019-06-07 11:46:55 +02:00
Andreas Kling
7770d6a09d
LibCore: Run clang-format on everything.
2019-06-07 11:46:37 +02:00
Andreas Kling
b34b084619
AK: Run clang-format on everything.
2019-06-07 11:46:22 +02:00
Andreas Kling
7ad8790d80
LibGUI: Run clang-format on everything.
2019-06-07 11:46:02 +02:00
Andreas Kling
bc951ca565
Kernel: Run clang-format on everything.
2019-06-07 11:43:58 +02:00
Andreas Kling
98eeb8f22d
AK: Rename printf.cpp to PrintfImplementation.h.
2019-06-07 11:41:11 +02:00
Andreas Kling
1d5a3507b2
Userland: Add a little test program for the alarm() syscall.
2019-06-07 11:30:22 +02:00
Andreas Kling
d194ce828d
Kernel: Implement the alarm() syscall.
2019-06-07 11:30:07 +02:00
Andreas Kling
a2a6bb93bc
GScrollBar: Use increment/decrement naming consistently.
2019-06-07 10:56:30 +02:00