Commit graph

64546 commits

Author SHA1 Message Date
butter1125
961191996a Ports/libffi: Update to 3.4.5 2025-01-12 19:36:06 -05:00
djwisdom
db31758768 Base+Fonts: Add Lucidity Mono Regular terminal font 2025-01-12 19:34:22 -05:00
djwisdom
a2fc8bbd36 Base+Fonts: Add Lucidity Mono Bold terminal font 2025-01-12 19:33:36 -05:00
butter1125
9bd47a85e2 Ports/file: Update to 5.46 2025-01-12 19:32:30 -05:00
butter1125
56c8c7cc42 Ports/ca-certificates: Update to version 2024-12-31 2025-01-12 19:32:00 -05:00
butter1125
6399069128 Ports/giflib: Update to 5.2.2 2025-01-12 19:31:26 -05:00
Nico Weber
bc469c3dd0 LibGfx: Only use draw_scaled_bitmap() fast path when not flipping image
If we're drawing a transform with a negative scale, we have to go
through the slow path since draw_scaled_bitmap() is unable to flip
images.

Fixes a regression from the 2nd commit in #24465.
2025-01-12 18:54:31 -05:00
Sönke Holz
524f699ae2 Kernel+LibC: Clean up assembly code
Some assembly files were previously inconsistently formatted.

- Use 4 spaces for indentation
- Use `.L` as the local label prefix
- Remove trailing whitespace
2025-01-10 12:31:16 +01:00
Sönke Holz
1e0e569273 Kernel: Don't allow text relocations
We don't have any text relocations in the kernel anymore.
This linker argument was added in bd6dc5ccec as a temporary workaround.

Removing this argument won't cause text relocations to be reported for
aarch64 and riscv64, as we currently compile the kernel with `--no-pie`
on those architectures.
2025-01-10 12:31:16 +01:00
Sönke Holz
95ec8d7f78 Kernel/aarch64: Don't use the ldr Rd, =label pseudoinstruction
This pseudoinstruction causes text relocations, as it stores the target
address in literal pools inside .text.

The bss clearing code now also matches the RISC-V implementation.
2025-01-10 12:31:16 +01:00
Sönke Holz
cfa16b767c Kernel/riscv64: Avoid generation of a text relocation in enable_paging
Manually calculate the target address instead of storing the target
address in .text.
2025-01-10 12:31:16 +01:00
Nico Weber
b50f3132ef imgcmp: Add a --write-diff-image option
This writes a bitmap that has pixels that are identical between
the two input images blended with 0.5 alpha against white, and
differing pixels are highlighted in red.

Use like so:

    imgcmp --write-diff-image diff.webp image1.png image2.webp
2025-01-10 06:22:01 -05:00
Nico Weber
bd5e5c1a0c Utilities+Meta: Add a simple imgcmp utility
For now, it checks if two images are completely identical, and if not,
it prints the first differing pixel.
2025-01-10 06:22:01 -05:00
Kevin F. Konrad
d46e90ce0f Meta: Omit -cpu arguments on windows for qemu 9 compatibility 2025-01-09 13:42:56 +01:00
Nico Weber
801d7e2ced LibGfx/JPEG2000: Add LRCP and RLCP progression iterators 2025-01-07 08:23:28 -05:00
Nico Weber
e99fe94cfb LibGfx: Add some tile math from the spec to JPEG2000Loader.cpp
Not used for anything yet, but will be used to figure out number of
codeblocks (and hence, size of tag trees) in a packet.
2025-01-07 08:23:28 -05:00
Nico Weber
1d6b0ebd18 LibGfx: Add an overview comment to JPEG2000Loader.cpp 2025-01-07 08:23:28 -05:00
butter1125
9332cb6f82 Ports/lynx: Update to version 2.9.2 2025-01-06 20:24:57 -05:00
butter1125
a830e20da1 Ports/md4c: Update to version 0.5.2 2025-01-06 20:24:30 -05:00
butter1125
d3a90980e3 Ports/nasm: Update to version 2.16.03 2025-01-06 20:24:03 -05:00
butter1125
be831f2bf1 Ports/bzip3: Update to version 1.5.1 2025-01-06 20:23:30 -05:00
butter1125
51d61a7f32 Ports/isl: Update to version 0.27 2025-01-06 20:23:03 -05:00
butter1125
96f1911ebd Ports/cpio: Update to version 2.15 2025-01-06 20:22:08 -05:00
Bastiaan van der Plaat
a24fb249ec FileManager: Add GPS location MapWidget to image properties window 2025-01-06 20:21:32 -05:00
Bastiaan van der Plaat
6fa29085e5 LibGfx: Add basic GPS exif tags parsing 2025-01-06 20:21:32 -05:00
Bastiaan van der Plaat
e0570a4060 LibMaps: Move MapWidget to new LibMaps library 2025-01-06 20:21:32 -05:00
MacDue
18cb48ae99 LibGfx: Fix title bar text clipping in Redmond Glass/Plastic
Previously, the title bar text could be painted under the buttons for
small window sizes (or long titles).
2025-01-06 20:20:19 -05:00
MacDue
fac74f51a3 ThemeEditor+LibGfx: Add WindowTheme to General section 2025-01-06 20:19:52 -05:00
MacDue
14baf6d0f0 ThemeEditor: Add TitleButtonInactiveAlpha to Inactive Window section 2025-01-06 20:19:52 -05:00
Sönke Holz
94a5e88aa8 Meta: Disable "Zoom To Fit" when using the gtk display backend
This option causes the window to not resize automatically on guest
display resolution changes.
QEMU has this option enabled by default when using virtio-gpu.
2025-01-06 01:50:28 +01:00
ddorando
fd789689aa Ports/SDL2: Sync scancode map with Kernel/API/KeyCode.h
We got out of sync in 965e1ba. Sync the names in order to fix build.
2025-01-05 01:44:46 +01:00
Ali Mohammad Pur
cbafa3ad19 LibRegex: Use the *actually* correct repeat start offset for Repeat
Fixes #2931 and various frequent crashes.

(cherry picked from commit 50733c564c3715cac570af6ee5b2907b4aa09b2a)
2025-01-02 13:35:26 -05:00
Ali Mohammad Pur
7c3331f93f LibRegex: Treat checks against nonexistent checkpoints as empty
Due to optimiser shenanigans in the tree alternative form, some
JumpNonEmpty ops might be moved before their Checkpoint instruction.
It is safe to assume the distance between the nonexistent checkpoint and
the current op is zero, so just do that.

(cherry picked from commit eee90f4aa23afd66ce6007faf4943d4ab56d4f22)
2025-01-02 13:35:26 -05:00
Ali Mohammad Pur
e998041b27 LibRegex: Pick the right target for OpCode_Repeat
Repeat's 'offset' field is a bit odd in that it is treated as a negative
offset, causing a backwards jump when positive; the optimizer didn't
correctly model this behaviour, which caused crashes and misopts when
dealing with Repeats.
This commit fixes that behaviour.

(cherry picked from commit 358378c1c073440ef830a3485e7d6cb9382e0c92)
2025-01-02 13:35:26 -05:00
Ali Mohammad Pur
f1b0371f79 LibRegex: Add some more debugging info to bytecode block ranges
These were getting difficult to differentiate, now they each get a
comment on where they came from to aid with future debugging.

(cherry picked from commit 4a8d3e35a37cf94b6d076eec7b242d6924b17757)
2025-01-02 13:35:26 -05:00
Ali Mohammad Pur
df5640785b AK: Add Vector::get(index) convenience function
This is similar to HashMap::get(key), which returns an Optional, empty
if the index is out of bounds for the vector.

(cherry picked from commit 44798f44ef1c112aa9dbee7abee7ff6a5568c4f4)
2025-01-02 13:35:26 -05:00
Ali Mohammad Pur
5fb6942726 LibRegex: Print OpCode_Repeat's offset as ssize_t
(cherry picked from commit f8092455e200f1d1ff8a452efd23bdddfd00ce0e)
2025-01-02 13:35:26 -05:00
Nico Weber
7f84a08012 AK: Remove commented-out code in fmod()
I hadn't meant to commit that. No behavior change.
2025-01-02 09:56:31 -05:00
Nico Weber
48a28cffd5 AK: Make FloatExtractor use bit_cast<>() instead of a union
The motivation is to allow functions that use FloatExtractor to be
constexpr.  Type punning through a union will never work in constexpr.

In practice, bit_cast<>()ing bit fields also does not yet work in clang,
but that's just a bug and it will work eventually (and it does already
work in gcc): https://github.com/llvm/llvm-project/issues/54018

No behavior change.
2025-01-02 09:56:31 -05:00
Sönke Holz
39a2356c54 Tests/LibC: Don't implicitly convert float to double in TestSnprintf
Most RISC-V floating-point operations only generate the canonical NaN,
so the sign bit was cleared in this test.
The sign injection instruction does keep the NaN payload and sign bit,
so doing `-v.f` to get a negative NaN works as expected.
2025-01-02 09:38:47 -05:00
Davi
e166003179 Base+Meta: Add Canadian Provincial flags 2025-01-02 08:15:38 -05:00
Eduardo HCS
e6099bea77 Meta: Add User-Agent string on request for download_file 2025-01-01 14:06:03 -05:00
roadshop
c74f659ebd LibDeviceTree: Fix a typo in comment 2024-12-31 16:56:13 +01:00
Sönke Holz
652a2f6f00 Meta: Promote RISC-V as supported in the README
RISC-V now works just as well as Arm and even passes more tests than it.

"riscv64" is not an official name for the RISC-V architecture and
just using the pretty-printed name for RISC-V looks weird, so use the
pretty name for all architectures instead.
2024-12-30 14:46:27 -05:00
Sönke Holz
7823600f7a LibC: Make rint{,f,l}() AK-backed 2024-12-30 14:46:27 -05:00
Sönke Holz
7467cf35bb AK: Implement rint() on RISC-V
The implementation is copy-pasted from LibC.
2024-12-30 14:46:27 -05:00
Sönke Holz
3bea78fc30 AK: Implement sqrt() on RISC-V 2024-12-30 14:46:27 -05:00
butter1125
5041d53f76 Ports/jdupes: Update to version 1.28.0 2024-12-30 19:31:04 +01:00
butter1125
6d0d32c62f Ports/libjodycode: Update to version 3.1.1 2024-12-30 19:31:04 +01:00
djwisdom
14903cf1c8 Ports: Update ObjFW from 1.1.2 to 1.2.2 2024-12-30 19:30:31 +01:00