_realentry:
la sp, stack
li a2, 1024*4 #definim tamany de pagina a 4096
add sp, sp, a2 #el punter apunta al bottom del stack
li t0, 0x888
csrw mstatus, t0
li a0, 0x0 # desactivem la paginacio per ara
csrw satp, a0
li a0, 0x3fffffffffffff //aixo vol dir totes les direcions de memoria posibles
csrw pmpaddr0, a0 //escribim pq formin part del grup 0
li a0, 0x0f //li donem els permisos f aka NAPOT RWX
csrw pmpcfg0, a0
la t0, start_kernel
csrw mepc, t0 #li diem on vol que salti al mret
li t0, 0x102
csrw sstatus, t0
#definim la delegacio d'interrupcions i excepcions ara pq despres no es poden tocar els registres m
#li t0, 0x00 #1010 0 MTIE = 0 #JJ DISABLE INTERRUPTS
li t0, 0x80 #1010 0 MTIE = 1
csrw mie, t0
li a0, 0xffff
csrw mideleg, a0
li a0, 0xffff
csrw medeleg, a0
li t0, 0x222
csrw sie,t0
la t1, interrupt_handler
csrw stvec, t1
la t0, timer_handler
csrw mtvec, t0
li t0, 1000000
li t1, 0x2004000 #mtimecmp address
sd t0, 0(t1)
mret
.end