#SEMU emulator
1 messages · Page 1 of 1 (latest)
hey guys
saalty here
this emulator will feature a lot of stuff hopefully
I will post progress here
Oh, and its also going to be x86_64
I will have to sadly write an x86 instruction decoder
this isnt as hard as I thought
decoding the instructions at least, they are pretty nice
So its a box86 clone?
non, it is qemu-system-x86_64 clone
well its a clone of any x86_64 computer
thats the entire point lmao
I am so smart
lol
i am proud of what I did here
im still a dumbass though
i am too lazy too deal with C right now lol
Also why visual studio?
You thought I won't notice the color scheme
im not ashamed of using it
yeah, and has built in debugger which you dont have to pay 27$ for (looking at you, remedyBG)
me too, I love the linux way of doing things (was using gentoo for a while), but windows just feels much more user-friendly and pretty much all games run on it
and you cant use gdb or make file in windows easily
that is the goal
Games
My solution was to only ever play Minecraft lul
wsl2?
all my favourite games are windows only sadly
yeah I use wsl2 a lot, but you cant really do it with the VS ide
maybe if this emulator gets good enough, I can replace qemu with it so that I would have full control over execution and debugging
lol
its true though, I should talk less and do more
well, I will be in the vc to work on this emulator
you guys can join if yall want
for the FPU emulation, is it fine if I just use 64-bit floating point instead of 80-bit
80 bit floating point seems tricky
No one wants ðŸ˜
yeah, 80-bit floating point
Ram should not be there
Instead, use a BUS struct
Maybe pointers for the specific pins
And aren't gdtr ldtr and idtr nonstandard?
Like they have most re bits
That's all
Oh, forgot about the numbered registers
let all be honest here, who will need or want more than 1 ram. might as well just hard code it
the way its implemented isnt that important
You forgot about mmio
Oh, also the IO bus
I mean they have more bits than 64
64 for addr and 16 for size?
there is nothing mmio-specific that needs to be in cpu struct
I forgot yeah
oh and you are right I forgot
the typedef could be above
will start working on this again pretty soon
alright, started work on the instruction decoder
hidden parts of segment registers?
they have hidden parts?
loading a value into the selector register also loads the hidden parts from the gdt
also - does anyone know where I can find different instructions opcode definitions
then as long as the selector doesnt change the gdt is not touched
oh i see, I never knew that
the hidden parts are all the segment params from the gdt, so the base, limit etc
the sdm has more details most likely
alright, I will have to read up on that too then
Updates?
Ded
Will come back to this soon
This project, may not be dead. I have recently made an x86 dynamic instruction encoder, so I will return to this probably.