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
<heat> hmmm, are arm64 TTBR writes serializing in any way shape or form?
<heat> i have this weird question: if they're not (which they don't seem to be), what makes it so the store buffer works properly?
<heat> you can't just do something really simple like keying off of a virtual address because the page tables can switch without flushing it
<heat> maybe at that point you've been up and down the cache so you key off of something else? like a physical address
<heat> hmm yes that sounds plausible, i was thinking of the store buffer existing at the wrong point in the computer architecture
<heat> cool.
monkeyPlus has joined #osdev
gog has quit [Quit: byee]
k_hachig_ has joined #osdev
k_hachig_ is now known as k_hachig
m5_ has quit [Ping timeout: 252 seconds]
m5_ has joined #osdev
[Kalisto] has quit [Read error: Connection reset by peer]
[Kalisto] has joined #osdev
m5_ has quit [Read error: Connection reset by peer]
m5_ has joined #osdev
vdamewood has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
heat has quit [Ping timeout: 252 seconds]
monkeyPlus has quit [Remote host closed the connection]
k_hachig has quit [Ping timeout: 265 seconds]
goliath has quit [Quit: SIGSEGV]
k_hachig_ has joined #osdev
k_hachig_ has quit [Ping timeout: 252 seconds]
surabax has quit [Quit: Leaving]
PapaFrog has quit [Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in]
PapaFrog has joined #osdev
<kof673> eh, i give up on elks (ia16-gcc that is, dev86 works fine) for now. -melks ...always outputs .com file. same with no matter what i tell ld. elks is some kind of a.out . it helpfully includes elf2elks program...but elf options...same. :/
<kof673> the toolchain it builds, is named ia-16-elf-foo but it can't output elf either lol
<klys> if you want elf16 you'd have to design that and port binutils to it
<zid> I want ELF24, I don't need an alpha channel
<kof673> what is funny is you -c you do get an elf object .........not a program of course. it is maybe just horrible lack of error reporting :D
<klys> isn't that elf32 though
<klys> and supposing you just want to load elf32 in 16 bits, you need a linker loader and an executable stub
<ring0_starr> dude the interface for strtoul drives me nuts
<klys> atoi
<Mutabah> In what way?
<ring0_starr> each time i use it extensively, what ends up happening is that i make a wrapper for it
<kof673> i wasn't advocating that...just c89 i believe......
<ring0_starr> checking endp, errno, etc.
<kof673> lol
<ring0_starr> the manner in which you need to check endp
<ring0_starr> if (endp && *endp != '\0' ...
<ring0_starr> better than atoi, for sure, but it feels like a kludge
<klys> first investigate the MZ header and second look at removing the org 0x100 implicit in your default .lds specs
<ring0_starr> oh oh yeah and then strtoul interprets negative signs
<ring0_starr> because it's a string to unsigned long and everybody knows unsigned longs can be negative
<ring0_starr> i just want a little bit of consistency
<ring0_starr> kof: 8086 unix is entertaining to think about
m5_ has quit [Ping timeout: 248 seconds]
m5_ has joined #osdev
<ring0_starr> so essentially xenix
m5_ has quit [Read error: Connection reset by peer]
m5_ has joined #osdev
k_hachig_ has joined #osdev
<kof673> i just want something like 286 maybe...not going to spend a lot of time, but anything with 1M RAM i would hope is a feasible target...you get 16M I believe lol
<kof673> and an excuse to e.g. normalize all pointers or whatever is needed
<kof673> but for "userland" stuff stupid little programs....elks would be nice...
<kof673> a stupid little md5 program, should run on elks...
<kof673> or i should be able to test printf() there, things like that
<kof673> or malloc() even 30242 Feb 28 00:14 obj_ia16gcc_gitlab_2025_02_25/btml.a # "boot malloc"
m5_ has quit [Read error: Connection reset by peer]
m5_ has joined #osdev
osmten has joined #osdev
<klys> [ia16gcc btml] is an empty set
<klys> is it something you wrote?
osmten has quit [Quit: Client closed]
k_hachig_ has quit [Ping timeout: 252 seconds]
k_hachig_ has joined #osdev
k_hachig_ has quit [Ping timeout: 245 seconds]
osmten has joined #osdev
sprock has quit [Ping timeout: 252 seconds]
steelswords94361 has quit [Ping timeout: 272 seconds]
sprock has joined #osdev
steelswords94361 has joined #osdev
deriamis_ has quit [Quit: ZNC - https://znc.in]
steelswords94361 has quit [Ping timeout: 248 seconds]
steelswords94361 has joined #osdev
deriamis has joined #osdev
netbsduser` has joined #osdev
bauen1 has quit [Ping timeout: 248 seconds]
osmten has quit [Quit: Client closed]
netbsduser` has quit [Ping timeout: 268 seconds]
<geist> ia16 heh
<kof673> dev86 works, elksemu can run little test programs lol needs root/sudo for whatever vm86 it does :D
<kof673> there is also the wonderful ack pc86 target that makes a bootable floppy lol
vdamewood has joined #osdev
osmten has joined #osdev
the_oz has quit [Remote host closed the connection]
the_oz has joined #osdev
bauen1 has joined #osdev
Lucretia has joined #osdev
Matt|home has quit [Ping timeout: 268 seconds]
craigo has joined #osdev
osmten has quit [Quit: Client closed]
[Kalisto] has quit [Ping timeout: 244 seconds]
k_hachig_ has joined #osdev
<gorgonical> good morning you hobgoblins and wights. we all hate mozilla now right?
<kof673> all corporations are equally in the hate pile
<the_oz> DNS over HTTPS is laughable
<gorgonical> ladybird makes a big debut on hn today also. coincidence? ladybird is a mozilla honeypot
osmten has joined #osdev
k_hachig_ has quit [Ping timeout: 244 seconds]
GeDaMo has joined #osdev
vdamewood has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<ring0_starr> DNS over HTTPS is mozilla admitting that everything is a web-shaped nail to them
<ring0_starr> everything gets so degraded with improper use or care
<ring0_starr> my 15 y/o nephew told me that a USB-A -> proprietary iphone port cable is a "phone charger"
<ring0_starr> the power supply, he says, is "the brick"
<ring0_starr> words don't mean anything anymore, tcp/ip ports don't mean anything anymore
<kof673> this is most likely not accurate but https://0x0.st/s/jDyyvf24EAGgIRtnz1t3vg/XLwE.jpeg
<ring0_starr> i'm noooooooticing a pattern
<ring0_starr> <--- teh nooticer
<ring0_starr> 1). pick an abstract category of thing
<ring0_starr> 2). pick out a commonly used but highly flawed concrete member of said category
<ring0_starr> 3). reinvent the entire world within said thing
<kof673> i don't disagree, but it is IMO somewhat ying and yang, ebb and flow, it happens to everything IMO. "this is not a pipe [only a picture of a pipe]". ^^^ conway's law.........chia pet.. co-co-co-conway! <chia pet sprouts, according to shape>
<the_oz> "we'll help you keep the state from knowing what your DNS request is but nevermind that the state can easily go oh look the very next to DNS question is using the answer to rout therefore this must be the query and it must have asked herp derp AAA"
<ring0_starr> the example i had in mind is making port 443 the catch-all, whereas the application layer gets sandwiched into HTTPS
<ring0_starr> and desktop applications running inside of web browsers is another
<ring0_starr> this method of enshittification is everywhere once you know what to look for
<kof673> managing people is easier if they are placed into little boxes. it happens to everything...
<ring0_starr> reminds me of this irc person i knew... she would tell me that i'm autistic for "thinking in black and white" and "placing people into boxes" while telling me about her boxes for people and what box i'm in
<kof673> lol yes
<the_oz> lens is built-in, you can't not!
<kof673> ^^^^^^^^^
<kof673> in absence of information, people also will always make snap judgements. everyone does, they have to
<the_oz> SORRY, ABSTRACTION ENGINE OVERDRIVE EVEN UNTO ITSELF
<kof673> it is always "lossy"
<the_oz> "Is this traffic light green or red? Thank goodness I can discriminate"
<kof673> ^^^^^^^^ it is arguably an ancient evolutionary imperative
<gorgonical> I cannot imagine the number of times I have tasted some milk in my fridge and made a comparatively low-information snap decision about whether it is unsafe to eat or not
<kof673> let me end my offtopic, but "like from like" is what alchemy calls it. law of conservation of energy...whatever ye bind.......
<gorgonical> I think of OT here like the disabled stalls in bathrooms: it's not a crime to use them if they're free but if someone comes along who needs it they get priority
<kof673> yes and i think that is generally good but wanted to stay on "tech" and not "philosophy in general"
<gorgonical> a reasonable point
<the_oz> Having good judgement won't happen unless one is free to have judgements in the first place, but yes fuck mozilla's dumbass ceo's bad judgement
<kof673> REVIEW, v.t. To set your wisdom At work upon a book, and so read out of it The qualities that you have first read into it. # it is a.........law of communication, maybe not always that bad, but you can only explain something to someone in terms of what they 'already know'
<gorgonical> I saw a pretty awful gotcha the other day in C++. It looked like this: my_obj->some_func(foo, bar, baz); except my_obj was a nullptr cast into *my_obj
<gorgonical> This works because my_obj is a template instance of some abstract_obj template. And in the case of my_obj, some_func is a static function
<ring0_starr> :\
<gorgonical> The idea that the -> is actually equivalent to the :: in this case is really unpleasant to me
<ring0_starr> my style rules are that static functions need to be called like AbstractObj<blah>::some_func()
<gorgonical> This codebase has a reputation for being bad so it's no surprise this gotcha was found
<the_oz> none type is always reachable!
<gorgonical> i agree, ring0_starr
<gorgonical> That makes it very clear
<gorgonical> I even think perhaps that should be the requirement to call such static functions
<ring0_starr> i'm pretty sure this is in the google C++ style rules as well
<gorgonical> This codebase began before google existed, and began in academia even
bauen1 has quit [Ping timeout: 246 seconds]
bauen1 has joined #osdev
<nikolar> now back on topic
<nikolar> KERNAL
<zid> kernal or petral?
<gorgonical> would you believe it but i am even doing real kernal work right now
<nikolar> i wouldn't it
<nikolar> it's too early for osdev
<zid> nikolar good news, I was watching something and the bad guy was serbian
<nikolar> i bet his name wasn't even remotely serbian
<zid> Ranko Zamani
<zid> yo uwere supposed to give a review
<nikolar> nope, not at all
<nikolar> i guess ranko could be a nickname
<nikolar> but not a name
<nikolar> and zamani is more albanian than anything lol
<zid> serbia claims all the land nearby though
<zid> so that makes sense
<nikolar> we don't claim any nearby land though
<nikolar> and an albanian living in serbia doesn't count as serb lol
joe9 has quit [Quit: leaving]
xenos1984 has quit [Read error: Connection reset by peer]
k_hachig_ has joined #osdev
k_hachig_ has quit [Ping timeout: 260 seconds]
osmten has quit [Quit: Client closed]
xenos1984 has joined #osdev
PapaFrog has quit [Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in]
PapaFrog has joined #osdev
the_oz_ has joined #osdev
the_oz has quit [Ping timeout: 272 seconds]
the_oz_ has quit [Ping timeout: 248 seconds]
surabax has joined #osdev
edr has joined #osdev
m5_ has quit [Ping timeout: 268 seconds]
m5_ has joined #osdev
the_oz has joined #osdev
goliath has joined #osdev
gimli has quit [Quit: leaving]
cow321 has quit [Read error: Connection reset by peer]
gimli has joined #osdev
cow321 has joined #osdev
qubasa has quit [Ping timeout: 276 seconds]
qubasa has joined #osdev
TkTech has quit [Ping timeout: 246 seconds]
Left_Turn has joined #osdev
k_hachig_ has joined #osdev
TkTech has joined #osdev
m5_ has quit [Read error: Connection reset by peer]
m5_ has joined #osdev
craigo has quit [Quit: Leaving]
heat has joined #osdev
Turn_Left has joined #osdev
m5_ has quit [Ping timeout: 248 seconds]
m5_ has joined #osdev
Left_Turn has quit [Ping timeout: 246 seconds]
zhiayang has quit [Quit: oof.]
hwpplayer1 has joined #osdev
m5_ has quit [Read error: Connection reset by peer]
m5_ has joined #osdev
m5_ has quit [Ping timeout: 260 seconds]
m5_ has joined #osdev
zhiayang has joined #osdev
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 252 seconds]
vdamewood has joined #osdev
Arthuria has joined #osdev
hwpplayer1 has quit [Remote host closed the connection]
the_oz has quit [Remote host closed the connection]
hwpplayer1 has joined #osdev
the_oz has joined #osdev
xenos1984 has quit [Ping timeout: 268 seconds]
xenos1984 has joined #osdev
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 265 seconds]
m5_ has quit [Read error: Connection reset by peer]
m5_ has joined #osdev
k_hachig_ has quit [Ping timeout: 272 seconds]
k_hachig_ has joined #osdev
m5_ has quit [Read error: Connection reset by peer]
m5_ has joined #osdev
m5_ has quit [Read error: Connection reset by peer]
m5_ has joined #osdev
m5_ has quit [Read error: Connection reset by peer]
m5_ has joined #osdev
xenos1984 has quit [Ping timeout: 252 seconds]
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
xenos1984 has joined #osdev
gog has joined #osdev
Gooberpatrol66 has quit [Quit: Konversation terminated!]
Gooberpatrol66 has joined #osdev
cow321 has quit [Ping timeout: 248 seconds]
cow321 has joined #osdev
remexre has quit [Ping timeout: 252 seconds]
<zid> heat_ does onyx support ENLIGHTENED APIC
k_hachig_ has quit [Ping timeout: 246 seconds]
demindiro has joined #osdev
<demindiro> I should stop using numeric loop labels everywhere
<demindiro> It's kinda annoying to debug a missing (or duplicate) label
hwpplayer1 has quit [Remote host closed the connection]
hwpplayer1 has joined #osdev
<demindiro> In GAS, is it possible to declare a macro that puts some values in .rodata and instructions in .text in one go?
mrpops2ko has quit [Remote host closed the connection]
<demindiro> Would be useful for declaring errors ad-hoc
mrpops2ko has joined #osdev
<zid> text and rodata are the same thing anyway
k_hachig_ has joined #osdev
<zid> you could put them in .text with very little worry. Changing segment twice sounds like a ballache
<zid> it's slightly worse for cache is all
<demindiro> That means I have to jump over the data though
<demindiro> I guess I can do that
<demindiro> Though not a fan of the idea
<demindiro> Ideally the "happy path" is no jump (predicted), of which more can dispatched at the same time if I understand agner's instruction tables correctly
<demindiro> Not a big deal for setup code, but kinda important for the core interpreter loop
k_hachig_ has quit [Ping timeout: 265 seconds]
netbsduser` has joined #osdev
McNur has joined #osdev
k_hachig_ has joined #osdev
k_hachig_ has quit [Ping timeout: 260 seconds]
k_hachig_ has joined #osdev
<zid> I saw a fun thing, but it was for z80
xenos1984 has quit [Read error: Connection reset by peer]
<zid> where the error message prints were inline and looked like call print_debug; db "Error msg"
<zid> and it'd do mov hl, [sp] to find the string, then ret hl once it was done printing it
<gog> an interesting technique
McNur has quit [Quit: Textual IRC Client: www.textualapp.com]
k_hachig_ has quit [Ping timeout: 244 seconds]
hwpplayer1 has quit [Quit: I'll be back later]
<zid> saves having to load hl before every call to pring string at least
<zid> pring strint*
<ring0_starr> i thought that was a 6502 thing
<ring0_starr> or an isa-where-the-address-is-bigger-than-the-registers thing
k_hachig_ has joined #osdev
xenos1984 has joined #osdev
k_hachig_ has quit [Ping timeout: 272 seconds]
k_hachig_ has joined #osdev
k_hachig_ has quit [Ping timeout: 252 seconds]
k_hachig_ has joined #osdev
k_hachig_ has quit [Ping timeout: 246 seconds]
GeDaMo has quit [Quit: 0wt 0f v0w3ls.]
k_hachig_ has joined #osdev
demindiro has quit [Quit: Client closed]
demindiro has joined #osdev
k_hachig_ has quit [Ping timeout: 246 seconds]
k_hachig_ has joined #osdev
k_hachig_ has quit [Ping timeout: 244 seconds]
demindiro has quit [Quit: Client closed]
k_hachig_ has joined #osdev
remexre has joined #osdev
<heat_> zid, what's enlightened APIC
<heat_> WOKE APIC
<heat_> i have x2APIC support if that's what you mean
Turn_Left has quit [Read error: Connection reset by peer]
<heat_> demindiro left but: .pushsection .text <instructions> .popsection .pushsection .rodata <stuff> .popsection
<zid> heat_: it's what the hv code calls it idk I just thought it was funny
<zid> oh push probably fixes all the issues I thought of with changing section twice
gog has quit [Quit: byee]
<heat_> heh yeah i don't implement those
<heat_> maybe i should, for KVM at least