Pinned toot

I guess I never posted an intro so here we are!

I'm Fen! I'm a computer science student from France. At the time I'm writing this, I'm looking to apply for a Ph.D in my university. I'm also a furry and an artist, and I sometimes take commissions.

I am non-binary, probably agender but I still don't use this label for myself so I just stay under the non-binary umbrella. My pronouns are they/them, but he/him are fine too.

I can speak French, which is my native language, as well as English, proficiently. I am currently learning Mandarin Chinese (I am a beginner still), and I know bits of Italian and Ancient Greek.

Politics wise, I'm obviously very left-wing, but I don't know exactly the term for my personal beliefs. Probably leaning towards anarchism and communism.

My research domain is NVRAM-related coherency problems in HPC contexts.

Feel free to follow me and talk to me, some people told me I look inaccessible/intimidating but really I'm just a little ball of stress and anxiety!!

Pinned toot

And my reference sheet is done! It's a lot of work but I think the workflow is good enough so that I can maybe take one ref commission in the future. It would be quite a bit more expensive though, seeing the amount of research, experimenting and time it takes. We'll see!

In any case, I really like what I did here, I finally have a ref for my fursona 🧡​

starting to pronounce "glass" like that one parrot does

there's a special kind of joy seeing your custom memory allocator work by giving it some linked lists to construct

it would mean the world to me if my head didn't ache right about now

who needs std::mem::transmute() when you have ptr casts

i swear this makes sense in my research context. don't look at the 131 unsafe blocks

doing what most programmers do, storing the offset of a field in a struct to get the value from one of two copies of that struct

i love to google the scientific name of the wild hog

fen boosted

hot date where we show each other's config files

you're straight? i don't understand, who's the emacs user and who's the vim user

in an alternate world where it didn't happen i probably would be speaking 3 languages: savoyârd, french, english, and maybe picard from my parents

my boyfriend would be speaking occitan and maybe basque, and my cousins galo or brezhoneg

things to do at 5am according to my brain

  • reminisce on the tragedy that is the napoleonic policies of regional language suppression which massively and very quickly made dozens of regional languages in France extinct or endangered as fuck

groceries time

i wish i had the energy to cook cool meals but now the most i can do is pop something in the oven

i can't cook anymore because of low energy :(

how many cycles is this?

  • 12 for HL init
  • 8 for B init

and then for all but the last iterations of the loop (so, times 32767):

  • 8 for the memory read
  • 4 for the register to register load
  • 4 for the comparison
  • 12 for the successful relative jump

and for the last iteration, the jump fails, so it's only 8 cycles

in total: 12 + 8 + 32767 * (8 + 4 + 4 + 12) + 8 + 4 + 4 + 8 = 917520 cycles.

The gameboy classic has a CPU that runs at 4.19MHz, so to execute 917520 cycles, it takes 219ms. Uh oh! This means that with all the tracing through opentelemetry / jaeger i'm doing, I won't be able to keep up with the normal CPU speed of a gameboy

in release, with debug tracing, my emulator can read 32KiB in 724ms

let's assume I used a LD A, (HL+) loop to do this. the code would be something like

LD HL, $0000        ; set up HL
LD B, $80 ; set up end point
LD A, (HL+) ; loop start: read from memory (here, ROM)
LD A, H ; put H in A to compare
CP B ; check if reached $8000
JR Z, loop_start ; jump to loop start
Show more

Generalistic Mastodon instance for open-minded people. Instance Mastodon généraliste pour personnes ouvertes d'esprit.