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
gog has quit [Quit: byee]
nyah has quit [Remote host closed the connection]
brunothedev has quit [Quit: WeeChat 3.6]
<heat> zid, do you have a link to your gdt decoder lying?
<heat> s/lying/lying around/
<bslsk05> ​shogun.rm-f.net: GDT Parser
<heat> thanks
<zid> do you have a link to hot singles in my area
<heat> wait, this only decodes correctly for 32-bit?
<zid> no?
<zid> I never even tested it for 32bit :D
<heat> my 64-bit cs decodes as 16-bit
<zid> sucks to be you then
<zid> what's your 64bit cs value?
<zid> did you get the endian right?
<heat> 0x00A09A0000000000
<zid> that's got a limit of 0 bro
<heat> i know, and it works
<heat> i'm debugging another issue, was just sanity testing with that
<heat> (i'm trying to drop to 32-bit kernel mode compat)
<zid> you have flags A rather than C, I'd have to SDM
<zid> yea looks like I never finished the flags bit
<zid> flags is G D L AVL..
<zid> C is GD, A is G + L
<zid> ahh I'm printing the data width
<bslsk05> ​shogun.rm-f.net: GDT Parser
<zid> I need to check which way around the 16/32 goes
<zid> okay, the other way
<zid> just need to wait for the reaaaaly slow cache server in front of this webserver to update
<heat> i wonder, do I need a 32-bit lret to drop to compat mode?
<zid> I added the word "default" after 32bit
<heat> dis my segment: 0x00CF9A000000FFFF
<zid> just to make it more clear that it's a random flag and not "is this a 64bit descriptor"
<zid> and added a "long mode" bit
<heat> which is a totally valid 32-bit cs
<zid> 4K Granularity
<zid> Compatibility mode
<zid> 16-bit Default
<zid> Unavailable
<zid> I need to selectively print things based on which other bits are set really
<zid> afaik L = 1, D = 0 is illegal etc
<zid> err D = 1
[itchyjunk] has quit [Ping timeout: 248 seconds]
[itchyjunk] has joined #osdev
dutch has quit [Quit: WeeChat 3.8]
zarock has quit [Ping timeout: 250 seconds]
zarock has joined #osdev
dutch has joined #osdev
<heat> i fucked the segment calculations...
<heat> ... if I drop into compat and then back, what happens to the upper half of regs?
<heat> zeroed?
<Mutabah> Only if they're loaded I think?
<heat> they're preserved
<zid> funky
<zid> I'd have assumed they just made the upperzero part built into the 32bit mov circuitry
<heat> wait, I didn't check that
<Mutabah> IMO, if you move into the register, the upper part is zeroed
<heat> yes, they're zeroed yeah
<heat> when moving
<zid> okay phe
<zid> sanity established
<heat> i was expecting them to drop the whole 32-bit state unconditionally
<heat> upper 32-bit that is
<Mutabah> That would require special handling
<heat> dropping down to 32-bit, just to enable 57, and then coming back to 64-bit, is nasty
<heat> top 10 least favourite functions i've ever written
<geist> yah sounds nasty, i was pondering exactly that the otehr day
<geist> or if there was some sort of super clever hack one could do where you switch from 57 to 48 instantly, but still have a pge table that kinda works
<geist> enough to either continue or take some sort of fault which then lets you recover
<heat> it's completely illegal to toggle the CR4.LA57 bit
<heat> just GPs there
<geist> possbly that: set the IDT such that when it instantly fails
<geist> oh. well okay
<heat> there's no funny VBAR trick here :(
<Mutabah> I assume you're using a bootloader that puts you directly into long mode?
<heat> i'm writing code for EFI handoff boot protocols (this time, specifically multiboot 2)
<geist> so basically toggling la57 while the mmu is enabled GPs?
<geist> and since you have to have mmu enabled in 64bit mode...
<heat> yep, while you're in long mode
<heat> (EFER.LMA)
<heat> A logical processor is in IA-32e mode whenever CR0.PG = 1 and IA32_EFER.LME = 1. This fact is reported in IA32_EFER.LMA[bit 10]. Software cannot set this bit directly; it
<heat> is always the logical-AND of CR0.PG and IA32_EFER.LME.
<heat> because of the firmware fuckery going on, you also need to allow PML5 being pre-enabled already
<heat> yay!
<heat> if you're wondering, OVMF drops you in 48-bit
<zid> Hmmm to rewind to an older save in fucking.. dollet dream, or carry on with two dead galbadian soldiers..
<zid> I think someone's going to have to get murdered
<zid> forgot about these two fuckers
mavhq has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
mavhq has joined #osdev
[itchyjunk] has quit [Read error: Connection reset by peer]
heat has quit [Remote host closed the connection]
heat has joined #osdev
<zid> heat I am gregnat
<heat> gragnent
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
terrorjack has joined #osdev
heat has quit [Ping timeout: 240 seconds]
heat has joined #osdev
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
smeso has quit [Quit: smeso]
Andrew is now known as AndrewYu
smeso has joined #osdev
corank has quit [Remote host closed the connection]
corank has joined #osdev
<heat_> nothing more gangsta than running code at the wrong base address
heat_ is now known as heat
<heat> annoying bit: i have a bunch of boot code under a special section with vaddr = physical base. i can't do cross-section pcrel addressing without things blowing up completely
<heat> the special sections doesn't get me anything, now that my kernel is relocatable in physical memory
heat has quit [Ping timeout: 240 seconds]
terminalpusher has joined #osdev
vdamewood has joined #osdev
slidercrank has joined #osdev
elastic_dog has quit [Read error: Connection reset by peer]
elastic_dog has joined #osdev
slidercrank has quit [Ping timeout: 264 seconds]
foudfou has quit [Remote host closed the connection]
foudfou has joined #osdev
potash has joined #osdev
slidercrank has joined #osdev
goliath has joined #osdev
Matt|home has joined #osdev
Burgundy has joined #osdev
k4m1_ is now known as k4m1
bliminse has quit [Quit: leaving]
bauen1 has quit [Ping timeout: 256 seconds]
bliminse has joined #osdev
corank has quit [Remote host closed the connection]
corank has joined #osdev
danilogondolfo has joined #osdev
Ali_A has joined #osdev
GeDaMo has joined #osdev
bauen1 has joined #osdev
Ali_A has quit [Quit: Client closed]
nyah has joined #osdev
bauen1 has quit [Ping timeout: 268 seconds]
bauen1 has joined #osdev
heat has joined #osdev
gog has joined #osdev
bauen1 has quit [Ping timeout: 265 seconds]
bauen1 has joined #osdev
bauen1 has quit [Ping timeout: 240 seconds]
sortie has quit [Ping timeout: 246 seconds]
foudfou has quit [Remote host closed the connection]
foudfou_ has joined #osdev
bauen1 has joined #osdev
terminalpusher has quit [Remote host closed the connection]
awita has joined #osdev
bauen1 has quit [Ping timeout: 240 seconds]
dayimproper has joined #osdev
sortie has joined #osdev
awita has quit [Ping timeout: 240 seconds]
dayimproper has quit [Quit: Konversation terminated!]
Left_Turn has joined #osdev
bradd has quit [Ping timeout: 256 seconds]
bauen1 has joined #osdev
joe9 has joined #osdev
danilogondolfo has quit [Ping timeout: 256 seconds]
dude12312414 has joined #osdev
awita has joined #osdev
gildasio has quit [Remote host closed the connection]
gildasio has joined #osdev
goliath has quit [Quit: SIGSEGV]
slidercrank has quit [Ping timeout: 246 seconds]
Left_Turn has quit [Remote host closed the connection]
Left_Turn has joined #osdev
goliath has joined #osdev
<mcrod> hi
<heat> hi
<gog> hi
<Ermine> hi
<Ermine> gog: may I pet you
<gog> yes
* Ermine pets gog
<heat> hi
* gog prr
slidercrank has joined #osdev
xenos1984 has quit [Ping timeout: 248 seconds]
xenos1984 has joined #osdev
joe9 has quit [Quit: leaving]
ZipCPU_ has joined #osdev
ZipCPU has quit [Ping timeout: 260 seconds]
ZipCPU_ is now known as ZipCPU
gog has quit [Quit: Konversation terminated!]
xenos1984 has quit [Ping timeout: 240 seconds]
ZipCPU has quit [Ping timeout: 240 seconds]
FreeFull has quit [Quit: Rebooting]
xenos1984 has joined #osdev
FreeFull has joined #osdev
gog has joined #osdev
<gog> hi
<Ermine> hi again
<gog> i'm home
<Ermine> That's cool
<zid> are you final fantasy 8
dude12312414 has quit [Quit: THE RAM IS TOO DAMN HIGH]
xenos1984 has quit [Ping timeout: 240 seconds]
vdamewood has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
awita has quit [Ping timeout: 240 seconds]
<gog> i am balamb garden
<zid> I am galbadia
xenos1984 has joined #osdev
<gog> quistis is goals
<zid> failed instructor, clings to the nihilist?
<zid> or just "whips animals for fun"
<gog> the former
alpha2023 has quit [Read error: Connection reset by peer]
bas1l is now known as basil
alpha2023 has joined #osdev
goliath has quit [Quit: SIGSEGV]
dutch has quit [Quit: WeeChat 3.8]
Brnocrist has quit [Remote host closed the connection]
Brnocrist has joined #osdev
dutch has joined #osdev
goliath has joined #osdev
awita has joined #osdev
awita has quit [Remote host closed the connection]
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
scaleww has joined #osdev
dutch has quit [Quit: WeeChat 3.8]
Burgundy has quit [Ping timeout: 240 seconds]
joe9 has joined #osdev
dutch has joined #osdev
<Ermine> Do I understand correctly that initial environment of UEFI app images is listed in 'Handoff state' sections in Overview chapter? Or are there any additional sections on this topic?
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
<heat> Ermine, kurrekt
<heat> i can't think of anything else
<zid> wery kurrekt is my german name
terrorjack has joined #osdev
<Ermine> heat: thank you
<zid> The elemental rule has spread throughout this region! *alt-f4*
<heat> no problem ermie
dude12312414 has joined #osdev
sebonirc has quit [Remote host closed the connection]
sebonirc has joined #osdev
gog has quit [Ping timeout: 264 seconds]
slidercrank has quit [Ping timeout: 250 seconds]
innegatives has joined #osdev
<innegatives> I'm inspecting bootsector of PC DOS 2.0 and it has bunch of "arpl" instructions, now "arpl" was introduced with 286, which was in AT, which was supported in PC DOS 3.0, not 2.0. How come 2.0 has arpl instructions?
<zid> sure it doesn't have a bunch of ?
<bnchs> >"arpl" instructions
<bnchs> this reminds me of an OS that was for m68000
<bnchs> when later variants of the CPU introduced "move from CCR" instruction, the OS recommended it but the original m68k didn't support it
<bnchs> so in the original m68k, the OS just checks if the instruction is a "move from CCR" instruction, and emulates it if it is
<bnchs> in an illegal instruction trap
<bnchs> could this be the same case?
<innegatives> no idea what you are talking about
<bnchs> the OS/bootloader can emulate instructions that aren't actuall ysupported in the CPU
gog has joined #osdev
<bnchs> using the illegal instruction vector
<innegatives> Oh, but how did arpl make its way into 2.0 when 286 didn't even exist?
deflated8837 has quit [Remote host closed the connection]
deflated8837 has joined #osdev
deflated8837 has quit [Remote host closed the connection]
<gog> meowl
[itchyjunk] has joined #osdev
<gog> colon three
<bnchs> innegatives: that i don't know
deflated8837 has joined #osdev
goliath has quit [Quit: SIGSEGV]
<bnchs> discord
<gog> lmao
<moon-child> if :3 is so good how come there isn't a :4 yet
<lav> export DISPLAY=:3
<gog> lav
* gog hold out hand
<bnchs> which is better
<bnchs> xorg or wayland
<gog> for me rn wayland is better
<bnchs> for me rn xorg is better
* lav walks under gog hand
* gog patpatpatpatpatpatpatpat
* lav prrprrprrprrprrprrprrprr
<bnchs> cute
<heat> dwm.exe is clear
<bnchs> i do screen recording so xorg is better for me in that
<zid> dwm tears badly still 20 years later
deflated8837 has quit [Ping timeout: 264 seconds]
dude12312414 has quit [Quit: THE RAM IS TOO DAMN HIGH]
FreeFull has quit []
innegatives has quit [Quit: WeeChat 3.8]
<gog> heat
<gog> heat heat
<heat> gog
<Ermine> gog gog
<bslsk05> ​github.com: edk2/ExceptionHandlerAsm.nasm at cafb4f3f36e2101cab2ed6db3ea246a5a3e4708e · tianocore/edk2 · GitHub
<heat> Ermine give me your credit card details
<gog> what the fuck exactly is happening here
<gog> not all exceptions < 32 have error code auto
<heat> mErrorCodeFlag
<zid> maybe that bit is aware
<heat> it's a bitmap of exceptions with error codes
<heat> cute idea
<zid> and this is a broad stroke
<zid> the default: on the imaginary switch
<gog> ohhh
<Ermine> heat: you want to give me money?
<heat> yes obviously that's why I want your credit card information
<gog> do you need money'
<Ermine> How nice of you
<gog> Ermine: Ermine
<zid> I need money
<gog> can you pet me
<zid> will pet for cash
<Ermine> sure
* Ermine pets gog
* gog prr
<gog> ok so
<gog> ok
<zid> heat no I won't pet you like *that* stop asking
<gog> i think i can do this but i also was too busy all evening to do anything
<heat> gog, why are you looking at edk2 handlers?
<gog> i want to be sure of what i'm doing here
<heat> just invoke the IDT dawg!
elastic_dog has quit [Ping timeout: 240 seconds]
elastic_dog has joined #osdev
<gog> i needed to know what i'm blindly calling here'
<Ermine> heat: 4539 8302 5102 0246
<heat> HEY IM BLINDLY CALLIN 'ERE
<Ermine> Thank you for being generous~
<gog> 4206 9420 6942 0694
<zid> SORT CODE CANNOT BE FOUND
<heat> 6969696969696969
<heat> hehehehehe
<gog> hehehehe
<Ermine> Nice
<heat> funny number of sexual activity
<gog> what about the funny number of cannabis use
<heat> what number would that be gog?
<gog> 420
<zid> 410
<gog> 400
<heat> HAHAHAHAHAHAHAHAHA
<gog> HAHAHAHAHAHA
<gog> heat
<gog> i'm not a good programmer
<zid> Have you considered being a bad programmer instead
<zid> I'm not even that, I never do any program
<gog> no
<gog> i want to be a good programmer
<heat> wyh are you not a good progamer
<gog> because i don't get paid to play games
<gog> but i said programmer
<heat> have you considered a career in esports
<heat> you could be playing dota 2 right now!
<zid> dota 2 is too competitive, try trackmania they all suck at it
<zid> You can tell, because a brit is one of the best players
<gog> ah yes the career where people will invent new slurs to say at me while i do a thing i don't enjoy
<zid> (You couldn't pay me to even play dota 2)
<gog> i like my current career and familiar slurs
<zid> heat when are you going pro at football manager
<zid> aka being signed as manager for a real portugal football
<heat> some day
<gog> heat how do i win a portuguese girl's heart
<heat> when are you going to become a propah balding chubby professional snooker player
<heat> gog, erm erm emr emr erm
<zid> There are no fat snooker players :(
<heat> normal girl stuff?
<zid> there was one but he's thin now
<gog> hmm
<zid> (the other fat one got banned for match fixing already)
<heat> also darts, UK people are very into darts
<zid> yea you have to be fat to play darts
<zid> improves your.. center of gravity
<zid> stops the wind affecting your throw
<zid> americans would be so fucking good at darts
<zid> it's a good job they don't know it exists
<zid> they'd have a world series that actually featured more than them to win
gog has quit [Quit: byee]
Left_Turn has quit [Read error: Connection reset by peer]
joe9 has quit [Quit: leaving]
nyah has quit [Quit: leaving]