📄 osi.h
字号:
/* * Creation Date: <1999/03/18 03:19:43 samuel> * Time-stamp: <2003/12/26 16:58:19 samuel> * * <os_interface.h> * * This file includes definitions for drivers * running in the "emulated" OS. (Mainly the 'sc' * mechanism of communicating) * * Copyright (C) 1999, 2000, 2001, 2002, 2003 Samuel Rydh (samuel@ibrium.se) * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation * */#ifndef _H_OSI#define _H_OSI/* Magic register values loaded into r3 and r4 before the 'sc' assembly instruction */#define OSI_SC_MAGIC_R3 0x113724FA#define OSI_SC_MAGIC_R4 0x77810F9B/************************************************************************//* Selectors (passed in r5) *//************************************************************************/#define OSI_CALL_AVAILABLE 0#define OSI_DEBUGGER 1 /* enter debugger *//* obsolete OSI_LOG_STR 3 */#define OSI_CMOUNT_DRV_VOL 4 /* conditionally mount driver volume *//* obsolete OSI_SCSI_xxx 5-6 */#define OSI_GET_GMT_TIME 7#define OSI_MOUSE_CNTRL 8#define OSI_GET_LOCALTIME 9 /* return time in secs from 01/01/04 */#define OSI_ENET_OPEN 10#define OSI_ENET_CLOSE 11#define OSI_ENET_GET_ADDR 12#define OSI_ENET_GET_STATUS 13#define OSI_ENET_CONTROL 14#define OSI_ENET_ADD_MULTI 16#define OSI_ENET_DEL_MULTI 17#define OSI_ENET_GET_PACKET 18#define OSI_ENET_SEND_PACKET 19#define OSI_OF_INTERFACE 20#define OSI_OF_TRAP 21#define OSI_OF_RTAS 22#define OSI_SCSI_CNTRL 23#define OSI_SCSI_SUBMIT 24#define OSI_SCSI_ACK 25#define OSI_GET_MOUSE 26 /* -- r3 status, r4-r8 mouse data */#define OSI_ACK_MOUSE_IRQ 27 /* -- int */#define OSI_SET_VMODE 28 /* modeID, depth -- error */#define OSI_GET_VMODE_INFO 29 /* mode, depth -- r3 status, r4-r9 pb */#define OSI_GET_MOUSE_DPI 30 /* -- mouse_dpi */#define OSI_SET_VIDEO_POWER 31#define OSI_GET_FB_INFO 32 /* void -- r3 status, r4-r8 video data */#define OSI_SOUND_WRITE 33/* #define OSI_SOUND_FORMAT 34 */#define OSI_SOUND_SET_VOLUME 35#define OSI_SOUND_CNTL 36/* obsolete OSI_SOUND call 37 */#define OSI_VIDEO_ACK_IRQ 38#define OSI_VIDEO_CNTRL 39#define OSI_SOUND_IRQ_ACK 40#define OSI_SOUND_START_STOP 41#define OSI_REGISTER_IRQ 42 /* reg_property[0] appl_int -- irq_cookie *//* obsolete OSI_IRQ 43-46 */#define OSI_LOG_PUTC 47 /* char -- */#define OSI_KBD_CNTRL 50#define OSI_GET_ADB_KEY 51 /* -- adb_keycode (keycode | keycode_id in r4) */#define OSI_WRITE_NVRAM_BYTE 52 /* offs, byte -- */#define OSI_READ_NVRAM_BYTE 53 /* offs -- byte */#define OSI_EXIT 54#define OSI_KEYCODE_TO_ADB 55 /* (keycode | keycode_id) -- adb_keycode */#define OSI_MAP_ADB_KEY 56 /* keycode, adbcode -- */#define OSI_SAVE_KEYMAPPING 57 /* -- */#define OSI_USLEEP 58 /* usecs -- */#define OSI_SET_COLOR 59 /* index value -- */#define OSI_PIC_MASK_IRQ 60 /* irq -- */#define OSI_PIC_UNMASK_IRQ 61 /* irq -- */#define OSI_PIC_ACK_IRQ 62 /* irq mask_flag -- */#define OSI_PIC_GET_ACTIVE_IRQ 63#define OSI_GET_COLOR 64 /* index -- value *//* 65-67 old ablk implementation */#define OSI_IRQTEST 65#define OSI_ENET2_OPEN 68#define OSI_ENET2_CLOSE 69#define OSI_ENET2_CNTRL 70#define OSI_ENET2_RING_SETUP 71#define OSI_ENET2_KICK 72#define OSI_ENET2_GET_HWADDR 73#define OSI_ENET2_IRQ_ACK 74#define OSI_PROM_IFACE 76#define kPromClose 0#define kPromPeer 1#define kPromChild 2#define kPromParent 3#define kPromPackageToPath 4#define kPromGetPropLen 5#define kPromGetProp 6#define kPromNextProp 7#define kPromSetProp 8#define kPromChangePHandle 9#define OSI_PROM_PATH_IFACE 77#define kPromCreateNode 16#define kPromFindDevice 17#define OSI_BOOT_HELPER 78#define kBootHAscii2Unicode 32#define kBootHUnicode2Ascii 33#define kBootHGetStrResInd 34 /* key, buf, len -- buf */#define kBootHGetRAMSize 35 /* -- ramsize */#define OSI_ABLK_RING_SETUP 79#define OSI_ABLK_CNTRL 80#define OSI_ABLK_DISK_INFO 81#define OSI_ABLK_KICK 82#define OSI_ABLK_IRQ_ACK 83#define OSI_ABLK_SYNC_READ 84#define OSI_ABLK_SYNC_WRITE 85#define OSI_ABLK_BLESS_DISK 86#define OSI_EMUACCEL 89 /* EMULATE_xxx, nip -- index */#define OSI_MAPIN_MREGS 90 /* mphys */#define OSI_NVRAM_SIZE 91#define OSI_MTICKS_TO_USECS 92#define OSI_USECS_TO_MTICKS 93/* obsolete OSI_BLK 94-95 */#define OSI_PSEUDO_FS 96#define kPseudoFSOpen 1#define kPseudoFSClose 2#define kPseudoFSGetSize 3#define kPseudoFSRead 4#define kPseudoFSIndex2Name 5#define OSI_TTY_PUTC 97#define OSI_TTY_GETC 98#define OSI_TTY_IRQ_ACK 99#define NUM_OSI_SELECTORS 100 /* remember to increase this... */#endif /* _H_OSI */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -