Commit Graph

609 Commits

Author SHA1 Message Date
K. Lange
bb1c30d1ef libc: stub tgamma for kuroko 2022-09-04 19:23:12 +09:00
K. Lange
bbd609086a libc: make pthread_t scalar
While POSIX.1-2001 says that pthread_t is allowed to be
"non-arithmetic", earlier revisions did not allow it, and
many things still assume the original rule and either
complain loudly or fail completely if pthread_t is a struct.

In glibc, pthread_t is typedef'd to 'unsigned long int', but
in musl, it is a pointer type to an opaque struct. We'll go
with the latter option here.

Note that while this breaks ABI combatibility for the libc,
nothing in the x86-64 or aarch64 package repositories uses
pthreads, so this probably doesn't matter too much. If you
are one of the handful of souls brave enough to be maintaining
your own downstream software for ToaruOS and you use pthreads,
it's time to rebuild.

This is an initial change that will be followed up with more
thorough internal changes to our pthreads implementation.
2022-08-27 15:53:37 +09:00
K. Lange
5651875d4b libc: qsort_r 2022-08-26 05:32:00 +09:00
K. Lange
af69cd6369 text: Allow x-adjusted glyph rendering, for better kerning in caches 2022-08-22 13:36:30 +09:00
K. Lange
5f56820331 markup_text: Implement a glyph cache and expose a more detailed API 2022-08-22 12:29:34 +09:00
K. Lange
d7f73b3970 text: Add methods for rasterizing single glyphs 2022-08-22 12:28:39 +09:00
K. Lange
15a586a38e meta: uh, where did that come from 2022-08-21 18:51:30 +09:00
K. Lange
908dbb0553 libc: strsignal 2022-08-18 19:20:56 +09:00
K. Lange
745bc29a26 kernel: rudimentary sigwait 2022-08-18 16:56:43 +09:00
K. Lange
37bd4e08cb kernel: add sigsuspend 2022-08-18 15:09:23 +09:00
K. Lange
77651130e6 bim: Update syntax definitions 2022-08-17 19:30:45 +09:00
K. Lange
083ab387f3 kernel: more signal functions 2022-08-06 18:19:27 +09:00
K. Lange
2906476825 kernel: Add sigaction 2022-08-06 18:03:39 +09:00
K. Lange
eed45cbba9 i965: cleanup, clear screen on initial mode set 2022-07-25 09:51:04 +09:00
K. Lange
f4473b6617 bim: lua highlighter 2022-07-25 09:50:44 +09:00
K. Lange
264d11a618 compositor: blur-behind windows 2022-07-22 19:01:23 +09:00
K. Lange
54a1bcc5ff bim: sync upstream 2022-07-14 07:36:28 +09:00
K. Lange
f0d4c5b4bb bim: Sync 2022-05-31 08:12:07 +09:00
K. Lange
2639c786da procfs: fill on open for consistent reads 2022-04-17 22:23:14 -04:00
K. Lange
6ceb9392cd tty: fix permanently set EOF status on tty 2022-03-22 14:10:30 +09:00
K. Lange
49fd67bf2d kernel: relocate some user virtual addresses 2022-03-06 15:58:08 +09:00
K. Lange
6ff1bc5195 kernel: clear signal disposition when running a handler, as we should 2022-03-04 22:03:21 +09:00
K. Lange
63fbbec928 kernel: Don't let things clear frames without holding the frame alloc lock 2022-03-04 22:00:37 +09:00
K. Lange
3852646174 kernel: Restart some signals, fix up suspend to work with new signal management 2022-03-04 18:39:38 +09:00
K. Lange
bbebc7c128 kernel: complete redesign of signal handling 2022-03-04 16:12:16 +09:00
K. Lange
9a15b6df4f compositor: Implement semi-lazy window resizing 2022-03-03 19:39:19 +09:00
K. Lange
b3f6728339 date: add rudimentary support for setting date/time 2022-02-25 21:16:30 +09:00
K. Lange
5a6648a869 rpi400: try to clean up rpi stuff 2022-02-23 09:49:16 +09:00
K. Lange
6c69d235cf aarch64: implement a better spinlock 2022-02-22 09:53:55 +09:00
K. Lange
255b2296fd aarch64: implement panic halting with sgis 2022-02-20 18:11:24 +09:00
K. Lange
f6d0206059 aarch64: interrupt mapping improvements, chained interrupt handlers 2022-02-12 13:47:21 +09:00
K. Lange
b95f27dc60 aarch64: Add a tty driver for the pl011 uart 2022-02-11 11:55:36 +09:00
K. Lange
85274e61ad aarch64: cleanup 2022-02-11 11:54:28 +09:00
K. Lange
ff42fea697 base: Update os-release for 2.1 2022-02-03 08:46:26 +09:00
K. Lange
3368796328 aarch64: retrieve MIDR per-core 2022-02-03 08:27:33 +09:00
K. Lange
afab2320bf aarch64: SMP 2022-02-03 00:08:47 +09:00
K. Lange
18a4e78336 aarch64: More cleanup 2022-02-02 12:08:44 +09:00
K. Lange
e8d78f00fc aarch64: reorganize 2022-02-01 13:27:49 +09:00
K. Lange
bf40d8f289 aarch64: some memory size management 2022-02-01 06:54:59 +09:00
K. Lange
78196ef5b6 ptrace: mmu user read/write macros 2022-01-30 21:32:33 +09:00
K. Lange
b53a56fe72 aarch64: begin work on new target 2022-01-30 21:25:27 +09:00
K. Lange
145478b595 panel: Restore Alt-F1 and Alt-F3 key binds 2021-12-08 15:35:20 +09:00
K. Lange
2f59fa9336 libc: More bad (and a couple good) math functions 2021-12-07 16:24:07 +09:00
K. Lange
0d9dbb80fc base: Prepare for 2.0.0 2021-12-06 11:32:23 +09:00
K. Lange
f551b092d3 base: Slightly less useless help files 2021-12-06 11:18:01 +09:00
K. Lange
05a60ad8dc base: Cleanup local's rc files 2021-12-06 10:56:53 +09:00
K. Lange
a044b187b8 gsudo: Icon for panel, fixup overflowing password box 2021-12-05 15:16:39 +09:00
K. Lange
0c6f58277c v1.99.10 2021-12-01 21:32:59 +09:00
K. Lange
18174e46de kernel: Implement basic copy-on-write for fork() 2021-11-30 22:26:45 +09:00
K. Lange
2b85c67661 menu: Better tail alignment for bubble windows 2021-11-29 15:58:53 +09:00
K. Lange
7b2c8397b6 panel: Apply smarter alignment to popup menus 2021-11-29 14:32:29 +09:00
K. Lange
4f7ef46f40 panel: First pass at modularization 2021-11-28 18:28:57 +09:00
K. Lange
c7429e9055 meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
K. Lange
045431b2de kernel: prevent modules from being loaded multiple times 2021-11-18 19:47:28 +09:00
K. Lange
d90d6e1963 kernel: Add simple mutex with a wait queue 2021-11-17 19:13:33 +09:00
K. Lange
d8b1628732 bim: sync with upstream 2021-11-17 11:22:27 +09:00
K. Lange
f3759daadf ioctl: request should be 'unsigned long' 2021-11-15 21:51:33 +09:00
K. Lange
8994db92f3 sync: temporary thing for testing; not a proper sync 2021-11-14 16:04:54 +09:00
K. Lange
c099225b15 panel: Add notifications when a network connects/disconnects 2021-11-12 17:10:03 +09:00
K. Lange
4f258800d9 panel: Little improvements to weather widget 2021-11-11 21:28:27 +09:00
K. Lange
697200013a v1.99.9 2021-11-09 13:28:16 +09:00
K. Lange
6c1acb1290 compositor: Add another layer above overlays for menus so they show in front of toasts 2021-11-05 09:58:33 +09:00
K. Lange
43b6bd32e3 kernel: exclude serial ports from pts numbering; start numbering at 1 2021-11-04 19:17:21 +09:00
K. Lange
739d3972f4 compositor: Restructure 'advertise' messages to provide window buffer, size 2021-10-31 22:25:00 +09:00
K. Lange
5674e34608 compositor: Add a new OVERLAY layer, specifically for toasts 2021-10-31 20:16:41 +09:00
K. Lange
5dc972d5f4 base: Don't wait for msk on boot 2021-10-31 14:12:47 +09:00
K. Lange
9352c31487 toastd: Adjust spacing, try to vertically center text 2021-10-29 09:45:55 +09:00
K. Lange
ac262d954a base: Show some toasts on startup. 2021-10-28 19:40:04 +09:00
K. Lange
9acb4e1594 msk: Use 192.168.11.* for local repo as it bails faster in vmware 2021-10-28 06:18:57 +09:00
K. Lange
6f92d789a0 msk: Fixup support for multiple remotes, add a few options 2021-10-28 06:15:51 +09:00
K. Lange
9fc21a03e2 base: Wait a bit before starting the wizard 2021-10-26 16:14:57 +09:00
K. Lange
49342b7996 net: try to actually track received packet sizes... 2021-10-25 18:27:08 +09:00
K. Lange
4a9cad3363 msk: Switch package source to CDN 2021-10-25 17:09:32 +09:00
K. Lange
4d390e9b97 compositor: Hack to support 24bpp framebuffers 2021-10-25 13:50:59 +09:00
K. Lange
729b0c231f panel: New volume slider menu widget 2021-10-24 21:20:25 +09:00
K. Lange
f300386d13 net: initial loopback interface support 2021-10-22 15:36:03 +09:00
K. Lange
3decb96169 v1.99.8 2021-10-21 11:18:42 +09:00
K. Lange
0f2d7334b0 fbterm: VGA backend, enable scrolling by default 2021-10-20 18:49:07 +09:00
K. Lange
76191f89fb kernel: Print tracebacks for more fatal errors 2021-10-20 10:33:58 +09:00
K. Lange
c366ea2dfd kernel: Initial pass at new debug printf interface 2021-10-19 20:29:14 +09:00
K. Lange
6ed0e72278 base: Print message when loading drivers on startup 2021-10-18 20:30:14 +09:00
K. Lange
2adb603e7a base: Update README.md 2021-10-18 20:29:59 +09:00
K. Lange
a8c89422a7 base: Load the piix4 remapper if we see the ISA bridge; fixes OVFM under qemu without -M q35 2021-10-13 21:28:53 +09:00
K. Lange
a8ca76845c smp: Don't just fatal() if there's too many cores; initialize up to 32 2021-10-12 20:04:38 +09:00
K. Lange
831a0c97ab base: update package repository on startup 2021-10-12 10:54:42 +09:00
K. Lange
538cc9319e es1371: Audio driver for vmware 2021-10-10 15:13:29 +09:00
K. Lange
3d79b85f2c base: Accept QEMU IDE controller for ata driver autoload 2021-10-08 10:22:59 +09:00
K. Lange
9ad23299c7 file-browser: Icons, identification of PDFs, little launcher wrapper 2021-10-08 10:22:33 +09:00
K. Lange
46c59e8786 base: Load iso9660 and add a desktop icon when mounting CD at boot 2021-10-07 20:22:10 +09:00
K. Lange
8d9c13c047 base: Load ATA drivers on vbox if IDE is detected 2021-10-07 20:21:41 +09:00
K. Lange
5c5b0952d0 base: Only show tutorial once on first graphical login for 'local' 2021-10-07 17:33:01 +09:00
K. Lange
e8a1ffab46 libm: Add missing M_, INFINITY, NAN constants 2021-10-07 07:24:39 +09:00
K. Lange
44eefc2e43 libm: Add two missing functions 2021-10-07 07:20:50 +09:00
K. Lange
65ad24537f cpuwidget: Add to menu as 'System Monitor' 2021-10-05 09:45:16 +09:00
K. Lange
05e224dee7 kernel: Better fault reports 2021-10-04 20:34:42 +09:00
K. Lange
b87381116b graphics: fixup aa line rasterizer 2021-10-04 15:04:34 +09:00
K. Lange
4ef5ee0416 net: Add stats counters 2021-09-30 19:09:04 +09:00
K. Lange
1f0d982240 kernel: Initial try at actual user buffer validation 2021-09-29 14:07:32 +09:00
K. Lange
11ce99bfc6 bim: Update gas highlighter 2021-09-29 10:12:59 +09:00
K. Lange
1e49a124f7 tutorial: Add a page about the live CD 2021-09-28 11:03:20 +09:00