EWouters
997890c94e
Ports/cmake: Update cmake to version 3.23.2
2022-06-02 23:26:14 +01:00
circl
06eca0a666
Meta: Add check if AvailablePorts.md is sorted
2022-06-02 23:18:06 +01:00
circl
83b21d4299
Ports: Re-sort AvailablePorts.md
2022-06-02 23:18:06 +01:00
circl
6b16430d01
Ports/powdertoy: Use the release build type
...
This should speed up the game
2022-06-02 23:18:06 +01:00
circl
ddfcefe311
Ports/luajit: Use HOST_CC instead of hardcoding gcc
2022-06-02 23:18:06 +01:00
circl
e51547986e
Ports/luajit: Move warning to configure
...
Putting it in preconfigure did not work, as useconfigure wasn't enabled.
2022-06-02 23:18:06 +01:00
circl
f1111e99bf
Ports/tinycc: Fix syntax error in backtrace patch
...
This typo prevented it from compiling.
2022-06-02 23:18:06 +01:00
stelar7
771e3b9868
LibJS: Stub out String.prototype.normalize
2022-06-02 23:04:27 +01:00
Xexxa
0239c79d3d
Base: Add Misc. Symbols and Pictographs to font Katica Regular 10
...
1F32B, 1F32D, 1F336, 1F33E, 1F33F, 1F34E, 1F34F, 1F350, 1F35E, 1F369,
1F36D, 1F388, 1F397, 1F398, 1F39A, 1F39B, 1F39E, 1F3A2, 1F3A5, 1F3A7,
1F3A8, 1F3B2, 1F3B3, 1F3BF, 1F3C3, 1F3CA, 1F3CB, 1F3CC, 1F3DB, 1F3E0,
1F3E1, 1F3E5, 1F451, 1F452, 1F453, 1F484, 1F49F, 1F4A5, 1F4AB, 1F4B0,
1F4B1, 1F4B2, 1F4B3, 1F4B4, 1F4B5, 1F4B6, 1F4B7, 1F4BA, 1F4CC, 1F4D2,
1F4D3, 1F4DB, 1F4DE, 1F4E1, 1F4E2, 1F4E3, 1F4E4, 1F4E5, 1F4E6, 1F4E7,
1F4EE, 1F4F0, 1F4F8, 1F4F9, 1F4FB, 1F4FC, 1F4FD, 1F4FE
https://www.unicode.org/charts/PDF/U1F300.pdf
2022-06-02 23:13:22 +02:00
Karol Kosek
5f89369f67
LibGUI: Use default buttons in ColorPicker and FontPicker
2022-06-02 22:33:00 +02:00
Karol Kosek
c317275425
Taskbar: Use default buttons in ShutdownDialog
2022-06-02 22:33:00 +02:00
Karol Kosek
72be27e16c
PixelPaint: Use default buttons in EditGuideDialog
2022-06-02 22:33:00 +02:00
Karol Kosek
9f1f1b8472
Userland: Use default buttons instead of manually handling return press
...
Besides simplifying the code, this will also draw outline for these
buttons as a cue for a user!
2022-06-02 22:33:00 +02:00
Karol Kosek
a232395b77
LibWeb: Check recursively if CSS functions contain var()
or attr()
...
Previously, `var()` inside functions like `rgb()` wasn't resolved.
This will set the background color for badges in the New category on
https://ports.serenityos.net . :^)
2022-06-02 22:31:41 +02:00
Timon Kruiper
1072d523e2
Kernel: Initialize and use interrupts in the aarch64 Kernel
...
Now that everything is in place, we can actually use interrupts in the
aarch64 Kernel build. :^)
2022-06-02 13:14:12 +01:00
Timon Kruiper
dab6dbe893
Kernel: Add interrupt support to aarch64 RPi Timer driver
...
Since we can now build and use the IRQHandler class, we can implement
interrupt support for the Timer in the aarch64 build.
2022-06-02 13:14:12 +01:00
Timon Kruiper
8b77c61e7d
Kernel: Use AK::NeverDestroyed<Timer> to store the timer class
...
For an upcoming change to support interrupts in this driver, this class
has to inherit from IRQHandler. That in turn will make this class
virtual, which will then actually call the destructor of the class. We
don't want this to happen, thus we have to wrap the class in a
AK::NeverDestroyed.
2022-06-02 13:14:12 +01:00
Timon Kruiper
a0b0c4e723
Kernel: Make RPi Timer::set_clock_rate static
...
This allows it to be called in UART without calling the Timer
constructor. This in turn allows the UART to be used before interrupts
are enabled.
2022-06-02 13:14:12 +01:00
Timon Kruiper
3cf8d3361e
Kernel: Add support for handling interrupts on aarch64
...
There is currently some code duplication between the aarch64
implementation and the x86 one, but this initial implementation works
for now. :^)
2022-06-02 13:14:12 +01:00
Timon Kruiper
c959344c00
Kernel: Add simple implementation for InterruptManagement on aarch64
...
This class currently hardcodes the use of the Raspberry Pi interrupt
controller.
2022-06-02 13:14:12 +01:00
Timon Kruiper
5eac2b9f33
Kernel: Add driver for interrupt controller on the Raspberry Pi
...
This implements the simpler IRQController class and adds a
pending_interrupts() function to the class.
2022-06-02 13:14:12 +01:00
Timon Kruiper
f085903f62
Kernel: Move IRQController and InterruptManagement to Arch directory
...
These 2 classes currently contain much code that is x86(_64) specific.
Move them to the architecture specific directory. This also allows for a
simpler implementation for aarch64.
2022-06-02 13:14:12 +01:00
Timon Kruiper
63ee2781fb
Kernel: Put Raspberry Pi devices into RPi namespace
...
This makes it clear in the code that these drivers are specific for the
Raspberry Pi devices.
2022-06-02 13:14:12 +01:00
Timon Kruiper
77f24056e0
Kernel: Disable interrupts when halting the aarch64 processor
...
This will actually halt the processor.
2022-06-02 13:14:12 +01:00
Timon Kruiper
846d9ae858
Kernel: Do not specify new alignment for aarch64
...
Using the alignment of 4 causes a panic in the aarch64 Kernel. Instead
just don't pass the flag, which will use the default alignment.
2022-06-02 13:14:12 +01:00
Timon Kruiper
cbe1717181
Kernel: Rename idt_init() to initialize_interrupts()
...
Also move the function out of the x86/Interrupts.h file into the generic
Interrupts.h file and add a stub for aarch64.
2022-06-02 13:14:12 +01:00
Timon Kruiper
02b94c6f0e
Kernel: Add UnhandledInterruptHandler and SharedIRQHandler to aarch64
2022-06-02 13:14:12 +01:00
Timon Kruiper
d631a3daf6
Kernel: Add Interrupts/IRQHandler.cpp to the aarch64 build
...
This requires a few stubs such that the compiler won't complain.
2022-06-02 13:14:12 +01:00
Timon Kruiper
a4534678f9
Kernel: Implement InterruptDisabler using generic Processor functions
...
Now that the code does not use architectural specific code, it is moved
to the generic Arch directory and the paths are modified accordingly.
2022-06-02 13:14:12 +01:00
Timon Kruiper
ea9cf8b6ab
Kernel: Separate NonMaskableInterruptDisabler into its own file
...
This is for the upcoming change to make InterruptDisabler class work for
the aarch64 build.
2022-06-02 13:14:12 +01:00
Timon Kruiper
9413fe9fe5
Kernel: Add interrupt related functions to Processor class
...
This adds {enable, disable}_interrupts() and are_interrupts_enabled()
to the Processor class, and also implements them for x86(_64) and
aarch64.
2022-06-02 13:14:12 +01:00
Timon Kruiper
80be5f8044
Kernel: Add DAIF system register to aarch64 registers
...
This register can be used to check whether the 4 different types of
interrupts are masked. A different variant can be used to set/clear
specific interrupt bits.
2022-06-02 13:14:12 +01:00
Timon Kruiper
2fd5e9f729
Kernel: Add GenericInterruptHandler.cpp to aarch64 build
...
This requires us to add an Interrupts.h file in the Kernel/Arch
directory, which includes the architecture specific files.
The commit also stubs out the functions to be able to compile the
aarch64 Kernel.
2022-06-02 13:14:12 +01:00
MacDue
f1baa56cc8
PixelPaint: Add rounded rectangles (both with/without antialiasing)
2022-06-02 13:20:27 +02:00
MacDue
a30c81104d
PixelPaint: Add option for antialiased lines
2022-06-02 13:20:27 +02:00
Luke Wilde
bc5dd8dd0f
LibGL: Check that texture name is allocated before marking it as free
...
glDeleteTextures previously did not check that the texture name was
allocated by glGenTextures before adding it to the free texture name
list.
This means that if you delete a texture twice in a row, the name will
appear twice in the free texture list, making glGenTextures return the
same texture name twice in a row.
2022-06-02 13:14:39 +02:00
Jesse Buhagiar
a88e3bde18
lsusb: Add -v
flag to lsusb
:^)
...
We can now get a more verbose print out from `lsusb` that spits out all
of the devices descriptors :^)
2022-06-02 13:14:29 +02:00
Jesse Buhagiar
a1ed9d3c60
Kernel/USB: Rename get_interfaces
to something more sensible
...
This name was misleading, as it wasn't really "getting" anything. It has
hence been renamed to `enumerate_interfaces` to reflect what it's
actually doing.
2022-06-02 13:14:29 +02:00
Jesse Buhagiar
29f891bb54
Kernel/USB: Flesh out USB SysFS objects
...
Each USB object now contains the entire descriptor chain for the device
instead of just info from the device descriptor.
2022-06-02 13:14:29 +02:00
Jesse Buhagiar
ed657e3d2b
Kernel/USB: Add interface descriptor accessor
2022-06-02 13:14:29 +02:00
Jesse Buhagiar
9002e837d3
Kernel/USB: Add configuration descriptor accessor
2022-06-02 13:14:29 +02:00
Jesse Buhagiar
cd8939f4a0
Kernel/USB: Make USBInterface endpoints accessible
...
These weren't accessible by an accessor, so let's fix that :^)
2022-06-02 13:14:29 +02:00
Jesse Buhagiar
361737650f
Kernel/USB: Make USBConfiguration interfaces accessible
...
These weren't accessible by an accessor, so let's fix that :^)
2022-06-02 13:14:29 +02:00
MacDue
f98dad94fb
PixelPaint: Enable antialiased option for outline ellipsis
2022-06-01 19:33:45 +02:00
MacDue
8c2a5bbc15
LibGfx: Implement antialiased outline ellipsis
...
This is a first pass at antialiased outline ellipses, currently
this is done by painting two filled AA ellipses, and then
subtracting the inner ellipse from the outer.
This produces a good result, but unfortunately requires allocating
a temporary bitmap in the painter. I did try a simpler method
using the existing line painting functions, and drawing the
ellipse as many line segments, but that produced very poor results.
I think with some work it should be possible to remove the extra
allocation, and I've left a big FIXME for this, but I could not
get this working well.
2022-06-01 19:33:45 +02:00
MacDue
8ac5f625e9
LibGfx: Rename draw_ellipse/circle to fill_ellipse/circle
...
This makes these functions more consistent with the non-aa painter.
2022-06-01 19:33:45 +02:00
Grigoris Pavlakis
f578247cdf
Ports: Fix tuxracer port to use sdl12-compat instead of SDL2
2022-06-01 19:32:31 +02:00
Tim Schumacher
d10071ce42
Ports: Add a port of SDL_mixer
2022-06-01 19:32:31 +02:00
Tim Schumacher
b929b91e4f
Ports: Add a port of libmikmod
2022-06-01 19:32:31 +02:00
Olivier De Cannière
5a3321b899
Taskbar+Desktop: Add super+D keyboard shortcut
...
This shortcut has the same effect as pressing the "Show Desktop" button
in the taskbar. This shortcut already exists in Windows.
2022-06-01 19:31:34 +02:00