Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/0xNikilite/oboromi
/ functions
Functions
100 in github.com/0xNikilite/oboromi
⨍
Functions
100
◇
Types & classes
13
↓ 23 callers
Method
write_byte
(&mut self, vaddr: usize, val: u8)
oboromi-core/src/memory/memory.rs:114
↓ 16 callers
Method
write_u32
(&mut self, addr: usize, value: u32)
oboromi-core/src/memory/memory.rs:159
↓ 11 callers
Method
step
One fetch-decode-execute cycle.
oboromi-core/src/cpu/old_cpu.rs:73
↓ 7 callers
Method
read_byte
(&mut self, vaddr: usize)
oboromi-core/src/memory/memory.rs:96
↓ 6 callers
Method
read_u32
(&mut self, addr: usize)
oboromi-core/src/memory/memory.rs:130
↓ 5 callers
Method
disasm_reg_op
(&self, opcode: &str, instr: u32)
oboromi-core/src/cpu/old_cpu.rs:166
↓ 5 callers
Method
run
Run the core until halt or end of code
oboromi-core/src/cpu/dynarmic_interface.rs:35
↓ 5 callers
Method
set_pc
Write PC
oboromi-core/src/cpu/dynarmic_interface.rs:83
↓ 5 callers
Method
set_sp
Write SP
oboromi-core/src/cpu/dynarmic_interface.rs:71
↓ 5 callers
Method
translate
Translate virtual address to physical address with permissions
oboromi-core/src/mmu/mmu.rs:20
↓ 4 callers
Function
brk
(imm16: u16)
oboromi-core/src/tests/run.rs:85
↓ 4 callers
Method
get_pc
Read PC
oboromi-core/src/cpu/dynarmic_interface.rs:77
↓ 4 callers
Function
get_test_timeout
Get platform-specific timeout for test execution macOS requires longer timeout due to JIT cold start overhead
oboromi-core/src/tests/run.rs:10
↓ 4 callers
Method
set_x
Write register Xn
oboromi-core/src/cpu/dynarmic_interface.rs:59
↓ 3 callers
Method
clone
(&self)
oboromi-core/src/cpu/dynarmic_interface.rs:103
↓ 2 callers
Method
clear_exclusive
(&self)
oboromi-core/src/memory/memory.rs:41
↓ 2 callers
Method
mark_exclusive
(&self, addr: u64, size: u64)
oboromi-core/src/memory/memory.rs:29
↓ 2 callers
Function
nop
()
oboromi-core/src/tests/run.rs:81
↓ 2 callers
Method
read_u64
(&mut self, addr: usize)
oboromi-core/src/memory/memory.rs:183
↓ 2 callers
Method
set_entry
Set a page table entry with permissions
oboromi-core/src/mmu/paging.rs:31
↓ 2 callers
Method
set_nz
Update Negative and Zero flags.
oboromi-core/src/cpu/old_cpu.rs:321
↓ 2 callers
Method
write_u64
(&mut self, addr: usize, value: u64)
oboromi-core/src/memory/memory.rs:189
↓ 1 callers
Method
add_entry
Add new entry to TLB with permissions (FIFO replacement)
oboromi-core/src/mmu/tlb.rs:57
↓ 1 callers
Method
check_exclusive
(&self, addr: u64, size: u64)
oboromi-core/src/memory/memory.rs:47
↓ 1 callers
Function
create_terminal_wrapper
()
oboromi-core/build.rs:43
↓ 1 callers
Method
decode_and_execute
Decode and execute one instruction.
oboromi-core/src/cpu/old_cpu.rs:174
↓ 1 callers
Method
disassemble
(&self, instr: u32)
oboromi-core/src/cpu/old_cpu.rs:96
↓ 1 callers
Method
exclusive_write_u8
(&mut self, addr: u64, value: u8)
oboromi-core/src/memory/memory.rs:307
↓ 1 callers
Method
exec_addi_subi
(&mut self, opcode: u32)
oboromi-core/src/cpu/old_cpu.rs:192
↓ 1 callers
Method
exec_branch_ret
(&mut self, opcode: u32)
oboromi-core/src/cpu/old_cpu.rs:301
↓ 1 callers
Method
exec_cmp_tst
(&mut self, opcode: u32)
oboromi-core/src/cpu/old_cpu.rs:249
↓ 1 callers
Method
exec_ldr_str
(&mut self, opcode: u32)
oboromi-core/src/cpu/old_cpu.rs:276
↓ 1 callers
Method
exec_reg_ops
(&mut self, opcode: u32)
oboromi-core/src/cpu/old_cpu.rs:219
↓ 1 callers
Method
fetch
Fetch the 32-bit opcode at current PC.
oboromi-core/src/cpu/old_cpu.rs:68
↓ 1 callers
Method
invalidate
Invalidate TLB entry for a virtual address
oboromi-core/src/mmu/tlb.rs:74
↓ 1 callers
Method
lookup
Lookup virtual address in TLB with permissions
oboromi-core/src/mmu/tlb.rs:41
↓ 1 callers
Method
map_page
Map a single page from virtual to physical address with permissions
oboromi-core/src/mmu/mmu.rs:49
↓ 1 callers
Function
patch_boost_for_macos
()
oboromi-core/build.rs:6
↓ 1 callers
Function
patch_terminal_h
()
oboromi-core/build.rs:92
↓ 1 callers
Function
run_gui
()
oboromi-gui/src/main.rs:29
↓ 1 callers
Function
run_tests
()
oboromi-core/src/tests/run.rs:385
↓ 1 callers
Method
set_identity_mapping
Set identity mapping for a memory range with permissions
oboromi-core/src/mmu/mmu.rs:36
↓ 1 callers
Function
setup_logger
()
oboromi-gui/src/main.rs:12
↓ 1 callers
Method
trace_instruction
(&self, address: u64, instr: u32)
oboromi-core/src/cpu/old_cpu.rs:89
↓ 1 callers
Method
walk
Perform page table walk with permissions
oboromi-core/src/mmu/paging.rs:18
↓ 1 callers
Function
warmup_jit
Warm up the JIT compiler by pre-compiling basic instructions This prevents timeout issues on slower hardware during actual tests No timeout is enforce
oboromi-core/src/tests/run.rs:93
Function
add_imm
(rd: u8, rn: u8, imm12: u16)
oboromi-core/src/tests/run.rs:56
Function
add_reg
(rd: u8, rn: u8, rm: u8)
oboromi-core/src/tests/run.rs:64
Method
as_ptr
Get pointer to page table data
oboromi-core/src/mmu/paging.rs:40
Method
atomic_add_u32
(&mut self, addr: usize, value: u32)
oboromi-core/src/memory/memory.rs:293
Method
atomic_compare_exchange_u32
(&mut self, addr: usize, expected: u32, new: u32)
oboromi-core/src/memory/memory.rs:285
Method
atomic_compare_exchange_u8
(&mut self, addr: usize, expected: u8, new: u8)
oboromi-core/src/memory/memory.rs:277
Function
branch
(offset: i32)
oboromi-core/src/tests/run.rs:72
Function
decode_arm64_fields
(opcode: u32)
oboromi-gui/src/main.rs:4
Method
default
()
oboromi-gui/src/gui/gui.rs:11
Function
draw_frame
GPU module (WIP)
oboromi-core/src/gpu/mod.rs:2
Method
drop
(&mut self)
oboromi-core/src/cpu/dynarmic_interface.rs:96
Method
fail
(name: &str, message: &str, duration: Duration)
oboromi-core/src/tests/run.rs:36
Method
get_sp
Read SP
oboromi-core/src/cpu/dynarmic_interface.rs:65
Method
get_thread_id
()
oboromi-core/src/memory/memory.rs:57
Method
get_x
Read register Xn
oboromi-core/src/cpu/dynarmic_interface.rs:53
Method
halt
Halt execution
oboromi-core/src/cpu/dynarmic_interface.rs:47
Function
main
()
build.rs:5
Function
main
()
oboromi-core/build.rs:125
Function
main
()
oboromi-gui/src/main.rs:44
Method
map_range
(&mut self, vaddr: usize, size: usize, readable: bool, writable: bool)
oboromi-core/src/memory/memory.rs:81
Function
mount
File-system module (WIP)
oboromi-core/src/fs/mod.rs:2
Function
mov_reg
(rd: u8, rm: u8)
oboromi-core/src/tests/run.rs:68
Method
new
()
oboromi-core/src/memory/memory.rs:21
Method
new
Create a new Dynarmic instance linked to your Rust Memory
oboromi-core/src/cpu/dynarmic_interface.rs:15
Method
new
Create a new CPU with `mem_size` bytes of RAM.
oboromi-core/src/cpu/old_cpu.rs:55
Method
new
Create a new MMU with empty TLB and page table
oboromi-core/src/mmu/mmu.rs:12
Method
new
Create new empty page table
oboromi-core/src/mmu/paging.rs:11
Method
new
Create new TLB entry with permissions
oboromi-core/src/mmu/tlb.rs:13
Method
oboromi_memory_clear_exclusive
(mem_ptr: *mut Memory)
oboromi-core/src/memory/memory.rs:329
Method
oboromi_memory_mark_exclusive
(mem_ptr: *mut Memory, addr: u64, size: u64)
oboromi-core/src/memory/memory.rs:318
Method
oboromi_memory_read_exclusive_u8
(mem_ptr: *mut Memory, addr: u64, value: *mut u8)
oboromi-core/src/memory/memory.rs:338
Method
oboromi_memory_read_u16
(mem_ptr: *mut Memory, addr: u64)
oboromi-core/src/memory/memory.rs:215
Method
oboromi_memory_read_u32
(mem_ptr: *mut Memory, addr: u64)
oboromi-core/src/memory/memory.rs:238
Method
oboromi_memory_read_u64
(mem_ptr: *mut Memory, addr: u64)
oboromi-core/src/memory/memory.rs:258
Method
oboromi_memory_read_u8
(mem_ptr: *mut Memory, addr: u64)
oboromi-core/src/memory/memory.rs:195
Method
oboromi_memory_write_exclusive_u8
(mem_ptr: *mut Memory, addr: u64, value: u8)
oboromi-core/src/memory/memory.rs:354
Method
oboromi_memory_write_u16
(mem_ptr: *mut Memory, addr: u64, value: u16)
oboromi-core/src/memory/memory.rs:228
Method
oboromi_memory_write_u32
(mem_ptr: *mut Memory, addr: u64, value: u32)
oboromi-core/src/memory/memory.rs:249
Method
oboromi_memory_write_u64
(mem_ptr: *mut Memory, addr: u64, value: u64)
oboromi-core/src/memory/memory.rs:269
Method
oboromi_memory_write_u8
(mem_ptr: *mut Memory, addr: u64, value: u8)
oboromi-core/src/memory/memory.rs:206
Method
pass
(name: &str, duration: Duration)
oboromi-core/src/tests/run.rs:27
Function
poll
Input handling (WIP)
oboromi-core/src/input/mod.rs:2
Method
reset
Reset registers, PC and flags (memory untouched).
oboromi-core/src/cpu/old_cpu.rs:63
Function
ret
()
oboromi-core/src/tests/run.rs:77
Function
run_control_flow_test
(name: &str, instructions: &[u32], target_addr: u64, setup: F, verify: V)
oboromi-core/src/tests/run.rs:199
Function
run_instruction_test
(name: &str, instructions: &[u32], setup: F, verify: V)
oboromi-core/src/tests/run.rs:138
Function
run_multi_instruction_test
(name: &str, instructions: &[u32], setup: F, verify: V)
oboromi-core/src/tests/run.rs:324
Function
run_ret_test
(name: &str, instructions: &[u32], setup: F, verify: V)
oboromi-core/src/tests/run.rs:261
Function
run_tests
()
oboromi-core/src/tests/old_run.rs:4
Method
step
Execute a single step
oboromi-core/src/cpu/dynarmic_interface.rs:41
Function
sub_imm
(rd: u8, rn: u8, imm12: u16)
oboromi-core/src/tests/run.rs:60
Method
timeout
(name: &str, duration: Duration)
oboromi-core/src/tests/run.rs:45
Method
update
(&mut self, ctx: &egui::Context, _frame: &mut eframe::Frame)
oboromi-gui/src/gui/gui.rs:20
Method
write_u32
Write a 32-bit value to emulated memory
oboromi-core/src/cpu/dynarmic_interface.rs:89