Changes

Jump to: navigation, search

IOS/Syscalls

386 bytes added, 18:40, 11 March 2009
more syscalls documented
| 9 || thread_set_priority
|-
| a || message_queue_create(void *ptr, int n_msgs)
|-
| b || message_queue_destroy(int queue)
|-
| c || message_queue_send
| d || message_queue_send_now
|-
| e || message_queue_receive(int queue, void *message, int flags)
|-
| f || RegisterEventHandler(int device, int queue, int message)
|-
| 10 || UnregisterEventHandler
| 15 || timer_now
|-
| 16 || heap_create(void *ptr, int size)
|-
| 17 || heap_destroy(int heap)
|-
| 18 || heap_alloc(int heap, int size)
|-
| 19 || heap_alloc_aligned(int heap, int size, int align)
|-
| 1a || heap_free(void *ptr)
|-
| 1b || BOOL device_register(char* device, u32 messagequeue) || Registers device to the device tree, so it can be opened (from Starlet and PPC) || Returns 0 on success, else error
| 1c || u32 device_open(char* device, int mode) || Similar to IOS_Open on PPC, except now internal to the IOS system || Returns an fd
|-
| 1d || device_close(int fd)
|-
| 1e || device_read
| 32 || software_irq_18 || seems to enable hardware interrupts for device nr 18
|-
| 33 || software_IRQ_7_or_8(id) || seems to enable hardware interrupts for device nr 7 if id==0, else device nr 8(sdhc)
|-
| 34 || software_IRQ(id) || seems to enable enables hardware interrupts for device nr. id; check caller PID
|-
| 35 || access_iobuf_pool(arg1) || no-op in IOS-35, arg1=0 || returns always 0
| 3f || void sync_before_read(u32 address, u32 size) || Invalidates dcache, and something (probably related to flushing memory)
|-
| 40 || sync_after_write(u32 address, u32 size) || Flushes dcache and does magic bullshit (aka magic AHB operations)
|-
| 41 || ppc_boot
| 4e || poke_E0_1
|-
| 4f || virt_to_phys(void *ptr)
|-
| 50 || syscall_50
| 6a || es_syscall_6a
|-
| 6b || hmacaes_decrypt(int keyid, void *iv, void *in, int len, void *out)
|-
| 6c || hmac_async

Navigation menu