1 /* 2 * iocs.h 3 * X680x0 IOCS call interface 4 * 5 * written by Yasha (ITOH Yasufumi) 6 * (based on PD libc 1.1.32 by PROJECT C Library) 7 * public domain 8 * 9 * $NetBSD: iocs.h,v 1.2 1999/11/22 01:14:55 itohy Exp $ 10 */ 11 /* 12 * PROJECT C Library, X68000 PROGRAMMING INTERFACE DEFINITION 13 * -------------------------------------------------------------------- 14 * This file is written by the Project C Library Group, and completely 15 * in public domain. You can freely use, copy, modify, and redistribute 16 * the whole contents, without this notice. 17 * -------------------------------------------------------------------- 18 * Id: iocs.h,v 1.1.1.1 1993/04/18 16:14:27 mura Exp 19 * Id: iocs_p.h,v 1.5 1993/10/06 16:46:12 mura Exp 20 * Id: scsi.h,v 1.3 1994/07/31 17:21:50 mura Exp 21 */ 22 23 #ifndef __X68K_IOCS_H__ 24 #define __X68K_IOCS_H__ 25 26 #include <sys/cdefs.h> 27 28 struct iocs_boxptr { 29 short x1; 30 short y1; 31 short x2; 32 short y2; 33 unsigned short color; 34 unsigned short linestyle; 35 }; 36 37 struct iocs_circleptr { 38 short x; 39 short y; 40 unsigned short radius; 41 unsigned short color; 42 short start; 43 short end; 44 unsigned short ratio; 45 }; 46 47 struct iocs_fillptr { 48 short x1; 49 short y1; 50 short x2; 51 short y2; 52 unsigned short color; 53 }; 54 55 struct iocs_fntbuf { 56 short xl; 57 short yl; 58 unsigned char buffer[72]; 59 }; 60 61 struct iocs_getptr { 62 short x1; 63 short y1; 64 short x2; 65 short y2; 66 void *buf_start; 67 void *buf_end; 68 }; 69 70 struct iocs_lineptr { 71 short x1; 72 short y1; 73 short x2; 74 short y2; 75 unsigned short color; 76 unsigned short linestyle; 77 }; 78 79 struct iocs_paintptr { 80 short x; 81 short y; 82 unsigned short color; 83 void *buf_start; 84 void *buf_end; 85 } __attribute__((__packed__)); 86 87 struct iocs_pointptr { 88 short x; 89 short y; 90 unsigned short color; 91 }; 92 93 struct iocs_psetptr { 94 short x; 95 short y; 96 unsigned short color; 97 }; 98 99 struct iocs_putptr { 100 short x1; 101 short y1; 102 short x2; 103 short y2; 104 __const void *buf_start; 105 __const void *buf_end; 106 }; 107 108 struct iocs_symbolptr { 109 short x1; 110 short y1; 111 unsigned char *string_address; 112 unsigned char mag_x; 113 unsigned char mag_y; 114 unsigned short color; 115 unsigned char font_type; 116 unsigned char angle; 117 } __attribute__((__packed__)); 118 119 struct iocs_regs { 120 int d0; 121 int d1; 122 int d2; 123 int d3; 124 int d4; 125 int d5; 126 int d6; 127 int d7; 128 int a1; 129 int a2; 130 int a3; 131 int a4; 132 int a5; 133 int a6; 134 }; 135 136 struct iocs_chain { 137 void *addr; 138 unsigned short len; 139 } __attribute__((__packed__)); 140 141 struct iocs_chain2 { 142 void *addr; 143 unsigned short len; 144 __const struct iocs_chain2 *next; 145 } __attribute__((__packed__)); 146 147 struct iocs_clipxy { 148 short xs; 149 short ys; 150 short xe; 151 short ye; 152 }; 153 154 struct iocs_patst { 155 short offsetx; 156 short offsety; 157 short shadow[16]; 158 short pattern[16]; 159 }; 160 161 struct iocs_tboxptr { 162 unsigned short vram_page; 163 short x; 164 short y; 165 short x1; 166 short y1; 167 unsigned short line_style; 168 }; 169 170 struct iocs_txfillptr { 171 unsigned short vram_page; 172 short x; 173 short y; 174 short x1; 175 short y1; 176 unsigned short fill_patn; 177 }; 178 179 struct iocs_trevptr { 180 unsigned short vram_page; 181 short x; 182 short y; 183 short x1; 184 short y1; 185 }; 186 187 struct iocs_xlineptr { 188 unsigned short vram_page; 189 short x; 190 short y; 191 short x1; 192 unsigned short line_style; 193 }; 194 195 struct iocs_ylineptr { 196 unsigned short vram_page; 197 short x; 198 short y; 199 short y1; 200 unsigned short line_style; 201 }; 202 203 struct iocs_tlineptr { 204 unsigned short vram_page; 205 short x; 206 short y; 207 short x1; 208 short y1; 209 unsigned short line_style; 210 }; 211 212 /* 213 * for SCSI calls 214 */ 215 216 struct iocs_readcap { 217 unsigned long block; 218 unsigned long size; 219 }; 220 221 struct iocs_inquiry { 222 unsigned char unit; 223 unsigned char info; 224 unsigned char ver; 225 unsigned char reserve; 226 unsigned char size; 227 unsigned char buff[0]; /* actually longer */ 228 }; 229 230 /* 231 * arguments: 232 * dn 32bit arg -> 32bit data reg (input) 233 * an 32bit arg -> 32bit addr reg (input) 234 * odn 32bit arg -> 32bit addr (location to store dn value) 235 * dn=(num) (no C arg) -> load immediate value to the data register 236 * dn=ww two 32bit args -> (LSWord #1) << 16 | (LSWord #2) 237 * dn=bb two 32bit args -> (LSByte #1) << 8 | (LSByte #2) 238 * dn=hsv three args (H S V) -> encode HSV values in dn 239 * opts: 240 * retd2 return value is d2 of IOCS call 241 * err_d0 nonzero d0 is an error -- skip storing values 242 * noret the IOCS call never returns 243 * c_md special for IOCS_CACHE_MD 244 * b_super special for IOCS_B_SUPER 245 * sp_regst special for IOCS_SP_REGST 246 * b_curmod special for IOCS_B_CURMOD 247 * b_curpat special for IOCS_B_CURPAT 248 * b_scroll special for IOCS_B_SCROLL 249 * trap15 special for IOCS_TRAP15 250 */ 251 252 /* (none) ; trap15 */ int IOCS_TRAP15 __P((const struct iocs_regs *, struct iocs_regs *)); 253 /* 00 */ int IOCS_B_KEYINP __P((void)); 254 /* 01 */ int IOCS_B_KEYSNS __P((void)); 255 /* 02 */ int IOCS_B_SFTSNS __P((void)); 256 /* 04 d1 */ int IOCS_BITSNS __P((int)); 257 /* 05 d1 */ void IOCS_SKEYSET __P((int)); 258 /* 0c d1 */ void IOCS_TVCTRL __P((int)); 259 /* 0d d1 d2 */ void IOCS_LEDMOD __P((int, int)); 260 /* 0e d1 d2 */ int IOCS_TGUSEMD __P((int, int)); 261 /* 0f d1=ww a1 */ int IOCS_DEFCHR __P((int, int, const void *)); 262 /* 10 d1 */ int IOCS_CRTMOD __P((int)); 263 /* 11 d1 */ int IOCS_CONTRAST __P((int)); 264 /* 12 d1=hsv */ int __pure IOCS_HSVTORGB __P((int, int, int)) __attribute__((__const__)); 265 /* 13 d1 d2 */ int IOCS_TPALET __P((int, int)); 266 /* 14 d1 d2 */ int IOCS_TPALET2 __P((int, int)); 267 /* 15 d1 */ void IOCS_TCOLOR __P((int)); 268 /* 19 d1=ww a1 */ int IOCS_FNTGET __P((int, int, struct iocs_fntbuf *)); 269 /* 1a d1 d2 a1 */ void IOCS_TEXTGET __P((int, int, struct iocs_fntbuf *)); 270 /* 1b d1 d2 a1 */ void IOCS_TEXTPUT __P((int, int, const struct iocs_fntbuf *)); 271 /* 1c d1 d2 a1 a2 */ void IOCS_CLIPPUT __P((int, int, const struct iocs_fntbuf *, const struct iocs_clipxy *)); 272 /* 1d d1 d2 d3 */ void IOCS_SCROLL __P((int, int, int)); 273 /* 1e */ void IOCS_B_CURON __P((void)); 274 /* 1f */ void IOCS_B_CUROFF __P((void)); 275 /* 20 d1 */ int IOCS_B_PUTC __P((int)); 276 /* 21 a1 */ int IOCS_B_PRINT __P((const char *)); 277 /* 22 d1 */ int IOCS_B_COLOR __P((int)); 278 /* 23 d1 d2 */ int IOCS_B_LOCATE __P((int, int)); 279 /* 24 */ void IOCS_B_DOWN_S __P((void)); 280 /* 25 */ void IOCS_B_UP_S __P((void)); 281 /* 26 d1 */ void IOCS_B_UP __P((int)); 282 /* 27 d1 */ void IOCS_B_DOWN __P((int)); 283 /* 28 d1 */ void IOCS_B_RIGHT __P((int)); 284 /* 29 d1 */ void IOCS_B_LEFT __P((int)); 285 /* 2a d1=0 */ void IOCS_B_CLR_ED __P((void)); 286 /* 2a d1=1 */ void IOCS_B_CLR_ST __P((void)); 287 /* 2a d1=2 */ void IOCS_B_CLR_AL __P((void)); 288 /* 2b d1=0 */ void IOCS_B_ERA_ED __P((void)); 289 /* 2b d1=1 */ void IOCS_B_ERA_ST __P((void)); 290 /* 2b d1=2 */ void IOCS_B_ERA_AL __P((void)); 291 /* 2c d1 */ void IOCS_B_INS __P((int)); 292 /* 2d d1 */ void IOCS_B_DEL __P((int)); 293 /* 2e d1=ww d2=ww ; retd2 */ int IOCS_B_CONSOL __P((int, int, int, int)); 294 /* 2f d1 d2 d3 d4 a1 ; retd2 */ int IOCS_B_PUTMES __P((int, int, int, int, const char *)); 295 /* 30 d1 */ int IOCS_SET232C __P((int)); 296 /* 31 */ int IOCS_LOF232C __P((void)); 297 /* 32 */ int IOCS_INP232C __P((void)); 298 /* 33 */ int IOCS_ISNS232C __P((void)); 299 /* 34 */ int IOCS_OSNS232C __P((void)); 300 /* 35 d1 */ void IOCS_OUT232C __P((int)); 301 /* 3b d1 */ int IOCS_JOYGET __P((int)); 302 /* 3c d1=bb */ int IOCS_INIT_PRN __P((int, int)); 303 /* 3d */ int IOCS_SNSPRN __P((void)); 304 /* 3e d1 */ void IOCS_OUTLPT __P((int)); 305 /* 3f d1 */ void IOCS_OUTPRN __P((int)); 306 /* 40 d1 d2 */ int IOCS_B_SEEK __P((int, int)); 307 /* 41 d1 d2 d3 a1 */ int IOCS_B_VERIFY __P((int, int, int, const void *)); 308 /* 42 d1 d2 d3 a1 */ int IOCS_B_READDI __P((int, int, int, void *)); 309 /* 43 d1 a1 d2 */ int IOCS_B_DSKINI __P((int, const void *, int)); 310 /* 44 d1 */ int IOCS_B_DRVSNS __P((int)); 311 /* 45 d1 d2 d3 a1 */ int IOCS_B_WRITE __P((int, int, int, const void *)); 312 /* 46 d1 d2 d3 a1 */ int IOCS_B_READ __P((int, int, int, void *)); 313 /* 47 d1 */ int IOCS_B_RECALI __P((int)); 314 /* 48 d1 d2 d3 a1 */ int IOCS_B_ASSIGN __P((int, int, int, const void *)); 315 /* 49 d1 d2 d3 a1 */ int IOCS_B_WRITED __P((int, int, int, const void *)); 316 /* 4a d1 d2 od2 */ int IOCS_B_READID __P((int, int, void *)); 317 /* 4b d1 d2 d3 */ int IOCS_B_BADFMT __P((int, int, int)); 318 /* 4c d1 d2 d3 a1 */ int IOCS_B_READDL __P((int, int, int, void *)); 319 /* 4d d1 d2 d3 a1 */ int IOCS_B_FORMAT __P((int, int, int, const void *)); 320 /* 4e d1 d2 */ int IOCS_B_DRVCHK __P((int, int)); 321 /* 4f d1 */ int IOCS_B_EJECT __P((int)); 322 /* 50 d1 */ int IOCS_BINDATEBCD __P((int)); 323 /* 51 d1 */ void IOCS_BINDATESET __P((int)); 324 /* 52 d1 */ int IOCS_TIMEBCD __P((int)); 325 /* 53 d1 */ void IOCS_TIMESET __P((int)); 326 /* 54 */ int IOCS_BINDATEGET __P((void)); 327 /* 55 d1 */ int IOCS_DATEBIN __P((int)); 328 /* 56 */ int IOCS_TIMEGET __P((void)); 329 /* 57 d1 */ int IOCS_TIMEBIN __P((int)); 330 /* 58 a1 */ int IOCS_DATECNV __P((const char *)); 331 /* 59 a1 */ int IOCS_TIMECNV __P((const char *)); 332 /* 5a d1 a1 */ int IOCS_DATEASC __P((int, char *)); 333 /* 5b d1 a1 */ int IOCS_TIMEASC __P((int, char *)); 334 /* 5c d1 a1 */ void IOCS_DAYASC __P((int, char *)); 335 /* 5d d1 */ int IOCS_ALARMMOD __P((int)); 336 /* 5e d1 d2 a1 */ int IOCS_ALARMSET __P((int, int, int)); 337 /* 5f od1 od2 od0 */ int IOCS_ALARMGET __P((int *, int *, int *)); 338 /* 60 a1 d1 d2 */ void IOCS_ADPCMOUT __P((const void *, int, int)); 339 /* 61 a1 d1 d2 */ void IOCS_ADPCMINP __P((void *, int, int)); 340 /* 62 a1 d1 d2 */ void IOCS_ADPCMAOT __P((const struct iocs_chain *, int, int)); 341 /* 63 a1 d1 d2 */ void IOCS_ADPCMAIN __P((const struct iocs_chain *, int, int)); 342 /* 64 a1 d1 */ void IOCS_ADPCMLOT __P((const struct iocs_chain2 *, int)); 343 /* 65 a1 d1 */ void IOCS_ADPCMLIN __P((const struct iocs_chain2 *, int)); 344 /* 66 */ int IOCS_ADPCMSNS __P((void)); 345 /* 67 d1 */ void IOCS_ADPCMMOD __P((int)); 346 /* 68 d1 d2 */ void IOCS_OPMSET __P((int, int)); 347 /* 69 */ int IOCS_OPMSNS __P((void)); 348 /* 6a a1 */ int IOCS_OPMINTST __P((const void *)); 349 /* 6b a1 d1=bb */ int IOCS_TIMERDST __P((const void *, int, int)); 350 /* 6c a1 d1=bb */ int IOCS_VDISPST __P((const void *, int, int)); 351 /* 6d a1 d1 */ int IOCS_CRTCRAS __P((const void *, int)); 352 /* 6e a1 */ int IOCS_HSYNCST __P((const void *)); 353 /* 6f a1 */ int IOCS_PRNINTST __P((const void *)); 354 /* 70 */ void IOCS_MS_INIT __P((void)); 355 /* 71 */ void IOCS_MS_CURON __P((void)); 356 /* 72 */ void IOCS_MS_CUROF __P((void)); 357 /* 73 */ int IOCS_MS_STAT __P((void)); 358 /* 74 */ int IOCS_MS_GETDT __P((void)); 359 /* 75 */ int IOCS_MS_CURGT __P((void)); 360 /* 76 d1=ww */ int IOCS_MS_CURST __P((int, int)); 361 /* 77 d1=ww d2=ww */ int IOCS_MS_LIMIT __P((int, int, int, int)); 362 /* 78 d1 d2 */ int IOCS_MS_OFFTM __P((int, int)); 363 /* 79 d1 d2 */ int IOCS_MS_ONTM __P((int, int)); 364 /* 7a d1 a1 */ void IOCS_MS_PATST __P((int, const struct iocs_patst *)); 365 /* 7b d1 */ void IOCS_MS_SEL __P((int)); 366 /* 7c a1 */ void IOCS_MS_SEL2 __P((const short *)); 367 /* 7d d1 d2=ww */ int IOCS_SKEY_MOD __P((int, int, int)); 368 /* 7e */ void IOCS_DENSNS __P((void)); 369 /* 7f */ int IOCS_ONTIME __P((void)); 370 /* 80 d1 a1 */ int IOCS_B_INTVCS __P((int, int)); 371 /* 81 ; b_super */ int IOCS_B_SUPER __P((int)); 372 /* 82 a1 */ int IOCS_B_BPEEK __P((const void *)); 373 /* 83 a1 */ int IOCS_B_WPEEK __P((const void *)); 374 /* 84 a1 */ int IOCS_B_LPEEK __P((const void *)); 375 /* 85 a1 a2 d1 */ void IOCS_B_MEMSTR __P((const void *, void *, int)); 376 /* 86 a1 d1 */ void IOCS_B_BPOKE __P((void *, int)); 377 /* 87 a1 d1 */ void IOCS_B_WPOKE __P((void *, int)); 378 /* 88 a1 d1 */ void IOCS_B_LPOKE __P((void *, int)); 379 /* 89 a1 a2 d1 */ void IOCS_B_MEMSET __P((void *, const void *, int)); 380 /* 8a a1 a2 d1 d2 */ void IOCS_DMAMOVE __P((void *, void *, int, int)); 381 /* 8b a1 a2 d1 d2 */ void IOCS_DMAMOV_A __P((const struct iocs_chain *, void *, int, int)); 382 /* 8c a1 a2 d1 */ void IOCS_DMAMOV_L __P((const struct iocs_chain2 *, void *, int)); 383 /* 8d */ int IOCS_DMAMODE __P((void)); 384 /* 8e */ int __pure IOCS_BOOTINF __P((void)) __attribute__((__const__)); 385 /* 8f */ int __pure IOCS_ROMVER __P((void)) __attribute__((__const__)); 386 /* 90 */ void IOCS_G_CLR_ON __P((void)); 387 /* 94 d1 d2 */ int IOCS_GPALET __P((int, int)); 388 /* a0 d1 */ int __pure IOCS_SFTJIS __P((int)) __attribute__((__const__)); 389 /* a1 d1 */ int __pure IOCS_JISSFT __P((int)) __attribute__((__const__)); 390 /* a2 d1=ww */ int __pure IOCS_AKCONV __P((int, int)) __attribute__((__const__)); 391 /* a3 d1 a1 a2 */ int IOCS_RMACNV __P((int, char *, char *)); 392 /* a4 a1 */ int IOCS_DAKJOB __P((char *)); 393 /* a5 a1 */ int IOCS_HANJOB __P((char *)); 394 /* ac d1=0 */ int IOCS_MPU_STAT __P((void)); /* ROM 1.3 only */ 395 /* ac d1=1 */ int IOCS_CACHE_ST __P((void)); /* ROM 1.3 only */ 396 /* ac d1=3 d2 ; c_md */ int IOCS_CACHE_MD __P((int)); /* ROM 1.3 only */ 397 /* ad d1 ; b_curmod */ void IOCS_B_CURMOD __P((int)); /*1.3/IOCS.X*/ 398 /* ad d1=2 d2 ; b_curpat */ void IOCS_B_CURPAT __P((int)); /*1.3/IOCS.X*/ 399 /* ad d1=2 d2=0 */ void IOCS_B_CURPAT1 __P((void)); /*1.3/IOCS.X*/ 400 /* ad d1=3 d2 */ void IOCS_B_CURDEF __P((void *)); /*1.3/IOCS.X*/ 401 /* ad d1=16 d2 ; b_scroll */ void IOCS_B_SCROLL __P((int)); /*1.3/IOCS.X*/ 402 /* ae */ void IOCS_OS_CURON __P((void)); 403 /* af */ void IOCS_OS_CUROF __P((void)); 404 /* b0 d1 */ int IOCS_DRAWMODE __P((int)); /* ROM 1.3, IOCS.X */ 405 /* b1 d1 */ int IOCS_APAGE __P((int)); 406 /* b2 d1 */ int IOCS_VPAGE __P((int)); 407 /* b3 d1 d2 d3 */ int IOCS_HOME __P((int, int, int)); 408 /* b4 d1 d2 d3 d4 */ int IOCS_WINDOW __P((int, int, int, int)); 409 /* b5 */ int IOCS_WIPE __P((void)); 410 /* b6 a1 */ int IOCS_PSET __P((const struct iocs_psetptr *)); 411 /* b7 a1 */ int IOCS_POINT __P((const struct iocs_pointptr *)); 412 /* b8 a1 */ int IOCS_LINE __P((const struct iocs_lineptr *)); 413 /* b9 a1 */ int IOCS_BOX __P((const struct iocs_boxptr *)); 414 /* ba a1 */ int IOCS_FILL __P((const struct iocs_fillptr *)); 415 /* bb a1 */ int IOCS_CIRCLE __P((const struct iocs_circleptr *)); 416 /* bc a1 */ int IOCS_PAINT __P((struct iocs_paintptr *)); 417 /* bd a1 */ int IOCS_SYMBOL __P((const struct iocs_symbolptr *)); 418 /* be a1 */ int IOCS_GETGRM __P((struct iocs_getptr *)); 419 /* bf a1 */ int IOCS_PUTGRM __P((const struct iocs_putptr *)); 420 /* c0 */ int IOCS_SP_INIT __P((void)); 421 /* c1 */ int IOCS_SP_ON __P((void)); 422 /* c2 */ void IOCS_SP_OFF __P((void)); 423 /* c3 d1 */ int IOCS_SP_CGCLR __P((int)); 424 /* c4 d1 d2 a1 */ int IOCS_SP_DEFCG __P((int, int, const void *)); 425 /* c5 d1 d2 a1 */ int IOCS_SP_GTPCG __P((int, int, void *)); 426 427 /* 428 * XXX SP_REGST in XC iocslib: args: int, int, int, int, int 429 * (c6 d1 d2 d3 d4 d5) 430 * XC manual and PD libc: args: int, int, int, int, int, int 431 * (c6 d0 d1 d2 d3 d4 d5 ; sp_regst) 432 * we use the latter interface... 433 */ 434 /* c6 d0 d1 d2 d3 d4 d5 ; sp_regst */ int IOCS_SP_REGST __P((int, int, int, int, int, int)); 435 /* c7 d1 od2 od3 od4 od5 ; err_d0 */ int IOCS_SP_REGGT __P((int, int *, int *, int *, int *)); 436 /* c8 d1 d2 d3 */ int IOCS_BGSCRLST __P((int, int, int)); 437 /* c9 d1 od2 od3 ; err_d0 */ int IOCS_BGSCRLGT __P((int, int *, int *)); 438 /* ca d1 d2 d3 */ int IOCS_BGCTRLST __P((int, int, int)); 439 /* cb d1 */ int IOCS_BGCTRLGT __P((int)); 440 /* cc d1 d2 */ int IOCS_BGTEXTCL __P((int, int)); 441 /* cd d1 d2 d3 d4 */ int IOCS_BGTEXTST __P((int, int, int, int)); 442 /* ce d1 d2 d3 */ int IOCS_BGTEXTGT __P((int, int, int)); 443 /* cf d1 d2 d3 */ int IOCS_SPALET __P((int, int, int)); 444 /* d3 a1 */ void IOCS_TXXLINE __P((const struct iocs_xlineptr *)); 445 /* d4 a1 */ void IOCS_TXYLINE __P((const struct iocs_ylineptr *)); 446 /* d5 a1 */ void IOCS_TXLINE __P((struct iocs_tlineptr)); /* 1.3, IOCS.X */ 447 /* d6 a1 */ void IOCS_TXBOX __P((const struct iocs_tboxptr *)); 448 /* d7 a1 */ void IOCS_TXFILL __P((const struct iocs_txfillptr *)); 449 /* d8 a1 */ void IOCS_TXREV __P((const struct iocs_trevptr *)); 450 /* df d1 d2 d3 */ void IOCS_TXRASCPY __P((int, int, int)); 451 /* fd */ void IOCS_ABORTRST __P((void)); 452 /* fe ; noret */ __dead void IOCS_IPLERR __P((void)) __attribute__((__noreturn__)); 453 /* ff ; noret */ __dead void IOCS_ABORTJOB __P((void)) __attribute__((__noreturn__)); 454 455 /* SCSI calls */ 456 /* f5 d1=0 */ void IOCS_S_RESET __P((void)); 457 /* f5 d1=1 d4 */ int IOCS_S_SELECT __P((int)); 458 /* f5 d1=3 d3 a1 */ int IOCS_S_CMDOUT __P((int, void *)); 459 /* f5 d1=4 d3 a1 */ int IOCS_S_DATAIN __P((int, void *)); 460 /* f5 d1=5 d3 a1 */ int IOCS_S_DATAOUT __P((int, void *)); 461 /* f5 d1=6 a1 */ int IOCS_S_STSIN __P((void *)); 462 /* f5 d1=7 a1 */ int IOCS_S_MSGIN __P((void *)); 463 /* f5 d1=8 a1 */ int IOCS_S_MSGOUT __P((void *)); 464 /* f5 d1=9 */ int IOCS_S_PHASE __P((void)); 465 /* f5 d1=32 d3 d4 a1 */ int IOCS_S_INQUIRY __P((int, int, struct iocs_inquiry *)); 466 /* f5 d1=33 d2 d3 d4 d5 a1 */ int IOCS_S_READ __P((int, int, int, int, void *)); 467 /* f5 d1=34 d2 d3 d4 d5 a1 */ int IOCS_S_WRITE __P((int, int, int, int, void *)); 468 /* f5 d1=35 d3 d4 */ int IOCS_S_FORMAT __P((int, int)); 469 /* f5 d1=36 d4 */ int IOCS_S_TESTUNIT __P((int)); 470 /* f5 d1=37 d4 a1 */ int IOCS_S_READCAP __P((int, struct iocs_readcap *)); 471 /* f5 d1=38 d2 d3 d4 d5 a1 */ int IOCS_S_READEXT __P((int, int, int, int, void *)); 472 /* f5 d1=39 d2 d3 d4 d5 a1 */ int IOCS_S_WRITEEXT __P((int, int, int, int, void *)); 473 /* f5 d1=43 d4 */ int IOCS_S_REZEROUNIT __P((int)); 474 /* f5 d1=44 d3 d4 a1 */ int IOCS_S_REQUEST __P((int, int, void *)); 475 /* f5 d1=45 d2 d4 */ int IOCS_S_SEEK __P((int, int)); 476 /* f5 d1=47 d3 d4 */ int IOCS_S_STARTSTOP __P((int, int)); 477 /* f5 d1=49 d3 d4 a1 */ int IOCS_S_REASSIGN __P((int, int, void *)); 478 /* f5 d1=50 d3 d4 */ int IOCS_S_PAMEDIUM __P((int, int)); 479 480 #endif /* __X68K_IOCS_H__ */ 481