Ask coding questions

← Back to all posts
Take a guess
h
MocaCDeveloper (603)

Hi all!

Quick question

I am going to attach a image below.

Take a guess at what this new project is. If you get the guess right, I will select your answer as correct. It is purely guessing. There is not much evidence within the image. So if you can manage to guess it, then I will gladly invite you to collab with me, and you will be selected as the correct answer.

P.S: The project is a low-level C project.

If you get close to the answer, I will still accept it and allow you to collab. I am not doubtful in myself, but this is a pretty big project. Much bigger than projects I have faced before(besides OSDev, but this project is edging near the fundamental knowledge needed to start off OSDev).

The first section of this project will be written in C.
The second part will be written in Rust.

So, without further ado, GET GUESSING, and GOOD LUCK!

Comments
hotnewtop
CodeLongAndPros (1605)

You're dealing with magic values + structs, so it's lowlevel. You have Rust and C, so it must be very low level. You've already done osdev, so I'd say you're reverse-engineering something.

MocaCDeveloper (603)

@CodeLongAndPros

Close!
It's across the lines of reverse-engineering. You have the right concept going.

Here is some information:

  • There is a stream of information
  • This stream will be formatted between a HEADER and the HEADER_INFO
  • The HEADER contains information about this stream of information
    • Ex: The memory the stream occupies
  • The INFO_HEADER contains this stream of data that will then be rendered to the buffered output file(of which contains the streams of information that HEADER stores as well as the INFO_HEADER)

It's kinda like the BMP image rendering, where I took the raw code and read it 4 bytes at a time. The same concept applies. The streams are written 4 bytes at a time, and something special happens to the stream of information being rendered into the buffered output file.

Now, you have the right concept. But take a second guess. What do you think this project will be?(I think I gave you a good enough hint where if you guess what the C code is doing you could probably guess what the Rust code will be doing)

Coder100 (17620)

Getting os vibes here

And it makes sense because the ui is best made in rust

But idk

MocaCDeveloper (603)

@Coder100

It is quite low level. But OSDev requires assembly for the bootloader. There is more assembly in the beginning stages of OSDev then there is C. C is just the "render" of the OS graphics and the implementation of the kernel.