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
antranigv has quit [Quit: ZNC 1.8.2 - https://znc.in]
antranigv has joined #osdev
antranigv has quit [Remote host closed the connection]
heat has quit [Quit: Client closed]
Matt|home has joined #osdev
heat has joined #osdev
Turn_Left has quit [Ping timeout: 240 seconds]
<PapaFrog> On x86, If I enter protected mode, go back to real mode, and once again enter protected mode, do I need to lgdt again?
<PapaFrog> I realize it's a bit moot, but I'm curious.
<Mutabah> I think you don't need to
<zid> yea I don't believe so either
<zid> mainly because there is no "going back to real mode", truely, afaik, just 'unreal mode' where the selectors still apply but the addressing and default reg size are from real
<Mutabah> yes and no..
<Mutabah> until a segment register is reloaded, you're in "unreal" mode - with the base/limit of that register being from the GDT
<Mutabah> but once reloaded, real-mode applies again
netbsduser`` has joined #osdev
vdamewood has joined #osdev
netbsduser`` has quit [Ping timeout: 248 seconds]
mdaadoun has joined #osdev
netbsduser`` has joined #osdev
netbsduser`` has quit [Ping timeout: 260 seconds]
rustyy has joined #osdev
GeDaMo has joined #osdev
mdaadoun has quit [Remote host closed the connection]
netbsduser`` has joined #osdev
xenos1984 has quit [Read error: Connection reset by peer]
xenos1984 has joined #osdev
netbsduser`` has quit [Ping timeout: 255 seconds]
netbsduser`` has joined #osdev
<geist> oh get real
vdamewood has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
gbowne1 has quit [Quit: Leaving]
cultpony_ has joined #osdev
zxrom has joined #osdev
cultpony has quit [Ping timeout: 248 seconds]
cultpony_ is now known as cultpony
netbsduser`` has quit [Ping timeout: 255 seconds]
[itchyjunk] has quit [Read error: Connection reset by peer]
mdaadoun has joined #osdev
flom84 has quit [Remote host closed the connection]
flom84 has joined #osdev
flom84 has quit [Client Quit]
flom84 has joined #osdev
masoudd__ has joined #osdev
Burgundy has joined #osdev
flom84 has quit [Quit: Leaving]
Hammdist has joined #osdev
Hammdist has quit [Ping timeout: 245 seconds]
gog has joined #osdev
Hammdist has joined #osdev
Hammdist has quit [Ping timeout: 245 seconds]
mdaadoun has quit [Ping timeout: 255 seconds]
<gog> hi
<Ermine> hi gog, may I pet you
<gog> yes
* Ermine pets gog
zxrom has quit [Quit: Leaving]
Burgundy has quit [Ping timeout: 260 seconds]
* gog prr
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
goliath has joined #osdev
Burgundy has joined #osdev
mdaadoun has joined #osdev
zxrom has joined #osdev
zxrom has quit [Ping timeout: 255 seconds]
heat_ has quit [Read error: Connection reset by peer]
heat_ has joined #osdev
Hammdist has joined #osdev
<Hammdist> I'm having an issue where wfi will wake on timer interrupt but if I just replace wfi with wfe in the same code, it will not wake. I need to wake on either interrupt or event, if possible
<Hammdist> https://paste.ee/p/Bo6X3 here is my code. irq are masked in DAIF as I don't want to have a separate handling function I just want to wake from w*
<bslsk05> ​paste.ee: Paste.ee - View paste Bo6X3
zxrom has joined #osdev
<Hammdist> the docs seem to indicate this should work; i.e., the wake conditions from wfe should be superset of wake conditions for wfi. but on m-series where I have been able to find more info it seems it does not work that way necessarily there are some extra bits that must be set (like SEVONPEND) that do not exist for cortex-a
<Hammdist> for my use case I think I could design-around by using SGIs rather than events, but that might lead to other issues I would like to avoid that since I have 99% working solution so far with wfe if only it can be made to wake on interrupt properly
masoudd__ has quit [Ping timeout: 255 seconds]
nj0rd has joined #osdev
gxt has quit [Ping timeout: 252 seconds]
gabi-250 has quit [Ping timeout: 252 seconds]
gxt has joined #osdev
gabi-250 has joined #osdev
Burgundy has quit [Ping timeout: 248 seconds]
netbsduser`` has joined #osdev
heat has joined #osdev
heat_ has quit [Ping timeout: 258 seconds]
admiral_frost has joined #osdev
goliath has quit [Quit: SIGSEGV]
flom84 has joined #osdev
flom84 has quit [Quit: Leaving]
flom84 has joined #osdev
mdaadoun has quit [Remote host closed the connection]
Left_Turn has joined #osdev
[itchyjunk] has joined #osdev
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 264 seconds]
<Hammdist> well I switched my use case over to SGIs ... seems to work; no complaints
admiral_frost has quit [Quit: It's time]
<heat> wfe should work
<heat> are you sure you had interrupts on?
<zid> heat do you have interrupts on
<heat> yeah
<Ermine> hi heat
<heat> hi Ermine
Gooberpatrol66 has quit [Remote host closed the connection]
zxrom has quit [Quit: Leaving]
xenos1984 has quit [Ping timeout: 240 seconds]
zxrom has joined #osdev
netbsduser`` has quit [Ping timeout: 255 seconds]
rustyy has quit [Quit: leaving]
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
TheCatCollective is now known as TheSpookCollecti
TheSpookCollecti is now known as TheCatCollective
xenos1984 has joined #osdev
<Hammdist> as I said I had IRQs masked in DAIF b/c I didn't want to run a separate IRQ function, just wake on w*. but wfi was working and wfe wouldn't with only that one change
netbsduser`` has joined #osdev
<Hammdist> it could be that wfe doesn't wake if IRQs are masked or something
heat has joined #osdev
heat_ has quit [Read error: Connection reset by peer]
<Hammdist> yeah I just checked the architectural reference manual and it is indeed different between wfi and wfe. if you mask using PSTATE.I it won't be seen by wfe (but will be seen by wfi)
<Hammdist> so for my use-case SGI is the only way to do it, unless I add a useless handler and unmask it
Turn_Left has quit [Ping timeout: 240 seconds]
Vercas has quit [Ping timeout: 252 seconds]
Vercas has joined #osdev
gog has quit [Ping timeout: 260 seconds]
xenos1984 has quit [Ping timeout: 260 seconds]
gog has joined #osdev
xenos1984 has joined #osdev
Vercas has quit [Remote host closed the connection]
Vercas has joined #osdev
rustyy has joined #osdev
xenos1984 has quit [Ping timeout: 255 seconds]
xenos1984 has joined #osdev
[Kalisto] has quit [Ping timeout: 255 seconds]
Turn_Left has joined #osdev
gog has quit [Ping timeout: 255 seconds]
gog` has joined #osdev
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
Vercas has quit [Quit: Ping timeout (120 seconds)]
Burgundy has joined #osdev
Vercas has joined #osdev
gog` has quit [Ping timeout: 255 seconds]
gog has joined #osdev
gog has quit [Client Quit]
Hammdist has quit [Quit: Client closed]
masoudd__ has joined #osdev
goliath has joined #osdev
<geist> odd that SGI wakes it though, that's interesting
<geist> but if you want to wake a wfe there are better ways to do it
<geist> thats the whole point of wfe, you can wake it because of any number of events
<geist> that you can trigger
<heat_> i think he's using wfi + SGIs
<heat_> vs wfe
<geist> for taht yeah
<mcrod> building gcc on windows has been quite the educational experience
<mcrod> i hope to never do it again.
<heat_> lmao lmao lmao
<heat_> the gang uses mingw and/or cygwin
<Ermine> Bruh, use clang
<mcrod> i do
<mcrod> *however*
<Ermine> though it requires linker from ms build tools
<mcrod> yeah you still need build tools installed, which is slightly annoying
<heat_> Ermine, it doesn't though?
<mcrod> I tried to get away with just the windows SDK, but no dice
<heat_> i'm pretty sure lld can work just fine
<heat_> lld-link
<mcrod> LLVM tries to find a visual studio install if you're using clang
<mcrod> perhaps I don't actually know why
<mcrod> I would imagine it's to get access to the fancy windows libraries
<Ermine> You baited me to try it
<Ermine> But.... what about windows.h ?
k0valski1889162 has joined #osdev
masoudd__ has quit [Quit: Leaving]
<Ermine> Well, seems like it stops complaining about linker with -fuse-ld=lld-link
<Ermine> But it still wants msvc headers
<Ermine> and .lib files
<Ermine> Windows linking is weird
<mcrod> yes but you should still be able to get MSVC headers with just the windows sdk
<Ermine> Anyway, I have WSL so I don't really care
<mcrod> fuck now I have to play around
<heat_> linox
<Ermine> leenooks
<mcrod> lenix
<heat_> macdonaldsOS
<heat_> bigmacOS
<mcrod> i found out recently that nuclear launch controls are still on 9x or DOS
<Ermine> skynet wouldn't fit there
<Ermine> WIN
<heat_> if the nuclear launch controls were running on ZFS i'd have a stroke
<mcrod> imagine asking people to develop a nuclear platform today
<mcrod> "first, we need to connect it to the cloud on azure"
<heat_> we need to use at least 10 AWS services
<Ermine> And kubernetes cluster
<heat_> and ZFS ZFS ZFS ZFS ZFS ZFS ZFS ZFS ZFS ZFS
<heat_> snapshots!
<mcrod> sorry I like ZFS for NASes
<Ermine> Snapshots are cool though
<heat_> zfs is lame slow and complex
<CompanionCube> zfs doesn't have enough cloud for the 10 aws services though
<Ermine> But afaik there's generic snapshot stuff in linux
<Ermine> it works through device-mapper or something
<Ermine> Tried installing qt5, ended up installing gtk3. Like in 'Illusion of choice' meme.
<heat_> you're getting an ugly-ass UI anyway
<heat_> might as well use x athena
<Ermine> Well, my taste isn't good, but I find breeze theme nice
<Ermine> heat_: what's your ideal of UI?
gbowne1 has joined #osdev
<geist> kinda cool, there's a little computer fest up here in seattle this weekend and they have one of the old freenode servers on a table
<geist> good ol zelazny
<heat_> Ermine, windows is fine
<heat_> any windows post 7 really
<heat_> (including 7)
<heat_> vista is a bit dated, 7 is too but less so
<heat_> recent macOS is also good but i struggle to use some bits of it (since it's so different from windoze)
<heat_> i like recent-ish android too
<heat_> but the main guidelines are: 1) familiar 2) reasonably consistent (windows sometimes fails in this) 3) reasonably attractive 4) doesn't try to give me a seizure from time to time
<heat_> all linux DEs/toolkits/windowing servers I've used fail on all points except 1)
<geist> yeah in general i'd prefer macos to everything since it's pretty great at 1-4, but my one complaint for using it for 'power use' is primarily window managment
<geist> its fairly 'one window per screen' centric the way it groups stuff by application, whihc i find annoying
<geist> but it love that its highly consistent with global keyboard shortcuts and whatnot
<geist> aside from that i find cinnamon to be just about the right combination of old and new stuff, with enough customization to get me more or less what i want
gog has joined #osdev
<Ermine> I disagree in 1) and 3)
<Ermine> 1) linux DE's and WM's offer different desktop usage paradigms. I've embraced tiling stuff for example
<Ermine> 3) is subjective. As I said, I like KDE design
<heat_> the fact that it's themable does not mean that it's attractive
<heat_> i use KDE but it looks like dollar-store windows
<Ermine> I mean its default theme
<heat_> my big problem with all the UI-centric linux stuff is that it was clearly made by programmers
<heat_> in their spare time
<heat_> so it's 1) usually ugly or a copy of something else 2) incomplete/inconsistent
<Ermine> 4) WDYM? Poor font rendering? Tearing? Flashes?
<Ermine> Again, ugliness here is a purely subjective stuff
<heat_> and UNIX stuff has the terribad tendency of fragmenting itself (yay! so many options!) which really doesn't help in getting a great experience in any of the alternatives
<geist> well, sure, some of 1-4 are subjective, but it's implied that 1-4 is personal to the individual
<heat_> when you have 50000000 different combinations it's REALLY hard to give you a consistent, great experience (why does the theme and look change from GTK to QT to SDL???)
<heat_> Ermine, i've had tearing, sometimes I have flashes, sometimes my windows all have a seizure
<heat_> and i'm running on gosh darn intel, the darling of open source graphics stacks
<Ermine> That's why I want to engage in intel development
<mcrod> i'd like to work for intel
<mcrod> but i'm not smart enough
<heat_> only geniuses work for intel yes
<heat_> Ermine, problem with intel development (and any other kind of GPU) is that you're either in the know already, or it's exquisitely hard to get in
<heat_> for the typical outsider most of that shit is gibberish
<heat_> the manuals aren't even 100% complete, and even if they were you'd need to dedicate huge amounts of time in grokking all that before being able to write something comparable to the i915.ko even
<Ermine> Alyssa is apparently a bit younger than me, but she can write drm stuff
<heat_> well, yes, it's not impossible
<heat_> you're just severely disadvantaged when trying to get in unless you're, idk, getting paid full-time for it
<Ermine> The reality of open source is that doing stuff yourself is the most effective way of getting the workspace you'd like to have
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
<puck> Ermine: hrm, i915 i'm not sure i'd describe same level as panfrost/asahi, but hrmm
<Ermine> But still far from trivial I guess?
<puck> reversing it, definitely; but e.g. m1 GPUs have a lot of abstraction that's handled by the on-GPU firmware, iirc
heat has joined #osdev
heat_ has quit [Read error: Connection reset by peer]
Gooberpatrol66 has joined #osdev
Arthuria has joined #osdev
heat has quit [Remote host closed the connection]
heat has joined #osdev
Left_Turn has joined #osdev
Arthuria has quit [Remote host closed the connection]
Turn_Left has quit [Ping timeout: 272 seconds]
gabi-250 has quit [Ping timeout: 252 seconds]
gabi-250 has joined #osdev
flom84 has quit [Quit: Leaving]
wereii has quit [Quit: ZNC - https://znc.in]
wereii has joined #osdev
<mcrod> hi
<mcrod> i don't know what to do
<bl4ckb0ne> osdev maybe
<mcrod> i'm surprised you didn't say "meson"
<bl4ckb0ne> trend has passed i guess
criswell has joined #osdev
<mcrod> yeah, I solved the initial CMake woes
<mcrod> for now
<bl4ckb0ne> but osdev could imply meson
<heat> meson
<mcrod> i'm almost done with one project
<mcrod> then I should get back to emulation stuff..
<bl4ckb0ne> could start another
<bl4ckb0ne> with meson
<mcrod> maybe
goliath has quit [Quit: SIGSEGV]
criswell has quit [Quit: ZNC 1.8.2 - https://znc.in]
<kof213> > The reality of open source is that doing stuff yourself is the most effective way of getting the workspace you'd like to have that's the reality of everything IMO. business land is useless if what you want to buy does not exist, same rules there IMO
criswell has joined #osdev
criswell has quit [Quit: ZNC 1.8.2 - https://znc.in]
Burgundy has quit [Ping timeout: 248 seconds]
<kof213> conway's law implies this is inevitable. noone else is you and knows exactly what you want, just degrees of miscommunication lol
<bl4ckb0ne> you just need to use something sane like meson
gildasio has quit [Quit: WeeChat 4.0.4]
gildasio has joined #osdev
gog has quit [Quit: byee]
Left_Turn has quit [Read error: Connection reset by peer]
<heat> meson
<bl4ckb0ne> i am a freemeson
<klange> free(meson);
<bl4ckb0ne> Segmentation fault