netbsduser has quit [Remote host closed the connection]
AndroUser2 has quit [Read error: Connection reset by peer]
AndroUser2 has joined #osdev
<mrvn>
heat: bitfields work with volatile (or atomic in c++) just like anything else.
<mrvn>
What you actually want is a context manager so you can open the bitfield (read it from hardware), manipulate it (changes the temp register) and then commit the change (exit scope)
gog has quit [Ping timeout: 252 seconds]
nyah has quit [Ping timeout: 268 seconds]
[itchyjunk] has joined #osdev
foudfou has quit [Ping timeout: 258 seconds]
foudfou has joined #osdev
archenoth has quit [Quit: Leaving]
FreeFull has quit []
gog has joined #osdev
JerOfPanic has joined #osdev
<JerOfPanic>
hi
AndroUser2 is now known as c2a1
c2a1 has quit [Killed (NickServ (GHOST command used by androiser2!~androirc@2607:fb90:12cf:3128:6446:dd1d:c720:1065))]
potash has quit [Ping timeout: 265 seconds]
[itchyjunk] has quit [Remote host closed the connection]
frkazoid333 has joined #osdev
potash has joined #osdev
freakazoid332 has joined #osdev
frkazoid333 has quit [Ping timeout: 268 seconds]
foudfou has quit [Quit: Bye]
foudfou has joined #osdev
freakazoid332 has quit [Ping timeout: 244 seconds]
epony has joined #osdev
heat_ has joined #osdev
heat has quit [Ping timeout: 250 seconds]
frkzoid has joined #osdev
elastic_dog has quit [Ping timeout: 248 seconds]
elastic_dog has joined #osdev
heat has joined #osdev
heat_ has quit [Read error: Connection reset by peer]
frkzoid has quit [Ping timeout: 244 seconds]
_xor has joined #osdev
zaquest has quit [Remote host closed the connection]
zaquest has joined #osdev
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
foudfou has quit [Remote host closed the connection]
foudfou has joined #osdev
heat has joined #osdev
heat_ has quit [Read error: Connection reset by peer]
m5zs7k has quit [Ping timeout: 265 seconds]
m5zs7k has joined #osdev
carbonfiber has quit [Quit: Connection closed for inactivity]
gog has quit [Read error: Connection reset by peer]
foudfou_ has joined #osdev
foudfou has quit [Ping timeout: 258 seconds]
heat has quit [Read error: Connection reset by peer]
heat has joined #osdev
<Ermine>
Neato
[itchyjunk] has joined #osdev
isaacwoods has joined #osdev
foudfou_ has quit [Remote host closed the connection]
foudfou has joined #osdev
freakazoid332 has joined #osdev
nyah has joined #osdev
smach has joined #osdev
freakazoid332 has quit [Ping timeout: 244 seconds]
<mrvn>
TCP Echo server? Is this a call to make a ton of DDoS clinets? The challenge could specify a traffic magnification and then they test it with a fake source IP.
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
Bonstra has quit [Ping timeout: 248 seconds]
Bonstra has joined #osdev
netbsduser has joined #osdev
vdamewood has joined #osdev
heat_ has quit [Remote host closed the connection]
heat has joined #osdev
heat has quit [Remote host closed the connection]
heat has joined #osdev
_xor has quit [Quit: brb]
<zid>
hmm shouldn't be too hard right.. at least to fake it? :P
<zid>
set an ack flag, swap some dests and srcs
<zid>
I don't *actually* need to allocate things and make fds and stuff if I just wanna solve the level
<pitust>
on the other hand, nasm is arguably easier to use and has an arguably better syntax
<clever>
pitust: but if you primarily work on non-x86, nasm isnt really even an option
<clever>
and if you already know arm gnu as, why learn nasm?
<linkdd>
pitust: i'm currently trying to make my kernel a higher-half kernel, nasm has no movabs/retf/etc... mnemonics that are useful to control precisely the size of your instructions. nasm will try to infer this stuff from the "easier syntax" and i end up having the following error all over the place during linking: relocation truncated to fit: R_X86_64_32 against `.text'
<linkdd>
those happens on every single jumping instruction
jafarlihi has joined #osdev
<heat>
pitust, why easier to use?
<heat>
you just call nasm with some options, but you also just call gcc with some options
<heat>
and the syntax question just depends on what you're used to. also GNU as supports intel syntax
<linkdd>
cmp ecx, 80 * 25 * 2 // (.stab+0x14): relocation truncated to fit: R_X86_64_32 against `.text'
<linkdd>
seriously, this would not happen with gas
<heat>
huh?
<heat>
where's the relocation?
<linkdd>
exactly
<heat>
.stab? you're using STABS?
<linkdd>
no
<linkdd>
nasm generates them
<linkdd>
80 * 25 * 2 i guess
<heat>
nasm isn't supposed to generate anything
<linkdd>
well, i have no section ".stab" in my code, so surely someone generates it
<heat>
link the the sauces?
<heat>
s/the the/to the/
<mrvn>
There should be only one opcode that jumps to higher half and everything else should be small jumps. That you get that error shows you are linking wrong.
<mrvn>
Did you set the LMA and VMA in the linker script?
<linkdd>
i have "local" jumps, like: jne .local_label
<linkdd>
yes i did
<linkdd>
https://bpa.st/KWRQ this is my linker script, and i do pass -mcmodel=kernel to gcc for the C code
<bslsk05>
bpa.st: View paste KWRQ
<heat>
linkdd, you're missing an F
<linkdd>
seriously
<linkdd>
x)
<heat>
should be 0xffffffff80000000
<j`ey>
thats a lot of fs
<heat>
imagine not having to run from -2GB
<heat>
I heard thats what that new architecture aaaaaaaaarch64 does or whatever
<j`ey>
:3
<heat>
i wrote some rust a few hours ago
<heat>
and i liked it
<heat>
it feels... weird?
<heat>
but it takes more brainpower to learn a language so I'll probably stay in C/C++ land
<j`ey>
for work?
<heat>
no, coding challenge thing
gog has joined #osdev
nvmd has joined #osdev
<linkdd>
heat: yeah, so the Fs did not solve the relocation problems
<heat>
you should push the actual project
<heat>
it's hard to know what's wrong
<linkdd>
it happens on some `call label` but not all, and on some jmp but not all
<linkdd>
heat: well, it's not supposed to be open source
<heat>
nobody gives a shit about your shitty bootstrap code
<heat>
and don't take this in a bad way
<heat>
there's no trade secrets in protected mode -> long mode code
<heat>
particularly in code that's not working
<heat>
it's hard to help if you're giving us almost 0 context apart from a linker script and the error
<heat>
"nasm bad" doesn't apply here because nasm is used by plenty of people
<linkdd>
i know, i was not expecting much, i was just venting/ranting against nasm initially :P i'm going to debug this on my own
<linkdd>
the problematic assembly code is declared with [section .text] [bits 32] and it complains on jumping instructions (call, and jmp)
<linkdd>
that's all the context i can give you
<heat>
yeah :|
<linkdd>
now, most examples i find on the net do not have a single jumping instruction appart from jumping to the 64 bits code, then jumping to the upper memory
<pitust>
linkdd: some nasm builds generate STABS by default for some reasons, you can use -gdwarf to fix that
<GeDaMo>
Does this have something to do with default rel ?
<linkdd>
wait, the stabs are generated by the debugging symbols?
<linkdd>
damnit it was
<linkdd>
removing -g fixes it
<\Test_User>
"when debugging causes bugs"
<linkdd>
:/
<gog>
who debugs the debugger
<linkdd>
debugging code requires more skill than writing it, so writing the most clever code you canc imply you're writing code you can't debug :)
<mjg_>
known and imo bullshit quote
<mjg_>
most notably there are lolo bugs which become immediately apparent after you run into them
carbonfiber has joined #osdev
<linkdd>
lolo bugs which become immediately apparent don't require debugging, since you find them immediately
Ali_A has joined #osdev
<mjg_>
does not do this constitute debugging though? you run into a bug and figure out what happened?
<linkdd>
finding a penny on the ground is not treasure hunting, is it?
<mjg_>
i'm afarid that's not a valid analogy, is it
<\Test_User>
writing code involves fixing the bugs in it, debugging code is merely a part of that ;)
<heat>
i only quote theo de raadt
<heat>
"If some of you people keep insisting on having backwards compatibitity with the stone age, we'll have stone tools forever"
<heat>
damn right homie
<GeDaMo>
The stone age didn't end because we ran out of stone :|
<mjg_>
funny you mention open which has the most stone age tooling imaginable
<mjg_>
modulo openssh
<heat>
we used to have a guy (mischief?) which maintained a bot (glenda) that had theo quotes
<mjg_>
:)
<heat>
it had more quotes but I don't remember whose
<mjg_>
there is a known quote repo somewhere on suckless or cat-v.org
<heat>
yes, it's probably that? he was a 9front person