<bslsk05>
stores.horiusa.com: Tactical Assault Commander F14 - Final Fantasy XIV Black Edition - HORI USA
<kof673>
snes at least in japan had a one-handed controller "for RPGs", directional pad on one side, buttons on other...."so you can use your other hand to flip through the strategy guide"
<geist>
yah that was totally the idea of the G13
<geist>
was designed for mmo stuff
<geist>
i just didn't really like the thumbstick. not enough motor control for fine enough motion
GeDaMo has joined #osdev
<kazinsal>
yeah, you really need a proper analog stick for something like that
<geist>
though i suppose you can train yourself
<kazinsal>
iirc those usually are just four microswitches with a thumbstick on top, kinda like an arcade stick
<geist>
in this case it's analog, but still i just dont have percise enough control with my thumb
<geist>
ilke those trackballs that use your thumb
<kazinsal>
ah yeah those
<kazinsal>
never could get used to 'em
<geist>
i use one of those every once in a while when my wrist is giving me problems but it's not as good as a mouse by a long shot
exit70_ has joined #osdev
exit70 has quit [Ping timeout: 256 seconds]
frkzoid has quit [Ping timeout: 268 seconds]
alexander has quit [Quit: ZNC 1.8.2+deb3.1 - https://znc.in]
alexander has joined #osdev
ThinkT510 has quit [Quit: WeeChat 4.3.3]
lentement has joined #osdev
lentement has quit [Read error: Connection reset by peer]
ThinkT510 has joined #osdev
Vercas3 has quit [Remote host closed the connection]
gbowne1 has quit [Quit: Leaving]
ThinkT510 has quit [Ping timeout: 264 seconds]
Gooberpatrol66 has quit [Ping timeout: 256 seconds]
<bslsk05>
techcommunity.microsoft.com: Surface UEFI: Evolution in boot, security & device management to build an industry leading secure PC - Microsoft Community Hub
theyneversleep has joined #osdev
X-Scale has quit [Ping timeout: 250 seconds]
X-Scale has joined #osdev
<nikolar>
is geist around
<geist>
yeah what's up
<kazinsal>
his name is a waking word
<nikolapdp>
so after running for a while, when i run ps, almost all process commands show as ()
<Reinhilde>
everyone asks where geist is and not how geist is
<nikolapdp>
does that sound familiar geist
<geist>
well it sort of is a waking word because my phone beeps
<geist>
hmm, and no that isn't familiar at all
<kazinsal>
I put irccloud on mute between 11pm and 11am for that reason
<nikolapdp>
to me it looks like some sort of corruption
<nikolapdp>
you can also see the question marks for tty
<nikolapdp>
maybe i should just run the newest patch level
<kazinsal>
time to start running through the source for ps.c
<nikolapdp>
i don't think it's ps's fault
<kazinsal>
that'll trace where the source of the () comes from
<GeDaMo>
Are those processes swapped?
<kazinsal>
I spent a few hours tonight unwinding a bunch of DOS 1.25 out of a challenge from a friend
<kazinsal>
shit is not pleasant but it gives you some insight into wacky late 70s early 80s coding practices
<nikolapdp>
GeDaMo i don't think so
<nikolapdp>
not sure how to check
<nikolapdp>
kazinsal heh indeed
X-Scale has quit [Ping timeout: 250 seconds]
Nixkernal has joined #osdev
Maja has quit [Ping timeout: 264 seconds]
Maja has joined #osdev
Vercas3 has joined #osdev
MiningMarsh has quit [Ping timeout: 255 seconds]
vai- has joined #osdev
FreeFull has quit [Ping timeout: 272 seconds]
vai- is now known as Jari--
navi has joined #osdev
X-Scale has joined #osdev
<sortie>
https://sortix.org/blog/posix-2024/ ← Here's a blog post about all the new stuff in POSIX 2024 and my status implementing it so far :D
<bslsk05>
sortix.org: POSIX 2024 Changes
<sortie>
For those of you without access to the pdf, since the free html isn't up yet, I also deep linked the austin group bugs adding the functions. (I'm yet to fully write up all of the new features & utilities though, but I do list them)
<kof673>
read the top :) if you go down you can see the "prefix search" thing, ascii lowercase letters are numerically ascending i suppose :D
<nikolapdp>
so utf-8 then?
<kof673>
no, 24-bit c char type is CHAR_BIT :D https://chameleon.synth.net runs in wine, free sdk supposedly for "anyone" even without owning one IIRC (they are long out of business) i used to have one. supports most of c89 stuff :D includes simulator lol
<bslsk05>
chameleon.synth.net <no title>
ThinkT510 has joined #osdev
<nikolapdp>
interestng
<kof673>
the cb code i linked has uint8_t and uint32_t (i think only for speed) and uses some >> 8 and & 255, so i was not sure if it would work without some changes
<kof673>
i have too many ifdefs, but the insert code i think i had to use a "portable" replacement
<nikolapdp>
heh
<kof673>
i believe whatever the 9-bit/18/36 pdp has an emulator and gcc...but would need printf() stuff and malloc() and perhaps some more. but that would be good too :D
<nikolapdp>
i think the only pdp gcc supports is 11
<bslsk05>
pubs.opengroup.org: Shell Command Language
<Ermine>
p2 machines aren't cheap these days otoh...
X-Scale has quit [Ping timeout: 250 seconds]
<Ermine>
also, i want to try to boot linux on 486 and see if systemd can be outperformed there
Left_Turn has joined #osdev
dalme has joined #osdev
X-Scale has joined #osdev
Turn_Left has quit [Ping timeout: 268 seconds]
<kof673>
do you have a 486? > The Élan™ SC520 is an old AMD 486DX4-133 SOC https://www.ebay.com/itm/234454489470 no video or keyboard :D 486/586 class CPU
foudfou has quit [Remote host closed the connection]
foudfou has joined #osdev
X-Scale has quit [Ping timeout: 250 seconds]
xenos1984 has quit [Ping timeout: 256 seconds]
xenos1984 has joined #osdev
X-Scale has joined #osdev
node1 has joined #osdev
node1 has quit [Ping timeout: 250 seconds]
node1 has joined #osdev
X-Scale has quit [Ping timeout: 250 seconds]
zetef has joined #osdev
ThinkT510 has joined #osdev
Arthuria has quit [Ping timeout: 255 seconds]
xenos1984 has quit [Ping timeout: 246 seconds]
xvmt has quit [Read error: Connection reset by peer]
xvmt_ has joined #osdev
xvmt_ is now known as xvmt
xenos1984 has joined #osdev
gog has joined #osdev
josuedhg has joined #osdev
sham1 has quit [Ping timeout: 272 seconds]
Goodbye_Vincent has quit [Quit: Ping timeout (120 seconds)]
Goodbye_Vincent has joined #osdev
netbsduser has joined #osdev
ThinkT510 has quit [Quit: WeeChat 4.3.3]
freakazoid332 has joined #osdev
MrCryo has quit [Remote host closed the connection]
node1 has quit [Quit: Client closed]
vin has quit [Quit: WeeChat 2.8]
vin has joined #osdev
goliath has quit [Quit: SIGSEGV]
<sortie>
<nikolapdp> sortie, btw, you don't need -o and -a in test, you can just use || or &&
<sortie>
Yep I know, but it is just a bit of a curve ball that suddenly the long standing feature no longer exists, invalidating lots of perfectly valid code for little reason?
<nikolar>
I think it was deprecated for a long time
<nikolar>
And underspecified
\Test_User has quit [Ping timeout: 260 seconds]
\Test_User has joined #osdev
X-Scale has joined #osdev
dude12312414 has joined #osdev
gbowne1 has joined #osdev
dude12312414 has quit [Client Quit]
goliath has joined #osdev
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
GeDaMo has quit [Quit: 0wt 0f v0w3ls.]
X-Scale has quit [Ping timeout: 250 seconds]
gdh has quit [Quit: WeeChat 4.2.1]
X-Scale has joined #osdev
heat has joined #osdev
heat_ has quit [Read error: Connection reset by peer]
theyneversleep has joined #osdev
foudfou has quit [Remote host closed the connection]
foudfou has joined #osdev
X-Scale has quit [Ping timeout: 250 seconds]
Jari-- has quit [Ping timeout: 252 seconds]
Starfoxxes has quit [Remote host closed the connection]
ThinkT510 has joined #osdev
<geist>
also re: old machines, systemd is relatively huge
<geist>
so regardless of how fast it is a) you might chew up most of the ram (or swap out by default) and b) old machines with slow disk access take longer to read all of the code and data off the disk
<geist>
and just filling i the pages it uses take measuable time
<geist>
if you're readnig say 5MB/sec off a disk and yo need to pull in 200 MB, that's 40 seconds right there just to read it
<geist>
something like systemd may need to page in a sizable amount of a few large binaries just to get to square 1
FreeFull has joined #osdev
sham1 has joined #osdev
<Ermine>
geist: despite all of this, systemd boots the system much faster. I think it's due to parallel boot so less time is wasted waiting for IO
<geist>
i guess i should read the scrollback
<geist>
it'd be fun to do gentoo on a 486, but my 486 only has 32MB ram, so that's generally the limiting factor
<geist>
not enough cpu just equates to time, but not enough ram generally means go/no-go
stolen has joined #osdev
<nikolar>
Could you get netbsd on 32mb of ram or something
<gog>
hi
<nikolar>
oi
<Ermine>
memory is something extendable... if you can find memory of the type used on such machines. It's not ddr5, that's for sure
<zid>
memory capacity being larger than installed memory is typical and normal
<zid>
but even then, the limit is often very low
<zid>
gotta love having two dimm slots and the higher capacity version of the dimm being 10x the price
<zid>
or the cpu just flat out not being able to address more than n bits
<zid>
physical
Arthuria has joined #osdev
jistr has quit [Remote host closed the connection]
netbsduser has quit [Ping timeout: 256 seconds]
jistr has joined #osdev
Nixkernal has quit [Ping timeout: 246 seconds]
pdziepak has quit [Ping timeout: 268 seconds]
pdziepak has joined #osdev
<sortie>
geist: Sortix init that's based on the same principles but small and clean -- it boots in 270 ms.
<Ermine>
sortie: on 486?
<sortie>
It does help that I very intentionally do not have any daemon dependencies of the login screen so it can be spawned immediately once the root filesystem is mounted
<sortie>
Ermine: On my laptop
<sortie>
But still orders of magnitudes faster than systemd on my Linux install on the same laptop
<sortie>
It seems like systemd is waiting for a whole ton of stuff before even spawning the login
<Ermine>
it's okay, since you don't want login prompt to be mixed with boot process output
<sortie>
I don't care about the boot process output
<sortie>
I wanna use my laptop
<sortie>
Sortix init stops talking to tty1 once any daemon takes control of it
<sortie>
If I wanna see the verbose stuff, I can run journalctl or dmesg on systemd
Jari-- has joined #osdev
Jari-- has quit [Ping timeout: 268 seconds]
<heat>
sortie, systemd is slow because it has a lot of crap to do
<heat>
booting a sortix (or onyx) system and linux really isn't comparable
<nikolapdp>
i mean linux doesn't need a lot to be fully booted
<zid>
Fourteen megs of acpi tables is the lower limit
<heat>
minimally? you could skip all services if you wanted to
<heat>
but just in my system i have: man-db, networkmanager, docker, thermald, ldconfig, dev-sda5, containerd, bluetooth, polkit, udisks, systemd-resolved
<heat>
and hopefully you get what i'm trying to say
<Ermine>
sortie: i want to know what went wrong during boot so I want boot output process
<heat>
oh i don't have output on
<heat>
journalctl!!
<Ermine>
heat: go to amd and you suddenly don't need thermald anymore
<nikolapdp>
i do but i think my minimal boot was a bunch of ttys, connman, udevd, dbus, dhcpcd
<Ermine>
yeah, I'll open journalctl when I figure out that cups is down for some reason and printer doesn't work, but I usually don't have time to debug stuff in such circumstances
<nikolapdp>
basically
<heat>
i don't strictly need thermald anyway, i think
<heat>
but it should be OPTIMALer
<nikolapdp>
(it does a bunch of other things during boot, but those are the services that are running)
<zid>
I too like a big stream of red lights turning green
<Ermine>
Oh, I don't have thermald, I need to set it up
<Ermine>
Feels like one of those things that better should be here
<Ermine>
though idk what it even does
<zid>
There should be a huge bank of red and green LEDs on the outside of PC cases
<heat>
thermald often has workarounds for buggy hw, and more OPTIMAL thermal management than if you leave the kernel to do it by itself
<nikolapdp>
yeah i am on amd and never had issues
<zid>
boot process should turn on all the red ones, and flip them green as it boots
<heat>
thermald is an intel thing
<Ermine>
thermald doesn't support amd
<nikolapdp>
i know, i am just saying that i've never had thermal issues
<zid>
I've never done anything except 100% fan all of the time
<zid>
and let the machine turn itself off on thermal alarm
<heat>
i want to admit i kind of want to port openrc to onyx
<zid>
modern chips manage themselves via turbo now so whatever
<nikolapdp>
do it heat
<Ermine>
want me to port s6(-rc) ? :D
Turn_Left has quit [Read error: Connection reset by peer]
<nikolapdp>
lol sure
<nikolapdp>
heat will have total init freedom :P
<nikolapdp>
sorry, onyx
<Ermine>
init freedom is a pipe dream btw
<heat>
i'll attract all the weirdos and they'll have fun discussing what the best init system for onyx is
<Ermine>
usual stuff on #osdev
<heat>
i have a dream where my init system is a bunch of init systems glued together
<heat>
ultimately we invoke the WINDOWS SERVICE MANAGER
<nikolapdp>
also good luck porting systemd LOL
<heat>
wdym it's been done before
<Ermine>
we larp linux, so ezpz
<nikolapdp>
ah yeah forgot that deatil
<heat>
oh gosh we larp linux but not that hard
<Ermine>
btw windows drivers are services too apparently
<heat>
problem with systemd is that a lot of funny features are essentially super advanced
<heat>
seccomp is the least bad one, but then you have stuff like cgroups and memcg and all that jazz
<Ermine>
i'd say we need cgroups for starters
<heat>
PR_SET_REAPER or whatever that prctl is
<heat>
oh my god the linux man-pages broke all the big ones down
<heat>
ew :(
<nikolar>
are you telling me that seccomp is easy??
<heat>
yes
<Ermine>
seccomp uses bpf, no?
<heat>
i wrote a bpf interpreter in like 2 days, then added a JITter for x86
<heat>
yes, but cBPF and not eBPF
<nikolapdp>
yes, the interpreter is easy
<nikolapdp>
what about everything else
<Ermine>
geniusen
<heat>
what everything else? seccomp is just applied bpf on syscall entry
<nikolapdp>
is that it??
<heat>
yes
<nikolapdp>
huh
<heat>
seccomp is actually Not The Worst
goliath has quit [Quit: SIGSEGV]
<heat>
it entirely predates the eBPF craze and i'm fairly sure there's still no eBPF support for seccomp
<Ermine>
I think cgroups is the hardest thing here
<gog>
hi
<nikolapdp>
hello gog
<heat>
yeah fuck cgroups
* Ermine
gives gog a piece of cheese
<nikolapdp>
cgroups doesn't sound That Bad to be honest
<Ermine>
it's a lot of stuff
* gog
fascinated
<heat>
i don't know how the actual complexity would go, but i do know a lot of linux code paths have special or way more complex logic cuz of various cgroup stuff (usually memcg in mm/)
<nikolapdp>
i can't remember if cgroups2 was just the userspace api change
<nikolapdp>
or it actually changed stuff on the kernel stuff
divine has quit [Ping timeout: 246 seconds]
<heat>
changed kernel stuff apparently
<nikolapdp>
i completely butchered that sentence
<nikolapdp>
did it simplify
<heat>
idk
<nikolapdp>
guess not because cgroups is still available
<heat>
yo i really really really really hate what they did with man-pages
<nikolapdp>
what did they do
<mjg>
you fuckarz
<mjg>
how you doin
<heat>
e.g: you used to have a single large proc(5) man page, now you have a small proc(5), and a shit ton of small dedicated pagen like proc_pid_mem(5)
<dostoyevsky2>
what are the main obstacles for porting systemd to a new OS?
<heat>
completely scattered all over
<mjg>
dostoyevsky2: lenny poettering
<zid>
implementing all of the linux apis it calls
<zid>
is the exclusive one
<heat>
i'm doing fine how are you mjg
<mjg>
oh
<mjg>
i regret asking
<zid>
nikolapdp: Is it monday yet?
<gog>
mjg: i have ice cream
<Ermine>
nikolapdp: there's an article which, besides systemd stuff, illuminates all complexities of cgroups impl: https://lwn.net/Articles/557082/
<bslsk05>
lwn.net: When the kernel ABI has to change [LWN.net]
<heat>
what's your favourite lwn article
<Ermine>
my? Idk, i don't read lwn that much
<mjg>
gog: ooh
<mjg>
gog: i have not had ice cream in like 8 years
<Ermine>
All I can say is that lwn > phoronix
<dostoyevsky2>
you learn much more from reading systemd source code than from lwn imho
<mjg>
#truestory
<gog>
are you a lactophobe
<mjg>
no
<gog>
cancelled
<zid>
I am illiterate so I don't read lwn either
<mjg>
it just happened this way
<gog>
oh
<gog>
i think i've gone maybe a year without having ice cream
<gog>
in the past
<mjg>
:-O
<heat>
nobody's born a lactophobe
<heat>
it's a choice
<Ermine>
"lactophobia is not a matter of chance, but a matter of choice"
<Ermine>
btw, for some functions namespaces would be required
divine has joined #osdev
<gog>
what's a clean way to pass structured data through an exec()-family call
<gog>
file?
<mjg>
what data
<mjg>
or rather, how much
<zid>
pack it into your env ofc
<gog>
maybe a page-worth
<mjg>
oof
<mjg>
ye get a fd
<gog>
k
<zid>
you could fork + execve, fd to your child
<zid>
pump it full of drugs
<zid>
then kill yourself
<Ermine>
mmap MAP_SHARED or something?
<mjg>
mmap will not survive exec
stolen has quit [Quit: Connection closed for inactivity]
<Ermine>
oic
<gog>
i was thinking maybe be tricksy with argv but ehhh
<gog>
i don't like it
<mjg>
base64-encode it and create an array of env vars!
<mjg>
chunk1=
<zid>
gog: What about pump it full of drugs and kill yourself
<mjg>
chunk2=
<gog>
that's a webdev solution
<gog>
i love it
<mjg>
ye no need to thank me
<gog>
zid why are you encouraging me to pump myself full of drugs and unalive
<mjg>
for maximum webdev make chunks 1 byte in size
<zid>
so that your program works
<gog>
hmmmy es
<gog>
i am the largest obstacle in this equation
<zid>
it's very POSIX though
<zid>
the file will be 10x easier
<zid>
if you don't mind the races and stuff
<gog>
there's only one thread for the moment
<zid>
I can't run more than one of it?
<gog>
no
<zid>
even accidentally? shame
<gog>
or rather, the operating environment in the time that this is happening will not have more than one thread
<gog>
but it could in future
<gog>
so
<gog>
idk
<zid>
although you could fork + exec, write the file with the pid of the child, and the child just opens a filename of sprintf(buf, "%s", getpid());
<zid>
%d*
<mjg>
w is for webdev
<zid>
it's not foolproof but it's robust /enough/ imo
<zid>
might leave lots of shitty files around though
<zid>
files suck
<zid>
I think fork + exec + dup2 harness is going to be the least sucky, but the most code
<gog>
i don't have dup2 yet
<zid>
a | b
<zid>
would make it much much easier
<zid>
rather than a exec'ving b
<gog>
web dev
<gog>
if this was web dev i'd just spin up a microservice and make a CRUD REST
<zid>
write a daemon
<zid>
that responds to "GET / HTTP/1.1\r\n\r\n" as a password
<gog>
i like that
<mjg>
genuine question, for people who do anything kernel
<mjg>
why are you fucking with a custom kernel instead of contributing to linux
<Ermine>
i have way too smol brain to contribute to linux in a meaningful way
<mjg>
it does not take much
<mjg>
:p
<Ermine>
you can figure out the size of my brain from that :D
<Ermine>
Also, graphics are hard
<Ermine>
so is wifi
<mjg>
why go there
<mjg>
anything drivers is best avoided
<mjg>
you are bound to break something for a shite laptop somewhere
<mjg>
leave the breakage to vendors
<Ermine>
at least I could fix stuff for my laptop or pc
<Ermine>
especially when vendors don't care
levitating has joined #osdev
<Ermine>
also, one nouveau dev made it into nvidia
<mjg>
:O
<mjg>
there was a guy doing atheros drivers for freebsd
<mjg>
who also worked for atheros and could not use NDA'ed knowledge to do it
<mjg>
i don't know how that worked :d
goliath has joined #osdev
<Ermine>
O_o
<levitating>
o_O
<mjg>
wow.. between linux v6.9 released on may 12 and linux-next as of today there are 2378 differnet authors