twilco / twilco.github.io

My blog — https://twilco.github.io
11 stars 2 forks source link

RISC-V from scratch 4: Creating a function prologue for our UART driver (2 / 3) #13

Open utterances-bot opened 4 years ago

utterances-bot commented 4 years ago

RISC-V from scratch 4: Creating a function prologue for our UART driver (2 / 3)

A post continuing implementation of an NS16550A UART driver in RISC-V assembly. Function prologues are explained in depth and implemented for uart_get_char and uart_put_char, diagramming changes to the stack and registers instruction-by-instruction. Topics such as ABIs, calling conventions, stack frames, and more are also discussed.

https://twilco.github.io/riscv-from-scratch/2019/07/28/riscv-from-scratch-4.html

ppykalo commented 4 years ago

Great series. Can't wait to read next post :) Is there any chance you would cover RISC-V interrupt controllers in some post?

twilco commented 4 years ago

Hey @ppykalo — so glad you enjoyed it! Interrupt controllers do seem like a fun topic to explore, so I'd say there's a good chance I cover them at some point.

sakuv3 commented 4 years ago

Man you deserve alot of credits for all this work! it helped me ALOT in understanding riscv assembly and the use in a virtual machine ! Thanks !

twilco commented 4 years ago

Thanks for the kind words, @sakuv3! Glad you found it useful.

zeeshanrafique23 commented 3 years ago

Great series of articles, waiting for the next article...

tony2037 commented 3 years ago

can't wait to see the next post!!!

hyperion009 commented 1 year ago

when to post the next one?

RamyTheEngineer commented 7 months ago

Hello, thank you for this lesson. However, we never specified in RAM where the stack is located inside the linker script. Any idea on the how does this work without doing so?