klange changed the topic of #osdev to: Operating System Development || Don't ask to ask---just ask! || For 3+ LoC, use a pastebin (for example https://gist.github.com/) || Stats + Old logs: http://osdev-logs.qzx.com New Logs: https://libera.irclog.whitequark.org/osdev || Visit https://wiki.osdev.org and https://forum.osdev.org || Books: https://wiki.osdev.org/Books
vdamewood has joined #osdev
Arthuria has joined #osdev
Dead_Bush_Sanpai has quit [Ping timeout: 248 seconds]
X-Scale24 has quit [Quit: Client closed]
Dead_Bush_Sanpai has joined #osdev
gog has quit [Ping timeout: 252 seconds]
mavhq has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
mavhq has joined #osdev
stefanct__ has joined #osdev
heat has quit [Read error: Connection reset by peer]
heat has joined #osdev
stefanct has quit [Ping timeout: 252 seconds]
stefanct__ is now known as stefanct
heat has quit [Ping timeout: 260 seconds]
<kazinsal> horrible idea: cisc-v
vdamewood has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
orccoin has joined #osdev
vdamewood has joined #osdev
<kof673> well qemu-7.2.4 was the magic version that is new enough to have riscv64 userland emulation, old enough to build on an ancient kernel/etc. just had to comment out gcc 7.5.0+ requirement lol so, scc riscv64 also "works" i guess :/
<kof673> # cc2 is a lie, but there is no riscv64 cc2, so...qbe is qbe i guess :) # ../libexec/scc/cc1 -I../include hello.c | ../libexec/scc/cc2-qbe_arm64-sysv | ../libexec/scc/qbe -t rv64 > h.s ; riscv64-as hello.s -o h.o ; scc -m riscv64 h.o -o h
craigo has joined #osdev
Gooberpatrol_66 has joined #osdev
Gooberpatrol66 has quit [Read error: Connection reset by peer]
Arthuria has quit [Ping timeout: 276 seconds]
goliath has joined #osdev
xenos1984 has quit [Quit: Leaving.]
EineNdamen has joined #osdev
Matt|home has joined #osdev
EineNdamen has quit [Read error: Connection reset by peer]
EineNdamen has joined #osdev
EineNdamen has quit [Read error: Connection reset by peer]
EineNdamen has joined #osdev
EineNdamen has quit [Read error: Connection reset by peer]
GeDaMo has joined #osdev
jedesa has quit [Remote host closed the connection]
goliath has quit [Quit: SIGSEGV]
the_oz has quit [Ping timeout: 276 seconds]
the_oz has joined #osdev
obrien has joined #osdev
<isabella> what systems other than linux have an interface similar to io_uring?
<geist> hmm, that's a good question
<kazinsal> NT does
<isabella> what's it called in there?
<kazinsal> ioringapi.h on windows declares IoRing on 21H2 and newer
<the_oz> what is it, a ringbuffer?
<kazinsal> asynchronous I/O call system
<the_oz> golang has had that
<the_oz> not an os but same same
<the_oz> is a system
EineNdamen has joined #osdev
X-Scale has joined #osdev
EineNdamen has quit [Read error: Connection reset by peer]
<the_oz> I have an old ringbuffer implementation, but no promises on it's performance
<the_oz> it's also not standalone
<the_oz> but it's there you want something
X-Scale has quit [Ping timeout: 256 seconds]
EineNdamen has joined #osdev
foudfou_ has joined #osdev
foudfou has quit [Ping timeout: 260 seconds]
EineNdamen has quit [Read error: Connection reset by peer]
obrien has quit [Ping timeout: 276 seconds]
spare has joined #osdev
gog has joined #osdev
kfv has joined #osdev
EineNdamen has joined #osdev
EineNdamen has quit [Read error: Connection reset by peer]
jedesa has joined #osdev
Gooberpatrol_66 has quit [Remote host closed the connection]
bauen1 has quit [Quit: leaving]
<immibis> today i played an audio CD and it's impressive how the system is basically buffer-less. You don't get systems like that these days.
bauen1 has joined #osdev
bauen1 has quit [Ping timeout: 246 seconds]
muxelplexer has joined #osdev
bauen1 has joined #osdev
X-Scale has joined #osdev
heat has joined #osdev
edr has joined #osdev
kfv has quit [Ping timeout: 245 seconds]
kfv has joined #osdev
kfv has quit [Remote host closed the connection]
X-Scale has quit [Ping timeout: 256 seconds]
<Ermine> TIL intel lpmd. And they use xml for configuration, in the fucking 2024
kfv has joined #osdev
<nikolar> lpmd?
<Ermine> low power mode daemon
<heat> gotta love libexpat
<heat> or the poor man's version, libimmigrant
<heat> fwiw json isn't a great config format either
<zid`> libini
<zid`> the only useful format
<the_oz> I always liked ini
kfv_ has joined #osdev
<the_oz> really simple. yaml is preoccupied with how much craziness you can stuff into it and but why
<the_oz> json is not a fucking config format and fuck you for mentioning it to me scum
<the_oz> xml is javabrained
kfv has quit [Ping timeout: 252 seconds]
<heat> based and javapilled
kfv_ has quit [Remote host closed the connection]
kfv has joined #osdev
hwpplayer1 has joined #osdev
<Ermine> yaml is cringe, I agree
<zid`> json has one specific, niche, use, and everything else should be ini
<Ermine> "one parameter = one file" is the most based format
<Ermine> ini is okay innit
mavhq has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
<zid`> Thankfully, the json infection is rather slow, so almost all of the files on my linux machine are still ini files
<nikolar> json sucks indeed
<nikolar> it was never meant to be a config format
<zid`> It's not even that it sucks, it just.. is wholly inapproprite 99% of the time it's used
<zid`> it's *specifically* something that javascript can eval() to import data
<zid`> It's insecure and *only* for that, if you're not using it that way, you're doing it wrong
<Ermine> javascript has a separate parser for json
<zid`> some engines do yes, but it's actually just one giant javascript-syntax declaration
<zid`> that you can eval it
<zid`> so that*
<nikolar> and who in their right mind doesn't allow trailing commas
<zid`> because people used it wrong, in an insecure manner
<zid`> C? :P
<Ermine> c allows that
<Ermine> it definitely works in structure initializers
<nikolar> c does allow trailing commas
<zid`> not always
<nikolar> when does it not
<zid`> but yea, {0,} is valid
<Ermine> don't forget that C doesn't mean Consistency here
<zid`> nikolar: lots of places! Almost every place infact!
<the_oz> nikolar, that's been a gripe with me, because when copypasta-ing lines I see no reason to not
<zid`> The only place it is allowed is the one place I mentioned
<nikolar> initializers, yeah
<nikolar> where else would you need a trailing comma
<zid`> compound initializers
<zid`> need? we didn't m ention need, fucking greedy bastard
<zid`> you never *need* trailing commas, it's a bug you do from generating source lines lazily
<the_oz> ^
<nikolar> you can have trailing commas in compound initializers
<zid`> yes, that's what I said
<zid`> twice
<nikolar> where can't you have trailing commas but you'd want to
<zid`> you can't have them in initializers, like you said
<Ermine> Anyway
<zid`> int a, b, c,; a = 4,; int a = 4,; f(a,b,);
* Ermine lol's a billion times
<nikolar> ok never mind
<zid`> declarator list: bad, expression: bad, initializer: bad, parameter list: bad
<zid`> compound initializer: okay
<the_oz> enum multilined?
mavhq has joined #osdev
<heat> <Ermine> "one parameter = one file" is the most based format
<heat> have you heard of sysfs?
<heat> you'll fucking lose it
<Ermine> heat: did you bait me to google libimmigrant?
<zid`> DID WE STUTTER?
<zid`> one file = one value is BASED
<zid`> ergo, sysfs is based, pay attention
<nikolar> ^^^
<heat> uhh no it was a joke
<heat> expat -> immigrant
<Ermine> I've googled it and it gave me some libertarian twitter account
<Ermine> and an unrelated ruby gem
<heat> yeah that guy looks fucking cooked
<kof673> > gotta love libexpat or the poor man's version, libimmigrant fwiw json isn't a great config format either immigrant: an unenlightened person who thinks one country better than another </devil's dictionary> finally, it makes sense now!
<kof673> 89 i believe does not allow trailing commas (although implementations might still)
<kof673> *c89
<kof673> generally something like that i have a NULL or similar zeroed-out entry at the end of a "table" anyhow
<heat> trailing commas are allowed in initializers
<heat> but it's not the comma operator in that case
Left_Turn has joined #osdev
<kof673> IIRC emmigrant ~= leave immi == enter expat believe is similar ~= leave, or "patriate" enter
<zid`> *compound initializers*
<zid`> fuck sake
<zid`> going around in circles here
<nikolar> ?
<zid`> [14:31] <heat> trailing commas are allowed in initializers
<zid`> we've literally had this exact "no you mean compound initializers" talk, 10 minutes ago, in this exact channel
<zid`> you were in it nikolar
<heat> sorry, scrolling up is lame
<kof673> nikolar: that gcc builds and works (outputs asm, and looks like it includes a bare metal crt too and sample program elsewhere), but needs a tops-20 machine to assemble and link http://panda.trailing-edge.com http://pdp10.nocrew.org/gcc/download/ http://pdp10.nocrew.org/netbsd/build-gcc.txt > requires a TOPS-20 cohost to run MACRO and LINK [...] by running shell scripts that FTP the files back and forth
<bslsk05> ​panda.trailing-edge.com <no title>
<bslsk05> ​pdp10.nocrew.org: Index of /gcc/download/
<kof673> so...let me know when you get it working :)
<nikolar> pdp10 gcc?
<kof673> yes, it is like 3.2. should be easy to build that 1/2 of it
<nikolar> Kek
<nikolar> I'll let you know when I get a pdp10
X-Scale has joined #osdev
xenos1984 has joined #osdev
<heat> yesterday i found out terminal box drawing is super quaint
<heat> it involves magic sequences to switch charsets + shift-in/out ascii characters
<heat> this is also exciting: github actions now supports nested virt
<nikolar> terminal box drawing?
<nikolar> can't you just use the unicode chars for that
<zid`> not in a terminal terminal
<heat> you kinda can, but old ass code is old
<zid`> CP437 has some box drawing chars
<Ermine> heat: how did ci work before nested virt?
<heat> Ermine, what ci?
<zid`> don't pass -kvm to qemu
<zid`> and it works as normal
<zid`> but now you can
<Ermine> heat: onyx ci
<heat> yeah that. but i stopped running tests in CI because it was too damn slow (and tcg sometimes made tests flaky)
<zid`> nikolar: CP437 is the one true charset btw, and we should all use that as the base for utf-8 instead imo
<nikolar> as the base for utf8?
<zid`> heat: now it will be flaky in other ways, because the cpu running your code will change
kfv has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<zid`> rather than latin-1 or whatever we actually use
<nikolar> oh you mean the lowest 256 chars
<heat> no it won't
<nikolar> zid`: that's a unicode thing not utf-8
<zid`> I don't care
<heat> github actions CI runs on well defined azure machines
<heat> they won't surprise you with a pentium 4
<heat> (best kind of surprise?)
<zid`> and a ryzen 5 in a fewmonths
<Ermine> intel atom!
<nikolar> i386 obviously
<nikolar> sx
<heat> anyway basically what happens when doing box drawing is that you switch out charsets and a bunch of alphabetic characters start printing box gibberish instead
<zid`> then an intel platinum xeon because of a rollout test after intel gave them away super cheap cus they suck now
<heat> if the terminal doesn't support this you'll see some "qqqqqqqqqqqqqqqqqqqqqqq" and other weird shit
<zid`> I wonder how much code would break if I moved \n, so that I could use cp437
<zid`> something tells me software REALLY isn't going to enjoy it being 3 bytes long
mavhq has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
<nikolar> yeah everything will break, don't worry
<zid`> There might be some surprising things that stay working though
<zid`> like, opengl maybe? :P
<nikolar> kek
<heat> Ermine, https://i.imgur.com/sjxrHFp.png vim looks a lot better than the last time you tried it out :P
<bslsk05> ​i.imgur.com <no title>
<zid`> probably not
<nikolar> heat: looks normal
<zid`> cus of compiling shaders
<nikolar> how about `:set nu`?
<nikolar> zid`: lol yeah
<nikolar> what piece of software doesn't parse text
<nikolar> that's probably going to be mostly fine
<zid`> does it exist
<zid`> maybe a couple of libx
<zid`> that handles a binary format only
<zid`> libpng?
<heat> nikolar, yeah it looks "normal" but it used to look horrid cuz i was horrendously naive in my color scheme. what about :set nu?
<zid`> That might work
<Ermine> heat: nice
<nikolar> heat: lol do the line numbers work
<heat> yea
<nikolar> zid`: yeah
<heat> it turns if you do shit like BLUE MEANS BLUE (RGB 0 0 255) it's just horrid
<nikolar> just take the colours from wikipedia or something
<nikolar> i did that and it looked mostly fine
<zid`> I have that issue with nethack
<zid`> I always have to move blue to like, a more purply cyany shade
<zid`> in every term emulator
<nikolar> kek
<zid`> putty uses 0,0,187 and 85,85,255 for blue and bold blue
<zid`> 0,0,187 is basically fucking black
<zid`> eyes vs blue, blue wins, eyes lose
<heat> yeah i used wikipedia's vscode terminal colors + windows 10 console colors, they mostly looked nice
<zid`> actually 85,85,255 might be something I changed even
<zid`> to make it tolerable
<heat> i didn't stand for vscode's green means cyan though
<heat> i have principles.
<bslsk05> ​ismy.blue: Is My Blue Your Blue?
<zid`> My blue is way greener than most people's :D
<Ermine> BLUE MEANS BLUE is horrid indeed
<zid`> anglosphere needs a couple more words they teach children
<zid`> for greeny bluey colours
<Ermine> but the whole colour management thing turned out to be very complex
<GeDaMo> Teal! :P
steelswords9 has quit [Read error: Connection reset by peer]
<zid`> the words exist
<Ermine> I have two displays, and they display the same colours in the same way
<GeDaMo> "Your boundary is at hue 168, greener than 85% of the population. For you, turquoise is blue."
<zid`> but they just teach kids the sky is blue or whatever, so then light blue == blue, and then cyan is nearly light blue, compared to green, ends up blue too, despite being the midpoint
steelswords9 has joined #osdev
mavhq has joined #osdev
Turn_Left has joined #osdev
kfv has joined #osdev
Left_Turn has quit [Ping timeout: 248 seconds]
synaps3 has joined #osdev
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 248 seconds]
kfv has quit [Client Quit]
synaps3 has quit [Remote host closed the connection]
Turn_Left has joined #osdev
vdamewood has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
Left_Turn has quit [Ping timeout: 252 seconds]
mavhq has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
<the_oz> I like pastels on darkish grey
mavhq has joined #osdev
mavhq has quit [Read error: Connection reset by peer]
mavhq has joined #osdev
_ngn has joined #osdev
bauen1 has quit [Ping timeout: 246 seconds]
voidah has joined #osdev
marcopolo2 has joined #osdev
xenos1984 has quit [Ping timeout: 248 seconds]
xenos1984 has joined #osdev
eck has quit [Quit: PIRCH98:WIN 95/98/WIN NT:1.0 (build 1.0.1.1190)]
eck has joined #osdev
ramenu has joined #osdev
joe9 has joined #osdev
muxelplexer has quit [Ping timeout: 265 seconds]
Left_Turn has joined #osdev
xenos1984 has quit [Ping timeout: 246 seconds]
Turn_Left has quit [Ping timeout: 260 seconds]
joe9 has quit [Quit: leaving]
xenos1984 has joined #osdev
Turn_Left has joined #osdev
Gooberpatrol66 has joined #osdev
Left_Turn has quit [Ping timeout: 252 seconds]
kfv has joined #osdev
craigo has quit [Quit: Leaving]
robert_ has quit [Ping timeout: 252 seconds]
beto has quit [Quit: bye bye.]
Left_Turn has joined #osdev
beto has joined #osdev
Turn_Left has quit [Ping timeout: 244 seconds]
Gooberpatrol66 has quit [Quit: Konversation terminated!]
Gooberpatrol66 has joined #osdev
beto has quit [Quit: bye bye.]
beto has joined #osdev
beto has quit [Quit: bye bye.]
beto has joined #osdev
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 252 seconds]
orccoin has quit [Ping timeout: 245 seconds]
kfv has quit [Quit: Textual IRC Client: www.textualapp.com]
_ngn has quit [Ping timeout: 260 seconds]
k0valski18891621 has quit [Ping timeout: 252 seconds]
cow321 has quit [Ping timeout: 252 seconds]
GeDaMo has quit [Quit: 0wt 0f v0w3ls.]
X-Scale has quit [Quit: Client closed]
demcgovern has joined #osdev
Gooberpatrol_66 has joined #osdev
Gooberpatrol66 has quit [Ping timeout: 245 seconds]
levitating has joined #osdev
cow321 has joined #osdev
youcai has quit [Read error: Connection reset by peer]
voidah has quit [Ping timeout: 245 seconds]
[Kalisto] has quit [Read error: Connection reset by peer]
[Kalisto] has joined #osdev
youcai has joined #osdev
masoudd has joined #osdev
<heat> year of the onyx everything
cow321 has quit [Ping timeout: 246 seconds]
<Ermine> gj
<Ermine> meanwhile I've triggered a bug in qxl driver
<Ermine> in 6.6 tho
<heat> thanks :)
<heat> do you still use qxl? i thought virtio-gpu was the future?
<Ermine> maybe. Rn qemu failed to set its window size properly on modeset on virtio. Works fine in qxl case
<Ermine> people do attend to qxl code though
demcgovern has quit [Quit: Client closed]
<heat> something i figured out today: different qemu gpus' framebuffers are faster/slower
<heat> ramfb was the fastest
<heat> and this is actually pretty measurable, off of scrolling through mm/page_alloc.c (7000LoC) it went 9.0s -> 7.2s
<Ermine> -vga ramfb?
<heat> -vga none -device ramfb
<nikolar> Interesting
cow321 has joined #osdev
<Ermine> i386 can handle 16 cores, right?
<nikolar> kek
<nikolar> good question
<heat> yes? not sure what would stop it
<nikolar> were there even multicore i386 systems
<nikolar> i thought that started with the 486
<heat> pretty sure ermine's referring to 32-bit x86 in general
<Ermine> yes
<nikolar> ah
<nikolar> my bad
<nikolar> used to other stuff meaning 32bit in general
<nikolar> was there someone who was writing an os for the 16-bit x86
<heat> x86, x86-32, IA32, "intel", x32, i386, i686
<Ermine> okay, just weren't sure why q-s-i386 -smp 16 didn't make 16 processen
<nikolar> yeah i know that it could mean 32 bit
<nikolar> i just didn't expect it this time
<nikolar> Ermine: what os is that
<Ermine> which os?
<heat> how are you measuring created processen?
<heat> what's a processen to you
<nikolar> Ermine: well how are you checking how many it sees
<nikolar> *creates
<Ermine> those are threads actually
<Ermine> As seen in htop
<heat> is this tcg? qemu smp threading in tcg is a little fucky i think
<Ermine> No, kvm
<heat> ehh i'm not intimately familiar with how qemu threads in general
<nikolar> Ermine: can't you just boot some os and check how many it sees
<Ermine> nvmd, it works ok
<nikolar> what did you do
<Ermine> nothing
<nikolar> i mean how did you figure out that it does work
<Ermine> I get all 16 cores occupied by qemu when building stuff
<nikolar> ah so you are booting an os
<Ermine> linux actually
Turn_Left has quit [Read error: Connection reset by peer]
levitating has quit [Ping timeout: 272 seconds]
Gooberpatrol_66 has quit [Quit: Konversation terminated!]
Gooberpatrol_66 has joined #osdev
Gooberpatrol_66 has quit [Read error: Connection reset by peer]
Gooberpatrol_66 has joined #osdev
X-Scale has joined #osdev
j00ru has quit [Ping timeout: 276 seconds]
theruran has joined #osdev