perjantai 21. helmikuuta 2025

My Favourite Project

 

For a few weeks I have been working on a Chip8 emulator based on Rust by following an open source book on it. The main reason I’ve been writing it has been to get back into coding in Rust. Having written code in C for my university course and starting another course with a focus on Java, I really started to want to get back into writing in Rust. I’ve also been interested in emulators but never knew quite where to start learning about them, so I think that getting hands-on experience with making one will be invaluable.

As I said before, it isn’t really my own project. I’m just following detailed instructions on how to write code for a certain task so I will not be publishing my code. The main goal for me with this project is to learn more. I may show it to my friends but beyond that it won’t particularly affect anyone else.

Other than learning about emulators and Rust, this project has been teaching me what goes on between hardware and software which you’ll know interests me a lot if you read my last blog post. Some new concepts such as tick (smallest unit of time that a computer can measure; roughly 1 100,000,000th of a second), fetch (CPU retrieving instructions from memory and bringing it back to the CPU) and push and pop (adding and removing the most recently added element from a collection, respectively). Besides these concepts, I’ve also been writing code with hexadecimals which has been somewhat confusing but I’m sure I’ll get the hang of it eventually (hopefully).

It has certainly been difficult though. Writing the code in the book into my IDE is easy enough but actually understanding what I’m writing is difficult. The book can be pretty unclear about what each thing is doing at times. This can be a good thing though, you get to look these things up yourself which might be helpful for learning them more thoroughly.

I intend to complete this project and finish this book and hopefully play some pong by the end of it. So far I can recommend it to anyone interested in learning Rust, about emulators, operating systems or for getting hands-on knowledge about computers in general. To me it has always been much easier to learn things by getting real experience with it rather than learning about the theory of how somethings works. Theory is still highly important and can save you quite a bit of time if you understand the concepts.

Ei kommentteja:

Lähetä kommentti

Language learning tips and my language learning journey going forward

  For me the best way to learn any language is to use. This includes both input (movies, TV, books, etc.) and output (written and spoken co...