2023-10-29 09:25:13 -05:00
|
|
|
// Change and add to this as you see fit.
|
|
|
|
// The STD and even syscalls are still in flux.
|
|
|
|
// Do your best to avoid adding bad design.
|
|
|
|
// Use std abstractions if they exist like logging functionality
|
|
|
|
import "repbuild/hblib/std" as std;
|
|
|
|
|
|
|
|
// Define main
|
|
|
|
fn main(){
|
2023-11-02 14:08:48 -05:00
|
|
|
std::Info("Starting the limine framebuffer driver.");
|
|
|
|
|
|
|
|
li8(r1, 0x7);
|
|
|
|
li8(r2, 0);
|
|
|
|
li64(r3, 1000);
|
|
|
|
|
|
|
|
label("start");
|
2023-10-29 09:25:13 -05:00
|
|
|
// store from a register to a local address
|
2023-11-02 14:08:48 -05:00
|
|
|
st(r1, r2, 0xFFFF8000C0000000, 1);
|
2023-11-02 14:12:10 -05:00
|
|
|
// addi64(r2, r2, 1);
|
2023-11-02 14:08:48 -05:00
|
|
|
|
|
|
|
jltu(r2, r3, "start");
|
2023-10-29 09:25:13 -05:00
|
|
|
|
2023-11-02 14:08:48 -05:00
|
|
|
// Terminate execution.
|
|
|
|
tx();
|
|
|
|
}
|
2023-10-29 09:25:13 -05:00
|
|
|
|
2023-11-02 14:08:48 -05:00
|
|
|
main();
|