amiga_sys/
bindings.rs

1use core::arch::asm;
2
3/// A function pointer with the Amiga calling convention
4///
5/// Parameters and the return value are passed in the CPU registers (this is not the "C"
6/// calling convention). The ROM kernel manuals have documented which registers to use.
7pub type FPTR = usize;
8
9/* automatically modified by the amiga-sys tools */
10/* automatically generated by rust-bindgen 0.72.0 */
11
12#[repr(C)]
13#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
14pub struct __BindgenBitfieldUnit<Storage> {
15    storage: Storage,
16}
17impl<Storage> __BindgenBitfieldUnit<Storage> {
18    #[inline]
19    pub const fn new(storage: Storage) -> Self {
20        Self { storage }
21    }
22}
23impl<Storage> __BindgenBitfieldUnit<Storage>
24where
25    Storage: AsRef<[u8]> + AsMut<[u8]>,
26{
27    #[inline]
28    fn extract_bit(byte: u8, index: usize) -> bool {
29        let bit_index = if cfg!(target_endian = "big") {
30            7 - (index % 8)
31        } else {
32            index % 8
33        };
34        let mask = 1 << bit_index;
35        byte & mask == mask
36    }
37    #[inline]
38    pub fn get_bit(&self, index: usize) -> bool {
39        debug_assert!(index / 8 < self.storage.as_ref().len());
40        let byte_index = index / 8;
41        let byte = self.storage.as_ref()[byte_index];
42        Self::extract_bit(byte, index)
43    }
44    #[inline]
45    pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool {
46        debug_assert!(index / 8 < core::mem::size_of::<Storage>());
47        let byte_index = index / 8;
48        let byte = unsafe {
49            *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize)
50        };
51        Self::extract_bit(byte, index)
52    }
53    #[inline]
54    fn change_bit(byte: u8, index: usize, val: bool) -> u8 {
55        let bit_index = if cfg!(target_endian = "big") {
56            7 - (index % 8)
57        } else {
58            index % 8
59        };
60        let mask = 1 << bit_index;
61        if val { byte | mask } else { byte & !mask }
62    }
63    #[inline]
64    pub fn set_bit(&mut self, index: usize, val: bool) {
65        debug_assert!(index / 8 < self.storage.as_ref().len());
66        let byte_index = index / 8;
67        let byte = &mut self.storage.as_mut()[byte_index];
68        *byte = Self::change_bit(*byte, index, val);
69    }
70    #[inline]
71    pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) {
72        debug_assert!(index / 8 < core::mem::size_of::<Storage>());
73        let byte_index = index / 8;
74        let byte = unsafe {
75            (core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize)
76        };
77        unsafe { *byte = Self::change_bit(*byte, index, val) };
78    }
79    #[inline]
80    pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
81        debug_assert!(bit_width <= 64);
82        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
83        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
84        let mut val = 0;
85        for i in 0..(bit_width as usize) {
86            if self.get_bit(i + bit_offset) {
87                let index = if cfg!(target_endian = "big") {
88                    bit_width as usize - 1 - i
89                } else {
90                    i
91                };
92                val |= 1 << index;
93            }
94        }
95        val
96    }
97    #[inline]
98    pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 {
99        debug_assert!(bit_width <= 64);
100        debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
101        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
102        let mut val = 0;
103        for i in 0..(bit_width as usize) {
104            if unsafe { Self::raw_get_bit(this, i + bit_offset) } {
105                let index = if cfg!(target_endian = "big") {
106                    bit_width as usize - 1 - i
107                } else {
108                    i
109                };
110                val |= 1 << index;
111            }
112        }
113        val
114    }
115    #[inline]
116    pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
117        debug_assert!(bit_width <= 64);
118        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
119        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
120        for i in 0..(bit_width as usize) {
121            let mask = 1 << i;
122            let val_bit_is_set = val & mask == mask;
123            let index = if cfg!(target_endian = "big") {
124                bit_width as usize - 1 - i
125            } else {
126                i
127            };
128            self.set_bit(index + bit_offset, val_bit_is_set);
129        }
130    }
131    #[inline]
132    pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
133        debug_assert!(bit_width <= 64);
134        debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
135        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
136        for i in 0..(bit_width as usize) {
137            let mask = 1 << i;
138            let val_bit_is_set = val & mask == mask;
139            let index = if cfg!(target_endian = "big") {
140                bit_width as usize - 1 - i
141            } else {
142                i
143            };
144            unsafe { Self::raw_set_bit(this, index + bit_offset, val_bit_is_set) };
145        }
146    }
147}
148#[repr(C)]
149#[derive(Default)]
150pub struct __IncompleteArrayField<T>(::core::marker::PhantomData<T>, [T; 0]);
151impl<T> __IncompleteArrayField<T> {
152    #[inline]
153    pub const fn new() -> Self {
154        __IncompleteArrayField(::core::marker::PhantomData, [])
155    }
156    #[inline]
157    pub fn as_ptr(&self) -> *const T {
158        self as *const _ as *const T
159    }
160    #[inline]
161    pub fn as_mut_ptr(&mut self) -> *mut T {
162        self as *mut _ as *mut T
163    }
164    #[inline]
165    pub unsafe fn as_slice(&self, len: usize) -> &[T] {
166        unsafe { ::core::slice::from_raw_parts(self.as_ptr(), len) }
167    }
168    #[inline]
169    pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
170        unsafe { ::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) }
171    }
172}
173impl<T> ::core::fmt::Debug for __IncompleteArrayField<T> {
174    fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
175        fmt.write_str("__IncompleteArrayField")
176    }
177}
178pub const TRUE: u32 = 1;
179pub const FALSE: u32 = 0;
180pub const NULL: u32 = 0;
181pub const BYTEMASK: u32 = 255;
182pub const NT_UNKNOWN: u32 = 0;
183pub const NT_TASK: u32 = 1;
184pub const NT_INTERRUPT: u32 = 2;
185pub const NT_DEVICE: u32 = 3;
186pub const NT_MSGPORT: u32 = 4;
187pub const NT_MESSAGE: u32 = 5;
188pub const NT_FREEMSG: u32 = 6;
189pub const NT_REPLYMSG: u32 = 7;
190pub const NT_RESOURCE: u32 = 8;
191pub const NT_LIBRARY: u32 = 9;
192pub const NT_MEMORY: u32 = 10;
193pub const NT_SOFTINT: u32 = 11;
194pub const NT_FONT: u32 = 12;
195pub const NT_PROCESS: u32 = 13;
196pub const NT_SEMAPHORE: u32 = 14;
197pub const NT_SIGNALSEM: u32 = 15;
198pub const NT_BOOTNODE: u32 = 16;
199pub const NT_KICKMEM: u32 = 17;
200pub const NT_GRAPHICS: u32 = 18;
201pub const NT_DEATHMESSAGE: u32 = 19;
202pub const NT_USER: u32 = 254;
203pub const NT_EXTENDED: u32 = 255;
204pub const ACPU_BusErr: u32 = 2147483650;
205pub const ACPU_AddressErr: u32 = 2147483651;
206pub const ACPU_InstErr: u32 = 2147483652;
207pub const ACPU_DivZero: u32 = 2147483653;
208pub const ACPU_CHK: u32 = 2147483654;
209pub const ACPU_TRAPV: u32 = 2147483655;
210pub const ACPU_PrivErr: u32 = 2147483656;
211pub const ACPU_Trace: u32 = 2147483657;
212pub const ACPU_LineA: u32 = 2147483658;
213pub const ACPU_LineF: u32 = 2147483659;
214pub const ACPU_Format: u32 = 2147483662;
215pub const ACPU_Spurious: u32 = 2147483672;
216pub const ACPU_AutoVec1: u32 = 2147483673;
217pub const ACPU_AutoVec2: u32 = 2147483674;
218pub const ACPU_AutoVec3: u32 = 2147483675;
219pub const ACPU_AutoVec4: u32 = 2147483676;
220pub const ACPU_AutoVec5: u32 = 2147483677;
221pub const ACPU_AutoVec6: u32 = 2147483678;
222pub const ACPU_AutoVec7: u32 = 2147483679;
223pub const AT_DeadEnd: u32 = 2147483648;
224pub const AT_Recovery: u32 = 0;
225pub const AG_NoMemory: u32 = 65536;
226pub const AG_MakeLib: u32 = 131072;
227pub const AG_OpenLib: u32 = 196608;
228pub const AG_OpenDev: u32 = 262144;
229pub const AG_OpenRes: u32 = 327680;
230pub const AG_IOError: u32 = 393216;
231pub const AG_NoSignal: u32 = 458752;
232pub const AG_BadParm: u32 = 524288;
233pub const AG_CloseLib: u32 = 589824;
234pub const AG_CloseDev: u32 = 655360;
235pub const AG_ProcCreate: u32 = 720896;
236pub const AO_ExecLib: u32 = 32769;
237pub const AO_GraphicsLib: u32 = 32770;
238pub const AO_LayersLib: u32 = 32771;
239pub const AO_Intuition: u32 = 32772;
240pub const AO_MathLib: u32 = 32773;
241pub const AO_DOSLib: u32 = 32775;
242pub const AO_RAMLib: u32 = 32776;
243pub const AO_IconLib: u32 = 32777;
244pub const AO_ExpansionLib: u32 = 32778;
245pub const AO_DiskfontLib: u32 = 32779;
246pub const AO_UtilityLib: u32 = 32780;
247pub const AO_KeyMapLib: u32 = 32781;
248pub const AO_AudioDev: u32 = 32784;
249pub const AO_ConsoleDev: u32 = 32785;
250pub const AO_GamePortDev: u32 = 32786;
251pub const AO_KeyboardDev: u32 = 32787;
252pub const AO_TrackDiskDev: u32 = 32788;
253pub const AO_TimerDev: u32 = 32789;
254pub const AO_CIARsrc: u32 = 32800;
255pub const AO_DiskRsrc: u32 = 32801;
256pub const AO_MiscRsrc: u32 = 32802;
257pub const AO_BootStrap: u32 = 32816;
258pub const AO_Workbench: u32 = 32817;
259pub const AO_DiskCopy: u32 = 32818;
260pub const AO_GadTools: u32 = 32819;
261pub const AO_Unknown: u32 = 32821;
262pub const AN_ExecLib: u32 = 16777216;
263pub const AN_ExcptVect: u32 = 16777217;
264pub const AN_BaseChkSum: u32 = 16777218;
265pub const AN_LibChkSum: u32 = 16777219;
266pub const AN_MemCorrupt: u32 = 2164260869;
267pub const AN_IntrMem: u32 = 2164260870;
268pub const AN_InitAPtr: u32 = 16777223;
269pub const AN_SemCorrupt: u32 = 16777224;
270pub const AN_FreeTwice: u32 = 16777225;
271pub const AN_BogusExcpt: u32 = 2164260874;
272pub const AN_IOUsedTwice: u32 = 16777227;
273pub const AN_MemoryInsane: u32 = 16777228;
274pub const AN_IOAfterClose: u32 = 16777229;
275pub const AN_StackProbe: u32 = 16777230;
276pub const AN_BadFreeAddr: u32 = 16777231;
277pub const AN_BadSemaphore: u32 = 16777232;
278pub const AN_AVLNotImpl: u32 = 16777233;
279pub const AN_TreeNotImpl: u32 = 16777234;
280pub const AN_GraphicsLib: u32 = 33554432;
281pub const AN_GfxNoMem: u32 = 2181103616;
282pub const AN_GfxNoMemMspc: u32 = 2181103617;
283pub const AN_LongFrame: u32 = 2181103622;
284pub const AN_ShortFrame: u32 = 2181103623;
285pub const AN_TextTmpRas: u32 = 33619977;
286pub const AN_BltBitMap: u32 = 2181103626;
287pub const AN_RegionMemory: u32 = 2181103627;
288pub const AN_MakeVPort: u32 = 2181103664;
289pub const AN_GfxNewError: u32 = 33554444;
290pub const AN_GfxFreeError: u32 = 33554445;
291pub const AN_GfxNoLCM: u32 = 2181108276;
292pub const AN_ObsoleteFont: u32 = 33555457;
293pub const AN_LayersLib: u32 = 50331648;
294pub const AN_LayersNoMem: u32 = 2197880832;
295pub const AN_Intuition: u32 = 67108864;
296pub const AN_GadgetType: u32 = 2214592513;
297pub const AN_BadGadget: u32 = 67108865;
298pub const AN_CreatePort: u32 = 2214658050;
299pub const AN_ItemAlloc: u32 = 67174403;
300pub const AN_SubAlloc: u32 = 67174404;
301pub const AN_PlaneAlloc: u32 = 2214658053;
302pub const AN_ItemBoxTop: u32 = 2214592518;
303pub const AN_OpenScreen: u32 = 2214658055;
304pub const AN_OpenScrnRast: u32 = 2214658056;
305pub const AN_SysScrnType: u32 = 2214592521;
306pub const AN_AddSWGadget: u32 = 2214658058;
307pub const AN_OpenWindow: u32 = 2214658059;
308pub const AN_BadState: u32 = 2214592524;
309pub const AN_BadMessage: u32 = 2214592525;
310pub const AN_WeirdEcho: u32 = 2214592526;
311pub const AN_NoConsole: u32 = 2214592527;
312pub const AN_NoISem: u32 = 67108880;
313pub const AN_ISemOrder: u32 = 67108881;
314pub const AN_DeadIntui: u32 = 67108882;
315pub const AN_MathLib: u32 = 83886080;
316pub const AN_DOSLib: u32 = 117440512;
317pub const AN_StartMem: u32 = 117506049;
318pub const AN_EndTask: u32 = 117440514;
319pub const AN_QPktFail: u32 = 117440515;
320pub const AN_AsyncPkt: u32 = 117440516;
321pub const AN_FreeVec: u32 = 117440517;
322pub const AN_DiskBlkSeq: u32 = 117440518;
323pub const AN_BitMap: u32 = 117440519;
324pub const AN_KeyFree: u32 = 117440520;
325pub const AN_BadChkSum: u32 = 117440521;
326pub const AN_DiskError: u32 = 117440522;
327pub const AN_KeyRange: u32 = 117440523;
328pub const AN_BadOverlay: u32 = 117440524;
329pub const AN_BadInitFunc: u32 = 117440525;
330pub const AN_FileReclosed: u32 = 117440526;
331pub const AN_CLIObsolete: u32 = 117440527;
332pub const AN_RAMLib: u32 = 134217728;
333pub const AN_BadSegList: u32 = 134217729;
334pub const AN_IconLib: u32 = 150994944;
335pub const AN_ExpansionLib: u32 = 167772160;
336pub const AN_BadExpansionFree: u32 = 167772161;
337pub const AN_DiskfontLib: u32 = 184549376;
338pub const AN_AudioDev: u32 = 268435456;
339pub const AN_ConsoleDev: u32 = 285212672;
340pub const AN_NoWindow: u32 = 285212673;
341pub const AN_GamePortDev: u32 = 301989888;
342pub const AN_KeyboardDev: u32 = 318767104;
343pub const AN_TrackDiskDev: u32 = 335544320;
344pub const AN_TDCalibSeek: u32 = 335544321;
345pub const AN_TDDelay: u32 = 335544322;
346pub const AN_TimerDev: u32 = 352321536;
347pub const AN_TMBadReq: u32 = 352321537;
348pub const AN_TMBadSupply: u32 = 352321538;
349pub const AN_CIARsrc: u32 = 536870912;
350pub const AN_DiskRsrc: u32 = 553648128;
351pub const AN_DRHasDisk: u32 = 553648129;
352pub const AN_DRIntNoAct: u32 = 553648130;
353pub const AN_MiscRsrc: u32 = 570425344;
354pub const AN_BootStrap: u32 = 805306368;
355pub const AN_BootError: u32 = 805306369;
356pub const AN_Workbench: u32 = 822083584;
357pub const AN_NoFonts: u32 = 2969567233;
358pub const AN_WBBadStartupMsg1: u32 = 822083585;
359pub const AN_WBBadStartupMsg2: u32 = 822083586;
360pub const AN_WBBadIOMsg: u32 = 822083587;
361pub const AN_WBReLayoutToolMenu: u32 = 2969632777;
362pub const AN_DiskCopy: u32 = 838860800;
363pub const AN_GadTools: u32 = 855638016;
364pub const AN_UtilityLib: u32 = 872415232;
365pub const AN_Unknown: u32 = 889192448;
366pub const IOERR_OPENFAIL: i32 = -1;
367pub const IOERR_ABORTED: i32 = -2;
368pub const IOERR_NOCMD: i32 = -3;
369pub const IOERR_BADLENGTH: i32 = -4;
370pub const IOERR_BADADDRESS: i32 = -5;
371pub const IOERR_UNITBUSY: i32 = -6;
372pub const IOERR_SELFTEST: i32 = -7;
373pub const RTC_MATCHWORD: u32 = 19196;
374pub const RTF_AUTOINIT: u32 = 128;
375pub const RTF_AFTERDOS: u32 = 4;
376pub const RTF_SINGLETASK: u32 = 2;
377pub const RTF_COLDSTART: u32 = 1;
378pub const RTW_NEVER: u32 = 0;
379pub const RTW_COLDSTART: u32 = 1;
380pub const MEMF_ANY: u32 = 0;
381pub const MEMF_PUBLIC: u32 = 1;
382pub const MEMF_CHIP: u32 = 2;
383pub const MEMF_FAST: u32 = 4;
384pub const MEMF_LOCAL: u32 = 256;
385pub const MEMF_24BITDMA: u32 = 512;
386pub const MEMF_KICK: u32 = 1024;
387pub const MEMF_CLEAR: u32 = 65536;
388pub const MEMF_LARGEST: u32 = 131072;
389pub const MEMF_REVERSE: u32 = 262144;
390pub const MEMF_TOTAL: u32 = 524288;
391pub const MEMF_NO_EXPUNGE: u32 = 2147483648;
392pub const MEM_BLOCKSIZE: u32 = 8;
393pub const MEM_BLOCKMASK: u32 = 7;
394pub const MEMHF_RECYCLE: u32 = 1;
395pub const MEM_DID_NOTHING: u32 = 0;
396pub const MEM_ALL_DONE: i32 = -1;
397pub const MEM_TRY_AGAIN: u32 = 1;
398pub const TB_PROCTIME: u32 = 0;
399pub const TB_STACKCHK: u32 = 4;
400pub const TB_EXCEPT: u32 = 5;
401pub const TB_SWITCH: u32 = 6;
402pub const TB_LAUNCH: u32 = 7;
403pub const TF_PROCTIME: u32 = 1;
404pub const TF_ETASK: u32 = 8;
405pub const TF_STACKCHK: u32 = 16;
406pub const TF_EXCEPT: u32 = 32;
407pub const TF_SWITCH: u32 = 64;
408pub const TF_LAUNCH: u32 = 128;
409pub const TS_INVALID: u32 = 0;
410pub const TS_ADDED: u32 = 1;
411pub const TS_RUN: u32 = 2;
412pub const TS_READY: u32 = 3;
413pub const TS_WAIT: u32 = 4;
414pub const TS_EXCEPT: u32 = 5;
415pub const TS_REMOVED: u32 = 6;
416pub const SIGB_ABORT: u32 = 0;
417pub const SIGB_CHILD: u32 = 1;
418pub const SIGB_BLIT: u32 = 4;
419pub const SIGB_SINGLE: u32 = 4;
420pub const SIGB_INTUITION: u32 = 5;
421pub const SIGB_NET: u32 = 7;
422pub const SIGB_DOS: u32 = 8;
423pub const SIGF_ABORT: u32 = 1;
424pub const SIGF_CHILD: u32 = 2;
425pub const SIGF_BLIT: u32 = 16;
426pub const SIGF_SINGLE: u32 = 16;
427pub const SIGF_INTUITION: u32 = 32;
428pub const SIGF_NET: u32 = 128;
429pub const SIGF_DOS: u32 = 256;
430pub const PF_ACTION: u32 = 3;
431pub const PA_SIGNAL: u32 = 0;
432pub const PA_SOFTINT: u32 = 1;
433pub const PA_IGNORE: u32 = 2;
434pub const SIH_PRIMASK: u32 = 240;
435pub const INTB_NMI: u32 = 15;
436pub const INTF_NMI: u32 = 32768;
437pub const SM_SHARED: u32 = 1;
438pub const SM_EXCLUSIVE: u32 = 0;
439pub const LIB_VECTSIZE: u32 = 6;
440pub const LIB_RESERVED: u32 = 4;
441pub const LIB_BASE: i32 = -6;
442pub const LIB_USERDEF: i32 = -30;
443pub const LIB_NONSTD: i32 = -30;
444pub const LIB_OPEN: i32 = -6;
445pub const LIB_CLOSE: i32 = -12;
446pub const LIB_EXPUNGE: i32 = -18;
447pub const LIB_EXTFUNC: i32 = -24;
448pub const LIBF_SUMMING: u32 = 1;
449pub const LIBF_CHANGED: u32 = 2;
450pub const LIBF_SUMUSED: u32 = 4;
451pub const LIBF_DELEXP: u32 = 8;
452pub const DEV_BEGINIO: i32 = -30;
453pub const DEV_ABORTIO: i32 = -36;
454pub const IOB_QUICK: u32 = 0;
455pub const IOF_QUICK: u32 = 1;
456pub const CMD_INVALID: u32 = 0;
457pub const CMD_RESET: u32 = 1;
458pub const CMD_READ: u32 = 2;
459pub const CMD_WRITE: u32 = 3;
460pub const CMD_UPDATE: u32 = 4;
461pub const CMD_CLEAR: u32 = 5;
462pub const CMD_STOP: u32 = 6;
463pub const CMD_START: u32 = 7;
464pub const CMD_FLUSH: u32 = 8;
465pub const CMD_NONSTD: u32 = 9;
466pub const UNITF_ACTIVE: u32 = 1;
467pub const UNITF_INTASK: u32 = 2;
468pub const AFB_68010: u32 = 0;
469pub const AFB_68020: u32 = 1;
470pub const AFB_68030: u32 = 2;
471pub const AFB_68040: u32 = 3;
472pub const AFB_68881: u32 = 4;
473pub const AFB_68882: u32 = 5;
474pub const AFB_FPU40: u32 = 6;
475pub const AFB_68060: u32 = 7;
476pub const AFB_FPGA: u32 = 10;
477pub const AFB_PRIVATE: u32 = 15;
478pub const AFF_68010: u32 = 1;
479pub const AFF_68020: u32 = 2;
480pub const AFF_68030: u32 = 4;
481pub const AFF_68040: u32 = 8;
482pub const AFF_68881: u32 = 16;
483pub const AFF_68882: u32 = 32;
484pub const AFF_FPU40: u32 = 64;
485pub const AFF_68060: u32 = 128;
486pub const AFF_FPGA: u32 = 1024;
487pub const AFF_PRIVATE: u32 = 32768;
488pub const CACRF_EnableI: u32 = 1;
489pub const CACRF_FreezeI: u32 = 2;
490pub const CACRF_ClearI: u32 = 8;
491pub const CACRF_IBE: u32 = 16;
492pub const CACRF_EnableD: u32 = 256;
493pub const CACRF_FreezeD: u32 = 512;
494pub const CACRF_ClearD: u32 = 2048;
495pub const CACRF_DBE: u32 = 4096;
496pub const CACRF_WriteAllocate: u32 = 8192;
497pub const CACRF_EnableE: u32 = 1073741824;
498pub const CACRF_CopyBack: u32 = 2147483648;
499pub const DMA_Continue: u32 = 2;
500pub const DMA_NoModify: u32 = 4;
501pub const DMA_ReadFromRAM: u32 = 8;
502pub const DOSNAME: &[u8; 12] = b"dos.library\0";
503pub const DOSTRUE: i32 = -1;
504pub const DOSFALSE: u32 = 0;
505pub const MODE_OLDFILE: u32 = 1005;
506pub const MODE_NEWFILE: u32 = 1006;
507pub const MODE_READWRITE: u32 = 1004;
508pub const OFFSET_BEGINNING: i32 = -1;
509pub const OFFSET_CURRENT: u32 = 0;
510pub const OFFSET_END: u32 = 1;
511pub const OFFSET_BEGINING: i32 = -1;
512pub const BITSPERBYTE: u32 = 8;
513pub const BYTESPERLONG: u32 = 4;
514pub const BITSPERLONG: u32 = 32;
515pub const MAXINT: u32 = 2147483647;
516pub const MININT: u32 = 2147483648;
517pub const SHARED_LOCK: i32 = -2;
518pub const ACCESS_READ: i32 = -2;
519pub const EXCLUSIVE_LOCK: i32 = -1;
520pub const ACCESS_WRITE: i32 = -1;
521pub const TICKS_PER_SECOND: u32 = 50;
522pub const FIBB_OTR_READ: u32 = 15;
523pub const FIBB_OTR_WRITE: u32 = 14;
524pub const FIBB_OTR_EXECUTE: u32 = 13;
525pub const FIBB_OTR_DELETE: u32 = 12;
526pub const FIBB_GRP_READ: u32 = 11;
527pub const FIBB_GRP_WRITE: u32 = 10;
528pub const FIBB_GRP_EXECUTE: u32 = 9;
529pub const FIBB_GRP_DELETE: u32 = 8;
530pub const FIBB_HOLD: u32 = 7;
531pub const FIBB_SCRIPT: u32 = 6;
532pub const FIBB_PURE: u32 = 5;
533pub const FIBB_ARCHIVE: u32 = 4;
534pub const FIBB_READ: u32 = 3;
535pub const FIBB_WRITE: u32 = 2;
536pub const FIBB_EXECUTE: u32 = 1;
537pub const FIBB_DELETE: u32 = 0;
538pub const FIBF_OTR_READ: u32 = 32768;
539pub const FIBF_OTR_WRITE: u32 = 16384;
540pub const FIBF_OTR_EXECUTE: u32 = 8192;
541pub const FIBF_OTR_DELETE: u32 = 4096;
542pub const FIBF_GRP_READ: u32 = 2048;
543pub const FIBF_GRP_WRITE: u32 = 1024;
544pub const FIBF_GRP_EXECUTE: u32 = 512;
545pub const FIBF_GRP_DELETE: u32 = 256;
546pub const FIBF_HOLD: u32 = 128;
547pub const FIBF_SCRIPT: u32 = 64;
548pub const FIBF_PURE: u32 = 32;
549pub const FIBF_ARCHIVE: u32 = 16;
550pub const FIBF_READ: u32 = 8;
551pub const FIBF_WRITE: u32 = 4;
552pub const FIBF_EXECUTE: u32 = 2;
553pub const FIBF_DELETE: u32 = 1;
554pub const FAULT_MAX: u32 = 82;
555pub const ID_WRITE_PROTECTED: u32 = 80;
556pub const ID_VALIDATING: u32 = 81;
557pub const ID_VALIDATED: u32 = 82;
558pub const ID_NO_DISK_PRESENT: i32 = -1;
559pub const ID_UNREADABLE_DISK: u32 = 1111573504;
560pub const ID_DOS_DISK: u32 = 1146049280;
561pub const ID_FFS_DISK: u32 = 1146049281;
562pub const ID_INTER_DOS_DISK: u32 = 1146049282;
563pub const ID_INTER_FFS_DISK: u32 = 1146049283;
564pub const ID_FASTDIR_DOS_DISK: u32 = 1146049284;
565pub const ID_FASTDIR_FFS_DISK: u32 = 1146049285;
566pub const ID_LONG_DOS_DISK: u32 = 1146049286;
567pub const ID_LONG_FFS_DISK: u32 = 1146049287;
568pub const ID_COMPLONG_FFS_DISK: u32 = 1146049288;
569pub const ID_NOT_REALLY_DOS: u32 = 1313099603;
570pub const ID_KICKSTART_DISK: u32 = 1263092555;
571pub const ID_MSDOS_DISK: u32 = 1297302528;
572pub const ERROR_NO_FREE_STORE: u32 = 103;
573pub const ERROR_TASK_TABLE_FULL: u32 = 105;
574pub const ERROR_BAD_TEMPLATE: u32 = 114;
575pub const ERROR_BAD_NUMBER: u32 = 115;
576pub const ERROR_REQUIRED_ARG_MISSING: u32 = 116;
577pub const ERROR_KEY_NEEDS_ARG: u32 = 117;
578pub const ERROR_TOO_MANY_ARGS: u32 = 118;
579pub const ERROR_UNMATCHED_QUOTES: u32 = 119;
580pub const ERROR_LINE_TOO_LONG: u32 = 120;
581pub const ERROR_FILE_NOT_OBJECT: u32 = 121;
582pub const ERROR_INVALID_RESIDENT_LIBRARY: u32 = 122;
583pub const ERROR_NO_DEFAULT_DIR: u32 = 201;
584pub const ERROR_OBJECT_IN_USE: u32 = 202;
585pub const ERROR_OBJECT_EXISTS: u32 = 203;
586pub const ERROR_DIR_NOT_FOUND: u32 = 204;
587pub const ERROR_OBJECT_NOT_FOUND: u32 = 205;
588pub const ERROR_BAD_STREAM_NAME: u32 = 206;
589pub const ERROR_OBJECT_TOO_LARGE: u32 = 207;
590pub const ERROR_ACTION_NOT_KNOWN: u32 = 209;
591pub const ERROR_INVALID_COMPONENT_NAME: u32 = 210;
592pub const ERROR_INVALID_LOCK: u32 = 211;
593pub const ERROR_OBJECT_WRONG_TYPE: u32 = 212;
594pub const ERROR_DISK_NOT_VALIDATED: u32 = 213;
595pub const ERROR_DISK_WRITE_PROTECTED: u32 = 214;
596pub const ERROR_RENAME_ACROSS_DEVICES: u32 = 215;
597pub const ERROR_DIRECTORY_NOT_EMPTY: u32 = 216;
598pub const ERROR_TOO_MANY_LEVELS: u32 = 217;
599pub const ERROR_DEVICE_NOT_MOUNTED: u32 = 218;
600pub const ERROR_SEEK_ERROR: u32 = 219;
601pub const ERROR_COMMENT_TOO_BIG: u32 = 220;
602pub const ERROR_DISK_FULL: u32 = 221;
603pub const ERROR_DELETE_PROTECTED: u32 = 222;
604pub const ERROR_WRITE_PROTECTED: u32 = 223;
605pub const ERROR_READ_PROTECTED: u32 = 224;
606pub const ERROR_NOT_A_DOS_DISK: u32 = 225;
607pub const ERROR_NO_DISK: u32 = 226;
608pub const ERROR_NO_MORE_ENTRIES: u32 = 232;
609pub const ERROR_IS_SOFT_LINK: u32 = 233;
610pub const ERROR_OBJECT_LINKED: u32 = 234;
611pub const ERROR_BAD_HUNK: u32 = 235;
612pub const ERROR_NOT_IMPLEMENTED: u32 = 236;
613pub const ERROR_RECORD_NOT_LOCKED: u32 = 240;
614pub const ERROR_LOCK_COLLISION: u32 = 241;
615pub const ERROR_LOCK_TIMEOUT: u32 = 242;
616pub const ERROR_UNLOCK_ERROR: u32 = 243;
617pub const RETURN_OK: u32 = 0;
618pub const RETURN_WARN: u32 = 5;
619pub const RETURN_ERROR: u32 = 10;
620pub const RETURN_FAIL: u32 = 20;
621pub const SIGBREAKB_CTRL_C: u32 = 12;
622pub const SIGBREAKB_CTRL_D: u32 = 13;
623pub const SIGBREAKB_CTRL_E: u32 = 14;
624pub const SIGBREAKB_CTRL_F: u32 = 15;
625pub const SIGBREAKF_CTRL_C: u32 = 4096;
626pub const SIGBREAKF_CTRL_D: u32 = 8192;
627pub const SIGBREAKF_CTRL_E: u32 = 16384;
628pub const LOCK_DIFFERENT: i32 = -1;
629pub const LOCK_SAME: u32 = 0;
630pub const LOCK_SAME_VOLUME: u32 = 1;
631pub const LOCK_SAME_HANDLER: u32 = 1;
632pub const CHANGE_LOCK: u32 = 0;
633pub const CHANGE_FH: u32 = 1;
634pub const LINK_HARD: u32 = 0;
635pub const LINK_SOFT: u32 = 1;
636pub const ITEM_EQUAL: i32 = -2;
637pub const ITEM_ERROR: i32 = -1;
638pub const ITEM_NOTHING: u32 = 0;
639pub const ITEM_UNQUOTED: u32 = 1;
640pub const ITEM_QUOTED: u32 = 2;
641pub const DOS_FILEHANDLE: u32 = 0;
642pub const DOS_EXALLCONTROL: u32 = 1;
643pub const DOS_FIB: u32 = 2;
644pub const DOS_STDPKT: u32 = 3;
645pub const DOS_CLI: u32 = 4;
646pub const DOS_RDARGS: u32 = 5;
647pub const RDAB_STDIN: u32 = 0;
648pub const RDAF_STDIN: u32 = 1;
649pub const RDAB_NOALLOC: u32 = 1;
650pub const RDAF_NOALLOC: u32 = 2;
651pub const RDAB_NOPROMPT: u32 = 2;
652pub const RDAF_NOPROMPT: u32 = 4;
653pub const MAX_TEMPLATE_ITEMS: u32 = 100;
654pub const MAX_MULTIARGS: u32 = 128;
655pub const NXADDLEN: u32 = 9;
656pub const NSB_KEEP: u32 = 0;
657pub const NSB_STRING: u32 = 1;
658pub const NSB_NOTNUM: u32 = 2;
659pub const NSB_NUMBER: u32 = 3;
660pub const NSB_BINARY: u32 = 4;
661pub const NSB_FLOAT: u32 = 5;
662pub const NSB_EXT: u32 = 6;
663pub const NSB_SOURCE: u32 = 7;
664pub const NSF_KEEP: u32 = 1;
665pub const NSF_STRING: u32 = 2;
666pub const NSF_NOTNUM: u32 = 4;
667pub const NSF_NUMBER: u32 = 8;
668pub const NSF_BINARY: u32 = 16;
669pub const NSF_FLOAT: u32 = 32;
670pub const NSF_EXT: u32 = 64;
671pub const NSF_SOURCE: u32 = 128;
672pub const NSF_INTNUM: u32 = 26;
673pub const NSF_DPNUM: u32 = 40;
674pub const NSF_ALPHA: u32 = 6;
675pub const NSF_OWNED: u32 = 193;
676pub const KEEPSTR: u32 = 134;
677pub const KEEPNUM: u32 = 154;
678pub const MAXRMARG: u32 = 15;
679pub const RXCOMM: u32 = 16777216;
680pub const RXFUNC: u32 = 33554432;
681pub const RXCLOSE: u32 = 50331648;
682pub const RXQUERY: u32 = 67108864;
683pub const RXADDFH: u32 = 117440512;
684pub const RXADDLIB: u32 = 134217728;
685pub const RXREMLIB: u32 = 150994944;
686pub const RXADDCON: u32 = 167772160;
687pub const RXREMCON: u32 = 184549376;
688pub const RXTCOPN: u32 = 201326592;
689pub const RXTCCLS: u32 = 218103808;
690pub const RXFB_NOIO: u32 = 16;
691pub const RXFB_RESULT: u32 = 17;
692pub const RXFB_STRING: u32 = 18;
693pub const RXFB_TOKEN: u32 = 19;
694pub const RXFB_NONRET: u32 = 20;
695pub const RXFB_SCRIPT: u32 = 21;
696pub const RXFF_NOIO: u32 = 65536;
697pub const RXFF_RESULT: u32 = 131072;
698pub const RXFF_STRING: u32 = 262144;
699pub const RXFF_TOKEN: u32 = 524288;
700pub const RXFF_NONRET: u32 = 1048576;
701pub const RXFF_SCRIPT: u32 = 2097152;
702pub const RXCODEMASK: u32 = 4278190080;
703pub const RXARGMASK: u32 = 15;
704pub const RRT_ANY: u32 = 0;
705pub const RRT_LIB: u32 = 1;
706pub const RRT_PORT: u32 = 2;
707pub const RRT_FILE: u32 = 3;
708pub const RRT_HOST: u32 = 4;
709pub const RRT_CLIP: u32 = 5;
710pub const GLOBALSZ: u32 = 200;
711pub const RTFB_TRACE: u32 = 0;
712pub const RTFB_HALT: u32 = 1;
713pub const RTFB_SUSP: u32 = 2;
714pub const RTFB_TCUSE: u32 = 3;
715pub const RTFB_WAIT: u32 = 6;
716pub const RTFB_CLOSE: u32 = 7;
717pub const MEMQUANT: u32 = 16;
718pub const MEMMASK: u32 = 4294967280;
719pub const MEMQUICK: u32 = 1;
720pub const MEMCLEAR: u32 = 65536;
721pub const RXSNAME: &[u8; 19] = b"rexxsyslib.library\0";
722pub const RXSDIR: &[u8; 5] = b"REXX\0";
723pub const RXSTNAME: &[u8; 6] = b"ARexx\0";
724pub const RLFB_TRACE: u32 = 0;
725pub const RLFB_HALT: u32 = 1;
726pub const RLFB_SUSP: u32 = 2;
727pub const RLFB_STOP: u32 = 6;
728pub const RLFB_CLOSE: u32 = 7;
729pub const RLFMASK: u32 = 7;
730pub const RXSCHUNK: u32 = 1024;
731pub const RXSNEST: u32 = 32;
732pub const RXSTPRI: u32 = 0;
733pub const RXSSTACK: u32 = 4096;
734pub const CTB_SPACE: u32 = 0;
735pub const CTB_DIGIT: u32 = 1;
736pub const CTB_ALPHA: u32 = 2;
737pub const CTB_REXXSYM: u32 = 3;
738pub const CTB_REXXOPR: u32 = 4;
739pub const CTB_REXXSPC: u32 = 5;
740pub const CTB_UPPER: u32 = 6;
741pub const CTB_LOWER: u32 = 7;
742pub const CTF_SPACE: u32 = 1;
743pub const CTF_DIGIT: u32 = 2;
744pub const CTF_ALPHA: u32 = 4;
745pub const CTF_REXXSYM: u32 = 8;
746pub const CTF_REXXOPR: u32 = 16;
747pub const CTF_REXXSPC: u32 = 32;
748pub const CTF_UPPER: u32 = 64;
749pub const CTF_LOWER: u32 = 128;
750pub const ERRC_MSG: u32 = 0;
751pub const ERR10_001: u32 = 1;
752pub const ERR10_002: u32 = 2;
753pub const ERR10_003: u32 = 3;
754pub const ERR10_004: u32 = 4;
755pub const ERR10_005: u32 = 5;
756pub const ERR10_006: u32 = 6;
757pub const ERR10_007: u32 = 7;
758pub const ERR10_008: u32 = 8;
759pub const ERR10_009: u32 = 9;
760pub const ERR10_010: u32 = 10;
761pub const ERR10_011: u32 = 11;
762pub const ERR10_012: u32 = 12;
763pub const ERR10_013: u32 = 13;
764pub const ERR10_014: u32 = 14;
765pub const ERR10_015: u32 = 15;
766pub const ERR10_016: u32 = 16;
767pub const ERR10_017: u32 = 17;
768pub const ERR10_018: u32 = 18;
769pub const ERR10_019: u32 = 19;
770pub const ERR10_020: u32 = 20;
771pub const ERR10_021: u32 = 21;
772pub const ERR10_022: u32 = 22;
773pub const ERR10_023: u32 = 23;
774pub const ERR10_024: u32 = 24;
775pub const ERR10_025: u32 = 25;
776pub const ERR10_026: u32 = 26;
777pub const ERR10_027: u32 = 27;
778pub const ERR10_028: u32 = 28;
779pub const ERR10_029: u32 = 29;
780pub const ERR10_030: u32 = 30;
781pub const ERR10_031: u32 = 31;
782pub const ERR10_032: u32 = 32;
783pub const ERR10_033: u32 = 33;
784pub const ERR10_034: u32 = 34;
785pub const ERR10_035: u32 = 35;
786pub const ERR10_036: u32 = 36;
787pub const ERR10_037: u32 = 37;
788pub const ERR10_038: u32 = 38;
789pub const ERR10_039: u32 = 39;
790pub const ERR10_040: u32 = 40;
791pub const ERR10_041: u32 = 41;
792pub const ERR10_042: u32 = 42;
793pub const ERR10_043: u32 = 43;
794pub const ERR10_044: u32 = 44;
795pub const ERR10_045: u32 = 45;
796pub const ERR10_046: u32 = 46;
797pub const ERR10_047: u32 = 47;
798pub const ERR10_048: u32 = 48;
799pub const RC_OK: u32 = 0;
800pub const RC_WARN: u32 = 5;
801pub const RC_ERROR: u32 = 10;
802pub const RC_FATAL: u32 = 20;
803pub const INTUITION_CLASSUSR_H: u32 = 1;
804pub const ROOTCLASS: &[u8; 10] = b"rootclass\0";
805pub const IMAGECLASS: &[u8; 11] = b"imageclass\0";
806pub const FRAMEICLASS: &[u8; 12] = b"frameiclass\0";
807pub const SYSICLASS: &[u8; 10] = b"sysiclass\0";
808pub const FILLRECTCLASS: &[u8; 14] = b"fillrectclass\0";
809pub const GADGETCLASS: &[u8; 12] = b"gadgetclass\0";
810pub const PROPGCLASS: &[u8; 11] = b"propgclass\0";
811pub const STRGCLASS: &[u8; 10] = b"strgclass\0";
812pub const BUTTONGCLASS: &[u8; 13] = b"buttongclass\0";
813pub const FRBUTTONCLASS: &[u8; 14] = b"frbuttonclass\0";
814pub const GROUPGCLASS: &[u8; 12] = b"groupgclass\0";
815pub const ICCLASS: &[u8; 8] = b"icclass\0";
816pub const MODELCLASS: &[u8; 11] = b"modelclass\0";
817pub const ITEXTICLASS: &[u8; 12] = b"itexticlass\0";
818pub const POINTERCLASS: &[u8; 13] = b"pointerclass\0";
819pub const OM_Dummy: u32 = 256;
820pub const OM_NEW: u32 = 257;
821pub const OM_DISPOSE: u32 = 258;
822pub const OM_SET: u32 = 259;
823pub const OM_GET: u32 = 260;
824pub const OM_ADDTAIL: u32 = 261;
825pub const OM_REMOVE: u32 = 262;
826pub const OM_NOTIFY: u32 = 263;
827pub const OM_UPDATE: u32 = 264;
828pub const OM_ADDMEMBER: u32 = 265;
829pub const OM_REMMEMBER: u32 = 266;
830pub const OPUF_INTERIM: u32 = 1;
831pub const CLF_INLIST: u32 = 1;
832pub const TAG_DONE: u32 = 0;
833pub const TAG_END: u32 = 0;
834pub const TAG_IGNORE: u32 = 1;
835pub const TAG_MORE: u32 = 2;
836pub const TAG_SKIP: u32 = 3;
837pub const TAGFILTER_AND: u32 = 0;
838pub const TAGFILTER_NOT: u32 = 1;
839pub const MAP_REMOVE_NOT_FOUND: u32 = 0;
840pub const MAP_KEEP_NOT_FOUND: u32 = 1;
841pub const RXERR_NO_COMMAND_LIST: u32 = 1;
842pub const RXERR_NO_PORT_NAME: u32 = 2;
843pub const RXERR_PORT_ALREADY_EXISTS: u32 = 3;
844pub const RXERR_OUT_OF_MEMORY: u32 = 4;
845pub const AM_HANDLEEVENT: u32 = 5832705;
846pub const AM_EXECUTE: u32 = 5832706;
847pub const AM_FLUSH: u32 = 5832707;
848pub const RM_OPENREQ: u32 = 6619137;
849pub const REQTYPE_INFO: u32 = 0;
850pub const REQTYPE_INTEGER: u32 = 1;
851pub const REQTYPE_STRING: u32 = 2;
852pub const REQTYPE_PROGRESS: u32 = 3;
853pub const WGUD_HOOK: u32 = 0;
854pub const WGUD_FUNC: u32 = 1;
855pub const WGUD_IGNORE: u32 = 2;
856pub const WMHI_LASTMSG: u32 = 0;
857pub const WMHI_IGNORE: i32 = -1;
858pub const WMHI_GADGETMASK: u32 = 65535;
859pub const WMHI_MENUMASK: u32 = 65535;
860pub const WMHI_KEYMASK: u32 = 255;
861pub const WMHI_CLASSMASK: u32 = 4294901760;
862pub const WMHI_CLOSEWINDOW: u32 = 65536;
863pub const WMHI_GADGETUP: u32 = 131072;
864pub const WMHI_INACTIVE: u32 = 196608;
865pub const WMHI_ACTIVE: u32 = 262144;
866pub const WMHI_NEWSIZE: u32 = 327680;
867pub const WMHI_MENUPICK: u32 = 393216;
868pub const WMHI_MENUHELP: u32 = 458752;
869pub const WMHI_GADGETHELP: u32 = 524288;
870pub const WMHI_ICONIFY: u32 = 589824;
871pub const WMHI_UNICONIFY: u32 = 655360;
872pub const WMHI_RAWKEY: u32 = 720896;
873pub const WMHI_VANILLAKEY: u32 = 786432;
874pub const WMHI_CHANGEWINDOW: u32 = 851968;
875pub const WMHI_INTUITICK: u32 = 917504;
876pub const WMHI_MOUSEMOVE: u32 = 983040;
877pub const WMHI_MOUSEBUTTONS: u32 = 1048576;
878pub const WMHI_DISPOSEDWINDOW: u32 = 1114112;
879pub const WMHI_JUMPSCREEN: u32 = 1179648;
880pub const WMHI_POPUPMENU: u32 = 1245184;
881pub const WMHI_GADGETDOWN: u32 = 1310720;
882pub const WHOOKRSLT_IGNORE: u32 = 0;
883pub const WHOOKRSLT_CLOSEWINDOW: u32 = 1;
884pub const WHOOKRSLT_DISPOSEWINDOW: u32 = 2;
885pub const WMF_ZOOMED: u32 = 1;
886pub const WMF_ZIPWINDOW: u32 = 2;
887pub const WT_FRONT: u32 = 1;
888pub const WT_BACK: u32 = 0;
889pub const WPOS_CENTERSCREEN: u32 = 1;
890pub const WPOS_CENTERMOUSE: u32 = 2;
891pub const WPOS_TOPLEFT: u32 = 3;
892pub const WPOS_CENTERWINDOW: u32 = 4;
893pub const WPOS_FULLSCREEN: u32 = 5;
894pub const WPOS_ENTIRESCREEN: u32 = 6;
895pub const WM_HANDLEINPUT: u32 = 5701633;
896pub const WM_OPEN: u32 = 5701634;
897pub const WM_CLOSE: u32 = 5701635;
898pub const WM_NEWPREFS: u32 = 5701636;
899pub const WM_ICONIFY: u32 = 5701637;
900pub const WM_RETHINK: u32 = 5701638;
901pub const WM_ACTIVATEGADGET: u32 = 5701639;
902pub const WM_SNAPSHOT: u32 = 5701640;
903pub const WM_UNSNAPSHOT: u32 = 5701641;
904pub const WM_RESTORE: u32 = 5701648;
905pub const CBD_POST: u32 = 9;
906pub const CBD_CURRENTREADID: u32 = 10;
907pub const CBD_CURRENTWRITEID: u32 = 11;
908pub const CBD_CHANGEHOOK: u32 = 12;
909pub const CBERR_OBSOLETEID: u32 = 1;
910pub const PRIMARY_CLIP: u32 = 0;
911pub const IFFF_READ: u32 = 0;
912pub const IFFF_WRITE: u32 = 1;
913pub const IFFF_RWBITS: u32 = 1;
914pub const IFFF_FSEEK: u32 = 2;
915pub const IFFF_RSEEK: u32 = 4;
916pub const IFFF_RESERVED: u32 = 4294901760;
917pub const IFFERR_EOF: i32 = -1;
918pub const IFFERR_EOC: i32 = -2;
919pub const IFFERR_NOSCOPE: i32 = -3;
920pub const IFFERR_NOMEM: i32 = -4;
921pub const IFFERR_READ: i32 = -5;
922pub const IFFERR_WRITE: i32 = -6;
923pub const IFFERR_SEEK: i32 = -7;
924pub const IFFERR_MANGLED: i32 = -8;
925pub const IFFERR_SYNTAX: i32 = -9;
926pub const IFFERR_NOTIFF: i32 = -10;
927pub const IFFERR_NOHOOK: i32 = -11;
928pub const IFF_RETURN2CLIENT: i32 = -12;
929pub const IFFPARSE_SCAN: u32 = 0;
930pub const IFFPARSE_STEP: u32 = 1;
931pub const IFFPARSE_RAWSTEP: u32 = 2;
932pub const IFFSLI_ROOT: u32 = 1;
933pub const IFFSLI_TOP: u32 = 2;
934pub const IFFSLI_PROP: u32 = 3;
935pub const IFFSIZE_UNKNOWN: i32 = -1;
936pub const IFFCMD_INIT: u32 = 0;
937pub const IFFCMD_CLEANUP: u32 = 1;
938pub const IFFCMD_READ: u32 = 2;
939pub const IFFCMD_WRITE: u32 = 3;
940pub const IFFCMD_SEEK: u32 = 4;
941pub const IFFCMD_ENTRY: u32 = 5;
942pub const IFFCMD_EXIT: u32 = 6;
943pub const IFFCMD_PURGELCI: u32 = 7;
944pub const IFFSCC_INIT: u32 = 0;
945pub const IFFSCC_CLEANUP: u32 = 1;
946pub const IFFSCC_READ: u32 = 2;
947pub const IFFSCC_WRITE: u32 = 3;
948pub const IFFSCC_SEEK: u32 = 4;
949pub const DTF_TYPE_MASK: u32 = 15;
950pub const DTF_BINARY: u32 = 0;
951pub const DTF_ASCII: u32 = 1;
952pub const DTF_IFF: u32 = 2;
953pub const DTF_MISC: u32 = 3;
954pub const DTF_CASE: u32 = 16;
955pub const DTF_SYSTEM1: u32 = 4096;
956pub const TW_INFO: u32 = 1;
957pub const TW_BROWSE: u32 = 2;
958pub const TW_EDIT: u32 = 3;
959pub const TW_PRINT: u32 = 4;
960pub const TW_MAIL: u32 = 5;
961pub const TF_LAUNCH_MASK: u32 = 15;
962pub const TF_SHELL: u32 = 1;
963pub const TF_WORKBENCH: u32 = 2;
964pub const TF_RX: u32 = 3;
965pub const DTERROR_UNKNOWN_DATATYPE: u32 = 2000;
966pub const DTERROR_COULDNT_SAVE: u32 = 2001;
967pub const DTERROR_COULDNT_OPEN: u32 = 2002;
968pub const DTERROR_COULDNT_SEND_MESSAGE: u32 = 2003;
969pub const DTERROR_COULDNT_OPEN_CLIPBOARD: u32 = 2004;
970pub const DTERROR_Reserved: u32 = 2005;
971pub const DTERROR_UNKNOWN_COMPRESSION: u32 = 2006;
972pub const DTERROR_NOT_ENOUGH_DATA: u32 = 2007;
973pub const DTERROR_INVALID_DATA: u32 = 2008;
974pub const DTERROR_NOT_AVAILABLE: u32 = 2009;
975pub const DTMSG_TYPE_OFFSET: u32 = 2100;
976pub const INTUITION_INTUITION_H: u32 = 1;
977pub const BITSET: u32 = 32768;
978pub const BITCLR: u32 = 0;
979pub const BMB_CLEAR: u32 = 0;
980pub const BMB_DISPLAYABLE: u32 = 1;
981pub const BMB_INTERLEAVED: u32 = 2;
982pub const BMB_STANDARD: u32 = 3;
983pub const BMB_MINPLANES: u32 = 4;
984pub const BMB_HIJACKED: u32 = 7;
985pub const BMB_RTGTAGS: u32 = 8;
986pub const BMB_RTGCHECK: u32 = 9;
987pub const BMB_FRIENDISTAG: u32 = 10;
988pub const BMB_INVALID: u32 = 11;
989pub const BMF_CLEAR: u32 = 1;
990pub const BMF_DISPLAYABLE: u32 = 2;
991pub const BMF_INTERLEAVED: u32 = 4;
992pub const BMF_STANDARD: u32 = 8;
993pub const BMF_MINPLANES: u32 = 16;
994pub const BMF_HIJACKED: u32 = 128;
995pub const BMF_RTGTAGS: u32 = 256;
996pub const BMF_RTGCHECK: u32 = 512;
997pub const BMF_FRIENDISTAG: u32 = 1024;
998pub const BMF_INVALID: u32 = 2048;
999pub const BMF_CHECKMASK: u32 = 3968;
1000pub const BMF_CHECKVALUE: u32 = 1792;
1001pub const BMA_HEIGHT: u32 = 0;
1002pub const BMA_DEPTH: u32 = 4;
1003pub const BMA_WIDTH: u32 = 8;
1004pub const BMA_FLAGS: u32 = 12;
1005pub const CR_USERCLIPPED: u32 = 16;
1006pub const CR_DAMAGECLIPPED: u32 = 32;
1007pub const ISLESSX: u32 = 1;
1008pub const ISLESSY: u32 = 2;
1009pub const ISGRTRX: u32 = 4;
1010pub const ISGRTRY: u32 = 8;
1011pub const COPPER_MOVE: u32 = 0;
1012pub const COPPER_WAIT: u32 = 1;
1013pub const CPRNXTBUF: u32 = 2;
1014pub const CPR_NT_LOF: u32 = 32768;
1015pub const CPR_NT_SHT: u32 = 16384;
1016pub const CPR_NT_SYS: u32 = 8192;
1017pub const EXACT_LINE: u32 = 1;
1018pub const HALF_LINE: u32 = 2;
1019pub const SS_GRAPHICS: u32 = 2;
1020pub const VIEW_EXTRA_TYPE: u32 = 1;
1021pub const VIEWPORT_EXTRA_TYPE: u32 = 2;
1022pub const SPECIAL_MONITOR_TYPE: u32 = 3;
1023pub const MONITOR_SPEC_TYPE: u32 = 4;
1024pub const TO_MONITOR: u32 = 0;
1025pub const FROM_MONITOR: u32 = 1;
1026pub const STANDARD_XOFFSET: u32 = 9;
1027pub const STANDARD_YOFFSET: u32 = 0;
1028pub const MSB_REQUEST_NTSC: u32 = 0;
1029pub const MSB_REQUEST_PAL: u32 = 1;
1030pub const MSB_REQUEST_SPECIAL: u32 = 2;
1031pub const MSB_REQUEST_A2024: u32 = 3;
1032pub const MSB_DOUBLE_SPRITES: u32 = 4;
1033pub const MSF_REQUEST_NTSC: u32 = 1;
1034pub const MSF_REQUEST_PAL: u32 = 2;
1035pub const MSF_REQUEST_SPECIAL: u32 = 4;
1036pub const MSF_REQUEST_A2024: u32 = 8;
1037pub const MSF_DOUBLE_SPRITES: u32 = 16;
1038pub const REQUEST_NTSC: u32 = 1;
1039pub const REQUEST_PAL: u32 = 2;
1040pub const REQUEST_SPECIAL: u32 = 4;
1041pub const REQUEST_A2024: u32 = 8;
1042pub const DEFAULT_MONITOR_NAME: &[u8; 16] = b"default.monitor\0";
1043pub const NTSC_MONITOR_NAME: &[u8; 13] = b"ntsc.monitor\0";
1044pub const PAL_MONITOR_NAME: &[u8; 12] = b"pal.monitor\0";
1045pub const STANDARD_MONITOR_MASK: u32 = 3;
1046pub const STANDARD_NTSC_ROWS: u32 = 262;
1047pub const STANDARD_PAL_ROWS: u32 = 312;
1048pub const STANDARD_COLORCLOCKS: u32 = 226;
1049pub const STANDARD_DENISE_MAX: u32 = 455;
1050pub const STANDARD_DENISE_MIN: u32 = 93;
1051pub const STANDARD_NTSC_BEAMCON: u32 = 0;
1052pub const MIN_NTSC_ROW: u32 = 21;
1053pub const MIN_PAL_ROW: u32 = 29;
1054pub const STANDARD_VIEW_X: u32 = 129;
1055pub const STANDARD_VIEW_Y: u32 = 44;
1056pub const STANDARD_HBSTRT: u32 = 6;
1057pub const STANDARD_HSSTRT: u32 = 11;
1058pub const STANDARD_HSSTOP: u32 = 28;
1059pub const STANDARD_HBSTOP: u32 = 44;
1060pub const STANDARD_VBSTRT: u32 = 290;
1061pub const STANDARD_VSSTRT: u32 = 678;
1062pub const STANDARD_VSSTOP: u32 = 938;
1063pub const STANDARD_VBSTOP: u32 = 4198;
1064pub const VGA_COLORCLOCKS: u32 = 113;
1065pub const VGA_TOTAL_ROWS: u32 = 524;
1066pub const VGA_DENISE_MIN: u32 = 59;
1067pub const MIN_VGA_ROW: u32 = 29;
1068pub const VGA_HBSTRT: u32 = 8;
1069pub const VGA_HSSTRT: u32 = 14;
1070pub const VGA_HSSTOP: u32 = 28;
1071pub const VGA_HBSTOP: u32 = 30;
1072pub const VGA_VBSTRT: u32 = 0;
1073pub const VGA_VSSTRT: u32 = 339;
1074pub const VGA_VSSTOP: u32 = 565;
1075pub const VGA_VBSTOP: u32 = 3277;
1076pub const VGA_MONITOR_NAME: &[u8; 12] = b"vga.monitor\0";
1077pub const VGA70_COLORCLOCKS: u32 = 113;
1078pub const VGA70_TOTAL_ROWS: u32 = 449;
1079pub const VGA70_DENISE_MIN: u32 = 59;
1080pub const MIN_VGA70_ROW: u32 = 35;
1081pub const VGA70_HBSTRT: u32 = 8;
1082pub const VGA70_HSSTRT: u32 = 14;
1083pub const VGA70_HSSTOP: u32 = 28;
1084pub const VGA70_HBSTOP: u32 = 30;
1085pub const VGA70_VBSTRT: u32 = 0;
1086pub const VGA70_VSSTRT: u32 = 678;
1087pub const VGA70_VSSTOP: u32 = 904;
1088pub const VGA70_VBSTOP: u32 = 3955;
1089pub const VGA70_MONITOR_NAME: &[u8; 14] = b"vga70.monitor\0";
1090pub const BROADCAST_HBSTRT: u32 = 1;
1091pub const BROADCAST_HSSTRT: u32 = 6;
1092pub const BROADCAST_HSSTOP: u32 = 23;
1093pub const BROADCAST_HBSTOP: u32 = 39;
1094pub const BROADCAST_VBSTRT: u32 = 0;
1095pub const BROADCAST_VSSTRT: u32 = 678;
1096pub const BROADCAST_VSSTOP: u32 = 1356;
1097pub const BROADCAST_VBSTOP: u32 = 7232;
1098pub const RATIO_FIXEDPART: u32 = 4;
1099pub const RATIO_UNITY: u32 = 16;
1100pub const INVALID_ID: i32 = -1;
1101pub const MONITOR_ID_MASK: u32 = 4294905856;
1102pub const DEFAULT_MONITOR_ID: u32 = 0;
1103pub const NTSC_MONITOR_ID: u32 = 69632;
1104pub const PAL_MONITOR_ID: u32 = 135168;
1105pub const LORES_KEY: u32 = 0;
1106pub const HIRES_KEY: u32 = 32768;
1107pub const SUPER_KEY: u32 = 32800;
1108pub const HAM_KEY: u32 = 2048;
1109pub const LORESLACE_KEY: u32 = 4;
1110pub const HIRESLACE_KEY: u32 = 32772;
1111pub const SUPERLACE_KEY: u32 = 32804;
1112pub const HAMLACE_KEY: u32 = 2052;
1113pub const LORESDPF_KEY: u32 = 1024;
1114pub const HIRESDPF_KEY: u32 = 33792;
1115pub const SUPERDPF_KEY: u32 = 33824;
1116pub const LORESLACEDPF_KEY: u32 = 1028;
1117pub const HIRESLACEDPF_KEY: u32 = 33796;
1118pub const SUPERLACEDPF_KEY: u32 = 33828;
1119pub const LORESDPF2_KEY: u32 = 1088;
1120pub const HIRESDPF2_KEY: u32 = 33856;
1121pub const SUPERDPF2_KEY: u32 = 33888;
1122pub const LORESLACEDPF2_KEY: u32 = 1092;
1123pub const HIRESLACEDPF2_KEY: u32 = 33860;
1124pub const SUPERLACEDPF2_KEY: u32 = 33892;
1125pub const EXTRAHALFBRITE_KEY: u32 = 128;
1126pub const EXTRAHALFBRITELACE_KEY: u32 = 132;
1127pub const HIRESHAM_KEY: u32 = 34816;
1128pub const SUPERHAM_KEY: u32 = 34848;
1129pub const HIRESEHB_KEY: u32 = 32896;
1130pub const SUPEREHB_KEY: u32 = 32928;
1131pub const HIRESHAMLACE_KEY: u32 = 34820;
1132pub const SUPERHAMLACE_KEY: u32 = 34852;
1133pub const HIRESEHBLACE_KEY: u32 = 32900;
1134pub const SUPEREHBLACE_KEY: u32 = 32932;
1135pub const LORESSDBL_KEY: u32 = 8;
1136pub const LORESHAMSDBL_KEY: u32 = 2056;
1137pub const LORESEHBSDBL_KEY: u32 = 136;
1138pub const HIRESHAMSDBL_KEY: u32 = 34824;
1139pub const VGA_MONITOR_ID: u32 = 200704;
1140pub const VGAEXTRALORES_KEY: u32 = 200708;
1141pub const VGALORES_KEY: u32 = 233476;
1142pub const VGAPRODUCT_KEY: u32 = 233508;
1143pub const VGAHAM_KEY: u32 = 202756;
1144pub const VGAEXTRALORESLACE_KEY: u32 = 200709;
1145pub const VGALORESLACE_KEY: u32 = 233477;
1146pub const VGAPRODUCTLACE_KEY: u32 = 233509;
1147pub const VGAHAMLACE_KEY: u32 = 202757;
1148pub const VGAEXTRALORESDPF_KEY: u32 = 201732;
1149pub const VGALORESDPF_KEY: u32 = 234500;
1150pub const VGAPRODUCTDPF_KEY: u32 = 234532;
1151pub const VGAEXTRALORESLACEDPF_KEY: u32 = 201733;
1152pub const VGALORESLACEDPF_KEY: u32 = 234501;
1153pub const VGAPRODUCTLACEDPF_KEY: u32 = 234533;
1154pub const VGAEXTRALORESDPF2_KEY: u32 = 201796;
1155pub const VGALORESDPF2_KEY: u32 = 234564;
1156pub const VGAPRODUCTDPF2_KEY: u32 = 234596;
1157pub const VGAEXTRALORESLACEDPF2_KEY: u32 = 201797;
1158pub const VGALORESLACEDPF2_KEY: u32 = 234565;
1159pub const VGAPRODUCTLACEDPF2_KEY: u32 = 234597;
1160pub const VGAEXTRAHALFBRITE_KEY: u32 = 200836;
1161pub const VGAEXTRAHALFBRITELACE_KEY: u32 = 200837;
1162pub const VGAPRODUCTHAM_KEY: u32 = 235556;
1163pub const VGALORESHAM_KEY: u32 = 235524;
1164pub const VGAEXTRALORESHAM_KEY: u32 = 202756;
1165pub const VGAPRODUCTHAMLACE_KEY: u32 = 235557;
1166pub const VGALORESHAMLACE_KEY: u32 = 235525;
1167pub const VGAEXTRALORESHAMLACE_KEY: u32 = 202757;
1168pub const VGAEXTRALORESEHB_KEY: u32 = 200836;
1169pub const VGAEXTRALORESEHBLACE_KEY: u32 = 200837;
1170pub const VGALORESEHB_KEY: u32 = 233604;
1171pub const VGALORESEHBLACE_KEY: u32 = 233605;
1172pub const VGAEHB_KEY: u32 = 233636;
1173pub const VGAEHBLACE_KEY: u32 = 233637;
1174pub const VGAEXTRALORESDBL_KEY: u32 = 200704;
1175pub const VGALORESDBL_KEY: u32 = 233472;
1176pub const VGAPRODUCTDBL_KEY: u32 = 233504;
1177pub const VGAEXTRALORESHAMDBL_KEY: u32 = 202752;
1178pub const VGALORESHAMDBL_KEY: u32 = 235520;
1179pub const VGAPRODUCTHAMDBL_KEY: u32 = 235552;
1180pub const VGAEXTRALORESEHBDBL_KEY: u32 = 200832;
1181pub const VGALORESEHBDBL_KEY: u32 = 233600;
1182pub const VGAPRODUCTEHBDBL_KEY: u32 = 233632;
1183pub const A2024_MONITOR_ID: u32 = 266240;
1184pub const A2024TENHERTZ_KEY: u32 = 266240;
1185pub const A2024FIFTEENHERTZ_KEY: u32 = 299008;
1186pub const PROTO_MONITOR_ID: u32 = 331776;
1187pub const EURO72_MONITOR_ID: u32 = 397312;
1188pub const EURO72EXTRALORES_KEY: u32 = 397316;
1189pub const EURO72LORES_KEY: u32 = 430084;
1190pub const EURO72PRODUCT_KEY: u32 = 430116;
1191pub const EURO72HAM_KEY: u32 = 399364;
1192pub const EURO72EXTRALORESLACE_KEY: u32 = 397317;
1193pub const EURO72LORESLACE_KEY: u32 = 430085;
1194pub const EURO72PRODUCTLACE_KEY: u32 = 430117;
1195pub const EURO72HAMLACE_KEY: u32 = 399365;
1196pub const EURO72EXTRALORESDPF_KEY: u32 = 398340;
1197pub const EURO72LORESDPF_KEY: u32 = 431108;
1198pub const EURO72PRODUCTDPF_KEY: u32 = 431140;
1199pub const EURO72EXTRALORESLACEDPF_KEY: u32 = 398341;
1200pub const EURO72LORESLACEDPF_KEY: u32 = 431109;
1201pub const EURO72PRODUCTLACEDPF_KEY: u32 = 431141;
1202pub const EURO72EXTRALORESDPF2_KEY: u32 = 398404;
1203pub const EURO72LORESDPF2_KEY: u32 = 431172;
1204pub const EURO72PRODUCTDPF2_KEY: u32 = 431204;
1205pub const EURO72EXTRALORESLACEDPF2_KEY: u32 = 398405;
1206pub const EURO72LORESLACEDPF2_KEY: u32 = 431173;
1207pub const EURO72PRODUCTLACEDPF2_KEY: u32 = 431205;
1208pub const EURO72EXTRAHALFBRITE_KEY: u32 = 397444;
1209pub const EURO72EXTRAHALFBRITELACE_KEY: u32 = 397445;
1210pub const EURO72PRODUCTHAM_KEY: u32 = 432164;
1211pub const EURO72PRODUCTHAMLACE_KEY: u32 = 432165;
1212pub const EURO72LORESHAM_KEY: u32 = 432132;
1213pub const EURO72LORESHAMLACE_KEY: u32 = 432133;
1214pub const EURO72EXTRALORESHAM_KEY: u32 = 399364;
1215pub const EURO72EXTRALORESHAMLACE_KEY: u32 = 399365;
1216pub const EURO72EXTRALORESEHB_KEY: u32 = 397444;
1217pub const EURO72EXTRALORESEHBLACE_KEY: u32 = 397445;
1218pub const EURO72LORESEHB_KEY: u32 = 430212;
1219pub const EURO72LORESEHBLACE_KEY: u32 = 430213;
1220pub const EURO72EHB_KEY: u32 = 430244;
1221pub const EURO72EHBLACE_KEY: u32 = 430245;
1222pub const EURO72EXTRALORESDBL_KEY: u32 = 397312;
1223pub const EURO72LORESDBL_KEY: u32 = 430080;
1224pub const EURO72PRODUCTDBL_KEY: u32 = 430112;
1225pub const EURO72EXTRALORESHAMDBL_KEY: u32 = 399360;
1226pub const EURO72LORESHAMDBL_KEY: u32 = 432128;
1227pub const EURO72PRODUCTHAMDBL_KEY: u32 = 432160;
1228pub const EURO72EXTRALORESEHBDBL_KEY: u32 = 397440;
1229pub const EURO72LORESEHBDBL_KEY: u32 = 430208;
1230pub const EURO72PRODUCTEHBDBL_KEY: u32 = 430240;
1231pub const EURO36_MONITOR_ID: u32 = 462848;
1232pub const SUPER72_MONITOR_ID: u32 = 528384;
1233pub const SUPER72LORESDBL_KEY: u32 = 528392;
1234pub const SUPER72HIRESDBL_KEY: u32 = 561160;
1235pub const SUPER72SUPERDBL_KEY: u32 = 561192;
1236pub const SUPER72LORESHAMDBL_KEY: u32 = 530440;
1237pub const SUPER72HIRESHAMDBL_KEY: u32 = 563208;
1238pub const SUPER72SUPERHAMDBL_KEY: u32 = 563240;
1239pub const SUPER72LORESEHBDBL_KEY: u32 = 528520;
1240pub const SUPER72HIRESEHBDBL_KEY: u32 = 561288;
1241pub const SUPER72SUPEREHBDBL_KEY: u32 = 561320;
1242pub const DBLNTSC_MONITOR_ID: u32 = 593920;
1243pub const DBLNTSCLORES_KEY: u32 = 593920;
1244pub const DBLNTSCLORESFF_KEY: u32 = 593924;
1245pub const DBLNTSCLORESHAM_KEY: u32 = 595968;
1246pub const DBLNTSCLORESHAMFF_KEY: u32 = 595972;
1247pub const DBLNTSCLORESEHB_KEY: u32 = 594048;
1248pub const DBLNTSCLORESEHBFF_KEY: u32 = 594052;
1249pub const DBLNTSCLORESLACE_KEY: u32 = 593925;
1250pub const DBLNTSCLORESHAMLACE_KEY: u32 = 595973;
1251pub const DBLNTSCLORESEHBLACE_KEY: u32 = 594053;
1252pub const DBLNTSCLORESDPF_KEY: u32 = 594944;
1253pub const DBLNTSCLORESDPFFF_KEY: u32 = 594948;
1254pub const DBLNTSCLORESDPFLACE_KEY: u32 = 594949;
1255pub const DBLNTSCLORESDPF2_KEY: u32 = 595008;
1256pub const DBLNTSCLORESDPF2FF_KEY: u32 = 595012;
1257pub const DBLNTSCLORESDPF2LACE_KEY: u32 = 595013;
1258pub const DBLNTSCHIRES_KEY: u32 = 626688;
1259pub const DBLNTSCHIRESFF_KEY: u32 = 626692;
1260pub const DBLNTSCHIRESHAM_KEY: u32 = 628736;
1261pub const DBLNTSCHIRESHAMFF_KEY: u32 = 628740;
1262pub const DBLNTSCHIRESLACE_KEY: u32 = 626693;
1263pub const DBLNTSCHIRESHAMLACE_KEY: u32 = 628741;
1264pub const DBLNTSCHIRESEHB_KEY: u32 = 626816;
1265pub const DBLNTSCHIRESEHBFF_KEY: u32 = 626820;
1266pub const DBLNTSCHIRESEHBLACE_KEY: u32 = 626821;
1267pub const DBLNTSCHIRESDPF_KEY: u32 = 627712;
1268pub const DBLNTSCHIRESDPFFF_KEY: u32 = 627716;
1269pub const DBLNTSCHIRESDPFLACE_KEY: u32 = 627717;
1270pub const DBLNTSCHIRESDPF2_KEY: u32 = 627776;
1271pub const DBLNTSCHIRESDPF2FF_KEY: u32 = 627780;
1272pub const DBLNTSCHIRESDPF2LACE_KEY: u32 = 627781;
1273pub const DBLNTSCEXTRALORES_KEY: u32 = 594432;
1274pub const DBLNTSCEXTRALORESHAM_KEY: u32 = 596480;
1275pub const DBLNTSCEXTRALORESEHB_KEY: u32 = 594560;
1276pub const DBLNTSCEXTRALORESDPF_KEY: u32 = 595456;
1277pub const DBLNTSCEXTRALORESDPF2_KEY: u32 = 595520;
1278pub const DBLNTSCEXTRALORESFF_KEY: u32 = 594436;
1279pub const DBLNTSCEXTRALORESHAMFF_KEY: u32 = 596484;
1280pub const DBLNTSCEXTRALORESEHBFF_KEY: u32 = 594564;
1281pub const DBLNTSCEXTRALORESDPFFF_KEY: u32 = 595460;
1282pub const DBLNTSCEXTRALORESDPF2FF_KEY: u32 = 595524;
1283pub const DBLNTSCEXTRALORESLACE_KEY: u32 = 594437;
1284pub const DBLNTSCEXTRALORESHAMLACE_KEY: u32 = 596485;
1285pub const DBLNTSCEXTRALORESEHBLACE_KEY: u32 = 594565;
1286pub const DBLNTSCEXTRALORESDPFLACE_KEY: u32 = 595461;
1287pub const DBLNTSCEXTRALORESDPF2LACE_KEY: u32 = 595525;
1288pub const DBLPAL_MONITOR_ID: u32 = 659456;
1289pub const DBLPALLORES_KEY: u32 = 659456;
1290pub const DBLPALLORESFF_KEY: u32 = 659460;
1291pub const DBLPALLORESHAM_KEY: u32 = 661504;
1292pub const DBLPALLORESHAMFF_KEY: u32 = 661508;
1293pub const DBLPALLORESEHB_KEY: u32 = 659584;
1294pub const DBLPALLORESEHBFF_KEY: u32 = 659588;
1295pub const DBLPALLORESLACE_KEY: u32 = 659461;
1296pub const DBLPALLORESHAMLACE_KEY: u32 = 661509;
1297pub const DBLPALLORESEHBLACE_KEY: u32 = 659589;
1298pub const DBLPALLORESDPF_KEY: u32 = 660480;
1299pub const DBLPALLORESDPFFF_KEY: u32 = 660484;
1300pub const DBLPALLORESDPFLACE_KEY: u32 = 660485;
1301pub const DBLPALLORESDPF2_KEY: u32 = 660544;
1302pub const DBLPALLORESDPF2FF_KEY: u32 = 660548;
1303pub const DBLPALLORESDPF2LACE_KEY: u32 = 660549;
1304pub const DBLPALHIRES_KEY: u32 = 692224;
1305pub const DBLPALHIRESFF_KEY: u32 = 692228;
1306pub const DBLPALHIRESHAM_KEY: u32 = 694272;
1307pub const DBLPALHIRESHAMFF_KEY: u32 = 694276;
1308pub const DBLPALHIRESLACE_KEY: u32 = 692229;
1309pub const DBLPALHIRESHAMLACE_KEY: u32 = 694277;
1310pub const DBLPALHIRESEHB_KEY: u32 = 692352;
1311pub const DBLPALHIRESEHBFF_KEY: u32 = 692356;
1312pub const DBLPALHIRESEHBLACE_KEY: u32 = 692357;
1313pub const DBLPALHIRESDPF_KEY: u32 = 693248;
1314pub const DBLPALHIRESDPFFF_KEY: u32 = 693252;
1315pub const DBLPALHIRESDPFLACE_KEY: u32 = 693253;
1316pub const DBLPALHIRESDPF2_KEY: u32 = 693312;
1317pub const DBLPALHIRESDPF2FF_KEY: u32 = 693316;
1318pub const DBLPALHIRESDPF2LACE_KEY: u32 = 693317;
1319pub const DBLPALEXTRALORES_KEY: u32 = 659968;
1320pub const DBLPALEXTRALORESHAM_KEY: u32 = 662016;
1321pub const DBLPALEXTRALORESEHB_KEY: u32 = 660096;
1322pub const DBLPALEXTRALORESDPF_KEY: u32 = 660992;
1323pub const DBLPALEXTRALORESDPF2_KEY: u32 = 661056;
1324pub const DBLPALEXTRALORESFF_KEY: u32 = 659972;
1325pub const DBLPALEXTRALORESHAMFF_KEY: u32 = 662020;
1326pub const DBLPALEXTRALORESEHBFF_KEY: u32 = 660100;
1327pub const DBLPALEXTRALORESDPFFF_KEY: u32 = 660996;
1328pub const DBLPALEXTRALORESDPF2FF_KEY: u32 = 661060;
1329pub const DBLPALEXTRALORESLACE_KEY: u32 = 659973;
1330pub const DBLPALEXTRALORESHAMLACE_KEY: u32 = 662021;
1331pub const DBLPALEXTRALORESEHBLACE_KEY: u32 = 660101;
1332pub const DBLPALEXTRALORESDPFLACE_KEY: u32 = 660997;
1333pub const DBLPALEXTRALORESDPF2LACE_KEY: u32 = 661061;
1334pub const BIDTAG_DIPFMustHave: u32 = 2147483649;
1335pub const BIDTAG_DIPFMustNotHave: u32 = 2147483650;
1336pub const BIDTAG_ViewPort: u32 = 2147483651;
1337pub const BIDTAG_NominalWidth: u32 = 2147483652;
1338pub const BIDTAG_NominalHeight: u32 = 2147483653;
1339pub const BIDTAG_DesiredWidth: u32 = 2147483654;
1340pub const BIDTAG_DesiredHeight: u32 = 2147483655;
1341pub const BIDTAG_Depth: u32 = 2147483656;
1342pub const BIDTAG_MonitorID: u32 = 2147483657;
1343pub const BIDTAG_SourceID: u32 = 2147483658;
1344pub const BIDTAG_RedBits: u32 = 2147483659;
1345pub const BIDTAG_BlueBits: u32 = 2147483660;
1346pub const BIDTAG_GreenBits: u32 = 2147483661;
1347pub const BIDTAG_GfxPrivate: u32 = 2147483662;
1348pub const DTAG_DISP: u32 = 2147483648;
1349pub const DTAG_DIMS: u32 = 2147487744;
1350pub const DTAG_MNTR: u32 = 2147491840;
1351pub const DTAG_NAME: u32 = 2147495936;
1352pub const DTAG_VEC: u32 = 2147500032;
1353pub const DI_AVAIL_NOCHIPS: u32 = 1;
1354pub const DI_AVAIL_NOMONITOR: u32 = 2;
1355pub const DI_AVAIL_NOTWITHGENLOCK: u32 = 4;
1356pub const DIPF_IS_LACE: u32 = 1;
1357pub const DIPF_IS_DUALPF: u32 = 2;
1358pub const DIPF_IS_PF2PRI: u32 = 4;
1359pub const DIPF_IS_HAM: u32 = 8;
1360pub const DIPF_IS_ECS: u32 = 16;
1361pub const DIPF_IS_AA: u32 = 65536;
1362pub const DIPF_IS_PAL: u32 = 32;
1363pub const DIPF_IS_SPRITES: u32 = 64;
1364pub const DIPF_IS_GENLOCK: u32 = 128;
1365pub const DIPF_IS_WB: u32 = 256;
1366pub const DIPF_IS_DRAGGABLE: u32 = 512;
1367pub const DIPF_IS_PANELLED: u32 = 1024;
1368pub const DIPF_IS_BEAMSYNC: u32 = 2048;
1369pub const DIPF_IS_EXTRAHALFBRITE: u32 = 4096;
1370pub const DIPF_IS_SPRITES_ATT: u32 = 8192;
1371pub const DIPF_IS_SPRITES_CHNG_RES: u32 = 16384;
1372pub const DIPF_IS_SPRITES_BORDER: u32 = 32768;
1373pub const DIPF_IS_SCANDBL: u32 = 131072;
1374pub const DIPF_IS_SPRITES_CHNG_BASE: u32 = 262144;
1375pub const DIPF_IS_SPRITES_CHNG_PRI: u32 = 524288;
1376pub const DIPF_IS_DBUFFER: u32 = 1048576;
1377pub const DIPF_IS_PROGBEAM: u32 = 2097152;
1378pub const DIPF_IS_FOREIGN: u32 = 2147483648;
1379pub const MCOMPAT_MIXED: u32 = 0;
1380pub const MCOMPAT_SELF: u32 = 1;
1381pub const MCOMPAT_NOBODY: i32 = -1;
1382pub const DISPLAYNAMELEN: u32 = 32;
1383pub const VARVBLANK: u32 = 4096;
1384pub const LOLDIS: u32 = 2048;
1385pub const CSCBLANKEN: u32 = 1024;
1386pub const VARVSYNC: u32 = 512;
1387pub const VARHSYNC: u32 = 256;
1388pub const VARBEAM: u32 = 128;
1389pub const DISPLAYDUAL: u32 = 64;
1390pub const DISPLAYPAL: u32 = 32;
1391pub const VARCSYNC: u32 = 16;
1392pub const CSBLANK: u32 = 8;
1393pub const CSYNCTRUE: u32 = 4;
1394pub const VSYNCTRUE: u32 = 2;
1395pub const HSYNCTRUE: u32 = 1;
1396pub const USE_BPLCON3: u32 = 1;
1397pub const BPLCON2_ZDCTEN: u32 = 1024;
1398pub const BPLCON2_ZDBPEN: u32 = 2048;
1399pub const BPLCON2_ZDBPSEL0: u32 = 4096;
1400pub const BPLCON2_ZDBPSEL1: u32 = 8192;
1401pub const BPLCON2_ZDBPSEL2: u32 = 16384;
1402pub const BPLCON3_EXTBLNKEN: u32 = 1;
1403pub const BPLCON3_EXTBLKZD: u32 = 2;
1404pub const BPLCON3_ZDCLKEN: u32 = 4;
1405pub const BPLCON3_BRDNTRAN: u32 = 16;
1406pub const BPLCON3_BRDNBLNK: u32 = 32;
1407pub const VPXB_FREE_ME: u32 = 0;
1408pub const VPXF_FREE_ME: u32 = 1;
1409pub const VPXB_LAST: u32 = 1;
1410pub const VPXF_LAST: u32 = 2;
1411pub const VPXB_STRADDLES_256: u32 = 4;
1412pub const VPXF_STRADDLES_256: u32 = 16;
1413pub const VPXB_STRADDLES_512: u32 = 5;
1414pub const VPXF_STRADDLES_512: u32 = 32;
1415pub const EXTEND_VSTRUCT: u32 = 4096;
1416pub const VPF_A2024: u32 = 64;
1417pub const VPF_TENHZ: u32 = 32;
1418pub const VPB_A2024: u32 = 6;
1419pub const VPB_TENHZ: u32 = 4;
1420pub const GENLOCK_VIDEO: u32 = 2;
1421pub const LACE: u32 = 4;
1422pub const DOUBLESCAN: u32 = 8;
1423pub const SUPERHIRES: u32 = 32;
1424pub const PFBA: u32 = 64;
1425pub const EXTRA_HALFBRITE: u32 = 128;
1426pub const GENLOCK_AUDIO: u32 = 256;
1427pub const DUALPF: u32 = 1024;
1428pub const HAM: u32 = 2048;
1429pub const EXTENDED_MODE: u32 = 4096;
1430pub const VP_HIDE: u32 = 8192;
1431pub const SPRITES: u32 = 16384;
1432pub const HIRES: u32 = 32768;
1433pub const COLORMAP_TYPE_V1_2: u32 = 0;
1434pub const COLORMAP_TYPE_V1_4: u32 = 1;
1435pub const COLORMAP_TYPE_V36: u32 = 1;
1436pub const COLORMAP_TYPE_V39: u32 = 2;
1437pub const COLORMAP_TRANSPARENCY: u32 = 1;
1438pub const COLORPLANE_TRANSPARENCY: u32 = 2;
1439pub const BORDER_BLANKING: u32 = 4;
1440pub const BORDER_NOTRANSPARENCY: u32 = 8;
1441pub const VIDEOCONTROL_BATCH: u32 = 16;
1442pub const USER_COPPER_CLIP: u32 = 32;
1443pub const BORDERSPRITES: u32 = 64;
1444pub const CMF_CMTRANS: u32 = 0;
1445pub const CMF_CPTRANS: u32 = 1;
1446pub const CMF_BRDRBLNK: u32 = 2;
1447pub const CMF_BRDNTRAN: u32 = 3;
1448pub const CMF_BRDRSPRT: u32 = 6;
1449pub const SPRITERESN_ECS: u32 = 0;
1450pub const SPRITERESN_140NS: u32 = 1;
1451pub const SPRITERESN_70NS: u32 = 2;
1452pub const SPRITERESN_35NS: u32 = 3;
1453pub const SPRITERESN_DEFAULT: i32 = -1;
1454pub const CMAB_FULLPALETTE: u32 = 0;
1455pub const CMAF_FULLPALETTE: u32 = 1;
1456pub const CMAB_NO_INTERMED_UPDATE: u32 = 1;
1457pub const CMAF_NO_INTERMED_UPDATE: u32 = 2;
1458pub const CMAB_NO_COLOR_LOAD: u32 = 2;
1459pub const CMAF_NO_COLOR_LOAD: u32 = 4;
1460pub const CMAB_DUALPF_DISABLE: u32 = 3;
1461pub const CMAF_DUALPF_DISABLE: u32 = 8;
1462pub const PENB_EXCLUSIVE: u32 = 0;
1463pub const PENB_NO_SETCOLOR: u32 = 1;
1464pub const PENF_EXCLUSIVE: u32 = 1;
1465pub const PENF_NO_SETCOLOR: u32 = 2;
1466pub const PEN_EXCLUSIVE: u32 = 1;
1467pub const PEN_NO_SETCOLOR: u32 = 2;
1468pub const PRECISION_EXACT: i32 = -1;
1469pub const PRECISION_IMAGE: u32 = 0;
1470pub const PRECISION_ICON: u32 = 16;
1471pub const PRECISION_GUI: u32 = 32;
1472pub const OBP_Precision: u32 = 2214592512;
1473pub const OBP_FailIfBad: u32 = 2214592513;
1474pub const MVP_OK: u32 = 0;
1475pub const MVP_NO_MEM: u32 = 1;
1476pub const MVP_NO_VPE: u32 = 2;
1477pub const MVP_NO_DSPINS: u32 = 3;
1478pub const MVP_NO_DISPLAY: u32 = 4;
1479pub const MVP_OFF_BOTTOM: u32 = 5;
1480pub const MCOP_OK: u32 = 0;
1481pub const MCOP_NO_MEM: u32 = 1;
1482pub const MCOP_NOP: u32 = 2;
1483pub const JAM1: u32 = 0;
1484pub const JAM2: u32 = 1;
1485pub const COMPLEMENT: u32 = 2;
1486pub const INVERSVID: u32 = 4;
1487pub const FRST_DOT: u32 = 1;
1488pub const ONE_DOT: u32 = 2;
1489pub const DBUFFER: u32 = 4;
1490pub const AREAOUTLINE: u32 = 8;
1491pub const NOCROSSFILL: u32 = 32;
1492pub const LAYERSIMPLE: u32 = 1;
1493pub const LAYERSMART: u32 = 2;
1494pub const LAYERSUPER: u32 = 4;
1495pub const LAYERUPDATING: u32 = 16;
1496pub const LAYERBACKDROP: u32 = 64;
1497pub const LAYERREFRESH: u32 = 128;
1498pub const LAYER_CLIPRECTS_LOST: u32 = 256;
1499pub const LAYERIREFRESH: u32 = 512;
1500pub const LAYERIREFRESH2: u32 = 1024;
1501pub const LAYERSAVEBACK: u32 = 2048;
1502pub const LAYERHIDDEN: u32 = 4096;
1503pub const NEWLAYERINFO_CALLED: u32 = 1;
1504pub const FS_NORMAL: u32 = 0;
1505pub const FSB_UNDERLINED: u32 = 0;
1506pub const FSF_UNDERLINED: u32 = 1;
1507pub const FSB_BOLD: u32 = 1;
1508pub const FSF_BOLD: u32 = 2;
1509pub const FSB_ITALIC: u32 = 2;
1510pub const FSF_ITALIC: u32 = 4;
1511pub const FSB_EXTENDED: u32 = 3;
1512pub const FSF_EXTENDED: u32 = 8;
1513pub const FSB_COLORFONT: u32 = 6;
1514pub const FSF_COLORFONT: u32 = 64;
1515pub const FSB_TAGGED: u32 = 7;
1516pub const FSF_TAGGED: u32 = 128;
1517pub const FPB_ROMFONT: u32 = 0;
1518pub const FPF_ROMFONT: u32 = 1;
1519pub const FPB_DISKFONT: u32 = 1;
1520pub const FPF_DISKFONT: u32 = 2;
1521pub const FPB_REVPATH: u32 = 2;
1522pub const FPF_REVPATH: u32 = 4;
1523pub const FPB_TALLDOT: u32 = 3;
1524pub const FPF_TALLDOT: u32 = 8;
1525pub const FPB_WIDEDOT: u32 = 4;
1526pub const FPF_WIDEDOT: u32 = 16;
1527pub const FPB_PROPORTIONAL: u32 = 5;
1528pub const FPF_PROPORTIONAL: u32 = 32;
1529pub const FPB_DESIGNED: u32 = 6;
1530pub const FPF_DESIGNED: u32 = 64;
1531pub const FPB_REMOVED: u32 = 7;
1532pub const FPF_REMOVED: u32 = 128;
1533pub const MAXFONTMATCHWEIGHT: u32 = 32767;
1534pub const TE0B_NOREMFONT: u32 = 0;
1535pub const TE0F_NOREMFONT: u32 = 1;
1536pub const CT_COLORMASK: u32 = 15;
1537pub const CT_COLORFONT: u32 = 1;
1538pub const CT_GREYFONT: u32 = 2;
1539pub const CT_ANTIALIAS: u32 = 4;
1540pub const CTB_MAPCOLOR: u32 = 0;
1541pub const CTF_MAPCOLOR: u32 = 1;
1542pub const DEVICES_TIMER_H: u32 = 1;
1543pub const UNIT_MICROHZ: u32 = 0;
1544pub const UNIT_VBLANK: u32 = 1;
1545pub const UNIT_ECLOCK: u32 = 2;
1546pub const UNIT_WAITUNTIL: u32 = 3;
1547pub const UNIT_WAITECLOCK: u32 = 4;
1548pub const TIMERNAME: &[u8; 13] = b"timer.device\0";
1549pub const TR_ADDREQUEST: u32 = 9;
1550pub const TR_GETSYSTIME: u32 = 10;
1551pub const TR_SETSYSTIME: u32 = 11;
1552pub const IECLASS_NULL: u32 = 0;
1553pub const IECLASS_RAWKEY: u32 = 1;
1554pub const IECLASS_RAWMOUSE: u32 = 2;
1555pub const IECLASS_EVENT: u32 = 3;
1556pub const IECLASS_POINTERPOS: u32 = 4;
1557pub const IECLASS_TIMER: u32 = 6;
1558pub const IECLASS_GADGETDOWN: u32 = 7;
1559pub const IECLASS_GADGETUP: u32 = 8;
1560pub const IECLASS_REQUESTER: u32 = 9;
1561pub const IECLASS_MENULIST: u32 = 10;
1562pub const IECLASS_CLOSEWINDOW: u32 = 11;
1563pub const IECLASS_SIZEWINDOW: u32 = 12;
1564pub const IECLASS_REFRESHWINDOW: u32 = 13;
1565pub const IECLASS_NEWPREFS: u32 = 14;
1566pub const IECLASS_DISKREMOVED: u32 = 15;
1567pub const IECLASS_DISKINSERTED: u32 = 16;
1568pub const IECLASS_ACTIVEWINDOW: u32 = 17;
1569pub const IECLASS_INACTIVEWINDOW: u32 = 18;
1570pub const IECLASS_NEWPOINTERPOS: u32 = 19;
1571pub const IECLASS_MENUHELP: u32 = 20;
1572pub const IECLASS_CHANGEWINDOW: u32 = 21;
1573pub const IECLASS_MAX: u32 = 21;
1574pub const IESUBCLASS_COMPATIBLE: u32 = 0;
1575pub const IESUBCLASS_PIXEL: u32 = 1;
1576pub const IESUBCLASS_TABLET: u32 = 2;
1577pub const IESUBCLASS_NEWTABLET: u32 = 3;
1578pub const IECODE_UP_PREFIX: u32 = 128;
1579pub const IECODE_KEY_CODE_FIRST: u32 = 0;
1580pub const IECODE_KEY_CODE_LAST: u32 = 119;
1581pub const IECODE_COMM_CODE_FIRST: u32 = 120;
1582pub const IECODE_COMM_CODE_LAST: u32 = 127;
1583pub const IECODE_C0_FIRST: u32 = 0;
1584pub const IECODE_C0_LAST: u32 = 31;
1585pub const IECODE_ASCII_FIRST: u32 = 32;
1586pub const IECODE_ASCII_LAST: u32 = 126;
1587pub const IECODE_ASCII_DEL: u32 = 127;
1588pub const IECODE_C1_FIRST: u32 = 128;
1589pub const IECODE_C1_LAST: u32 = 159;
1590pub const IECODE_LATIN1_FIRST: u32 = 160;
1591pub const IECODE_LATIN1_LAST: u32 = 255;
1592pub const IECODE_LBUTTON: u32 = 104;
1593pub const IECODE_RBUTTON: u32 = 105;
1594pub const IECODE_MBUTTON: u32 = 106;
1595pub const IECODE_NOBUTTON: u32 = 255;
1596pub const IECODE_NEWACTIVE: u32 = 1;
1597pub const IECODE_NEWSIZE: u32 = 2;
1598pub const IECODE_REFRESH: u32 = 3;
1599pub const IECODE_REQSET: u32 = 1;
1600pub const IECODE_REQCLEAR: u32 = 0;
1601pub const IEQUALIFIER_LSHIFT: u32 = 1;
1602pub const IEQUALIFIER_RSHIFT: u32 = 2;
1603pub const IEQUALIFIER_CAPSLOCK: u32 = 4;
1604pub const IEQUALIFIER_CONTROL: u32 = 8;
1605pub const IEQUALIFIER_LALT: u32 = 16;
1606pub const IEQUALIFIER_RALT: u32 = 32;
1607pub const IEQUALIFIER_LCOMMAND: u32 = 64;
1608pub const IEQUALIFIER_RCOMMAND: u32 = 128;
1609pub const IEQUALIFIER_NUMERICPAD: u32 = 256;
1610pub const IEQUALIFIER_REPEAT: u32 = 512;
1611pub const IEQUALIFIER_INTERRUPT: u32 = 1024;
1612pub const IEQUALIFIER_MULTIBROADCAST: u32 = 2048;
1613pub const IEQUALIFIER_MIDBUTTON: u32 = 4096;
1614pub const IEQUALIFIER_RBUTTON: u32 = 8192;
1615pub const IEQUALIFIER_LEFTBUTTON: u32 = 16384;
1616pub const IEQUALIFIER_RELATIVEMOUSE: u32 = 32768;
1617pub const IEQUALIFIERB_LSHIFT: u32 = 0;
1618pub const IEQUALIFIERB_RSHIFT: u32 = 1;
1619pub const IEQUALIFIERB_CAPSLOCK: u32 = 2;
1620pub const IEQUALIFIERB_CONTROL: u32 = 3;
1621pub const IEQUALIFIERB_LALT: u32 = 4;
1622pub const IEQUALIFIERB_RALT: u32 = 5;
1623pub const IEQUALIFIERB_LCOMMAND: u32 = 6;
1624pub const IEQUALIFIERB_RCOMMAND: u32 = 7;
1625pub const IEQUALIFIERB_NUMERICPAD: u32 = 8;
1626pub const IEQUALIFIERB_REPEAT: u32 = 9;
1627pub const IEQUALIFIERB_INTERRUPT: u32 = 10;
1628pub const IEQUALIFIERB_MULTIBROADCAST: u32 = 11;
1629pub const IEQUALIFIERB_MIDBUTTON: u32 = 12;
1630pub const IEQUALIFIERB_RBUTTON: u32 = 13;
1631pub const IEQUALIFIERB_LEFTBUTTON: u32 = 14;
1632pub const IEQUALIFIERB_RELATIVEMOUSE: u32 = 15;
1633pub const MENUENABLED: u32 = 1;
1634pub const MIDRAWN: u32 = 256;
1635pub const CHECKIT: u32 = 1;
1636pub const ITEMTEXT: u32 = 2;
1637pub const COMMSEQ: u32 = 4;
1638pub const MENUTOGGLE: u32 = 8;
1639pub const ITEMENABLED: u32 = 16;
1640pub const SUBMENU: u32 = 512;
1641pub const HIGHFLAGS: u32 = 192;
1642pub const HIGHIMAGE: u32 = 0;
1643pub const HIGHCOMP: u32 = 64;
1644pub const HIGHBOX: u32 = 128;
1645pub const HIGHNONE: u32 = 192;
1646pub const CHECKED: u32 = 256;
1647pub const MIF_SHIFTCOMMSEQ: u32 = 2048;
1648pub const MIF_EXTENDED: u32 = 32768;
1649pub const MIF_RESERVED: u32 = 1024;
1650pub const ISDRAWN: u32 = 4096;
1651pub const HIGHITEM: u32 = 8192;
1652pub const MENUTOGGLED: u32 = 16384;
1653pub const POINTREL: u32 = 1;
1654pub const PREDRAWN: u32 = 2;
1655pub const NOISYREQ: u32 = 4;
1656pub const SIMPLEREQ: u32 = 16;
1657pub const USEREQIMAGE: u32 = 32;
1658pub const NOREQBACKFILL: u32 = 64;
1659pub const REQOFFWINDOW: u32 = 4096;
1660pub const REQACTIVE: u32 = 8192;
1661pub const SYSREQUEST: u32 = 16384;
1662pub const DEFERREFRESH: u32 = 32768;
1663pub const GFLG_GADGHIGHBITS: u32 = 3;
1664pub const GFLG_GADGHCOMP: u32 = 0;
1665pub const GFLG_GADGHBOX: u32 = 1;
1666pub const GFLG_GADGHIMAGE: u32 = 2;
1667pub const GFLG_GADGHNONE: u32 = 3;
1668pub const GFLG_GADGIMAGE: u32 = 4;
1669pub const GFLG_RELBOTTOM: u32 = 8;
1670pub const GFLG_RELRIGHT: u32 = 16;
1671pub const GFLG_RELWIDTH: u32 = 32;
1672pub const GFLG_RELHEIGHT: u32 = 64;
1673pub const GFLG_RELSPECIAL: u32 = 16384;
1674pub const GFLG_SELECTED: u32 = 128;
1675pub const GFLG_DISABLED: u32 = 256;
1676pub const GFLG_LABELMASK: u32 = 12288;
1677pub const GFLG_LABELITEXT: u32 = 0;
1678pub const GFLG_LABELSTRING: u32 = 4096;
1679pub const GFLG_LABELIMAGE: u32 = 8192;
1680pub const GFLG_TABCYCLE: u32 = 512;
1681pub const GFLG_STRINGEXTEND: u32 = 1024;
1682pub const GFLG_IMAGEDISABLE: u32 = 2048;
1683pub const GFLG_EXTENDED: u32 = 32768;
1684pub const GACT_RELVERIFY: u32 = 1;
1685pub const GACT_IMMEDIATE: u32 = 2;
1686pub const GACT_ENDGADGET: u32 = 4;
1687pub const GACT_FOLLOWMOUSE: u32 = 8;
1688pub const GACT_RIGHTBORDER: u32 = 16;
1689pub const GACT_LEFTBORDER: u32 = 32;
1690pub const GACT_TOPBORDER: u32 = 64;
1691pub const GACT_BOTTOMBORDER: u32 = 128;
1692pub const GACT_BORDERSNIFF: u32 = 32768;
1693pub const GACT_TOGGLESELECT: u32 = 256;
1694pub const GACT_BOOLEXTEND: u32 = 8192;
1695pub const GACT_STRINGLEFT: u32 = 0;
1696pub const GACT_STRINGCENTER: u32 = 512;
1697pub const GACT_STRINGRIGHT: u32 = 1024;
1698pub const GACT_LONGINT: u32 = 2048;
1699pub const GACT_ALTKEYMAP: u32 = 4096;
1700pub const GACT_STRINGEXTEND: u32 = 8192;
1701pub const GACT_ACTIVEGADGET: u32 = 16384;
1702pub const GTYP_GADGETTYPE: u32 = 64512;
1703pub const GTYP_SCRGADGET: u32 = 16384;
1704pub const GTYP_GZZGADGET: u32 = 8192;
1705pub const GTYP_REQGADGET: u32 = 4096;
1706pub const GTYP_SYSGADGET: u32 = 32768;
1707pub const GTYP_SYSTYPEMASK: u32 = 240;
1708pub const GTYP_SIZING: u32 = 16;
1709pub const GTYP_WDRAGGING: u32 = 32;
1710pub const GTYP_SDRAGGING: u32 = 48;
1711pub const GTYP_WDEPTH: u32 = 64;
1712pub const GTYP_SDEPTH: u32 = 80;
1713pub const GTYP_WZOOM: u32 = 96;
1714pub const GTYP_SUNUSED: u32 = 112;
1715pub const GTYP_CLOSE: u32 = 128;
1716pub const GTYP_ICONIFY: u32 = 144;
1717pub const GTYP_WUPFRONT: u32 = 64;
1718pub const GTYP_SUPFRONT: u32 = 80;
1719pub const GTYP_WDOWNBACK: u32 = 96;
1720pub const GTYP_SDOWNBACK: u32 = 112;
1721pub const GTYP_GTYPEMASK: u32 = 7;
1722pub const GTYP_BOOLGADGET: u32 = 1;
1723pub const GTYP_GADGET0002: u32 = 2;
1724pub const GTYP_PROPGADGET: u32 = 3;
1725pub const GTYP_STRGADGET: u32 = 4;
1726pub const GTYP_CUSTOMGADGET: u32 = 5;
1727pub const GMORE_BOUNDS: u32 = 1;
1728pub const GMORE_GADGETHELP: u32 = 2;
1729pub const GMORE_SCROLLRASTER: u32 = 4;
1730pub const GMORE_HIDDEN: u32 = 16;
1731pub const GMORE_BOOPSIGADGET: u32 = 1024;
1732pub const GMORE_FREEIMAGE: u32 = 2048;
1733pub const GMORE_PARENTHIDDEN: u32 = 16777216;
1734pub const BOOLMASK: u32 = 1;
1735pub const AUTOKNOB: u32 = 1;
1736pub const FREEHORIZ: u32 = 2;
1737pub const FREEVERT: u32 = 4;
1738pub const PROPBORDERLESS: u32 = 8;
1739pub const KNOBHIT: u32 = 256;
1740pub const PROPNEWLOOK: u32 = 16;
1741pub const SMARTKNOBIMAGE: u32 = 32;
1742pub const KNOBHMIN: u32 = 6;
1743pub const KNOBVMIN: u32 = 4;
1744pub const MAXBODY: u32 = 65535;
1745pub const MAXPOT: u32 = 65535;
1746pub const INTUIWHEELDATA_VERSION: u32 = 2;
1747pub const IDCMP_SIZEVERIFY: u32 = 1;
1748pub const IDCMP_NEWSIZE: u32 = 2;
1749pub const IDCMP_REFRESHWINDOW: u32 = 4;
1750pub const IDCMP_MOUSEBUTTONS: u32 = 8;
1751pub const IDCMP_MOUSEMOVE: u32 = 16;
1752pub const IDCMP_GADGETDOWN: u32 = 32;
1753pub const IDCMP_GADGETUP: u32 = 64;
1754pub const IDCMP_REQSET: u32 = 128;
1755pub const IDCMP_MENUPICK: u32 = 256;
1756pub const IDCMP_CLOSEWINDOW: u32 = 512;
1757pub const IDCMP_RAWKEY: u32 = 1024;
1758pub const IDCMP_REQVERIFY: u32 = 2048;
1759pub const IDCMP_REQCLEAR: u32 = 4096;
1760pub const IDCMP_MENUVERIFY: u32 = 8192;
1761pub const IDCMP_NEWPREFS: u32 = 16384;
1762pub const IDCMP_DISKINSERTED: u32 = 32768;
1763pub const IDCMP_DISKREMOVED: u32 = 65536;
1764pub const IDCMP_WBENCHMESSAGE: u32 = 131072;
1765pub const IDCMP_ACTIVEWINDOW: u32 = 262144;
1766pub const IDCMP_INACTIVEWINDOW: u32 = 524288;
1767pub const IDCMP_DELTAMOVE: u32 = 1048576;
1768pub const IDCMP_VANILLAKEY: u32 = 2097152;
1769pub const IDCMP_INTUITICKS: u32 = 4194304;
1770pub const IDCMP_IDCMPUPDATE: u32 = 8388608;
1771pub const IDCMP_MENUHELP: u32 = 16777216;
1772pub const IDCMP_CHANGEWINDOW: u32 = 33554432;
1773pub const IDCMP_GADGETHELP: u32 = 67108864;
1774pub const IDCMP_EXTENDEDMOUSE: u32 = 134217728;
1775pub const IDCMP_LONELYMESSAGE: u32 = 2147483648;
1776pub const CWCODE_MOVESIZE: u32 = 0;
1777pub const CWCODE_DEPTH: u32 = 1;
1778pub const CWCODE_HIDE: u32 = 2;
1779pub const CWCODE_SHOW: u32 = 3;
1780pub const MENUHOT: u32 = 1;
1781pub const MENUCANCEL: u32 = 2;
1782pub const MENUWAITING: u32 = 3;
1783pub const OKOK: u32 = 1;
1784pub const OKABORT: u32 = 4;
1785pub const OKCANCEL: u32 = 2;
1786pub const WBENCHOPEN: u32 = 1;
1787pub const WBENCHCLOSE: u32 = 2;
1788pub const WFLG_SIZEGADGET: u32 = 1;
1789pub const WFLG_DRAGBAR: u32 = 2;
1790pub const WFLG_DEPTHGADGET: u32 = 4;
1791pub const WFLG_CLOSEGADGET: u32 = 8;
1792pub const WFLG_SIZEBRIGHT: u32 = 16;
1793pub const WFLG_SIZEBBOTTOM: u32 = 32;
1794pub const WFLG_REFRESHBITS: u32 = 192;
1795pub const WFLG_SMART_REFRESH: u32 = 0;
1796pub const WFLG_SIMPLE_REFRESH: u32 = 64;
1797pub const WFLG_SUPER_BITMAP: u32 = 128;
1798pub const WFLG_OTHER_REFRESH: u32 = 192;
1799pub const WFLG_BACKDROP: u32 = 256;
1800pub const WFLG_REPORTMOUSE: u32 = 512;
1801pub const WFLG_GIMMEZEROZERO: u32 = 1024;
1802pub const WFLG_BORDERLESS: u32 = 2048;
1803pub const WFLG_ACTIVATE: u32 = 4096;
1804pub const WFLG_RMBTRAP: u32 = 65536;
1805pub const WFLG_NOCAREREFRESH: u32 = 131072;
1806pub const WFLG_NW_EXTENDED: u32 = 262144;
1807pub const WFLG_NEWLOOKMENUS: u32 = 2097152;
1808pub const WFLG_WINDOWACTIVE: u32 = 8192;
1809pub const WFLG_INREQUEST: u32 = 16384;
1810pub const WFLG_MENUSTATE: u32 = 32768;
1811pub const WFLG_WINDOWREFRESH: u32 = 16777216;
1812pub const WFLG_WBENCHWINDOW: u32 = 33554432;
1813pub const WFLG_WINDOWTICKED: u32 = 67108864;
1814pub const WFLG_VISITOR: u32 = 134217728;
1815pub const WFLG_ZOOMED: u32 = 268435456;
1816pub const WFLG_HASZOOM: u32 = 536870912;
1817pub const WFLG_HASICONIFY: u32 = 1073741824;
1818pub const DEFAULTMOUSEQUEUE: u32 = 5;
1819pub const HC_GADGETHELP: u32 = 1;
1820pub const INTUITION_SCREENS_H: u32 = 1;
1821pub const DRI_VERSION: u32 = 3;
1822pub const DRIF_NEWLOOK: u32 = 1;
1823pub const DETAILPEN: u32 = 0;
1824pub const BLOCKPEN: u32 = 1;
1825pub const TEXTPEN: u32 = 2;
1826pub const SHINEPEN: u32 = 3;
1827pub const SHADOWPEN: u32 = 4;
1828pub const FILLPEN: u32 = 5;
1829pub const FILLTEXTPEN: u32 = 6;
1830pub const BACKGROUNDPEN: u32 = 7;
1831pub const HIGHLIGHTTEXTPEN: u32 = 8;
1832pub const BARDETAILPEN: u32 = 9;
1833pub const BARBLOCKPEN: u32 = 10;
1834pub const BARTRIMPEN: u32 = 11;
1835pub const BARCONTOURPEN: u32 = 12;
1836pub const NUMDRIPENS: u32 = 13;
1837pub const PEN_C3: u32 = 65276;
1838pub const PEN_C2: u32 = 65277;
1839pub const PEN_C1: u32 = 65278;
1840pub const PEN_C0: u32 = 65279;
1841pub const SCREENTYPE: u32 = 15;
1842pub const WBENCHSCREEN: u32 = 1;
1843pub const PUBLICSCREEN: u32 = 2;
1844pub const CUSTOMSCREEN: u32 = 15;
1845pub const SHOWTITLE: u32 = 16;
1846pub const BEEPING: u32 = 32;
1847pub const CUSTOMBITMAP: u32 = 64;
1848pub const SCREENBEHIND: u32 = 128;
1849pub const SCREENQUIET: u32 = 256;
1850pub const SCREENHIRES: u32 = 512;
1851pub const NS_EXTENDED: u32 = 4096;
1852pub const AUTOSCROLL: u32 = 16384;
1853pub const PENSHARED: u32 = 1024;
1854pub const STDSCREENHEIGHT: i32 = -1;
1855pub const STDSCREENWIDTH: i32 = -1;
1856pub const OSERR_NOMONITOR: u32 = 1;
1857pub const OSERR_NOCHIPS: u32 = 2;
1858pub const OSERR_NOMEM: u32 = 3;
1859pub const OSERR_NOCHIPMEM: u32 = 4;
1860pub const OSERR_PUBNOTUNIQUE: u32 = 5;
1861pub const OSERR_UNKNOWNMODE: u32 = 6;
1862pub const OSERR_TOODEEP: u32 = 7;
1863pub const OSERR_ATTACHFAIL: u32 = 8;
1864pub const OSERR_NOTAVAILABLE: u32 = 9;
1865pub const OSERR_NORTGBITMAP: u32 = 10;
1866pub const OSCAN_TEXT: u32 = 1;
1867pub const OSCAN_STANDARD: u32 = 2;
1868pub const OSCAN_MAX: u32 = 3;
1869pub const OSCAN_VIDEO: u32 = 4;
1870pub const PSNF_PRIVATE: u32 = 1;
1871pub const MAXPUBSCREENNAME: u32 = 139;
1872pub const SHANGHAI: u32 = 1;
1873pub const POPPUBSCREEN: u32 = 2;
1874pub const SDEPTH_TOFRONT: u32 = 0;
1875pub const SDEPTH_TOBACK: u32 = 1;
1876pub const SDEPTH_INFAMILY: u32 = 2;
1877pub const SDEPTH_CHILDONLY: u32 = 2;
1878pub const SPOS_RELATIVE: u32 = 0;
1879pub const SPOS_ABSOLUTE: u32 = 1;
1880pub const SPOS_MAKEVISIBLE: u32 = 2;
1881pub const SPOS_FORCEDRAG: u32 = 4;
1882pub const SB_SCREEN_BITMAP: u32 = 1;
1883pub const SB_COPY_BITMAP: u32 = 2;
1884pub const GADGHIGHBITS: u32 = 3;
1885pub const GADGHCOMP: u32 = 0;
1886pub const GADGHBOX: u32 = 1;
1887pub const GADGHIMAGE: u32 = 2;
1888pub const GADGHNONE: u32 = 3;
1889pub const GADGIMAGE: u32 = 4;
1890pub const GRELBOTTOM: u32 = 8;
1891pub const GRELRIGHT: u32 = 16;
1892pub const GRELWIDTH: u32 = 32;
1893pub const GRELHEIGHT: u32 = 64;
1894pub const SELECTED: u32 = 128;
1895pub const GADGDISABLED: u32 = 256;
1896pub const LABELMASK: u32 = 12288;
1897pub const LABELITEXT: u32 = 0;
1898pub const LABELSTRING: u32 = 4096;
1899pub const LABELIMAGE: u32 = 8192;
1900pub const RELVERIFY: u32 = 1;
1901pub const GADGIMMEDIATE: u32 = 2;
1902pub const ENDGADGET: u32 = 4;
1903pub const FOLLOWMOUSE: u32 = 8;
1904pub const RIGHTBORDER: u32 = 16;
1905pub const LEFTBORDER: u32 = 32;
1906pub const TOPBORDER: u32 = 64;
1907pub const BOTTOMBORDER: u32 = 128;
1908pub const BORDERSNIFF: u32 = 32768;
1909pub const TOGGLESELECT: u32 = 256;
1910pub const BOOLEXTEND: u32 = 8192;
1911pub const STRINGLEFT: u32 = 0;
1912pub const STRINGCENTER: u32 = 512;
1913pub const STRINGRIGHT: u32 = 1024;
1914pub const LONGINT: u32 = 2048;
1915pub const ALTKEYMAP: u32 = 4096;
1916pub const STRINGEXTEND: u32 = 8192;
1917pub const ACTIVEGADGET: u32 = 16384;
1918pub const GADGETTYPE: u32 = 64512;
1919pub const SYSGADGET: u32 = 32768;
1920pub const SCRGADGET: u32 = 16384;
1921pub const GZZGADGET: u32 = 8192;
1922pub const REQGADGET: u32 = 4096;
1923pub const SIZING: u32 = 16;
1924pub const WDRAGGING: u32 = 32;
1925pub const SDRAGGING: u32 = 48;
1926pub const WUPFRONT: u32 = 64;
1927pub const SUPFRONT: u32 = 80;
1928pub const WDOWNBACK: u32 = 96;
1929pub const SDOWNBACK: u32 = 112;
1930pub const CLOSE: u32 = 128;
1931pub const BOOLGADGET: u32 = 1;
1932pub const GADGET0002: u32 = 2;
1933pub const PROPGADGET: u32 = 3;
1934pub const STRGADGET: u32 = 4;
1935pub const CUSTOMGADGET: u32 = 5;
1936pub const GTYPEMASK: u32 = 7;
1937pub const SIZEVERIFY: u32 = 1;
1938pub const NEWSIZE: u32 = 2;
1939pub const REFRESHWINDOW: u32 = 4;
1940pub const MOUSEBUTTONS: u32 = 8;
1941pub const MOUSEMOVE: u32 = 16;
1942pub const GADGETDOWN: u32 = 32;
1943pub const GADGETUP: u32 = 64;
1944pub const REQSET: u32 = 128;
1945pub const MENUPICK: u32 = 256;
1946pub const CLOSEWINDOW: u32 = 512;
1947pub const RAWKEY: u32 = 1024;
1948pub const REQVERIFY: u32 = 2048;
1949pub const REQCLEAR: u32 = 4096;
1950pub const MENUVERIFY: u32 = 8192;
1951pub const NEWPREFS: u32 = 16384;
1952pub const DISKINSERTED: u32 = 32768;
1953pub const DISKREMOVED: u32 = 65536;
1954pub const WBENCHMESSAGE: u32 = 131072;
1955pub const ACTIVEWINDOW: u32 = 262144;
1956pub const INACTIVEWINDOW: u32 = 524288;
1957pub const DELTAMOVE: u32 = 1048576;
1958pub const VANILLAKEY: u32 = 2097152;
1959pub const INTUITICKS: u32 = 4194304;
1960pub const IDCMPUPDATE: u32 = 8388608;
1961pub const MENUHELP: u32 = 16777216;
1962pub const CHANGEWINDOW: u32 = 33554432;
1963pub const LONELYMESSAGE: u32 = 2147483648;
1964pub const WINDOWSIZING: u32 = 1;
1965pub const WINDOWDRAG: u32 = 2;
1966pub const WINDOWDEPTH: u32 = 4;
1967pub const WINDOWCLOSE: u32 = 8;
1968pub const SIZEBRIGHT: u32 = 16;
1969pub const SIZEBBOTTOM: u32 = 32;
1970pub const REFRESHBITS: u32 = 192;
1971pub const SMART_REFRESH: u32 = 0;
1972pub const SIMPLE_REFRESH: u32 = 64;
1973pub const SUPER_BITMAP: u32 = 128;
1974pub const OTHER_REFRESH: u32 = 192;
1975pub const BACKDROP: u32 = 256;
1976pub const REPORTMOUSE: u32 = 512;
1977pub const GIMMEZEROZERO: u32 = 1024;
1978pub const BORDERLESS: u32 = 2048;
1979pub const ACTIVATE: u32 = 4096;
1980pub const WINDOWACTIVE: u32 = 8192;
1981pub const INREQUEST: u32 = 16384;
1982pub const MENUSTATE: u32 = 32768;
1983pub const RMBTRAP: u32 = 65536;
1984pub const NOCAREREFRESH: u32 = 131072;
1985pub const WINDOWREFRESH: u32 = 16777216;
1986pub const WBENCHWINDOW: u32 = 33554432;
1987pub const WINDOWTICKED: u32 = 67108864;
1988pub const NW_EXTENDED: u32 = 262144;
1989pub const VISITOR: u32 = 134217728;
1990pub const ZOOMED: u32 = 268435456;
1991pub const HASZOOM: u32 = 536870912;
1992pub const detailPen: u32 = 0;
1993pub const blockPen: u32 = 1;
1994pub const textPen: u32 = 2;
1995pub const shinePen: u32 = 3;
1996pub const shadowPen: u32 = 4;
1997pub const hifillPen: u32 = 5;
1998pub const hifilltextPen: u32 = 6;
1999pub const backgroundPen: u32 = 7;
2000pub const hilighttextPen: u32 = 8;
2001pub const numDrIPens: u32 = 13;
2002pub const INTUITION_PREFERENCES_H: u32 = 1;
2003pub const FILENAME_SIZE: u32 = 30;
2004pub const DEVNAME_SIZE: u32 = 16;
2005pub const POINTERSIZE: u32 = 36;
2006pub const TOPAZ_EIGHTY: u32 = 8;
2007pub const TOPAZ_SIXTY: u32 = 9;
2008pub const LACEWB: u32 = 1;
2009pub const LW_RESERVED: u32 = 1;
2010pub const SCREEN_DRAG: u32 = 16384;
2011pub const MOUSE_ACCEL: u32 = 32768;
2012pub const PARALLEL_PRINTER: u32 = 0;
2013pub const SERIAL_PRINTER: u32 = 1;
2014pub const BAUD_110: u32 = 0;
2015pub const BAUD_300: u32 = 1;
2016pub const BAUD_1200: u32 = 2;
2017pub const BAUD_2400: u32 = 3;
2018pub const BAUD_4800: u32 = 4;
2019pub const BAUD_9600: u32 = 5;
2020pub const BAUD_19200: u32 = 6;
2021pub const BAUD_MIDI: u32 = 7;
2022pub const FANFOLD: u32 = 0;
2023pub const SINGLE: u32 = 128;
2024pub const PICA: u32 = 0;
2025pub const ELITE: u32 = 1024;
2026pub const FINE: u32 = 2048;
2027pub const DRAFT: u32 = 0;
2028pub const LETTER: u32 = 256;
2029pub const SIX_LPI: u32 = 0;
2030pub const EIGHT_LPI: u32 = 512;
2031pub const IMAGE_POSITIVE: u32 = 0;
2032pub const IMAGE_NEGATIVE: u32 = 1;
2033pub const ASPECT_HORIZ: u32 = 0;
2034pub const ASPECT_VERT: u32 = 1;
2035pub const SHADE_BW: u32 = 0;
2036pub const SHADE_GREYSCALE: u32 = 1;
2037pub const SHADE_COLOR: u32 = 2;
2038pub const US_LETTER: u32 = 0;
2039pub const US_LEGAL: u32 = 16;
2040pub const N_TRACTOR: u32 = 32;
2041pub const W_TRACTOR: u32 = 48;
2042pub const CUSTOM: u32 = 64;
2043pub const EURO_A0: u32 = 80;
2044pub const EURO_A1: u32 = 96;
2045pub const EURO_A2: u32 = 112;
2046pub const EURO_A3: u32 = 128;
2047pub const EURO_A4: u32 = 144;
2048pub const EURO_A5: u32 = 160;
2049pub const EURO_A6: u32 = 176;
2050pub const EURO_A7: u32 = 192;
2051pub const EURO_A8: u32 = 208;
2052pub const CUSTOM_NAME: u32 = 0;
2053pub const ALPHA_P_101: u32 = 1;
2054pub const BROTHER_15XL: u32 = 2;
2055pub const CBM_MPS1000: u32 = 3;
2056pub const DIAB_630: u32 = 4;
2057pub const DIAB_ADV_D25: u32 = 5;
2058pub const DIAB_C_150: u32 = 6;
2059pub const EPSON: u32 = 7;
2060pub const EPSON_JX_80: u32 = 8;
2061pub const OKIMATE_20: u32 = 9;
2062pub const QUME_LP_20: u32 = 10;
2063pub const HP_LASERJET: u32 = 11;
2064pub const HP_LASERJET_PLUS: u32 = 12;
2065pub const SBUF_512: u32 = 0;
2066pub const SBUF_1024: u32 = 1;
2067pub const SBUF_2048: u32 = 2;
2068pub const SBUF_4096: u32 = 3;
2069pub const SBUF_8000: u32 = 4;
2070pub const SBUF_16000: u32 = 5;
2071pub const SREAD_BITS: u32 = 240;
2072pub const SWRITE_BITS: u32 = 15;
2073pub const SSTOP_BITS: u32 = 240;
2074pub const SBUFSIZE_BITS: u32 = 15;
2075pub const SPARITY_BITS: u32 = 240;
2076pub const SHSHAKE_BITS: u32 = 15;
2077pub const SPARITY_NONE: u32 = 0;
2078pub const SPARITY_EVEN: u32 = 1;
2079pub const SPARITY_ODD: u32 = 2;
2080pub const SPARITY_MARK: u32 = 3;
2081pub const SPARITY_SPACE: u32 = 4;
2082pub const SHSHAKE_XON: u32 = 0;
2083pub const SHSHAKE_RTS: u32 = 1;
2084pub const SHSHAKE_NONE: u32 = 2;
2085pub const CORRECT_RED: u32 = 1;
2086pub const CORRECT_GREEN: u32 = 2;
2087pub const CORRECT_BLUE: u32 = 4;
2088pub const CENTER_IMAGE: u32 = 8;
2089pub const IGNORE_DIMENSIONS: u32 = 0;
2090pub const BOUNDED_DIMENSIONS: u32 = 16;
2091pub const ABSOLUTE_DIMENSIONS: u32 = 32;
2092pub const PIXEL_DIMENSIONS: u32 = 64;
2093pub const MULTIPLY_DIMENSIONS: u32 = 128;
2094pub const INTEGER_SCALING: u32 = 256;
2095pub const ORDERED_DITHERING: u32 = 0;
2096pub const HALFTONE_DITHERING: u32 = 512;
2097pub const FLOYD_DITHERING: u32 = 1024;
2098pub const ANTI_ALIAS: u32 = 2048;
2099pub const GREY_SCALE2: u32 = 4096;
2100pub const CORRECT_RGB_MASK: u32 = 7;
2101pub const DIMENSIONS_MASK: u32 = 240;
2102pub const DITHERING_MASK: u32 = 1536;
2103pub const NOMENU: u32 = 31;
2104pub const NOITEM: u32 = 63;
2105pub const NOSUB: u32 = 31;
2106pub const MENUNULL: u32 = 65535;
2107pub const CHECKWIDTH: u32 = 19;
2108pub const COMMWIDTH: u32 = 27;
2109pub const LOWCHECKWIDTH: u32 = 13;
2110pub const LOWCOMMWIDTH: u32 = 16;
2111pub const ALERT_TYPE: u32 = 2147483648;
2112pub const RECOVERY_ALERT: u32 = 0;
2113pub const DEADEND_ALERT: u32 = 2147483648;
2114pub const AUTOFRONTPEN: u32 = 0;
2115pub const AUTOBACKPEN: u32 = 1;
2116pub const AUTODRAWMODE: u32 = 1;
2117pub const AUTOLEFTEDGE: u32 = 6;
2118pub const AUTOTOPEDGE: u32 = 3;
2119pub const AUTOITEXTFONT: u32 = 0;
2120pub const AUTONEXTTEXT: u32 = 0;
2121pub const SELECTUP: u32 = 232;
2122pub const SELECTDOWN: u32 = 104;
2123pub const MENUUP: u32 = 233;
2124pub const MENUDOWN: u32 = 105;
2125pub const MIDDLEUP: u32 = 234;
2126pub const MIDDLEDOWN: u32 = 106;
2127pub const ALTLEFT: u32 = 16;
2128pub const ALTRIGHT: u32 = 32;
2129pub const AMIGALEFT: u32 = 64;
2130pub const AMIGARIGHT: u32 = 128;
2131pub const AMIGAKEYS: u32 = 192;
2132pub const CURSORUP: u32 = 76;
2133pub const CURSORLEFT: u32 = 79;
2134pub const CURSORRIGHT: u32 = 78;
2135pub const CURSORDOWN: u32 = 77;
2136pub const KEYCODE_Q: u32 = 16;
2137pub const KEYCODE_Z: u32 = 49;
2138pub const KEYCODE_X: u32 = 50;
2139pub const KEYCODE_V: u32 = 52;
2140pub const KEYCODE_B: u32 = 53;
2141pub const KEYCODE_N: u32 = 54;
2142pub const KEYCODE_M: u32 = 55;
2143pub const KEYCODE_LESS: u32 = 56;
2144pub const KEYCODE_GREATER: u32 = 57;
2145pub const PRD_RAWWRITE: u32 = 9;
2146pub const PRD_PRTCOMMAND: u32 = 10;
2147pub const PRD_DUMPRPORT: u32 = 11;
2148pub const PRD_QUERY: u32 = 12;
2149pub const PRD_RESETPREFS: u32 = 13;
2150pub const PRD_LOADPREFS: u32 = 14;
2151pub const PRD_USEPREFS: u32 = 15;
2152pub const PRD_SAVEPREFS: u32 = 16;
2153pub const PRD_READPREFS: u32 = 17;
2154pub const PRD_WRITEPREFS: u32 = 18;
2155pub const PRD_EDITPREFS: u32 = 19;
2156pub const PRD_SETERRHOOK: u32 = 20;
2157pub const PRD_DUMPRPORTTAGS: u32 = 21;
2158pub const PRD_PRIVATECMD: u32 = 22;
2159pub const PRD_LASTSAVEDPREFS: u32 = 23;
2160pub const aRIS: u32 = 0;
2161pub const aRIN: u32 = 1;
2162pub const aIND: u32 = 2;
2163pub const aNEL: u32 = 3;
2164pub const aRI: u32 = 4;
2165pub const aSGR0: u32 = 5;
2166pub const aSGR3: u32 = 6;
2167pub const aSGR23: u32 = 7;
2168pub const aSGR4: u32 = 8;
2169pub const aSGR24: u32 = 9;
2170pub const aSGR1: u32 = 10;
2171pub const aSGR22: u32 = 11;
2172pub const aSFC: u32 = 12;
2173pub const aSBC: u32 = 13;
2174pub const aSHORP0: u32 = 14;
2175pub const aSHORP2: u32 = 15;
2176pub const aSHORP1: u32 = 16;
2177pub const aSHORP4: u32 = 17;
2178pub const aSHORP3: u32 = 18;
2179pub const aSHORP6: u32 = 19;
2180pub const aSHORP5: u32 = 20;
2181pub const aDEN6: u32 = 21;
2182pub const aDEN5: u32 = 22;
2183pub const aDEN4: u32 = 23;
2184pub const aDEN3: u32 = 24;
2185pub const aDEN2: u32 = 25;
2186pub const aDEN1: u32 = 26;
2187pub const aSUS2: u32 = 27;
2188pub const aSUS1: u32 = 28;
2189pub const aSUS4: u32 = 29;
2190pub const aSUS3: u32 = 30;
2191pub const aSUS0: u32 = 31;
2192pub const aPLU: u32 = 32;
2193pub const aPLD: u32 = 33;
2194pub const aFNT0: u32 = 34;
2195pub const aFNT1: u32 = 35;
2196pub const aFNT2: u32 = 36;
2197pub const aFNT3: u32 = 37;
2198pub const aFNT4: u32 = 38;
2199pub const aFNT5: u32 = 39;
2200pub const aFNT6: u32 = 40;
2201pub const aFNT7: u32 = 41;
2202pub const aFNT8: u32 = 42;
2203pub const aFNT9: u32 = 43;
2204pub const aFNT10: u32 = 44;
2205pub const aPROP2: u32 = 45;
2206pub const aPROP1: u32 = 46;
2207pub const aPROP0: u32 = 47;
2208pub const aTSS: u32 = 48;
2209pub const aJFY5: u32 = 49;
2210pub const aJFY7: u32 = 50;
2211pub const aJFY6: u32 = 51;
2212pub const aJFY0: u32 = 52;
2213pub const aJFY3: u32 = 53;
2214pub const aJFY1: u32 = 54;
2215pub const aVERP0: u32 = 55;
2216pub const aVERP1: u32 = 56;
2217pub const aSLPP: u32 = 57;
2218pub const aPERF: u32 = 58;
2219pub const aPERF0: u32 = 59;
2220pub const aLMS: u32 = 60;
2221pub const aRMS: u32 = 61;
2222pub const aTMS: u32 = 62;
2223pub const aBMS: u32 = 63;
2224pub const aSTBM: u32 = 64;
2225pub const aSLRM: u32 = 65;
2226pub const aCAM: u32 = 66;
2227pub const aHTS: u32 = 67;
2228pub const aVTS: u32 = 68;
2229pub const aTBC0: u32 = 69;
2230pub const aTBC3: u32 = 70;
2231pub const aTBC1: u32 = 71;
2232pub const aTBC4: u32 = 72;
2233pub const aTBCALL: u32 = 73;
2234pub const aTBSALL: u32 = 74;
2235pub const aEXTEND: u32 = 75;
2236pub const aRAW: u32 = 76;
2237pub const SPECIAL_MILCOLS: u32 = 1;
2238pub const SPECIAL_MILROWS: u32 = 2;
2239pub const SPECIAL_FULLCOLS: u32 = 4;
2240pub const SPECIAL_FULLROWS: u32 = 8;
2241pub const SPECIAL_FRACCOLS: u32 = 16;
2242pub const SPECIAL_FRACROWS: u32 = 32;
2243pub const SPECIAL_CENTER: u32 = 64;
2244pub const SPECIAL_ASPECT: u32 = 128;
2245pub const SPECIAL_DENSITY1: u32 = 256;
2246pub const SPECIAL_DENSITY2: u32 = 512;
2247pub const SPECIAL_DENSITY3: u32 = 768;
2248pub const SPECIAL_DENSITY4: u32 = 1024;
2249pub const SPECIAL_DENSITY5: u32 = 1280;
2250pub const SPECIAL_DENSITY6: u32 = 1536;
2251pub const SPECIAL_DENSITY7: u32 = 1792;
2252pub const SPECIAL_NOFORMFEED: u32 = 2048;
2253pub const SPECIAL_TRUSTME: u32 = 4096;
2254pub const SPECIAL_NOPRINT: u32 = 8192;
2255pub const PDERR_NOERR: u32 = 0;
2256pub const PDERR_CANCEL: u32 = 1;
2257pub const PDERR_NOTGRAPHICS: u32 = 2;
2258pub const PDERR_INVERTHAM: u32 = 3;
2259pub const PDERR_BADDIMENSION: u32 = 4;
2260pub const PDERR_DIMENSIONOVFLOW: u32 = 5;
2261pub const PDERR_INTERNALMEMORY: u32 = 6;
2262pub const PDERR_BUFFERMEMORY: u32 = 7;
2263pub const PDERR_TOOKCONTROL: u32 = 8;
2264pub const PDERR_BADPREFERENCES: u32 = 9;
2265pub const PDERR_LASTSTANDARD: u32 = 31;
2266pub const PDERR_FIRSTCUSTOM: u32 = 32;
2267pub const PDERR_LASTCUSTOM: u32 = 126;
2268pub const SPECIAL_DENSITYMASK: u32 = 1792;
2269pub const SPECIAL_DIMENSIONSMASK: u32 = 191;
2270pub const PDHOOK_VERSION: u32 = 1;
2271pub const PARB_SHARED: u32 = 5;
2272pub const PARF_SHARED: u32 = 32;
2273pub const PARB_SLOWMODE: u32 = 4;
2274pub const PARF_SLOWMODE: u32 = 16;
2275pub const PARB_FASTMODE: u32 = 3;
2276pub const PARF_FASTMODE: u32 = 8;
2277pub const PARB_RAD_BOOGIE: u32 = 3;
2278pub const PARF_RAD_BOOGIE: u32 = 8;
2279pub const PARB_ACKMODE: u32 = 2;
2280pub const PARF_ACKMODE: u32 = 4;
2281pub const PARB_EOFMODE: u32 = 1;
2282pub const PARF_EOFMODE: u32 = 2;
2283pub const IOPARB_QUEUED: u32 = 6;
2284pub const IOPARF_QUEUED: u32 = 64;
2285pub const IOPARB_ABORT: u32 = 5;
2286pub const IOPARF_ABORT: u32 = 32;
2287pub const IOPARB_ACTIVE: u32 = 4;
2288pub const IOPARF_ACTIVE: u32 = 16;
2289pub const IOPTB_RWDIR: u32 = 3;
2290pub const IOPTF_RWDIR: u32 = 8;
2291pub const IOPTB_PARSEL: u32 = 2;
2292pub const IOPTF_PARSEL: u32 = 4;
2293pub const IOPTB_PAPEROUT: u32 = 1;
2294pub const IOPTF_PAPEROUT: u32 = 2;
2295pub const IOPTB_PARBUSY: u32 = 0;
2296pub const IOPTF_PARBUSY: u32 = 1;
2297pub const PARALLELNAME: &[u8; 16] = b"parallel.device\0";
2298pub const PDCMD_QUERY: u32 = 9;
2299pub const PDCMD_SETPARAMS: u32 = 10;
2300pub const ParErr_DevBusy: u32 = 1;
2301pub const ParErr_BufTooBig: u32 = 2;
2302pub const ParErr_InvParam: u32 = 3;
2303pub const ParErr_LineErr: u32 = 4;
2304pub const ParErr_NotOpen: u32 = 5;
2305pub const ParErr_PortReset: u32 = 6;
2306pub const ParErr_InitErr: u32 = 7;
2307pub const SER_DEFAULT_CTLCHAR: u32 = 286457856;
2308pub const SDCMD_QUERY: u32 = 9;
2309pub const SDCMD_BREAK: u32 = 10;
2310pub const SDCMD_SETPARAMS: u32 = 11;
2311pub const SERB_XDISABLED: u32 = 7;
2312pub const SERF_XDISABLED: u32 = 128;
2313pub const SERB_EOFMODE: u32 = 6;
2314pub const SERF_EOFMODE: u32 = 64;
2315pub const SERB_SHARED: u32 = 5;
2316pub const SERF_SHARED: u32 = 32;
2317pub const SERB_RAD_BOOGIE: u32 = 4;
2318pub const SERF_RAD_BOOGIE: u32 = 16;
2319pub const SERB_QUEUEDBRK: u32 = 3;
2320pub const SERF_QUEUEDBRK: u32 = 8;
2321pub const SERB_7WIRE: u32 = 2;
2322pub const SERF_7WIRE: u32 = 4;
2323pub const SERB_PARTY_ODD: u32 = 1;
2324pub const SERF_PARTY_ODD: u32 = 2;
2325pub const SERB_PARTY_ON: u32 = 0;
2326pub const SERF_PARTY_ON: u32 = 1;
2327pub const IO_STATB_XOFFREAD: u32 = 12;
2328pub const IO_STATF_XOFFREAD: u32 = 4096;
2329pub const IO_STATB_XOFFWRITE: u32 = 11;
2330pub const IO_STATF_XOFFWRITE: u32 = 2048;
2331pub const IO_STATB_READBREAK: u32 = 10;
2332pub const IO_STATF_READBREAK: u32 = 1024;
2333pub const IO_STATB_WROTEBREAK: u32 = 9;
2334pub const IO_STATF_WROTEBREAK: u32 = 512;
2335pub const IO_STATB_OVERRUN: u32 = 8;
2336pub const IO_STATF_OVERRUN: u32 = 256;
2337pub const SEXTB_MSPON: u32 = 1;
2338pub const SEXTF_MSPON: u32 = 2;
2339pub const SEXTB_MARK: u32 = 0;
2340pub const SEXTF_MARK: u32 = 1;
2341pub const SerErr_DevBusy: u32 = 1;
2342pub const SerErr_BaudMismatch: u32 = 2;
2343pub const SerErr_BufErr: u32 = 4;
2344pub const SerErr_InvParam: u32 = 5;
2345pub const SerErr_LineErr: u32 = 6;
2346pub const SerErr_ParityErr: u32 = 9;
2347pub const SerErr_TimerErr: u32 = 11;
2348pub const SerErr_BufOverflow: u32 = 12;
2349pub const SerErr_NoDSR: u32 = 13;
2350pub const SerErr_DetectedBreak: u32 = 15;
2351pub const SERIALNAME: &[u8; 14] = b"serial.device\0";
2352pub const PRB_FREESEGLIST: u32 = 0;
2353pub const PRF_FREESEGLIST: u32 = 1;
2354pub const PRB_FREECURRDIR: u32 = 1;
2355pub const PRF_FREECURRDIR: u32 = 2;
2356pub const PRB_FREECLI: u32 = 2;
2357pub const PRF_FREECLI: u32 = 4;
2358pub const PRB_CLOSEINPUT: u32 = 3;
2359pub const PRF_CLOSEINPUT: u32 = 8;
2360pub const PRB_CLOSEOUTPUT: u32 = 4;
2361pub const PRF_CLOSEOUTPUT: u32 = 16;
2362pub const PRB_FREEARGS: u32 = 5;
2363pub const PRF_FREEARGS: u32 = 32;
2364pub const PRB_CLOSEERROR: u32 = 6;
2365pub const PRF_CLOSEERROR: u32 = 64;
2366pub const ACTION_NIL: u32 = 0;
2367pub const ACTION_STARTUP: u32 = 0;
2368pub const ACTION_GET_BLOCK: u32 = 2;
2369pub const ACTION_SET_MAP: u32 = 4;
2370pub const ACTION_DIE: u32 = 5;
2371pub const ACTION_EVENT: u32 = 6;
2372pub const ACTION_CURRENT_VOLUME: u32 = 7;
2373pub const ACTION_LOCATE_OBJECT: u32 = 8;
2374pub const ACTION_RENAME_DISK: u32 = 9;
2375pub const ACTION_WRITE: u8 = 87u8;
2376pub const ACTION_READ: u8 = 82u8;
2377pub const ACTION_FREE_LOCK: u32 = 15;
2378pub const ACTION_DELETE_OBJECT: u32 = 16;
2379pub const ACTION_RENAME_OBJECT: u32 = 17;
2380pub const ACTION_MORE_CACHE: u32 = 18;
2381pub const ACTION_COPY_DIR: u32 = 19;
2382pub const ACTION_WAIT_CHAR: u32 = 20;
2383pub const ACTION_SET_PROTECT: u32 = 21;
2384pub const ACTION_CREATE_DIR: u32 = 22;
2385pub const ACTION_EXAMINE_OBJECT: u32 = 23;
2386pub const ACTION_EXAMINE_NEXT: u32 = 24;
2387pub const ACTION_DISK_INFO: u32 = 25;
2388pub const ACTION_INFO: u32 = 26;
2389pub const ACTION_FLUSH: u32 = 27;
2390pub const ACTION_SET_COMMENT: u32 = 28;
2391pub const ACTION_PARENT: u32 = 29;
2392pub const ACTION_TIMER: u32 = 30;
2393pub const ACTION_INHIBIT: u32 = 31;
2394pub const ACTION_DISK_TYPE: u32 = 32;
2395pub const ACTION_DISK_CHANGE: u32 = 33;
2396pub const ACTION_SET_DATE: u32 = 34;
2397pub const ACTION_UNDISK_INFO: u32 = 513;
2398pub const ACTION_SCREEN_MODE: u32 = 994;
2399pub const ACTION_READ_RETURN: u32 = 1001;
2400pub const ACTION_WRITE_RETURN: u32 = 1002;
2401pub const ACTION_SEEK: u32 = 1008;
2402pub const ACTION_FINDUPDATE: u32 = 1004;
2403pub const ACTION_FINDINPUT: u32 = 1005;
2404pub const ACTION_FINDOUTPUT: u32 = 1006;
2405pub const ACTION_END: u32 = 1007;
2406pub const ACTION_SET_FILE_SIZE: u32 = 1022;
2407pub const ACTION_WRITE_PROTECT: u32 = 1023;
2408pub const ACTION_SAME_LOCK: u32 = 40;
2409pub const ACTION_CHANGE_SIGNAL: u32 = 995;
2410pub const ACTION_FORMAT: u32 = 1020;
2411pub const ACTION_MAKE_LINK: u32 = 1021;
2412pub const ACTION_READ_LINK: u32 = 1024;
2413pub const ACTION_FH_FROM_LOCK: u32 = 1026;
2414pub const ACTION_IS_FILESYSTEM: u32 = 1027;
2415pub const ACTION_CHANGE_MODE: u32 = 1028;
2416pub const ACTION_COPY_DIR_FH: u32 = 1030;
2417pub const ACTION_PARENT_FH: u32 = 1031;
2418pub const ACTION_EXAMINE_ALL: u32 = 1033;
2419pub const ACTION_EXAMINE_FH: u32 = 1034;
2420pub const ACTION_LOCK_RECORD: u32 = 2008;
2421pub const ACTION_FREE_RECORD: u32 = 2009;
2422pub const ACTION_ADD_NOTIFY: u32 = 4097;
2423pub const ACTION_REMOVE_NOTIFY: u32 = 4098;
2424pub const ACTION_EXAMINE_ALL_END: u32 = 1035;
2425pub const ACTION_SET_OWNER: u32 = 1036;
2426pub const ACTION_SERIALIZE_DISK: u32 = 4200;
2427pub const RNB_WILDSTAR: u32 = 24;
2428pub const RNF_WILDSTAR: u32 = 16777216;
2429pub const RNB_PRIVATE1: u32 = 1;
2430pub const RNF_PRIVATE1: u32 = 2;
2431pub const CMD_SYSTEM: i32 = -1;
2432pub const CMD_INTERNAL: i32 = -2;
2433pub const CMD_DISABLED: i32 = -999;
2434pub const DLT_DEVICE: u32 = 0;
2435pub const DLT_DIRECTORY: u32 = 1;
2436pub const DLT_VOLUME: u32 = 2;
2437pub const DLT_LATE: u32 = 3;
2438pub const DLT_NONBINDING: u32 = 4;
2439pub const DLT_PRIVATE: i32 = -1;
2440pub const DVPB_UNLOCK: u32 = 0;
2441pub const DVPF_UNLOCK: u32 = 1;
2442pub const DVPB_ASSIGN: u32 = 1;
2443pub const DVPF_ASSIGN: u32 = 2;
2444pub const LDB_DEVICES: u32 = 2;
2445pub const LDF_DEVICES: u32 = 4;
2446pub const LDB_VOLUMES: u32 = 3;
2447pub const LDF_VOLUMES: u32 = 8;
2448pub const LDB_ASSIGNS: u32 = 4;
2449pub const LDF_ASSIGNS: u32 = 16;
2450pub const LDB_ENTRY: u32 = 5;
2451pub const LDF_ENTRY: u32 = 32;
2452pub const LDB_DELETE: u32 = 6;
2453pub const LDF_DELETE: u32 = 64;
2454pub const LDB_READ: u32 = 0;
2455pub const LDF_READ: u32 = 1;
2456pub const LDB_WRITE: u32 = 1;
2457pub const LDF_WRITE: u32 = 2;
2458pub const LDF_ALL: u32 = 28;
2459pub const REPORT_STREAM: u32 = 0;
2460pub const REPORT_TASK: u32 = 1;
2461pub const REPORT_LOCK: u32 = 2;
2462pub const REPORT_VOLUME: u32 = 3;
2463pub const REPORT_INSERT: u32 = 4;
2464pub const ABORT_DISK_ERROR: u32 = 296;
2465pub const ABORT_BUSY: u32 = 288;
2466pub const RUN_EXECUTE: i32 = -1;
2467pub const RUN_SYSTEM: i32 = -2;
2468pub const RUN_SYSTEM_ASYNCH: i32 = -3;
2469pub const ST_ROOT: u32 = 1;
2470pub const ST_USERDIR: u32 = 2;
2471pub const ST_SOFTLINK: u32 = 3;
2472pub const ST_LINKDIR: u32 = 4;
2473pub const ST_FILE: i32 = -3;
2474pub const ST_LINKFILE: i32 = -4;
2475pub const ST_PIPEFILE: i32 = -5;
2476pub const P_OLDSTKSIZE: u32 = 2048;
2477pub const P_STKSIZE: u32 = 4096;
2478pub const P_BUFSIZE: u32 = 256;
2479pub const P_SAFESIZE: u32 = 128;
2480pub const IOB_QUEUED: u32 = 4;
2481pub const IOB_CURRENT: u32 = 5;
2482pub const IOB_SERVICING: u32 = 6;
2483pub const IOB_DONE: u32 = 7;
2484pub const IOF_QUEUED: u32 = 16;
2485pub const IOF_CURRENT: u32 = 32;
2486pub const IOF_SERVICING: u32 = 64;
2487pub const IOF_DONE: u32 = 128;
2488pub const PB_IOR0: u32 = 0;
2489pub const PB_IOR1: u32 = 1;
2490pub const PB_IOOPENED: u32 = 2;
2491pub const PB_EXPUNGED: u32 = 7;
2492pub const PF_IOR0: u32 = 1;
2493pub const PF_IOR1: u32 = 2;
2494pub const PF_IOOPENDED: u32 = 4;
2495pub const PF_EXPUNGED: u32 = 128;
2496pub const DUB_STOPPED: u32 = 0;
2497pub const DUF_STOPPED: u32 = 1;
2498pub const PPCB_GFX: u32 = 0;
2499pub const PPCF_GFX: u32 = 1;
2500pub const PPCB_COLOR: u32 = 1;
2501pub const PPCF_COLOR: u32 = 2;
2502pub const PPC_BWALPHA: u32 = 0;
2503pub const PPC_BWGFX: u32 = 1;
2504pub const PPC_COLORALPHA: u32 = 2;
2505pub const PPC_COLORGFX: u32 = 3;
2506pub const PPCB_EXTENDED: u32 = 2;
2507pub const PPCF_EXTENDED: u32 = 4;
2508pub const PPCB_NOSTRIP: u32 = 3;
2509pub const PPCF_NOSTRIP: u32 = 8;
2510pub const PCC_BW: u32 = 1;
2511pub const PCC_YMC: u32 = 2;
2512pub const PCC_YMC_BW: u32 = 3;
2513pub const PCC_YMCB: u32 = 4;
2514pub const PCC_4COLOR: u32 = 4;
2515pub const PCC_ADDITIVE: u32 = 8;
2516pub const PCC_WB: u32 = 9;
2517pub const PCC_BGR: u32 = 10;
2518pub const PCC_BGR_WB: u32 = 11;
2519pub const PCC_BGRW: u32 = 12;
2520pub const PCC_MULTI_PASS: u32 = 16;
2521pub const DATATYPESCLASS: &[u8; 15] = b"datatypesclass\0";
2522pub const DTST_RAM: u32 = 1;
2523pub const DTST_FILE: u32 = 2;
2524pub const DTST_CLIPBOARD: u32 = 3;
2525pub const DTST_HOTLINK: u32 = 4;
2526pub const DTST_MEMORY: u32 = 5;
2527pub const DTSIF_LAYOUT: u32 = 1;
2528pub const DTSIF_NEWSIZE: u32 = 2;
2529pub const DTSIF_DRAGGING: u32 = 4;
2530pub const DTSIF_DRAGSELECT: u32 = 8;
2531pub const DTSIF_HIGHLIGHT: u32 = 16;
2532pub const DTSIF_PRINTING: u32 = 32;
2533pub const DTSIF_LAYOUTPROC: u32 = 64;
2534pub const DTM_Dummy: u32 = 1536;
2535pub const DTM_FRAMEBOX: u32 = 1537;
2536pub const DTM_PROCLAYOUT: u32 = 1538;
2537pub const DTM_ASYNCLAYOUT: u32 = 1539;
2538pub const DTM_REMOVEDTOBJECT: u32 = 1540;
2539pub const DTM_SELECT: u32 = 1541;
2540pub const DTM_CLEARSELECTED: u32 = 1542;
2541pub const DTM_COPY: u32 = 1543;
2542pub const DTM_PRINT: u32 = 1544;
2543pub const DTM_ABORTPRINT: u32 = 1545;
2544pub const DTM_NEWMEMBER: u32 = 1552;
2545pub const DTM_DISPOSEMEMBER: u32 = 1553;
2546pub const DTM_GOTO: u32 = 1584;
2547pub const DTM_TRIGGER: u32 = 1585;
2548pub const DTM_OBTAINDRAWINFO: u32 = 1600;
2549pub const DTM_DRAW: u32 = 1601;
2550pub const DTM_RELEASEDRAWINFO: u32 = 1602;
2551pub const DTM_WRITE: u32 = 1616;
2552pub const FIF_SCALABLE: u32 = 1;
2553pub const FIF_SCROLLABLE: u32 = 2;
2554pub const FIF_REMAPPABLE: u32 = 4;
2555pub const FRAMEF_SPECIFY: u32 = 1;
2556pub const STM_PAUSE: u32 = 1;
2557pub const STM_PLAY: u32 = 2;
2558pub const STM_CONTENTS: u32 = 3;
2559pub const STM_INDEX: u32 = 4;
2560pub const STM_RETRACE: u32 = 5;
2561pub const STM_BROWSE_PREV: u32 = 6;
2562pub const STM_BROWSE_NEXT: u32 = 7;
2563pub const STM_NEXT_FIELD: u32 = 8;
2564pub const STM_PREV_FIELD: u32 = 9;
2565pub const STM_ACTIVATE_FIELD: u32 = 10;
2566pub const STM_COMMAND: u32 = 11;
2567pub const STM_REWIND: u32 = 12;
2568pub const STM_FASTFORWARD: u32 = 13;
2569pub const STM_STOP: u32 = 14;
2570pub const STM_RESUME: u32 = 15;
2571pub const STM_LOCATE: u32 = 16;
2572pub const STM_HELP: u32 = 17;
2573pub const STM_SEARCH: u32 = 18;
2574pub const STM_SEARCH_NEXT: u32 = 19;
2575pub const STM_SEARCH_PREV: u32 = 20;
2576pub const STM_UNRETRACE: u32 = 21;
2577pub const STM_USER: u32 = 100;
2578pub const STMF_METHOD_MASK: u32 = 65535;
2579pub const STMF_DATA_MASK: u32 = 16711680;
2580pub const STMF_RESERVED_MASK: u32 = 4278190080;
2581pub const STMD_VOID: u32 = 65536;
2582pub const STMD_ULONG: u32 = 131072;
2583pub const STMD_STRPTR: u32 = 196608;
2584pub const STMD_TAGLIST: u32 = 262144;
2585pub const DTWM_IFF: u32 = 0;
2586pub const DTWM_RAW: u32 = 1;
2587pub const PICTUREDTCLASS: &[u8; 17] = b"picture.datatype\0";
2588pub const PDTANUMPICTURES_Unknown: u32 = 0;
2589pub const PMODE_V42: u32 = 0;
2590pub const PMODE_V43: u32 = 1;
2591pub const PDTM_Dummy: u32 = 1632;
2592pub const PDTM_WRITEPIXELARRAY: u32 = 1632;
2593pub const PDTM_READPIXELARRAY: u32 = 1633;
2594pub const PBPAFMT_RGB: u32 = 0;
2595pub const PBPAFMT_RGBA: u32 = 1;
2596pub const PBPAFMT_ARGB: u32 = 2;
2597pub const PBPAFMT_LUT8: u32 = 3;
2598pub const PBPAFMT_GREY8: u32 = 4;
2599pub const PDTM_SCALE: u32 = 1634;
2600pub const PDTM_OBTAINPIXELARRAY: u32 = 1639;
2601pub const POBAB_WRITEGREY8: u32 = 0;
2602pub const POPAF_WRITEGREY8: u32 = 1;
2603pub const mskNone: u32 = 0;
2604pub const mskHasMask: u32 = 1;
2605pub const mskHasTransparentColor: u32 = 2;
2606pub const mskLasso: u32 = 3;
2607pub const mskHasAlpha: u32 = 4;
2608pub const cmpNone: u32 = 0;
2609pub const cmpByteRun1: u32 = 1;
2610pub const cmpByteRun2: u32 = 2;
2611pub const SOUNDDTCLASS: &[u8; 15] = b"sound.datatype\0";
2612pub const CMP_NONE: u32 = 0;
2613pub const CMP_FIBDELTA: u32 = 1;
2614pub const Unity: u32 = 65536;
2615pub const SAMPLETYPE_Left: u32 = 2;
2616pub const SAMPLETYPE_Right: u32 = 4;
2617pub const SAMPLETYPE_Stereo: u32 = 6;
2618pub const ANIMATIONDTCLASS: &[u8; 19] = b"animation.datatype\0";
2619pub const ADTM_Dummy: u32 = 1792;
2620pub const ADTM_LOADFRAME: u32 = 1793;
2621pub const ADTM_UNLOADFRAME: u32 = 1794;
2622pub const ADTM_START: u32 = 1795;
2623pub const ADTM_PAUSE: u32 = 1796;
2624pub const ADTM_STOP: u32 = 1797;
2625pub const ADTM_LOCATE: u32 = 1798;
2626pub const ADTM_LOADNEWFORMATFRAME: u32 = 1799;
2627pub const ADTM_UNLOADNEWFORMATFRAME: u32 = 1800;
2628pub const TEXTDTCLASS: &[u8; 14] = b"text.datatype\0";
2629pub const LNF_LF: u32 = 1;
2630pub const LNF_LINK: u32 = 2;
2631pub const LNF_OBJECT: u32 = 4;
2632pub const LNF_SELECTED: u32 = 8;
2633pub const AUDIONAME: &[u8; 13] = b"audio.device\0";
2634pub const ADHARD_CHANNELS: u32 = 4;
2635pub const ADALLOC_MINPREC: i32 = -128;
2636pub const ADALLOC_MAXPREC: u32 = 127;
2637pub const ADCMD_FREE: u32 = 9;
2638pub const ADCMD_SETPREC: u32 = 10;
2639pub const ADCMD_FINISH: u32 = 11;
2640pub const ADCMD_PERVOL: u32 = 12;
2641pub const ADCMD_LOCK: u32 = 13;
2642pub const ADCMD_WAITCYCLE: u32 = 14;
2643pub const ADCMD_ALLOCATE: u32 = 32;
2644pub const ADIOB_PERVOL: u32 = 4;
2645pub const ADIOF_PERVOL: u32 = 16;
2646pub const ADIOB_SYNCCYCLE: u32 = 5;
2647pub const ADIOF_SYNCCYCLE: u32 = 32;
2648pub const ADIOB_NOWAIT: u32 = 6;
2649pub const ADIOF_NOWAIT: u32 = 64;
2650pub const ADIOB_WRITEMESSAGE: u32 = 7;
2651pub const ADIOF_WRITEMESSAGE: u32 = 128;
2652pub const ADIOERR_NOALLOCATION: i32 = -10;
2653pub const ADIOERR_ALLOCFAILED: i32 = -11;
2654pub const ADIOERR_CHANNELSTOLEN: i32 = -12;
2655pub const BOOTSECTS: u32 = 2;
2656pub const BBNAME_DOS: u32 = 1146049280;
2657pub const BBNAME_KICK: u32 = 1263092555;
2658pub const CD_RESET: u32 = 1;
2659pub const CD_READ: u32 = 2;
2660pub const CD_WRITE: u32 = 3;
2661pub const CD_UPDATE: u32 = 4;
2662pub const CD_CLEAR: u32 = 5;
2663pub const CD_STOP: u32 = 6;
2664pub const CD_START: u32 = 7;
2665pub const CD_FLUSH: u32 = 8;
2666pub const CD_MOTOR: u32 = 9;
2667pub const CD_SEEK: u32 = 10;
2668pub const CD_FORMAT: u32 = 11;
2669pub const CD_REMOVE: u32 = 12;
2670pub const CD_CHANGENUM: u32 = 13;
2671pub const CD_CHANGESTATE: u32 = 14;
2672pub const CD_PROTSTATUS: u32 = 15;
2673pub const CD_GETDRIVETYPE: u32 = 18;
2674pub const CD_GETNUMTRACKS: u32 = 19;
2675pub const CD_ADDCHANGEINT: u32 = 20;
2676pub const CD_REMCHANGEINT: u32 = 21;
2677pub const CD_GETGEOMETRY: u32 = 22;
2678pub const CD_EJECT: u32 = 23;
2679pub const CD_INFO: u32 = 32;
2680pub const CD_CONFIG: u32 = 33;
2681pub const CD_TOCMSF: u32 = 34;
2682pub const CD_TOCLSN: u32 = 35;
2683pub const CD_READXL: u32 = 36;
2684pub const CD_PLAYTRACK: u32 = 37;
2685pub const CD_PLAYMSF: u32 = 38;
2686pub const CD_PLAYLSN: u32 = 39;
2687pub const CD_PAUSE: u32 = 40;
2688pub const CD_SEARCH: u32 = 41;
2689pub const CD_QCODEMSF: u32 = 42;
2690pub const CD_QCODELSN: u32 = 43;
2691pub const CD_ATTENUATE: u32 = 44;
2692pub const CD_ADDFRAMEINT: u32 = 45;
2693pub const CD_REMFRAMEINT: u32 = 46;
2694pub const CDERR_OPENFAIL: i32 = -1;
2695pub const CDERR_ABORTED: i32 = -2;
2696pub const CDERR_NOCMD: i32 = -3;
2697pub const CDERR_BADLENGTH: i32 = -4;
2698pub const CDERR_BADADDRESS: i32 = -5;
2699pub const CDERR_UNITBUSY: i32 = -6;
2700pub const CDERR_SELFTEST: i32 = -7;
2701pub const CDERR_NotSpecified: u32 = 20;
2702pub const CDERR_NoSecHdr: u32 = 21;
2703pub const CDERR_BadSecPreamble: u32 = 22;
2704pub const CDERR_BadSecID: u32 = 23;
2705pub const CDERR_BadHdrSum: u32 = 24;
2706pub const CDERR_BadSecSum: u32 = 25;
2707pub const CDERR_TooFewSecs: u32 = 26;
2708pub const CDERR_BadSecHdr: u32 = 27;
2709pub const CDERR_WriteProt: u32 = 28;
2710pub const CDERR_NoDisk: u32 = 29;
2711pub const CDERR_SeekError: u32 = 30;
2712pub const CDERR_NoMem: u32 = 31;
2713pub const CDERR_BadUnitNum: u32 = 32;
2714pub const CDERR_BadDriveType: u32 = 33;
2715pub const CDERR_DriveInUse: u32 = 34;
2716pub const CDERR_PostReset: u32 = 35;
2717pub const CDERR_BadDataType: u32 = 36;
2718pub const CDERR_InvalidState: u32 = 37;
2719pub const CDERR_Phase: u32 = 42;
2720pub const CDERR_NoBoard: u32 = 50;
2721pub const TAGCD_PLAYSPEED: u32 = 1;
2722pub const TAGCD_READSPEED: u32 = 2;
2723pub const TAGCD_READXLSPEED: u32 = 3;
2724pub const TAGCD_SECTORSIZE: u32 = 4;
2725pub const TAGCD_XLECC: u32 = 5;
2726pub const TAGCD_EJECTRESET: u32 = 6;
2727pub const CDSTSB_CLOSED: u32 = 0;
2728pub const CDSTSB_DISK: u32 = 1;
2729pub const CDSTSB_SPIN: u32 = 2;
2730pub const CDSTSB_TOC: u32 = 3;
2731pub const CDSTSB_CDROM: u32 = 4;
2732pub const CDSTSB_PLAYING: u32 = 5;
2733pub const CDSTSB_PAUSED: u32 = 6;
2734pub const CDSTSB_SEARCH: u32 = 7;
2735pub const CDSTSB_DIRECTION: u32 = 8;
2736pub const CDSTSF_CLOSED: u32 = 1;
2737pub const CDSTSF_DISK: u32 = 2;
2738pub const CDSTSF_SPIN: u32 = 4;
2739pub const CDSTSF_TOC: u32 = 8;
2740pub const CDSTSF_CDROM: u32 = 16;
2741pub const CDSTSF_PLAYING: u32 = 32;
2742pub const CDSTSF_PAUSED: u32 = 64;
2743pub const CDSTSF_SEARCH: u32 = 128;
2744pub const CDSTSF_DIRECTION: u32 = 256;
2745pub const CDMODE_NORMAL: u32 = 0;
2746pub const CDMODE_FFWD: u32 = 1;
2747pub const CDMODE_FREV: u32 = 2;
2748pub const CTLADR_CTLMASK: u32 = 240;
2749pub const CTL_CTLMASK: u32 = 208;
2750pub const CTL_2AUD: u32 = 0;
2751pub const CTL_2AUDEMPH: u32 = 16;
2752pub const CTL_4AUD: u32 = 128;
2753pub const CTL_4AUDEMPH: u32 = 144;
2754pub const CTL_DATA: u32 = 64;
2755pub const CTL_COPYMASK: u32 = 32;
2756pub const CTL_COPY: u32 = 32;
2757pub const CTLADR_ADRMASK: u32 = 15;
2758pub const ADR_POSITION: u32 = 1;
2759pub const ADR_UPC: u32 = 2;
2760pub const ADR_ISRC: u32 = 3;
2761pub const ADR_HYBRID: u32 = 5;
2762pub const CD_ASKKEYMAP: u32 = 9;
2763pub const CD_SETKEYMAP: u32 = 10;
2764pub const CD_ASKDEFAULTKEYMAP: u32 = 11;
2765pub const CD_SETDEFAULTKEYMAP: u32 = 12;
2766pub const CD_SETUPSCROLLBACK: u32 = 13;
2767pub const CD_SETSCROLLBACKPOSITION: u32 = 14;
2768pub const SGR_PRIMARY: u32 = 0;
2769pub const SGR_BOLD: u32 = 1;
2770pub const SGR_ITALIC: u32 = 3;
2771pub const SGR_UNDERSCORE: u32 = 4;
2772pub const SGR_NEGATIVE: u32 = 7;
2773pub const SGR_NORMAL: u32 = 22;
2774pub const SGR_NOTITALIC: u32 = 23;
2775pub const SGR_NOTUNDERSCORE: u32 = 24;
2776pub const SGR_POSITIVE: u32 = 27;
2777pub const SGR_BLACK: u32 = 30;
2778pub const SGR_RED: u32 = 31;
2779pub const SGR_GREEN: u32 = 32;
2780pub const SGR_YELLOW: u32 = 33;
2781pub const SGR_BLUE: u32 = 34;
2782pub const SGR_MAGENTA: u32 = 35;
2783pub const SGR_CYAN: u32 = 36;
2784pub const SGR_WHITE: u32 = 37;
2785pub const SGR_DEFAULT: u32 = 39;
2786pub const SGR_BLACKBG: u32 = 40;
2787pub const SGR_REDBG: u32 = 41;
2788pub const SGR_GREENBG: u32 = 42;
2789pub const SGR_YELLOWBG: u32 = 43;
2790pub const SGR_BLUEBG: u32 = 44;
2791pub const SGR_MAGENTABG: u32 = 45;
2792pub const SGR_CYANBG: u32 = 46;
2793pub const SGR_WHITEBG: u32 = 47;
2794pub const SGR_DEFAULTBG: u32 = 49;
2795pub const SGR_CLR0: u32 = 30;
2796pub const SGR_CLR1: u32 = 31;
2797pub const SGR_CLR2: u32 = 32;
2798pub const SGR_CLR3: u32 = 33;
2799pub const SGR_CLR4: u32 = 34;
2800pub const SGR_CLR5: u32 = 35;
2801pub const SGR_CLR6: u32 = 36;
2802pub const SGR_CLR7: u32 = 37;
2803pub const SGR_CLR0BG: u32 = 40;
2804pub const SGR_CLR1BG: u32 = 41;
2805pub const SGR_CLR2BG: u32 = 42;
2806pub const SGR_CLR3BG: u32 = 43;
2807pub const SGR_CLR4BG: u32 = 44;
2808pub const SGR_CLR5BG: u32 = 45;
2809pub const SGR_CLR6BG: u32 = 46;
2810pub const SGR_CLR7BG: u32 = 47;
2811pub const DSR_CPR: u32 = 6;
2812pub const CTC_HSETTAB: u32 = 0;
2813pub const CTC_HCLRTAB: u32 = 2;
2814pub const CTC_HCLRTABSALL: u32 = 5;
2815pub const TBC_HCLRTAB: u32 = 0;
2816pub const TBC_HCLRTABSALL: u32 = 3;
2817pub const M_LNM: u32 = 20;
2818pub const M_ASM: &[u8; 3] = b">1\0";
2819pub const M_AWM: &[u8; 3] = b"?7\0";
2820pub const KC_NOQUAL: u32 = 0;
2821pub const KC_VANILLA: u32 = 7;
2822pub const KCB_SHIFT: u32 = 0;
2823pub const KCF_SHIFT: u32 = 1;
2824pub const KCB_ALT: u32 = 1;
2825pub const KCF_ALT: u32 = 2;
2826pub const KCB_CONTROL: u32 = 2;
2827pub const KCF_CONTROL: u32 = 4;
2828pub const KCB_DOWNUP: u32 = 3;
2829pub const KCF_DOWNUP: u32 = 8;
2830pub const KCB_DEAD: u32 = 5;
2831pub const KCF_DEAD: u32 = 32;
2832pub const KCB_STRING: u32 = 6;
2833pub const KCF_STRING: u32 = 64;
2834pub const KCB_NOP: u32 = 7;
2835pub const KCF_NOP: u32 = 128;
2836pub const DPB_MOD: u32 = 0;
2837pub const DPF_MOD: u32 = 1;
2838pub const DPB_DEAD: u32 = 3;
2839pub const DPF_DEAD: u32 = 8;
2840pub const DP_2DINDEXMASK: u32 = 15;
2841pub const DP_2DFACSHIFT: u32 = 4;
2842pub const RAWKEY_SPACE: u32 = 64;
2843pub const RAWKEY_BACKSPACE: u32 = 65;
2844pub const RAWKEY_TAB: u32 = 66;
2845pub const RAWKEY_ENTER: u32 = 67;
2846pub const RAWKEY_RETURN: u32 = 68;
2847pub const RAWKEY_ESC: u32 = 69;
2848pub const RAWKEY_DEL: u32 = 70;
2849pub const RAWKEY_INSERT: u32 = 71;
2850pub const RAWKEY_PAGEUP: u32 = 72;
2851pub const RAWKEY_PAGEDOWN: u32 = 73;
2852pub const RAWKEY_F11: u32 = 75;
2853pub const RAWKEY_CRSRUP: u32 = 76;
2854pub const RAWKEY_CRSRDOWN: u32 = 77;
2855pub const RAWKEY_CRSRRIGHT: u32 = 78;
2856pub const RAWKEY_CRSRLEFT: u32 = 79;
2857pub const RAWKEY_F1: u32 = 80;
2858pub const RAWKEY_F2: u32 = 81;
2859pub const RAWKEY_F3: u32 = 82;
2860pub const RAWKEY_F4: u32 = 83;
2861pub const RAWKEY_F5: u32 = 84;
2862pub const RAWKEY_F6: u32 = 85;
2863pub const RAWKEY_F7: u32 = 86;
2864pub const RAWKEY_F8: u32 = 87;
2865pub const RAWKEY_F9: u32 = 88;
2866pub const RAWKEY_F10: u32 = 89;
2867pub const RAWKEY_HELP: u32 = 95;
2868pub const RAWKEY_LSHIFT: u32 = 96;
2869pub const RAWKEY_RSHIFT: u32 = 97;
2870pub const RAWKEY_CAPSLOCK: u32 = 98;
2871pub const RAWKEY_LCTRL: u32 = 99;
2872pub const RAWKEY_LALT: u32 = 100;
2873pub const RAWKEY_RALT: u32 = 101;
2874pub const RAWKEY_LCOMMAND: u32 = 102;
2875pub const RAWKEY_RCOMMAND: u32 = 103;
2876pub const RAWKEY_MENU: u32 = 107;
2877pub const RAWKEY_PRINTSCR: u32 = 109;
2878pub const RAWKEY_BREAK: u32 = 110;
2879pub const RAWKEY_F12: u32 = 111;
2880pub const RAWKEY_HOME: u32 = 112;
2881pub const RAWKEY_END: u32 = 113;
2882pub const RAWKEY_MEDIA_STOP: u32 = 114;
2883pub const RAWKEY_MEDIA_PLAY_PAUSE: u32 = 115;
2884pub const RAWKEY_MEDIA_PREV_TRACK: u32 = 116;
2885pub const RAWKEY_MEDIA_NEXT_TRACK: u32 = 117;
2886pub const RAWKEY_MEDIA_SHUFFLE: u32 = 118;
2887pub const RAWKEY_MEDIA_REPEAT: u32 = 119;
2888pub const RAWKEY_WHEEL_UP: u32 = 122;
2889pub const RAWKEY_WHEEL_DOWN: u32 = 123;
2890pub const RAWKEY_WHEEL_LEFT: u32 = 124;
2891pub const RAWKEY_WHEEL_RIGHT: u32 = 125;
2892pub const CONU_LIBRARY: i32 = -1;
2893pub const CONU_STANDARD: u32 = 0;
2894pub const CONU_CHARMAP: u32 = 1;
2895pub const CONU_SNIPMAP: u32 = 3;
2896pub const CONFLAG_DEFAULT: u32 = 0;
2897pub const CONFLAG_NODRAW_ON_NEWSIZE: u32 = 1;
2898pub const PMB_ASM: u32 = 21;
2899pub const PMB_AWM: u32 = 22;
2900pub const MAXTABS: u32 = 80;
2901pub const GPD_READEVENT: u32 = 9;
2902pub const GPD_ASKCTYPE: u32 = 10;
2903pub const GPD_SETCTYPE: u32 = 11;
2904pub const GPD_ASKTRIGGER: u32 = 12;
2905pub const GPD_SETTRIGGER: u32 = 13;
2906pub const GPTB_DOWNKEYS: u32 = 0;
2907pub const GPTF_DOWNKEYS: u32 = 1;
2908pub const GPTB_UPKEYS: u32 = 1;
2909pub const GPTF_UPKEYS: u32 = 2;
2910pub const GPCT_ALLOCATED: i32 = -1;
2911pub const GPCT_NOCONTROLLER: u32 = 0;
2912pub const GPCT_MOUSE: u32 = 1;
2913pub const GPCT_RELJOYSTICK: u32 = 2;
2914pub const GPCT_ABSJOYSTICK: u32 = 3;
2915pub const GPDERR_SETCTYPE: u32 = 1;
2916pub const IDNAME_RIGIDDISK: u32 = 1380209483;
2917pub const RDB_LOCATION_LIMIT: u32 = 16;
2918pub const RDBFB_LAST: u32 = 0;
2919pub const RDBFF_LAST: u32 = 1;
2920pub const RDBFB_LASTLUN: u32 = 1;
2921pub const RDBFF_LASTLUN: u32 = 2;
2922pub const RDBFB_LASTTID: u32 = 2;
2923pub const RDBFF_LASTTID: u32 = 4;
2924pub const RDBFB_NORESELECT: u32 = 3;
2925pub const RDBFF_NORESELECT: u32 = 8;
2926pub const RDBFB_DISKID: u32 = 4;
2927pub const RDBFF_DISKID: u32 = 16;
2928pub const RDBFB_CTRLRID: u32 = 5;
2929pub const RDBFF_CTRLRID: u32 = 32;
2930pub const RDBFB_SYNCH: u32 = 6;
2931pub const RDBFF_SYNCH: u32 = 64;
2932pub const IDNAME_BADBLOCK: u32 = 1111573570;
2933pub const IDNAME_PARTITION: u32 = 1346458196;
2934pub const PBFB_BOOTABLE: u32 = 0;
2935pub const PBFF_BOOTABLE: u32 = 1;
2936pub const PBFB_NOMOUNT: u32 = 1;
2937pub const PBFF_NOMOUNT: u32 = 2;
2938pub const IDNAME_FILESYSHEADER: u32 = 1179863108;
2939pub const IDNAME_LOADSEG: u32 = 1280525639;
2940pub const IND_ADDHANDLER: u32 = 9;
2941pub const IND_REMHANDLER: u32 = 10;
2942pub const IND_WRITEEVENT: u32 = 11;
2943pub const IND_SETTHRESH: u32 = 12;
2944pub const IND_SETPERIOD: u32 = 13;
2945pub const IND_SETMPORT: u32 = 14;
2946pub const IND_SETMTYPE: u32 = 15;
2947pub const IND_SETMTRIG: u32 = 16;
2948pub const IND_ADDEVENT: u32 = 24;
2949pub const KBD_READEVENT: u32 = 9;
2950pub const KBD_READMATRIX: u32 = 10;
2951pub const KBD_ADDRESETHANDLER: u32 = 11;
2952pub const KBD_REMRESETHANDLER: u32 = 12;
2953pub const KBD_RESETHANDLERDONE: u32 = 13;
2954pub const NDB_NEWIORB: u32 = 0;
2955pub const NDB_WORDSYNC: u32 = 1;
2956pub const NDB_SYLSYNC: u32 = 2;
2957pub const NDF_NEWIORB: u32 = 1;
2958pub const NDF_WORDSYNC: u32 = 2;
2959pub const NDF_SYLSYNC: u32 = 4;
2960pub const ND_NoMem: i32 = -2;
2961pub const ND_NoAudLib: i32 = -3;
2962pub const ND_MakeBad: i32 = -4;
2963pub const ND_UnitErr: i32 = -5;
2964pub const ND_CantAlloc: i32 = -6;
2965pub const ND_Unimpl: i32 = -7;
2966pub const ND_NoWrite: i32 = -8;
2967pub const ND_Expunged: i32 = -9;
2968pub const ND_PhonErr: i32 = -20;
2969pub const ND_RateErr: i32 = -21;
2970pub const ND_PitchErr: i32 = -22;
2971pub const ND_SexErr: i32 = -23;
2972pub const ND_ModeErr: i32 = -24;
2973pub const ND_FreqErr: i32 = -25;
2974pub const ND_VolErr: i32 = -26;
2975pub const ND_DCentErr: i32 = -27;
2976pub const ND_CentPhonErr: i32 = -28;
2977pub const DEFPITCH: u32 = 110;
2978pub const DEFRATE: u32 = 150;
2979pub const DEFVOL: u32 = 64;
2980pub const DEFFREQ: u32 = 22200;
2981pub const MALE: u32 = 0;
2982pub const FEMALE: u32 = 1;
2983pub const NATURALF0: u32 = 0;
2984pub const ROBOTICF0: u32 = 1;
2985pub const MANUALF0: u32 = 2;
2986pub const DEFSEX: u32 = 0;
2987pub const DEFMODE: u32 = 0;
2988pub const DEFARTIC: u32 = 100;
2989pub const DEFCENTRAL: u32 = 0;
2990pub const DEFF0PERT: u32 = 0;
2991pub const DEFF0ENTHUS: u32 = 32;
2992pub const DEFPRIORITY: u32 = 100;
2993pub const MINRATE: u32 = 40;
2994pub const MAXRATE: u32 = 400;
2995pub const MINPITCH: u32 = 65;
2996pub const MAXPITCH: u32 = 320;
2997pub const MINFREQ: u32 = 5000;
2998pub const MAXFREQ: u32 = 28000;
2999pub const MINVOL: u32 = 0;
3000pub const MAXVOL: u32 = 64;
3001pub const MINCENT: u32 = 0;
3002pub const MAXCENT: u32 = 100;
3003pub const NSCMD_DEVICEQUERY: u32 = 16384;
3004pub const NSDEVTYPE_UNKNOWN: u32 = 0;
3005pub const NSDEVTYPE_GAMEPORT: u32 = 1;
3006pub const NSDEVTYPE_TIMER: u32 = 2;
3007pub const NSDEVTYPE_KEYBOARD: u32 = 3;
3008pub const NSDEVTYPE_INPUT: u32 = 4;
3009pub const NSDEVTYPE_TRACKDISK: u32 = 5;
3010pub const NSDEVTYPE_CONSOLE: u32 = 6;
3011pub const NSDEVTYPE_SANA2: u32 = 7;
3012pub const NSDEVTYPE_AUDIOARD: u32 = 8;
3013pub const NSDEVTYPE_CLIPBOARD: u32 = 9;
3014pub const NSDEVTYPE_PRINTER: u32 = 10;
3015pub const NSDEVTYPE_SERIAL: u32 = 11;
3016pub const NSDEVTYPE_PARALLEL: u32 = 12;
3017pub const NSCMD_TD_READ64: u32 = 49152;
3018pub const NSCMD_TD_WRITE64: u32 = 49153;
3019pub const NSCMD_TD_SEEK64: u32 = 49154;
3020pub const NSCMD_TD_FORMAT64: u32 = 49155;
3021pub const PCMYELLOW: u32 = 0;
3022pub const PCMMAGENTA: u32 = 1;
3023pub const PCMCYAN: u32 = 2;
3024pub const PCMBLACK: u32 = 3;
3025pub const PCMBLUE: u32 = 0;
3026pub const PCMGREEN: u32 = 1;
3027pub const PCMRED: u32 = 2;
3028pub const PCMWHITE: u32 = 3;
3029pub const HD_SCSICMD: u32 = 28;
3030pub const SCSIF_WRITE: u32 = 0;
3031pub const SCSIF_READ: u32 = 1;
3032pub const SCSIB_READ_WRITE: u32 = 0;
3033pub const SCSIF_NOSENSE: u32 = 0;
3034pub const SCSIF_AUTOSENSE: u32 = 2;
3035pub const SCSIF_OLDAUTOSENSE: u32 = 6;
3036pub const SCSIB_AUTOSENSE: u32 = 1;
3037pub const SCSIB_OLDAUTOSENSE: u32 = 2;
3038pub const HFERR_SelfUnit: u32 = 40;
3039pub const HFERR_DMA: u32 = 41;
3040pub const HFERR_Phase: u32 = 42;
3041pub const HFERR_Parity: u32 = 43;
3042pub const HFERR_SelTimeout: u32 = 44;
3043pub const HFERR_BadStatus: u32 = 45;
3044pub const HFERR_NoBoard: u32 = 50;
3045pub const NUMSECS: u32 = 11;
3046pub const NUMUNITS: u32 = 4;
3047pub const TD_SECTOR: u32 = 512;
3048pub const TD_SECSHIFT: u32 = 9;
3049pub const TD_NAME: &[u8; 17] = b"trackdisk.device\0";
3050pub const TDF_EXTCOM: u32 = 32768;
3051pub const TD_MOTOR: u32 = 9;
3052pub const TD_SEEK: u32 = 10;
3053pub const TD_FORMAT: u32 = 11;
3054pub const TD_REMOVE: u32 = 12;
3055pub const TD_CHANGENUM: u32 = 13;
3056pub const TD_CHANGESTATE: u32 = 14;
3057pub const TD_PROTSTATUS: u32 = 15;
3058pub const TD_RAWREAD: u32 = 16;
3059pub const TD_RAWWRITE: u32 = 17;
3060pub const TD_GETDRIVETYPE: u32 = 18;
3061pub const TD_GETNUMTRACKS: u32 = 19;
3062pub const TD_ADDCHANGEINT: u32 = 20;
3063pub const TD_REMCHANGEINT: u32 = 21;
3064pub const TD_GETGEOMETRY: u32 = 22;
3065pub const TD_EJECT: u32 = 23;
3066pub const TD_LASTCOMM: u32 = 24;
3067pub const TD_READ64: u32 = 24;
3068pub const TD_WRITE64: u32 = 25;
3069pub const TD_SEEK64: u32 = 26;
3070pub const TD_FORMAT64: u32 = 27;
3071pub const ETD_WRITE: u32 = 32771;
3072pub const ETD_READ: u32 = 32770;
3073pub const ETD_MOTOR: u32 = 32777;
3074pub const ETD_SEEK: u32 = 32778;
3075pub const ETD_FORMAT: u32 = 32779;
3076pub const ETD_UPDATE: u32 = 32772;
3077pub const ETD_CLEAR: u32 = 32773;
3078pub const ETD_RAWREAD: u32 = 32784;
3079pub const ETD_RAWWRITE: u32 = 32785;
3080pub const DG_DIRECT_ACCESS: u32 = 0;
3081pub const DG_SEQUENTIAL_ACCESS: u32 = 1;
3082pub const DG_PRINTER: u32 = 2;
3083pub const DG_PROCESSOR: u32 = 3;
3084pub const DG_WORM: u32 = 4;
3085pub const DG_CDROM: u32 = 5;
3086pub const DG_SCANNER: u32 = 6;
3087pub const DG_OPTICAL_DISK: u32 = 7;
3088pub const DG_MEDIUM_CHANGER: u32 = 8;
3089pub const DG_COMMUNICATION: u32 = 9;
3090pub const DG_UNKNOWN: u32 = 31;
3091pub const DGB_REMOVABLE: u32 = 0;
3092pub const DGF_REMOVABLE: u32 = 1;
3093pub const IOTDB_INDEXSYNC: u32 = 4;
3094pub const IOTDF_INDEXSYNC: u32 = 16;
3095pub const IOTDB_WORDSYNC: u32 = 5;
3096pub const IOTDF_WORDSYNC: u32 = 32;
3097pub const TD_LABELSIZE: u32 = 16;
3098pub const TDB_ALLOW_NON_3_5: u32 = 0;
3099pub const TDF_ALLOW_NON_3_5: u32 = 1;
3100pub const DRIVE3_5: u32 = 1;
3101pub const DRIVE5_25: u32 = 2;
3102pub const DRIVE3_5_150RPM: u32 = 3;
3103pub const TDERR_NotSpecified: u32 = 20;
3104pub const TDERR_NoSecHdr: u32 = 21;
3105pub const TDERR_BadSecPreamble: u32 = 22;
3106pub const TDERR_BadSecID: u32 = 23;
3107pub const TDERR_BadHdrSum: u32 = 24;
3108pub const TDERR_BadSecSum: u32 = 25;
3109pub const TDERR_TooFewSecs: u32 = 26;
3110pub const TDERR_BadSecHdr: u32 = 27;
3111pub const TDERR_WriteProt: u32 = 28;
3112pub const TDERR_DiskChanged: u32 = 29;
3113pub const TDERR_SeekError: u32 = 30;
3114pub const TDERR_NoMem: u32 = 31;
3115pub const TDERR_BadUnitNum: u32 = 32;
3116pub const TDERR_BadDriveType: u32 = 33;
3117pub const TDERR_DriveInUse: u32 = 34;
3118pub const TDERR_PostReset: u32 = 35;
3119pub const TDPB_NOCLICK: u32 = 0;
3120pub const TDPF_NOCLICK: u32 = 1;
3121pub const TFUNIT_CONTROL: i32 = -1;
3122pub const TRACKFILENAME: &[u8; 17] = b"trackfile.device\0";
3123pub const TFSU_NextAvailableUnit: i32 = -1;
3124pub const TFERROR_UnitBusy: i32 = -202041;
3125pub const TFERROR_OutOfMemory: i32 = -202042;
3126pub const TFERROR_UnitNotFound: i32 = -202043;
3127pub const TFERROR_AlreadyInUse: i32 = -202044;
3128pub const TFERROR_UnitNotActive: i32 = -202045;
3129pub const TFERROR_InvalidFile: i32 = -202046;
3130pub const TFERROR_InvalidFileSize: i32 = -202047;
3131pub const TFERROR_NoFileGiven: i32 = -202048;
3132pub const TFERROR_Aborted: i32 = -202049;
3133pub const TFERROR_InvalidDriveType: i32 = -202050;
3134pub const TFERROR_ProcessFailed: i32 = -202051;
3135pub const TFERROR_NoMediumPresent: i32 = -202052;
3136pub const TFERROR_ReadOnlyVolume: i32 = -202053;
3137pub const TFERROR_ReadOnlyFile: i32 = -202054;
3138pub const TFERROR_DuplicateDisk: i32 = -202055;
3139pub const TFERROR_DuplicateVolume: i32 = -202056;
3140pub const TFERROR_Denied: i32 = -202057;
3141pub const TFERROR_NotSupported: i32 = -202058;
3142pub const TFGUD_AllUnits: i32 = -1;
3143pub const TFEFS_Unsupported: i32 = -1;
3144pub const TF_MINIMUM_CACHE_SIZE: u32 = 46000;
3145pub const MAXFONTPATH: u32 = 256;
3146pub const FCH_ID: u32 = 3840;
3147pub const TFCH_ID: u32 = 3842;
3148pub const OFCH_ID: u32 = 3843;
3149pub const DFH_ID: u32 = 3968;
3150pub const MAXFONTNAME: u32 = 32;
3151pub const AFB_MEMORY: u32 = 0;
3152pub const AFF_MEMORY: u32 = 1;
3153pub const AFB_DISK: u32 = 1;
3154pub const AFF_DISK: u32 = 2;
3155pub const AFB_SCALED: u32 = 2;
3156pub const AFF_SCALED: u32 = 4;
3157pub const AFB_BITMAP: u32 = 3;
3158pub const AFF_BITMAP: u32 = 8;
3159pub const AFB_OTAG: u32 = 4;
3160pub const AFF_OTAG: u32 = 16;
3161pub const AFB_TYPE: u32 = 6;
3162pub const AFF_CHARSET: u32 = 32;
3163pub const AFF_TYPE: u32 = 64;
3164pub const AFB_TAGGED: u32 = 16;
3165pub const AFF_TAGGED: u32 = 65536;
3166pub const OFB_OPEN: u32 = 0;
3167pub const OFF_OPEN: u32 = 1;
3168pub const OT_Indirect: u32 = 32768;
3169pub const OTUL_None: u32 = 0;
3170pub const OTUL_Solid: u32 = 1;
3171pub const OTUL_Broken: u32 = 2;
3172pub const OTUL_DoubleSolid: u32 = 3;
3173pub const OTUL_DoubleBroken: u32 = 4;
3174pub const OUTL_DoubleBroken: u32 = 4;
3175pub const OTSUFFIX: &[u8; 6] = b".otag\0";
3176pub const OTE_Bullet: &[u8; 7] = b"bullet\0";
3177pub const OTS_UltraThin: u32 = 8;
3178pub const OTS_ExtraThin: u32 = 24;
3179pub const OTS_Thin: u32 = 40;
3180pub const OTS_ExtraLight: u32 = 56;
3181pub const OTS_Light: u32 = 72;
3182pub const OTS_DemiLight: u32 = 88;
3183pub const OTS_SemiLight: u32 = 104;
3184pub const OTS_Book: u32 = 120;
3185pub const OTS_Medium: u32 = 136;
3186pub const OTS_SemiBold: u32 = 152;
3187pub const OTS_DemiBold: u32 = 168;
3188pub const OTS_Bold: u32 = 184;
3189pub const OTS_ExtraBold: u32 = 200;
3190pub const OTS_Black: u32 = 216;
3191pub const OTS_ExtraBlack: u32 = 232;
3192pub const OTS_UltraBlack: u32 = 248;
3193pub const OTS_Upright: u32 = 0;
3194pub const OTS_Italic: u32 = 1;
3195pub const OTS_LeftItalic: u32 = 2;
3196pub const OTH_UltraCompressed: u32 = 16;
3197pub const OTH_ExtraCompressed: u32 = 48;
3198pub const OTH_Compressed: u32 = 80;
3199pub const OTH_Condensed: u32 = 112;
3200pub const OTH_Normal: u32 = 144;
3201pub const OTH_SemiExpanded: u32 = 176;
3202pub const OTH_Expanded: u32 = 208;
3203pub const OTH_ExtraExpanded: u32 = 240;
3204pub const OT_MAXAVAILSIZES: u32 = 20;
3205pub const DFCTRL_SORT_OFF: u32 = 0;
3206pub const DFCTRL_SORT_ASC: u32 = 1;
3207pub const DFCTRL_SORT_DES: i32 = -1;
3208pub const OTERR_Failure: i32 = -1;
3209pub const OTERR_Success: u32 = 0;
3210pub const OTERR_BadTag: u32 = 1;
3211pub const OTERR_UnknownTag: u32 = 2;
3212pub const OTERR_BadData: u32 = 3;
3213pub const OTERR_NoMemory: u32 = 4;
3214pub const OTERR_NoFace: u32 = 5;
3215pub const OTERR_BadFace: u32 = 6;
3216pub const OTERR_NoGlyph: u32 = 7;
3217pub const OTERR_BadGlyph: u32 = 8;
3218pub const OTERR_NoShear: u32 = 9;
3219pub const OTERR_NoRotate: u32 = 10;
3220pub const OTERR_TooSmall: u32 = 11;
3221pub const OTERR_UnknownGlyph: u32 = 12;
3222pub const LEN_DATSTRING: u32 = 16;
3223pub const DTB_SUBST: u32 = 0;
3224pub const DTB_FUTURE: u32 = 1;
3225pub const DTF_SUBST: u32 = 1;
3226pub const DTF_FUTURE: u32 = 2;
3227pub const FORMAT_DOS: u32 = 0;
3228pub const FORMAT_INT: u32 = 1;
3229pub const FORMAT_USA: u32 = 2;
3230pub const FORMAT_CDN: u32 = 3;
3231pub const FORMAT_DEF: u32 = 4;
3232pub const FORMAT_MAX: u32 = 3;
3233pub const APB_DOWILD: u32 = 0;
3234pub const APF_DOWILD: u32 = 1;
3235pub const APB_ITSWILD: u32 = 1;
3236pub const APF_ITSWILD: u32 = 2;
3237pub const APB_DODIR: u32 = 2;
3238pub const APF_DODIR: u32 = 4;
3239pub const APB_DIDDIR: u32 = 3;
3240pub const APF_DIDDIR: u32 = 8;
3241pub const APB_NOMEMERR: u32 = 4;
3242pub const APF_NOMEMERR: u32 = 16;
3243pub const APB_DODOT: u32 = 5;
3244pub const APF_DODOT: u32 = 32;
3245pub const APB_DirChanged: u32 = 6;
3246pub const APF_DirChanged: u32 = 64;
3247pub const APB_FollowHLinks: u32 = 7;
3248pub const APF_FollowHLinks: u32 = 128;
3249pub const DDB_PatternBit: u32 = 0;
3250pub const DDF_PatternBit: u32 = 1;
3251pub const DDB_ExaminedBit: u32 = 1;
3252pub const DDF_ExaminedBit: u32 = 2;
3253pub const DDB_Completed: u32 = 2;
3254pub const DDF_Completed: u32 = 4;
3255pub const DDB_AllBit: u32 = 3;
3256pub const DDF_AllBit: u32 = 8;
3257pub const DDB_Single: u32 = 4;
3258pub const DDF_Single: u32 = 16;
3259pub const P_ANY: u32 = 128;
3260pub const P_SINGLE: u32 = 129;
3261pub const P_ORSTART: u32 = 130;
3262pub const P_ORNEXT: u32 = 131;
3263pub const P_OREND: u32 = 132;
3264pub const P_NOT: u32 = 133;
3265pub const P_NOTEND: u32 = 134;
3266pub const P_NOTCLASS: u32 = 135;
3267pub const P_CLASS: u32 = 136;
3268pub const P_REPBEG: u32 = 137;
3269pub const P_REPEND: u32 = 138;
3270pub const P_STOP: u32 = 139;
3271pub const COMPLEX_BIT: u32 = 1;
3272pub const EXAMINE_BIT: u32 = 2;
3273pub const ERROR_BUFFER_OVERFLOW: u32 = 303;
3274pub const ERROR_BREAK: u32 = 304;
3275pub const ERROR_NOT_EXECUTABLE: u32 = 305;
3276pub const HUNK_UNIT: u32 = 999;
3277pub const HUNK_NAME: u32 = 1000;
3278pub const HUNK_CODE: u32 = 1001;
3279pub const HUNK_DATA: u32 = 1002;
3280pub const HUNK_BSS: u32 = 1003;
3281pub const HUNK_RELOC32: u32 = 1004;
3282pub const HUNK_ABSRELOC32: u32 = 1004;
3283pub const HUNK_RELOC16: u32 = 1005;
3284pub const HUNK_RELRELOC16: u32 = 1005;
3285pub const HUNK_RELOC8: u32 = 1006;
3286pub const HUNK_RELRELOC8: u32 = 1006;
3287pub const HUNK_EXT: u32 = 1007;
3288pub const HUNK_SYMBOL: u32 = 1008;
3289pub const HUNK_DEBUG: u32 = 1009;
3290pub const HUNK_END: u32 = 1010;
3291pub const HUNK_HEADER: u32 = 1011;
3292pub const HUNK_OVERLAY: u32 = 1013;
3293pub const HUNK_BREAK: u32 = 1014;
3294pub const HUNK_DREL32: u32 = 1015;
3295pub const HUNK_DREL16: u32 = 1016;
3296pub const HUNK_DREL8: u32 = 1017;
3297pub const HUNK_LIB: u32 = 1018;
3298pub const HUNK_INDEX: u32 = 1019;
3299pub const HUNK_RELOC32SHORT: u32 = 1020;
3300pub const HUNK_RELRELOC32: u32 = 1021;
3301pub const HUNK_ABSRELOC16: u32 = 1022;
3302pub const HUNKB_ADVISORY: u32 = 29;
3303pub const HUNKB_CHIP: u32 = 30;
3304pub const HUNKB_FAST: u32 = 31;
3305pub const HUNKF_ADVISORY: u32 = 536870912;
3306pub const HUNKF_CHIP: u32 = 1073741824;
3307pub const HUNKF_FAST: u32 = 2147483648;
3308pub const EXT_SYMB: u32 = 0;
3309pub const EXT_DEF: u32 = 1;
3310pub const EXT_ABS: u32 = 2;
3311pub const EXT_RES: u32 = 3;
3312pub const EXT_REF32: u32 = 129;
3313pub const EXT_ABSREF32: u32 = 129;
3314pub const EXT_COMMON: u32 = 130;
3315pub const EXT_ABSCOMMON: u32 = 130;
3316pub const EXT_REF16: u32 = 131;
3317pub const EXT_RELREF16: u32 = 131;
3318pub const EXT_REF8: u32 = 132;
3319pub const EXT_RELREF8: u32 = 132;
3320pub const EXT_DEXT32: u32 = 133;
3321pub const EXT_DEXT16: u32 = 134;
3322pub const EXT_DEXT8: u32 = 135;
3323pub const EXT_RELREF32: u32 = 136;
3324pub const EXT_RELCOMMON: u32 = 137;
3325pub const EXT_ABSREF16: u32 = 138;
3326pub const EXT_ABSREF8: u32 = 139;
3327pub const ED_NAME: u32 = 1;
3328pub const ED_TYPE: u32 = 2;
3329pub const ED_SIZE: u32 = 3;
3330pub const ED_PROTECTION: u32 = 4;
3331pub const ED_DATE: u32 = 5;
3332pub const ED_COMMENT: u32 = 6;
3333pub const ED_OWNER: u32 = 7;
3334pub const DE_TABLESIZE: u32 = 0;
3335pub const DE_SIZEBLOCK: u32 = 1;
3336pub const DE_SECORG: u32 = 2;
3337pub const DE_NUMHEADS: u32 = 3;
3338pub const DE_SECSPERBLK: u32 = 4;
3339pub const DE_BLKSPERTRACK: u32 = 5;
3340pub const DE_RESERVEDBLKS: u32 = 6;
3341pub const DE_PREFAC: u32 = 7;
3342pub const DE_INTERLEAVE: u32 = 8;
3343pub const DE_LOWCYL: u32 = 9;
3344pub const DE_UPPERCYL: u32 = 10;
3345pub const DE_NUMBUFFERS: u32 = 11;
3346pub const DE_MEMBUFTYPE: u32 = 12;
3347pub const DE_BUFMEMTYPE: u32 = 12;
3348pub const DE_MAXTRANSFER: u32 = 13;
3349pub const DE_MASK: u32 = 14;
3350pub const DE_BOOTPRI: u32 = 15;
3351pub const DE_DOSTYPE: u32 = 16;
3352pub const DE_BAUD: u32 = 17;
3353pub const DE_CONTROL: u32 = 18;
3354pub const DE_BOOTBLOCKS: u32 = 19;
3355pub const ENVF_SCSIDIRECT: u32 = 65536;
3356pub const ENVF_SUPERFLOPPY: u32 = 131072;
3357pub const ENVF_DISABLENSD: u32 = 262144;
3358pub const NOTIFY_CLASS: u32 = 1073741824;
3359pub const NOTIFY_CODE: u32 = 4660;
3360pub const NRF_SEND_MESSAGE: u32 = 1;
3361pub const NRF_SEND_SIGNAL: u32 = 2;
3362pub const NRF_WAIT_REPLY: u32 = 8;
3363pub const NRF_NOTIFY_INITIAL: u32 = 16;
3364pub const NRF_MAGIC: u32 = 2147483648;
3365pub const NRB_SEND_MESSAGE: u32 = 0;
3366pub const NRB_SEND_SIGNAL: u32 = 1;
3367pub const NRB_WAIT_REPLY: u32 = 3;
3368pub const NRB_NOTIFY_INITIAL: u32 = 4;
3369pub const NRB_MAGIC: u32 = 31;
3370pub const NR_HANDLER_FLAGS: u32 = 4294901760;
3371pub const REC_EXCLUSIVE: u32 = 0;
3372pub const REC_EXCLUSIVE_IMMED: u32 = 1;
3373pub const REC_SHARED: u32 = 2;
3374pub const REC_SHARED_IMMED: u32 = 3;
3375pub const BUF_LINE: u32 = 0;
3376pub const BUF_FULL: u32 = 1;
3377pub const BUF_NONE: u32 = 2;
3378pub const ENDSTREAMCH: i32 = -1;
3379pub const LV_VAR: u32 = 0;
3380pub const LV_ALIAS: u32 = 1;
3381pub const LVB_IGNORE: u32 = 7;
3382pub const LVF_IGNORE: u32 = 128;
3383pub const GVB_GLOBAL_ONLY: u32 = 8;
3384pub const GVF_GLOBAL_ONLY: u32 = 256;
3385pub const GVB_LOCAL_ONLY: u32 = 9;
3386pub const GVF_LOCAL_ONLY: u32 = 512;
3387pub const GVB_BINARY_VAR: u32 = 10;
3388pub const GVF_BINARY_VAR: u32 = 1024;
3389pub const GVB_DONT_NULL_TERM: u32 = 11;
3390pub const GVF_DONT_NULL_TERM: u32 = 2048;
3391pub const GVB_SAVE_VAR: u32 = 12;
3392pub const GVF_SAVE_VAR: u32 = 4096;
3393pub const SG_DEFAULTMAXCHARS: u32 = 128;
3394pub const LORIENT_NONE: u32 = 0;
3395pub const LORIENT_HORIZ: u32 = 1;
3396pub const LORIENT_VERT: u32 = 2;
3397pub const GM_Dummy: i32 = -1;
3398pub const GM_HITTEST: u32 = 0;
3399pub const GM_RENDER: u32 = 1;
3400pub const GM_GOACTIVE: u32 = 2;
3401pub const GM_HANDLEINPUT: u32 = 3;
3402pub const GM_GOINACTIVE: u32 = 4;
3403pub const GM_HELPTEST: u32 = 5;
3404pub const GM_LAYOUT: u32 = 6;
3405pub const GM_DOMAIN: u32 = 7;
3406pub const GM_KEYTEST: u32 = 8;
3407pub const GM_KEYGOACTIVE: u32 = 9;
3408pub const GM_KEYGOINACTIVE: u32 = 10;
3409pub const GM_HANDLESCROLL: u32 = 14;
3410pub const GM_QUERYHOVERED: u32 = 15;
3411pub const GMR_GADGETHIT: u32 = 4;
3412pub const GMR_NOHELPHIT: u32 = 0;
3413pub const GMR_HELPHIT: u32 = 4294967295;
3414pub const GMR_HELPCODE: u32 = 65536;
3415pub const GREDRAW_UPDATE: u32 = 2;
3416pub const GREDRAW_REDRAW: u32 = 1;
3417pub const GREDRAW_TOGGLE: u32 = 0;
3418pub const GMR_MEACTIVE: u32 = 0;
3419pub const GMR_NOREUSE: u32 = 2;
3420pub const GMR_REUSE: u32 = 4;
3421pub const GMR_VERIFY: u32 = 8;
3422pub const GMR_NEXTACTIVE: u32 = 16;
3423pub const GMR_PREVACTIVE: u32 = 32;
3424pub const GDOMAIN_MINIMUM: u32 = 0;
3425pub const GDOMAIN_NOMINAL: u32 = 1;
3426pub const GDOMAIN_MAXIMUM: u32 = 2;
3427pub const GMR_KEYACTIVE: u32 = 16;
3428pub const GMR_KEYVERIFY: u32 = 32;
3429pub const CUSTOMIMAGEDEPTH: i32 = -1;
3430pub const SYSISIZE_MEDRES: u32 = 0;
3431pub const SYSISIZE_LOWRES: u32 = 1;
3432pub const SYSISIZE_HIRES: u32 = 2;
3433pub const DEPTHIMAGE: u32 = 0;
3434pub const ZOOMIMAGE: u32 = 1;
3435pub const SIZEIMAGE: u32 = 2;
3436pub const CLOSEIMAGE: u32 = 3;
3437pub const SDEPTHIMAGE: u32 = 5;
3438pub const SDOWNBACKMAGE: u32 = 6;
3439pub const LEFTIMAGE: u32 = 10;
3440pub const UPIMAGE: u32 = 11;
3441pub const RIGHTIMAGE: u32 = 12;
3442pub const DOWNIMAGE: u32 = 13;
3443pub const CHECKIMAGE: u32 = 14;
3444pub const MXIMAGE: u32 = 15;
3445pub const MENUCHECK: u32 = 16;
3446pub const AMIGAKEY: u32 = 17;
3447pub const ICONIFYIMAGE: u32 = 22;
3448pub const MENUMX: u32 = 27;
3449pub const MENUSUB: u32 = 28;
3450pub const SHIFTKEYIMAGE: u32 = 42;
3451pub const FRAME_DEFAULT: u32 = 0;
3452pub const FRAME_BUTTON: u32 = 1;
3453pub const FRAME_RIDGE: u32 = 2;
3454pub const FRAME_ICONDROPBOX: u32 = 3;
3455pub const FRAME_PROPBORDER: u32 = 4;
3456pub const FRAME_PROPKNOB: u32 = 5;
3457pub const FRAME_DISPLAY: u32 = 6;
3458pub const FRAME_CONTEXT: u32 = 7;
3459pub const IM_DRAW: u32 = 514;
3460pub const IM_HITTEST: u32 = 515;
3461pub const IM_ERASE: u32 = 516;
3462pub const IM_MOVE: u32 = 517;
3463pub const IM_DRAWFRAME: u32 = 518;
3464pub const IM_FRAMEBOX: u32 = 519;
3465pub const IM_HITFRAME: u32 = 520;
3466pub const IM_ERASEFRAME: u32 = 521;
3467pub const IM_DOMAINFRAME: u32 = 522;
3468pub const IDS_NORMAL: u32 = 0;
3469pub const IDS_SELECTED: u32 = 1;
3470pub const IDS_DISABLED: u32 = 2;
3471pub const IDS_BUSY: u32 = 3;
3472pub const IDS_INDETERMINATE: u32 = 4;
3473pub const IDS_INACTIVENORMAL: u32 = 5;
3474pub const IDS_INACTIVESELECTED: u32 = 6;
3475pub const IDS_INACTIVEDISABLED: u32 = 7;
3476pub const IDS_SELECTEDDISABLED: u32 = 8;
3477pub const IDS_INDETERMINANT: u32 = 4;
3478pub const FRAMEF_MINIMAL: u32 = 2;
3479pub const IDOMAIN_MINIMUM: u32 = 0;
3480pub const IDOMAIN_NOMINAL: u32 = 1;
3481pub const IDOMAIN_MAXIMUM: u32 = 2;
3482pub const BVS_THIN: u32 = 0;
3483pub const BVS_BUTTON: u32 = 1;
3484pub const BVS_GROUP: u32 = 2;
3485pub const BVS_FIELD: u32 = 3;
3486pub const BVS_NONE: u32 = 4;
3487pub const BVS_DROPBOX: u32 = 5;
3488pub const BVS_SBAR_HORIZ: u32 = 6;
3489pub const BVS_SBAR_VERT: u32 = 7;
3490pub const BVS_BOX: u32 = 8;
3491pub const BVS_STANDARD: u32 = 11;
3492pub const BVS_CONTAINER: u32 = 12;
3493pub const BVS_KNOB: u32 = 13;
3494pub const BVS_DISPLAY: u32 = 14;
3495pub const BVS_SBAR_HORZ: u32 = 6;
3496pub const BVS_FOCUS: u32 = 9;
3497pub const BVS_RADIOBUTTON: u32 = 10;
3498pub const BFLG_XENFILL: u32 = 1;
3499pub const BFLG_TRANS: u32 = 2;
3500pub const BVJ_TOP_CENTER: u32 = 0;
3501pub const BVJ_TOP_LEFT: u32 = 1;
3502pub const BVJ_TOP_RIGHT: u32 = 2;
3503pub const BVJ_IN_CENTER: u32 = 3;
3504pub const BVJ_IN_LEFT: u32 = 4;
3505pub const BVJ_IN_RIGHT: u32 = 5;
3506pub const BVJ_BOT_CENTER: u32 = 6;
3507pub const BVJ_BOT_LEFT: u32 = 7;
3508pub const BVJ_BOT_RIGHT: u32 = 8;
3509pub const BCJ_LEFT: u32 = 0;
3510pub const BCJ_CENTER: u32 = 1;
3511pub const BCJ_RIGHT: u32 = 2;
3512pub const BCJ_CENTRE: u32 = 1;
3513pub const BALIGN_LEFT: u32 = 0;
3514pub const BALIGN_TOP: u32 = 0;
3515pub const BALIGN_CENTER: u32 = 1;
3516pub const BALIGN_RIGHT: u32 = 2;
3517pub const BALIGN_BOTTOM: u32 = 2;
3518pub const BAG_POPFILE: u32 = 1;
3519pub const BAG_POPDRAWER: u32 = 2;
3520pub const BAG_POPFONT: u32 = 3;
3521pub const BAG_CHECKBOX: u32 = 4;
3522pub const BAG_CANCELBOX: u32 = 5;
3523pub const BAG_UPARROW: u32 = 6;
3524pub const BAG_DNARROW: u32 = 7;
3525pub const BAG_RTARROW: u32 = 8;
3526pub const BAG_LFARROW: u32 = 9;
3527pub const BAG_POPTIME: u32 = 10;
3528pub const BAG_POPSCREEN: u32 = 11;
3529pub const BAG_POPUP: u32 = 12;
3530pub const BAG_POPDATE: u32 = 13;
3531pub const BAG_POPCOLOR: u32 = 14;
3532pub const BAG_POPCOLOUR: u32 = 14;
3533pub const CHOOSER_MinWidth: u32 = 36;
3534pub const CHOOSER_MinHeight: u32 = 10;
3535pub const CHJ_LEFT: u32 = 0;
3536pub const CHJ_CENTER: u32 = 1;
3537pub const CHJ_RIGHT: u32 = 2;
3538pub const CTORIENT_HORIZ: u32 = 0;
3539pub const CTORIENT_VERT: u32 = 1;
3540pub const CTORIENT_HORIZFLIP: u32 = 2;
3541pub const CTORIENT_VERTFLIP: u32 = 3;
3542pub const PLACECLOSE_LEFT: u32 = 0;
3543pub const PLACECLOSE_RIGHT: u32 = 1;
3544pub const FGORIENT_HORIZ: u32 = 0;
3545pub const FGORIENT_VERT: u32 = 1;
3546pub const FGJ_LEFT: u32 = 0;
3547pub const FGJ_CENTER: u32 = 1;
3548pub const FGJ_CENTRE: u32 = 1;
3549pub const FUELGAUGE_HORIZONTAL: u32 = 0;
3550pub const FUELGAUGE_VERTICAL: u32 = 1;
3551pub const GCOLOR_REQUEST: u32 = 6488065;
3552pub const GFILE_REQUEST: u32 = 6422529;
3553pub const GFILE_FREELIST: u32 = 6422530;
3554pub const GFONT_REQUEST: u32 = 6291457;
3555pub const GSM_REQUEST: u32 = 6356993;
3556pub const LM_ADDCHILD: u32 = 5505025;
3557pub const LM_ADDIMAGE: u32 = 5505026;
3558pub const LM_REMOVECHILD: u32 = 5505027;
3559pub const LM_MODIFYCHILD: u32 = 5505028;
3560pub const INTERSPACING: u32 = 1;
3561pub const INTERSPACE: u32 = 1;
3562pub const LAYOUT_HORIZONTAL: u32 = 0;
3563pub const LAYOUT_VERTICAL: u32 = 1;
3564pub const LAYOUT_ORIENT_HORIZ: u32 = 0;
3565pub const LAYOUT_ORIENT_VERT: u32 = 1;
3566pub const LALIGN_LEFT: u32 = 0;
3567pub const LALIGN_RIGHT: u32 = 1;
3568pub const LALIGN_CENTER: u32 = 2;
3569pub const LALIGN_CENTRE: u32 = 2;
3570pub const LAYOUT_ALIGN_LEFT: u32 = 0;
3571pub const LAYOUT_ALIGN_RIGHT: u32 = 1;
3572pub const LAYOUT_ALIGN_CENTER: u32 = 2;
3573pub const LALIGN_TOP: u32 = 0;
3574pub const LALIGN_BOTTOM: u32 = 1;
3575pub const LAYOUT_ALIGN_TOP: u32 = 0;
3576pub const LAYOUT_ALIGN_BOTTOM: u32 = 1;
3577pub const LBM_ADDNODE: u32 = 5767169;
3578pub const LBM_REMNODE: u32 = 5767170;
3579pub const LBM_EDITNODE: u32 = 5767171;
3580pub const LBM_SORT: u32 = 5767172;
3581pub const LBMSORT_FORWARD: u32 = 0;
3582pub const LBMSORT_REVERSE: u32 = 1;
3583pub const LBM_SHOWCHILDREN: u32 = 5767173;
3584pub const LBM_HIDECHILDREN: u32 = 5767174;
3585pub const LBFLG_READONLY: u32 = 1;
3586pub const LBFLG_CUSTOMPENS: u32 = 2;
3587pub const LBFLG_HASCHILDREN: u32 = 4;
3588pub const LBFLG_SHOWCHILDREN: u32 = 8;
3589pub const LBFLG_HIDDEN: u32 = 16;
3590pub const LCJ_LEFT: u32 = 0;
3591pub const LCJ_CENTER: u32 = 1;
3592pub const LCJ_RIGHT: u32 = 2;
3593pub const LCJ_CENTRE: u32 = 1;
3594pub const LRJ_BOTTOM: u32 = 0;
3595pub const LRJ_CENTER: u32 = 1;
3596pub const LRJ_TOP: u32 = 2;
3597pub const LRJ_CENTRE: u32 = 1;
3598pub const LB_DRAW: u32 = 514;
3599pub const LBCB_OK: u32 = 0;
3600pub const LBCB_UNKNOWN: u32 = 1;
3601pub const LBR_NORMAL: u32 = 0;
3602pub const LBR_SELECTED: u32 = 1;
3603pub const CIF_WEIGHTED: u32 = 0;
3604pub const CIF_FIXED: u32 = 1;
3605pub const CIF_DRAGGABLE: u32 = 2;
3606pub const CIF_NOSEPARATORS: u32 = 4;
3607pub const CIF_SORTABLE: u32 = 8;
3608pub const CIF_CENTER: u32 = 16;
3609pub const CIF_RIGHT: u32 = 32;
3610pub const CIF_CENTRE: u32 = 16;
3611pub const LBP_LINEUP: u32 = 1;
3612pub const LBP_LINEDOWN: u32 = 2;
3613pub const LBP_PAGEUP: u32 = 3;
3614pub const LBP_PAGEDOWN: u32 = 4;
3615pub const LBP_TOP: u32 = 5;
3616pub const LBP_BOTTOM: u32 = 6;
3617pub const LBP_SHIFTLEFT: u32 = 10;
3618pub const LBP_SHIFTRIGHT: u32 = 11;
3619pub const LBP_LEFTEDGE: u32 = 12;
3620pub const LBP_RIGHTEDGE: u32 = 13;
3621pub const LBP_PAGELEFT: u32 = 14;
3622pub const LBP_PAGERIGHT: u32 = 15;
3623pub const LBRE_NORMAL: u32 = 1;
3624pub const LBRE_HIDECHILDREN: u32 = 2;
3625pub const LBRE_SHOWCHILDREN: u32 = 4;
3626pub const LBRE_EDIT: u32 = 8;
3627pub const LBRE_DOUBLECLICK: u32 = 16;
3628pub const LBRE_CHECKED: u32 = 32;
3629pub const LBRE_UNCHECKED: u32 = 64;
3630pub const LBRE_TITLECLICK: u32 = 128;
3631pub const LBRE_COLUMNADJUST: u32 = 256;
3632pub const LBRE_EDITTABNEXT: u32 = 512;
3633pub const LBRE_EDITTABPREV: u32 = 1024;
3634pub const LBS_NONE: u32 = 0;
3635pub const LBS_ROWS: u32 = 1;
3636pub const LBS_COLUMNS: u32 = 2;
3637pub const LBS_BOTH: u32 = 3;
3638pub const LBET_DOUBLECLICK: u32 = 0;
3639pub const LBET_DELAYEDSECOND: u32 = 1;
3640pub const LVJ_LEFT: u32 = 0;
3641pub const LVJ_CENTER: u32 = 1;
3642pub const LVJ_RIGHT: u32 = 2;
3643pub const PB_DRAW: u32 = 514;
3644pub const PBCB_OK: u32 = 0;
3645pub const PBCB_UNKNOWN: u32 = 1;
3646pub const PBR_NORMAL: u32 = 0;
3647pub const PBR_SELECTED: u32 = 1;
3648pub const PBR_NORMALDISABLED: u32 = 2;
3649pub const PBR_SELECTEDDISABLED: u32 = 8;
3650pub const SORIENT_HORIZ: u32 = 2;
3651pub const SORIENT_VERT: u32 = 4;
3652pub const SCROLLER_HORIZONTAL: u32 = 2;
3653pub const SCROLLER_VERTICAL: u32 = 4;
3654pub const INTUITION_CGHOOKS_H: u32 = 1;
3655pub const SGTOOL_FREEHAND_DOTS: u32 = 0;
3656pub const SGTOOL_FREEHAND: u32 = 1;
3657pub const SGTOOL_ELLIPSE: u32 = 2;
3658pub const SGTOOL_ELLIPSE_FILLED: u32 = 3;
3659pub const SGTOOL_RECT: u32 = 4;
3660pub const SGTOOL_RECT_FILLED: u32 = 5;
3661pub const SGTOOL_LINE: u32 = 6;
3662pub const SGTOOL_FILL: u32 = 7;
3663pub const SGTOOL_GETPEN: u32 = 8;
3664pub const SGTOOL_HOTSPOT: u32 = 9;
3665pub const SGTOOL_SELECT: u32 = 10;
3666pub const SGTOOL_MOVE: u32 = 11;
3667pub const SGSCROLLWHEEL_NOTHING: u32 = 0;
3668pub const SGSCROLLWHEEL_SCROLLANDZOOM: u32 = 1;
3669pub const SGSCROLLWHEEL_ZOOM: u32 = 2;
3670pub const SGM_Clear: u32 = 5767424;
3671pub const SGM_Undo: u32 = 5767425;
3672pub const SGM_Redo: u32 = 5767426;
3673pub const SGM_Scroll: u32 = 5767427;
3674pub const SLIDER_HORIZONTAL: u32 = 2;
3675pub const SLIDER_VERTICAL: u32 = 4;
3676pub const SLJ_LEFT: u32 = 0;
3677pub const SLJ_CENTER: u32 = 1;
3678pub const SLJ_RIGHT: u32 = 2;
3679pub const SBH_NONE: u32 = 0;
3680pub const SBH_BACKFILL: u32 = 1;
3681pub const SBH_RECESS: u32 = 2;
3682pub const SBH_IMAGE: u32 = 3;
3683pub const SBM_SETNODEATTRS: u32 = 5767178;
3684pub const SBORIENT_HORIZ: u32 = 0;
3685pub const SBORIENT_VERT: u32 = 1;
3686pub const SPEEDBAR_HORIZONTAL: u32 = 0;
3687pub const SPEEDBAR_VERTICAL: u32 = 1;
3688pub const SBTYPE_BOTH: u32 = 0;
3689pub const SBTYPE_TEXT: u32 = 1;
3690pub const SBTYPE_IMAGE: u32 = 2;
3691pub const SHK_CUSTOM: u32 = 0;
3692pub const SHK_PASSWORD: u32 = 1;
3693pub const SHK_IPADDRESS: u32 = 2;
3694pub const SHK_FLOAT: u32 = 3;
3695pub const SHK_HEXIDECIMAL: u32 = 4;
3696pub const SHK_TELEPHONE: u32 = 5;
3697pub const SHK_POSTALCODE: u32 = 6;
3698pub const SHK_AMOUNT: u32 = 7;
3699pub const SHK_UPPERCASE: u32 = 8;
3700pub const SHK_HOTKEY: u32 = 9;
3701pub const SHK_HEXADECIMAL: u32 = 4;
3702pub const TL_TEXTPEN: u32 = 0;
3703pub const TL_BACKGROUNDPEN: u32 = 1;
3704pub const TL_FILLTEXTPEN: u32 = 2;
3705pub const TL_FILLPEN: u32 = 3;
3706pub const MAX_TL_PENS: u32 = 4;
3707pub const BUT_REWIND: u32 = 0;
3708pub const BUT_PLAY: u32 = 1;
3709pub const BUT_FORWARD: u32 = 2;
3710pub const BUT_STOP: u32 = 3;
3711pub const BUT_PAUSE: u32 = 4;
3712pub const BUT_BEGIN: u32 = 5;
3713pub const BUT_FRAME: u32 = 6;
3714pub const BUT_END: u32 = 7;
3715pub const TEXTEDITOR_Dummy: u32 = 282624;
3716pub const GM_TEXTEDITOR_HandleError: u32 = 282655;
3717pub const GM_TEXTEDITOR_AddKeyBindings: u32 = 282658;
3718pub const GM_TEXTEDITOR_ARexxCmd: u32 = 282659;
3719pub const GM_TEXTEDITOR_ClearText: u32 = 282660;
3720pub const GM_TEXTEDITOR_ExportText: u32 = 282661;
3721pub const GM_TEXTEDITOR_InsertText: u32 = 282662;
3722pub const GM_TEXTEDITOR_MacroBegin: u32 = 282663;
3723pub const GM_TEXTEDITOR_MacroEnd: u32 = 282664;
3724pub const GM_TEXTEDITOR_MacroExecute: u32 = 282665;
3725pub const GM_TEXTEDITOR_Replace: u32 = 282666;
3726pub const GM_TEXTEDITOR_Search: u32 = 282667;
3727pub const GM_TEXTEDITOR_MarkText: u32 = 282668;
3728pub const GM_TEXTEDITOR_BlockInfo: u32 = 282672;
3729pub const GM_TEXTEDITOR_AddChangeListener: u32 = 282673;
3730pub const GM_TEXTEDITOR_ExportBlock: u32 = 282692;
3731pub const GM_TEXTEDITOR_ReplaceAll: u32 = 282699;
3732pub const GV_TEXTEDITOR_ExportHook_Plain: u32 = 0;
3733pub const GV_TEXTEDITOR_ExportHook_EMail: u32 = 1;
3734pub const GV_TEXTEDITOR_Flow_Left: u32 = 0;
3735pub const GV_TEXTEDITOR_Flow_Center: u32 = 1;
3736pub const GV_TEXTEDITOR_Flow_Right: u32 = 2;
3737pub const GV_TEXTEDITOR_Flow_Justified: u32 = 3;
3738pub const GV_TEXTEDITOR_ImportHook_Plain: u32 = 0;
3739pub const GV_TEXTEDITOR_ImportHook_EMail: u32 = 2;
3740pub const GV_TEXTEDITOR_ImportHook_MIME: u32 = 3;
3741pub const GV_TEXTEDITOR_ImportHook_MIMEQuoted: u32 = 4;
3742pub const GV_TEXTEDITOR_InsertText_Cursor: u32 = 0;
3743pub const GV_TEXTEDITOR_InsertText_Top: u32 = 1;
3744pub const GV_TEXTEDITOR_InsertText_Bottom: u32 = 2;
3745pub const GV_TEXTEDITOR_LengthHook_Plain: u32 = 0;
3746pub const GV_TEXTEDITOR_LengthHook_ANSI: u32 = 1;
3747pub const GV_TEXTEDITOR_LengthHook_HTML: u32 = 2;
3748pub const GV_TEXTEDITOR_LengthHook_MAIL: u32 = 3;
3749pub const GV_TEXTEDITOR_TabKey_IndentsLine: u32 = 0;
3750pub const GV_TEXTEDITOR_TabKey_IndentsAfter: u32 = 1;
3751pub const GF_TEXTEDITOR_Search_FromTop: u32 = 1;
3752pub const GF_TEXTEDITOR_Search_Next: u32 = 2;
3753pub const GF_TEXTEDITOR_Search_Incremental: u32 = 3;
3754pub const GF_TEXTEDITOR_Search_Backwards: u32 = 16;
3755pub const GF_TEXTEDITOR_Highlight_All: u32 = 19;
3756pub const GF_TEXTEDITOR_SearchType_Mask: u32 = 19;
3757pub const GF_TEXTEDITOR_Search_CaseSensitive: u32 = 4;
3758pub const GF_TEXTEDITOR_Search_DOSPattern: u32 = 8;
3759pub const GF_TEXTEDITOR_Search_Wildstar: u32 = 32;
3760pub const GF_TEXTEDITOR_Search_Word: u32 = 64;
3761pub const GF_TEXTEDITOR_Search_WholeWord: u32 = 64;
3762pub const GF_TEXTEDITOR_Search_Cyclic: u32 = 128;
3763pub const GF_TEXTEDITOR_Replace_All: u32 = 1;
3764pub const Error_ClipboardIsEmpty: u32 = 1;
3765pub const Error_ClipboardIsNotFTXT: u32 = 2;
3766pub const Error_MacroBufferIsFull: u32 = 3;
3767pub const Error_MemoryAllocationFailed: u32 = 4;
3768pub const Error_NoAreaMarked: u32 = 5;
3769pub const Error_NoMacroDefined: u32 = 6;
3770pub const Error_NothingToRedo: u32 = 7;
3771pub const Error_NothingToUndo: u32 = 8;
3772pub const Error_NotEnoughUndoMem: u32 = 9;
3773pub const Error_StringNotFound: u32 = 10;
3774pub const Error_NoBookmarkInstalled: u32 = 11;
3775pub const Error_BookmarkHasBeenLost: u32 = 12;
3776pub const TBSTYLE_UNDERLINE: u32 = 1;
3777pub const TBSTYLE_BOLD: u32 = 2;
3778pub const TBSTYLE_ITALIC: u32 = 4;
3779pub const TBSTYLE_SETCOLOR: u32 = 8;
3780pub const TBSTYLE_SPELLERROR: u32 = 64;
3781pub const TBSTYLE_COLORMASK: u32 = 65280;
3782pub const TBSTYLE_STYLEMASK: u32 = 255;
3783pub const TBSTYLE_NOTSET: u32 = 65280;
3784pub const LEFTBAR_RENDERCOMMAND: u32 = 0;
3785pub const LEFTBAR_MOUSECOMMAND: u32 = 1;
3786pub const LNSB_Top: u32 = 0;
3787pub const LNSB_Middle: u32 = 1;
3788pub const LNSB_Bottom: u32 = 2;
3789pub const LNSB_StrikeThru: u32 = 3;
3790pub const LNSB_Thick: u32 = 4;
3791pub const LNSF_Top: u32 = 1;
3792pub const LNSF_Middle: u32 = 2;
3793pub const LNSF_Bottom: u32 = 4;
3794pub const LNSF_StrikeThru: u32 = 8;
3795pub const LNSF_Thick: u32 = 16;
3796pub const LINEENDING_LF: u32 = 0;
3797pub const LINEENDING_CR: u32 = 1;
3798pub const LINEENDING_CRLF: u32 = 2;
3799pub const LINEENDING_ASIMPORT: u32 = 3;
3800pub const PRESERVE_COLORS: u32 = 1;
3801pub const AVOID_FLICKER: u32 = 2;
3802pub const IGNORE_MCOMPAT: u32 = 4;
3803pub const BIDTAG_COERCE: u32 = 1;
3804pub const BORDERHIT: u32 = 0;
3805pub const TOPHIT: u32 = 1;
3806pub const BOTTOMHIT: u32 = 2;
3807pub const LEFTHIT: u32 = 4;
3808pub const RIGHTHIT: u32 = 8;
3809pub const MODE_640: u32 = 32768;
3810pub const PLNCNTMSK: u32 = 7;
3811pub const PLNCNTSHFT: u32 = 12;
3812pub const PF2PRI: u32 = 64;
3813pub const COLORON: u32 = 512;
3814pub const DBLPF: u32 = 1024;
3815pub const HOLDNMODIFY: u32 = 2048;
3816pub const INTERLACE: u32 = 4;
3817pub const PFA_FINE_SCROLL: u32 = 15;
3818pub const PFB_FINE_SCROLL_SHIFT: u32 = 4;
3819pub const PF_FINE_SCROLL_MASK: u32 = 15;
3820pub const DIW_HORIZ_POS: u32 = 127;
3821pub const DIW_VRTCL_POS: u32 = 511;
3822pub const DIW_VRTCL_POS_SHIFT: u32 = 7;
3823pub const DFTCH_MASK: u32 = 255;
3824pub const VPOSRLOF: u32 = 32768;
3825pub const SUSERFLAGS: u32 = 255;
3826pub const VSPRITE: u32 = 1;
3827pub const SAVEBACK: u32 = 2;
3828pub const OVERLAY: u32 = 4;
3829pub const MUSTDRAW: u32 = 8;
3830pub const BACKSAVED: u32 = 256;
3831pub const BOBUPDATE: u32 = 512;
3832pub const GELGONE: u32 = 1024;
3833pub const VSOVERFLOW: u32 = 2048;
3834pub const BUSERFLAGS: u32 = 255;
3835pub const SAVEBOB: u32 = 1;
3836pub const BOBISCOMP: u32 = 2;
3837pub const BWAITING: u32 = 256;
3838pub const BDRAWN: u32 = 512;
3839pub const BOBSAWAY: u32 = 1024;
3840pub const BOBNIX: u32 = 2048;
3841pub const SAVEPRESERVE: u32 = 4096;
3842pub const OUTSTEP: u32 = 8192;
3843pub const ANFRACSIZE: u32 = 6;
3844pub const ANIMHALF: u32 = 32;
3845pub const RINGTRIGGER: u32 = 1;
3846pub const B2NORM: u32 = 0;
3847pub const B2SWAP: u32 = 1;
3848pub const B2BOBBER: u32 = 2;
3849pub const NTSC: u32 = 1;
3850pub const GENLOC: u32 = 2;
3851pub const PAL: u32 = 4;
3852pub const TODA_SAFE: u32 = 8;
3853pub const REALLY_PAL: u32 = 16;
3854pub const LPEN_SWAP_FRAMES: u32 = 32;
3855pub const BLITMSG_FAULT: u32 = 4;
3856pub const GFXB_BIG_BLITS: u32 = 0;
3857pub const GFXB_HR_AGNUS: u32 = 0;
3858pub const GFXB_HR_DENISE: u32 = 1;
3859pub const GFXB_AA_ALICE: u32 = 2;
3860pub const GFXB_AA_LISA: u32 = 3;
3861pub const GFXB_AA_MLISA: u32 = 4;
3862pub const GFXF_BIG_BLITS: u32 = 1;
3863pub const GFXF_HR_AGNUS: u32 = 1;
3864pub const GFXF_HR_DENISE: u32 = 2;
3865pub const GFXF_AA_ALICE: u32 = 4;
3866pub const GFXF_AA_LISA: u32 = 8;
3867pub const GFXF_AA_MLISA: u32 = 16;
3868pub const SETCHIPREV_A: u32 = 1;
3869pub const SETCHIPREV_ECS: u32 = 3;
3870pub const SETCHIPREV_AA: u32 = 15;
3871pub const SETCHIPREV_BEST: u32 = 4294967295;
3872pub const BUS_16: u32 = 0;
3873pub const NML_CAS: u32 = 0;
3874pub const BUS_32: u32 = 1;
3875pub const DBL_CAS: u32 = 2;
3876pub const BANDWIDTH_1X: u32 = 0;
3877pub const BANDWIDTH_2XNML: u32 = 1;
3878pub const BANDWIDTH_2XDBL: u32 = 2;
3879pub const BANDWIDTH_4X: u32 = 3;
3880pub const NEW_DATABASE: u32 = 1;
3881pub const GRAPHICSNAME: &[u8; 17] = b"graphics.library\0";
3882pub const DMAF_SETCLR: u32 = 32768;
3883pub const DMAF_AUDIO: u32 = 15;
3884pub const DMAF_AUD0: u32 = 1;
3885pub const DMAF_AUD1: u32 = 2;
3886pub const DMAF_AUD2: u32 = 4;
3887pub const DMAF_AUD3: u32 = 8;
3888pub const DMAF_DISK: u32 = 16;
3889pub const DMAF_SPRITE: u32 = 32;
3890pub const DMAF_BLITTER: u32 = 64;
3891pub const DMAF_COPPER: u32 = 128;
3892pub const DMAF_RASTER: u32 = 256;
3893pub const DMAF_MASTER: u32 = 512;
3894pub const DMAF_BLITHOG: u32 = 1024;
3895pub const DMAF_ALL: u32 = 511;
3896pub const DMAF_BLTDONE: u32 = 16384;
3897pub const DMAF_BLTNZERO: u32 = 8192;
3898pub const DMAB_SETCLR: u32 = 15;
3899pub const DMAB_AUD0: u32 = 0;
3900pub const DMAB_AUD1: u32 = 1;
3901pub const DMAB_AUD2: u32 = 2;
3902pub const DMAB_AUD3: u32 = 3;
3903pub const DMAB_DISK: u32 = 4;
3904pub const DMAB_SPRITE: u32 = 5;
3905pub const DMAB_BLITTER: u32 = 6;
3906pub const DMAB_COPPER: u32 = 7;
3907pub const DMAB_RASTER: u32 = 8;
3908pub const DMAB_MASTER: u32 = 9;
3909pub const DMAB_BLITHOG: u32 = 10;
3910pub const DMAB_BLTDONE: u32 = 14;
3911pub const DMAB_BLTNZERO: u32 = 13;
3912pub const RPTAG_Font: u32 = 2147483648;
3913pub const RPTAG_APen: u32 = 2147483650;
3914pub const RPTAG_BPen: u32 = 2147483651;
3915pub const RPTAG_DrMd: u32 = 2147483652;
3916pub const RPTAG_OutLinePen: u32 = 2147483653;
3917pub const RPTAG_OutlinePen: u32 = 2147483653;
3918pub const RPTAG_WriteMask: u32 = 2147483654;
3919pub const RPTAG_MaxPen: u32 = 2147483655;
3920pub const RPTAG_DrawBounds: u32 = 2147483656;
3921pub const SPRITE_ATTACHED: u32 = 128;
3922pub const SPRITEA_Width: u32 = 2164260864;
3923pub const SPRITEA_XReplication: u32 = 2164260866;
3924pub const SPRITEA_YReplication: u32 = 2164260868;
3925pub const SPRITEA_OutputHeight: u32 = 2164260870;
3926pub const SPRITEA_Attached: u32 = 2164260872;
3927pub const SPRITEA_OldDataFormat: u32 = 2164260874;
3928pub const GSTAG_SPRITE_NUM: u32 = 2181038112;
3929pub const GSTAG_ATTACHED: u32 = 2181038114;
3930pub const GSTAG_SOFTSPRITE: u32 = 2181038116;
3931pub const GSTAG_SCANDOUBLED: u32 = 2197815296;
3932pub const VTAG_END_CM: u32 = 0;
3933pub const VTAG_CHROMAKEY_CLR: u32 = 2147483648;
3934pub const VTAG_CHROMAKEY_SET: u32 = 2147483649;
3935pub const VTAG_BITPLANEKEY_CLR: u32 = 2147483650;
3936pub const VTAG_BITPLANEKEY_SET: u32 = 2147483651;
3937pub const VTAG_BORDERBLANK_CLR: u32 = 2147483652;
3938pub const VTAG_BORDERBLANK_SET: u32 = 2147483653;
3939pub const VTAG_BORDERNOTRANS_CLR: u32 = 2147483654;
3940pub const VTAG_BORDERNOTRANS_SET: u32 = 2147483655;
3941pub const VTAG_CHROMA_PEN_CLR: u32 = 2147483656;
3942pub const VTAG_CHROMA_PEN_SET: u32 = 2147483657;
3943pub const VTAG_CHROMA_PLANE_SET: u32 = 2147483658;
3944pub const VTAG_ATTACH_CM_SET: u32 = 2147483659;
3945pub const VTAG_NEXTBUF_CM: u32 = 2147483660;
3946pub const VTAG_BATCH_CM_CLR: u32 = 2147483661;
3947pub const VTAG_BATCH_CM_SET: u32 = 2147483662;
3948pub const VTAG_NORMAL_DISP_GET: u32 = 2147483663;
3949pub const VTAG_NORMAL_DISP_SET: u32 = 2147483664;
3950pub const VTAG_COERCE_DISP_GET: u32 = 2147483665;
3951pub const VTAG_COERCE_DISP_SET: u32 = 2147483666;
3952pub const VTAG_VIEWPORTEXTRA_GET: u32 = 2147483667;
3953pub const VTAG_VIEWPORTEXTRA_SET: u32 = 2147483668;
3954pub const VTAG_CHROMAKEY_GET: u32 = 2147483669;
3955pub const VTAG_BITPLANEKEY_GET: u32 = 2147483670;
3956pub const VTAG_BORDERBLANK_GET: u32 = 2147483671;
3957pub const VTAG_BORDERNOTRANS_GET: u32 = 2147483672;
3958pub const VTAG_CHROMA_PEN_GET: u32 = 2147483673;
3959pub const VTAG_CHROMA_PLANE_GET: u32 = 2147483674;
3960pub const VTAG_ATTACH_CM_GET: u32 = 2147483675;
3961pub const VTAG_BATCH_CM_GET: u32 = 2147483676;
3962pub const VTAG_BATCH_ITEMS_GET: u32 = 2147483677;
3963pub const VTAG_BATCH_ITEMS_SET: u32 = 2147483678;
3964pub const VTAG_BATCH_ITEMS_ADD: u32 = 2147483679;
3965pub const VTAG_VPMODEID_GET: u32 = 2147483680;
3966pub const VTAG_VPMODEID_SET: u32 = 2147483681;
3967pub const VTAG_VPMODEID_CLR: u32 = 2147483682;
3968pub const VTAG_USERCLIP_GET: u32 = 2147483683;
3969pub const VTAG_USERCLIP_SET: u32 = 2147483684;
3970pub const VTAG_USERCLIP_CLR: u32 = 2147483685;
3971pub const VTAG_PF1_BASE_GET: u32 = 2147483686;
3972pub const VTAG_PF2_BASE_GET: u32 = 2147483687;
3973pub const VTAG_SPEVEN_BASE_GET: u32 = 2147483688;
3974pub const VTAG_SPODD_BASE_GET: u32 = 2147483689;
3975pub const VTAG_PF1_BASE_SET: u32 = 2147483690;
3976pub const VTAG_PF2_BASE_SET: u32 = 2147483691;
3977pub const VTAG_SPEVEN_BASE_SET: u32 = 2147483692;
3978pub const VTAG_SPODD_BASE_SET: u32 = 2147483693;
3979pub const VTAG_BORDERSPRITE_GET: u32 = 2147483694;
3980pub const VTAG_BORDERSPRITE_SET: u32 = 2147483695;
3981pub const VTAG_BORDERSPRITE_CLR: u32 = 2147483696;
3982pub const VTAG_SPRITERESN_SET: u32 = 2147483697;
3983pub const VTAG_SPRITERESN_GET: u32 = 2147483698;
3984pub const VTAG_PF1_TO_SPRITEPRI_SET: u32 = 2147483699;
3985pub const VTAG_PF1_TO_SPRITEPRI_GET: u32 = 2147483700;
3986pub const VTAG_PF2_TO_SPRITEPRI_SET: u32 = 2147483701;
3987pub const VTAG_PF2_TO_SPRITEPRI_GET: u32 = 2147483702;
3988pub const VTAG_IMMEDIATE: u32 = 2147483703;
3989pub const VTAG_FULLPALETTE_SET: u32 = 2147483704;
3990pub const VTAG_FULLPALETTE_GET: u32 = 2147483705;
3991pub const VTAG_FULLPALETTE_CLR: u32 = 2147483706;
3992pub const VTAG_DEFSPRITERESN_SET: u32 = 2147483707;
3993pub const VTAG_DEFSPRITERESN_GET: u32 = 2147483708;
3994pub const VC_IntermediateCLUpdate: u32 = 2147483776;
3995pub const VC_IntermediateCLUpdate_Query: u32 = 2147483777;
3996pub const VC_NoColorPaletteLoad: u32 = 2147483778;
3997pub const VC_NoColorPaletteLoad_Query: u32 = 2147483779;
3998pub const VC_DUALPF_Disable: u32 = 2147483780;
3999pub const VC_DUALPF_Disable_Query: u32 = 2147483781;
4000pub const ADKB_SETCLR: u32 = 15;
4001pub const ADKB_PRECOMP1: u32 = 14;
4002pub const ADKB_PRECOMP0: u32 = 13;
4003pub const ADKB_MFMPREC: u32 = 12;
4004pub const ADKB_UARTBRK: u32 = 11;
4005pub const ADKB_WORDSYNC: u32 = 10;
4006pub const ADKB_MSBSYNC: u32 = 9;
4007pub const ADKB_FAST: u32 = 8;
4008pub const ADKB_USE3PN: u32 = 7;
4009pub const ADKB_USE2P3: u32 = 6;
4010pub const ADKB_USE1P2: u32 = 5;
4011pub const ADKB_USE0P1: u32 = 4;
4012pub const ADKB_USE3VN: u32 = 3;
4013pub const ADKB_USE2V3: u32 = 2;
4014pub const ADKB_USE1V2: u32 = 1;
4015pub const ADKB_USE0V1: u32 = 0;
4016pub const ADKF_SETCLR: u32 = 32768;
4017pub const ADKF_PRECOMP1: u32 = 16384;
4018pub const ADKF_PRECOMP0: u32 = 8192;
4019pub const ADKF_MFMPREC: u32 = 4096;
4020pub const ADKF_UARTBRK: u32 = 2048;
4021pub const ADKF_WORDSYNC: u32 = 1024;
4022pub const ADKF_MSBSYNC: u32 = 512;
4023pub const ADKF_FAST: u32 = 256;
4024pub const ADKF_USE3PN: u32 = 128;
4025pub const ADKF_USE2P3: u32 = 64;
4026pub const ADKF_USE1P2: u32 = 32;
4027pub const ADKF_USE0P1: u32 = 16;
4028pub const ADKF_USE3VN: u32 = 8;
4029pub const ADKF_USE2V3: u32 = 4;
4030pub const ADKF_USE1V2: u32 = 2;
4031pub const ADKF_USE0V1: u32 = 1;
4032pub const ADKF_PRE000NS: u32 = 0;
4033pub const ADKF_PRE140NS: u32 = 8192;
4034pub const ADKF_PRE280NS: u32 = 16384;
4035pub const ADKF_PRE560NS: u32 = 24576;
4036pub const HSIZEBITS: u32 = 6;
4037pub const VSIZEBITS: u32 = 10;
4038pub const HSIZEMASK: u32 = 63;
4039pub const VSIZEMASK: u32 = 1023;
4040pub const MINBYTESPERROW: u32 = 128;
4041pub const MAXBYTESPERROW: u32 = 4096;
4042pub const ABC: u32 = 128;
4043pub const ABNC: u32 = 64;
4044pub const ANBC: u32 = 32;
4045pub const ANBNC: u32 = 16;
4046pub const NABC: u32 = 8;
4047pub const NABNC: u32 = 4;
4048pub const NANBC: u32 = 2;
4049pub const NANBNC: u32 = 1;
4050pub const A_OR_B: u32 = 252;
4051pub const A_OR_C: u32 = 250;
4052pub const A_XOR_C: u32 = 90;
4053pub const A_TO_D: u32 = 240;
4054pub const BC0B_DEST: u32 = 8;
4055pub const BC0B_SRCC: u32 = 9;
4056pub const BC0B_SRCB: u32 = 10;
4057pub const BC0B_SRCA: u32 = 11;
4058pub const BC0F_DEST: u32 = 256;
4059pub const BC0F_SRCC: u32 = 512;
4060pub const BC0F_SRCB: u32 = 1024;
4061pub const BC0F_SRCA: u32 = 2048;
4062pub const BC1F_DESC: u32 = 2;
4063pub const DEST: u32 = 256;
4064pub const SRCC: u32 = 512;
4065pub const SRCB: u32 = 1024;
4066pub const SRCA: u32 = 2048;
4067pub const ASHIFTSHIFT: u32 = 12;
4068pub const BSHIFTSHIFT: u32 = 12;
4069pub const LINEMODE: u32 = 1;
4070pub const FILL_OR: u32 = 8;
4071pub const FILL_XOR: u32 = 16;
4072pub const FILL_CARRYIN: u32 = 4;
4073pub const ONEDOT: u32 = 2;
4074pub const OVFLAG: u32 = 32;
4075pub const SIGNFLAG: u32 = 64;
4076pub const BLITREVERSE: u32 = 2;
4077pub const SUD: u32 = 16;
4078pub const SUL: u32 = 8;
4079pub const AUL: u32 = 4;
4080pub const OCTANT8: u32 = 24;
4081pub const OCTANT7: u32 = 4;
4082pub const OCTANT6: u32 = 12;
4083pub const OCTANT5: u32 = 28;
4084pub const OCTANT4: u32 = 20;
4085pub const OCTANT3: u32 = 8;
4086pub const OCTANT2: u32 = 0;
4087pub const OCTANT1: u32 = 16;
4088pub const CLEANUP: u32 = 64;
4089pub const CLEANME: u32 = 64;
4090pub const CIAICRB_TA: u32 = 0;
4091pub const CIAICRB_TB: u32 = 1;
4092pub const CIAICRB_ALRM: u32 = 2;
4093pub const CIAICRB_SP: u32 = 3;
4094pub const CIAICRB_FLG: u32 = 4;
4095pub const CIAICRB_IR: u32 = 7;
4096pub const CIAICRB_SETCLR: u32 = 7;
4097pub const CIACRAB_START: u32 = 0;
4098pub const CIACRAB_PBON: u32 = 1;
4099pub const CIACRAB_OUTMODE: u32 = 2;
4100pub const CIACRAB_RUNMODE: u32 = 3;
4101pub const CIACRAB_LOAD: u32 = 4;
4102pub const CIACRAB_INMODE: u32 = 5;
4103pub const CIACRAB_SPMODE: u32 = 6;
4104pub const CIACRAB_TODIN: u32 = 7;
4105pub const CIACRBB_START: u32 = 0;
4106pub const CIACRBB_PBON: u32 = 1;
4107pub const CIACRBB_OUTMODE: u32 = 2;
4108pub const CIACRBB_RUNMODE: u32 = 3;
4109pub const CIACRBB_LOAD: u32 = 4;
4110pub const CIACRBB_INMODE0: u32 = 5;
4111pub const CIACRBB_INMODE1: u32 = 6;
4112pub const CIACRBB_ALARM: u32 = 7;
4113pub const CIAICRF_TA: u32 = 1;
4114pub const CIAICRF_TB: u32 = 2;
4115pub const CIAICRF_ALRM: u32 = 4;
4116pub const CIAICRF_SP: u32 = 8;
4117pub const CIAICRF_FLG: u32 = 16;
4118pub const CIAICRF_IR: u32 = 128;
4119pub const CIAICRF_SETCLR: u32 = 128;
4120pub const CIACRAF_START: u32 = 1;
4121pub const CIACRAF_PBON: u32 = 2;
4122pub const CIACRAF_OUTMODE: u32 = 4;
4123pub const CIACRAF_RUNMODE: u32 = 8;
4124pub const CIACRAF_LOAD: u32 = 16;
4125pub const CIACRAF_INMODE: u32 = 32;
4126pub const CIACRAF_SPMODE: u32 = 64;
4127pub const CIACRAF_TODIN: u32 = 128;
4128pub const CIACRBF_START: u32 = 1;
4129pub const CIACRBF_PBON: u32 = 2;
4130pub const CIACRBF_OUTMODE: u32 = 4;
4131pub const CIACRBF_RUNMODE: u32 = 8;
4132pub const CIACRBF_LOAD: u32 = 16;
4133pub const CIACRBF_INMODE0: u32 = 32;
4134pub const CIACRBF_INMODE1: u32 = 64;
4135pub const CIACRBF_ALARM: u32 = 128;
4136pub const CIACRBF_IN_PHI2: u32 = 0;
4137pub const CIACRBF_IN_CNT: u32 = 32;
4138pub const CIACRBF_IN_TA: u32 = 64;
4139pub const CIACRBF_IN_CNT_TA: u32 = 96;
4140pub const CIAB_GAMEPORT1: u32 = 7;
4141pub const CIAB_GAMEPORT0: u32 = 6;
4142pub const CIAB_DSKRDY: u32 = 5;
4143pub const CIAB_DSKTRACK0: u32 = 4;
4144pub const CIAB_DSKPROT: u32 = 3;
4145pub const CIAB_DSKCHANGE: u32 = 2;
4146pub const CIAB_LED: u32 = 1;
4147pub const CIAB_OVERLAY: u32 = 0;
4148pub const CIAB_COMDTR: u32 = 7;
4149pub const CIAB_COMRTS: u32 = 6;
4150pub const CIAB_COMCD: u32 = 5;
4151pub const CIAB_COMCTS: u32 = 4;
4152pub const CIAB_COMDSR: u32 = 3;
4153pub const CIAB_PRTRSEL: u32 = 2;
4154pub const CIAB_PRTRPOUT: u32 = 1;
4155pub const CIAB_PRTRBUSY: u32 = 0;
4156pub const CIAB_DSKMOTOR: u32 = 7;
4157pub const CIAB_DSKSEL3: u32 = 6;
4158pub const CIAB_DSKSEL2: u32 = 5;
4159pub const CIAB_DSKSEL1: u32 = 4;
4160pub const CIAB_DSKSEL0: u32 = 3;
4161pub const CIAB_DSKSIDE: u32 = 2;
4162pub const CIAB_DSKDIREC: u32 = 1;
4163pub const CIAB_DSKSTEP: u32 = 0;
4164pub const CIAF_GAMEPORT1: u32 = 128;
4165pub const CIAF_GAMEPORT0: u32 = 64;
4166pub const CIAF_DSKRDY: u32 = 32;
4167pub const CIAF_DSKTRACK0: u32 = 16;
4168pub const CIAF_DSKPROT: u32 = 8;
4169pub const CIAF_DSKCHANGE: u32 = 4;
4170pub const CIAF_LED: u32 = 2;
4171pub const CIAF_OVERLAY: u32 = 1;
4172pub const CIAF_COMDTR: u32 = 128;
4173pub const CIAF_COMRTS: u32 = 64;
4174pub const CIAF_COMCD: u32 = 32;
4175pub const CIAF_COMCTS: u32 = 16;
4176pub const CIAF_COMDSR: u32 = 8;
4177pub const CIAF_PRTRSEL: u32 = 4;
4178pub const CIAF_PRTRPOUT: u32 = 2;
4179pub const CIAF_PRTRBUSY: u32 = 1;
4180pub const CIAF_DSKMOTOR: u32 = 128;
4181pub const CIAF_DSKSEL3: u32 = 64;
4182pub const CIAF_DSKSEL2: u32 = 32;
4183pub const CIAF_DSKSEL1: u32 = 16;
4184pub const CIAF_DSKSEL0: u32 = 8;
4185pub const CIAF_DSKSIDE: u32 = 4;
4186pub const CIAF_DSKDIREC: u32 = 2;
4187pub const CIAF_DSKSTEP: u32 = 1;
4188pub const INTB_SETCLR: u32 = 15;
4189pub const INTB_INTEN: u32 = 14;
4190pub const INTB_EXTER: u32 = 13;
4191pub const INTB_DSKSYNC: u32 = 12;
4192pub const INTB_RBF: u32 = 11;
4193pub const INTB_AUD3: u32 = 10;
4194pub const INTB_AUD2: u32 = 9;
4195pub const INTB_AUD1: u32 = 8;
4196pub const INTB_AUD0: u32 = 7;
4197pub const INTB_BLIT: u32 = 6;
4198pub const INTB_VERTB: u32 = 5;
4199pub const INTB_COPER: u32 = 4;
4200pub const INTB_PORTS: u32 = 3;
4201pub const INTB_SOFTINT: u32 = 2;
4202pub const INTB_DSKBLK: u32 = 1;
4203pub const INTB_TBE: u32 = 0;
4204pub const INTF_SETCLR: u32 = 32768;
4205pub const INTF_INTEN: u32 = 16384;
4206pub const INTF_EXTER: u32 = 8192;
4207pub const INTF_DSKSYNC: u32 = 4096;
4208pub const INTF_RBF: u32 = 2048;
4209pub const INTF_AUD3: u32 = 1024;
4210pub const INTF_AUD2: u32 = 512;
4211pub const INTF_AUD1: u32 = 256;
4212pub const INTF_AUD0: u32 = 128;
4213pub const INTF_BLIT: u32 = 64;
4214pub const INTF_VERTB: u32 = 32;
4215pub const INTF_COPER: u32 = 16;
4216pub const INTF_PORTS: u32 = 8;
4217pub const INTF_SOFTINT: u32 = 4;
4218pub const INTF_DSKBLK: u32 = 2;
4219pub const INTF_TBE: u32 = 1;
4220pub const DLST_END: u32 = 0;
4221pub const DLST_LINE: u32 = 1;
4222pub const DLST_RECT: u32 = 2;
4223pub const DLST_FILL: u32 = 3;
4224pub const DLST_ELLIPSE: u32 = 4;
4225pub const DLST_CIRCLE: u32 = 5;
4226pub const DLST_LINEPAT: u32 = 6;
4227pub const DLST_FILLPAT: u32 = 7;
4228pub const DLST_AMOVE: u32 = 8;
4229pub const DLST_ADRAW: u32 = 9;
4230pub const DLST_AFILL: u32 = 10;
4231pub const DLST_BEVELBOX: u32 = 11;
4232pub const DLST_ARC: u32 = 12;
4233pub const DLST_START: u32 = 13;
4234pub const DLST_BOUNDS: u32 = 13;
4235pub const DLST_LINESIZE: u32 = 14;
4236pub const GLYPH_NONE: u32 = 0;
4237pub const GLYPH_DOWNARROW: u32 = 1;
4238pub const GLYPH_UPARROW: u32 = 2;
4239pub const GLYPH_LEFTARROW: u32 = 3;
4240pub const GLYPH_RIGHTARROW: u32 = 4;
4241pub const GLYPH_DROPDOWN: u32 = 5;
4242pub const GLYPH_POPUP: u32 = 6;
4243pub const GLYPH_CHECKMARK: u32 = 7;
4244pub const GLYPH_POPFONT: u32 = 8;
4245pub const GLYPH_POPFILE: u32 = 9;
4246pub const GLYPH_POPDRAWER: u32 = 10;
4247pub const GLYPH_POPSCREENMODE: u32 = 11;
4248pub const GLYPH_POPTIME: u32 = 12;
4249pub const GLYPH_RADIOBUTTON: u32 = 18;
4250pub const GLYPH_RETURNARROW: u32 = 20;
4251pub const GLYPH_BDOWNARROW: u32 = 21;
4252pub const GLYPH_BUPARROW: u32 = 22;
4253pub const GLYPH_BLEFTARROW: u32 = 23;
4254pub const GLYPH_BRIGHTARROW: u32 = 24;
4255pub const GLYPH_DROPDOWNMENU: u32 = 25;
4256pub const GLYPH_CYCLE: u32 = 26;
4257pub const GLYPH_POPDATE: u32 = 27;
4258pub const GLYPH_POPCOLOR: u32 = 28;
4259pub const GLYPH_POPCOLOUR: u32 = 28;
4260pub const GLYPH_SHIFTKEY: u32 = 32;
4261pub const LJ_LEFT: u32 = 0;
4262pub const LJ_CENTRE: u32 = 1;
4263pub const LJ_RIGHT: u32 = 2;
4264pub const LJ_CENTER: u32 = 1;
4265pub const LABEL_LEFT: u32 = 0;
4266pub const LABEL_CENTRE: u32 = 1;
4267pub const LABEL_CENTER: u32 = 1;
4268pub const LABEL_RIGHT: u32 = 2;
4269pub const LVALIGN_BOTTOM: u32 = 0;
4270pub const LVALIGN_BASELINE: u32 = 1;
4271pub const IMAGE_CHUNKY: u32 = 0;
4272pub const IMAGE_IMAGE: u32 = 1;
4273pub const IMAGE_DRAWLIST: u32 = 2;
4274pub const ICM_Dummy: u32 = 1025;
4275pub const ICM_SETLOOP: u32 = 1026;
4276pub const ICM_CLEARLOOP: u32 = 1027;
4277pub const ICM_CHECKLOOP: u32 = 1028;
4278pub const ICTARGET_IDCMP: i32 = -1;
4279pub const INTUITION_INTUITIONBASE_H: u32 = 1;
4280pub const DMODECOUNT: u32 = 2;
4281pub const HIRESPICK: u32 = 0;
4282pub const LOWRESPICK: u32 = 1;
4283pub const EVENTMAX: u32 = 10;
4284pub const RESCOUNT: u32 = 2;
4285pub const HIRESGADGET: u32 = 0;
4286pub const LOWRESGADGET: u32 = 1;
4287pub const GADGETCOUNT: u32 = 8;
4288pub const UPFRONTGADGET: u32 = 0;
4289pub const DOWNBACKGADGET: u32 = 1;
4290pub const SIZEGADGET: u32 = 2;
4291pub const CLOSEGADGET: u32 = 3;
4292pub const DRAGGADGET: u32 = 4;
4293pub const SUPFRONTGADGET: u32 = 5;
4294pub const SDOWNBACKGADGET: u32 = 6;
4295pub const SDRAGGADGET: u32 = 7;
4296pub const POINTERXRESN_DEFAULT: u32 = 0;
4297pub const POINTERXRESN_140NS: u32 = 1;
4298pub const POINTERXRESN_70NS: u32 = 2;
4299pub const POINTERXRESN_35NS: u32 = 3;
4300pub const POINTERXRESN_SCREENRES: u32 = 4;
4301pub const POINTERXRESN_LORES: u32 = 5;
4302pub const POINTERXRESN_HIRES: u32 = 6;
4303pub const POINTERYRESN_DEFAULT: u32 = 0;
4304pub const POINTERYRESN_HIGH: u32 = 2;
4305pub const POINTERYRESN_HIGHASPECT: u32 = 3;
4306pub const POINTERYRESN_SCREENRES: u32 = 4;
4307pub const POINTERYRESN_SCREENRESASPECT: u32 = 5;
4308pub const POINTERTYPE_NORMAL: u32 = 0;
4309pub const POINTERTYPE_BUSY: u32 = 1;
4310pub const POINTERTYPE_ALIAS: u32 = 2;
4311pub const POINTERTYPE_CELL: u32 = 3;
4312pub const POINTERTYPE_COLUMNRESIZE: u32 = 4;
4313pub const POINTERTYPE_CONTEXTMENU: u32 = 5;
4314pub const POINTERTYPE_COPY: u32 = 6;
4315pub const POINTERTYPE_CROSS: u32 = 7;
4316pub const POINTERTYPE_DRAGANDDROP: u32 = 8;
4317pub const POINTERTYPE_EASTRESIZE: u32 = 9;
4318pub const POINTERTYPE_EASTWESTRESIZE: u32 = 10;
4319pub const POINTERTYPE_HAND: u32 = 11;
4320pub const POINTERTYPE_HELP: u32 = 12;
4321pub const POINTERTYPE_LINK: u32 = 13;
4322pub const POINTERTYPE_MENU: u32 = 14;
4323pub const POINTERTYPE_NODROP: u32 = 15;
4324pub const POINTERTYPE_NONE: u32 = 16;
4325pub const POINTERTYPE_NORTHEASTRESIZE: u32 = 17;
4326pub const POINTERTYPE_NORTHEASTSOUTHWESTRESIZE: u32 = 18;
4327pub const POINTERTYPE_NORTHRESIZE: u32 = 19;
4328pub const POINTERTYPE_NORTHSOUTHRESIZE: u32 = 20;
4329pub const POINTERTYPE_NORTHWESTRESIZE: u32 = 21;
4330pub const POINTERTYPE_NORTHWESTSOUTHEASTRESIZE: u32 = 22;
4331pub const POINTERTYPE_NOTALLOWED: u32 = 23;
4332pub const POINTERTYPE_PROGRESS: u32 = 24;
4333pub const POINTERTYPE_ROWRESIZE: u32 = 25;
4334pub const POINTERTYPE_SCROLLALL: u32 = 26;
4335pub const POINTERTYPE_SOUTHEASTRESIZE: u32 = 27;
4336pub const POINTERTYPE_SOUTHRESIZE: u32 = 28;
4337pub const POINTERTYPE_SOUTHWESTRESIZE: u32 = 29;
4338pub const POINTERTYPE_TEXT: u32 = 30;
4339pub const POINTERTYPE_VERTICALTEXT: u32 = 31;
4340pub const POINTERTYPE_WESTRESIZE: u32 = 32;
4341pub const POINTERTYPE_ZOOMIN: u32 = 33;
4342pub const POINTERTYPE_ZOOMOUT: u32 = 34;
4343pub const POINTERTYPE_PEN: u32 = 35;
4344pub const POINTERTYPE_ROTATE: u32 = 36;
4345pub const POINTERTYPE_RUBBER: u32 = 37;
4346pub const POINTERTYPE_SELECT: u32 = 38;
4347pub const POINTERTYPE_SMUDGE: u32 = 39;
4348pub const POINTERTYPE_COUNT: u32 = 40;
4349pub const INTUITION_SGHOOKS_H: u32 = 1;
4350pub const EO_NOOP: u32 = 1;
4351pub const EO_DELBACKWARD: u32 = 2;
4352pub const EO_DELFORWARD: u32 = 3;
4353pub const EO_MOVECURSOR: u32 = 4;
4354pub const EO_ENTER: u32 = 5;
4355pub const EO_RESET: u32 = 6;
4356pub const EO_REPLACECHAR: u32 = 7;
4357pub const EO_INSERTCHAR: u32 = 8;
4358pub const EO_BADFORMAT: u32 = 9;
4359pub const EO_BIGCHANGE: u32 = 10;
4360pub const EO_UNDO: u32 = 11;
4361pub const EO_CLEAR: u32 = 12;
4362pub const EO_SPECIAL: u32 = 13;
4363pub const SGM_REPLACE: u32 = 1;
4364pub const SGM_FIXEDFIELD: u32 = 2;
4365pub const SGM_NOFILTER: u32 = 4;
4366pub const SGM_EXITHELP: u32 = 128;
4367pub const SGM_NOCHANGE: u32 = 8;
4368pub const SGM_NOWORKB: u32 = 16;
4369pub const SGM_CONTROL: u32 = 32;
4370pub const SGM_LONGINT: u32 = 64;
4371pub const SGA_USE: u32 = 1;
4372pub const SGA_END: u32 = 2;
4373pub const SGA_BEEP: u32 = 4;
4374pub const SGA_REUSE: u32 = 8;
4375pub const SGA_REDISPLAY: u32 = 16;
4376pub const SGA_NEXTACTIVE: u32 = 32;
4377pub const SGA_PREVACTIVE: u32 = 64;
4378pub const SGH_KEY: u32 = 1;
4379pub const SGH_CLICK: u32 = 2;
4380pub const APSH_TOOL_ID: u32 = 11000;
4381pub const StartupMsgID: u32 = 11001;
4382pub const LoginToolID: u32 = 11002;
4383pub const LogoutToolID: u32 = 11003;
4384pub const ShutdownMsgID: u32 = 11004;
4385pub const ActivateToolID: u32 = 11005;
4386pub const DeactivateToolID: u32 = 11006;
4387pub const ActiveToolID: u32 = 11007;
4388pub const InactiveToolID: u32 = 11008;
4389pub const ToolStatusID: u32 = 11009;
4390pub const ToolCmdID: u32 = 11010;
4391pub const ToolCmdReplyID: u32 = 11011;
4392pub const ShutdownToolID: u32 = 11012;
4393pub const HTF_LOAD_INDEX: u32 = 1;
4394pub const HTF_LOAD_ALL: u32 = 2;
4395pub const HTF_CACHE_NODE: u32 = 4;
4396pub const HTF_CACHE_DB: u32 = 8;
4397pub const HTF_UNIQUE: u32 = 32768;
4398pub const HTF_NOACTIVATE: u32 = 65536;
4399pub const HTFC_SYSGADS: u32 = 2147483648;
4400pub const HTH_OPEN: u32 = 0;
4401pub const HTH_CLOSE: u32 = 1;
4402pub const HTERR_NOT_ENOUGH_MEMORY: u32 = 100;
4403pub const HTERR_CANT_OPEN_DATABASE: u32 = 101;
4404pub const HTERR_CANT_FIND_NODE: u32 = 102;
4405pub const HTERR_CANT_OPEN_NODE: u32 = 103;
4406pub const HTERR_CANT_OPEN_WINDOW: u32 = 104;
4407pub const HTERR_INVALID_COMMAND: u32 = 105;
4408pub const HTERR_CANT_COMPLETE: u32 = 106;
4409pub const HTERR_PORT_CLOSED: u32 = 107;
4410pub const HTERR_CANT_CREATE_PORT: u32 = 108;
4411pub const HTERR_KEYWORD_NOT_FOUND: u32 = 113;
4412pub const XR_GENERIC: u32 = 0;
4413pub const XR_FUNCTION: u32 = 1;
4414pub const XR_COMMAND: u32 = 2;
4415pub const XR_INCLUDE: u32 = 3;
4416pub const XR_MACRO: u32 = 4;
4417pub const XR_STRUCT: u32 = 5;
4418pub const XR_FIELD: u32 = 6;
4419pub const XR_TYPEDEF: u32 = 7;
4420pub const XR_DEFINE: u32 = 8;
4421pub const HM_FINDNODE: u32 = 1;
4422pub const HM_OPENNODE: u32 = 2;
4423pub const HM_CLOSENODE: u32 = 3;
4424pub const HM_EXPUNGE: u32 = 10;
4425pub const HTNF_KEEP: u32 = 1;
4426pub const HTNF_RESERVED1: u32 = 2;
4427pub const HTNF_RESERVED2: u32 = 4;
4428pub const HTNF_ASCII: u32 = 8;
4429pub const HTNF_RESERVED3: u32 = 16;
4430pub const HTNF_CLEAN: u32 = 32;
4431pub const HTNF_DONE: u32 = 64;
4432pub const AslName: &[u8; 12] = b"asl.library\0";
4433pub const ASL_FileRequest: u32 = 0;
4434pub const ASL_FontRequest: u32 = 1;
4435pub const ASL_ScreenModeRequest: u32 = 2;
4436pub const FRB_FILTERFUNC: u32 = 7;
4437pub const FRB_INTUIFUNC: u32 = 6;
4438pub const FRB_DOSAVEMODE: u32 = 5;
4439pub const FRB_PRIVATEIDCMP: u32 = 4;
4440pub const FRB_DOMULTISELECT: u32 = 3;
4441pub const FRB_DOPATTERNS: u32 = 0;
4442pub const FRF_FILTERFUNC: u32 = 128;
4443pub const FRF_INTUIFUNC: u32 = 64;
4444pub const FRF_DOSAVEMODE: u32 = 32;
4445pub const FRF_PRIVATEIDCMP: u32 = 16;
4446pub const FRF_DOMULTISELECT: u32 = 8;
4447pub const FRF_DOPATTERNS: u32 = 1;
4448pub const FRB_DRAWERSONLY: u32 = 0;
4449pub const FRB_FILTERDRAWERS: u32 = 1;
4450pub const FRB_REJECTICONS: u32 = 2;
4451pub const FRF_DRAWERSONLY: u32 = 1;
4452pub const FRF_FILTERDRAWERS: u32 = 2;
4453pub const FRF_REJECTICONS: u32 = 4;
4454pub const ASLFRSORTBY_Name: u32 = 0;
4455pub const ASLFRSORTBY_Date: u32 = 1;
4456pub const ASLFRSORTBY_Size: u32 = 2;
4457pub const ASLFRSORTDRAWERS_First: u32 = 0;
4458pub const ASLFRSORTDRAWERS_Mix: u32 = 1;
4459pub const ASLFRSORTDRAWERS_Last: u32 = 2;
4460pub const ASLFRSORTORDER_Ascend: u32 = 0;
4461pub const ASLFRSORTORDER_Descend: u32 = 1;
4462pub const FOB_DOFRONTPEN: u32 = 0;
4463pub const FOB_DOBACKPEN: u32 = 1;
4464pub const FOB_DOSTYLE: u32 = 2;
4465pub const FOB_DODRAWMODE: u32 = 3;
4466pub const FOB_FIXEDWIDTHONLY: u32 = 4;
4467pub const FOB_PRIVATEIDCMP: u32 = 5;
4468pub const FOB_INTUIFUNC: u32 = 6;
4469pub const FOB_FILTERFUNC: u32 = 7;
4470pub const FOF_DOFRONTPEN: u32 = 1;
4471pub const FOF_DOBACKPEN: u32 = 2;
4472pub const FOF_DOSTYLE: u32 = 4;
4473pub const FOF_DODRAWMODE: u32 = 8;
4474pub const FOF_FIXEDWIDTHONLY: u32 = 16;
4475pub const FOF_PRIVATEIDCMP: u32 = 32;
4476pub const FOF_INTUIFUNC: u32 = 64;
4477pub const FOF_FILTERFUNC: u32 = 128;
4478pub const FO_SPECIALMODE_NONE: u32 = 0;
4479pub const FO_SPECIALMODE_OUTLINE: u32 = 1;
4480pub const FO_SPECIALMODE_SHADOW: u32 = 2;
4481pub const ASL_SEMAPHORE_NAME: &[u8; 12] = b"asl.library\0";
4482pub const ASLPOS_DefaultPosition: u32 = 0;
4483pub const ASLPOS_CenterWindow: u32 = 1;
4484pub const ASLPOS_CenterScreen: u32 = 2;
4485pub const ASLPOS_WindowPosition: u32 = 3;
4486pub const ASLPOS_ScreenPosition: u32 = 4;
4487pub const ASLPOS_CenterMouse: u32 = 5;
4488pub const ASLPOS_MASK: u32 = 15;
4489pub const ASLSIZE_DefaultSize: u32 = 0;
4490pub const ASLSIZE_RelativeSize: u32 = 16;
4491pub const ASLSIZE_MASK: u32 = 48;
4492pub const ASLOPTION_ASLOverrides: u32 = 64;
4493pub const FILB_DOWILDFUNC: u32 = 7;
4494pub const FILB_DOMSGFUNC: u32 = 6;
4495pub const FILB_SAVE: u32 = 5;
4496pub const FILB_NEWIDCMP: u32 = 4;
4497pub const FILB_MULTISELECT: u32 = 3;
4498pub const FILB_PATGAD: u32 = 0;
4499pub const FILF_DOWILDFUNC: u32 = 128;
4500pub const FILF_DOMSGFUNC: u32 = 64;
4501pub const FILF_SAVE: u32 = 32;
4502pub const FILF_NEWIDCMP: u32 = 16;
4503pub const FILF_MULTISELECT: u32 = 8;
4504pub const FILF_PATGAD: u32 = 1;
4505pub const FIL1B_NOFILES: u32 = 0;
4506pub const FIL1B_MATCHDIRS: u32 = 1;
4507pub const FIL1F_NOFILES: u32 = 1;
4508pub const FIL1F_MATCHDIRS: u32 = 2;
4509pub const FONB_FRONTCOLOR: u32 = 0;
4510pub const FONB_BACKCOLOR: u32 = 1;
4511pub const FONB_STYLES: u32 = 2;
4512pub const FONB_DRAWMODE: u32 = 3;
4513pub const FONB_FIXEDWIDTH: u32 = 4;
4514pub const FONB_NEWIDCMP: u32 = 5;
4515pub const FONB_DOMSGFUNC: u32 = 6;
4516pub const FONB_DOWILDFUNC: u32 = 7;
4517pub const FONF_FRONTCOLOR: u32 = 1;
4518pub const FONF_BACKCOLOR: u32 = 2;
4519pub const FONF_STYLES: u32 = 4;
4520pub const FONF_DRAWMODE: u32 = 8;
4521pub const FONF_FIXEDWIDTH: u32 = 16;
4522pub const FONF_NEWIDCMP: u32 = 32;
4523pub const FONF_DOMSGFUNC: u32 = 64;
4524pub const FONF_DOWILDFUNC: u32 = 128;
4525pub const NB_VERSION: u32 = 5;
4526pub const CBD_NAMELEN: u32 = 24;
4527pub const CBD_TITLELEN: u32 = 40;
4528pub const CBD_DESCRLEN: u32 = 40;
4529pub const NBU_DUPLICATE: u32 = 0;
4530pub const NBU_UNIQUE: u32 = 1;
4531pub const NBU_NOTIFY: u32 = 2;
4532pub const COF_SHOW_HIDE: u32 = 4;
4533pub const CX_INVALID: u32 = 0;
4534pub const CX_FILTER: u32 = 1;
4535pub const CX_TYPEFILTER: u32 = 2;
4536pub const CX_SEND: u32 = 3;
4537pub const CX_SIGNAL: u32 = 4;
4538pub const CX_TRANSLATE: u32 = 5;
4539pub const CX_BROKER: u32 = 6;
4540pub const CX_DEBUG: u32 = 7;
4541pub const CX_CUSTOM: u32 = 8;
4542pub const CX_ZERO: u32 = 9;
4543pub const CXM_IEVENT: u32 = 32;
4544pub const CXM_COMMAND: u32 = 64;
4545pub const CXCMD_DISABLE: u32 = 15;
4546pub const CXCMD_ENABLE: u32 = 17;
4547pub const CXCMD_APPEAR: u32 = 19;
4548pub const CXCMD_DISAPPEAR: u32 = 21;
4549pub const CXCMD_KILL: u32 = 23;
4550pub const CXCMD_LIST_CHG: u32 = 27;
4551pub const CXCMD_UNIQUE: u32 = 25;
4552pub const IX_VERSION: u32 = 2;
4553pub const IXSYM_SHIFT: u32 = 1;
4554pub const IXSYM_CAPS: u32 = 2;
4555pub const IXSYM_ALT: u32 = 4;
4556pub const IXSYM_SHIFTMASK: u32 = 3;
4557pub const IXSYM_CAPSMASK: u32 = 7;
4558pub const IXSYM_ALTMASK: u32 = 48;
4559pub const IX_NORMALQUALS: u32 = 32767;
4560pub const CBERR_OK: u32 = 0;
4561pub const CBERR_SYSERR: u32 = 1;
4562pub const CBERR_DUP: u32 = 2;
4563pub const CBERR_VERSION: u32 = 3;
4564pub const COERR_ISNULL: u32 = 1;
4565pub const COERR_NULLATTACH: u32 = 2;
4566pub const COERR_BADFILTER: u32 = 4;
4567pub const COERR_BADTYPE: u32 = 8;
4568pub const E_SLOTSIZE: u32 = 65536;
4569pub const E_SLOTMASK: u32 = 65535;
4570pub const E_SLOTSHIFT: u32 = 16;
4571pub const E_EXPANSIONBASE: u32 = 15204352;
4572pub const EZ3_EXPANSIONBASE: u32 = 4278190080;
4573pub const E_EXPANSIONSIZE: u32 = 524288;
4574pub const E_EXPANSIONSLOTS: u32 = 8;
4575pub const E_MEMORYBASE: u32 = 2097152;
4576pub const E_MEMORYSIZE: u32 = 8388608;
4577pub const E_MEMORYSLOTS: u32 = 128;
4578pub const EZ3_CONFIGAREA: u32 = 1073741824;
4579pub const EZ3_CONFIGAREAEND: u32 = 2147483647;
4580pub const EZ3_SIZEGRANULARITY: u32 = 524288;
4581pub const ERT_TYPEMASK: u32 = 192;
4582pub const ERT_TYPEBIT: u32 = 6;
4583pub const ERT_TYPESIZE: u32 = 2;
4584pub const ERT_NEWBOARD: u32 = 192;
4585pub const ERT_ZORROII: u32 = 192;
4586pub const ERT_ZORROIII: u32 = 128;
4587pub const ERTB_MEMLIST: u32 = 5;
4588pub const ERTB_DIAGVALID: u32 = 4;
4589pub const ERTB_CHAINEDCONFIG: u32 = 3;
4590pub const ERTF_MEMLIST: u32 = 32;
4591pub const ERTF_DIAGVALID: u32 = 16;
4592pub const ERTF_CHAINEDCONFIG: u32 = 8;
4593pub const ERT_MEMMASK: u32 = 7;
4594pub const ERT_MEMBIT: u32 = 0;
4595pub const ERT_MEMSIZE: u32 = 3;
4596pub const ERFF_MEMSPACE: u32 = 128;
4597pub const ERFB_MEMSPACE: u32 = 7;
4598pub const ERFF_NOSHUTUP: u32 = 64;
4599pub const ERFB_NOSHUTUP: u32 = 6;
4600pub const ERFF_EXTENDED: u32 = 32;
4601pub const ERFB_EXTENDED: u32 = 5;
4602pub const ERFF_ZORRO_III: u32 = 16;
4603pub const ERFB_ZORRO_III: u32 = 4;
4604pub const ERT_Z3_SSMASK: u32 = 15;
4605pub const ERT_Z3_SSBIT: u32 = 0;
4606pub const ERT_Z3_SSSIZE: u32 = 4;
4607pub const ECIB_INTENA: u32 = 1;
4608pub const ECIB_RESET: u32 = 3;
4609pub const ECIB_INT2PEND: u32 = 4;
4610pub const ECIB_INT6PEND: u32 = 5;
4611pub const ECIB_INT7PEND: u32 = 6;
4612pub const ECIB_INTERRUPTING: u32 = 7;
4613pub const ECIF_INTENA: u32 = 2;
4614pub const ECIF_RESET: u32 = 8;
4615pub const ECIF_INT2PEND: u32 = 16;
4616pub const ECIF_INT6PEND: u32 = 32;
4617pub const ECIF_INT7PEND: u32 = 64;
4618pub const ECIF_INTERRUPTING: u32 = 128;
4619pub const DAC_BUSWIDTH: u32 = 192;
4620pub const DAC_NIBBLEWIDE: u32 = 0;
4621pub const DAC_BYTEWIDE: u32 = 64;
4622pub const DAC_WORDWIDE: u32 = 128;
4623pub const DAC_BOOTTIME: u32 = 48;
4624pub const DAC_NEVER: u32 = 0;
4625pub const DAC_CONFIGTIME: u32 = 16;
4626pub const DAC_BINDTIME: u32 = 32;
4627pub const CDB_SHUTUP: u32 = 0;
4628pub const CDB_CONFIGME: u32 = 1;
4629pub const CDB_BADMEMORY: u32 = 2;
4630pub const CDB_PROCESSED: u32 = 3;
4631pub const CDF_SHUTUP: u32 = 1;
4632pub const CDF_CONFIGME: u32 = 2;
4633pub const CDF_BADMEMORY: u32 = 4;
4634pub const CDF_PROCESSED: u32 = 8;
4635pub const EXPANSIONNAME: &[u8; 18] = b"expansion.library\0";
4636pub const ADNB_STARTPROC: u32 = 0;
4637pub const ADNF_STARTPROC: u32 = 1;
4638pub const EE_OK: u32 = 0;
4639pub const EE_LASTBOARD: u32 = 40;
4640pub const EE_NOEXPANSION: u32 = 41;
4641pub const EE_NOMEMORY: u32 = 42;
4642pub const EE_NOBOARD: u32 = 43;
4643pub const EE_BADMEM: u32 = 44;
4644pub const EBB_CLOGGED: u32 = 0;
4645pub const EBF_CLOGGED: u32 = 1;
4646pub const EBB_SHORTMEM: u32 = 1;
4647pub const EBF_SHORTMEM: u32 = 2;
4648pub const EBB_BADMEM: u32 = 2;
4649pub const EBF_BADMEM: u32 = 4;
4650pub const EBB_DOSFLAG: u32 = 3;
4651pub const EBF_DOSFLAG: u32 = 8;
4652pub const EBB_KICKBACK33: u32 = 4;
4653pub const EBF_KICKBACK33: u32 = 16;
4654pub const EBB_KICKBACK36: u32 = 5;
4655pub const EBF_KICKBACK36: u32 = 32;
4656pub const EBB_SILENTSTART: u32 = 6;
4657pub const EBF_SILENTSTART: u32 = 64;
4658pub const EBB_START_CC0: u32 = 7;
4659pub const EBF_START_CC0: u32 = 128;
4660pub const GENERIC_KIND: u32 = 0;
4661pub const BUTTON_KIND: u32 = 1;
4662pub const CHECKBOX_KIND: u32 = 2;
4663pub const INTEGER_KIND: u32 = 3;
4664pub const LISTVIEW_KIND: u32 = 4;
4665pub const MX_KIND: u32 = 5;
4666pub const NUMBER_KIND: u32 = 6;
4667pub const CYCLE_KIND: u32 = 7;
4668pub const PALETTE_KIND: u32 = 8;
4669pub const SCROLLER_KIND: u32 = 9;
4670pub const SLIDER_KIND: u32 = 11;
4671pub const STRING_KIND: u32 = 12;
4672pub const TEXT_KIND: u32 = 13;
4673pub const NUM_KINDS: u32 = 14;
4674pub const ARROWIDCMP: u32 = 4194408;
4675pub const BUTTONIDCMP: u32 = 64;
4676pub const CHECKBOXIDCMP: u32 = 64;
4677pub const INTEGERIDCMP: u32 = 64;
4678pub const LISTVIEWIDCMP: u32 = 4194424;
4679pub const MXIDCMP: u32 = 32;
4680pub const NUMBERIDCMP: u32 = 0;
4681pub const CYCLEIDCMP: u32 = 64;
4682pub const PALETTEIDCMP: u32 = 64;
4683pub const SCROLLERIDCMP: u32 = 112;
4684pub const SLIDERIDCMP: u32 = 112;
4685pub const STRINGIDCMP: u32 = 64;
4686pub const TEXTIDCMP: u32 = 0;
4687pub const PLACETEXT_LEFT: u32 = 1;
4688pub const PLACETEXT_RIGHT: u32 = 2;
4689pub const PLACETEXT_ABOVE: u32 = 4;
4690pub const PLACETEXT_BELOW: u32 = 8;
4691pub const PLACETEXT_IN: u32 = 16;
4692pub const NG_HIGHLABEL: u32 = 32;
4693pub const NG_GRIDLAYOUT: u32 = 128;
4694pub const MENU_IMAGE: u32 = 128;
4695pub const NM_TITLE: u32 = 1;
4696pub const NM_ITEM: u32 = 2;
4697pub const NM_SUB: u32 = 3;
4698pub const IM_ITEM: u32 = 130;
4699pub const IM_SUB: u32 = 131;
4700pub const NM_END: u32 = 0;
4701pub const NM_IGNORE: u32 = 64;
4702pub const NM_MENUDISABLED: u32 = 1;
4703pub const NM_ITEMDISABLED: u32 = 16;
4704pub const NM_COMMANDSTRING: u32 = 4;
4705pub const NM_FLAGMASK: i32 = -199;
4706pub const NM_FLAGMASK_V39: i32 = -195;
4707pub const GTMENU_TRIMMED: u32 = 1;
4708pub const GTMENU_INVALID: u32 = 2;
4709pub const GTMENU_NOMEM: u32 = 3;
4710pub const MX_WIDTH: u32 = 17;
4711pub const MX_HEIGHT: u32 = 9;
4712pub const CHECKBOX_WIDTH: u32 = 26;
4713pub const CHECKBOX_HEIGHT: u32 = 11;
4714pub const GTJ_LEFT: u32 = 0;
4715pub const GTJ_RIGHT: u32 = 1;
4716pub const GTJ_CENTER: u32 = 2;
4717pub const BBFT_BUTTON: u32 = 1;
4718pub const BBFT_RIDGE: u32 = 2;
4719pub const BBFT_ICONDROPBOX: u32 = 3;
4720pub const BBFT_DISPLAY: u32 = 6;
4721pub const BBFT_CTXTFRAME: u32 = 7;
4722pub const INTERWIDTH: u32 = 8;
4723pub const INTERHEIGHT: u32 = 4;
4724pub const NWAY_KIND: u32 = 7;
4725pub const NWAYIDCMP: u32 = 64;
4726pub const GADTOOLBIT: u32 = 32768;
4727pub const GADTOOLMASK: i32 = -32769;
4728pub const LV_DRAW: u32 = 514;
4729pub const LVCB_OK: u32 = 0;
4730pub const LVCB_UNKNOWN: u32 = 1;
4731pub const LVR_NORMAL: u32 = 0;
4732pub const LVR_SELECTED: u32 = 1;
4733pub const LVR_NORMALDISABLED: u32 = 2;
4734pub const LVR_SELECTEDDISABLED: u32 = 8;
4735pub const DAY_1: u32 = 1;
4736pub const DAY_2: u32 = 2;
4737pub const DAY_3: u32 = 3;
4738pub const DAY_4: u32 = 4;
4739pub const DAY_5: u32 = 5;
4740pub const DAY_6: u32 = 6;
4741pub const DAY_7: u32 = 7;
4742pub const ABDAY_1: u32 = 8;
4743pub const ABDAY_2: u32 = 9;
4744pub const ABDAY_3: u32 = 10;
4745pub const ABDAY_4: u32 = 11;
4746pub const ABDAY_5: u32 = 12;
4747pub const ABDAY_6: u32 = 13;
4748pub const ABDAY_7: u32 = 14;
4749pub const MON_1: u32 = 15;
4750pub const MON_2: u32 = 16;
4751pub const MON_3: u32 = 17;
4752pub const MON_4: u32 = 18;
4753pub const MON_5: u32 = 19;
4754pub const MON_6: u32 = 20;
4755pub const MON_7: u32 = 21;
4756pub const MON_8: u32 = 22;
4757pub const MON_9: u32 = 23;
4758pub const MON_10: u32 = 24;
4759pub const MON_11: u32 = 25;
4760pub const MON_12: u32 = 26;
4761pub const ABMON_1: u32 = 27;
4762pub const ABMON_2: u32 = 28;
4763pub const ABMON_3: u32 = 29;
4764pub const ABMON_4: u32 = 30;
4765pub const ABMON_5: u32 = 31;
4766pub const ABMON_6: u32 = 32;
4767pub const ABMON_7: u32 = 33;
4768pub const ABMON_8: u32 = 34;
4769pub const ABMON_9: u32 = 35;
4770pub const ABMON_10: u32 = 36;
4771pub const ABMON_11: u32 = 37;
4772pub const ABMON_12: u32 = 38;
4773pub const YESSTR: u32 = 39;
4774pub const NOSTR: u32 = 40;
4775pub const AM_STR: u32 = 41;
4776pub const PM_STR: u32 = 42;
4777pub const SOFTHYPHEN: u32 = 43;
4778pub const HARDHYPHEN: u32 = 44;
4779pub const OPENQUOTE: u32 = 45;
4780pub const CLOSEQUOTE: u32 = 46;
4781pub const YESTERDAYSTR: u32 = 47;
4782pub const TODAYSTR: u32 = 48;
4783pub const TOMORROWSTR: u32 = 49;
4784pub const FUTURESTR: u32 = 50;
4785pub const ALTDAY_1: u32 = 52;
4786pub const ALTDAY_2: u32 = 53;
4787pub const ALTDAY_3: u32 = 54;
4788pub const ALTDAY_4: u32 = 55;
4789pub const ALTDAY_5: u32 = 56;
4790pub const ALTDAY_6: u32 = 57;
4791pub const ALTDAY_7: u32 = 58;
4792pub const ALTMON_1: u32 = 59;
4793pub const ALTMON_2: u32 = 60;
4794pub const ALTMON_3: u32 = 61;
4795pub const ALTMON_4: u32 = 62;
4796pub const ALTMON_5: u32 = 63;
4797pub const ALTMON_6: u32 = 64;
4798pub const ALTMON_7: u32 = 65;
4799pub const ALTMON_8: u32 = 66;
4800pub const ALTMON_9: u32 = 67;
4801pub const ALTMON_10: u32 = 68;
4802pub const ALTMON_11: u32 = 69;
4803pub const ALTMON_12: u32 = 70;
4804pub const MAXSTRMSG: u32 = 71;
4805pub const MS_ISO: u32 = 0;
4806pub const MS_AMERICAN: u32 = 1;
4807pub const MS_IMPERIAL: u32 = 2;
4808pub const MS_BRITISH: u32 = 3;
4809pub const CT_7SUN: u32 = 0;
4810pub const CT_7MON: u32 = 1;
4811pub const CT_7TUE: u32 = 2;
4812pub const CT_7WED: u32 = 3;
4813pub const CT_7THU: u32 = 4;
4814pub const CT_7FRI: u32 = 5;
4815pub const CT_7SAT: u32 = 6;
4816pub const SS_NOSPACE: u32 = 0;
4817pub const SS_SPACE: u32 = 1;
4818pub const SP_PARENS: u32 = 0;
4819pub const SP_PREC_ALL: u32 = 1;
4820pub const SP_SUCC_ALL: u32 = 2;
4821pub const SP_PREC_CURR: u32 = 3;
4822pub const SP_SUCC_CURR: u32 = 4;
4823pub const CSP_PRECEDES: u32 = 0;
4824pub const CSP_SUCCEEDS: u32 = 1;
4825pub const SC_ASCII: u32 = 0;
4826pub const SC_COLLATE1: u32 = 1;
4827pub const SC_COLLATE2: u32 = 2;
4828pub const LLKB_LSHIFT: u32 = 16;
4829pub const LLKB_RSHIFT: u32 = 17;
4830pub const LLKB_CAPSLOCK: u32 = 18;
4831pub const LLKB_CONTROL: u32 = 19;
4832pub const LLKB_LALT: u32 = 20;
4833pub const LLKB_RALT: u32 = 21;
4834pub const LLKB_LAMIGA: u32 = 22;
4835pub const LLKB_RAMIGA: u32 = 23;
4836pub const LLKF_LSHIFT: u32 = 65536;
4837pub const LLKF_RSHIFT: u32 = 131072;
4838pub const LLKF_CAPSLOCK: u32 = 262144;
4839pub const LLKF_CONTROL: u32 = 524288;
4840pub const LLKF_LALT: u32 = 1048576;
4841pub const LLKF_RALT: u32 = 2097152;
4842pub const LLKF_LAMIGA: u32 = 4194304;
4843pub const LLKF_RAMIGA: u32 = 8388608;
4844pub const SJA_TYPE_AUTOSENSE: u32 = 0;
4845pub const SJA_TYPE_GAMECTLR: u32 = 1;
4846pub const SJA_TYPE_MOUSE: u32 = 2;
4847pub const SJA_TYPE_JOYSTK: u32 = 3;
4848pub const JP_TYPE_NOTAVAIL: u32 = 0;
4849pub const JP_TYPE_GAMECTLR: u32 = 268435456;
4850pub const JP_TYPE_MOUSE: u32 = 536870912;
4851pub const JP_TYPE_JOYSTK: u32 = 805306368;
4852pub const JP_TYPE_UNKNOWN: u32 = 1073741824;
4853pub const JP_TYPE_MASK: u32 = 4026531840;
4854pub const JPB_BUTTON_BLUE: u32 = 23;
4855pub const JPB_BUTTON_RED: u32 = 22;
4856pub const JPB_BUTTON_YELLOW: u32 = 21;
4857pub const JPB_BUTTON_GREEN: u32 = 20;
4858pub const JPB_BUTTON_FORWARD: u32 = 19;
4859pub const JPB_BUTTON_REVERSE: u32 = 18;
4860pub const JPB_BUTTON_PLAY: u32 = 17;
4861pub const JPF_BUTTON_BLUE: u32 = 8388608;
4862pub const JPF_BUTTON_RED: u32 = 4194304;
4863pub const JPF_BUTTON_YELLOW: u32 = 2097152;
4864pub const JPF_BUTTON_GREEN: u32 = 1048576;
4865pub const JPF_BUTTON_FORWARD: u32 = 524288;
4866pub const JPF_BUTTON_REVERSE: u32 = 262144;
4867pub const JPF_BUTTON_PLAY: u32 = 131072;
4868pub const JP_BUTTON_MASK: u32 = 16646144;
4869pub const JPB_JOY_UP: u32 = 3;
4870pub const JPB_JOY_DOWN: u32 = 2;
4871pub const JPB_JOY_LEFT: u32 = 1;
4872pub const JPB_JOY_RIGHT: u32 = 0;
4873pub const JPF_JOY_UP: u32 = 8;
4874pub const JPF_JOY_DOWN: u32 = 4;
4875pub const JPF_JOY_LEFT: u32 = 2;
4876pub const JPF_JOY_RIGHT: u32 = 1;
4877pub const JP_DIRECTION_MASK: u32 = 15;
4878pub const JP_MHORZ_MASK: u32 = 255;
4879pub const JP_MVERT_MASK: u32 = 65280;
4880pub const JP_MOUSE_MASK: u32 = 65535;
4881pub const JPB_BTN1: u32 = 23;
4882pub const JPF_BTN1: u32 = 8388608;
4883pub const JPB_BTN2: u32 = 22;
4884pub const JPF_BTN2: u32 = 4194304;
4885pub const JPB_BTN3: u32 = 21;
4886pub const JPF_BTN3: u32 = 2097152;
4887pub const JPB_BTN4: u32 = 20;
4888pub const JPF_BTN4: u32 = 1048576;
4889pub const JPB_BTN5: u32 = 19;
4890pub const JPF_BTN5: u32 = 524288;
4891pub const JPB_BTN6: u32 = 18;
4892pub const JPF_BTN6: u32 = 262144;
4893pub const JPB_BTN7: u32 = 17;
4894pub const JPF_BTN7: u32 = 131072;
4895pub const JPB_UP: u32 = 3;
4896pub const JPF_UP: u32 = 8;
4897pub const JPB_DOWN: u32 = 2;
4898pub const JPF_DOWN: u32 = 4;
4899pub const JPB_LEFT: u32 = 1;
4900pub const JPF_LEFT: u32 = 2;
4901pub const JPB_RIGHT: u32 = 0;
4902pub const JPF_RIGHT: u32 = 1;
4903pub const CDReboot_On: u32 = 1;
4904pub const CDReboot_Off: u32 = 0;
4905pub const CDReboot_Default: u32 = 2;
4906pub const RAWKEY_PORT0_BUTTON_BLUE: u32 = 114;
4907pub const RAWKEY_PORT0_BUTTON_RED: u32 = 120;
4908pub const RAWKEY_PORT0_BUTTON_YELLOW: u32 = 119;
4909pub const RAWKEY_PORT0_BUTTON_GREEN: u32 = 118;
4910pub const RAWKEY_PORT0_BUTTON_FORWARD: u32 = 117;
4911pub const RAWKEY_PORT0_BUTTON_REVERSE: u32 = 116;
4912pub const RAWKEY_PORT0_BUTTON_PLAY: u32 = 115;
4913pub const RAWKEY_PORT0_JOY_UP: u32 = 121;
4914pub const RAWKEY_PORT0_JOY_DOWN: u32 = 122;
4915pub const RAWKEY_PORT0_JOY_LEFT: u32 = 124;
4916pub const RAWKEY_PORT0_JOY_RIGHT: u32 = 123;
4917pub const RAWKEY_PORT1_BUTTON_BLUE: u32 = 370;
4918pub const RAWKEY_PORT1_BUTTON_RED: u32 = 376;
4919pub const RAWKEY_PORT1_BUTTON_YELLOW: u32 = 375;
4920pub const RAWKEY_PORT1_BUTTON_GREEN: u32 = 374;
4921pub const RAWKEY_PORT1_BUTTON_FORWARD: u32 = 373;
4922pub const RAWKEY_PORT1_BUTTON_REVERSE: u32 = 372;
4923pub const RAWKEY_PORT1_BUTTON_PLAY: u32 = 371;
4924pub const RAWKEY_PORT1_JOY_UP: u32 = 377;
4925pub const RAWKEY_PORT1_JOY_DOWN: u32 = 378;
4926pub const RAWKEY_PORT1_JOY_LEFT: u32 = 380;
4927pub const RAWKEY_PORT1_JOY_RIGHT: u32 = 379;
4928pub const RAWKEY_PORT2_BUTTON_BLUE: u32 = 626;
4929pub const RAWKEY_PORT2_BUTTON_RED: u32 = 632;
4930pub const RAWKEY_PORT2_BUTTON_YELLOW: u32 = 631;
4931pub const RAWKEY_PORT2_BUTTON_GREEN: u32 = 630;
4932pub const RAWKEY_PORT2_BUTTON_FORWARD: u32 = 629;
4933pub const RAWKEY_PORT2_BUTTON_REVERSE: u32 = 628;
4934pub const RAWKEY_PORT2_BUTTON_PLAY: u32 = 627;
4935pub const RAWKEY_PORT2_JOY_UP: u32 = 633;
4936pub const RAWKEY_PORT2_JOY_DOWN: u32 = 634;
4937pub const RAWKEY_PORT2_JOY_LEFT: u32 = 636;
4938pub const RAWKEY_PORT2_JOY_RIGHT: u32 = 635;
4939pub const RAWKEY_PORT3_BUTTON_BLUE: u32 = 882;
4940pub const RAWKEY_PORT3_BUTTON_RED: u32 = 888;
4941pub const RAWKEY_PORT3_BUTTON_YELLOW: u32 = 887;
4942pub const RAWKEY_PORT3_BUTTON_GREEN: u32 = 886;
4943pub const RAWKEY_PORT3_BUTTON_FORWARD: u32 = 885;
4944pub const RAWKEY_PORT3_BUTTON_REVERSE: u32 = 884;
4945pub const RAWKEY_PORT3_BUTTON_PLAY: u32 = 883;
4946pub const RAWKEY_PORT3_JOY_UP: u32 = 889;
4947pub const RAWKEY_PORT3_JOY_DOWN: u32 = 890;
4948pub const RAWKEY_PORT3_JOY_LEFT: u32 = 892;
4949pub const RAWKEY_PORT3_JOY_RIGHT: u32 = 891;
4950pub const LANG_UNKNOWN: u32 = 0;
4951pub const LANG_AMERICAN: u32 = 1;
4952pub const LANG_ENGLISH: u32 = 2;
4953pub const LANG_GERMAN: u32 = 3;
4954pub const LANG_FRENCH: u32 = 4;
4955pub const LANG_SPANISH: u32 = 5;
4956pub const LANG_ITALIAN: u32 = 6;
4957pub const LANG_PORTUGUESE: u32 = 7;
4958pub const LANG_DANISH: u32 = 8;
4959pub const LANG_DUTCH: u32 = 9;
4960pub const LANG_NORWEGIAN: u32 = 10;
4961pub const LANG_FINNISH: u32 = 11;
4962pub const LANG_SWEDISH: u32 = 12;
4963pub const LANG_JAPANESE: u32 = 13;
4964pub const LANG_CHINESE: u32 = 14;
4965pub const LANG_ARABIC: u32 = 15;
4966pub const LANG_GREEK: u32 = 16;
4967pub const LANG_HEBREW: u32 = 17;
4968pub const LANG_KOREAN: u32 = 18;
4969pub const LIBRARIES_MATHFFP_H: u32 = 1;
4970pub const MATHIEEERESOURCEF_DBLBAS: u32 = 1;
4971pub const MATHIEEERESOURCEF_DBLTRANS: u32 = 2;
4972pub const MATHIEEERESOURCEF_SGLBAS: u32 = 4;
4973pub const MATHIEEERESOURCEF_SGLTRANS: u32 = 8;
4974pub const MATHIEEERESOURCEF_EXTBAS: u32 = 16;
4975pub const MATHIEEERESOURCEF_EXTTRANS: u32 = 32;
4976pub const NVEB_DELETE: u32 = 0;
4977pub const NVEB_APPNAME: u32 = 31;
4978pub const NVEF_DELETE: u32 = 1;
4979pub const NVEF_APPNAME: u32 = 2147483648;
4980pub const NVERR_BADNAME: u32 = 1;
4981pub const NVERR_WRITEPROT: u32 = 2;
4982pub const NVERR_FAIL: u32 = 3;
4983pub const NVERR_FATAL: u32 = 4;
4984pub const TICK_FREQ: u32 = 1200;
4985pub const CONDUCTF_EXTERNAL: u32 = 1;
4986pub const CONDUCTF_GOTTICK: u32 = 2;
4987pub const CONDUCTF_METROSET: u32 = 4;
4988pub const CONDUCTF_PRIVATE: u32 = 8;
4989pub const CONDUCTB_EXTERNAL: u32 = 0;
4990pub const CONDUCTB_GOTTICK: u32 = 1;
4991pub const CONDUCTB_METROSET: u32 = 2;
4992pub const CONDUCTB_PRIVATE: u32 = 3;
4993pub const CONDSTATE_STOPPED: u32 = 0;
4994pub const CONDSTATE_PAUSED: u32 = 1;
4995pub const CONDSTATE_LOCATE: u32 = 2;
4996pub const CONDSTATE_RUNNING: u32 = 3;
4997pub const CONDSTATE_METRIC: i32 = -1;
4998pub const CONDSTATE_SHUTTLE: i32 = -2;
4999pub const CONDSTATE_LOCATE_SET: i32 = -3;
5000pub const PLAYERF_READY: u32 = 1;
5001pub const PLAYERF_ALARMSET: u32 = 2;
5002pub const PLAYERF_QUIET: u32 = 4;
5003pub const PLAYERF_CONDUCTED: u32 = 8;
5004pub const PLAYERF_EXTSYNC: u32 = 16;
5005pub const PLAYERB_READY: u32 = 0;
5006pub const PLAYERB_ALARMSET: u32 = 1;
5007pub const PLAYERB_QUIET: u32 = 2;
5008pub const PLAYERB_CONDUCTED: u32 = 3;
5009pub const PLAYERB_EXTSYNC: u32 = 4;
5010pub const PM_TICK: u32 = 0;
5011pub const PM_STATE: u32 = 1;
5012pub const PM_POSITION: u32 = 2;
5013pub const PM_SHUTTLE: u32 = 3;
5014pub const RT_CONDUCTORS: u32 = 0;
5015pub const RTE_NOMEMORY: u32 = 801;
5016pub const RTE_NOCONDUCTOR: u32 = 802;
5017pub const RTE_NOTIMER: u32 = 803;
5018pub const RTE_PLAYING: u32 = 804;
5019pub const RealTime_TickErr_Min: i32 = -705;
5020pub const RealTime_TickErr_Max: u32 = 705;
5021pub const TR_NotUsed: i32 = -1;
5022pub const TR_NoMem: i32 = -2;
5023pub const TR_MakeBad: i32 = -4;
5024pub const FONTNAMESIZE: u32 = 128;
5025pub const FP_WBFONT: u32 = 0;
5026pub const FP_SYSFONT: u32 = 1;
5027pub const FP_SCREENFONT: u32 = 2;
5028pub const IC_CURRENTVERSION: u32 = 2;
5029pub const ICB_COERCE_COLORS: u32 = 0;
5030pub const ICB_COERCE_LACE: u32 = 1;
5031pub const ICB_STRGAD_FILTER: u32 = 2;
5032pub const ICB_MENUSNAP: u32 = 3;
5033pub const ICB_MODEPROMOTE: u32 = 4;
5034pub const ICB_CORRECT_RATIO: u32 = 5;
5035pub const ICB_OFFSCRNWIN: u32 = 15;
5036pub const ICB_MORESIZEGADGETS: u32 = 16;
5037pub const ICB_RATIO_LSB: u32 = 17;
5038pub const ICB_RATIO_MSB: u32 = 18;
5039pub const ICB_VERSIONED: u32 = 31;
5040pub const ICF_COERCE_COLORS: u32 = 1;
5041pub const ICF_COERCE_LACE: u32 = 2;
5042pub const ICF_STRGAD_FILTER: u32 = 4;
5043pub const ICF_MENUSNAP: u32 = 8;
5044pub const ICF_MODEPROMOTE: u32 = 16;
5045pub const ICF_CORRECT_RATIO: u32 = 32;
5046pub const ICF_OFFSCRNWIN: u32 = 32768;
5047pub const ICF_MORESIZEGADGETS: u32 = 65536;
5048pub const ICF_RATIO_MASK: u32 = 393216;
5049pub const ICF_RATIO_9_7: u32 = 0;
5050pub const ICF_RATIO_9_8: u32 = 131072;
5051pub const ICF_RATIO_1_1: u32 = 262144;
5052pub const ICF_RATIO_8_9: u32 = 393216;
5053pub const ICF_VERSIONED: u32 = 2147483648;
5054pub const ICF_HF_HOVERGADGETS: u32 = 1;
5055pub const ICF_HF_REFLECTHOVER: u32 = 2;
5056pub const OSCAN_MAGIC: u32 = 4275878537;
5057pub const WBP_NORMAL: u32 = 0;
5058pub const WBP_BUSY: u32 = 1;
5059pub const PA_HORIZONTAL: u32 = 0;
5060pub const PA_VERTICAL: u32 = 1;
5061pub const PS_BW: u32 = 0;
5062pub const PS_GREYSCALE: u32 = 1;
5063pub const PS_COLOR: u32 = 2;
5064pub const PS_GREY_SCALE2: u32 = 3;
5065pub const PI_POSITIVE: u32 = 0;
5066pub const PI_NEGATIVE: u32 = 1;
5067pub const PCCB_RED: u32 = 1;
5068pub const PCCB_GREEN: u32 = 2;
5069pub const PCCB_BLUE: u32 = 3;
5070pub const PCCF_RED: u32 = 1;
5071pub const PCCF_GREEN: u32 = 2;
5072pub const PCCF_BLUE: u32 = 4;
5073pub const PD_IGNORE: u32 = 0;
5074pub const PD_BOUNDED: u32 = 1;
5075pub const PD_ABSOLUTE: u32 = 2;
5076pub const PD_PIXEL: u32 = 3;
5077pub const PD_MULTIPLY: u32 = 4;
5078pub const PD_ORDERED: u32 = 0;
5079pub const PD_HALFTONE: u32 = 1;
5080pub const PD_FLOYD: u32 = 2;
5081pub const PGFB_CENTER_IMAGE: u32 = 0;
5082pub const PGFB_INTEGER_SCALING: u32 = 1;
5083pub const PGFB_ANTI_ALIAS: u32 = 2;
5084pub const PGFF_CENTER_IMAGE: u32 = 1;
5085pub const PGFF_INTEGER_SCALING: u32 = 2;
5086pub const PGFF_ANTI_ALIAS: u32 = 4;
5087pub const DM_POSTSCRIPT: u32 = 0;
5088pub const DM_PASSTHROUGH: u32 = 1;
5089pub const PF_USLETTER: u32 = 0;
5090pub const PF_USLEGAL: u32 = 1;
5091pub const PF_A4: u32 = 2;
5092pub const PF_CUSTOM: u32 = 3;
5093pub const FONT_COURIER: u32 = 0;
5094pub const FONT_TIMES: u32 = 1;
5095pub const FONT_HELVETICA: u32 = 2;
5096pub const FONT_HELV_NARROW: u32 = 3;
5097pub const FONT_AVANTGARDE: u32 = 4;
5098pub const FONT_BOOKMAN: u32 = 5;
5099pub const FONT_NEWCENT: u32 = 6;
5100pub const FONT_PALATINO: u32 = 7;
5101pub const FONT_ZAPFCHANCERY: u32 = 8;
5102pub const PITCH_NORMAL: u32 = 0;
5103pub const PITCH_COMPRESSED: u32 = 1;
5104pub const PITCH_EXPANDED: u32 = 2;
5105pub const ORIENT_PORTRAIT: u32 = 0;
5106pub const ORIENT_LANDSCAPE: u32 = 1;
5107pub const TAB_4: u32 = 0;
5108pub const TAB_8: u32 = 1;
5109pub const TAB_QUART: u32 = 2;
5110pub const TAB_HALF: u32 = 3;
5111pub const TAB_INCH: u32 = 4;
5112pub const IM_POSITIVE: u32 = 0;
5113pub const IM_NEGATIVE: u32 = 1;
5114pub const SHAD_BW: u32 = 0;
5115pub const SHAD_GREYSCALE: u32 = 1;
5116pub const SHAD_COLOR: u32 = 2;
5117pub const DITH_DEFAULT: u32 = 0;
5118pub const DITH_DOTTY: u32 = 1;
5119pub const DITH_VERT: u32 = 2;
5120pub const DITH_HORIZ: u32 = 3;
5121pub const DITH_DIAG: u32 = 4;
5122pub const ASP_HORIZ: u32 = 0;
5123pub const ASP_VERT: u32 = 1;
5124pub const ST_ASPECT_ASIS: u32 = 0;
5125pub const ST_ASPECT_WIDE: u32 = 1;
5126pub const ST_ASPECT_TALL: u32 = 2;
5127pub const ST_ASPECT_BOTH: u32 = 3;
5128pub const ST_FITS_WIDE: u32 = 4;
5129pub const ST_FITS_TALL: u32 = 5;
5130pub const ST_FITS_BOTH: u32 = 6;
5131pub const CENT_NONE: u32 = 0;
5132pub const CENT_HORIZ: u32 = 1;
5133pub const CENT_VERT: u32 = 2;
5134pub const CENT_BOTH: u32 = 3;
5135pub const DRIVERNAMESIZE: u32 = 30;
5136pub const DEVICENAMESIZE: u32 = 32;
5137pub const UNITNAMESIZE: u32 = 32;
5138pub const PP_PARALLEL: u32 = 0;
5139pub const PP_SERIAL: u32 = 1;
5140pub const PT_FANFOLD: u32 = 0;
5141pub const PT_SINGLE: u32 = 1;
5142pub const PS_US_LETTER: u32 = 0;
5143pub const PS_US_LEGAL: u32 = 1;
5144pub const PS_N_TRACTOR: u32 = 2;
5145pub const PS_W_TRACTOR: u32 = 3;
5146pub const PS_CUSTOM: u32 = 4;
5147pub const PS_EURO_A0: u32 = 5;
5148pub const PS_EURO_A1: u32 = 6;
5149pub const PS_EURO_A2: u32 = 7;
5150pub const PS_EURO_A3: u32 = 8;
5151pub const PS_EURO_A4: u32 = 9;
5152pub const PS_EURO_A5: u32 = 10;
5153pub const PS_EURO_A6: u32 = 11;
5154pub const PS_EURO_A7: u32 = 12;
5155pub const PS_EURO_A8: u32 = 13;
5156pub const PP_PICA: u32 = 0;
5157pub const PP_ELITE: u32 = 1;
5158pub const PP_FINE: u32 = 2;
5159pub const PS_SIX_LPI: u32 = 0;
5160pub const PS_EIGHT_LPI: u32 = 1;
5161pub const PQ_DRAFT: u32 = 0;
5162pub const PQ_LETTER: u32 = 1;
5163pub const SMB_AUTOSCROLL: u32 = 1;
5164pub const SMF_AUTOSCROLL: u32 = 1;
5165pub const PARITY_NONE: u32 = 0;
5166pub const PARITY_EVEN: u32 = 1;
5167pub const PARITY_ODD: u32 = 2;
5168pub const PARITY_MARK: u32 = 3;
5169pub const PARITY_SPACE: u32 = 4;
5170pub const HSHAKE_XON: u32 = 0;
5171pub const HSHAKE_RTS: u32 = 1;
5172pub const HSHAKE_NONE: u32 = 2;
5173pub const SPTYPE_BEEP: u32 = 0;
5174pub const SPTYPE_SAMPLE: u32 = 1;
5175pub const WBP_ROOT: u32 = 0;
5176pub const WBP_DRAWER: u32 = 1;
5177pub const WBP_SCREEN: u32 = 2;
5178pub const WBPF_PATTERN: u32 = 1;
5179pub const WBPF_NOREMAP: u32 = 16;
5180pub const WBPF_DITHER_MASK: u32 = 768;
5181pub const WBPF_DITHER_DEF: u32 = 0;
5182pub const WBPF_DITHER_BAD: u32 = 256;
5183pub const WBPF_DITHER_GOOD: u32 = 512;
5184pub const WBPF_DITHER_BEST: u32 = 768;
5185pub const WBPF_PLACEMENT_MASK: u32 = 12288;
5186pub const WBPF_PLACEMENT_TILE: u32 = 0;
5187pub const WBPF_PLACEMENT_CENTER: u32 = 4096;
5188pub const WBPF_PLACEMENT_SCALE: u32 = 8192;
5189pub const WBPF_PLACEMENT_SCALEGOOD: u32 = 12288;
5190pub const WBPF_ALIGNMENT_MASK: u32 = 49152;
5191pub const WBPF_ALIGNMENT_MIDDLE: u32 = 0;
5192pub const WBPF_ALIGNMENT_LEFTTOP: u32 = 16384;
5193pub const WBPF_ALIGNMENT_RIGHTBOTTOM: u32 = 32768;
5194pub const WBPF_PRECISION_MASK: u32 = 3072;
5195pub const WBPF_PRECISION_DEF: u32 = 0;
5196pub const WBPF_PRECISION_ICON: u32 = 1024;
5197pub const WBPF_PRECISION_IMAGE: u32 = 2048;
5198pub const WBPF_PRECISION_EXACT: u32 = 3072;
5199pub const MAXDEPTH: u32 = 3;
5200pub const DEFPATDEPTH: u32 = 2;
5201pub const PAT_WIDTH: u32 = 16;
5202pub const PAT_HEIGHT: u32 = 16;
5203pub const GM_CLIPRECT: u32 = 5570561;
5204pub const GMC_VISIBLE: u32 = 2;
5205pub const GMC_PARTIAL: u32 = 1;
5206pub const GMC_INVISIBLE: u32 = 0;
5207pub const GetPath: u32 = 10;
5208pub const GetFile: u32 = 9;
5209pub const GetScreen: u32 = 11;
5210pub const GetTime: u32 = 12;
5211pub const CheckMark: u32 = 7;
5212pub const PopUp: u32 = 6;
5213pub const DropDown: u32 = 5;
5214pub const ThinFrame: u32 = 0;
5215pub const ButtonFrame: u32 = 1;
5216pub const StandardFrame: u32 = 11;
5217pub const RidgeFrame: u32 = 3;
5218pub const StringFrame: u32 = 3;
5219pub const GroupFrame: u32 = 2;
5220pub const DropBoxFrame: u32 = 5;
5221pub const HBarFrame: u32 = 6;
5222pub const VBarFrame: u32 = 7;
5223pub const RadioFrame: u32 = 10;
5224pub const MxFrame: u32 = 10;
5225pub const RAPREFSSEMAPHORE: &[u8; 15] = b"REACTION-PREFS\0";
5226pub const BVT_GT: u32 = 0;
5227pub const BVT_THIN: u32 = 1;
5228pub const BVT_THICK: u32 = 2;
5229pub const BVT_XEN: u32 = 3;
5230pub const BVT_XENTHIN: u32 = 4;
5231pub const GLT_GT: u32 = 0;
5232pub const GLT_FLAT: u32 = 1;
5233pub const GLT_3D: u32 = 2;
5234pub const RESOURCES_BATTCLOCK_H: u32 = 1;
5235pub const BATTCLOCKNAME: &[u8; 19] = b"battclock.resource\0";
5236pub const RESOURCES_BATTMEM_H: u32 = 1;
5237pub const BATTMEMNAME: &[u8; 17] = b"battmem.resource\0";
5238pub const RESOURCES_BATTMEMBITSAMIGA_H: u32 = 1;
5239pub const BATTMEM_AMIGA_AMNESIA_ADDR: u32 = 0;
5240pub const BATTMEM_AMIGA_AMNESIA_LEN: u32 = 1;
5241pub const BATTMEM_SCSI_TIMEOUT_ADDR: u32 = 1;
5242pub const BATTMEM_SCSI_TIMEOUT_LEN: u32 = 1;
5243pub const BATTMEM_SCSI_LUNS_ADDR: u32 = 2;
5244pub const BATTMEM_SCSI_LUNS_LEN: u32 = 1;
5245pub const RESOURCES_BATTMEMBITSAMIX_H: u32 = 1;
5246pub const RESOURCES_BATTMEMBITSSHARED_H: u32 = 1;
5247pub const BATTMEM_SHARED_AMNESIA_ADDR: u32 = 64;
5248pub const BATTMEM_SHARED_AMNESIA_LEN: u32 = 1;
5249pub const BATTMEM_SCSI_HOST_ID_ADDR: u32 = 65;
5250pub const BATTMEM_SCSI_HOST_ID_LEN: u32 = 3;
5251pub const BATTMEM_SCSI_SYNC_XFER_ADDR: u32 = 68;
5252pub const BATTMEM_SCSI_SYNC_XFER_LEN: u32 = 1;
5253pub const BATTMEM_SCSI_FAST_SYNC_ADDR: u32 = 69;
5254pub const BATTMEM_SCSI_FAST_SYNC_LEN: u32 = 1;
5255pub const BATTMEM_SCSI_TAG_QUEUES_ADDR: u32 = 70;
5256pub const BATTMEM_SCSI_TAG_QUEUES_LEN: u32 = 1;
5257pub const BATTMEM_IDE_EXTRA_WAIT_ADDR: u32 = 71;
5258pub const BATTMEM_IDE_EXTRA_WAIT_LEN: u32 = 1;
5259pub const RESOURCES_CARD_H: u32 = 1;
5260pub const CARDRESNAME: &[u8; 14] = b"card.resource\0";
5261pub const CARDB_RESETREMOVE: u32 = 0;
5262pub const CARDF_RESETREMOVE: u32 = 1;
5263pub const CARDB_IFAVAILABLE: u32 = 1;
5264pub const CARDF_IFAVAILABLE: u32 = 2;
5265pub const CARDB_DELAYOWNERSHIP: u32 = 2;
5266pub const CARDF_DELAYOWNERSHIP: u32 = 4;
5267pub const CARDB_POSTSTATUS: u32 = 3;
5268pub const CARDF_POSTSTATUS: u32 = 8;
5269pub const CARDB_REMOVEHANDLE: u32 = 0;
5270pub const CARDF_REMOVEHANDLE: u32 = 1;
5271pub const CARD_STATUSB_CCDET: u32 = 6;
5272pub const CARD_STATUSF_CCDET: u32 = 64;
5273pub const CARD_STATUSB_BVD1: u32 = 5;
5274pub const CARD_STATUSF_BVD1: u32 = 32;
5275pub const CARD_STATUSB_SC: u32 = 5;
5276pub const CARD_STATUSF_SC: u32 = 32;
5277pub const CARD_STATUSB_BVD2: u32 = 4;
5278pub const CARD_STATUSF_BVD2: u32 = 16;
5279pub const CARD_STATUSB_DA: u32 = 4;
5280pub const CARD_STATUSF_DA: u32 = 16;
5281pub const CARD_STATUSB_WR: u32 = 3;
5282pub const CARD_STATUSF_WR: u32 = 8;
5283pub const CARD_STATUSB_BSY: u32 = 2;
5284pub const CARD_STATUSF_BSY: u32 = 4;
5285pub const CARD_STATUSB_IRQ: u32 = 2;
5286pub const CARD_STATUSF_IRQ: u32 = 4;
5287pub const CARD_VOLTAGE_0V: u32 = 0;
5288pub const CARD_VOLTAGE_5V: u32 = 1;
5289pub const CARD_VOLTAGE_12V: u32 = 2;
5290pub const CARD_ENABLEB_DIGAUDIO: u32 = 1;
5291pub const CARD_ENABLEF_DIGAUDIO: u32 = 2;
5292pub const CARD_DISABLEB_WP: u32 = 3;
5293pub const CARD_DISABLEF_WP: u32 = 8;
5294pub const CARD_INTB_SETCLR: u32 = 7;
5295pub const CARD_INTF_SETCLR: u32 = 128;
5296pub const CARD_INTB_BVD1: u32 = 5;
5297pub const CARD_INTF_BVD1: u32 = 32;
5298pub const CARD_INTB_SC: u32 = 5;
5299pub const CARD_INTF_SC: u32 = 32;
5300pub const CARD_INTB_BVD2: u32 = 4;
5301pub const CARD_INTF_BVD2: u32 = 16;
5302pub const CARD_INTB_DA: u32 = 4;
5303pub const CARD_INTF_DA: u32 = 16;
5304pub const CARD_INTB_BSY: u32 = 2;
5305pub const CARD_INTF_BSY: u32 = 4;
5306pub const CARD_INTB_IRQ: u32 = 2;
5307pub const CARD_INTF_IRQ: u32 = 4;
5308pub const CARD_INTERFACE_AMIGA_0: u32 = 0;
5309pub const CISTPL_AMIGAXIP: u32 = 145;
5310pub const XIPFLAGSB_AUTORUN: u32 = 0;
5311pub const XIPFLAGSF_AUTORUN: u32 = 1;
5312pub const DEVICES_CIA_H: u32 = 1;
5313pub const CIAANAME: &[u8; 14] = b"ciaa.resource\0";
5314pub const CIABNAME: &[u8; 14] = b"ciab.resource\0";
5315pub const DRB_ALLOC0: u32 = 0;
5316pub const DRB_ALLOC1: u32 = 1;
5317pub const DRB_ALLOC2: u32 = 2;
5318pub const DRB_ALLOC3: u32 = 3;
5319pub const DRB_DETECT0: u32 = 4;
5320pub const DRB_ACTIVE: u32 = 7;
5321pub const DRF_ALLOC0: u32 = 1;
5322pub const DRF_ALLOC1: u32 = 2;
5323pub const DRF_ALLOC2: u32 = 4;
5324pub const DRF_ALLOC3: u32 = 8;
5325pub const DRF_DETECT0: u32 = 16;
5326pub const DRF_ACTIVE: u32 = 128;
5327pub const DSKDMAOFF: u32 = 16384;
5328pub const DISKNAME: &[u8; 14] = b"disk.resource\0";
5329pub const DR_ALLOCUNIT: i32 = -6;
5330pub const DR_FREEUNIT: i32 = -12;
5331pub const DR_GETUNIT: i32 = -18;
5332pub const DR_GIVEUNIT: i32 = -24;
5333pub const DR_GETUNITID: i32 = -30;
5334pub const DR_READUNITID: i32 = -36;
5335pub const DR_LASTCOMM: i32 = -36;
5336pub const DRT_AMIGA: u32 = 0;
5337pub const DRT_37422D2S: u32 = 1431655765;
5338pub const DRT_EMPTY: u32 = 4294967295;
5339pub const DRT_150RPM: u32 = 2863311530;
5340pub const FSRNAME: &[u8; 20] = b"FileSystem.resource\0";
5341pub const MR_SERIALPORT: u32 = 0;
5342pub const MR_SERIALBITS: u32 = 1;
5343pub const MR_PARALLELPORT: u32 = 2;
5344pub const MR_PARALLELBITS: u32 = 3;
5345pub const MR_ALLOCMISCRESOURCE: i32 = -6;
5346pub const MR_FREEMISCRESOURCE: i32 = -12;
5347pub const MISCNAME: &[u8; 14] = b"misc.resource\0";
5348pub const POTGONAME: &[u8; 15] = b"potgo.resource\0";
5349pub const RXBUFFSZ: u32 = 204;
5350pub const RXIO_EXIST: i32 = -1;
5351pub const RXIO_STRF: u32 = 0;
5352pub const RXIO_READ: u32 = 1;
5353pub const RXIO_WRITE: u32 = 2;
5354pub const RXIO_APPEND: u32 = 3;
5355pub const RXIO_BEGIN: i32 = -1;
5356pub const RXIO_CURR: u32 = 0;
5357pub const RXIO_END: u32 = 1;
5358pub const DT_DEV: u32 = 0;
5359pub const DT_DIR: u32 = 1;
5360pub const DT_VOL: u32 = 2;
5361pub const ACTION_STACK: u32 = 2002;
5362pub const ACTION_QUEUE: u32 = 2003;
5363pub const ANO_NameSpace: u32 = 4000;
5364pub const ANO_UserSpace: u32 = 4001;
5365pub const ANO_Priority: u32 = 4002;
5366pub const ANO_Flags: u32 = 4003;
5367pub const NSB_NODUPS: u32 = 0;
5368pub const NSB_CASE: u32 = 1;
5369pub const NSF_NODUPS: u32 = 1;
5370pub const NSF_CASE: u32 = 2;
5371pub const PSTB_SIGNED: u32 = 31;
5372pub const PSTB_UNPACK: u32 = 30;
5373pub const PSTB_PACK: u32 = 29;
5374pub const PSTB_EXISTS: u32 = 26;
5375pub const PSTF_SIGNED: u32 = 2147483648;
5376pub const PSTF_UNPACK: u32 = 1073741824;
5377pub const PSTF_PACK: u32 = 536870912;
5378pub const PSTF_EXISTS: u32 = 67108864;
5379pub const PKCTRL_PACKUNPACK: u32 = 0;
5380pub const PKCTRL_PACKONLY: u32 = 1073741824;
5381pub const PKCTRL_UNPACKONLY: u32 = 536870912;
5382pub const PKCTRL_BYTE: u32 = 2147483648;
5383pub const PKCTRL_WORD: u32 = 2281701376;
5384pub const PKCTRL_LONG: u32 = 2415919104;
5385pub const PKCTRL_UBYTE: u32 = 0;
5386pub const PKCTRL_UWORD: u32 = 134217728;
5387pub const PKCTRL_ULONG: u32 = 268435456;
5388pub const PKCTRL_BIT: u32 = 402653184;
5389pub const PKCTRL_FLIPBIT: u32 = 2550136832;
5390pub const PACK_ENDTABLE: u32 = 0;
5391pub const UTILITYNAME: &[u8; 16] = b"utility.library\0";
5392pub const ICONNAME: &[u8; 13] = b"icon.library\0";
5393pub const ICON_ASPECT_RATIO_UNKNOWN: u32 = 0;
5394pub const WBDISK: u32 = 1;
5395pub const WBDRAWER: u32 = 2;
5396pub const WBTOOL: u32 = 3;
5397pub const WBPROJECT: u32 = 4;
5398pub const WBGARBAGE: u32 = 5;
5399pub const WBDEVICE: u32 = 6;
5400pub const WBKICK: u32 = 7;
5401pub const WBAPPICON: u32 = 8;
5402pub const DDVM_BYDEFAULT: u32 = 0;
5403pub const DDVM_BYICON: u32 = 1;
5404pub const DDVM_BYNAME: u32 = 2;
5405pub const DDVM_BYDATE: u32 = 3;
5406pub const DDVM_BYSIZE: u32 = 4;
5407pub const DDVM_BYTYPE: u32 = 5;
5408pub const DDFLAGS_SHOWMASK: u32 = 3;
5409pub const DDFLAGS_SHOWDEFAULT: u32 = 0;
5410pub const DDFLAGS_SHOWICONS: u32 = 1;
5411pub const DDFLAGS_SHOWALL: u32 = 2;
5412pub const DDFLAGS_SORTMASK: u32 = 768;
5413pub const DDFLAGS_SORTDEFAULT: u32 = 0;
5414pub const DDFLAGS_SORTASC: u32 = 256;
5415pub const DDFLAGS_SORTDESC: u32 = 512;
5416pub const WB_DISKMAGIC: u32 = 58128;
5417pub const WB_DISKVERSION: u32 = 1;
5418pub const WB_DISKREVISION: u32 = 1;
5419pub const WB_DISKREVISIONMASK: u32 = 255;
5420pub const GFLG_GADGBACKFILL: u32 = 1;
5421pub const GADGBACKFILL: u32 = 1;
5422pub const NO_ICON_POSITION: u32 = 2147483648;
5423pub const WORKBENCH_NAME: &[u8; 18] = b"workbench.library\0";
5424pub const AM_VERSION: u32 = 1;
5425pub const AMTYPE_APPWINDOW: u32 = 7;
5426pub const AMTYPE_APPICON: u32 = 8;
5427pub const AMTYPE_APPMENUITEM: u32 = 9;
5428pub const AMTYPE_APPWINDOWZONE: u32 = 10;
5429pub const AMCLASSICON_Open: u32 = 0;
5430pub const AMCLASSICON_Copy: u32 = 1;
5431pub const AMCLASSICON_Rename: u32 = 2;
5432pub const AMCLASSICON_Information: u32 = 3;
5433pub const AMCLASSICON_Snapshot: u32 = 4;
5434pub const AMCLASSICON_UnSnapshot: u32 = 5;
5435pub const AMCLASSICON_LeaveOut: u32 = 6;
5436pub const AMCLASSICON_PutAway: u32 = 7;
5437pub const AMCLASSICON_Delete: u32 = 8;
5438pub const AMCLASSICON_FormatDisk: u32 = 9;
5439pub const AMCLASSICON_EjectDisk: u32 = 13;
5440pub const AMCLASSICON_EmptyTrash: u32 = 10;
5441pub const AMCLASSICON_Selected: u32 = 11;
5442pub const AMCLASSICON_Unselected: u32 = 12;
5443pub const SCHMSTATE_TryCleanup: u32 = 0;
5444pub const SCHMSTATE_Cleanup: u32 = 1;
5445pub const SCHMSTATE_Setup: u32 = 2;
5446pub const WBF_DRAWERPOSMASK: u32 = 3;
5447pub const WBF_DRAWERPOSFREE: u32 = 0;
5448pub const WBF_DRAWERPOSHEAD: u32 = 1;
5449pub const WBF_DRAWERPOSTAIL: u32 = 2;
5450pub const WBF_BOUNDTEXTVIEW: u32 = 128;
5451pub const WBF_OLDDATESFIRST: u32 = 65536;
5452pub const WBO_NONE: u32 = 0;
5453pub const WBO_DRAWER: u32 = 1;
5454pub const WBO_ICON: u32 = 2;
5455pub const ADZMACTION_Enter: u32 = 0;
5456pub const ADZMACTION_Leave: u32 = 1;
5457pub const ISMACTION_Unselect: u32 = 0;
5458pub const ISMACTION_Select: u32 = 1;
5459pub const ISMACTION_Ignore: u32 = 2;
5460pub const ISMACTION_Stop: u32 = 3;
5461pub const CPACTION_Begin: u32 = 0;
5462pub const CPACTION_Copy: u32 = 1;
5463pub const CPACTION_End: u32 = 2;
5464pub const DLACTION_BeginDiscard: u32 = 0;
5465pub const DLACTION_BeginEmptyTrash: u32 = 1;
5466pub const DLACTION_DeleteContents: u32 = 3;
5467pub const DLACTION_DeleteObject: u32 = 4;
5468pub const DLACTION_End: u32 = 5;
5469pub const TIACTION_Rename: u32 = 0;
5470pub const TIACTION_RelabelVolume: u32 = 1;
5471pub const TIACTION_NewDrawer: u32 = 2;
5472pub const TIACTION_Execute: u32 = 3;
5473pub const UPDATEWB_ObjectRemoved: u32 = 0;
5474pub const UPDATEWB_ObjectAdded: u32 = 1;
5475pub type APTR = *mut ::core::ffi::c_void;
5476pub type CONST_APTR = *const ::core::ffi::c_void;
5477pub type LONG = i32;
5478pub type ULONG = u32;
5479pub type LONGBITS = u32;
5480pub type WORD = i16;
5481pub type UWORD = u16;
5482pub type WORDBITS = u16;
5483pub type BYTE = i8;
5484pub type UBYTE = u8;
5485pub type BYTEBITS = u8;
5486pub type RPTR = u16;
5487pub type SHORT = i16;
5488pub type USHORT = u16;
5489pub type COUNT = i16;
5490pub type UCOUNT = u16;
5491pub type CPTR = u32;
5492pub type STRPTR = *mut ::core::ffi::c_uchar;
5493pub type CONST_STRPTR = *const ::core::ffi::c_uchar;
5494pub type FLOAT = f32;
5495pub type DOUBLE = f64;
5496pub type TEXT = ::core::ffi::c_uchar;
5497pub type BOOL = i16;
5498#[repr(C, packed(2))]
5499#[derive(Debug, Copy, Clone)]
5500pub struct Node {
5501    pub ln_Succ: *mut Node,
5502    pub ln_Pred: *mut Node,
5503    pub ln_Type: UBYTE,
5504    pub ln_Pri: BYTE,
5505    pub ln_Name: *mut ::core::ffi::c_char,
5506}
5507#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5508const _: () = {
5509    ["Size of Node"][::core::mem::size_of::<Node>() - 14usize];
5510    ["Alignment of Node"][::core::mem::align_of::<Node>() - 2usize];
5511    ["Offset of field: Node::ln_Succ"][::core::mem::offset_of!(Node, ln_Succ) - 0usize];
5512    ["Offset of field: Node::ln_Pred"][::core::mem::offset_of!(Node, ln_Pred) - 4usize];
5513    ["Offset of field: Node::ln_Type"][::core::mem::offset_of!(Node, ln_Type) - 8usize];
5514    ["Offset of field: Node::ln_Pri"][::core::mem::offset_of!(Node, ln_Pri) - 9usize];
5515    ["Offset of field: Node::ln_Name"][::core::mem::offset_of!(Node, ln_Name) - 10usize];
5516};
5517#[repr(C, packed(2))]
5518#[derive(Debug, Copy, Clone)]
5519pub struct MinNode {
5520    pub mln_Succ: *mut MinNode,
5521    pub mln_Pred: *mut MinNode,
5522}
5523#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5524const _: () = {
5525    ["Size of MinNode"][::core::mem::size_of::<MinNode>() - 8usize];
5526    ["Alignment of MinNode"][::core::mem::align_of::<MinNode>() - 2usize];
5527    ["Offset of field: MinNode::mln_Succ"][::core::mem::offset_of!(MinNode, mln_Succ) - 0usize];
5528    ["Offset of field: MinNode::mln_Pred"][::core::mem::offset_of!(MinNode, mln_Pred) - 4usize];
5529};
5530#[repr(C, packed(2))]
5531#[derive(Debug, Copy, Clone)]
5532pub struct List {
5533    pub lh_Head: *mut Node,
5534    pub lh_Tail: *mut Node,
5535    pub lh_TailPred: *mut Node,
5536    pub lh_Type: UBYTE,
5537    pub l_pad: UBYTE,
5538}
5539#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5540const _: () = {
5541    ["Size of List"][::core::mem::size_of::<List>() - 14usize];
5542    ["Alignment of List"][::core::mem::align_of::<List>() - 2usize];
5543    ["Offset of field: List::lh_Head"][::core::mem::offset_of!(List, lh_Head) - 0usize];
5544    ["Offset of field: List::lh_Tail"][::core::mem::offset_of!(List, lh_Tail) - 4usize];
5545    ["Offset of field: List::lh_TailPred"][::core::mem::offset_of!(List, lh_TailPred) - 8usize];
5546    ["Offset of field: List::lh_Type"][::core::mem::offset_of!(List, lh_Type) - 12usize];
5547    ["Offset of field: List::l_pad"][::core::mem::offset_of!(List, l_pad) - 13usize];
5548};
5549#[repr(C, packed(2))]
5550#[derive(Debug, Copy, Clone)]
5551pub struct MinList {
5552    pub mlh_Head: *mut MinNode,
5553    pub mlh_Tail: *mut MinNode,
5554    pub mlh_TailPred: *mut MinNode,
5555}
5556#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5557const _: () = {
5558    ["Size of MinList"][::core::mem::size_of::<MinList>() - 12usize];
5559    ["Alignment of MinList"][::core::mem::align_of::<MinList>() - 2usize];
5560    ["Offset of field: MinList::mlh_Head"][::core::mem::offset_of!(MinList, mlh_Head) - 0usize];
5561    ["Offset of field: MinList::mlh_Tail"][::core::mem::offset_of!(MinList, mlh_Tail) - 4usize];
5562    ["Offset of field: MinList::mlh_TailPred"]
5563        [::core::mem::offset_of!(MinList, mlh_TailPred) - 8usize];
5564};
5565#[repr(C, packed(2))]
5566#[derive(Debug, Copy, Clone)]
5567pub struct Resident {
5568    pub rt_MatchWord: UWORD,
5569    pub rt_MatchTag: *mut Resident,
5570    pub rt_EndSkip: APTR,
5571    pub rt_Flags: UBYTE,
5572    pub rt_Version: UBYTE,
5573    pub rt_Type: UBYTE,
5574    pub rt_Pri: BYTE,
5575    pub rt_Name: *mut ::core::ffi::c_char,
5576    pub rt_IdString: *mut ::core::ffi::c_char,
5577    pub rt_Init: APTR,
5578}
5579#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5580const _: () = {
5581    ["Size of Resident"][::core::mem::size_of::<Resident>() - 26usize];
5582    ["Alignment of Resident"][::core::mem::align_of::<Resident>() - 2usize];
5583    ["Offset of field: Resident::rt_MatchWord"]
5584        [::core::mem::offset_of!(Resident, rt_MatchWord) - 0usize];
5585    ["Offset of field: Resident::rt_MatchTag"]
5586        [::core::mem::offset_of!(Resident, rt_MatchTag) - 2usize];
5587    ["Offset of field: Resident::rt_EndSkip"]
5588        [::core::mem::offset_of!(Resident, rt_EndSkip) - 6usize];
5589    ["Offset of field: Resident::rt_Flags"][::core::mem::offset_of!(Resident, rt_Flags) - 10usize];
5590    ["Offset of field: Resident::rt_Version"]
5591        [::core::mem::offset_of!(Resident, rt_Version) - 11usize];
5592    ["Offset of field: Resident::rt_Type"][::core::mem::offset_of!(Resident, rt_Type) - 12usize];
5593    ["Offset of field: Resident::rt_Pri"][::core::mem::offset_of!(Resident, rt_Pri) - 13usize];
5594    ["Offset of field: Resident::rt_Name"][::core::mem::offset_of!(Resident, rt_Name) - 14usize];
5595    ["Offset of field: Resident::rt_IdString"]
5596        [::core::mem::offset_of!(Resident, rt_IdString) - 18usize];
5597    ["Offset of field: Resident::rt_Init"][::core::mem::offset_of!(Resident, rt_Init) - 22usize];
5598};
5599#[repr(C, packed(2))]
5600#[derive(Debug, Copy, Clone)]
5601pub struct MemChunk {
5602    pub mc_Next: *mut MemChunk,
5603    pub mc_Bytes: ULONG,
5604}
5605#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5606const _: () = {
5607    ["Size of MemChunk"][::core::mem::size_of::<MemChunk>() - 8usize];
5608    ["Alignment of MemChunk"][::core::mem::align_of::<MemChunk>() - 2usize];
5609    ["Offset of field: MemChunk::mc_Next"][::core::mem::offset_of!(MemChunk, mc_Next) - 0usize];
5610    ["Offset of field: MemChunk::mc_Bytes"][::core::mem::offset_of!(MemChunk, mc_Bytes) - 4usize];
5611};
5612#[repr(C, packed(2))]
5613#[derive(Debug, Copy, Clone)]
5614pub struct MemHeader {
5615    pub mh_Node: Node,
5616    pub mh_Attributes: UWORD,
5617    pub mh_First: *mut MemChunk,
5618    pub mh_Lower: APTR,
5619    pub mh_Upper: APTR,
5620    pub mh_Free: ULONG,
5621}
5622#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5623const _: () = {
5624    ["Size of MemHeader"][::core::mem::size_of::<MemHeader>() - 32usize];
5625    ["Alignment of MemHeader"][::core::mem::align_of::<MemHeader>() - 2usize];
5626    ["Offset of field: MemHeader::mh_Node"][::core::mem::offset_of!(MemHeader, mh_Node) - 0usize];
5627    ["Offset of field: MemHeader::mh_Attributes"]
5628        [::core::mem::offset_of!(MemHeader, mh_Attributes) - 14usize];
5629    ["Offset of field: MemHeader::mh_First"]
5630        [::core::mem::offset_of!(MemHeader, mh_First) - 16usize];
5631    ["Offset of field: MemHeader::mh_Lower"]
5632        [::core::mem::offset_of!(MemHeader, mh_Lower) - 20usize];
5633    ["Offset of field: MemHeader::mh_Upper"]
5634        [::core::mem::offset_of!(MemHeader, mh_Upper) - 24usize];
5635    ["Offset of field: MemHeader::mh_Free"][::core::mem::offset_of!(MemHeader, mh_Free) - 28usize];
5636};
5637#[repr(C, packed(2))]
5638#[derive(Copy, Clone)]
5639pub struct MemEntry {
5640    pub me_Un: MemEntry__bindgen_ty_1,
5641    pub me_Length: ULONG,
5642}
5643#[repr(C, packed(2))]
5644#[derive(Copy, Clone)]
5645pub union MemEntry__bindgen_ty_1 {
5646    pub meu_Reqs: ULONG,
5647    pub meu_Addr: APTR,
5648}
5649#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5650const _: () = {
5651    ["Size of MemEntry__bindgen_ty_1"][::core::mem::size_of::<MemEntry__bindgen_ty_1>() - 4usize];
5652    ["Alignment of MemEntry__bindgen_ty_1"]
5653        [::core::mem::align_of::<MemEntry__bindgen_ty_1>() - 2usize];
5654    ["Offset of field: MemEntry__bindgen_ty_1::meu_Reqs"]
5655        [::core::mem::offset_of!(MemEntry__bindgen_ty_1, meu_Reqs) - 0usize];
5656    ["Offset of field: MemEntry__bindgen_ty_1::meu_Addr"]
5657        [::core::mem::offset_of!(MemEntry__bindgen_ty_1, meu_Addr) - 0usize];
5658};
5659#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5660const _: () = {
5661    ["Size of MemEntry"][::core::mem::size_of::<MemEntry>() - 8usize];
5662    ["Alignment of MemEntry"][::core::mem::align_of::<MemEntry>() - 2usize];
5663    ["Offset of field: MemEntry::me_Un"][::core::mem::offset_of!(MemEntry, me_Un) - 0usize];
5664    ["Offset of field: MemEntry::me_Length"][::core::mem::offset_of!(MemEntry, me_Length) - 4usize];
5665};
5666#[repr(C)]
5667#[derive(Copy, Clone)]
5668pub struct MemList {
5669    pub ml_Node: Node,
5670    pub ml_NumEntries: UWORD,
5671    pub ml_ME: [MemEntry; 1usize],
5672}
5673#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5674const _: () = {
5675    ["Size of MemList"][::core::mem::size_of::<MemList>() - 24usize];
5676    ["Alignment of MemList"][::core::mem::align_of::<MemList>() - 2usize];
5677    ["Offset of field: MemList::ml_Node"][::core::mem::offset_of!(MemList, ml_Node) - 0usize];
5678    ["Offset of field: MemList::ml_NumEntries"]
5679        [::core::mem::offset_of!(MemList, ml_NumEntries) - 14usize];
5680    ["Offset of field: MemList::ml_ME"][::core::mem::offset_of!(MemList, ml_ME) - 16usize];
5681};
5682#[repr(C, packed(2))]
5683#[derive(Debug, Copy, Clone)]
5684pub struct MemHandlerData {
5685    pub memh_RequestSize: ULONG,
5686    pub memh_RequestFlags: ULONG,
5687    pub memh_Flags: ULONG,
5688}
5689#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5690const _: () = {
5691    ["Size of MemHandlerData"][::core::mem::size_of::<MemHandlerData>() - 12usize];
5692    ["Alignment of MemHandlerData"][::core::mem::align_of::<MemHandlerData>() - 2usize];
5693    ["Offset of field: MemHandlerData::memh_RequestSize"]
5694        [::core::mem::offset_of!(MemHandlerData, memh_RequestSize) - 0usize];
5695    ["Offset of field: MemHandlerData::memh_RequestFlags"]
5696        [::core::mem::offset_of!(MemHandlerData, memh_RequestFlags) - 4usize];
5697    ["Offset of field: MemHandlerData::memh_Flags"]
5698        [::core::mem::offset_of!(MemHandlerData, memh_Flags) - 8usize];
5699};
5700#[repr(C, packed(2))]
5701#[derive(Debug, Copy, Clone)]
5702pub struct Task {
5703    pub tc_Node: Node,
5704    pub tc_Flags: UBYTE,
5705    pub tc_State: UBYTE,
5706    pub tc_IDNestCnt: BYTE,
5707    pub tc_TDNestCnt: BYTE,
5708    pub tc_SigAlloc: ULONG,
5709    pub tc_SigWait: ULONG,
5710    pub tc_SigRecvd: ULONG,
5711    pub tc_SigExcept: ULONG,
5712    pub tc_TrapAlloc: UWORD,
5713    pub tc_TrapAble: UWORD,
5714    pub tc_ExceptData: APTR,
5715    pub tc_ExceptCode: APTR,
5716    pub tc_TrapData: APTR,
5717    pub tc_TrapCode: APTR,
5718    pub tc_SPReg: APTR,
5719    pub tc_SPLower: APTR,
5720    pub tc_SPUpper: APTR,
5721    pub tc_Switch: FPTR,
5722    pub tc_Launch: FPTR,
5723    pub tc_MemEntry: List,
5724    pub tc_UserData: APTR,
5725}
5726#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5727const _: () = {
5728    ["Size of Task"][::core::mem::size_of::<Task>() - 92usize];
5729    ["Alignment of Task"][::core::mem::align_of::<Task>() - 2usize];
5730    ["Offset of field: Task::tc_Node"][::core::mem::offset_of!(Task, tc_Node) - 0usize];
5731    ["Offset of field: Task::tc_Flags"][::core::mem::offset_of!(Task, tc_Flags) - 14usize];
5732    ["Offset of field: Task::tc_State"][::core::mem::offset_of!(Task, tc_State) - 15usize];
5733    ["Offset of field: Task::tc_IDNestCnt"][::core::mem::offset_of!(Task, tc_IDNestCnt) - 16usize];
5734    ["Offset of field: Task::tc_TDNestCnt"][::core::mem::offset_of!(Task, tc_TDNestCnt) - 17usize];
5735    ["Offset of field: Task::tc_SigAlloc"][::core::mem::offset_of!(Task, tc_SigAlloc) - 18usize];
5736    ["Offset of field: Task::tc_SigWait"][::core::mem::offset_of!(Task, tc_SigWait) - 22usize];
5737    ["Offset of field: Task::tc_SigRecvd"][::core::mem::offset_of!(Task, tc_SigRecvd) - 26usize];
5738    ["Offset of field: Task::tc_SigExcept"][::core::mem::offset_of!(Task, tc_SigExcept) - 30usize];
5739    ["Offset of field: Task::tc_TrapAlloc"][::core::mem::offset_of!(Task, tc_TrapAlloc) - 34usize];
5740    ["Offset of field: Task::tc_TrapAble"][::core::mem::offset_of!(Task, tc_TrapAble) - 36usize];
5741    ["Offset of field: Task::tc_ExceptData"]
5742        [::core::mem::offset_of!(Task, tc_ExceptData) - 38usize];
5743    ["Offset of field: Task::tc_ExceptCode"]
5744        [::core::mem::offset_of!(Task, tc_ExceptCode) - 42usize];
5745    ["Offset of field: Task::tc_TrapData"][::core::mem::offset_of!(Task, tc_TrapData) - 46usize];
5746    ["Offset of field: Task::tc_TrapCode"][::core::mem::offset_of!(Task, tc_TrapCode) - 50usize];
5747    ["Offset of field: Task::tc_SPReg"][::core::mem::offset_of!(Task, tc_SPReg) - 54usize];
5748    ["Offset of field: Task::tc_SPLower"][::core::mem::offset_of!(Task, tc_SPLower) - 58usize];
5749    ["Offset of field: Task::tc_SPUpper"][::core::mem::offset_of!(Task, tc_SPUpper) - 62usize];
5750    ["Offset of field: Task::tc_Switch"][::core::mem::offset_of!(Task, tc_Switch) - 66usize];
5751    ["Offset of field: Task::tc_Launch"][::core::mem::offset_of!(Task, tc_Launch) - 70usize];
5752    ["Offset of field: Task::tc_MemEntry"][::core::mem::offset_of!(Task, tc_MemEntry) - 74usize];
5753    ["Offset of field: Task::tc_UserData"][::core::mem::offset_of!(Task, tc_UserData) - 88usize];
5754};
5755#[repr(C, packed(2))]
5756#[derive(Debug, Copy, Clone)]
5757pub struct StackSwapStruct {
5758    pub stk_Lower: APTR,
5759    pub stk_Upper: ULONG,
5760    pub stk_Pointer: APTR,
5761}
5762#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5763const _: () = {
5764    ["Size of StackSwapStruct"][::core::mem::size_of::<StackSwapStruct>() - 12usize];
5765    ["Alignment of StackSwapStruct"][::core::mem::align_of::<StackSwapStruct>() - 2usize];
5766    ["Offset of field: StackSwapStruct::stk_Lower"]
5767        [::core::mem::offset_of!(StackSwapStruct, stk_Lower) - 0usize];
5768    ["Offset of field: StackSwapStruct::stk_Upper"]
5769        [::core::mem::offset_of!(StackSwapStruct, stk_Upper) - 4usize];
5770    ["Offset of field: StackSwapStruct::stk_Pointer"]
5771        [::core::mem::offset_of!(StackSwapStruct, stk_Pointer) - 8usize];
5772};
5773#[repr(C, packed(2))]
5774#[derive(Debug, Copy, Clone)]
5775pub struct MsgPort {
5776    pub mp_Node: Node,
5777    pub mp_Flags: UBYTE,
5778    pub mp_SigBit: UBYTE,
5779    pub mp_SigTask: *mut ::core::ffi::c_void,
5780    pub mp_MsgList: List,
5781}
5782#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5783const _: () = {
5784    ["Size of MsgPort"][::core::mem::size_of::<MsgPort>() - 34usize];
5785    ["Alignment of MsgPort"][::core::mem::align_of::<MsgPort>() - 2usize];
5786    ["Offset of field: MsgPort::mp_Node"][::core::mem::offset_of!(MsgPort, mp_Node) - 0usize];
5787    ["Offset of field: MsgPort::mp_Flags"][::core::mem::offset_of!(MsgPort, mp_Flags) - 14usize];
5788    ["Offset of field: MsgPort::mp_SigBit"][::core::mem::offset_of!(MsgPort, mp_SigBit) - 15usize];
5789    ["Offset of field: MsgPort::mp_SigTask"]
5790        [::core::mem::offset_of!(MsgPort, mp_SigTask) - 16usize];
5791    ["Offset of field: MsgPort::mp_MsgList"]
5792        [::core::mem::offset_of!(MsgPort, mp_MsgList) - 20usize];
5793};
5794#[repr(C, packed(2))]
5795#[derive(Debug, Copy, Clone)]
5796pub struct Message {
5797    pub mn_Node: Node,
5798    pub mn_ReplyPort: *mut MsgPort,
5799    pub mn_Length: UWORD,
5800}
5801#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5802const _: () = {
5803    ["Size of Message"][::core::mem::size_of::<Message>() - 20usize];
5804    ["Alignment of Message"][::core::mem::align_of::<Message>() - 2usize];
5805    ["Offset of field: Message::mn_Node"][::core::mem::offset_of!(Message, mn_Node) - 0usize];
5806    ["Offset of field: Message::mn_ReplyPort"]
5807        [::core::mem::offset_of!(Message, mn_ReplyPort) - 14usize];
5808    ["Offset of field: Message::mn_Length"][::core::mem::offset_of!(Message, mn_Length) - 18usize];
5809};
5810#[repr(C, packed(2))]
5811#[derive(Debug, Copy, Clone)]
5812pub struct Interrupt {
5813    pub is_Node: Node,
5814    pub is_Data: APTR,
5815    pub is_Code: FPTR,
5816}
5817#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5818const _: () = {
5819    ["Size of Interrupt"][::core::mem::size_of::<Interrupt>() - 22usize];
5820    ["Alignment of Interrupt"][::core::mem::align_of::<Interrupt>() - 2usize];
5821    ["Offset of field: Interrupt::is_Node"][::core::mem::offset_of!(Interrupt, is_Node) - 0usize];
5822    ["Offset of field: Interrupt::is_Data"][::core::mem::offset_of!(Interrupt, is_Data) - 14usize];
5823    ["Offset of field: Interrupt::is_Code"][::core::mem::offset_of!(Interrupt, is_Code) - 18usize];
5824};
5825#[repr(C, packed(2))]
5826#[derive(Debug, Copy, Clone)]
5827pub struct IntVector {
5828    pub iv_Data: APTR,
5829    pub iv_Code: FPTR,
5830    pub iv_Node: *mut Node,
5831}
5832#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5833const _: () = {
5834    ["Size of IntVector"][::core::mem::size_of::<IntVector>() - 12usize];
5835    ["Alignment of IntVector"][::core::mem::align_of::<IntVector>() - 2usize];
5836    ["Offset of field: IntVector::iv_Data"][::core::mem::offset_of!(IntVector, iv_Data) - 0usize];
5837    ["Offset of field: IntVector::iv_Code"][::core::mem::offset_of!(IntVector, iv_Code) - 4usize];
5838    ["Offset of field: IntVector::iv_Node"][::core::mem::offset_of!(IntVector, iv_Node) - 8usize];
5839};
5840#[repr(C)]
5841#[derive(Debug, Copy, Clone)]
5842pub struct SoftIntList {
5843    pub sh_List: List,
5844    pub sh_Pad: UWORD,
5845}
5846#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5847const _: () = {
5848    ["Size of SoftIntList"][::core::mem::size_of::<SoftIntList>() - 16usize];
5849    ["Alignment of SoftIntList"][::core::mem::align_of::<SoftIntList>() - 2usize];
5850    ["Offset of field: SoftIntList::sh_List"]
5851        [::core::mem::offset_of!(SoftIntList, sh_List) - 0usize];
5852    ["Offset of field: SoftIntList::sh_Pad"]
5853        [::core::mem::offset_of!(SoftIntList, sh_Pad) - 14usize];
5854};
5855#[repr(C, packed(2))]
5856#[derive(Debug, Copy, Clone)]
5857pub struct SemaphoreRequest {
5858    pub sr_Link: MinNode,
5859    pub sr_Waiter: *mut Task,
5860}
5861#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5862const _: () = {
5863    ["Size of SemaphoreRequest"][::core::mem::size_of::<SemaphoreRequest>() - 12usize];
5864    ["Alignment of SemaphoreRequest"][::core::mem::align_of::<SemaphoreRequest>() - 2usize];
5865    ["Offset of field: SemaphoreRequest::sr_Link"]
5866        [::core::mem::offset_of!(SemaphoreRequest, sr_Link) - 0usize];
5867    ["Offset of field: SemaphoreRequest::sr_Waiter"]
5868        [::core::mem::offset_of!(SemaphoreRequest, sr_Waiter) - 8usize];
5869};
5870#[repr(C, packed(2))]
5871#[derive(Debug, Copy, Clone)]
5872pub struct SignalSemaphore {
5873    pub ss_Link: Node,
5874    pub ss_NestCount: WORD,
5875    pub ss_WaitQueue: MinList,
5876    pub ss_MultipleLink: SemaphoreRequest,
5877    pub ss_Owner: *mut Task,
5878    pub ss_QueueCount: WORD,
5879}
5880#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5881const _: () = {
5882    ["Size of SignalSemaphore"][::core::mem::size_of::<SignalSemaphore>() - 46usize];
5883    ["Alignment of SignalSemaphore"][::core::mem::align_of::<SignalSemaphore>() - 2usize];
5884    ["Offset of field: SignalSemaphore::ss_Link"]
5885        [::core::mem::offset_of!(SignalSemaphore, ss_Link) - 0usize];
5886    ["Offset of field: SignalSemaphore::ss_NestCount"]
5887        [::core::mem::offset_of!(SignalSemaphore, ss_NestCount) - 14usize];
5888    ["Offset of field: SignalSemaphore::ss_WaitQueue"]
5889        [::core::mem::offset_of!(SignalSemaphore, ss_WaitQueue) - 16usize];
5890    ["Offset of field: SignalSemaphore::ss_MultipleLink"]
5891        [::core::mem::offset_of!(SignalSemaphore, ss_MultipleLink) - 28usize];
5892    ["Offset of field: SignalSemaphore::ss_Owner"]
5893        [::core::mem::offset_of!(SignalSemaphore, ss_Owner) - 40usize];
5894    ["Offset of field: SignalSemaphore::ss_QueueCount"]
5895        [::core::mem::offset_of!(SignalSemaphore, ss_QueueCount) - 44usize];
5896};
5897#[repr(C, packed(2))]
5898#[derive(Debug, Copy, Clone)]
5899pub struct SemaphoreMessage {
5900    pub ssm_Message: Message,
5901    pub ssm_Semaphore: *mut SignalSemaphore,
5902}
5903#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5904const _: () = {
5905    ["Size of SemaphoreMessage"][::core::mem::size_of::<SemaphoreMessage>() - 24usize];
5906    ["Alignment of SemaphoreMessage"][::core::mem::align_of::<SemaphoreMessage>() - 2usize];
5907    ["Offset of field: SemaphoreMessage::ssm_Message"]
5908        [::core::mem::offset_of!(SemaphoreMessage, ssm_Message) - 0usize];
5909    ["Offset of field: SemaphoreMessage::ssm_Semaphore"]
5910        [::core::mem::offset_of!(SemaphoreMessage, ssm_Semaphore) - 20usize];
5911};
5912#[repr(C)]
5913#[derive(Debug, Copy, Clone)]
5914pub struct Semaphore {
5915    pub sm_MsgPort: MsgPort,
5916    pub sm_Bids: WORD,
5917}
5918#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5919const _: () = {
5920    ["Size of Semaphore"][::core::mem::size_of::<Semaphore>() - 36usize];
5921    ["Alignment of Semaphore"][::core::mem::align_of::<Semaphore>() - 2usize];
5922    ["Offset of field: Semaphore::sm_MsgPort"]
5923        [::core::mem::offset_of!(Semaphore, sm_MsgPort) - 0usize];
5924    ["Offset of field: Semaphore::sm_Bids"][::core::mem::offset_of!(Semaphore, sm_Bids) - 34usize];
5925};
5926#[repr(C, packed(2))]
5927#[derive(Debug, Copy, Clone)]
5928pub struct Library {
5929    pub lib_Node: Node,
5930    pub lib_Flags: UBYTE,
5931    pub lib_pad: UBYTE,
5932    pub lib_NegSize: UWORD,
5933    pub lib_PosSize: UWORD,
5934    pub lib_Version: UWORD,
5935    pub lib_Revision: UWORD,
5936    pub lib_IdString: APTR,
5937    pub lib_Sum: ULONG,
5938    pub lib_OpenCnt: UWORD,
5939}
5940#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5941const _: () = {
5942    ["Size of Library"][::core::mem::size_of::<Library>() - 34usize];
5943    ["Alignment of Library"][::core::mem::align_of::<Library>() - 2usize];
5944    ["Offset of field: Library::lib_Node"][::core::mem::offset_of!(Library, lib_Node) - 0usize];
5945    ["Offset of field: Library::lib_Flags"][::core::mem::offset_of!(Library, lib_Flags) - 14usize];
5946    ["Offset of field: Library::lib_pad"][::core::mem::offset_of!(Library, lib_pad) - 15usize];
5947    ["Offset of field: Library::lib_NegSize"]
5948        [::core::mem::offset_of!(Library, lib_NegSize) - 16usize];
5949    ["Offset of field: Library::lib_PosSize"]
5950        [::core::mem::offset_of!(Library, lib_PosSize) - 18usize];
5951    ["Offset of field: Library::lib_Version"]
5952        [::core::mem::offset_of!(Library, lib_Version) - 20usize];
5953    ["Offset of field: Library::lib_Revision"]
5954        [::core::mem::offset_of!(Library, lib_Revision) - 22usize];
5955    ["Offset of field: Library::lib_IdString"]
5956        [::core::mem::offset_of!(Library, lib_IdString) - 24usize];
5957    ["Offset of field: Library::lib_Sum"][::core::mem::offset_of!(Library, lib_Sum) - 28usize];
5958    ["Offset of field: Library::lib_OpenCnt"]
5959        [::core::mem::offset_of!(Library, lib_OpenCnt) - 32usize];
5960};
5961#[repr(C, packed(2))]
5962#[derive(Debug, Copy, Clone)]
5963pub struct IORequest {
5964    pub io_Message: Message,
5965    pub io_Device: *mut Device,
5966    pub io_Unit: *mut Unit,
5967    pub io_Command: UWORD,
5968    pub io_Flags: UBYTE,
5969    pub io_Error: BYTE,
5970}
5971#[allow(clippy::unnecessary_operation, clippy::identity_op)]
5972const _: () = {
5973    ["Size of IORequest"][::core::mem::size_of::<IORequest>() - 32usize];
5974    ["Alignment of IORequest"][::core::mem::align_of::<IORequest>() - 2usize];
5975    ["Offset of field: IORequest::io_Message"]
5976        [::core::mem::offset_of!(IORequest, io_Message) - 0usize];
5977    ["Offset of field: IORequest::io_Device"]
5978        [::core::mem::offset_of!(IORequest, io_Device) - 20usize];
5979    ["Offset of field: IORequest::io_Unit"][::core::mem::offset_of!(IORequest, io_Unit) - 24usize];
5980    ["Offset of field: IORequest::io_Command"]
5981        [::core::mem::offset_of!(IORequest, io_Command) - 28usize];
5982    ["Offset of field: IORequest::io_Flags"]
5983        [::core::mem::offset_of!(IORequest, io_Flags) - 30usize];
5984    ["Offset of field: IORequest::io_Error"]
5985        [::core::mem::offset_of!(IORequest, io_Error) - 31usize];
5986};
5987#[repr(C, packed(2))]
5988#[derive(Debug, Copy, Clone)]
5989pub struct IOStdReq {
5990    pub io_Message: Message,
5991    pub io_Device: *mut Device,
5992    pub io_Unit: *mut Unit,
5993    pub io_Command: UWORD,
5994    pub io_Flags: UBYTE,
5995    pub io_Error: BYTE,
5996    pub io_Actual: ULONG,
5997    pub io_Length: ULONG,
5998    pub io_Data: APTR,
5999    pub io_Offset: ULONG,
6000}
6001#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6002const _: () = {
6003    ["Size of IOStdReq"][::core::mem::size_of::<IOStdReq>() - 48usize];
6004    ["Alignment of IOStdReq"][::core::mem::align_of::<IOStdReq>() - 2usize];
6005    ["Offset of field: IOStdReq::io_Message"]
6006        [::core::mem::offset_of!(IOStdReq, io_Message) - 0usize];
6007    ["Offset of field: IOStdReq::io_Device"]
6008        [::core::mem::offset_of!(IOStdReq, io_Device) - 20usize];
6009    ["Offset of field: IOStdReq::io_Unit"][::core::mem::offset_of!(IOStdReq, io_Unit) - 24usize];
6010    ["Offset of field: IOStdReq::io_Command"]
6011        [::core::mem::offset_of!(IOStdReq, io_Command) - 28usize];
6012    ["Offset of field: IOStdReq::io_Flags"][::core::mem::offset_of!(IOStdReq, io_Flags) - 30usize];
6013    ["Offset of field: IOStdReq::io_Error"][::core::mem::offset_of!(IOStdReq, io_Error) - 31usize];
6014    ["Offset of field: IOStdReq::io_Actual"]
6015        [::core::mem::offset_of!(IOStdReq, io_Actual) - 32usize];
6016    ["Offset of field: IOStdReq::io_Length"]
6017        [::core::mem::offset_of!(IOStdReq, io_Length) - 36usize];
6018    ["Offset of field: IOStdReq::io_Data"][::core::mem::offset_of!(IOStdReq, io_Data) - 40usize];
6019    ["Offset of field: IOStdReq::io_Offset"]
6020        [::core::mem::offset_of!(IOStdReq, io_Offset) - 44usize];
6021};
6022#[repr(C)]
6023#[derive(Debug, Copy, Clone)]
6024pub struct Device {
6025    pub dd_Library: Library,
6026}
6027#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6028const _: () = {
6029    ["Size of Device"][::core::mem::size_of::<Device>() - 34usize];
6030    ["Alignment of Device"][::core::mem::align_of::<Device>() - 2usize];
6031    ["Offset of field: Device::dd_Library"][::core::mem::offset_of!(Device, dd_Library) - 0usize];
6032};
6033#[repr(C)]
6034#[derive(Debug, Copy, Clone)]
6035pub struct Unit {
6036    pub unit_MsgPort: MsgPort,
6037    pub unit_flags: UBYTE,
6038    pub unit_pad: UBYTE,
6039    pub unit_OpenCnt: UWORD,
6040}
6041#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6042const _: () = {
6043    ["Size of Unit"][::core::mem::size_of::<Unit>() - 38usize];
6044    ["Alignment of Unit"][::core::mem::align_of::<Unit>() - 2usize];
6045    ["Offset of field: Unit::unit_MsgPort"][::core::mem::offset_of!(Unit, unit_MsgPort) - 0usize];
6046    ["Offset of field: Unit::unit_flags"][::core::mem::offset_of!(Unit, unit_flags) - 34usize];
6047    ["Offset of field: Unit::unit_pad"][::core::mem::offset_of!(Unit, unit_pad) - 35usize];
6048    ["Offset of field: Unit::unit_OpenCnt"][::core::mem::offset_of!(Unit, unit_OpenCnt) - 36usize];
6049};
6050#[repr(C, packed(2))]
6051#[derive(Debug, Copy, Clone)]
6052pub struct ExecBase {
6053    pub LibNode: Library,
6054    pub SoftVer: UWORD,
6055    pub LowMemChkSum: WORD,
6056    pub ChkBase: ULONG,
6057    pub ColdCapture: APTR,
6058    pub CoolCapture: APTR,
6059    pub WarmCapture: APTR,
6060    pub SysStkUpper: APTR,
6061    pub SysStkLower: APTR,
6062    pub MaxLocMem: ULONG,
6063    pub DebugEntry: APTR,
6064    pub DebugData: APTR,
6065    pub AlertData: APTR,
6066    pub MaxExtMem: APTR,
6067    pub ChkSum: UWORD,
6068    pub IntVects: [IntVector; 16usize],
6069    pub ThisTask: *mut Task,
6070    pub IdleCount: ULONG,
6071    pub DispCount: ULONG,
6072    pub Quantum: UWORD,
6073    pub Elapsed: UWORD,
6074    pub SysFlags: UWORD,
6075    pub IDNestCnt: BYTE,
6076    pub TDNestCnt: BYTE,
6077    pub AttnFlags: UWORD,
6078    pub AttnResched: UWORD,
6079    pub ResModules: APTR,
6080    pub TaskTrapCode: APTR,
6081    pub TaskExceptCode: APTR,
6082    pub TaskExitCode: APTR,
6083    pub TaskSigAlloc: ULONG,
6084    pub TaskTrapAlloc: UWORD,
6085    pub MemList: List,
6086    pub ResourceList: List,
6087    pub DeviceList: List,
6088    pub IntrList: List,
6089    pub LibList: List,
6090    pub PortList: List,
6091    pub TaskReady: List,
6092    pub TaskWait: List,
6093    pub SoftInts: [SoftIntList; 5usize],
6094    pub LastAlert: [LONG; 4usize],
6095    pub VBlankFrequency: UBYTE,
6096    pub PowerSupplyFrequency: UBYTE,
6097    pub SemaphoreList: List,
6098    pub KickMemPtr: APTR,
6099    pub KickTagPtr: APTR,
6100    pub KickCheckSum: APTR,
6101    pub ex_Pad0: UWORD,
6102    pub ex_LaunchPoint: ULONG,
6103    pub ex_RamLibPrivate: APTR,
6104    pub ex_EClockFrequency: ULONG,
6105    pub ex_CacheControl: ULONG,
6106    pub ex_TaskID: ULONG,
6107    pub ex_Reserved1: [ULONG; 5usize],
6108    pub ex_MMULock: APTR,
6109    pub ex_Reserved2: [ULONG; 3usize],
6110    pub ex_MemHandlers: MinList,
6111    pub ex_MemHandler: APTR,
6112}
6113#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6114const _: () = {
6115    ["Size of ExecBase"][::core::mem::size_of::<ExecBase>() - 632usize];
6116    ["Alignment of ExecBase"][::core::mem::align_of::<ExecBase>() - 2usize];
6117    ["Offset of field: ExecBase::LibNode"][::core::mem::offset_of!(ExecBase, LibNode) - 0usize];
6118    ["Offset of field: ExecBase::SoftVer"][::core::mem::offset_of!(ExecBase, SoftVer) - 34usize];
6119    ["Offset of field: ExecBase::LowMemChkSum"]
6120        [::core::mem::offset_of!(ExecBase, LowMemChkSum) - 36usize];
6121    ["Offset of field: ExecBase::ChkBase"][::core::mem::offset_of!(ExecBase, ChkBase) - 38usize];
6122    ["Offset of field: ExecBase::ColdCapture"]
6123        [::core::mem::offset_of!(ExecBase, ColdCapture) - 42usize];
6124    ["Offset of field: ExecBase::CoolCapture"]
6125        [::core::mem::offset_of!(ExecBase, CoolCapture) - 46usize];
6126    ["Offset of field: ExecBase::WarmCapture"]
6127        [::core::mem::offset_of!(ExecBase, WarmCapture) - 50usize];
6128    ["Offset of field: ExecBase::SysStkUpper"]
6129        [::core::mem::offset_of!(ExecBase, SysStkUpper) - 54usize];
6130    ["Offset of field: ExecBase::SysStkLower"]
6131        [::core::mem::offset_of!(ExecBase, SysStkLower) - 58usize];
6132    ["Offset of field: ExecBase::MaxLocMem"]
6133        [::core::mem::offset_of!(ExecBase, MaxLocMem) - 62usize];
6134    ["Offset of field: ExecBase::DebugEntry"]
6135        [::core::mem::offset_of!(ExecBase, DebugEntry) - 66usize];
6136    ["Offset of field: ExecBase::DebugData"]
6137        [::core::mem::offset_of!(ExecBase, DebugData) - 70usize];
6138    ["Offset of field: ExecBase::AlertData"]
6139        [::core::mem::offset_of!(ExecBase, AlertData) - 74usize];
6140    ["Offset of field: ExecBase::MaxExtMem"]
6141        [::core::mem::offset_of!(ExecBase, MaxExtMem) - 78usize];
6142    ["Offset of field: ExecBase::ChkSum"][::core::mem::offset_of!(ExecBase, ChkSum) - 82usize];
6143    ["Offset of field: ExecBase::IntVects"][::core::mem::offset_of!(ExecBase, IntVects) - 84usize];
6144    ["Offset of field: ExecBase::ThisTask"][::core::mem::offset_of!(ExecBase, ThisTask) - 276usize];
6145    ["Offset of field: ExecBase::IdleCount"]
6146        [::core::mem::offset_of!(ExecBase, IdleCount) - 280usize];
6147    ["Offset of field: ExecBase::DispCount"]
6148        [::core::mem::offset_of!(ExecBase, DispCount) - 284usize];
6149    ["Offset of field: ExecBase::Quantum"][::core::mem::offset_of!(ExecBase, Quantum) - 288usize];
6150    ["Offset of field: ExecBase::Elapsed"][::core::mem::offset_of!(ExecBase, Elapsed) - 290usize];
6151    ["Offset of field: ExecBase::SysFlags"][::core::mem::offset_of!(ExecBase, SysFlags) - 292usize];
6152    ["Offset of field: ExecBase::IDNestCnt"]
6153        [::core::mem::offset_of!(ExecBase, IDNestCnt) - 294usize];
6154    ["Offset of field: ExecBase::TDNestCnt"]
6155        [::core::mem::offset_of!(ExecBase, TDNestCnt) - 295usize];
6156    ["Offset of field: ExecBase::AttnFlags"]
6157        [::core::mem::offset_of!(ExecBase, AttnFlags) - 296usize];
6158    ["Offset of field: ExecBase::AttnResched"]
6159        [::core::mem::offset_of!(ExecBase, AttnResched) - 298usize];
6160    ["Offset of field: ExecBase::ResModules"]
6161        [::core::mem::offset_of!(ExecBase, ResModules) - 300usize];
6162    ["Offset of field: ExecBase::TaskTrapCode"]
6163        [::core::mem::offset_of!(ExecBase, TaskTrapCode) - 304usize];
6164    ["Offset of field: ExecBase::TaskExceptCode"]
6165        [::core::mem::offset_of!(ExecBase, TaskExceptCode) - 308usize];
6166    ["Offset of field: ExecBase::TaskExitCode"]
6167        [::core::mem::offset_of!(ExecBase, TaskExitCode) - 312usize];
6168    ["Offset of field: ExecBase::TaskSigAlloc"]
6169        [::core::mem::offset_of!(ExecBase, TaskSigAlloc) - 316usize];
6170    ["Offset of field: ExecBase::TaskTrapAlloc"]
6171        [::core::mem::offset_of!(ExecBase, TaskTrapAlloc) - 320usize];
6172    ["Offset of field: ExecBase::MemList"][::core::mem::offset_of!(ExecBase, MemList) - 322usize];
6173    ["Offset of field: ExecBase::ResourceList"]
6174        [::core::mem::offset_of!(ExecBase, ResourceList) - 336usize];
6175    ["Offset of field: ExecBase::DeviceList"]
6176        [::core::mem::offset_of!(ExecBase, DeviceList) - 350usize];
6177    ["Offset of field: ExecBase::IntrList"][::core::mem::offset_of!(ExecBase, IntrList) - 364usize];
6178    ["Offset of field: ExecBase::LibList"][::core::mem::offset_of!(ExecBase, LibList) - 378usize];
6179    ["Offset of field: ExecBase::PortList"][::core::mem::offset_of!(ExecBase, PortList) - 392usize];
6180    ["Offset of field: ExecBase::TaskReady"]
6181        [::core::mem::offset_of!(ExecBase, TaskReady) - 406usize];
6182    ["Offset of field: ExecBase::TaskWait"][::core::mem::offset_of!(ExecBase, TaskWait) - 420usize];
6183    ["Offset of field: ExecBase::SoftInts"][::core::mem::offset_of!(ExecBase, SoftInts) - 434usize];
6184    ["Offset of field: ExecBase::LastAlert"]
6185        [::core::mem::offset_of!(ExecBase, LastAlert) - 514usize];
6186    ["Offset of field: ExecBase::VBlankFrequency"]
6187        [::core::mem::offset_of!(ExecBase, VBlankFrequency) - 530usize];
6188    ["Offset of field: ExecBase::PowerSupplyFrequency"]
6189        [::core::mem::offset_of!(ExecBase, PowerSupplyFrequency) - 531usize];
6190    ["Offset of field: ExecBase::SemaphoreList"]
6191        [::core::mem::offset_of!(ExecBase, SemaphoreList) - 532usize];
6192    ["Offset of field: ExecBase::KickMemPtr"]
6193        [::core::mem::offset_of!(ExecBase, KickMemPtr) - 546usize];
6194    ["Offset of field: ExecBase::KickTagPtr"]
6195        [::core::mem::offset_of!(ExecBase, KickTagPtr) - 550usize];
6196    ["Offset of field: ExecBase::KickCheckSum"]
6197        [::core::mem::offset_of!(ExecBase, KickCheckSum) - 554usize];
6198    ["Offset of field: ExecBase::ex_Pad0"][::core::mem::offset_of!(ExecBase, ex_Pad0) - 558usize];
6199    ["Offset of field: ExecBase::ex_LaunchPoint"]
6200        [::core::mem::offset_of!(ExecBase, ex_LaunchPoint) - 560usize];
6201    ["Offset of field: ExecBase::ex_RamLibPrivate"]
6202        [::core::mem::offset_of!(ExecBase, ex_RamLibPrivate) - 564usize];
6203    ["Offset of field: ExecBase::ex_EClockFrequency"]
6204        [::core::mem::offset_of!(ExecBase, ex_EClockFrequency) - 568usize];
6205    ["Offset of field: ExecBase::ex_CacheControl"]
6206        [::core::mem::offset_of!(ExecBase, ex_CacheControl) - 572usize];
6207    ["Offset of field: ExecBase::ex_TaskID"]
6208        [::core::mem::offset_of!(ExecBase, ex_TaskID) - 576usize];
6209    ["Offset of field: ExecBase::ex_Reserved1"]
6210        [::core::mem::offset_of!(ExecBase, ex_Reserved1) - 580usize];
6211    ["Offset of field: ExecBase::ex_MMULock"]
6212        [::core::mem::offset_of!(ExecBase, ex_MMULock) - 600usize];
6213    ["Offset of field: ExecBase::ex_Reserved2"]
6214        [::core::mem::offset_of!(ExecBase, ex_Reserved2) - 604usize];
6215    ["Offset of field: ExecBase::ex_MemHandlers"]
6216        [::core::mem::offset_of!(ExecBase, ex_MemHandlers) - 616usize];
6217    ["Offset of field: ExecBase::ex_MemHandler"]
6218        [::core::mem::offset_of!(ExecBase, ex_MemHandler) - 628usize];
6219};
6220#[repr(C, packed(2))]
6221#[derive(Debug, Copy, Clone)]
6222pub struct DateStamp {
6223    pub ds_Days: LONG,
6224    pub ds_Minute: LONG,
6225    pub ds_Tick: LONG,
6226}
6227#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6228const _: () = {
6229    ["Size of DateStamp"][::core::mem::size_of::<DateStamp>() - 12usize];
6230    ["Alignment of DateStamp"][::core::mem::align_of::<DateStamp>() - 2usize];
6231    ["Offset of field: DateStamp::ds_Days"][::core::mem::offset_of!(DateStamp, ds_Days) - 0usize];
6232    ["Offset of field: DateStamp::ds_Minute"]
6233        [::core::mem::offset_of!(DateStamp, ds_Minute) - 4usize];
6234    ["Offset of field: DateStamp::ds_Tick"][::core::mem::offset_of!(DateStamp, ds_Tick) - 8usize];
6235};
6236#[repr(C, packed(2))]
6237#[derive(Debug, Copy, Clone)]
6238pub struct FileInfoBlock {
6239    pub fib_DiskKey: LONG,
6240    pub fib_DirEntryType: LONG,
6241    pub fib_FileName: [TEXT; 108usize],
6242    pub fib_Protection: LONG,
6243    pub fib_EntryType: LONG,
6244    pub fib_Size: LONG,
6245    pub fib_NumBlocks: LONG,
6246    pub fib_Date: DateStamp,
6247    pub fib_Comment: [TEXT; 80usize],
6248    pub fib_OwnerUID: UWORD,
6249    pub fib_OwnerGID: UWORD,
6250    pub fib_Reserved: [UBYTE; 32usize],
6251}
6252#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6253const _: () = {
6254    ["Size of FileInfoBlock"][::core::mem::size_of::<FileInfoBlock>() - 260usize];
6255    ["Alignment of FileInfoBlock"][::core::mem::align_of::<FileInfoBlock>() - 2usize];
6256    ["Offset of field: FileInfoBlock::fib_DiskKey"]
6257        [::core::mem::offset_of!(FileInfoBlock, fib_DiskKey) - 0usize];
6258    ["Offset of field: FileInfoBlock::fib_DirEntryType"]
6259        [::core::mem::offset_of!(FileInfoBlock, fib_DirEntryType) - 4usize];
6260    ["Offset of field: FileInfoBlock::fib_FileName"]
6261        [::core::mem::offset_of!(FileInfoBlock, fib_FileName) - 8usize];
6262    ["Offset of field: FileInfoBlock::fib_Protection"]
6263        [::core::mem::offset_of!(FileInfoBlock, fib_Protection) - 116usize];
6264    ["Offset of field: FileInfoBlock::fib_EntryType"]
6265        [::core::mem::offset_of!(FileInfoBlock, fib_EntryType) - 120usize];
6266    ["Offset of field: FileInfoBlock::fib_Size"]
6267        [::core::mem::offset_of!(FileInfoBlock, fib_Size) - 124usize];
6268    ["Offset of field: FileInfoBlock::fib_NumBlocks"]
6269        [::core::mem::offset_of!(FileInfoBlock, fib_NumBlocks) - 128usize];
6270    ["Offset of field: FileInfoBlock::fib_Date"]
6271        [::core::mem::offset_of!(FileInfoBlock, fib_Date) - 132usize];
6272    ["Offset of field: FileInfoBlock::fib_Comment"]
6273        [::core::mem::offset_of!(FileInfoBlock, fib_Comment) - 144usize];
6274    ["Offset of field: FileInfoBlock::fib_OwnerUID"]
6275        [::core::mem::offset_of!(FileInfoBlock, fib_OwnerUID) - 224usize];
6276    ["Offset of field: FileInfoBlock::fib_OwnerGID"]
6277        [::core::mem::offset_of!(FileInfoBlock, fib_OwnerGID) - 226usize];
6278    ["Offset of field: FileInfoBlock::fib_Reserved"]
6279        [::core::mem::offset_of!(FileInfoBlock, fib_Reserved) - 228usize];
6280};
6281pub type BPTR = ::core::ffi::c_long;
6282pub type BSTR = ::core::ffi::c_long;
6283#[repr(C, packed(2))]
6284#[derive(Debug, Copy, Clone)]
6285pub struct InfoData {
6286    pub id_NumSoftErrors: LONG,
6287    pub id_UnitNumber: LONG,
6288    pub id_DiskState: LONG,
6289    pub id_NumBlocks: LONG,
6290    pub id_NumBlocksUsed: LONG,
6291    pub id_BytesPerBlock: LONG,
6292    pub id_DiskType: LONG,
6293    pub id_VolumeNode: BPTR,
6294    pub id_InUse: LONG,
6295}
6296#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6297const _: () = {
6298    ["Size of InfoData"][::core::mem::size_of::<InfoData>() - 36usize];
6299    ["Alignment of InfoData"][::core::mem::align_of::<InfoData>() - 2usize];
6300    ["Offset of field: InfoData::id_NumSoftErrors"]
6301        [::core::mem::offset_of!(InfoData, id_NumSoftErrors) - 0usize];
6302    ["Offset of field: InfoData::id_UnitNumber"]
6303        [::core::mem::offset_of!(InfoData, id_UnitNumber) - 4usize];
6304    ["Offset of field: InfoData::id_DiskState"]
6305        [::core::mem::offset_of!(InfoData, id_DiskState) - 8usize];
6306    ["Offset of field: InfoData::id_NumBlocks"]
6307        [::core::mem::offset_of!(InfoData, id_NumBlocks) - 12usize];
6308    ["Offset of field: InfoData::id_NumBlocksUsed"]
6309        [::core::mem::offset_of!(InfoData, id_NumBlocksUsed) - 16usize];
6310    ["Offset of field: InfoData::id_BytesPerBlock"]
6311        [::core::mem::offset_of!(InfoData, id_BytesPerBlock) - 20usize];
6312    ["Offset of field: InfoData::id_DiskType"]
6313        [::core::mem::offset_of!(InfoData, id_DiskType) - 24usize];
6314    ["Offset of field: InfoData::id_VolumeNode"]
6315        [::core::mem::offset_of!(InfoData, id_VolumeNode) - 28usize];
6316    ["Offset of field: InfoData::id_InUse"][::core::mem::offset_of!(InfoData, id_InUse) - 32usize];
6317};
6318#[repr(C, packed(2))]
6319#[derive(Debug, Copy, Clone)]
6320pub struct CSource {
6321    pub CS_Buffer: STRPTR,
6322    pub CS_Length: LONG,
6323    pub CS_CurChr: LONG,
6324}
6325#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6326const _: () = {
6327    ["Size of CSource"][::core::mem::size_of::<CSource>() - 12usize];
6328    ["Alignment of CSource"][::core::mem::align_of::<CSource>() - 2usize];
6329    ["Offset of field: CSource::CS_Buffer"][::core::mem::offset_of!(CSource, CS_Buffer) - 0usize];
6330    ["Offset of field: CSource::CS_Length"][::core::mem::offset_of!(CSource, CS_Length) - 4usize];
6331    ["Offset of field: CSource::CS_CurChr"][::core::mem::offset_of!(CSource, CS_CurChr) - 8usize];
6332};
6333#[repr(C, packed(2))]
6334#[derive(Debug, Copy, Clone)]
6335pub struct RDArgs {
6336    pub RDA_Source: CSource,
6337    pub RDA_DAList: LONG,
6338    pub RDA_Buffer: STRPTR,
6339    pub RDA_BufSiz: LONG,
6340    pub RDA_ExtHelp: STRPTR,
6341    pub RDA_Flags: LONG,
6342}
6343#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6344const _: () = {
6345    ["Size of RDArgs"][::core::mem::size_of::<RDArgs>() - 32usize];
6346    ["Alignment of RDArgs"][::core::mem::align_of::<RDArgs>() - 2usize];
6347    ["Offset of field: RDArgs::RDA_Source"][::core::mem::offset_of!(RDArgs, RDA_Source) - 0usize];
6348    ["Offset of field: RDArgs::RDA_DAList"][::core::mem::offset_of!(RDArgs, RDA_DAList) - 12usize];
6349    ["Offset of field: RDArgs::RDA_Buffer"][::core::mem::offset_of!(RDArgs, RDA_Buffer) - 16usize];
6350    ["Offset of field: RDArgs::RDA_BufSiz"][::core::mem::offset_of!(RDArgs, RDA_BufSiz) - 20usize];
6351    ["Offset of field: RDArgs::RDA_ExtHelp"]
6352        [::core::mem::offset_of!(RDArgs, RDA_ExtHelp) - 24usize];
6353    ["Offset of field: RDArgs::RDA_Flags"][::core::mem::offset_of!(RDArgs, RDA_Flags) - 28usize];
6354};
6355#[repr(C, packed(2))]
6356#[derive(Debug, Copy, Clone)]
6357pub struct NexxStr {
6358    pub ns_Ivalue: LONG,
6359    pub ns_Length: UWORD,
6360    pub ns_Flags: UBYTE,
6361    pub ns_Hash: UBYTE,
6362    pub ns_Buff: [BYTE; 8usize],
6363}
6364#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6365const _: () = {
6366    ["Size of NexxStr"][::core::mem::size_of::<NexxStr>() - 16usize];
6367    ["Alignment of NexxStr"][::core::mem::align_of::<NexxStr>() - 2usize];
6368    ["Offset of field: NexxStr::ns_Ivalue"][::core::mem::offset_of!(NexxStr, ns_Ivalue) - 0usize];
6369    ["Offset of field: NexxStr::ns_Length"][::core::mem::offset_of!(NexxStr, ns_Length) - 4usize];
6370    ["Offset of field: NexxStr::ns_Flags"][::core::mem::offset_of!(NexxStr, ns_Flags) - 6usize];
6371    ["Offset of field: NexxStr::ns_Hash"][::core::mem::offset_of!(NexxStr, ns_Hash) - 7usize];
6372    ["Offset of field: NexxStr::ns_Buff"][::core::mem::offset_of!(NexxStr, ns_Buff) - 8usize];
6373};
6374#[repr(C, packed(2))]
6375#[derive(Debug, Copy, Clone)]
6376pub struct RexxArg {
6377    pub ra_Size: LONG,
6378    pub ra_Length: UWORD,
6379    pub ra_Flags: UBYTE,
6380    pub ra_Hash: UBYTE,
6381    pub ra_Buff: [BYTE; 8usize],
6382}
6383#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6384const _: () = {
6385    ["Size of RexxArg"][::core::mem::size_of::<RexxArg>() - 16usize];
6386    ["Alignment of RexxArg"][::core::mem::align_of::<RexxArg>() - 2usize];
6387    ["Offset of field: RexxArg::ra_Size"][::core::mem::offset_of!(RexxArg, ra_Size) - 0usize];
6388    ["Offset of field: RexxArg::ra_Length"][::core::mem::offset_of!(RexxArg, ra_Length) - 4usize];
6389    ["Offset of field: RexxArg::ra_Flags"][::core::mem::offset_of!(RexxArg, ra_Flags) - 6usize];
6390    ["Offset of field: RexxArg::ra_Hash"][::core::mem::offset_of!(RexxArg, ra_Hash) - 7usize];
6391    ["Offset of field: RexxArg::ra_Buff"][::core::mem::offset_of!(RexxArg, ra_Buff) - 8usize];
6392};
6393#[repr(C, packed(2))]
6394#[derive(Debug, Copy, Clone)]
6395pub struct RexxMsg {
6396    pub rm_Node: Message,
6397    pub rm_TaskBlock: APTR,
6398    pub rm_LibBase: APTR,
6399    pub rm_Action: LONG,
6400    pub rm_Result1: LONG,
6401    pub rm_Result2: LONG,
6402    pub rm_Args: [STRPTR; 16usize],
6403    pub rm_PassPort: *mut MsgPort,
6404    pub rm_CommAddr: STRPTR,
6405    pub rm_FileExt: STRPTR,
6406    pub rm_Stdin: LONG,
6407    pub rm_Stdout: LONG,
6408    pub rm_avail: LONG,
6409}
6410#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6411const _: () = {
6412    ["Size of RexxMsg"][::core::mem::size_of::<RexxMsg>() - 128usize];
6413    ["Alignment of RexxMsg"][::core::mem::align_of::<RexxMsg>() - 2usize];
6414    ["Offset of field: RexxMsg::rm_Node"][::core::mem::offset_of!(RexxMsg, rm_Node) - 0usize];
6415    ["Offset of field: RexxMsg::rm_TaskBlock"]
6416        [::core::mem::offset_of!(RexxMsg, rm_TaskBlock) - 20usize];
6417    ["Offset of field: RexxMsg::rm_LibBase"]
6418        [::core::mem::offset_of!(RexxMsg, rm_LibBase) - 24usize];
6419    ["Offset of field: RexxMsg::rm_Action"][::core::mem::offset_of!(RexxMsg, rm_Action) - 28usize];
6420    ["Offset of field: RexxMsg::rm_Result1"]
6421        [::core::mem::offset_of!(RexxMsg, rm_Result1) - 32usize];
6422    ["Offset of field: RexxMsg::rm_Result2"]
6423        [::core::mem::offset_of!(RexxMsg, rm_Result2) - 36usize];
6424    ["Offset of field: RexxMsg::rm_Args"][::core::mem::offset_of!(RexxMsg, rm_Args) - 40usize];
6425    ["Offset of field: RexxMsg::rm_PassPort"]
6426        [::core::mem::offset_of!(RexxMsg, rm_PassPort) - 104usize];
6427    ["Offset of field: RexxMsg::rm_CommAddr"]
6428        [::core::mem::offset_of!(RexxMsg, rm_CommAddr) - 108usize];
6429    ["Offset of field: RexxMsg::rm_FileExt"]
6430        [::core::mem::offset_of!(RexxMsg, rm_FileExt) - 112usize];
6431    ["Offset of field: RexxMsg::rm_Stdin"][::core::mem::offset_of!(RexxMsg, rm_Stdin) - 116usize];
6432    ["Offset of field: RexxMsg::rm_Stdout"][::core::mem::offset_of!(RexxMsg, rm_Stdout) - 120usize];
6433    ["Offset of field: RexxMsg::rm_avail"][::core::mem::offset_of!(RexxMsg, rm_avail) - 124usize];
6434};
6435#[repr(C, packed(2))]
6436#[derive(Debug, Copy, Clone)]
6437pub struct RexxRsrc {
6438    pub rr_Node: Node,
6439    pub rr_Func: WORD,
6440    pub rr_Base: APTR,
6441    pub rr_Size: LONG,
6442    pub rr_Arg1: LONG,
6443    pub rr_Arg2: LONG,
6444}
6445#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6446const _: () = {
6447    ["Size of RexxRsrc"][::core::mem::size_of::<RexxRsrc>() - 32usize];
6448    ["Alignment of RexxRsrc"][::core::mem::align_of::<RexxRsrc>() - 2usize];
6449    ["Offset of field: RexxRsrc::rr_Node"][::core::mem::offset_of!(RexxRsrc, rr_Node) - 0usize];
6450    ["Offset of field: RexxRsrc::rr_Func"][::core::mem::offset_of!(RexxRsrc, rr_Func) - 14usize];
6451    ["Offset of field: RexxRsrc::rr_Base"][::core::mem::offset_of!(RexxRsrc, rr_Base) - 16usize];
6452    ["Offset of field: RexxRsrc::rr_Size"][::core::mem::offset_of!(RexxRsrc, rr_Size) - 20usize];
6453    ["Offset of field: RexxRsrc::rr_Arg1"][::core::mem::offset_of!(RexxRsrc, rr_Arg1) - 24usize];
6454    ["Offset of field: RexxRsrc::rr_Arg2"][::core::mem::offset_of!(RexxRsrc, rr_Arg2) - 28usize];
6455};
6456#[repr(C, packed(2))]
6457#[derive(Debug, Copy, Clone)]
6458pub struct RexxTask {
6459    pub rt_Global: [BYTE; 200usize],
6460    pub rt_MsgPort: MsgPort,
6461    pub rt_Flags: UBYTE,
6462    pub rt_SigBit: BYTE,
6463    pub rt_ClientID: APTR,
6464    pub rt_MsgPkt: APTR,
6465    pub rt_TaskID: APTR,
6466    pub rt_RexxPort: APTR,
6467    pub rt_ErrTrap: APTR,
6468    pub rt_StackPtr: APTR,
6469    pub rt_Header1: List,
6470    pub rt_Header2: List,
6471    pub rt_Header3: List,
6472    pub rt_Header4: List,
6473    pub rt_Header5: List,
6474}
6475#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6476const _: () = {
6477    ["Size of RexxTask"][::core::mem::size_of::<RexxTask>() - 330usize];
6478    ["Alignment of RexxTask"][::core::mem::align_of::<RexxTask>() - 2usize];
6479    ["Offset of field: RexxTask::rt_Global"][::core::mem::offset_of!(RexxTask, rt_Global) - 0usize];
6480    ["Offset of field: RexxTask::rt_MsgPort"]
6481        [::core::mem::offset_of!(RexxTask, rt_MsgPort) - 200usize];
6482    ["Offset of field: RexxTask::rt_Flags"][::core::mem::offset_of!(RexxTask, rt_Flags) - 234usize];
6483    ["Offset of field: RexxTask::rt_SigBit"]
6484        [::core::mem::offset_of!(RexxTask, rt_SigBit) - 235usize];
6485    ["Offset of field: RexxTask::rt_ClientID"]
6486        [::core::mem::offset_of!(RexxTask, rt_ClientID) - 236usize];
6487    ["Offset of field: RexxTask::rt_MsgPkt"]
6488        [::core::mem::offset_of!(RexxTask, rt_MsgPkt) - 240usize];
6489    ["Offset of field: RexxTask::rt_TaskID"]
6490        [::core::mem::offset_of!(RexxTask, rt_TaskID) - 244usize];
6491    ["Offset of field: RexxTask::rt_RexxPort"]
6492        [::core::mem::offset_of!(RexxTask, rt_RexxPort) - 248usize];
6493    ["Offset of field: RexxTask::rt_ErrTrap"]
6494        [::core::mem::offset_of!(RexxTask, rt_ErrTrap) - 252usize];
6495    ["Offset of field: RexxTask::rt_StackPtr"]
6496        [::core::mem::offset_of!(RexxTask, rt_StackPtr) - 256usize];
6497    ["Offset of field: RexxTask::rt_Header1"]
6498        [::core::mem::offset_of!(RexxTask, rt_Header1) - 260usize];
6499    ["Offset of field: RexxTask::rt_Header2"]
6500        [::core::mem::offset_of!(RexxTask, rt_Header2) - 274usize];
6501    ["Offset of field: RexxTask::rt_Header3"]
6502        [::core::mem::offset_of!(RexxTask, rt_Header3) - 288usize];
6503    ["Offset of field: RexxTask::rt_Header4"]
6504        [::core::mem::offset_of!(RexxTask, rt_Header4) - 302usize];
6505    ["Offset of field: RexxTask::rt_Header5"]
6506        [::core::mem::offset_of!(RexxTask, rt_Header5) - 316usize];
6507};
6508#[repr(C, packed(2))]
6509#[derive(Debug, Copy, Clone)]
6510pub struct SrcNode {
6511    pub sn_Succ: *mut SrcNode,
6512    pub sn_Pred: *mut SrcNode,
6513    pub sn_Ptr: APTR,
6514    pub sn_Size: LONG,
6515}
6516#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6517const _: () = {
6518    ["Size of SrcNode"][::core::mem::size_of::<SrcNode>() - 16usize];
6519    ["Alignment of SrcNode"][::core::mem::align_of::<SrcNode>() - 2usize];
6520    ["Offset of field: SrcNode::sn_Succ"][::core::mem::offset_of!(SrcNode, sn_Succ) - 0usize];
6521    ["Offset of field: SrcNode::sn_Pred"][::core::mem::offset_of!(SrcNode, sn_Pred) - 4usize];
6522    ["Offset of field: SrcNode::sn_Ptr"][::core::mem::offset_of!(SrcNode, sn_Ptr) - 8usize];
6523    ["Offset of field: SrcNode::sn_Size"][::core::mem::offset_of!(SrcNode, sn_Size) - 12usize];
6524};
6525#[repr(C, packed(2))]
6526#[derive(Debug, Copy, Clone)]
6527pub struct RxsLib {
6528    pub rl_Node: Library,
6529    pub rl_Flags: UBYTE,
6530    pub rl_Shadow: UBYTE,
6531    pub rl_SysBase: APTR,
6532    pub rl_DOSBase: APTR,
6533    pub rl_IeeeDPBase: APTR,
6534    pub rl_SegList: LONG,
6535    pub rl_NIL: LONG,
6536    pub rl_Chunk: LONG,
6537    pub rl_MaxNest: LONG,
6538    pub rl_NULL: *mut NexxStr,
6539    pub rl_FALSE: *mut NexxStr,
6540    pub rl_TRUE: *mut NexxStr,
6541    pub rl_REXX: *mut NexxStr,
6542    pub rl_COMMAND: *mut NexxStr,
6543    pub rl_STDIN: *mut NexxStr,
6544    pub rl_STDOUT: *mut NexxStr,
6545    pub rl_STDERR: *mut NexxStr,
6546    pub rl_Version: STRPTR,
6547    pub rl_TaskName: STRPTR,
6548    pub rl_TaskPri: LONG,
6549    pub rl_TaskSeg: LONG,
6550    pub rl_StackSize: LONG,
6551    pub rl_RexxDir: STRPTR,
6552    pub rl_CTABLE: STRPTR,
6553    pub rl_Notice: STRPTR,
6554    pub rl_RexxPort: MsgPort,
6555    pub rl_ReadLock: UWORD,
6556    pub rl_TraceFH: LONG,
6557    pub rl_TaskList: List,
6558    pub rl_NumTask: WORD,
6559    pub rl_LibList: List,
6560    pub rl_NumLib: WORD,
6561    pub rl_ClipList: List,
6562    pub rl_NumClip: WORD,
6563    pub rl_MsgList: List,
6564    pub rl_NumMsg: WORD,
6565    pub rl_PgmList: List,
6566    pub rl_NumPgm: WORD,
6567    pub rl_TraceCnt: UWORD,
6568    pub rl_avail: WORD,
6569    pub rl_UtilityBase: APTR,
6570}
6571#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6572const _: () = {
6573    ["Size of RxsLib"][::core::mem::size_of::<RxsLib>() - 256usize];
6574    ["Alignment of RxsLib"][::core::mem::align_of::<RxsLib>() - 2usize];
6575    ["Offset of field: RxsLib::rl_Node"][::core::mem::offset_of!(RxsLib, rl_Node) - 0usize];
6576    ["Offset of field: RxsLib::rl_Flags"][::core::mem::offset_of!(RxsLib, rl_Flags) - 34usize];
6577    ["Offset of field: RxsLib::rl_Shadow"][::core::mem::offset_of!(RxsLib, rl_Shadow) - 35usize];
6578    ["Offset of field: RxsLib::rl_SysBase"][::core::mem::offset_of!(RxsLib, rl_SysBase) - 36usize];
6579    ["Offset of field: RxsLib::rl_DOSBase"][::core::mem::offset_of!(RxsLib, rl_DOSBase) - 40usize];
6580    ["Offset of field: RxsLib::rl_IeeeDPBase"]
6581        [::core::mem::offset_of!(RxsLib, rl_IeeeDPBase) - 44usize];
6582    ["Offset of field: RxsLib::rl_SegList"][::core::mem::offset_of!(RxsLib, rl_SegList) - 48usize];
6583    ["Offset of field: RxsLib::rl_NIL"][::core::mem::offset_of!(RxsLib, rl_NIL) - 52usize];
6584    ["Offset of field: RxsLib::rl_Chunk"][::core::mem::offset_of!(RxsLib, rl_Chunk) - 56usize];
6585    ["Offset of field: RxsLib::rl_MaxNest"][::core::mem::offset_of!(RxsLib, rl_MaxNest) - 60usize];
6586    ["Offset of field: RxsLib::rl_NULL"][::core::mem::offset_of!(RxsLib, rl_NULL) - 64usize];
6587    ["Offset of field: RxsLib::rl_FALSE"][::core::mem::offset_of!(RxsLib, rl_FALSE) - 68usize];
6588    ["Offset of field: RxsLib::rl_TRUE"][::core::mem::offset_of!(RxsLib, rl_TRUE) - 72usize];
6589    ["Offset of field: RxsLib::rl_REXX"][::core::mem::offset_of!(RxsLib, rl_REXX) - 76usize];
6590    ["Offset of field: RxsLib::rl_COMMAND"][::core::mem::offset_of!(RxsLib, rl_COMMAND) - 80usize];
6591    ["Offset of field: RxsLib::rl_STDIN"][::core::mem::offset_of!(RxsLib, rl_STDIN) - 84usize];
6592    ["Offset of field: RxsLib::rl_STDOUT"][::core::mem::offset_of!(RxsLib, rl_STDOUT) - 88usize];
6593    ["Offset of field: RxsLib::rl_STDERR"][::core::mem::offset_of!(RxsLib, rl_STDERR) - 92usize];
6594    ["Offset of field: RxsLib::rl_Version"][::core::mem::offset_of!(RxsLib, rl_Version) - 96usize];
6595    ["Offset of field: RxsLib::rl_TaskName"]
6596        [::core::mem::offset_of!(RxsLib, rl_TaskName) - 100usize];
6597    ["Offset of field: RxsLib::rl_TaskPri"][::core::mem::offset_of!(RxsLib, rl_TaskPri) - 104usize];
6598    ["Offset of field: RxsLib::rl_TaskSeg"][::core::mem::offset_of!(RxsLib, rl_TaskSeg) - 108usize];
6599    ["Offset of field: RxsLib::rl_StackSize"]
6600        [::core::mem::offset_of!(RxsLib, rl_StackSize) - 112usize];
6601    ["Offset of field: RxsLib::rl_RexxDir"][::core::mem::offset_of!(RxsLib, rl_RexxDir) - 116usize];
6602    ["Offset of field: RxsLib::rl_CTABLE"][::core::mem::offset_of!(RxsLib, rl_CTABLE) - 120usize];
6603    ["Offset of field: RxsLib::rl_Notice"][::core::mem::offset_of!(RxsLib, rl_Notice) - 124usize];
6604    ["Offset of field: RxsLib::rl_RexxPort"]
6605        [::core::mem::offset_of!(RxsLib, rl_RexxPort) - 128usize];
6606    ["Offset of field: RxsLib::rl_ReadLock"]
6607        [::core::mem::offset_of!(RxsLib, rl_ReadLock) - 162usize];
6608    ["Offset of field: RxsLib::rl_TraceFH"][::core::mem::offset_of!(RxsLib, rl_TraceFH) - 164usize];
6609    ["Offset of field: RxsLib::rl_TaskList"]
6610        [::core::mem::offset_of!(RxsLib, rl_TaskList) - 168usize];
6611    ["Offset of field: RxsLib::rl_NumTask"][::core::mem::offset_of!(RxsLib, rl_NumTask) - 182usize];
6612    ["Offset of field: RxsLib::rl_LibList"][::core::mem::offset_of!(RxsLib, rl_LibList) - 184usize];
6613    ["Offset of field: RxsLib::rl_NumLib"][::core::mem::offset_of!(RxsLib, rl_NumLib) - 198usize];
6614    ["Offset of field: RxsLib::rl_ClipList"]
6615        [::core::mem::offset_of!(RxsLib, rl_ClipList) - 200usize];
6616    ["Offset of field: RxsLib::rl_NumClip"][::core::mem::offset_of!(RxsLib, rl_NumClip) - 214usize];
6617    ["Offset of field: RxsLib::rl_MsgList"][::core::mem::offset_of!(RxsLib, rl_MsgList) - 216usize];
6618    ["Offset of field: RxsLib::rl_NumMsg"][::core::mem::offset_of!(RxsLib, rl_NumMsg) - 230usize];
6619    ["Offset of field: RxsLib::rl_PgmList"][::core::mem::offset_of!(RxsLib, rl_PgmList) - 232usize];
6620    ["Offset of field: RxsLib::rl_NumPgm"][::core::mem::offset_of!(RxsLib, rl_NumPgm) - 246usize];
6621    ["Offset of field: RxsLib::rl_TraceCnt"]
6622        [::core::mem::offset_of!(RxsLib, rl_TraceCnt) - 248usize];
6623    ["Offset of field: RxsLib::rl_avail"][::core::mem::offset_of!(RxsLib, rl_avail) - 250usize];
6624    ["Offset of field: RxsLib::rl_UtilityBase"]
6625        [::core::mem::offset_of!(RxsLib, rl_UtilityBase) - 252usize];
6626};
6627#[repr(C, packed(2))]
6628#[derive(Debug, Copy, Clone)]
6629pub struct Hook {
6630    pub h_MinNode: MinNode,
6631    pub h_Entry: FPTR,
6632    pub h_SubEntry: FPTR,
6633    pub h_Data: APTR,
6634}
6635#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6636const _: () = {
6637    ["Size of Hook"][::core::mem::size_of::<Hook>() - 20usize];
6638    ["Alignment of Hook"][::core::mem::align_of::<Hook>() - 2usize];
6639    ["Offset of field: Hook::h_MinNode"][::core::mem::offset_of!(Hook, h_MinNode) - 0usize];
6640    ["Offset of field: Hook::h_Entry"][::core::mem::offset_of!(Hook, h_Entry) - 8usize];
6641    ["Offset of field: Hook::h_SubEntry"][::core::mem::offset_of!(Hook, h_SubEntry) - 12usize];
6642    ["Offset of field: Hook::h_Data"][::core::mem::offset_of!(Hook, h_Data) - 16usize];
6643};
6644pub type HOOKFUNC = FPTR;
6645pub type Object = ULONG;
6646pub type ClassID = STRPTR;
6647#[repr(C, packed(2))]
6648#[derive(Debug, Copy, Clone)]
6649pub struct _bindgen_ty_1 {
6650    pub MethodID: ULONG,
6651}
6652#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6653const _: () = {
6654    ["Size of _bindgen_ty_1"][::core::mem::size_of::<_bindgen_ty_1>() - 4usize];
6655    ["Alignment of _bindgen_ty_1"][::core::mem::align_of::<_bindgen_ty_1>() - 2usize];
6656    ["Offset of field: _bindgen_ty_1::MethodID"]
6657        [::core::mem::offset_of!(_bindgen_ty_1, MethodID) - 0usize];
6658};
6659pub type Msg = *mut _bindgen_ty_1;
6660#[repr(C, packed(2))]
6661#[derive(Debug, Copy, Clone)]
6662pub struct opSet {
6663    pub MethodID: ULONG,
6664    pub ops_AttrList: *mut TagItem,
6665    pub ops_GInfo: *mut GadgetInfo,
6666}
6667#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6668const _: () = {
6669    ["Size of opSet"][::core::mem::size_of::<opSet>() - 12usize];
6670    ["Alignment of opSet"][::core::mem::align_of::<opSet>() - 2usize];
6671    ["Offset of field: opSet::MethodID"][::core::mem::offset_of!(opSet, MethodID) - 0usize];
6672    ["Offset of field: opSet::ops_AttrList"][::core::mem::offset_of!(opSet, ops_AttrList) - 4usize];
6673    ["Offset of field: opSet::ops_GInfo"][::core::mem::offset_of!(opSet, ops_GInfo) - 8usize];
6674};
6675#[repr(C, packed(2))]
6676#[derive(Debug, Copy, Clone)]
6677pub struct opUpdate {
6678    pub MethodID: ULONG,
6679    pub opu_AttrList: *mut TagItem,
6680    pub opu_GInfo: *mut GadgetInfo,
6681    pub opu_Flags: ULONG,
6682}
6683#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6684const _: () = {
6685    ["Size of opUpdate"][::core::mem::size_of::<opUpdate>() - 16usize];
6686    ["Alignment of opUpdate"][::core::mem::align_of::<opUpdate>() - 2usize];
6687    ["Offset of field: opUpdate::MethodID"][::core::mem::offset_of!(opUpdate, MethodID) - 0usize];
6688    ["Offset of field: opUpdate::opu_AttrList"]
6689        [::core::mem::offset_of!(opUpdate, opu_AttrList) - 4usize];
6690    ["Offset of field: opUpdate::opu_GInfo"][::core::mem::offset_of!(opUpdate, opu_GInfo) - 8usize];
6691    ["Offset of field: opUpdate::opu_Flags"]
6692        [::core::mem::offset_of!(opUpdate, opu_Flags) - 12usize];
6693};
6694#[repr(C, packed(2))]
6695#[derive(Debug, Copy, Clone)]
6696pub struct opGet {
6697    pub MethodID: ULONG,
6698    pub opg_AttrID: ULONG,
6699    pub opg_Storage: *mut ULONG,
6700}
6701#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6702const _: () = {
6703    ["Size of opGet"][::core::mem::size_of::<opGet>() - 12usize];
6704    ["Alignment of opGet"][::core::mem::align_of::<opGet>() - 2usize];
6705    ["Offset of field: opGet::MethodID"][::core::mem::offset_of!(opGet, MethodID) - 0usize];
6706    ["Offset of field: opGet::opg_AttrID"][::core::mem::offset_of!(opGet, opg_AttrID) - 4usize];
6707    ["Offset of field: opGet::opg_Storage"][::core::mem::offset_of!(opGet, opg_Storage) - 8usize];
6708};
6709#[repr(C, packed(2))]
6710#[derive(Debug, Copy, Clone)]
6711pub struct opAddTail {
6712    pub MethodID: ULONG,
6713    pub opat_List: *mut List,
6714}
6715#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6716const _: () = {
6717    ["Size of opAddTail"][::core::mem::size_of::<opAddTail>() - 8usize];
6718    ["Alignment of opAddTail"][::core::mem::align_of::<opAddTail>() - 2usize];
6719    ["Offset of field: opAddTail::MethodID"][::core::mem::offset_of!(opAddTail, MethodID) - 0usize];
6720    ["Offset of field: opAddTail::opat_List"]
6721        [::core::mem::offset_of!(opAddTail, opat_List) - 4usize];
6722};
6723#[repr(C, packed(2))]
6724#[derive(Debug, Copy, Clone)]
6725pub struct opMember {
6726    pub MethodID: ULONG,
6727    pub opam_Object: *mut Object,
6728}
6729#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6730const _: () = {
6731    ["Size of opMember"][::core::mem::size_of::<opMember>() - 8usize];
6732    ["Alignment of opMember"][::core::mem::align_of::<opMember>() - 2usize];
6733    ["Offset of field: opMember::MethodID"][::core::mem::offset_of!(opMember, MethodID) - 0usize];
6734    ["Offset of field: opMember::opam_Object"]
6735        [::core::mem::offset_of!(opMember, opam_Object) - 4usize];
6736};
6737#[repr(C, packed(2))]
6738#[derive(Debug, Copy, Clone)]
6739pub struct IClass {
6740    pub cl_Dispatcher: Hook,
6741    pub cl_Reserved: ULONG,
6742    pub cl_Super: *mut IClass,
6743    pub cl_ID: ClassID,
6744    pub cl_InstOffset: UWORD,
6745    pub cl_InstSize: UWORD,
6746    pub cl_UserData: ULONG,
6747    pub cl_SubclassCount: ULONG,
6748    pub cl_ObjectCount: ULONG,
6749    pub cl_Flags: ULONG,
6750}
6751#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6752const _: () = {
6753    ["Size of IClass"][::core::mem::size_of::<IClass>() - 52usize];
6754    ["Alignment of IClass"][::core::mem::align_of::<IClass>() - 2usize];
6755    ["Offset of field: IClass::cl_Dispatcher"]
6756        [::core::mem::offset_of!(IClass, cl_Dispatcher) - 0usize];
6757    ["Offset of field: IClass::cl_Reserved"]
6758        [::core::mem::offset_of!(IClass, cl_Reserved) - 20usize];
6759    ["Offset of field: IClass::cl_Super"][::core::mem::offset_of!(IClass, cl_Super) - 24usize];
6760    ["Offset of field: IClass::cl_ID"][::core::mem::offset_of!(IClass, cl_ID) - 28usize];
6761    ["Offset of field: IClass::cl_InstOffset"]
6762        [::core::mem::offset_of!(IClass, cl_InstOffset) - 32usize];
6763    ["Offset of field: IClass::cl_InstSize"]
6764        [::core::mem::offset_of!(IClass, cl_InstSize) - 34usize];
6765    ["Offset of field: IClass::cl_UserData"]
6766        [::core::mem::offset_of!(IClass, cl_UserData) - 36usize];
6767    ["Offset of field: IClass::cl_SubclassCount"]
6768        [::core::mem::offset_of!(IClass, cl_SubclassCount) - 40usize];
6769    ["Offset of field: IClass::cl_ObjectCount"]
6770        [::core::mem::offset_of!(IClass, cl_ObjectCount) - 44usize];
6771    ["Offset of field: IClass::cl_Flags"][::core::mem::offset_of!(IClass, cl_Flags) - 48usize];
6772};
6773pub type Class = IClass;
6774#[repr(C, packed(2))]
6775#[derive(Debug, Copy, Clone)]
6776pub struct _Object {
6777    pub o_Node: MinNode,
6778    pub o_Class: *mut IClass,
6779}
6780#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6781const _: () = {
6782    ["Size of _Object"][::core::mem::size_of::<_Object>() - 12usize];
6783    ["Alignment of _Object"][::core::mem::align_of::<_Object>() - 2usize];
6784    ["Offset of field: _Object::o_Node"][::core::mem::offset_of!(_Object, o_Node) - 0usize];
6785    ["Offset of field: _Object::o_Class"][::core::mem::offset_of!(_Object, o_Class) - 8usize];
6786};
6787#[repr(C, packed(2))]
6788#[derive(Debug, Copy, Clone)]
6789pub struct ClassLibrary {
6790    pub cl_Lib: Library,
6791    pub cl_Pad: UWORD,
6792    pub cl_Class: *mut Class,
6793}
6794#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6795const _: () = {
6796    ["Size of ClassLibrary"][::core::mem::size_of::<ClassLibrary>() - 40usize];
6797    ["Alignment of ClassLibrary"][::core::mem::align_of::<ClassLibrary>() - 2usize];
6798    ["Offset of field: ClassLibrary::cl_Lib"]
6799        [::core::mem::offset_of!(ClassLibrary, cl_Lib) - 0usize];
6800    ["Offset of field: ClassLibrary::cl_Pad"]
6801        [::core::mem::offset_of!(ClassLibrary, cl_Pad) - 34usize];
6802    ["Offset of field: ClassLibrary::cl_Class"]
6803        [::core::mem::offset_of!(ClassLibrary, cl_Class) - 36usize];
6804};
6805pub type Tag = ULONG;
6806#[repr(C, packed(2))]
6807#[derive(Debug, Copy, Clone)]
6808pub struct TagItem {
6809    pub ti_Tag: Tag,
6810    pub ti_Data: ULONG,
6811}
6812#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6813const _: () = {
6814    ["Size of TagItem"][::core::mem::size_of::<TagItem>() - 8usize];
6815    ["Alignment of TagItem"][::core::mem::align_of::<TagItem>() - 2usize];
6816    ["Offset of field: TagItem::ti_Tag"][::core::mem::offset_of!(TagItem, ti_Tag) - 0usize];
6817    ["Offset of field: TagItem::ti_Data"][::core::mem::offset_of!(TagItem, ti_Data) - 4usize];
6818};
6819#[repr(C, packed(2))]
6820#[derive(Debug, Copy, Clone)]
6821pub struct apExecute {
6822    pub MethodID: ULONG,
6823    pub ape_CommandString: STRPTR,
6824    pub ape_PortName: STRPTR,
6825    pub ape_RC: *mut LONG,
6826    pub ape_RC2: *mut LONG,
6827    pub ape_Result: *mut STRPTR,
6828    pub ape_IO: BPTR,
6829}
6830#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6831const _: () = {
6832    ["Size of apExecute"][::core::mem::size_of::<apExecute>() - 28usize];
6833    ["Alignment of apExecute"][::core::mem::align_of::<apExecute>() - 2usize];
6834    ["Offset of field: apExecute::MethodID"][::core::mem::offset_of!(apExecute, MethodID) - 0usize];
6835    ["Offset of field: apExecute::ape_CommandString"]
6836        [::core::mem::offset_of!(apExecute, ape_CommandString) - 4usize];
6837    ["Offset of field: apExecute::ape_PortName"]
6838        [::core::mem::offset_of!(apExecute, ape_PortName) - 8usize];
6839    ["Offset of field: apExecute::ape_RC"][::core::mem::offset_of!(apExecute, ape_RC) - 12usize];
6840    ["Offset of field: apExecute::ape_RC2"][::core::mem::offset_of!(apExecute, ape_RC2) - 16usize];
6841    ["Offset of field: apExecute::ape_Result"]
6842        [::core::mem::offset_of!(apExecute, ape_Result) - 20usize];
6843    ["Offset of field: apExecute::ape_IO"][::core::mem::offset_of!(apExecute, ape_IO) - 24usize];
6844};
6845#[repr(C, packed(2))]
6846#[derive(Debug, Copy, Clone)]
6847pub struct ARexxCmd {
6848    pub ac_Name: STRPTR,
6849    pub ac_ID: UWORD,
6850    pub ac_Func: FPTR,
6851    pub ac_ArgTemplate: STRPTR,
6852    pub ac_Flags: ULONG,
6853    pub ac_ArgList: *mut ULONG,
6854    pub ac_RC: LONG,
6855    pub ac_RC2: LONG,
6856    pub ac_Result: STRPTR,
6857}
6858#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6859const _: () = {
6860    ["Size of ARexxCmd"][::core::mem::size_of::<ARexxCmd>() - 34usize];
6861    ["Alignment of ARexxCmd"][::core::mem::align_of::<ARexxCmd>() - 2usize];
6862    ["Offset of field: ARexxCmd::ac_Name"][::core::mem::offset_of!(ARexxCmd, ac_Name) - 0usize];
6863    ["Offset of field: ARexxCmd::ac_ID"][::core::mem::offset_of!(ARexxCmd, ac_ID) - 4usize];
6864    ["Offset of field: ARexxCmd::ac_Func"][::core::mem::offset_of!(ARexxCmd, ac_Func) - 6usize];
6865    ["Offset of field: ARexxCmd::ac_ArgTemplate"]
6866        [::core::mem::offset_of!(ARexxCmd, ac_ArgTemplate) - 10usize];
6867    ["Offset of field: ARexxCmd::ac_Flags"][::core::mem::offset_of!(ARexxCmd, ac_Flags) - 14usize];
6868    ["Offset of field: ARexxCmd::ac_ArgList"]
6869        [::core::mem::offset_of!(ARexxCmd, ac_ArgList) - 18usize];
6870    ["Offset of field: ARexxCmd::ac_RC"][::core::mem::offset_of!(ARexxCmd, ac_RC) - 22usize];
6871    ["Offset of field: ARexxCmd::ac_RC2"][::core::mem::offset_of!(ARexxCmd, ac_RC2) - 26usize];
6872    ["Offset of field: ARexxCmd::ac_Result"]
6873        [::core::mem::offset_of!(ARexxCmd, ac_Result) - 30usize];
6874};
6875pub const REQIMAGE_DEFAULT: _bindgen_ty_2 = 0;
6876pub const REQIMAGE_INFO: _bindgen_ty_2 = 1;
6877pub const REQIMAGE_WARNING: _bindgen_ty_2 = 2;
6878pub const REQIMAGE_ERROR: _bindgen_ty_2 = 3;
6879pub const REQIMAGE_QUESTION: _bindgen_ty_2 = 4;
6880pub const REQIMAGE_INSERTDISK: _bindgen_ty_2 = 5;
6881pub type _bindgen_ty_2 = ::core::ffi::c_uint;
6882#[repr(C, packed(2))]
6883#[derive(Debug, Copy, Clone)]
6884pub struct orRequest {
6885    pub MethodID: ULONG,
6886    pub or_Attrs: *mut TagItem,
6887    pub or_Window: *mut Window,
6888    pub or_Screen: *mut Screen,
6889}
6890#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6891const _: () = {
6892    ["Size of orRequest"][::core::mem::size_of::<orRequest>() - 16usize];
6893    ["Alignment of orRequest"][::core::mem::align_of::<orRequest>() - 2usize];
6894    ["Offset of field: orRequest::MethodID"][::core::mem::offset_of!(orRequest, MethodID) - 0usize];
6895    ["Offset of field: orRequest::or_Attrs"][::core::mem::offset_of!(orRequest, or_Attrs) - 4usize];
6896    ["Offset of field: orRequest::or_Window"]
6897        [::core::mem::offset_of!(orRequest, or_Window) - 8usize];
6898    ["Offset of field: orRequest::or_Screen"]
6899        [::core::mem::offset_of!(orRequest, or_Screen) - 12usize];
6900};
6901#[repr(C, packed(2))]
6902#[derive(Debug, Copy, Clone)]
6903pub struct wmHandle {
6904    pub MethodID: ULONG,
6905    pub wmh_Code: *mut WORD,
6906}
6907#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6908const _: () = {
6909    ["Size of wmHandle"][::core::mem::size_of::<wmHandle>() - 8usize];
6910    ["Alignment of wmHandle"][::core::mem::align_of::<wmHandle>() - 2usize];
6911    ["Offset of field: wmHandle::MethodID"][::core::mem::offset_of!(wmHandle, MethodID) - 0usize];
6912    ["Offset of field: wmHandle::wmh_Code"][::core::mem::offset_of!(wmHandle, wmh_Code) - 4usize];
6913};
6914#[repr(C, packed(2))]
6915#[derive(Debug, Copy, Clone)]
6916pub struct wmActivateGadget {
6917    pub MethodID: ULONG,
6918    pub wma_Object: *mut Gadget,
6919}
6920#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6921const _: () = {
6922    ["Size of wmActivateGadget"][::core::mem::size_of::<wmActivateGadget>() - 8usize];
6923    ["Alignment of wmActivateGadget"][::core::mem::align_of::<wmActivateGadget>() - 2usize];
6924    ["Offset of field: wmActivateGadget::MethodID"]
6925        [::core::mem::offset_of!(wmActivateGadget, MethodID) - 0usize];
6926    ["Offset of field: wmActivateGadget::wma_Object"]
6927        [::core::mem::offset_of!(wmActivateGadget, wma_Object) - 4usize];
6928};
6929pub const SnapHow_SAVE: SnapHow = 0;
6930pub const SnapHow_USE: SnapHow = 1;
6931pub type SnapHow = ::core::ffi::c_uint;
6932#[repr(C, packed(2))]
6933#[derive(Debug, Copy, Clone)]
6934pub struct wmSnapshot {
6935    pub MethodID: ULONG,
6936    pub How: SnapHow,
6937}
6938#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6939const _: () = {
6940    ["Size of wmSnapshot"][::core::mem::size_of::<wmSnapshot>() - 8usize];
6941    ["Alignment of wmSnapshot"][::core::mem::align_of::<wmSnapshot>() - 2usize];
6942    ["Offset of field: wmSnapshot::MethodID"]
6943        [::core::mem::offset_of!(wmSnapshot, MethodID) - 0usize];
6944    ["Offset of field: wmSnapshot::How"][::core::mem::offset_of!(wmSnapshot, How) - 4usize];
6945};
6946#[repr(C, packed(2))]
6947#[derive(Debug, Copy, Clone)]
6948pub struct HintInfo {
6949    pub hi_GadgetID: WORD,
6950    pub hi_Code: WORD,
6951    pub hi_Text: STRPTR,
6952    pub hi_Flags: ULONG,
6953}
6954#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6955const _: () = {
6956    ["Size of HintInfo"][::core::mem::size_of::<HintInfo>() - 12usize];
6957    ["Alignment of HintInfo"][::core::mem::align_of::<HintInfo>() - 2usize];
6958    ["Offset of field: HintInfo::hi_GadgetID"]
6959        [::core::mem::offset_of!(HintInfo, hi_GadgetID) - 0usize];
6960    ["Offset of field: HintInfo::hi_Code"][::core::mem::offset_of!(HintInfo, hi_Code) - 2usize];
6961    ["Offset of field: HintInfo::hi_Text"][::core::mem::offset_of!(HintInfo, hi_Text) - 4usize];
6962    ["Offset of field: HintInfo::hi_Flags"][::core::mem::offset_of!(HintInfo, hi_Flags) - 8usize];
6963};
6964#[repr(C, packed(2))]
6965#[derive(Debug, Copy, Clone)]
6966pub struct ClipboardUnitPartial {
6967    pub cu_Node: Node,
6968    pub cu_UnitNum: ULONG,
6969}
6970#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6971const _: () = {
6972    ["Size of ClipboardUnitPartial"][::core::mem::size_of::<ClipboardUnitPartial>() - 18usize];
6973    ["Alignment of ClipboardUnitPartial"][::core::mem::align_of::<ClipboardUnitPartial>() - 2usize];
6974    ["Offset of field: ClipboardUnitPartial::cu_Node"]
6975        [::core::mem::offset_of!(ClipboardUnitPartial, cu_Node) - 0usize];
6976    ["Offset of field: ClipboardUnitPartial::cu_UnitNum"]
6977        [::core::mem::offset_of!(ClipboardUnitPartial, cu_UnitNum) - 14usize];
6978};
6979#[repr(C, packed(2))]
6980#[derive(Debug, Copy, Clone)]
6981pub struct IOClipReq {
6982    pub io_Message: Message,
6983    pub io_Device: *mut Device,
6984    pub io_Unit: *mut ClipboardUnitPartial,
6985    pub io_Command: UWORD,
6986    pub io_Flags: UBYTE,
6987    pub io_Error: BYTE,
6988    pub io_Actual: ULONG,
6989    pub io_Length: ULONG,
6990    pub io_Data: STRPTR,
6991    pub io_Offset: ULONG,
6992    pub io_ClipID: LONG,
6993}
6994#[allow(clippy::unnecessary_operation, clippy::identity_op)]
6995const _: () = {
6996    ["Size of IOClipReq"][::core::mem::size_of::<IOClipReq>() - 52usize];
6997    ["Alignment of IOClipReq"][::core::mem::align_of::<IOClipReq>() - 2usize];
6998    ["Offset of field: IOClipReq::io_Message"]
6999        [::core::mem::offset_of!(IOClipReq, io_Message) - 0usize];
7000    ["Offset of field: IOClipReq::io_Device"]
7001        [::core::mem::offset_of!(IOClipReq, io_Device) - 20usize];
7002    ["Offset of field: IOClipReq::io_Unit"][::core::mem::offset_of!(IOClipReq, io_Unit) - 24usize];
7003    ["Offset of field: IOClipReq::io_Command"]
7004        [::core::mem::offset_of!(IOClipReq, io_Command) - 28usize];
7005    ["Offset of field: IOClipReq::io_Flags"]
7006        [::core::mem::offset_of!(IOClipReq, io_Flags) - 30usize];
7007    ["Offset of field: IOClipReq::io_Error"]
7008        [::core::mem::offset_of!(IOClipReq, io_Error) - 31usize];
7009    ["Offset of field: IOClipReq::io_Actual"]
7010        [::core::mem::offset_of!(IOClipReq, io_Actual) - 32usize];
7011    ["Offset of field: IOClipReq::io_Length"]
7012        [::core::mem::offset_of!(IOClipReq, io_Length) - 36usize];
7013    ["Offset of field: IOClipReq::io_Data"][::core::mem::offset_of!(IOClipReq, io_Data) - 40usize];
7014    ["Offset of field: IOClipReq::io_Offset"]
7015        [::core::mem::offset_of!(IOClipReq, io_Offset) - 44usize];
7016    ["Offset of field: IOClipReq::io_ClipID"]
7017        [::core::mem::offset_of!(IOClipReq, io_ClipID) - 48usize];
7018};
7019#[repr(C, packed(2))]
7020#[derive(Debug, Copy, Clone)]
7021pub struct SatisfyMsg {
7022    pub sm_Msg: Message,
7023    pub sm_Unit: UWORD,
7024    pub sm_ClipID: LONG,
7025}
7026#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7027const _: () = {
7028    ["Size of SatisfyMsg"][::core::mem::size_of::<SatisfyMsg>() - 26usize];
7029    ["Alignment of SatisfyMsg"][::core::mem::align_of::<SatisfyMsg>() - 2usize];
7030    ["Offset of field: SatisfyMsg::sm_Msg"][::core::mem::offset_of!(SatisfyMsg, sm_Msg) - 0usize];
7031    ["Offset of field: SatisfyMsg::sm_Unit"]
7032        [::core::mem::offset_of!(SatisfyMsg, sm_Unit) - 20usize];
7033    ["Offset of field: SatisfyMsg::sm_ClipID"]
7034        [::core::mem::offset_of!(SatisfyMsg, sm_ClipID) - 22usize];
7035};
7036#[repr(C, packed(2))]
7037#[derive(Debug, Copy, Clone)]
7038pub struct ClipHookMsg {
7039    pub chm_Type: ULONG,
7040    pub chm_ChangeCmd: LONG,
7041    pub chm_ClipID: LONG,
7042}
7043#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7044const _: () = {
7045    ["Size of ClipHookMsg"][::core::mem::size_of::<ClipHookMsg>() - 12usize];
7046    ["Alignment of ClipHookMsg"][::core::mem::align_of::<ClipHookMsg>() - 2usize];
7047    ["Offset of field: ClipHookMsg::chm_Type"]
7048        [::core::mem::offset_of!(ClipHookMsg, chm_Type) - 0usize];
7049    ["Offset of field: ClipHookMsg::chm_ChangeCmd"]
7050        [::core::mem::offset_of!(ClipHookMsg, chm_ChangeCmd) - 4usize];
7051    ["Offset of field: ClipHookMsg::chm_ClipID"]
7052        [::core::mem::offset_of!(ClipHookMsg, chm_ClipID) - 8usize];
7053};
7054#[repr(C, packed(2))]
7055#[derive(Debug, Copy, Clone)]
7056pub struct IFFHandle {
7057    pub iff_Stream: ULONG,
7058    pub iff_Flags: ULONG,
7059    pub iff_Depth: LONG,
7060}
7061#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7062const _: () = {
7063    ["Size of IFFHandle"][::core::mem::size_of::<IFFHandle>() - 12usize];
7064    ["Alignment of IFFHandle"][::core::mem::align_of::<IFFHandle>() - 2usize];
7065    ["Offset of field: IFFHandle::iff_Stream"]
7066        [::core::mem::offset_of!(IFFHandle, iff_Stream) - 0usize];
7067    ["Offset of field: IFFHandle::iff_Flags"]
7068        [::core::mem::offset_of!(IFFHandle, iff_Flags) - 4usize];
7069    ["Offset of field: IFFHandle::iff_Depth"]
7070        [::core::mem::offset_of!(IFFHandle, iff_Depth) - 8usize];
7071};
7072#[repr(C, packed(2))]
7073#[derive(Debug, Copy, Clone)]
7074pub struct IFFStreamCmd {
7075    pub sc_Command: LONG,
7076    pub sc_Buf: APTR,
7077    pub sc_NBytes: LONG,
7078}
7079#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7080const _: () = {
7081    ["Size of IFFStreamCmd"][::core::mem::size_of::<IFFStreamCmd>() - 12usize];
7082    ["Alignment of IFFStreamCmd"][::core::mem::align_of::<IFFStreamCmd>() - 2usize];
7083    ["Offset of field: IFFStreamCmd::sc_Command"]
7084        [::core::mem::offset_of!(IFFStreamCmd, sc_Command) - 0usize];
7085    ["Offset of field: IFFStreamCmd::sc_Buf"]
7086        [::core::mem::offset_of!(IFFStreamCmd, sc_Buf) - 4usize];
7087    ["Offset of field: IFFStreamCmd::sc_NBytes"]
7088        [::core::mem::offset_of!(IFFStreamCmd, sc_NBytes) - 8usize];
7089};
7090#[repr(C, packed(2))]
7091#[derive(Debug, Copy, Clone)]
7092pub struct ContextNode {
7093    pub cn_Node: MinNode,
7094    pub cn_ID: LONG,
7095    pub cn_Type: LONG,
7096    pub cn_Size: LONG,
7097    pub cn_Scan: LONG,
7098}
7099#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7100const _: () = {
7101    ["Size of ContextNode"][::core::mem::size_of::<ContextNode>() - 24usize];
7102    ["Alignment of ContextNode"][::core::mem::align_of::<ContextNode>() - 2usize];
7103    ["Offset of field: ContextNode::cn_Node"]
7104        [::core::mem::offset_of!(ContextNode, cn_Node) - 0usize];
7105    ["Offset of field: ContextNode::cn_ID"][::core::mem::offset_of!(ContextNode, cn_ID) - 8usize];
7106    ["Offset of field: ContextNode::cn_Type"]
7107        [::core::mem::offset_of!(ContextNode, cn_Type) - 12usize];
7108    ["Offset of field: ContextNode::cn_Size"]
7109        [::core::mem::offset_of!(ContextNode, cn_Size) - 16usize];
7110    ["Offset of field: ContextNode::cn_Scan"]
7111        [::core::mem::offset_of!(ContextNode, cn_Scan) - 20usize];
7112};
7113#[repr(C, packed(2))]
7114#[derive(Debug, Copy, Clone)]
7115pub struct LocalContextItem {
7116    pub lci_Node: MinNode,
7117    pub lci_ID: ULONG,
7118    pub lci_Type: ULONG,
7119    pub lci_Ident: ULONG,
7120}
7121#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7122const _: () = {
7123    ["Size of LocalContextItem"][::core::mem::size_of::<LocalContextItem>() - 20usize];
7124    ["Alignment of LocalContextItem"][::core::mem::align_of::<LocalContextItem>() - 2usize];
7125    ["Offset of field: LocalContextItem::lci_Node"]
7126        [::core::mem::offset_of!(LocalContextItem, lci_Node) - 0usize];
7127    ["Offset of field: LocalContextItem::lci_ID"]
7128        [::core::mem::offset_of!(LocalContextItem, lci_ID) - 8usize];
7129    ["Offset of field: LocalContextItem::lci_Type"]
7130        [::core::mem::offset_of!(LocalContextItem, lci_Type) - 12usize];
7131    ["Offset of field: LocalContextItem::lci_Ident"]
7132        [::core::mem::offset_of!(LocalContextItem, lci_Ident) - 16usize];
7133};
7134#[repr(C, packed(2))]
7135#[derive(Debug, Copy, Clone)]
7136pub struct StoredProperty {
7137    pub sp_Size: LONG,
7138    pub sp_Data: APTR,
7139}
7140#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7141const _: () = {
7142    ["Size of StoredProperty"][::core::mem::size_of::<StoredProperty>() - 8usize];
7143    ["Alignment of StoredProperty"][::core::mem::align_of::<StoredProperty>() - 2usize];
7144    ["Offset of field: StoredProperty::sp_Size"]
7145        [::core::mem::offset_of!(StoredProperty, sp_Size) - 0usize];
7146    ["Offset of field: StoredProperty::sp_Data"]
7147        [::core::mem::offset_of!(StoredProperty, sp_Data) - 4usize];
7148};
7149#[repr(C, packed(2))]
7150#[derive(Debug, Copy, Clone)]
7151pub struct CollectionItem {
7152    pub ci_Next: *mut CollectionItem,
7153    pub ci_Size: LONG,
7154    pub ci_Data: APTR,
7155}
7156#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7157const _: () = {
7158    ["Size of CollectionItem"][::core::mem::size_of::<CollectionItem>() - 12usize];
7159    ["Alignment of CollectionItem"][::core::mem::align_of::<CollectionItem>() - 2usize];
7160    ["Offset of field: CollectionItem::ci_Next"]
7161        [::core::mem::offset_of!(CollectionItem, ci_Next) - 0usize];
7162    ["Offset of field: CollectionItem::ci_Size"]
7163        [::core::mem::offset_of!(CollectionItem, ci_Size) - 4usize];
7164    ["Offset of field: CollectionItem::ci_Data"]
7165        [::core::mem::offset_of!(CollectionItem, ci_Data) - 8usize];
7166};
7167#[repr(C)]
7168#[derive(Debug, Copy, Clone)]
7169pub struct ClipboardHandle {
7170    pub cbh_Req: IOClipReq,
7171    pub cbh_CBport: MsgPort,
7172    pub cbh_SatisfyPort: MsgPort,
7173}
7174#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7175const _: () = {
7176    ["Size of ClipboardHandle"][::core::mem::size_of::<ClipboardHandle>() - 120usize];
7177    ["Alignment of ClipboardHandle"][::core::mem::align_of::<ClipboardHandle>() - 2usize];
7178    ["Offset of field: ClipboardHandle::cbh_Req"]
7179        [::core::mem::offset_of!(ClipboardHandle, cbh_Req) - 0usize];
7180    ["Offset of field: ClipboardHandle::cbh_CBport"]
7181        [::core::mem::offset_of!(ClipboardHandle, cbh_CBport) - 52usize];
7182    ["Offset of field: ClipboardHandle::cbh_SatisfyPort"]
7183        [::core::mem::offset_of!(ClipboardHandle, cbh_SatisfyPort) - 86usize];
7184};
7185#[repr(C, packed(2))]
7186#[derive(Debug, Copy, Clone)]
7187pub struct DataTypeHeader {
7188    pub dth_Name: STRPTR,
7189    pub dth_BaseName: STRPTR,
7190    pub dth_Pattern: STRPTR,
7191    pub dth_Mask: *mut WORD,
7192    pub dth_GroupID: ULONG,
7193    pub dth_ID: ULONG,
7194    pub dth_MaskLen: WORD,
7195    pub dth_Pad: WORD,
7196    pub dth_Flags: UWORD,
7197    pub dth_Priority: UWORD,
7198}
7199#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7200const _: () = {
7201    ["Size of DataTypeHeader"][::core::mem::size_of::<DataTypeHeader>() - 32usize];
7202    ["Alignment of DataTypeHeader"][::core::mem::align_of::<DataTypeHeader>() - 2usize];
7203    ["Offset of field: DataTypeHeader::dth_Name"]
7204        [::core::mem::offset_of!(DataTypeHeader, dth_Name) - 0usize];
7205    ["Offset of field: DataTypeHeader::dth_BaseName"]
7206        [::core::mem::offset_of!(DataTypeHeader, dth_BaseName) - 4usize];
7207    ["Offset of field: DataTypeHeader::dth_Pattern"]
7208        [::core::mem::offset_of!(DataTypeHeader, dth_Pattern) - 8usize];
7209    ["Offset of field: DataTypeHeader::dth_Mask"]
7210        [::core::mem::offset_of!(DataTypeHeader, dth_Mask) - 12usize];
7211    ["Offset of field: DataTypeHeader::dth_GroupID"]
7212        [::core::mem::offset_of!(DataTypeHeader, dth_GroupID) - 16usize];
7213    ["Offset of field: DataTypeHeader::dth_ID"]
7214        [::core::mem::offset_of!(DataTypeHeader, dth_ID) - 20usize];
7215    ["Offset of field: DataTypeHeader::dth_MaskLen"]
7216        [::core::mem::offset_of!(DataTypeHeader, dth_MaskLen) - 24usize];
7217    ["Offset of field: DataTypeHeader::dth_Pad"]
7218        [::core::mem::offset_of!(DataTypeHeader, dth_Pad) - 26usize];
7219    ["Offset of field: DataTypeHeader::dth_Flags"]
7220        [::core::mem::offset_of!(DataTypeHeader, dth_Flags) - 28usize];
7221    ["Offset of field: DataTypeHeader::dth_Priority"]
7222        [::core::mem::offset_of!(DataTypeHeader, dth_Priority) - 30usize];
7223};
7224#[repr(C, packed(2))]
7225#[derive(Debug, Copy, Clone)]
7226pub struct DTHookContext {
7227    pub dthc_SysBase: *mut Library,
7228    pub dthc_DOSBase: *mut Library,
7229    pub dthc_IFFParseBase: *mut Library,
7230    pub dthc_UtilityBase: *mut Library,
7231    pub dthc_Lock: BPTR,
7232    pub dthc_FIB: *mut FileInfoBlock,
7233    pub dthc_FileHandle: BPTR,
7234    pub dthc_IFF: *mut IFFHandle,
7235    pub dthc_Buffer: STRPTR,
7236    pub dthc_BufferLength: ULONG,
7237}
7238#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7239const _: () = {
7240    ["Size of DTHookContext"][::core::mem::size_of::<DTHookContext>() - 40usize];
7241    ["Alignment of DTHookContext"][::core::mem::align_of::<DTHookContext>() - 2usize];
7242    ["Offset of field: DTHookContext::dthc_SysBase"]
7243        [::core::mem::offset_of!(DTHookContext, dthc_SysBase) - 0usize];
7244    ["Offset of field: DTHookContext::dthc_DOSBase"]
7245        [::core::mem::offset_of!(DTHookContext, dthc_DOSBase) - 4usize];
7246    ["Offset of field: DTHookContext::dthc_IFFParseBase"]
7247        [::core::mem::offset_of!(DTHookContext, dthc_IFFParseBase) - 8usize];
7248    ["Offset of field: DTHookContext::dthc_UtilityBase"]
7249        [::core::mem::offset_of!(DTHookContext, dthc_UtilityBase) - 12usize];
7250    ["Offset of field: DTHookContext::dthc_Lock"]
7251        [::core::mem::offset_of!(DTHookContext, dthc_Lock) - 16usize];
7252    ["Offset of field: DTHookContext::dthc_FIB"]
7253        [::core::mem::offset_of!(DTHookContext, dthc_FIB) - 20usize];
7254    ["Offset of field: DTHookContext::dthc_FileHandle"]
7255        [::core::mem::offset_of!(DTHookContext, dthc_FileHandle) - 24usize];
7256    ["Offset of field: DTHookContext::dthc_IFF"]
7257        [::core::mem::offset_of!(DTHookContext, dthc_IFF) - 28usize];
7258    ["Offset of field: DTHookContext::dthc_Buffer"]
7259        [::core::mem::offset_of!(DTHookContext, dthc_Buffer) - 32usize];
7260    ["Offset of field: DTHookContext::dthc_BufferLength"]
7261        [::core::mem::offset_of!(DTHookContext, dthc_BufferLength) - 36usize];
7262};
7263#[repr(C, packed(2))]
7264#[derive(Debug, Copy, Clone)]
7265pub struct Tool {
7266    pub tn_Which: UWORD,
7267    pub tn_Flags: UWORD,
7268    pub tn_Program: STRPTR,
7269}
7270#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7271const _: () = {
7272    ["Size of Tool"][::core::mem::size_of::<Tool>() - 8usize];
7273    ["Alignment of Tool"][::core::mem::align_of::<Tool>() - 2usize];
7274    ["Offset of field: Tool::tn_Which"][::core::mem::offset_of!(Tool, tn_Which) - 0usize];
7275    ["Offset of field: Tool::tn_Flags"][::core::mem::offset_of!(Tool, tn_Flags) - 2usize];
7276    ["Offset of field: Tool::tn_Program"][::core::mem::offset_of!(Tool, tn_Program) - 4usize];
7277};
7278#[repr(C, packed(2))]
7279#[derive(Debug, Copy, Clone)]
7280pub struct DataType {
7281    pub dtn_Node1: Node,
7282    pub dtn_Node2: Node,
7283    pub dtn_Header: *mut DataTypeHeader,
7284    pub dtn_ToolList: List,
7285    pub dtn_FunctionName: STRPTR,
7286    pub dtn_AttrList: *mut TagItem,
7287    pub dtn_Length: ULONG,
7288}
7289#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7290const _: () = {
7291    ["Size of DataType"][::core::mem::size_of::<DataType>() - 58usize];
7292    ["Alignment of DataType"][::core::mem::align_of::<DataType>() - 2usize];
7293    ["Offset of field: DataType::dtn_Node1"][::core::mem::offset_of!(DataType, dtn_Node1) - 0usize];
7294    ["Offset of field: DataType::dtn_Node2"]
7295        [::core::mem::offset_of!(DataType, dtn_Node2) - 14usize];
7296    ["Offset of field: DataType::dtn_Header"]
7297        [::core::mem::offset_of!(DataType, dtn_Header) - 28usize];
7298    ["Offset of field: DataType::dtn_ToolList"]
7299        [::core::mem::offset_of!(DataType, dtn_ToolList) - 32usize];
7300    ["Offset of field: DataType::dtn_FunctionName"]
7301        [::core::mem::offset_of!(DataType, dtn_FunctionName) - 46usize];
7302    ["Offset of field: DataType::dtn_AttrList"]
7303        [::core::mem::offset_of!(DataType, dtn_AttrList) - 50usize];
7304    ["Offset of field: DataType::dtn_Length"]
7305        [::core::mem::offset_of!(DataType, dtn_Length) - 54usize];
7306};
7307#[repr(C, packed(2))]
7308#[derive(Debug, Copy, Clone)]
7309pub struct ToolNode {
7310    pub tn_Node: Node,
7311    pub tn_Tool: Tool,
7312    pub tn_Length: ULONG,
7313}
7314#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7315const _: () = {
7316    ["Size of ToolNode"][::core::mem::size_of::<ToolNode>() - 26usize];
7317    ["Alignment of ToolNode"][::core::mem::align_of::<ToolNode>() - 2usize];
7318    ["Offset of field: ToolNode::tn_Node"][::core::mem::offset_of!(ToolNode, tn_Node) - 0usize];
7319    ["Offset of field: ToolNode::tn_Tool"][::core::mem::offset_of!(ToolNode, tn_Tool) - 14usize];
7320    ["Offset of field: ToolNode::tn_Length"]
7321        [::core::mem::offset_of!(ToolNode, tn_Length) - 22usize];
7322};
7323#[repr(C)]
7324#[derive(Debug, Copy, Clone)]
7325pub struct Rectangle {
7326    pub MinX: WORD,
7327    pub MinY: WORD,
7328    pub MaxX: WORD,
7329    pub MaxY: WORD,
7330}
7331#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7332const _: () = {
7333    ["Size of Rectangle"][::core::mem::size_of::<Rectangle>() - 8usize];
7334    ["Alignment of Rectangle"][::core::mem::align_of::<Rectangle>() - 2usize];
7335    ["Offset of field: Rectangle::MinX"][::core::mem::offset_of!(Rectangle, MinX) - 0usize];
7336    ["Offset of field: Rectangle::MinY"][::core::mem::offset_of!(Rectangle, MinY) - 2usize];
7337    ["Offset of field: Rectangle::MaxX"][::core::mem::offset_of!(Rectangle, MaxX) - 4usize];
7338    ["Offset of field: Rectangle::MaxY"][::core::mem::offset_of!(Rectangle, MaxY) - 6usize];
7339};
7340#[repr(C, packed(2))]
7341#[derive(Debug, Copy, Clone)]
7342pub struct Rect32 {
7343    pub MinX: LONG,
7344    pub MinY: LONG,
7345    pub MaxX: LONG,
7346    pub MaxY: LONG,
7347}
7348#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7349const _: () = {
7350    ["Size of Rect32"][::core::mem::size_of::<Rect32>() - 16usize];
7351    ["Alignment of Rect32"][::core::mem::align_of::<Rect32>() - 2usize];
7352    ["Offset of field: Rect32::MinX"][::core::mem::offset_of!(Rect32, MinX) - 0usize];
7353    ["Offset of field: Rect32::MinY"][::core::mem::offset_of!(Rect32, MinY) - 4usize];
7354    ["Offset of field: Rect32::MaxX"][::core::mem::offset_of!(Rect32, MaxX) - 8usize];
7355    ["Offset of field: Rect32::MaxY"][::core::mem::offset_of!(Rect32, MaxY) - 12usize];
7356};
7357#[repr(C)]
7358#[derive(Debug, Copy, Clone)]
7359pub struct tPoint {
7360    pub x: WORD,
7361    pub y: WORD,
7362}
7363#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7364const _: () = {
7365    ["Size of tPoint"][::core::mem::size_of::<tPoint>() - 4usize];
7366    ["Alignment of tPoint"][::core::mem::align_of::<tPoint>() - 2usize];
7367    ["Offset of field: tPoint::x"][::core::mem::offset_of!(tPoint, x) - 0usize];
7368    ["Offset of field: tPoint::y"][::core::mem::offset_of!(tPoint, y) - 2usize];
7369};
7370pub type Point = tPoint;
7371pub type PLANEPTR = *mut UBYTE;
7372#[repr(C, packed(2))]
7373#[derive(Debug, Copy, Clone)]
7374pub struct BitMap {
7375    pub BytesPerRow: UWORD,
7376    pub Rows: UWORD,
7377    pub Flags: UBYTE,
7378    pub Depth: UBYTE,
7379    pub pad: UWORD,
7380    pub Planes: [PLANEPTR; 8usize],
7381}
7382#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7383const _: () = {
7384    ["Size of BitMap"][::core::mem::size_of::<BitMap>() - 40usize];
7385    ["Alignment of BitMap"][::core::mem::align_of::<BitMap>() - 2usize];
7386    ["Offset of field: BitMap::BytesPerRow"][::core::mem::offset_of!(BitMap, BytesPerRow) - 0usize];
7387    ["Offset of field: BitMap::Rows"][::core::mem::offset_of!(BitMap, Rows) - 2usize];
7388    ["Offset of field: BitMap::Flags"][::core::mem::offset_of!(BitMap, Flags) - 4usize];
7389    ["Offset of field: BitMap::Depth"][::core::mem::offset_of!(BitMap, Depth) - 5usize];
7390    ["Offset of field: BitMap::pad"][::core::mem::offset_of!(BitMap, pad) - 6usize];
7391    ["Offset of field: BitMap::Planes"][::core::mem::offset_of!(BitMap, Planes) - 8usize];
7392};
7393#[repr(C, packed(2))]
7394#[derive(Debug, Copy, Clone)]
7395pub struct Layer {
7396    pub front: *mut Layer,
7397    pub back: *mut Layer,
7398    pub ClipRect: *mut ClipRect,
7399    pub rp: *mut RastPort,
7400    pub bounds: Rectangle,
7401    pub nlink: *mut Layer,
7402    pub priority: UWORD,
7403    pub Flags: UWORD,
7404    pub SuperBitMap: *mut BitMap,
7405    pub SuperClipRect: *mut ClipRect,
7406    pub Window: APTR,
7407    pub Scroll_X: WORD,
7408    pub Scroll_Y: WORD,
7409    pub OnScreen: *mut ClipRect,
7410    pub OffScreen: *mut ClipRect,
7411    pub Backup: *mut ClipRect,
7412    pub SuperSaveClipRects: *mut ClipRect,
7413    pub Undamaged: *mut ClipRect,
7414    pub LayerInfo: *mut Layer_Info,
7415    pub Lock: SignalSemaphore,
7416    pub BackFill: *mut Hook,
7417    pub reserved1: ULONG,
7418    pub ClipRegion: *mut Region,
7419    pub clipped: *mut ClipRect,
7420    pub Width: WORD,
7421    pub Height: WORD,
7422    pub reserved2: [UBYTE; 18usize],
7423    pub DamageList: *mut Region,
7424}
7425#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7426const _: () = {
7427    ["Size of Layer"][::core::mem::size_of::<Layer>() - 160usize];
7428    ["Alignment of Layer"][::core::mem::align_of::<Layer>() - 2usize];
7429    ["Offset of field: Layer::front"][::core::mem::offset_of!(Layer, front) - 0usize];
7430    ["Offset of field: Layer::back"][::core::mem::offset_of!(Layer, back) - 4usize];
7431    ["Offset of field: Layer::ClipRect"][::core::mem::offset_of!(Layer, ClipRect) - 8usize];
7432    ["Offset of field: Layer::rp"][::core::mem::offset_of!(Layer, rp) - 12usize];
7433    ["Offset of field: Layer::bounds"][::core::mem::offset_of!(Layer, bounds) - 16usize];
7434    ["Offset of field: Layer::nlink"][::core::mem::offset_of!(Layer, nlink) - 24usize];
7435    ["Offset of field: Layer::priority"][::core::mem::offset_of!(Layer, priority) - 28usize];
7436    ["Offset of field: Layer::Flags"][::core::mem::offset_of!(Layer, Flags) - 30usize];
7437    ["Offset of field: Layer::SuperBitMap"][::core::mem::offset_of!(Layer, SuperBitMap) - 32usize];
7438    ["Offset of field: Layer::SuperClipRect"]
7439        [::core::mem::offset_of!(Layer, SuperClipRect) - 36usize];
7440    ["Offset of field: Layer::Window"][::core::mem::offset_of!(Layer, Window) - 40usize];
7441    ["Offset of field: Layer::Scroll_X"][::core::mem::offset_of!(Layer, Scroll_X) - 44usize];
7442    ["Offset of field: Layer::Scroll_Y"][::core::mem::offset_of!(Layer, Scroll_Y) - 46usize];
7443    ["Offset of field: Layer::OnScreen"][::core::mem::offset_of!(Layer, OnScreen) - 48usize];
7444    ["Offset of field: Layer::OffScreen"][::core::mem::offset_of!(Layer, OffScreen) - 52usize];
7445    ["Offset of field: Layer::Backup"][::core::mem::offset_of!(Layer, Backup) - 56usize];
7446    ["Offset of field: Layer::SuperSaveClipRects"]
7447        [::core::mem::offset_of!(Layer, SuperSaveClipRects) - 60usize];
7448    ["Offset of field: Layer::Undamaged"][::core::mem::offset_of!(Layer, Undamaged) - 64usize];
7449    ["Offset of field: Layer::LayerInfo"][::core::mem::offset_of!(Layer, LayerInfo) - 68usize];
7450    ["Offset of field: Layer::Lock"][::core::mem::offset_of!(Layer, Lock) - 72usize];
7451    ["Offset of field: Layer::BackFill"][::core::mem::offset_of!(Layer, BackFill) - 118usize];
7452    ["Offset of field: Layer::reserved1"][::core::mem::offset_of!(Layer, reserved1) - 122usize];
7453    ["Offset of field: Layer::ClipRegion"][::core::mem::offset_of!(Layer, ClipRegion) - 126usize];
7454    ["Offset of field: Layer::clipped"][::core::mem::offset_of!(Layer, clipped) - 130usize];
7455    ["Offset of field: Layer::Width"][::core::mem::offset_of!(Layer, Width) - 134usize];
7456    ["Offset of field: Layer::Height"][::core::mem::offset_of!(Layer, Height) - 136usize];
7457    ["Offset of field: Layer::reserved2"][::core::mem::offset_of!(Layer, reserved2) - 138usize];
7458    ["Offset of field: Layer::DamageList"][::core::mem::offset_of!(Layer, DamageList) - 156usize];
7459};
7460#[repr(C, packed(2))]
7461#[derive(Debug, Copy, Clone)]
7462pub struct ClipRect {
7463    pub Next: *mut ClipRect,
7464    pub reservedlink: *mut ClipRect,
7465    pub obscured: LONG,
7466    pub BitMap: *mut BitMap,
7467    pub bounds: Rectangle,
7468    pub vlink: *mut ClipRect,
7469    pub home: *mut Layer_Info,
7470    pub reserved: APTR,
7471}
7472#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7473const _: () = {
7474    ["Size of ClipRect"][::core::mem::size_of::<ClipRect>() - 36usize];
7475    ["Alignment of ClipRect"][::core::mem::align_of::<ClipRect>() - 2usize];
7476    ["Offset of field: ClipRect::Next"][::core::mem::offset_of!(ClipRect, Next) - 0usize];
7477    ["Offset of field: ClipRect::reservedlink"]
7478        [::core::mem::offset_of!(ClipRect, reservedlink) - 4usize];
7479    ["Offset of field: ClipRect::obscured"][::core::mem::offset_of!(ClipRect, obscured) - 8usize];
7480    ["Offset of field: ClipRect::BitMap"][::core::mem::offset_of!(ClipRect, BitMap) - 12usize];
7481    ["Offset of field: ClipRect::bounds"][::core::mem::offset_of!(ClipRect, bounds) - 16usize];
7482    ["Offset of field: ClipRect::vlink"][::core::mem::offset_of!(ClipRect, vlink) - 24usize];
7483    ["Offset of field: ClipRect::home"][::core::mem::offset_of!(ClipRect, home) - 28usize];
7484    ["Offset of field: ClipRect::reserved"][::core::mem::offset_of!(ClipRect, reserved) - 32usize];
7485};
7486#[repr(C)]
7487#[derive(Copy, Clone)]
7488pub struct CopIns {
7489    pub OpCode: WORD,
7490    pub u3: CopIns__bindgen_ty_1,
7491}
7492#[repr(C, packed(2))]
7493#[derive(Copy, Clone)]
7494pub union CopIns__bindgen_ty_1 {
7495    pub nxtlist: *mut CopList,
7496    pub u4: CopIns__bindgen_ty_1__bindgen_ty_1,
7497}
7498#[repr(C)]
7499#[derive(Copy, Clone)]
7500pub struct CopIns__bindgen_ty_1__bindgen_ty_1 {
7501    pub u1: CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
7502    pub u2: CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2,
7503}
7504#[repr(C)]
7505#[derive(Copy, Clone)]
7506pub union CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
7507    pub VWaitPos: WORD,
7508    pub DestAddr: WORD,
7509}
7510#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7511const _: () = {
7512    ["Size of CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1"]
7513        [::core::mem::size_of::<CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>() - 2usize];
7514    ["Alignment of CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1"]
7515        [::core::mem::align_of::<CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>() - 2usize];
7516    ["Offset of field: CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1::VWaitPos"][::core::mem::offset_of!(
7517        CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
7518        VWaitPos
7519    ) - 0usize];
7520    ["Offset of field: CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1::DestAddr"][::core::mem::offset_of!(
7521        CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
7522        DestAddr
7523    ) - 0usize];
7524};
7525#[repr(C)]
7526#[derive(Copy, Clone)]
7527pub union CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2 {
7528    pub HWaitPos: WORD,
7529    pub DestData: WORD,
7530}
7531#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7532const _: () = {
7533    ["Size of CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2"]
7534        [::core::mem::size_of::<CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2>() - 2usize];
7535    ["Alignment of CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2"]
7536        [::core::mem::align_of::<CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2>() - 2usize];
7537    ["Offset of field: CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2::HWaitPos"][::core::mem::offset_of!(
7538        CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2,
7539        HWaitPos
7540    ) - 0usize];
7541    ["Offset of field: CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2::DestData"][::core::mem::offset_of!(
7542        CopIns__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2,
7543        DestData
7544    ) - 0usize];
7545};
7546#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7547const _: () = {
7548    ["Size of CopIns__bindgen_ty_1__bindgen_ty_1"]
7549        [::core::mem::size_of::<CopIns__bindgen_ty_1__bindgen_ty_1>() - 4usize];
7550    ["Alignment of CopIns__bindgen_ty_1__bindgen_ty_1"]
7551        [::core::mem::align_of::<CopIns__bindgen_ty_1__bindgen_ty_1>() - 2usize];
7552    ["Offset of field: CopIns__bindgen_ty_1__bindgen_ty_1::u1"]
7553        [::core::mem::offset_of!(CopIns__bindgen_ty_1__bindgen_ty_1, u1) - 0usize];
7554    ["Offset of field: CopIns__bindgen_ty_1__bindgen_ty_1::u2"]
7555        [::core::mem::offset_of!(CopIns__bindgen_ty_1__bindgen_ty_1, u2) - 2usize];
7556};
7557#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7558const _: () = {
7559    ["Size of CopIns__bindgen_ty_1"][::core::mem::size_of::<CopIns__bindgen_ty_1>() - 4usize];
7560    ["Alignment of CopIns__bindgen_ty_1"][::core::mem::align_of::<CopIns__bindgen_ty_1>() - 2usize];
7561    ["Offset of field: CopIns__bindgen_ty_1::nxtlist"]
7562        [::core::mem::offset_of!(CopIns__bindgen_ty_1, nxtlist) - 0usize];
7563    ["Offset of field: CopIns__bindgen_ty_1::u4"]
7564        [::core::mem::offset_of!(CopIns__bindgen_ty_1, u4) - 0usize];
7565};
7566#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7567const _: () = {
7568    ["Size of CopIns"][::core::mem::size_of::<CopIns>() - 6usize];
7569    ["Alignment of CopIns"][::core::mem::align_of::<CopIns>() - 2usize];
7570    ["Offset of field: CopIns::OpCode"][::core::mem::offset_of!(CopIns, OpCode) - 0usize];
7571    ["Offset of field: CopIns::u3"][::core::mem::offset_of!(CopIns, u3) - 2usize];
7572};
7573#[repr(C, packed(2))]
7574#[derive(Debug, Copy, Clone)]
7575pub struct cprlist {
7576    pub Next: *mut cprlist,
7577    pub start: *mut UWORD,
7578    pub MaxCount: WORD,
7579}
7580#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7581const _: () = {
7582    ["Size of cprlist"][::core::mem::size_of::<cprlist>() - 10usize];
7583    ["Alignment of cprlist"][::core::mem::align_of::<cprlist>() - 2usize];
7584    ["Offset of field: cprlist::Next"][::core::mem::offset_of!(cprlist, Next) - 0usize];
7585    ["Offset of field: cprlist::start"][::core::mem::offset_of!(cprlist, start) - 4usize];
7586    ["Offset of field: cprlist::MaxCount"][::core::mem::offset_of!(cprlist, MaxCount) - 8usize];
7587};
7588#[repr(C, packed(2))]
7589#[derive(Debug, Copy, Clone)]
7590pub struct CopList {
7591    pub Next: *mut CopList,
7592    pub _CopList: *mut CopList,
7593    pub _ViewPort: *mut ViewPort,
7594    pub CopIns: *mut CopIns,
7595    pub CopPtr: *mut CopIns,
7596    pub CopLStart: *mut UWORD,
7597    pub CopSStart: *mut UWORD,
7598    pub Count: WORD,
7599    pub MaxCount: WORD,
7600    pub DyOffset: WORD,
7601    pub SLRepeat: UWORD,
7602    pub Flags: UWORD,
7603}
7604#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7605const _: () = {
7606    ["Size of CopList"][::core::mem::size_of::<CopList>() - 38usize];
7607    ["Alignment of CopList"][::core::mem::align_of::<CopList>() - 2usize];
7608    ["Offset of field: CopList::Next"][::core::mem::offset_of!(CopList, Next) - 0usize];
7609    ["Offset of field: CopList::_CopList"][::core::mem::offset_of!(CopList, _CopList) - 4usize];
7610    ["Offset of field: CopList::_ViewPort"][::core::mem::offset_of!(CopList, _ViewPort) - 8usize];
7611    ["Offset of field: CopList::CopIns"][::core::mem::offset_of!(CopList, CopIns) - 12usize];
7612    ["Offset of field: CopList::CopPtr"][::core::mem::offset_of!(CopList, CopPtr) - 16usize];
7613    ["Offset of field: CopList::CopLStart"][::core::mem::offset_of!(CopList, CopLStart) - 20usize];
7614    ["Offset of field: CopList::CopSStart"][::core::mem::offset_of!(CopList, CopSStart) - 24usize];
7615    ["Offset of field: CopList::Count"][::core::mem::offset_of!(CopList, Count) - 28usize];
7616    ["Offset of field: CopList::MaxCount"][::core::mem::offset_of!(CopList, MaxCount) - 30usize];
7617    ["Offset of field: CopList::DyOffset"][::core::mem::offset_of!(CopList, DyOffset) - 32usize];
7618    ["Offset of field: CopList::SLRepeat"][::core::mem::offset_of!(CopList, SLRepeat) - 34usize];
7619    ["Offset of field: CopList::Flags"][::core::mem::offset_of!(CopList, Flags) - 36usize];
7620};
7621#[repr(C, packed(2))]
7622#[derive(Debug, Copy, Clone)]
7623pub struct UCopList {
7624    pub Next: *mut UCopList,
7625    pub FirstCopList: *mut CopList,
7626    pub CopList: *mut CopList,
7627}
7628#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7629const _: () = {
7630    ["Size of UCopList"][::core::mem::size_of::<UCopList>() - 12usize];
7631    ["Alignment of UCopList"][::core::mem::align_of::<UCopList>() - 2usize];
7632    ["Offset of field: UCopList::Next"][::core::mem::offset_of!(UCopList, Next) - 0usize];
7633    ["Offset of field: UCopList::FirstCopList"]
7634        [::core::mem::offset_of!(UCopList, FirstCopList) - 4usize];
7635    ["Offset of field: UCopList::CopList"][::core::mem::offset_of!(UCopList, CopList) - 8usize];
7636};
7637#[repr(C)]
7638#[derive(Debug, Copy, Clone)]
7639pub struct copinit {
7640    pub vsync_hblank: [UWORD; 2usize],
7641    pub diagstrt: [UWORD; 12usize],
7642    pub fm0: [UWORD; 2usize],
7643    pub diwstart: [UWORD; 10usize],
7644    pub bplcon2: [UWORD; 2usize],
7645    pub sprfix: [UWORD; 16usize],
7646    pub sprstrtup: [UWORD; 32usize],
7647    pub wait14: [UWORD; 2usize],
7648    pub norm_hblank: [UWORD; 2usize],
7649    pub jump: [UWORD; 2usize],
7650    pub wait_forever: [UWORD; 6usize],
7651    pub sprstop: [UWORD; 8usize],
7652}
7653#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7654const _: () = {
7655    ["Size of copinit"][::core::mem::size_of::<copinit>() - 192usize];
7656    ["Alignment of copinit"][::core::mem::align_of::<copinit>() - 2usize];
7657    ["Offset of field: copinit::vsync_hblank"]
7658        [::core::mem::offset_of!(copinit, vsync_hblank) - 0usize];
7659    ["Offset of field: copinit::diagstrt"][::core::mem::offset_of!(copinit, diagstrt) - 4usize];
7660    ["Offset of field: copinit::fm0"][::core::mem::offset_of!(copinit, fm0) - 28usize];
7661    ["Offset of field: copinit::diwstart"][::core::mem::offset_of!(copinit, diwstart) - 32usize];
7662    ["Offset of field: copinit::bplcon2"][::core::mem::offset_of!(copinit, bplcon2) - 52usize];
7663    ["Offset of field: copinit::sprfix"][::core::mem::offset_of!(copinit, sprfix) - 56usize];
7664    ["Offset of field: copinit::sprstrtup"][::core::mem::offset_of!(copinit, sprstrtup) - 88usize];
7665    ["Offset of field: copinit::wait14"][::core::mem::offset_of!(copinit, wait14) - 152usize];
7666    ["Offset of field: copinit::norm_hblank"]
7667        [::core::mem::offset_of!(copinit, norm_hblank) - 156usize];
7668    ["Offset of field: copinit::jump"][::core::mem::offset_of!(copinit, jump) - 160usize];
7669    ["Offset of field: copinit::wait_forever"]
7670        [::core::mem::offset_of!(copinit, wait_forever) - 164usize];
7671    ["Offset of field: copinit::sprstop"][::core::mem::offset_of!(copinit, sprstop) - 176usize];
7672};
7673#[repr(C, packed(2))]
7674#[derive(Debug, Copy, Clone)]
7675pub struct ExtendedNode {
7676    pub xln_Succ: *mut Node,
7677    pub xln_Pred: *mut Node,
7678    pub xln_Type: UBYTE,
7679    pub xln_Pri: BYTE,
7680    pub xln_Name: *mut ::core::ffi::c_char,
7681    pub xln_Subsystem: UBYTE,
7682    pub xln_Subtype: UBYTE,
7683    pub xln_Library: *mut GfxBase,
7684    pub xln_Init: FPTR,
7685}
7686#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7687const _: () = {
7688    ["Size of ExtendedNode"][::core::mem::size_of::<ExtendedNode>() - 24usize];
7689    ["Alignment of ExtendedNode"][::core::mem::align_of::<ExtendedNode>() - 2usize];
7690    ["Offset of field: ExtendedNode::xln_Succ"]
7691        [::core::mem::offset_of!(ExtendedNode, xln_Succ) - 0usize];
7692    ["Offset of field: ExtendedNode::xln_Pred"]
7693        [::core::mem::offset_of!(ExtendedNode, xln_Pred) - 4usize];
7694    ["Offset of field: ExtendedNode::xln_Type"]
7695        [::core::mem::offset_of!(ExtendedNode, xln_Type) - 8usize];
7696    ["Offset of field: ExtendedNode::xln_Pri"]
7697        [::core::mem::offset_of!(ExtendedNode, xln_Pri) - 9usize];
7698    ["Offset of field: ExtendedNode::xln_Name"]
7699        [::core::mem::offset_of!(ExtendedNode, xln_Name) - 10usize];
7700    ["Offset of field: ExtendedNode::xln_Subsystem"]
7701        [::core::mem::offset_of!(ExtendedNode, xln_Subsystem) - 14usize];
7702    ["Offset of field: ExtendedNode::xln_Subtype"]
7703        [::core::mem::offset_of!(ExtendedNode, xln_Subtype) - 15usize];
7704    ["Offset of field: ExtendedNode::xln_Library"]
7705        [::core::mem::offset_of!(ExtendedNode, xln_Library) - 16usize];
7706    ["Offset of field: ExtendedNode::xln_Init"]
7707        [::core::mem::offset_of!(ExtendedNode, xln_Init) - 20usize];
7708};
7709#[repr(C, packed(2))]
7710#[derive(Debug, Copy, Clone)]
7711pub struct MonitorSpec {
7712    pub ms_Node: ExtendedNode,
7713    pub ms_Flags: UWORD,
7714    pub ratioh: LONG,
7715    pub ratiov: LONG,
7716    pub total_rows: UWORD,
7717    pub total_colorclocks: UWORD,
7718    pub DeniseMaxDisplayColumn: UWORD,
7719    pub BeamCon0: UWORD,
7720    pub min_row: UWORD,
7721    pub ms_Special: *mut SpecialMonitor,
7722    pub ms_OpenCount: WORD,
7723    pub ms_transform: FPTR,
7724    pub ms_translate: FPTR,
7725    pub ms_scale: FPTR,
7726    pub ms_xoffset: UWORD,
7727    pub ms_yoffset: UWORD,
7728    pub ms_LegalView: Rectangle,
7729    pub ms_maxoscan: FPTR,
7730    pub ms_videoscan: FPTR,
7731    pub DeniseMinDisplayColumn: UWORD,
7732    pub DisplayCompatible: ULONG,
7733    pub DisplayInfoDataBase: List,
7734    pub DisplayInfoDataBaseSemaphore: SignalSemaphore,
7735    pub ms_MrgCop: FPTR,
7736    pub ms_LoadView: FPTR,
7737    pub ms_KillView: FPTR,
7738}
7739#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7740const _: () = {
7741    ["Size of MonitorSpec"][::core::mem::size_of::<MonitorSpec>() - 160usize];
7742    ["Alignment of MonitorSpec"][::core::mem::align_of::<MonitorSpec>() - 2usize];
7743    ["Offset of field: MonitorSpec::ms_Node"]
7744        [::core::mem::offset_of!(MonitorSpec, ms_Node) - 0usize];
7745    ["Offset of field: MonitorSpec::ms_Flags"]
7746        [::core::mem::offset_of!(MonitorSpec, ms_Flags) - 24usize];
7747    ["Offset of field: MonitorSpec::ratioh"]
7748        [::core::mem::offset_of!(MonitorSpec, ratioh) - 26usize];
7749    ["Offset of field: MonitorSpec::ratiov"]
7750        [::core::mem::offset_of!(MonitorSpec, ratiov) - 30usize];
7751    ["Offset of field: MonitorSpec::total_rows"]
7752        [::core::mem::offset_of!(MonitorSpec, total_rows) - 34usize];
7753    ["Offset of field: MonitorSpec::total_colorclocks"]
7754        [::core::mem::offset_of!(MonitorSpec, total_colorclocks) - 36usize];
7755    ["Offset of field: MonitorSpec::DeniseMaxDisplayColumn"]
7756        [::core::mem::offset_of!(MonitorSpec, DeniseMaxDisplayColumn) - 38usize];
7757    ["Offset of field: MonitorSpec::BeamCon0"]
7758        [::core::mem::offset_of!(MonitorSpec, BeamCon0) - 40usize];
7759    ["Offset of field: MonitorSpec::min_row"]
7760        [::core::mem::offset_of!(MonitorSpec, min_row) - 42usize];
7761    ["Offset of field: MonitorSpec::ms_Special"]
7762        [::core::mem::offset_of!(MonitorSpec, ms_Special) - 44usize];
7763    ["Offset of field: MonitorSpec::ms_OpenCount"]
7764        [::core::mem::offset_of!(MonitorSpec, ms_OpenCount) - 48usize];
7765    ["Offset of field: MonitorSpec::ms_transform"]
7766        [::core::mem::offset_of!(MonitorSpec, ms_transform) - 50usize];
7767    ["Offset of field: MonitorSpec::ms_translate"]
7768        [::core::mem::offset_of!(MonitorSpec, ms_translate) - 54usize];
7769    ["Offset of field: MonitorSpec::ms_scale"]
7770        [::core::mem::offset_of!(MonitorSpec, ms_scale) - 58usize];
7771    ["Offset of field: MonitorSpec::ms_xoffset"]
7772        [::core::mem::offset_of!(MonitorSpec, ms_xoffset) - 62usize];
7773    ["Offset of field: MonitorSpec::ms_yoffset"]
7774        [::core::mem::offset_of!(MonitorSpec, ms_yoffset) - 64usize];
7775    ["Offset of field: MonitorSpec::ms_LegalView"]
7776        [::core::mem::offset_of!(MonitorSpec, ms_LegalView) - 66usize];
7777    ["Offset of field: MonitorSpec::ms_maxoscan"]
7778        [::core::mem::offset_of!(MonitorSpec, ms_maxoscan) - 74usize];
7779    ["Offset of field: MonitorSpec::ms_videoscan"]
7780        [::core::mem::offset_of!(MonitorSpec, ms_videoscan) - 78usize];
7781    ["Offset of field: MonitorSpec::DeniseMinDisplayColumn"]
7782        [::core::mem::offset_of!(MonitorSpec, DeniseMinDisplayColumn) - 82usize];
7783    ["Offset of field: MonitorSpec::DisplayCompatible"]
7784        [::core::mem::offset_of!(MonitorSpec, DisplayCompatible) - 84usize];
7785    ["Offset of field: MonitorSpec::DisplayInfoDataBase"]
7786        [::core::mem::offset_of!(MonitorSpec, DisplayInfoDataBase) - 88usize];
7787    ["Offset of field: MonitorSpec::DisplayInfoDataBaseSemaphore"]
7788        [::core::mem::offset_of!(MonitorSpec, DisplayInfoDataBaseSemaphore) - 102usize];
7789    ["Offset of field: MonitorSpec::ms_MrgCop"]
7790        [::core::mem::offset_of!(MonitorSpec, ms_MrgCop) - 148usize];
7791    ["Offset of field: MonitorSpec::ms_LoadView"]
7792        [::core::mem::offset_of!(MonitorSpec, ms_LoadView) - 152usize];
7793    ["Offset of field: MonitorSpec::ms_KillView"]
7794        [::core::mem::offset_of!(MonitorSpec, ms_KillView) - 156usize];
7795};
7796#[repr(C)]
7797#[derive(Debug, Copy, Clone)]
7798pub struct AnalogSignalInterval {
7799    pub asi_Start: UWORD,
7800    pub asi_Stop: UWORD,
7801}
7802#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7803const _: () = {
7804    ["Size of AnalogSignalInterval"][::core::mem::size_of::<AnalogSignalInterval>() - 4usize];
7805    ["Alignment of AnalogSignalInterval"][::core::mem::align_of::<AnalogSignalInterval>() - 2usize];
7806    ["Offset of field: AnalogSignalInterval::asi_Start"]
7807        [::core::mem::offset_of!(AnalogSignalInterval, asi_Start) - 0usize];
7808    ["Offset of field: AnalogSignalInterval::asi_Stop"]
7809        [::core::mem::offset_of!(AnalogSignalInterval, asi_Stop) - 2usize];
7810};
7811#[repr(C, packed(2))]
7812#[derive(Debug, Copy, Clone)]
7813pub struct SpecialMonitor {
7814    pub spm_Node: ExtendedNode,
7815    pub spm_Flags: UWORD,
7816    pub do_monitor: FPTR,
7817    pub reserved1: FPTR,
7818    pub reserved2: FPTR,
7819    pub reserved3: FPTR,
7820    pub hblank: AnalogSignalInterval,
7821    pub vblank: AnalogSignalInterval,
7822    pub hsync: AnalogSignalInterval,
7823    pub vsync: AnalogSignalInterval,
7824}
7825#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7826const _: () = {
7827    ["Size of SpecialMonitor"][::core::mem::size_of::<SpecialMonitor>() - 58usize];
7828    ["Alignment of SpecialMonitor"][::core::mem::align_of::<SpecialMonitor>() - 2usize];
7829    ["Offset of field: SpecialMonitor::spm_Node"]
7830        [::core::mem::offset_of!(SpecialMonitor, spm_Node) - 0usize];
7831    ["Offset of field: SpecialMonitor::spm_Flags"]
7832        [::core::mem::offset_of!(SpecialMonitor, spm_Flags) - 24usize];
7833    ["Offset of field: SpecialMonitor::do_monitor"]
7834        [::core::mem::offset_of!(SpecialMonitor, do_monitor) - 26usize];
7835    ["Offset of field: SpecialMonitor::reserved1"]
7836        [::core::mem::offset_of!(SpecialMonitor, reserved1) - 30usize];
7837    ["Offset of field: SpecialMonitor::reserved2"]
7838        [::core::mem::offset_of!(SpecialMonitor, reserved2) - 34usize];
7839    ["Offset of field: SpecialMonitor::reserved3"]
7840        [::core::mem::offset_of!(SpecialMonitor, reserved3) - 38usize];
7841    ["Offset of field: SpecialMonitor::hblank"]
7842        [::core::mem::offset_of!(SpecialMonitor, hblank) - 42usize];
7843    ["Offset of field: SpecialMonitor::vblank"]
7844        [::core::mem::offset_of!(SpecialMonitor, vblank) - 46usize];
7845    ["Offset of field: SpecialMonitor::hsync"]
7846        [::core::mem::offset_of!(SpecialMonitor, hsync) - 50usize];
7847    ["Offset of field: SpecialMonitor::vsync"]
7848        [::core::mem::offset_of!(SpecialMonitor, vsync) - 54usize];
7849};
7850pub type DisplayInfoHandle = APTR;
7851#[repr(C, packed(2))]
7852#[derive(Debug, Copy, Clone)]
7853pub struct QueryHeader {
7854    pub StructID: ULONG,
7855    pub DisplayID: ULONG,
7856    pub SkipID: ULONG,
7857    pub Length: ULONG,
7858}
7859#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7860const _: () = {
7861    ["Size of QueryHeader"][::core::mem::size_of::<QueryHeader>() - 16usize];
7862    ["Alignment of QueryHeader"][::core::mem::align_of::<QueryHeader>() - 2usize];
7863    ["Offset of field: QueryHeader::StructID"]
7864        [::core::mem::offset_of!(QueryHeader, StructID) - 0usize];
7865    ["Offset of field: QueryHeader::DisplayID"]
7866        [::core::mem::offset_of!(QueryHeader, DisplayID) - 4usize];
7867    ["Offset of field: QueryHeader::SkipID"][::core::mem::offset_of!(QueryHeader, SkipID) - 8usize];
7868    ["Offset of field: QueryHeader::Length"]
7869        [::core::mem::offset_of!(QueryHeader, Length) - 12usize];
7870};
7871#[repr(C, packed(2))]
7872#[derive(Debug, Copy, Clone)]
7873pub struct DisplayInfo {
7874    pub Header: QueryHeader,
7875    pub NotAvailable: UWORD,
7876    pub PropertyFlags: ULONG,
7877    pub Resolution: Point,
7878    pub PixelSpeed: UWORD,
7879    pub NumStdSprites: UWORD,
7880    pub PaletteRange: UWORD,
7881    pub SpriteResolution: Point,
7882    pub pad: [UBYTE; 4usize],
7883    pub RedBits: UBYTE,
7884    pub GreenBits: UBYTE,
7885    pub BlueBits: UBYTE,
7886    pub pad2: [UBYTE; 5usize],
7887    pub reserved: [ULONG; 2usize],
7888}
7889#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7890const _: () = {
7891    ["Size of DisplayInfo"][::core::mem::size_of::<DisplayInfo>() - 56usize];
7892    ["Alignment of DisplayInfo"][::core::mem::align_of::<DisplayInfo>() - 2usize];
7893    ["Offset of field: DisplayInfo::Header"][::core::mem::offset_of!(DisplayInfo, Header) - 0usize];
7894    ["Offset of field: DisplayInfo::NotAvailable"]
7895        [::core::mem::offset_of!(DisplayInfo, NotAvailable) - 16usize];
7896    ["Offset of field: DisplayInfo::PropertyFlags"]
7897        [::core::mem::offset_of!(DisplayInfo, PropertyFlags) - 18usize];
7898    ["Offset of field: DisplayInfo::Resolution"]
7899        [::core::mem::offset_of!(DisplayInfo, Resolution) - 22usize];
7900    ["Offset of field: DisplayInfo::PixelSpeed"]
7901        [::core::mem::offset_of!(DisplayInfo, PixelSpeed) - 26usize];
7902    ["Offset of field: DisplayInfo::NumStdSprites"]
7903        [::core::mem::offset_of!(DisplayInfo, NumStdSprites) - 28usize];
7904    ["Offset of field: DisplayInfo::PaletteRange"]
7905        [::core::mem::offset_of!(DisplayInfo, PaletteRange) - 30usize];
7906    ["Offset of field: DisplayInfo::SpriteResolution"]
7907        [::core::mem::offset_of!(DisplayInfo, SpriteResolution) - 32usize];
7908    ["Offset of field: DisplayInfo::pad"][::core::mem::offset_of!(DisplayInfo, pad) - 36usize];
7909    ["Offset of field: DisplayInfo::RedBits"]
7910        [::core::mem::offset_of!(DisplayInfo, RedBits) - 40usize];
7911    ["Offset of field: DisplayInfo::GreenBits"]
7912        [::core::mem::offset_of!(DisplayInfo, GreenBits) - 41usize];
7913    ["Offset of field: DisplayInfo::BlueBits"]
7914        [::core::mem::offset_of!(DisplayInfo, BlueBits) - 42usize];
7915    ["Offset of field: DisplayInfo::pad2"][::core::mem::offset_of!(DisplayInfo, pad2) - 43usize];
7916    ["Offset of field: DisplayInfo::reserved"]
7917        [::core::mem::offset_of!(DisplayInfo, reserved) - 48usize];
7918};
7919#[repr(C, packed(2))]
7920#[derive(Debug, Copy, Clone)]
7921pub struct DimensionInfo {
7922    pub Header: QueryHeader,
7923    pub MaxDepth: UWORD,
7924    pub MinRasterWidth: UWORD,
7925    pub MinRasterHeight: UWORD,
7926    pub MaxRasterWidth: UWORD,
7927    pub MaxRasterHeight: UWORD,
7928    pub Nominal: Rectangle,
7929    pub MaxOScan: Rectangle,
7930    pub VideoOScan: Rectangle,
7931    pub TxtOScan: Rectangle,
7932    pub StdOScan: Rectangle,
7933    pub pad: [UBYTE; 14usize],
7934    pub reserved: [ULONG; 2usize],
7935}
7936#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7937const _: () = {
7938    ["Size of DimensionInfo"][::core::mem::size_of::<DimensionInfo>() - 88usize];
7939    ["Alignment of DimensionInfo"][::core::mem::align_of::<DimensionInfo>() - 2usize];
7940    ["Offset of field: DimensionInfo::Header"]
7941        [::core::mem::offset_of!(DimensionInfo, Header) - 0usize];
7942    ["Offset of field: DimensionInfo::MaxDepth"]
7943        [::core::mem::offset_of!(DimensionInfo, MaxDepth) - 16usize];
7944    ["Offset of field: DimensionInfo::MinRasterWidth"]
7945        [::core::mem::offset_of!(DimensionInfo, MinRasterWidth) - 18usize];
7946    ["Offset of field: DimensionInfo::MinRasterHeight"]
7947        [::core::mem::offset_of!(DimensionInfo, MinRasterHeight) - 20usize];
7948    ["Offset of field: DimensionInfo::MaxRasterWidth"]
7949        [::core::mem::offset_of!(DimensionInfo, MaxRasterWidth) - 22usize];
7950    ["Offset of field: DimensionInfo::MaxRasterHeight"]
7951        [::core::mem::offset_of!(DimensionInfo, MaxRasterHeight) - 24usize];
7952    ["Offset of field: DimensionInfo::Nominal"]
7953        [::core::mem::offset_of!(DimensionInfo, Nominal) - 26usize];
7954    ["Offset of field: DimensionInfo::MaxOScan"]
7955        [::core::mem::offset_of!(DimensionInfo, MaxOScan) - 34usize];
7956    ["Offset of field: DimensionInfo::VideoOScan"]
7957        [::core::mem::offset_of!(DimensionInfo, VideoOScan) - 42usize];
7958    ["Offset of field: DimensionInfo::TxtOScan"]
7959        [::core::mem::offset_of!(DimensionInfo, TxtOScan) - 50usize];
7960    ["Offset of field: DimensionInfo::StdOScan"]
7961        [::core::mem::offset_of!(DimensionInfo, StdOScan) - 58usize];
7962    ["Offset of field: DimensionInfo::pad"][::core::mem::offset_of!(DimensionInfo, pad) - 66usize];
7963    ["Offset of field: DimensionInfo::reserved"]
7964        [::core::mem::offset_of!(DimensionInfo, reserved) - 80usize];
7965};
7966#[repr(C, packed(2))]
7967#[derive(Debug, Copy, Clone)]
7968pub struct MonitorInfo {
7969    pub Header: QueryHeader,
7970    pub Mspc: *mut MonitorSpec,
7971    pub ViewPosition: Point,
7972    pub ViewResolution: Point,
7973    pub ViewPositionRange: Rectangle,
7974    pub TotalRows: UWORD,
7975    pub TotalColorClocks: UWORD,
7976    pub MinRow: UWORD,
7977    pub Compatibility: WORD,
7978    pub pad: [UBYTE; 32usize],
7979    pub MouseTicks: Point,
7980    pub DefaultViewPosition: Point,
7981    pub PreferredModeID: ULONG,
7982    pub reserved: [ULONG; 2usize],
7983}
7984#[allow(clippy::unnecessary_operation, clippy::identity_op)]
7985const _: () = {
7986    ["Size of MonitorInfo"][::core::mem::size_of::<MonitorInfo>() - 96usize];
7987    ["Alignment of MonitorInfo"][::core::mem::align_of::<MonitorInfo>() - 2usize];
7988    ["Offset of field: MonitorInfo::Header"][::core::mem::offset_of!(MonitorInfo, Header) - 0usize];
7989    ["Offset of field: MonitorInfo::Mspc"][::core::mem::offset_of!(MonitorInfo, Mspc) - 16usize];
7990    ["Offset of field: MonitorInfo::ViewPosition"]
7991        [::core::mem::offset_of!(MonitorInfo, ViewPosition) - 20usize];
7992    ["Offset of field: MonitorInfo::ViewResolution"]
7993        [::core::mem::offset_of!(MonitorInfo, ViewResolution) - 24usize];
7994    ["Offset of field: MonitorInfo::ViewPositionRange"]
7995        [::core::mem::offset_of!(MonitorInfo, ViewPositionRange) - 28usize];
7996    ["Offset of field: MonitorInfo::TotalRows"]
7997        [::core::mem::offset_of!(MonitorInfo, TotalRows) - 36usize];
7998    ["Offset of field: MonitorInfo::TotalColorClocks"]
7999        [::core::mem::offset_of!(MonitorInfo, TotalColorClocks) - 38usize];
8000    ["Offset of field: MonitorInfo::MinRow"]
8001        [::core::mem::offset_of!(MonitorInfo, MinRow) - 40usize];
8002    ["Offset of field: MonitorInfo::Compatibility"]
8003        [::core::mem::offset_of!(MonitorInfo, Compatibility) - 42usize];
8004    ["Offset of field: MonitorInfo::pad"][::core::mem::offset_of!(MonitorInfo, pad) - 44usize];
8005    ["Offset of field: MonitorInfo::MouseTicks"]
8006        [::core::mem::offset_of!(MonitorInfo, MouseTicks) - 76usize];
8007    ["Offset of field: MonitorInfo::DefaultViewPosition"]
8008        [::core::mem::offset_of!(MonitorInfo, DefaultViewPosition) - 80usize];
8009    ["Offset of field: MonitorInfo::PreferredModeID"]
8010        [::core::mem::offset_of!(MonitorInfo, PreferredModeID) - 84usize];
8011    ["Offset of field: MonitorInfo::reserved"]
8012        [::core::mem::offset_of!(MonitorInfo, reserved) - 88usize];
8013};
8014#[repr(C, packed(2))]
8015#[derive(Debug, Copy, Clone)]
8016pub struct NameInfo {
8017    pub Header: QueryHeader,
8018    pub Name: [UBYTE; 32usize],
8019    pub reserved: [ULONG; 2usize],
8020}
8021#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8022const _: () = {
8023    ["Size of NameInfo"][::core::mem::size_of::<NameInfo>() - 56usize];
8024    ["Alignment of NameInfo"][::core::mem::align_of::<NameInfo>() - 2usize];
8025    ["Offset of field: NameInfo::Header"][::core::mem::offset_of!(NameInfo, Header) - 0usize];
8026    ["Offset of field: NameInfo::Name"][::core::mem::offset_of!(NameInfo, Name) - 16usize];
8027    ["Offset of field: NameInfo::reserved"][::core::mem::offset_of!(NameInfo, reserved) - 48usize];
8028};
8029#[repr(C, packed(2))]
8030#[derive(Debug, Copy, Clone)]
8031pub struct VecInfo {
8032    pub Header: QueryHeader,
8033    pub Vec: APTR,
8034    pub Data: APTR,
8035    pub Type: UWORD,
8036    pub pad: [UWORD; 3usize],
8037    pub reserved: [ULONG; 2usize],
8038}
8039#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8040const _: () = {
8041    ["Size of VecInfo"][::core::mem::size_of::<VecInfo>() - 40usize];
8042    ["Alignment of VecInfo"][::core::mem::align_of::<VecInfo>() - 2usize];
8043    ["Offset of field: VecInfo::Header"][::core::mem::offset_of!(VecInfo, Header) - 0usize];
8044    ["Offset of field: VecInfo::Vec"][::core::mem::offset_of!(VecInfo, Vec) - 16usize];
8045    ["Offset of field: VecInfo::Data"][::core::mem::offset_of!(VecInfo, Data) - 20usize];
8046    ["Offset of field: VecInfo::Type"][::core::mem::offset_of!(VecInfo, Type) - 24usize];
8047    ["Offset of field: VecInfo::pad"][::core::mem::offset_of!(VecInfo, pad) - 26usize];
8048    ["Offset of field: VecInfo::reserved"][::core::mem::offset_of!(VecInfo, reserved) - 32usize];
8049};
8050#[repr(C, packed(2))]
8051#[derive(Debug, Copy, Clone)]
8052pub struct Custom {
8053    pub bltddat: UWORD,
8054    pub dmaconr: UWORD,
8055    pub vposr: UWORD,
8056    pub vhposr: UWORD,
8057    pub dskdatr: UWORD,
8058    pub joy0dat: UWORD,
8059    pub joy1dat: UWORD,
8060    pub clxdat: UWORD,
8061    pub adkconr: UWORD,
8062    pub pot0dat: UWORD,
8063    pub pot1dat: UWORD,
8064    pub potinp: UWORD,
8065    pub serdatr: UWORD,
8066    pub dskbytr: UWORD,
8067    pub intenar: UWORD,
8068    pub intreqr: UWORD,
8069    pub dskpt: APTR,
8070    pub dsklen: UWORD,
8071    pub dskdat: UWORD,
8072    pub refptr: UWORD,
8073    pub vposw: UWORD,
8074    pub vhposw: UWORD,
8075    pub copcon: UWORD,
8076    pub serdat: UWORD,
8077    pub serper: UWORD,
8078    pub potgo: UWORD,
8079    pub joytest: UWORD,
8080    pub strequ: UWORD,
8081    pub strvbl: UWORD,
8082    pub strhor: UWORD,
8083    pub strlong: UWORD,
8084    pub bltcon0: UWORD,
8085    pub bltcon1: UWORD,
8086    pub bltafwm: UWORD,
8087    pub bltalwm: UWORD,
8088    pub bltcpt: APTR,
8089    pub bltbpt: APTR,
8090    pub bltapt: APTR,
8091    pub bltdpt: APTR,
8092    pub bltsize: UWORD,
8093    pub pad2d: UBYTE,
8094    pub bltcon0l: UBYTE,
8095    pub bltsizv: UWORD,
8096    pub bltsizh: UWORD,
8097    pub bltcmod: UWORD,
8098    pub bltbmod: UWORD,
8099    pub bltamod: UWORD,
8100    pub bltdmod: UWORD,
8101    pub pad34: [UWORD; 4usize],
8102    pub bltcdat: UWORD,
8103    pub bltbdat: UWORD,
8104    pub bltadat: UWORD,
8105    pub pad3b: [UWORD; 3usize],
8106    pub deniseid: UWORD,
8107    pub dsksync: UWORD,
8108    pub cop1lc: ULONG,
8109    pub cop2lc: ULONG,
8110    pub copjmp1: UWORD,
8111    pub copjmp2: UWORD,
8112    pub copins: UWORD,
8113    pub diwstrt: UWORD,
8114    pub diwstop: UWORD,
8115    pub ddfstrt: UWORD,
8116    pub ddfstop: UWORD,
8117    pub dmacon: UWORD,
8118    pub clxcon: UWORD,
8119    pub intena: UWORD,
8120    pub intreq: UWORD,
8121    pub adkcon: UWORD,
8122    pub aud: [Custom_AudChannel; 4usize],
8123    pub bplpt: [APTR; 8usize],
8124    pub bplcon0: UWORD,
8125    pub bplcon1: UWORD,
8126    pub bplcon2: UWORD,
8127    pub bplcon3: UWORD,
8128    pub bpl1mod: UWORD,
8129    pub bpl2mod: UWORD,
8130    pub bplcon4: UWORD,
8131    pub clxcon2: UWORD,
8132    pub bpldat: [UWORD; 8usize],
8133    pub sprpt: [APTR; 8usize],
8134    pub spr: [Custom_SpriteDef; 8usize],
8135    pub color: [UWORD; 32usize],
8136    pub htotal: UWORD,
8137    pub hsstop: UWORD,
8138    pub hbstrt: UWORD,
8139    pub hbstop: UWORD,
8140    pub vtotal: UWORD,
8141    pub vsstop: UWORD,
8142    pub vbstrt: UWORD,
8143    pub vbstop: UWORD,
8144    pub sprhstrt: UWORD,
8145    pub sprhstop: UWORD,
8146    pub bplhstrt: UWORD,
8147    pub bplhstop: UWORD,
8148    pub hhposw: UWORD,
8149    pub hhposr: UWORD,
8150    pub beamcon0: UWORD,
8151    pub hsstrt: UWORD,
8152    pub vsstrt: UWORD,
8153    pub hcenter: UWORD,
8154    pub diwhigh: UWORD,
8155    pub padf3: [UWORD; 11usize],
8156    pub fmode: UWORD,
8157}
8158#[repr(C, packed(2))]
8159#[derive(Debug, Copy, Clone)]
8160pub struct Custom_AudChannel {
8161    pub ac_ptr: *mut UWORD,
8162    pub ac_len: UWORD,
8163    pub ac_per: UWORD,
8164    pub ac_vol: UWORD,
8165    pub ac_dat: UWORD,
8166    pub ac_pad: [UWORD; 2usize],
8167}
8168#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8169const _: () = {
8170    ["Size of Custom_AudChannel"][::core::mem::size_of::<Custom_AudChannel>() - 16usize];
8171    ["Alignment of Custom_AudChannel"][::core::mem::align_of::<Custom_AudChannel>() - 2usize];
8172    ["Offset of field: Custom_AudChannel::ac_ptr"]
8173        [::core::mem::offset_of!(Custom_AudChannel, ac_ptr) - 0usize];
8174    ["Offset of field: Custom_AudChannel::ac_len"]
8175        [::core::mem::offset_of!(Custom_AudChannel, ac_len) - 4usize];
8176    ["Offset of field: Custom_AudChannel::ac_per"]
8177        [::core::mem::offset_of!(Custom_AudChannel, ac_per) - 6usize];
8178    ["Offset of field: Custom_AudChannel::ac_vol"]
8179        [::core::mem::offset_of!(Custom_AudChannel, ac_vol) - 8usize];
8180    ["Offset of field: Custom_AudChannel::ac_dat"]
8181        [::core::mem::offset_of!(Custom_AudChannel, ac_dat) - 10usize];
8182    ["Offset of field: Custom_AudChannel::ac_pad"]
8183        [::core::mem::offset_of!(Custom_AudChannel, ac_pad) - 12usize];
8184};
8185#[repr(C)]
8186#[derive(Debug, Copy, Clone)]
8187pub struct Custom_SpriteDef {
8188    pub pos: UWORD,
8189    pub ctl: UWORD,
8190    pub dataa: UWORD,
8191    pub datab: UWORD,
8192}
8193#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8194const _: () = {
8195    ["Size of Custom_SpriteDef"][::core::mem::size_of::<Custom_SpriteDef>() - 8usize];
8196    ["Alignment of Custom_SpriteDef"][::core::mem::align_of::<Custom_SpriteDef>() - 2usize];
8197    ["Offset of field: Custom_SpriteDef::pos"]
8198        [::core::mem::offset_of!(Custom_SpriteDef, pos) - 0usize];
8199    ["Offset of field: Custom_SpriteDef::ctl"]
8200        [::core::mem::offset_of!(Custom_SpriteDef, ctl) - 2usize];
8201    ["Offset of field: Custom_SpriteDef::dataa"]
8202        [::core::mem::offset_of!(Custom_SpriteDef, dataa) - 4usize];
8203    ["Offset of field: Custom_SpriteDef::datab"]
8204        [::core::mem::offset_of!(Custom_SpriteDef, datab) - 6usize];
8205};
8206#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8207const _: () = {
8208    ["Size of Custom"][::core::mem::size_of::<Custom>() - 510usize];
8209    ["Alignment of Custom"][::core::mem::align_of::<Custom>() - 2usize];
8210    ["Offset of field: Custom::bltddat"][::core::mem::offset_of!(Custom, bltddat) - 0usize];
8211    ["Offset of field: Custom::dmaconr"][::core::mem::offset_of!(Custom, dmaconr) - 2usize];
8212    ["Offset of field: Custom::vposr"][::core::mem::offset_of!(Custom, vposr) - 4usize];
8213    ["Offset of field: Custom::vhposr"][::core::mem::offset_of!(Custom, vhposr) - 6usize];
8214    ["Offset of field: Custom::dskdatr"][::core::mem::offset_of!(Custom, dskdatr) - 8usize];
8215    ["Offset of field: Custom::joy0dat"][::core::mem::offset_of!(Custom, joy0dat) - 10usize];
8216    ["Offset of field: Custom::joy1dat"][::core::mem::offset_of!(Custom, joy1dat) - 12usize];
8217    ["Offset of field: Custom::clxdat"][::core::mem::offset_of!(Custom, clxdat) - 14usize];
8218    ["Offset of field: Custom::adkconr"][::core::mem::offset_of!(Custom, adkconr) - 16usize];
8219    ["Offset of field: Custom::pot0dat"][::core::mem::offset_of!(Custom, pot0dat) - 18usize];
8220    ["Offset of field: Custom::pot1dat"][::core::mem::offset_of!(Custom, pot1dat) - 20usize];
8221    ["Offset of field: Custom::potinp"][::core::mem::offset_of!(Custom, potinp) - 22usize];
8222    ["Offset of field: Custom::serdatr"][::core::mem::offset_of!(Custom, serdatr) - 24usize];
8223    ["Offset of field: Custom::dskbytr"][::core::mem::offset_of!(Custom, dskbytr) - 26usize];
8224    ["Offset of field: Custom::intenar"][::core::mem::offset_of!(Custom, intenar) - 28usize];
8225    ["Offset of field: Custom::intreqr"][::core::mem::offset_of!(Custom, intreqr) - 30usize];
8226    ["Offset of field: Custom::dskpt"][::core::mem::offset_of!(Custom, dskpt) - 32usize];
8227    ["Offset of field: Custom::dsklen"][::core::mem::offset_of!(Custom, dsklen) - 36usize];
8228    ["Offset of field: Custom::dskdat"][::core::mem::offset_of!(Custom, dskdat) - 38usize];
8229    ["Offset of field: Custom::refptr"][::core::mem::offset_of!(Custom, refptr) - 40usize];
8230    ["Offset of field: Custom::vposw"][::core::mem::offset_of!(Custom, vposw) - 42usize];
8231    ["Offset of field: Custom::vhposw"][::core::mem::offset_of!(Custom, vhposw) - 44usize];
8232    ["Offset of field: Custom::copcon"][::core::mem::offset_of!(Custom, copcon) - 46usize];
8233    ["Offset of field: Custom::serdat"][::core::mem::offset_of!(Custom, serdat) - 48usize];
8234    ["Offset of field: Custom::serper"][::core::mem::offset_of!(Custom, serper) - 50usize];
8235    ["Offset of field: Custom::potgo"][::core::mem::offset_of!(Custom, potgo) - 52usize];
8236    ["Offset of field: Custom::joytest"][::core::mem::offset_of!(Custom, joytest) - 54usize];
8237    ["Offset of field: Custom::strequ"][::core::mem::offset_of!(Custom, strequ) - 56usize];
8238    ["Offset of field: Custom::strvbl"][::core::mem::offset_of!(Custom, strvbl) - 58usize];
8239    ["Offset of field: Custom::strhor"][::core::mem::offset_of!(Custom, strhor) - 60usize];
8240    ["Offset of field: Custom::strlong"][::core::mem::offset_of!(Custom, strlong) - 62usize];
8241    ["Offset of field: Custom::bltcon0"][::core::mem::offset_of!(Custom, bltcon0) - 64usize];
8242    ["Offset of field: Custom::bltcon1"][::core::mem::offset_of!(Custom, bltcon1) - 66usize];
8243    ["Offset of field: Custom::bltafwm"][::core::mem::offset_of!(Custom, bltafwm) - 68usize];
8244    ["Offset of field: Custom::bltalwm"][::core::mem::offset_of!(Custom, bltalwm) - 70usize];
8245    ["Offset of field: Custom::bltcpt"][::core::mem::offset_of!(Custom, bltcpt) - 72usize];
8246    ["Offset of field: Custom::bltbpt"][::core::mem::offset_of!(Custom, bltbpt) - 76usize];
8247    ["Offset of field: Custom::bltapt"][::core::mem::offset_of!(Custom, bltapt) - 80usize];
8248    ["Offset of field: Custom::bltdpt"][::core::mem::offset_of!(Custom, bltdpt) - 84usize];
8249    ["Offset of field: Custom::bltsize"][::core::mem::offset_of!(Custom, bltsize) - 88usize];
8250    ["Offset of field: Custom::pad2d"][::core::mem::offset_of!(Custom, pad2d) - 90usize];
8251    ["Offset of field: Custom::bltcon0l"][::core::mem::offset_of!(Custom, bltcon0l) - 91usize];
8252    ["Offset of field: Custom::bltsizv"][::core::mem::offset_of!(Custom, bltsizv) - 92usize];
8253    ["Offset of field: Custom::bltsizh"][::core::mem::offset_of!(Custom, bltsizh) - 94usize];
8254    ["Offset of field: Custom::bltcmod"][::core::mem::offset_of!(Custom, bltcmod) - 96usize];
8255    ["Offset of field: Custom::bltbmod"][::core::mem::offset_of!(Custom, bltbmod) - 98usize];
8256    ["Offset of field: Custom::bltamod"][::core::mem::offset_of!(Custom, bltamod) - 100usize];
8257    ["Offset of field: Custom::bltdmod"][::core::mem::offset_of!(Custom, bltdmod) - 102usize];
8258    ["Offset of field: Custom::pad34"][::core::mem::offset_of!(Custom, pad34) - 104usize];
8259    ["Offset of field: Custom::bltcdat"][::core::mem::offset_of!(Custom, bltcdat) - 112usize];
8260    ["Offset of field: Custom::bltbdat"][::core::mem::offset_of!(Custom, bltbdat) - 114usize];
8261    ["Offset of field: Custom::bltadat"][::core::mem::offset_of!(Custom, bltadat) - 116usize];
8262    ["Offset of field: Custom::pad3b"][::core::mem::offset_of!(Custom, pad3b) - 118usize];
8263    ["Offset of field: Custom::deniseid"][::core::mem::offset_of!(Custom, deniseid) - 124usize];
8264    ["Offset of field: Custom::dsksync"][::core::mem::offset_of!(Custom, dsksync) - 126usize];
8265    ["Offset of field: Custom::cop1lc"][::core::mem::offset_of!(Custom, cop1lc) - 128usize];
8266    ["Offset of field: Custom::cop2lc"][::core::mem::offset_of!(Custom, cop2lc) - 132usize];
8267    ["Offset of field: Custom::copjmp1"][::core::mem::offset_of!(Custom, copjmp1) - 136usize];
8268    ["Offset of field: Custom::copjmp2"][::core::mem::offset_of!(Custom, copjmp2) - 138usize];
8269    ["Offset of field: Custom::copins"][::core::mem::offset_of!(Custom, copins) - 140usize];
8270    ["Offset of field: Custom::diwstrt"][::core::mem::offset_of!(Custom, diwstrt) - 142usize];
8271    ["Offset of field: Custom::diwstop"][::core::mem::offset_of!(Custom, diwstop) - 144usize];
8272    ["Offset of field: Custom::ddfstrt"][::core::mem::offset_of!(Custom, ddfstrt) - 146usize];
8273    ["Offset of field: Custom::ddfstop"][::core::mem::offset_of!(Custom, ddfstop) - 148usize];
8274    ["Offset of field: Custom::dmacon"][::core::mem::offset_of!(Custom, dmacon) - 150usize];
8275    ["Offset of field: Custom::clxcon"][::core::mem::offset_of!(Custom, clxcon) - 152usize];
8276    ["Offset of field: Custom::intena"][::core::mem::offset_of!(Custom, intena) - 154usize];
8277    ["Offset of field: Custom::intreq"][::core::mem::offset_of!(Custom, intreq) - 156usize];
8278    ["Offset of field: Custom::adkcon"][::core::mem::offset_of!(Custom, adkcon) - 158usize];
8279    ["Offset of field: Custom::aud"][::core::mem::offset_of!(Custom, aud) - 160usize];
8280    ["Offset of field: Custom::bplpt"][::core::mem::offset_of!(Custom, bplpt) - 224usize];
8281    ["Offset of field: Custom::bplcon0"][::core::mem::offset_of!(Custom, bplcon0) - 256usize];
8282    ["Offset of field: Custom::bplcon1"][::core::mem::offset_of!(Custom, bplcon1) - 258usize];
8283    ["Offset of field: Custom::bplcon2"][::core::mem::offset_of!(Custom, bplcon2) - 260usize];
8284    ["Offset of field: Custom::bplcon3"][::core::mem::offset_of!(Custom, bplcon3) - 262usize];
8285    ["Offset of field: Custom::bpl1mod"][::core::mem::offset_of!(Custom, bpl1mod) - 264usize];
8286    ["Offset of field: Custom::bpl2mod"][::core::mem::offset_of!(Custom, bpl2mod) - 266usize];
8287    ["Offset of field: Custom::bplcon4"][::core::mem::offset_of!(Custom, bplcon4) - 268usize];
8288    ["Offset of field: Custom::clxcon2"][::core::mem::offset_of!(Custom, clxcon2) - 270usize];
8289    ["Offset of field: Custom::bpldat"][::core::mem::offset_of!(Custom, bpldat) - 272usize];
8290    ["Offset of field: Custom::sprpt"][::core::mem::offset_of!(Custom, sprpt) - 288usize];
8291    ["Offset of field: Custom::spr"][::core::mem::offset_of!(Custom, spr) - 320usize];
8292    ["Offset of field: Custom::color"][::core::mem::offset_of!(Custom, color) - 384usize];
8293    ["Offset of field: Custom::htotal"][::core::mem::offset_of!(Custom, htotal) - 448usize];
8294    ["Offset of field: Custom::hsstop"][::core::mem::offset_of!(Custom, hsstop) - 450usize];
8295    ["Offset of field: Custom::hbstrt"][::core::mem::offset_of!(Custom, hbstrt) - 452usize];
8296    ["Offset of field: Custom::hbstop"][::core::mem::offset_of!(Custom, hbstop) - 454usize];
8297    ["Offset of field: Custom::vtotal"][::core::mem::offset_of!(Custom, vtotal) - 456usize];
8298    ["Offset of field: Custom::vsstop"][::core::mem::offset_of!(Custom, vsstop) - 458usize];
8299    ["Offset of field: Custom::vbstrt"][::core::mem::offset_of!(Custom, vbstrt) - 460usize];
8300    ["Offset of field: Custom::vbstop"][::core::mem::offset_of!(Custom, vbstop) - 462usize];
8301    ["Offset of field: Custom::sprhstrt"][::core::mem::offset_of!(Custom, sprhstrt) - 464usize];
8302    ["Offset of field: Custom::sprhstop"][::core::mem::offset_of!(Custom, sprhstop) - 466usize];
8303    ["Offset of field: Custom::bplhstrt"][::core::mem::offset_of!(Custom, bplhstrt) - 468usize];
8304    ["Offset of field: Custom::bplhstop"][::core::mem::offset_of!(Custom, bplhstop) - 470usize];
8305    ["Offset of field: Custom::hhposw"][::core::mem::offset_of!(Custom, hhposw) - 472usize];
8306    ["Offset of field: Custom::hhposr"][::core::mem::offset_of!(Custom, hhposr) - 474usize];
8307    ["Offset of field: Custom::beamcon0"][::core::mem::offset_of!(Custom, beamcon0) - 476usize];
8308    ["Offset of field: Custom::hsstrt"][::core::mem::offset_of!(Custom, hsstrt) - 478usize];
8309    ["Offset of field: Custom::vsstrt"][::core::mem::offset_of!(Custom, vsstrt) - 480usize];
8310    ["Offset of field: Custom::hcenter"][::core::mem::offset_of!(Custom, hcenter) - 482usize];
8311    ["Offset of field: Custom::diwhigh"][::core::mem::offset_of!(Custom, diwhigh) - 484usize];
8312    ["Offset of field: Custom::padf3"][::core::mem::offset_of!(Custom, padf3) - 486usize];
8313    ["Offset of field: Custom::fmode"][::core::mem::offset_of!(Custom, fmode) - 508usize];
8314};
8315#[repr(C, packed(2))]
8316#[derive(Debug, Copy, Clone)]
8317pub struct ViewPort {
8318    pub Next: *mut ViewPort,
8319    pub ColorMap: *mut ColorMap,
8320    pub DspIns: *mut CopList,
8321    pub SprIns: *mut CopList,
8322    pub ClrIns: *mut CopList,
8323    pub UCopIns: *mut UCopList,
8324    pub DWidth: WORD,
8325    pub DHeight: WORD,
8326    pub DxOffset: WORD,
8327    pub DyOffset: WORD,
8328    pub Modes: UWORD,
8329    pub SpritePriorities: UBYTE,
8330    pub ExtendedModes: UBYTE,
8331    pub RasInfo: *mut RasInfo,
8332}
8333#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8334const _: () = {
8335    ["Size of ViewPort"][::core::mem::size_of::<ViewPort>() - 40usize];
8336    ["Alignment of ViewPort"][::core::mem::align_of::<ViewPort>() - 2usize];
8337    ["Offset of field: ViewPort::Next"][::core::mem::offset_of!(ViewPort, Next) - 0usize];
8338    ["Offset of field: ViewPort::ColorMap"][::core::mem::offset_of!(ViewPort, ColorMap) - 4usize];
8339    ["Offset of field: ViewPort::DspIns"][::core::mem::offset_of!(ViewPort, DspIns) - 8usize];
8340    ["Offset of field: ViewPort::SprIns"][::core::mem::offset_of!(ViewPort, SprIns) - 12usize];
8341    ["Offset of field: ViewPort::ClrIns"][::core::mem::offset_of!(ViewPort, ClrIns) - 16usize];
8342    ["Offset of field: ViewPort::UCopIns"][::core::mem::offset_of!(ViewPort, UCopIns) - 20usize];
8343    ["Offset of field: ViewPort::DWidth"][::core::mem::offset_of!(ViewPort, DWidth) - 24usize];
8344    ["Offset of field: ViewPort::DHeight"][::core::mem::offset_of!(ViewPort, DHeight) - 26usize];
8345    ["Offset of field: ViewPort::DxOffset"][::core::mem::offset_of!(ViewPort, DxOffset) - 28usize];
8346    ["Offset of field: ViewPort::DyOffset"][::core::mem::offset_of!(ViewPort, DyOffset) - 30usize];
8347    ["Offset of field: ViewPort::Modes"][::core::mem::offset_of!(ViewPort, Modes) - 32usize];
8348    ["Offset of field: ViewPort::SpritePriorities"]
8349        [::core::mem::offset_of!(ViewPort, SpritePriorities) - 34usize];
8350    ["Offset of field: ViewPort::ExtendedModes"]
8351        [::core::mem::offset_of!(ViewPort, ExtendedModes) - 35usize];
8352    ["Offset of field: ViewPort::RasInfo"][::core::mem::offset_of!(ViewPort, RasInfo) - 36usize];
8353};
8354#[repr(C, packed(2))]
8355#[derive(Debug, Copy, Clone)]
8356pub struct View {
8357    pub ViewPort: *mut ViewPort,
8358    pub LOFCprList: *mut cprlist,
8359    pub SHFCprList: *mut cprlist,
8360    pub DyOffset: WORD,
8361    pub DxOffset: WORD,
8362    pub Modes: UWORD,
8363}
8364#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8365const _: () = {
8366    ["Size of View"][::core::mem::size_of::<View>() - 18usize];
8367    ["Alignment of View"][::core::mem::align_of::<View>() - 2usize];
8368    ["Offset of field: View::ViewPort"][::core::mem::offset_of!(View, ViewPort) - 0usize];
8369    ["Offset of field: View::LOFCprList"][::core::mem::offset_of!(View, LOFCprList) - 4usize];
8370    ["Offset of field: View::SHFCprList"][::core::mem::offset_of!(View, SHFCprList) - 8usize];
8371    ["Offset of field: View::DyOffset"][::core::mem::offset_of!(View, DyOffset) - 12usize];
8372    ["Offset of field: View::DxOffset"][::core::mem::offset_of!(View, DxOffset) - 14usize];
8373    ["Offset of field: View::Modes"][::core::mem::offset_of!(View, Modes) - 16usize];
8374};
8375#[repr(C, packed(2))]
8376#[derive(Debug, Copy, Clone)]
8377pub struct ViewExtra {
8378    pub n: ExtendedNode,
8379    pub View: *mut View,
8380    pub Monitor: *mut MonitorSpec,
8381    pub TopLine: UWORD,
8382}
8383#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8384const _: () = {
8385    ["Size of ViewExtra"][::core::mem::size_of::<ViewExtra>() - 34usize];
8386    ["Alignment of ViewExtra"][::core::mem::align_of::<ViewExtra>() - 2usize];
8387    ["Offset of field: ViewExtra::n"][::core::mem::offset_of!(ViewExtra, n) - 0usize];
8388    ["Offset of field: ViewExtra::View"][::core::mem::offset_of!(ViewExtra, View) - 24usize];
8389    ["Offset of field: ViewExtra::Monitor"][::core::mem::offset_of!(ViewExtra, Monitor) - 28usize];
8390    ["Offset of field: ViewExtra::TopLine"][::core::mem::offset_of!(ViewExtra, TopLine) - 32usize];
8391};
8392#[repr(C, packed(2))]
8393#[derive(Debug, Copy, Clone)]
8394pub struct ViewPortExtra {
8395    pub n: ExtendedNode,
8396    pub ViewPort: *mut ViewPort,
8397    pub DisplayClip: Rectangle,
8398    pub VecTable: APTR,
8399    pub DriverData: [APTR; 2usize],
8400    pub Flags: UWORD,
8401    pub Origin: [Point; 2usize],
8402    pub cop1ptr: ULONG,
8403    pub cop2ptr: ULONG,
8404}
8405#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8406const _: () = {
8407    ["Size of ViewPortExtra"][::core::mem::size_of::<ViewPortExtra>() - 66usize];
8408    ["Alignment of ViewPortExtra"][::core::mem::align_of::<ViewPortExtra>() - 2usize];
8409    ["Offset of field: ViewPortExtra::n"][::core::mem::offset_of!(ViewPortExtra, n) - 0usize];
8410    ["Offset of field: ViewPortExtra::ViewPort"]
8411        [::core::mem::offset_of!(ViewPortExtra, ViewPort) - 24usize];
8412    ["Offset of field: ViewPortExtra::DisplayClip"]
8413        [::core::mem::offset_of!(ViewPortExtra, DisplayClip) - 28usize];
8414    ["Offset of field: ViewPortExtra::VecTable"]
8415        [::core::mem::offset_of!(ViewPortExtra, VecTable) - 36usize];
8416    ["Offset of field: ViewPortExtra::DriverData"]
8417        [::core::mem::offset_of!(ViewPortExtra, DriverData) - 40usize];
8418    ["Offset of field: ViewPortExtra::Flags"]
8419        [::core::mem::offset_of!(ViewPortExtra, Flags) - 48usize];
8420    ["Offset of field: ViewPortExtra::Origin"]
8421        [::core::mem::offset_of!(ViewPortExtra, Origin) - 50usize];
8422    ["Offset of field: ViewPortExtra::cop1ptr"]
8423        [::core::mem::offset_of!(ViewPortExtra, cop1ptr) - 58usize];
8424    ["Offset of field: ViewPortExtra::cop2ptr"]
8425        [::core::mem::offset_of!(ViewPortExtra, cop2ptr) - 62usize];
8426};
8427#[repr(C, packed(2))]
8428#[derive(Debug, Copy, Clone)]
8429pub struct RasInfo {
8430    pub Next: *mut RasInfo,
8431    pub BitMap: *mut BitMap,
8432    pub RxOffset: WORD,
8433    pub RyOffset: WORD,
8434}
8435#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8436const _: () = {
8437    ["Size of RasInfo"][::core::mem::size_of::<RasInfo>() - 12usize];
8438    ["Alignment of RasInfo"][::core::mem::align_of::<RasInfo>() - 2usize];
8439    ["Offset of field: RasInfo::Next"][::core::mem::offset_of!(RasInfo, Next) - 0usize];
8440    ["Offset of field: RasInfo::BitMap"][::core::mem::offset_of!(RasInfo, BitMap) - 4usize];
8441    ["Offset of field: RasInfo::RxOffset"][::core::mem::offset_of!(RasInfo, RxOffset) - 8usize];
8442    ["Offset of field: RasInfo::RyOffset"][::core::mem::offset_of!(RasInfo, RyOffset) - 10usize];
8443};
8444#[repr(C, packed(2))]
8445#[derive(Debug, Copy, Clone)]
8446pub struct ColorMap {
8447    pub Flags: UBYTE,
8448    pub Type: UBYTE,
8449    pub Count: UWORD,
8450    pub ColorTable: APTR,
8451    pub cm_vpe: *mut ViewPortExtra,
8452    pub LowColorBits: APTR,
8453    pub TransparencyPlane: UBYTE,
8454    pub SpriteResolution: UBYTE,
8455    pub SpriteResDefault: UBYTE,
8456    pub AuxFlags: UBYTE,
8457    pub cm_vp: *mut ViewPort,
8458    pub NormalDisplayInfo: APTR,
8459    pub CoerceDisplayInfo: APTR,
8460    pub cm_batch_items: *mut TagItem,
8461    pub VPModeID: ULONG,
8462    pub PalExtra: *mut PaletteExtra,
8463    pub SpriteBase_Even: UWORD,
8464    pub SpriteBase_Odd: UWORD,
8465    pub Bp_0_base: UWORD,
8466    pub Bp_1_base: UWORD,
8467}
8468#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8469const _: () = {
8470    ["Size of ColorMap"][::core::mem::size_of::<ColorMap>() - 52usize];
8471    ["Alignment of ColorMap"][::core::mem::align_of::<ColorMap>() - 2usize];
8472    ["Offset of field: ColorMap::Flags"][::core::mem::offset_of!(ColorMap, Flags) - 0usize];
8473    ["Offset of field: ColorMap::Type"][::core::mem::offset_of!(ColorMap, Type) - 1usize];
8474    ["Offset of field: ColorMap::Count"][::core::mem::offset_of!(ColorMap, Count) - 2usize];
8475    ["Offset of field: ColorMap::ColorTable"]
8476        [::core::mem::offset_of!(ColorMap, ColorTable) - 4usize];
8477    ["Offset of field: ColorMap::cm_vpe"][::core::mem::offset_of!(ColorMap, cm_vpe) - 8usize];
8478    ["Offset of field: ColorMap::LowColorBits"]
8479        [::core::mem::offset_of!(ColorMap, LowColorBits) - 12usize];
8480    ["Offset of field: ColorMap::TransparencyPlane"]
8481        [::core::mem::offset_of!(ColorMap, TransparencyPlane) - 16usize];
8482    ["Offset of field: ColorMap::SpriteResolution"]
8483        [::core::mem::offset_of!(ColorMap, SpriteResolution) - 17usize];
8484    ["Offset of field: ColorMap::SpriteResDefault"]
8485        [::core::mem::offset_of!(ColorMap, SpriteResDefault) - 18usize];
8486    ["Offset of field: ColorMap::AuxFlags"][::core::mem::offset_of!(ColorMap, AuxFlags) - 19usize];
8487    ["Offset of field: ColorMap::cm_vp"][::core::mem::offset_of!(ColorMap, cm_vp) - 20usize];
8488    ["Offset of field: ColorMap::NormalDisplayInfo"]
8489        [::core::mem::offset_of!(ColorMap, NormalDisplayInfo) - 24usize];
8490    ["Offset of field: ColorMap::CoerceDisplayInfo"]
8491        [::core::mem::offset_of!(ColorMap, CoerceDisplayInfo) - 28usize];
8492    ["Offset of field: ColorMap::cm_batch_items"]
8493        [::core::mem::offset_of!(ColorMap, cm_batch_items) - 32usize];
8494    ["Offset of field: ColorMap::VPModeID"][::core::mem::offset_of!(ColorMap, VPModeID) - 36usize];
8495    ["Offset of field: ColorMap::PalExtra"][::core::mem::offset_of!(ColorMap, PalExtra) - 40usize];
8496    ["Offset of field: ColorMap::SpriteBase_Even"]
8497        [::core::mem::offset_of!(ColorMap, SpriteBase_Even) - 44usize];
8498    ["Offset of field: ColorMap::SpriteBase_Odd"]
8499        [::core::mem::offset_of!(ColorMap, SpriteBase_Odd) - 46usize];
8500    ["Offset of field: ColorMap::Bp_0_base"]
8501        [::core::mem::offset_of!(ColorMap, Bp_0_base) - 48usize];
8502    ["Offset of field: ColorMap::Bp_1_base"]
8503        [::core::mem::offset_of!(ColorMap, Bp_1_base) - 50usize];
8504};
8505#[repr(C, packed(2))]
8506#[derive(Debug, Copy, Clone)]
8507pub struct PaletteExtra {
8508    pub pe_Semaphore: SignalSemaphore,
8509    pub pe_FirstFree: UWORD,
8510    pub pe_NFree: UWORD,
8511    pub pe_FirstShared: UWORD,
8512    pub pe_NShared: UWORD,
8513    pub pe_RefCnt: *mut UBYTE,
8514    pub pe_AllocList: *mut UBYTE,
8515    pub pe_ViewPort: *mut ViewPort,
8516    pub pe_SharableColors: UWORD,
8517}
8518#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8519const _: () = {
8520    ["Size of PaletteExtra"][::core::mem::size_of::<PaletteExtra>() - 68usize];
8521    ["Alignment of PaletteExtra"][::core::mem::align_of::<PaletteExtra>() - 2usize];
8522    ["Offset of field: PaletteExtra::pe_Semaphore"]
8523        [::core::mem::offset_of!(PaletteExtra, pe_Semaphore) - 0usize];
8524    ["Offset of field: PaletteExtra::pe_FirstFree"]
8525        [::core::mem::offset_of!(PaletteExtra, pe_FirstFree) - 46usize];
8526    ["Offset of field: PaletteExtra::pe_NFree"]
8527        [::core::mem::offset_of!(PaletteExtra, pe_NFree) - 48usize];
8528    ["Offset of field: PaletteExtra::pe_FirstShared"]
8529        [::core::mem::offset_of!(PaletteExtra, pe_FirstShared) - 50usize];
8530    ["Offset of field: PaletteExtra::pe_NShared"]
8531        [::core::mem::offset_of!(PaletteExtra, pe_NShared) - 52usize];
8532    ["Offset of field: PaletteExtra::pe_RefCnt"]
8533        [::core::mem::offset_of!(PaletteExtra, pe_RefCnt) - 54usize];
8534    ["Offset of field: PaletteExtra::pe_AllocList"]
8535        [::core::mem::offset_of!(PaletteExtra, pe_AllocList) - 58usize];
8536    ["Offset of field: PaletteExtra::pe_ViewPort"]
8537        [::core::mem::offset_of!(PaletteExtra, pe_ViewPort) - 62usize];
8538    ["Offset of field: PaletteExtra::pe_SharableColors"]
8539        [::core::mem::offset_of!(PaletteExtra, pe_SharableColors) - 66usize];
8540};
8541#[repr(C, packed(2))]
8542#[derive(Debug, Copy, Clone)]
8543pub struct DBufInfo {
8544    pub dbi_Link1: APTR,
8545    pub dbi_Count1: ULONG,
8546    pub dbi_SafeMessage: Message,
8547    pub dbi_UserData1: APTR,
8548    pub dbi_Link2: APTR,
8549    pub dbi_Count2: ULONG,
8550    pub dbi_DispMessage: Message,
8551    pub dbi_UserData2: APTR,
8552    pub dbi_MatchLong: ULONG,
8553    pub dbi_CopPtr1: APTR,
8554    pub dbi_CopPtr2: APTR,
8555    pub dbi_CopPtr3: APTR,
8556    pub dbi_BeamPos1: UWORD,
8557    pub dbi_BeamPos2: UWORD,
8558}
8559#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8560const _: () = {
8561    ["Size of DBufInfo"][::core::mem::size_of::<DBufInfo>() - 84usize];
8562    ["Alignment of DBufInfo"][::core::mem::align_of::<DBufInfo>() - 2usize];
8563    ["Offset of field: DBufInfo::dbi_Link1"][::core::mem::offset_of!(DBufInfo, dbi_Link1) - 0usize];
8564    ["Offset of field: DBufInfo::dbi_Count1"]
8565        [::core::mem::offset_of!(DBufInfo, dbi_Count1) - 4usize];
8566    ["Offset of field: DBufInfo::dbi_SafeMessage"]
8567        [::core::mem::offset_of!(DBufInfo, dbi_SafeMessage) - 8usize];
8568    ["Offset of field: DBufInfo::dbi_UserData1"]
8569        [::core::mem::offset_of!(DBufInfo, dbi_UserData1) - 28usize];
8570    ["Offset of field: DBufInfo::dbi_Link2"]
8571        [::core::mem::offset_of!(DBufInfo, dbi_Link2) - 32usize];
8572    ["Offset of field: DBufInfo::dbi_Count2"]
8573        [::core::mem::offset_of!(DBufInfo, dbi_Count2) - 36usize];
8574    ["Offset of field: DBufInfo::dbi_DispMessage"]
8575        [::core::mem::offset_of!(DBufInfo, dbi_DispMessage) - 40usize];
8576    ["Offset of field: DBufInfo::dbi_UserData2"]
8577        [::core::mem::offset_of!(DBufInfo, dbi_UserData2) - 60usize];
8578    ["Offset of field: DBufInfo::dbi_MatchLong"]
8579        [::core::mem::offset_of!(DBufInfo, dbi_MatchLong) - 64usize];
8580    ["Offset of field: DBufInfo::dbi_CopPtr1"]
8581        [::core::mem::offset_of!(DBufInfo, dbi_CopPtr1) - 68usize];
8582    ["Offset of field: DBufInfo::dbi_CopPtr2"]
8583        [::core::mem::offset_of!(DBufInfo, dbi_CopPtr2) - 72usize];
8584    ["Offset of field: DBufInfo::dbi_CopPtr3"]
8585        [::core::mem::offset_of!(DBufInfo, dbi_CopPtr3) - 76usize];
8586    ["Offset of field: DBufInfo::dbi_BeamPos1"]
8587        [::core::mem::offset_of!(DBufInfo, dbi_BeamPos1) - 80usize];
8588    ["Offset of field: DBufInfo::dbi_BeamPos2"]
8589        [::core::mem::offset_of!(DBufInfo, dbi_BeamPos2) - 82usize];
8590};
8591#[repr(C, packed(2))]
8592#[derive(Debug, Copy, Clone)]
8593pub struct AreaInfo {
8594    pub VctrTbl: *mut WORD,
8595    pub VctrPtr: *mut WORD,
8596    pub FlagTbl: *mut BYTE,
8597    pub FlagPtr: *mut BYTE,
8598    pub Count: WORD,
8599    pub MaxCount: WORD,
8600    pub FirstX: WORD,
8601    pub FirstY: WORD,
8602}
8603#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8604const _: () = {
8605    ["Size of AreaInfo"][::core::mem::size_of::<AreaInfo>() - 24usize];
8606    ["Alignment of AreaInfo"][::core::mem::align_of::<AreaInfo>() - 2usize];
8607    ["Offset of field: AreaInfo::VctrTbl"][::core::mem::offset_of!(AreaInfo, VctrTbl) - 0usize];
8608    ["Offset of field: AreaInfo::VctrPtr"][::core::mem::offset_of!(AreaInfo, VctrPtr) - 4usize];
8609    ["Offset of field: AreaInfo::FlagTbl"][::core::mem::offset_of!(AreaInfo, FlagTbl) - 8usize];
8610    ["Offset of field: AreaInfo::FlagPtr"][::core::mem::offset_of!(AreaInfo, FlagPtr) - 12usize];
8611    ["Offset of field: AreaInfo::Count"][::core::mem::offset_of!(AreaInfo, Count) - 16usize];
8612    ["Offset of field: AreaInfo::MaxCount"][::core::mem::offset_of!(AreaInfo, MaxCount) - 18usize];
8613    ["Offset of field: AreaInfo::FirstX"][::core::mem::offset_of!(AreaInfo, FirstX) - 20usize];
8614    ["Offset of field: AreaInfo::FirstY"][::core::mem::offset_of!(AreaInfo, FirstY) - 22usize];
8615};
8616#[repr(C, packed(2))]
8617#[derive(Debug, Copy, Clone)]
8618pub struct TmpRas {
8619    pub RasPtr: *mut BYTE,
8620    pub Size: LONG,
8621}
8622#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8623const _: () = {
8624    ["Size of TmpRas"][::core::mem::size_of::<TmpRas>() - 8usize];
8625    ["Alignment of TmpRas"][::core::mem::align_of::<TmpRas>() - 2usize];
8626    ["Offset of field: TmpRas::RasPtr"][::core::mem::offset_of!(TmpRas, RasPtr) - 0usize];
8627    ["Offset of field: TmpRas::Size"][::core::mem::offset_of!(TmpRas, Size) - 4usize];
8628};
8629#[repr(C, packed(2))]
8630#[derive(Debug, Copy, Clone)]
8631pub struct GelsInfo {
8632    pub sprRsrvd: BYTE,
8633    pub Flags: UBYTE,
8634    pub gelHead: *mut VSprite,
8635    pub gelTail: *mut VSprite,
8636    pub nextLine: *mut WORD,
8637    pub lastColor: *mut *mut WORD,
8638    pub collHandler: *mut collTable,
8639    pub leftmost: WORD,
8640    pub rightmost: WORD,
8641    pub topmost: WORD,
8642    pub bottommost: WORD,
8643    pub firstBlissObj: APTR,
8644    pub lastBlissObj: APTR,
8645}
8646#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8647const _: () = {
8648    ["Size of GelsInfo"][::core::mem::size_of::<GelsInfo>() - 38usize];
8649    ["Alignment of GelsInfo"][::core::mem::align_of::<GelsInfo>() - 2usize];
8650    ["Offset of field: GelsInfo::sprRsrvd"][::core::mem::offset_of!(GelsInfo, sprRsrvd) - 0usize];
8651    ["Offset of field: GelsInfo::Flags"][::core::mem::offset_of!(GelsInfo, Flags) - 1usize];
8652    ["Offset of field: GelsInfo::gelHead"][::core::mem::offset_of!(GelsInfo, gelHead) - 2usize];
8653    ["Offset of field: GelsInfo::gelTail"][::core::mem::offset_of!(GelsInfo, gelTail) - 6usize];
8654    ["Offset of field: GelsInfo::nextLine"][::core::mem::offset_of!(GelsInfo, nextLine) - 10usize];
8655    ["Offset of field: GelsInfo::lastColor"]
8656        [::core::mem::offset_of!(GelsInfo, lastColor) - 14usize];
8657    ["Offset of field: GelsInfo::collHandler"]
8658        [::core::mem::offset_of!(GelsInfo, collHandler) - 18usize];
8659    ["Offset of field: GelsInfo::leftmost"][::core::mem::offset_of!(GelsInfo, leftmost) - 22usize];
8660    ["Offset of field: GelsInfo::rightmost"]
8661        [::core::mem::offset_of!(GelsInfo, rightmost) - 24usize];
8662    ["Offset of field: GelsInfo::topmost"][::core::mem::offset_of!(GelsInfo, topmost) - 26usize];
8663    ["Offset of field: GelsInfo::bottommost"]
8664        [::core::mem::offset_of!(GelsInfo, bottommost) - 28usize];
8665    ["Offset of field: GelsInfo::firstBlissObj"]
8666        [::core::mem::offset_of!(GelsInfo, firstBlissObj) - 30usize];
8667    ["Offset of field: GelsInfo::lastBlissObj"]
8668        [::core::mem::offset_of!(GelsInfo, lastBlissObj) - 34usize];
8669};
8670#[repr(C, packed(2))]
8671#[derive(Debug, Copy, Clone)]
8672pub struct RastPort {
8673    pub Layer: *mut Layer,
8674    pub BitMap: *mut BitMap,
8675    pub AreaPtrn: *mut UWORD,
8676    pub TmpRas: *mut TmpRas,
8677    pub AreaInfo: *mut AreaInfo,
8678    pub GelsInfo: *mut GelsInfo,
8679    pub Mask: UBYTE,
8680    pub FgPen: BYTE,
8681    pub BgPen: BYTE,
8682    pub AOlPen: BYTE,
8683    pub DrawMode: BYTE,
8684    pub AreaPtSz: BYTE,
8685    pub linpatcnt: BYTE,
8686    pub dummy: BYTE,
8687    pub Flags: UWORD,
8688    pub LinePtrn: UWORD,
8689    pub cp_x: WORD,
8690    pub cp_y: WORD,
8691    pub minterms: [UBYTE; 8usize],
8692    pub PenWidth: WORD,
8693    pub PenHeight: WORD,
8694    pub Font: *mut TextFont,
8695    pub AlgoStyle: UBYTE,
8696    pub TxFlags: UBYTE,
8697    pub TxHeight: UWORD,
8698    pub TxWidth: UWORD,
8699    pub TxBaseline: UWORD,
8700    pub TxSpacing: WORD,
8701    pub RP_User: *mut APTR,
8702    pub longreserved: [ULONG; 2usize],
8703    pub wordreserved: [UWORD; 7usize],
8704    pub reserved: [UBYTE; 8usize],
8705}
8706#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8707const _: () = {
8708    ["Size of RastPort"][::core::mem::size_of::<RastPort>() - 100usize];
8709    ["Alignment of RastPort"][::core::mem::align_of::<RastPort>() - 2usize];
8710    ["Offset of field: RastPort::Layer"][::core::mem::offset_of!(RastPort, Layer) - 0usize];
8711    ["Offset of field: RastPort::BitMap"][::core::mem::offset_of!(RastPort, BitMap) - 4usize];
8712    ["Offset of field: RastPort::AreaPtrn"][::core::mem::offset_of!(RastPort, AreaPtrn) - 8usize];
8713    ["Offset of field: RastPort::TmpRas"][::core::mem::offset_of!(RastPort, TmpRas) - 12usize];
8714    ["Offset of field: RastPort::AreaInfo"][::core::mem::offset_of!(RastPort, AreaInfo) - 16usize];
8715    ["Offset of field: RastPort::GelsInfo"][::core::mem::offset_of!(RastPort, GelsInfo) - 20usize];
8716    ["Offset of field: RastPort::Mask"][::core::mem::offset_of!(RastPort, Mask) - 24usize];
8717    ["Offset of field: RastPort::FgPen"][::core::mem::offset_of!(RastPort, FgPen) - 25usize];
8718    ["Offset of field: RastPort::BgPen"][::core::mem::offset_of!(RastPort, BgPen) - 26usize];
8719    ["Offset of field: RastPort::AOlPen"][::core::mem::offset_of!(RastPort, AOlPen) - 27usize];
8720    ["Offset of field: RastPort::DrawMode"][::core::mem::offset_of!(RastPort, DrawMode) - 28usize];
8721    ["Offset of field: RastPort::AreaPtSz"][::core::mem::offset_of!(RastPort, AreaPtSz) - 29usize];
8722    ["Offset of field: RastPort::linpatcnt"]
8723        [::core::mem::offset_of!(RastPort, linpatcnt) - 30usize];
8724    ["Offset of field: RastPort::dummy"][::core::mem::offset_of!(RastPort, dummy) - 31usize];
8725    ["Offset of field: RastPort::Flags"][::core::mem::offset_of!(RastPort, Flags) - 32usize];
8726    ["Offset of field: RastPort::LinePtrn"][::core::mem::offset_of!(RastPort, LinePtrn) - 34usize];
8727    ["Offset of field: RastPort::cp_x"][::core::mem::offset_of!(RastPort, cp_x) - 36usize];
8728    ["Offset of field: RastPort::cp_y"][::core::mem::offset_of!(RastPort, cp_y) - 38usize];
8729    ["Offset of field: RastPort::minterms"][::core::mem::offset_of!(RastPort, minterms) - 40usize];
8730    ["Offset of field: RastPort::PenWidth"][::core::mem::offset_of!(RastPort, PenWidth) - 48usize];
8731    ["Offset of field: RastPort::PenHeight"]
8732        [::core::mem::offset_of!(RastPort, PenHeight) - 50usize];
8733    ["Offset of field: RastPort::Font"][::core::mem::offset_of!(RastPort, Font) - 52usize];
8734    ["Offset of field: RastPort::AlgoStyle"]
8735        [::core::mem::offset_of!(RastPort, AlgoStyle) - 56usize];
8736    ["Offset of field: RastPort::TxFlags"][::core::mem::offset_of!(RastPort, TxFlags) - 57usize];
8737    ["Offset of field: RastPort::TxHeight"][::core::mem::offset_of!(RastPort, TxHeight) - 58usize];
8738    ["Offset of field: RastPort::TxWidth"][::core::mem::offset_of!(RastPort, TxWidth) - 60usize];
8739    ["Offset of field: RastPort::TxBaseline"]
8740        [::core::mem::offset_of!(RastPort, TxBaseline) - 62usize];
8741    ["Offset of field: RastPort::TxSpacing"]
8742        [::core::mem::offset_of!(RastPort, TxSpacing) - 64usize];
8743    ["Offset of field: RastPort::RP_User"][::core::mem::offset_of!(RastPort, RP_User) - 66usize];
8744    ["Offset of field: RastPort::longreserved"]
8745        [::core::mem::offset_of!(RastPort, longreserved) - 70usize];
8746    ["Offset of field: RastPort::wordreserved"]
8747        [::core::mem::offset_of!(RastPort, wordreserved) - 78usize];
8748    ["Offset of field: RastPort::reserved"][::core::mem::offset_of!(RastPort, reserved) - 92usize];
8749};
8750#[repr(C, packed(2))]
8751#[derive(Debug, Copy, Clone)]
8752pub struct Layer_Info {
8753    pub top_layer: *mut Layer,
8754    pub resPtr1: *mut ::core::ffi::c_void,
8755    pub resPtr2: *mut ::core::ffi::c_void,
8756    pub FreeClipRects: *mut ClipRect,
8757    pub bounds: Rectangle,
8758    pub Lock: SignalSemaphore,
8759    pub gs_Head: MinList,
8760    pub PrivateReserve3: WORD,
8761    pub PrivateReserve4: *mut ::core::ffi::c_void,
8762    pub Flags: UWORD,
8763    pub res_count: BYTE,
8764    pub LockLayersCount: BYTE,
8765    pub PrivateReserve5: BYTE,
8766    pub UserClipRectsCount: BYTE,
8767    pub BlankHook: *mut Hook,
8768    pub resPtr5: *mut ::core::ffi::c_void,
8769}
8770#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8771const _: () = {
8772    ["Size of Layer_Info"][::core::mem::size_of::<Layer_Info>() - 102usize];
8773    ["Alignment of Layer_Info"][::core::mem::align_of::<Layer_Info>() - 2usize];
8774    ["Offset of field: Layer_Info::top_layer"]
8775        [::core::mem::offset_of!(Layer_Info, top_layer) - 0usize];
8776    ["Offset of field: Layer_Info::resPtr1"][::core::mem::offset_of!(Layer_Info, resPtr1) - 4usize];
8777    ["Offset of field: Layer_Info::resPtr2"][::core::mem::offset_of!(Layer_Info, resPtr2) - 8usize];
8778    ["Offset of field: Layer_Info::FreeClipRects"]
8779        [::core::mem::offset_of!(Layer_Info, FreeClipRects) - 12usize];
8780    ["Offset of field: Layer_Info::bounds"][::core::mem::offset_of!(Layer_Info, bounds) - 16usize];
8781    ["Offset of field: Layer_Info::Lock"][::core::mem::offset_of!(Layer_Info, Lock) - 24usize];
8782    ["Offset of field: Layer_Info::gs_Head"]
8783        [::core::mem::offset_of!(Layer_Info, gs_Head) - 70usize];
8784    ["Offset of field: Layer_Info::PrivateReserve3"]
8785        [::core::mem::offset_of!(Layer_Info, PrivateReserve3) - 82usize];
8786    ["Offset of field: Layer_Info::PrivateReserve4"]
8787        [::core::mem::offset_of!(Layer_Info, PrivateReserve4) - 84usize];
8788    ["Offset of field: Layer_Info::Flags"][::core::mem::offset_of!(Layer_Info, Flags) - 88usize];
8789    ["Offset of field: Layer_Info::res_count"]
8790        [::core::mem::offset_of!(Layer_Info, res_count) - 90usize];
8791    ["Offset of field: Layer_Info::LockLayersCount"]
8792        [::core::mem::offset_of!(Layer_Info, LockLayersCount) - 91usize];
8793    ["Offset of field: Layer_Info::PrivateReserve5"]
8794        [::core::mem::offset_of!(Layer_Info, PrivateReserve5) - 92usize];
8795    ["Offset of field: Layer_Info::UserClipRectsCount"]
8796        [::core::mem::offset_of!(Layer_Info, UserClipRectsCount) - 93usize];
8797    ["Offset of field: Layer_Info::BlankHook"]
8798        [::core::mem::offset_of!(Layer_Info, BlankHook) - 94usize];
8799    ["Offset of field: Layer_Info::resPtr5"]
8800        [::core::mem::offset_of!(Layer_Info, resPtr5) - 98usize];
8801};
8802#[repr(C, packed(2))]
8803#[derive(Debug, Copy, Clone)]
8804pub struct TextAttr {
8805    pub ta_Name: STRPTR,
8806    pub ta_YSize: UWORD,
8807    pub ta_Style: UBYTE,
8808    pub ta_Flags: UBYTE,
8809}
8810#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8811const _: () = {
8812    ["Size of TextAttr"][::core::mem::size_of::<TextAttr>() - 8usize];
8813    ["Alignment of TextAttr"][::core::mem::align_of::<TextAttr>() - 2usize];
8814    ["Offset of field: TextAttr::ta_Name"][::core::mem::offset_of!(TextAttr, ta_Name) - 0usize];
8815    ["Offset of field: TextAttr::ta_YSize"][::core::mem::offset_of!(TextAttr, ta_YSize) - 4usize];
8816    ["Offset of field: TextAttr::ta_Style"][::core::mem::offset_of!(TextAttr, ta_Style) - 6usize];
8817    ["Offset of field: TextAttr::ta_Flags"][::core::mem::offset_of!(TextAttr, ta_Flags) - 7usize];
8818};
8819#[repr(C, packed(2))]
8820#[derive(Debug, Copy, Clone)]
8821pub struct TTextAttr {
8822    pub tta_Name: STRPTR,
8823    pub tta_YSize: UWORD,
8824    pub tta_Style: UBYTE,
8825    pub tta_Flags: UBYTE,
8826    pub tta_Tags: *mut TagItem,
8827}
8828#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8829const _: () = {
8830    ["Size of TTextAttr"][::core::mem::size_of::<TTextAttr>() - 12usize];
8831    ["Alignment of TTextAttr"][::core::mem::align_of::<TTextAttr>() - 2usize];
8832    ["Offset of field: TTextAttr::tta_Name"][::core::mem::offset_of!(TTextAttr, tta_Name) - 0usize];
8833    ["Offset of field: TTextAttr::tta_YSize"]
8834        [::core::mem::offset_of!(TTextAttr, tta_YSize) - 4usize];
8835    ["Offset of field: TTextAttr::tta_Style"]
8836        [::core::mem::offset_of!(TTextAttr, tta_Style) - 6usize];
8837    ["Offset of field: TTextAttr::tta_Flags"]
8838        [::core::mem::offset_of!(TTextAttr, tta_Flags) - 7usize];
8839    ["Offset of field: TTextAttr::tta_Tags"][::core::mem::offset_of!(TTextAttr, tta_Tags) - 8usize];
8840};
8841#[repr(C, packed(2))]
8842#[derive(Debug, Copy, Clone)]
8843pub struct TextFont {
8844    pub tf_Message: Message,
8845    pub tf_YSize: UWORD,
8846    pub tf_Style: UBYTE,
8847    pub tf_Flags: UBYTE,
8848    pub tf_XSize: UWORD,
8849    pub tf_Baseline: UWORD,
8850    pub tf_BoldSmear: UWORD,
8851    pub tf_Accessors: UWORD,
8852    pub tf_LoChar: UBYTE,
8853    pub tf_HiChar: UBYTE,
8854    pub tf_CharData: APTR,
8855    pub tf_Modulo: UWORD,
8856    pub tf_CharLoc: APTR,
8857    pub tf_CharSpace: APTR,
8858    pub tf_CharKern: APTR,
8859}
8860#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8861const _: () = {
8862    ["Size of TextFont"][::core::mem::size_of::<TextFont>() - 52usize];
8863    ["Alignment of TextFont"][::core::mem::align_of::<TextFont>() - 2usize];
8864    ["Offset of field: TextFont::tf_Message"]
8865        [::core::mem::offset_of!(TextFont, tf_Message) - 0usize];
8866    ["Offset of field: TextFont::tf_YSize"][::core::mem::offset_of!(TextFont, tf_YSize) - 20usize];
8867    ["Offset of field: TextFont::tf_Style"][::core::mem::offset_of!(TextFont, tf_Style) - 22usize];
8868    ["Offset of field: TextFont::tf_Flags"][::core::mem::offset_of!(TextFont, tf_Flags) - 23usize];
8869    ["Offset of field: TextFont::tf_XSize"][::core::mem::offset_of!(TextFont, tf_XSize) - 24usize];
8870    ["Offset of field: TextFont::tf_Baseline"]
8871        [::core::mem::offset_of!(TextFont, tf_Baseline) - 26usize];
8872    ["Offset of field: TextFont::tf_BoldSmear"]
8873        [::core::mem::offset_of!(TextFont, tf_BoldSmear) - 28usize];
8874    ["Offset of field: TextFont::tf_Accessors"]
8875        [::core::mem::offset_of!(TextFont, tf_Accessors) - 30usize];
8876    ["Offset of field: TextFont::tf_LoChar"]
8877        [::core::mem::offset_of!(TextFont, tf_LoChar) - 32usize];
8878    ["Offset of field: TextFont::tf_HiChar"]
8879        [::core::mem::offset_of!(TextFont, tf_HiChar) - 33usize];
8880    ["Offset of field: TextFont::tf_CharData"]
8881        [::core::mem::offset_of!(TextFont, tf_CharData) - 34usize];
8882    ["Offset of field: TextFont::tf_Modulo"]
8883        [::core::mem::offset_of!(TextFont, tf_Modulo) - 38usize];
8884    ["Offset of field: TextFont::tf_CharLoc"]
8885        [::core::mem::offset_of!(TextFont, tf_CharLoc) - 40usize];
8886    ["Offset of field: TextFont::tf_CharSpace"]
8887        [::core::mem::offset_of!(TextFont, tf_CharSpace) - 44usize];
8888    ["Offset of field: TextFont::tf_CharKern"]
8889        [::core::mem::offset_of!(TextFont, tf_CharKern) - 48usize];
8890};
8891#[repr(C, packed(2))]
8892#[derive(Debug, Copy, Clone)]
8893pub struct TextFontExtension {
8894    pub tfe_MatchWord: UWORD,
8895    pub tfe_Flags0: UBYTE,
8896    pub tfe_Flags1: UBYTE,
8897    pub tfe_BackPtr: *mut TextFont,
8898    pub tfe_OrigReplyPort: *mut MsgPort,
8899    pub tfe_Tags: *mut TagItem,
8900    pub tfe_OFontPatchS: *mut UWORD,
8901    pub tfe_OFontPatchK: *mut UWORD,
8902}
8903#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8904const _: () = {
8905    ["Size of TextFontExtension"][::core::mem::size_of::<TextFontExtension>() - 24usize];
8906    ["Alignment of TextFontExtension"][::core::mem::align_of::<TextFontExtension>() - 2usize];
8907    ["Offset of field: TextFontExtension::tfe_MatchWord"]
8908        [::core::mem::offset_of!(TextFontExtension, tfe_MatchWord) - 0usize];
8909    ["Offset of field: TextFontExtension::tfe_Flags0"]
8910        [::core::mem::offset_of!(TextFontExtension, tfe_Flags0) - 2usize];
8911    ["Offset of field: TextFontExtension::tfe_Flags1"]
8912        [::core::mem::offset_of!(TextFontExtension, tfe_Flags1) - 3usize];
8913    ["Offset of field: TextFontExtension::tfe_BackPtr"]
8914        [::core::mem::offset_of!(TextFontExtension, tfe_BackPtr) - 4usize];
8915    ["Offset of field: TextFontExtension::tfe_OrigReplyPort"]
8916        [::core::mem::offset_of!(TextFontExtension, tfe_OrigReplyPort) - 8usize];
8917    ["Offset of field: TextFontExtension::tfe_Tags"]
8918        [::core::mem::offset_of!(TextFontExtension, tfe_Tags) - 12usize];
8919    ["Offset of field: TextFontExtension::tfe_OFontPatchS"]
8920        [::core::mem::offset_of!(TextFontExtension, tfe_OFontPatchS) - 16usize];
8921    ["Offset of field: TextFontExtension::tfe_OFontPatchK"]
8922        [::core::mem::offset_of!(TextFontExtension, tfe_OFontPatchK) - 20usize];
8923};
8924#[repr(C, packed(2))]
8925#[derive(Debug, Copy, Clone)]
8926pub struct ColorFontColors {
8927    pub cfc_Reserved: UWORD,
8928    pub cfc_Count: UWORD,
8929    pub cfc_ColorTable: *mut UWORD,
8930}
8931#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8932const _: () = {
8933    ["Size of ColorFontColors"][::core::mem::size_of::<ColorFontColors>() - 8usize];
8934    ["Alignment of ColorFontColors"][::core::mem::align_of::<ColorFontColors>() - 2usize];
8935    ["Offset of field: ColorFontColors::cfc_Reserved"]
8936        [::core::mem::offset_of!(ColorFontColors, cfc_Reserved) - 0usize];
8937    ["Offset of field: ColorFontColors::cfc_Count"]
8938        [::core::mem::offset_of!(ColorFontColors, cfc_Count) - 2usize];
8939    ["Offset of field: ColorFontColors::cfc_ColorTable"]
8940        [::core::mem::offset_of!(ColorFontColors, cfc_ColorTable) - 4usize];
8941};
8942#[repr(C, packed(2))]
8943#[derive(Debug, Copy, Clone)]
8944pub struct ColorTextFont {
8945    pub ctf_TF: TextFont,
8946    pub ctf_Flags: UWORD,
8947    pub ctf_Depth: UBYTE,
8948    pub ctf_FgColor: UBYTE,
8949    pub ctf_Low: UBYTE,
8950    pub ctf_High: UBYTE,
8951    pub ctf_PlanePick: UBYTE,
8952    pub ctf_PlaneOnOff: UBYTE,
8953    pub ctf_ColorFontColors: *mut ColorFontColors,
8954    pub ctf_CharData: [APTR; 8usize],
8955}
8956#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8957const _: () = {
8958    ["Size of ColorTextFont"][::core::mem::size_of::<ColorTextFont>() - 96usize];
8959    ["Alignment of ColorTextFont"][::core::mem::align_of::<ColorTextFont>() - 2usize];
8960    ["Offset of field: ColorTextFont::ctf_TF"]
8961        [::core::mem::offset_of!(ColorTextFont, ctf_TF) - 0usize];
8962    ["Offset of field: ColorTextFont::ctf_Flags"]
8963        [::core::mem::offset_of!(ColorTextFont, ctf_Flags) - 52usize];
8964    ["Offset of field: ColorTextFont::ctf_Depth"]
8965        [::core::mem::offset_of!(ColorTextFont, ctf_Depth) - 54usize];
8966    ["Offset of field: ColorTextFont::ctf_FgColor"]
8967        [::core::mem::offset_of!(ColorTextFont, ctf_FgColor) - 55usize];
8968    ["Offset of field: ColorTextFont::ctf_Low"]
8969        [::core::mem::offset_of!(ColorTextFont, ctf_Low) - 56usize];
8970    ["Offset of field: ColorTextFont::ctf_High"]
8971        [::core::mem::offset_of!(ColorTextFont, ctf_High) - 57usize];
8972    ["Offset of field: ColorTextFont::ctf_PlanePick"]
8973        [::core::mem::offset_of!(ColorTextFont, ctf_PlanePick) - 58usize];
8974    ["Offset of field: ColorTextFont::ctf_PlaneOnOff"]
8975        [::core::mem::offset_of!(ColorTextFont, ctf_PlaneOnOff) - 59usize];
8976    ["Offset of field: ColorTextFont::ctf_ColorFontColors"]
8977        [::core::mem::offset_of!(ColorTextFont, ctf_ColorFontColors) - 60usize];
8978    ["Offset of field: ColorTextFont::ctf_CharData"]
8979        [::core::mem::offset_of!(ColorTextFont, ctf_CharData) - 64usize];
8980};
8981#[repr(C)]
8982#[derive(Debug, Copy, Clone)]
8983pub struct TextExtent {
8984    pub te_Width: UWORD,
8985    pub te_Height: UWORD,
8986    pub te_Extent: Rectangle,
8987}
8988#[allow(clippy::unnecessary_operation, clippy::identity_op)]
8989const _: () = {
8990    ["Size of TextExtent"][::core::mem::size_of::<TextExtent>() - 12usize];
8991    ["Alignment of TextExtent"][::core::mem::align_of::<TextExtent>() - 2usize];
8992    ["Offset of field: TextExtent::te_Width"]
8993        [::core::mem::offset_of!(TextExtent, te_Width) - 0usize];
8994    ["Offset of field: TextExtent::te_Height"]
8995        [::core::mem::offset_of!(TextExtent, te_Height) - 2usize];
8996    ["Offset of field: TextExtent::te_Extent"]
8997        [::core::mem::offset_of!(TextExtent, te_Extent) - 4usize];
8998};
8999#[repr(C, packed(2))]
9000#[derive(Debug, Copy, Clone)]
9001pub struct TimeVal {
9002    pub tv_secs: ULONG,
9003    pub tv_micro: ULONG,
9004}
9005#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9006const _: () = {
9007    ["Size of TimeVal"][::core::mem::size_of::<TimeVal>() - 8usize];
9008    ["Alignment of TimeVal"][::core::mem::align_of::<TimeVal>() - 2usize];
9009    ["Offset of field: TimeVal::tv_secs"][::core::mem::offset_of!(TimeVal, tv_secs) - 0usize];
9010    ["Offset of field: TimeVal::tv_micro"][::core::mem::offset_of!(TimeVal, tv_micro) - 4usize];
9011};
9012#[repr(C)]
9013#[derive(Debug, Copy, Clone)]
9014pub struct TimeRequest {
9015    pub tr_node: IORequest,
9016    pub tr_time: TimeVal,
9017}
9018#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9019const _: () = {
9020    ["Size of TimeRequest"][::core::mem::size_of::<TimeRequest>() - 40usize];
9021    ["Alignment of TimeRequest"][::core::mem::align_of::<TimeRequest>() - 2usize];
9022    ["Offset of field: TimeRequest::tr_node"]
9023        [::core::mem::offset_of!(TimeRequest, tr_node) - 0usize];
9024    ["Offset of field: TimeRequest::tr_time"]
9025        [::core::mem::offset_of!(TimeRequest, tr_time) - 32usize];
9026};
9027#[repr(C, packed(2))]
9028#[derive(Debug, Copy, Clone)]
9029pub struct timeval {
9030    pub tv_secs: ULONG,
9031    pub tv_micro: ULONG,
9032}
9033#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9034const _: () = {
9035    ["Size of timeval"][::core::mem::size_of::<timeval>() - 8usize];
9036    ["Alignment of timeval"][::core::mem::align_of::<timeval>() - 2usize];
9037    ["Offset of field: timeval::tv_secs"][::core::mem::offset_of!(timeval, tv_secs) - 0usize];
9038    ["Offset of field: timeval::tv_micro"][::core::mem::offset_of!(timeval, tv_micro) - 4usize];
9039};
9040#[repr(C)]
9041#[derive(Debug, Copy, Clone)]
9042pub struct timerequest {
9043    pub tr_node: IORequest,
9044    pub tr_time: timeval,
9045}
9046#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9047const _: () = {
9048    ["Size of timerequest"][::core::mem::size_of::<timerequest>() - 40usize];
9049    ["Alignment of timerequest"][::core::mem::align_of::<timerequest>() - 2usize];
9050    ["Offset of field: timerequest::tr_node"]
9051        [::core::mem::offset_of!(timerequest, tr_node) - 0usize];
9052    ["Offset of field: timerequest::tr_time"]
9053        [::core::mem::offset_of!(timerequest, tr_time) - 32usize];
9054};
9055pub type TimeVal_Type = timeval;
9056pub type TimeRequest_Type = timerequest;
9057#[repr(C, packed(2))]
9058#[derive(Debug, Copy, Clone)]
9059pub struct EClockVal {
9060    pub ev_hi: ULONG,
9061    pub ev_lo: ULONG,
9062}
9063#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9064const _: () = {
9065    ["Size of EClockVal"][::core::mem::size_of::<EClockVal>() - 8usize];
9066    ["Alignment of EClockVal"][::core::mem::align_of::<EClockVal>() - 2usize];
9067    ["Offset of field: EClockVal::ev_hi"][::core::mem::offset_of!(EClockVal, ev_hi) - 0usize];
9068    ["Offset of field: EClockVal::ev_lo"][::core::mem::offset_of!(EClockVal, ev_lo) - 4usize];
9069};
9070#[repr(C, packed(2))]
9071#[derive(Debug, Copy, Clone)]
9072pub struct IEPointerPixel {
9073    pub iepp_Screen: *mut Screen,
9074    pub iepp_Position: IEPointerPixel__bindgen_ty_1,
9075}
9076#[repr(C)]
9077#[derive(Debug, Copy, Clone)]
9078pub struct IEPointerPixel__bindgen_ty_1 {
9079    pub X: WORD,
9080    pub Y: WORD,
9081}
9082#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9083const _: () = {
9084    ["Size of IEPointerPixel__bindgen_ty_1"]
9085        [::core::mem::size_of::<IEPointerPixel__bindgen_ty_1>() - 4usize];
9086    ["Alignment of IEPointerPixel__bindgen_ty_1"]
9087        [::core::mem::align_of::<IEPointerPixel__bindgen_ty_1>() - 2usize];
9088    ["Offset of field: IEPointerPixel__bindgen_ty_1::X"]
9089        [::core::mem::offset_of!(IEPointerPixel__bindgen_ty_1, X) - 0usize];
9090    ["Offset of field: IEPointerPixel__bindgen_ty_1::Y"]
9091        [::core::mem::offset_of!(IEPointerPixel__bindgen_ty_1, Y) - 2usize];
9092};
9093#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9094const _: () = {
9095    ["Size of IEPointerPixel"][::core::mem::size_of::<IEPointerPixel>() - 8usize];
9096    ["Alignment of IEPointerPixel"][::core::mem::align_of::<IEPointerPixel>() - 2usize];
9097    ["Offset of field: IEPointerPixel::iepp_Screen"]
9098        [::core::mem::offset_of!(IEPointerPixel, iepp_Screen) - 0usize];
9099    ["Offset of field: IEPointerPixel::iepp_Position"]
9100        [::core::mem::offset_of!(IEPointerPixel, iepp_Position) - 4usize];
9101};
9102#[repr(C)]
9103#[derive(Debug, Copy, Clone)]
9104pub struct IEPointerTablet {
9105    pub iept_Range: IEPointerTablet__bindgen_ty_1,
9106    pub iept_Value: IEPointerTablet__bindgen_ty_2,
9107    pub iept_Pressure: WORD,
9108}
9109#[repr(C)]
9110#[derive(Debug, Copy, Clone)]
9111pub struct IEPointerTablet__bindgen_ty_1 {
9112    pub X: UWORD,
9113    pub Y: UWORD,
9114}
9115#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9116const _: () = {
9117    ["Size of IEPointerTablet__bindgen_ty_1"]
9118        [::core::mem::size_of::<IEPointerTablet__bindgen_ty_1>() - 4usize];
9119    ["Alignment of IEPointerTablet__bindgen_ty_1"]
9120        [::core::mem::align_of::<IEPointerTablet__bindgen_ty_1>() - 2usize];
9121    ["Offset of field: IEPointerTablet__bindgen_ty_1::X"]
9122        [::core::mem::offset_of!(IEPointerTablet__bindgen_ty_1, X) - 0usize];
9123    ["Offset of field: IEPointerTablet__bindgen_ty_1::Y"]
9124        [::core::mem::offset_of!(IEPointerTablet__bindgen_ty_1, Y) - 2usize];
9125};
9126#[repr(C)]
9127#[derive(Debug, Copy, Clone)]
9128pub struct IEPointerTablet__bindgen_ty_2 {
9129    pub X: UWORD,
9130    pub Y: UWORD,
9131}
9132#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9133const _: () = {
9134    ["Size of IEPointerTablet__bindgen_ty_2"]
9135        [::core::mem::size_of::<IEPointerTablet__bindgen_ty_2>() - 4usize];
9136    ["Alignment of IEPointerTablet__bindgen_ty_2"]
9137        [::core::mem::align_of::<IEPointerTablet__bindgen_ty_2>() - 2usize];
9138    ["Offset of field: IEPointerTablet__bindgen_ty_2::X"]
9139        [::core::mem::offset_of!(IEPointerTablet__bindgen_ty_2, X) - 0usize];
9140    ["Offset of field: IEPointerTablet__bindgen_ty_2::Y"]
9141        [::core::mem::offset_of!(IEPointerTablet__bindgen_ty_2, Y) - 2usize];
9142};
9143#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9144const _: () = {
9145    ["Size of IEPointerTablet"][::core::mem::size_of::<IEPointerTablet>() - 10usize];
9146    ["Alignment of IEPointerTablet"][::core::mem::align_of::<IEPointerTablet>() - 2usize];
9147    ["Offset of field: IEPointerTablet::iept_Range"]
9148        [::core::mem::offset_of!(IEPointerTablet, iept_Range) - 0usize];
9149    ["Offset of field: IEPointerTablet::iept_Value"]
9150        [::core::mem::offset_of!(IEPointerTablet, iept_Value) - 4usize];
9151    ["Offset of field: IEPointerTablet::iept_Pressure"]
9152        [::core::mem::offset_of!(IEPointerTablet, iept_Pressure) - 8usize];
9153};
9154#[repr(C, packed(2))]
9155#[derive(Debug, Copy, Clone)]
9156pub struct IENewTablet {
9157    pub ient_CallBack: *mut Hook,
9158    pub ient_ScaledX: UWORD,
9159    pub ient_ScaledY: UWORD,
9160    pub ient_ScaledXFraction: UWORD,
9161    pub ient_ScaledYFraction: UWORD,
9162    pub ient_TabletX: ULONG,
9163    pub ient_TabletY: ULONG,
9164    pub ient_RangeX: ULONG,
9165    pub ient_RangeY: ULONG,
9166    pub ient_TagList: *mut TagItem,
9167}
9168#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9169const _: () = {
9170    ["Size of IENewTablet"][::core::mem::size_of::<IENewTablet>() - 32usize];
9171    ["Alignment of IENewTablet"][::core::mem::align_of::<IENewTablet>() - 2usize];
9172    ["Offset of field: IENewTablet::ient_CallBack"]
9173        [::core::mem::offset_of!(IENewTablet, ient_CallBack) - 0usize];
9174    ["Offset of field: IENewTablet::ient_ScaledX"]
9175        [::core::mem::offset_of!(IENewTablet, ient_ScaledX) - 4usize];
9176    ["Offset of field: IENewTablet::ient_ScaledY"]
9177        [::core::mem::offset_of!(IENewTablet, ient_ScaledY) - 6usize];
9178    ["Offset of field: IENewTablet::ient_ScaledXFraction"]
9179        [::core::mem::offset_of!(IENewTablet, ient_ScaledXFraction) - 8usize];
9180    ["Offset of field: IENewTablet::ient_ScaledYFraction"]
9181        [::core::mem::offset_of!(IENewTablet, ient_ScaledYFraction) - 10usize];
9182    ["Offset of field: IENewTablet::ient_TabletX"]
9183        [::core::mem::offset_of!(IENewTablet, ient_TabletX) - 12usize];
9184    ["Offset of field: IENewTablet::ient_TabletY"]
9185        [::core::mem::offset_of!(IENewTablet, ient_TabletY) - 16usize];
9186    ["Offset of field: IENewTablet::ient_RangeX"]
9187        [::core::mem::offset_of!(IENewTablet, ient_RangeX) - 20usize];
9188    ["Offset of field: IENewTablet::ient_RangeY"]
9189        [::core::mem::offset_of!(IENewTablet, ient_RangeY) - 24usize];
9190    ["Offset of field: IENewTablet::ient_TagList"]
9191        [::core::mem::offset_of!(IENewTablet, ient_TagList) - 28usize];
9192};
9193#[repr(C, packed(2))]
9194#[derive(Copy, Clone)]
9195pub struct InputEvent {
9196    pub ie_NextEvent: *mut InputEvent,
9197    pub ie_Class: UBYTE,
9198    pub ie_SubClass: UBYTE,
9199    pub ie_Code: UWORD,
9200    pub ie_Qualifier: UWORD,
9201    pub ie_position: InputEvent__bindgen_ty_1,
9202    pub ie_TimeStamp: TimeVal_Type,
9203}
9204#[repr(C, packed(2))]
9205#[derive(Copy, Clone)]
9206pub union InputEvent__bindgen_ty_1 {
9207    pub ie_xy: InputEvent__bindgen_ty_1__bindgen_ty_1,
9208    pub ie_addr: APTR,
9209    pub ie_dead: InputEvent__bindgen_ty_1__bindgen_ty_2,
9210}
9211#[repr(C)]
9212#[derive(Debug, Copy, Clone)]
9213pub struct InputEvent__bindgen_ty_1__bindgen_ty_1 {
9214    pub ie_x: WORD,
9215    pub ie_y: WORD,
9216}
9217#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9218const _: () = {
9219    ["Size of InputEvent__bindgen_ty_1__bindgen_ty_1"]
9220        [::core::mem::size_of::<InputEvent__bindgen_ty_1__bindgen_ty_1>() - 4usize];
9221    ["Alignment of InputEvent__bindgen_ty_1__bindgen_ty_1"]
9222        [::core::mem::align_of::<InputEvent__bindgen_ty_1__bindgen_ty_1>() - 2usize];
9223    ["Offset of field: InputEvent__bindgen_ty_1__bindgen_ty_1::ie_x"]
9224        [::core::mem::offset_of!(InputEvent__bindgen_ty_1__bindgen_ty_1, ie_x) - 0usize];
9225    ["Offset of field: InputEvent__bindgen_ty_1__bindgen_ty_1::ie_y"]
9226        [::core::mem::offset_of!(InputEvent__bindgen_ty_1__bindgen_ty_1, ie_y) - 2usize];
9227};
9228#[repr(C)]
9229#[derive(Debug, Copy, Clone)]
9230pub struct InputEvent__bindgen_ty_1__bindgen_ty_2 {
9231    pub ie_prev1DownCode: UBYTE,
9232    pub ie_prev1DownQual: UBYTE,
9233    pub ie_prev2DownCode: UBYTE,
9234    pub ie_prev2DownQual: UBYTE,
9235}
9236#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9237const _: () = {
9238    ["Size of InputEvent__bindgen_ty_1__bindgen_ty_2"]
9239        [::core::mem::size_of::<InputEvent__bindgen_ty_1__bindgen_ty_2>() - 4usize];
9240    ["Alignment of InputEvent__bindgen_ty_1__bindgen_ty_2"]
9241        [::core::mem::align_of::<InputEvent__bindgen_ty_1__bindgen_ty_2>() - 1usize];
9242    ["Offset of field: InputEvent__bindgen_ty_1__bindgen_ty_2::ie_prev1DownCode"][::core::mem::offset_of!(
9243        InputEvent__bindgen_ty_1__bindgen_ty_2,
9244        ie_prev1DownCode
9245    ) - 0usize];
9246    ["Offset of field: InputEvent__bindgen_ty_1__bindgen_ty_2::ie_prev1DownQual"][::core::mem::offset_of!(
9247        InputEvent__bindgen_ty_1__bindgen_ty_2,
9248        ie_prev1DownQual
9249    ) - 1usize];
9250    ["Offset of field: InputEvent__bindgen_ty_1__bindgen_ty_2::ie_prev2DownCode"][::core::mem::offset_of!(
9251        InputEvent__bindgen_ty_1__bindgen_ty_2,
9252        ie_prev2DownCode
9253    ) - 2usize];
9254    ["Offset of field: InputEvent__bindgen_ty_1__bindgen_ty_2::ie_prev2DownQual"][::core::mem::offset_of!(
9255        InputEvent__bindgen_ty_1__bindgen_ty_2,
9256        ie_prev2DownQual
9257    ) - 3usize];
9258};
9259#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9260const _: () = {
9261    ["Size of InputEvent__bindgen_ty_1"]
9262        [::core::mem::size_of::<InputEvent__bindgen_ty_1>() - 4usize];
9263    ["Alignment of InputEvent__bindgen_ty_1"]
9264        [::core::mem::align_of::<InputEvent__bindgen_ty_1>() - 2usize];
9265    ["Offset of field: InputEvent__bindgen_ty_1::ie_xy"]
9266        [::core::mem::offset_of!(InputEvent__bindgen_ty_1, ie_xy) - 0usize];
9267    ["Offset of field: InputEvent__bindgen_ty_1::ie_addr"]
9268        [::core::mem::offset_of!(InputEvent__bindgen_ty_1, ie_addr) - 0usize];
9269    ["Offset of field: InputEvent__bindgen_ty_1::ie_dead"]
9270        [::core::mem::offset_of!(InputEvent__bindgen_ty_1, ie_dead) - 0usize];
9271};
9272#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9273const _: () = {
9274    ["Size of InputEvent"][::core::mem::size_of::<InputEvent>() - 22usize];
9275    ["Alignment of InputEvent"][::core::mem::align_of::<InputEvent>() - 2usize];
9276    ["Offset of field: InputEvent::ie_NextEvent"]
9277        [::core::mem::offset_of!(InputEvent, ie_NextEvent) - 0usize];
9278    ["Offset of field: InputEvent::ie_Class"]
9279        [::core::mem::offset_of!(InputEvent, ie_Class) - 4usize];
9280    ["Offset of field: InputEvent::ie_SubClass"]
9281        [::core::mem::offset_of!(InputEvent, ie_SubClass) - 5usize];
9282    ["Offset of field: InputEvent::ie_Code"][::core::mem::offset_of!(InputEvent, ie_Code) - 6usize];
9283    ["Offset of field: InputEvent::ie_Qualifier"]
9284        [::core::mem::offset_of!(InputEvent, ie_Qualifier) - 8usize];
9285    ["Offset of field: InputEvent::ie_position"]
9286        [::core::mem::offset_of!(InputEvent, ie_position) - 10usize];
9287    ["Offset of field: InputEvent::ie_TimeStamp"]
9288        [::core::mem::offset_of!(InputEvent, ie_TimeStamp) - 14usize];
9289};
9290#[repr(C, packed(2))]
9291#[derive(Debug, Copy, Clone)]
9292pub struct Menu {
9293    pub NextMenu: *mut Menu,
9294    pub LeftEdge: WORD,
9295    pub TopEdge: WORD,
9296    pub Width: WORD,
9297    pub Height: WORD,
9298    pub Flags: UWORD,
9299    pub MenuName: CONST_STRPTR,
9300    pub FirstItem: *mut MenuItem,
9301    pub JazzX: WORD,
9302    pub JazzY: WORD,
9303    pub BeatX: WORD,
9304    pub BeatY: WORD,
9305}
9306#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9307const _: () = {
9308    ["Size of Menu"][::core::mem::size_of::<Menu>() - 30usize];
9309    ["Alignment of Menu"][::core::mem::align_of::<Menu>() - 2usize];
9310    ["Offset of field: Menu::NextMenu"][::core::mem::offset_of!(Menu, NextMenu) - 0usize];
9311    ["Offset of field: Menu::LeftEdge"][::core::mem::offset_of!(Menu, LeftEdge) - 4usize];
9312    ["Offset of field: Menu::TopEdge"][::core::mem::offset_of!(Menu, TopEdge) - 6usize];
9313    ["Offset of field: Menu::Width"][::core::mem::offset_of!(Menu, Width) - 8usize];
9314    ["Offset of field: Menu::Height"][::core::mem::offset_of!(Menu, Height) - 10usize];
9315    ["Offset of field: Menu::Flags"][::core::mem::offset_of!(Menu, Flags) - 12usize];
9316    ["Offset of field: Menu::MenuName"][::core::mem::offset_of!(Menu, MenuName) - 14usize];
9317    ["Offset of field: Menu::FirstItem"][::core::mem::offset_of!(Menu, FirstItem) - 18usize];
9318    ["Offset of field: Menu::JazzX"][::core::mem::offset_of!(Menu, JazzX) - 22usize];
9319    ["Offset of field: Menu::JazzY"][::core::mem::offset_of!(Menu, JazzY) - 24usize];
9320    ["Offset of field: Menu::BeatX"][::core::mem::offset_of!(Menu, BeatX) - 26usize];
9321    ["Offset of field: Menu::BeatY"][::core::mem::offset_of!(Menu, BeatY) - 28usize];
9322};
9323#[repr(C, packed(2))]
9324#[derive(Debug, Copy, Clone)]
9325pub struct MenuItem {
9326    pub NextItem: *mut MenuItem,
9327    pub LeftEdge: WORD,
9328    pub TopEdge: WORD,
9329    pub Width: WORD,
9330    pub Height: WORD,
9331    pub Flags: UWORD,
9332    pub MutualExclude: LONG,
9333    pub ItemFill: APTR,
9334    pub SelectFill: APTR,
9335    pub Command: BYTE,
9336    pub SubItem: *mut MenuItem,
9337    pub NextSelect: UWORD,
9338}
9339#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9340const _: () = {
9341    ["Size of MenuItem"][::core::mem::size_of::<MenuItem>() - 34usize];
9342    ["Alignment of MenuItem"][::core::mem::align_of::<MenuItem>() - 2usize];
9343    ["Offset of field: MenuItem::NextItem"][::core::mem::offset_of!(MenuItem, NextItem) - 0usize];
9344    ["Offset of field: MenuItem::LeftEdge"][::core::mem::offset_of!(MenuItem, LeftEdge) - 4usize];
9345    ["Offset of field: MenuItem::TopEdge"][::core::mem::offset_of!(MenuItem, TopEdge) - 6usize];
9346    ["Offset of field: MenuItem::Width"][::core::mem::offset_of!(MenuItem, Width) - 8usize];
9347    ["Offset of field: MenuItem::Height"][::core::mem::offset_of!(MenuItem, Height) - 10usize];
9348    ["Offset of field: MenuItem::Flags"][::core::mem::offset_of!(MenuItem, Flags) - 12usize];
9349    ["Offset of field: MenuItem::MutualExclude"]
9350        [::core::mem::offset_of!(MenuItem, MutualExclude) - 14usize];
9351    ["Offset of field: MenuItem::ItemFill"][::core::mem::offset_of!(MenuItem, ItemFill) - 18usize];
9352    ["Offset of field: MenuItem::SelectFill"]
9353        [::core::mem::offset_of!(MenuItem, SelectFill) - 22usize];
9354    ["Offset of field: MenuItem::Command"][::core::mem::offset_of!(MenuItem, Command) - 26usize];
9355    ["Offset of field: MenuItem::SubItem"][::core::mem::offset_of!(MenuItem, SubItem) - 28usize];
9356    ["Offset of field: MenuItem::NextSelect"]
9357        [::core::mem::offset_of!(MenuItem, NextSelect) - 32usize];
9358};
9359#[repr(C, packed(2))]
9360#[derive(Debug, Copy, Clone)]
9361pub struct Requester {
9362    pub OlderRequest: *mut Requester,
9363    pub LeftEdge: WORD,
9364    pub TopEdge: WORD,
9365    pub Width: WORD,
9366    pub Height: WORD,
9367    pub RelLeft: WORD,
9368    pub RelTop: WORD,
9369    pub ReqGadget: *mut Gadget,
9370    pub ReqBorder: *mut Border,
9371    pub ReqText: *mut IntuiText,
9372    pub Flags: UWORD,
9373    pub BackFill: UBYTE,
9374    pub ReqLayer: *mut Layer,
9375    pub ReqPad1: [UBYTE; 32usize],
9376    pub ImageBMap: *mut BitMap,
9377    pub RWindow: *mut Window,
9378    pub ReqImage: *mut Image,
9379    pub ReqPad2: [UBYTE; 32usize],
9380}
9381#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9382const _: () = {
9383    ["Size of Requester"][::core::mem::size_of::<Requester>() - 112usize];
9384    ["Alignment of Requester"][::core::mem::align_of::<Requester>() - 2usize];
9385    ["Offset of field: Requester::OlderRequest"]
9386        [::core::mem::offset_of!(Requester, OlderRequest) - 0usize];
9387    ["Offset of field: Requester::LeftEdge"][::core::mem::offset_of!(Requester, LeftEdge) - 4usize];
9388    ["Offset of field: Requester::TopEdge"][::core::mem::offset_of!(Requester, TopEdge) - 6usize];
9389    ["Offset of field: Requester::Width"][::core::mem::offset_of!(Requester, Width) - 8usize];
9390    ["Offset of field: Requester::Height"][::core::mem::offset_of!(Requester, Height) - 10usize];
9391    ["Offset of field: Requester::RelLeft"][::core::mem::offset_of!(Requester, RelLeft) - 12usize];
9392    ["Offset of field: Requester::RelTop"][::core::mem::offset_of!(Requester, RelTop) - 14usize];
9393    ["Offset of field: Requester::ReqGadget"]
9394        [::core::mem::offset_of!(Requester, ReqGadget) - 16usize];
9395    ["Offset of field: Requester::ReqBorder"]
9396        [::core::mem::offset_of!(Requester, ReqBorder) - 20usize];
9397    ["Offset of field: Requester::ReqText"][::core::mem::offset_of!(Requester, ReqText) - 24usize];
9398    ["Offset of field: Requester::Flags"][::core::mem::offset_of!(Requester, Flags) - 28usize];
9399    ["Offset of field: Requester::BackFill"]
9400        [::core::mem::offset_of!(Requester, BackFill) - 30usize];
9401    ["Offset of field: Requester::ReqLayer"]
9402        [::core::mem::offset_of!(Requester, ReqLayer) - 32usize];
9403    ["Offset of field: Requester::ReqPad1"][::core::mem::offset_of!(Requester, ReqPad1) - 36usize];
9404    ["Offset of field: Requester::ImageBMap"]
9405        [::core::mem::offset_of!(Requester, ImageBMap) - 68usize];
9406    ["Offset of field: Requester::RWindow"][::core::mem::offset_of!(Requester, RWindow) - 72usize];
9407    ["Offset of field: Requester::ReqImage"]
9408        [::core::mem::offset_of!(Requester, ReqImage) - 76usize];
9409    ["Offset of field: Requester::ReqPad2"][::core::mem::offset_of!(Requester, ReqPad2) - 80usize];
9410};
9411#[repr(C, packed(2))]
9412#[derive(Debug, Copy, Clone)]
9413pub struct Gadget {
9414    pub NextGadget: *mut Gadget,
9415    pub LeftEdge: WORD,
9416    pub TopEdge: WORD,
9417    pub Width: WORD,
9418    pub Height: WORD,
9419    pub Flags: UWORD,
9420    pub Activation: UWORD,
9421    pub GadgetType: UWORD,
9422    pub GadgetRender: APTR,
9423    pub SelectRender: APTR,
9424    pub GadgetText: *mut IntuiText,
9425    pub MutualExclude: LONG,
9426    pub SpecialInfo: APTR,
9427    pub GadgetID: UWORD,
9428    pub UserData: APTR,
9429}
9430#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9431const _: () = {
9432    ["Size of Gadget"][::core::mem::size_of::<Gadget>() - 44usize];
9433    ["Alignment of Gadget"][::core::mem::align_of::<Gadget>() - 2usize];
9434    ["Offset of field: Gadget::NextGadget"][::core::mem::offset_of!(Gadget, NextGadget) - 0usize];
9435    ["Offset of field: Gadget::LeftEdge"][::core::mem::offset_of!(Gadget, LeftEdge) - 4usize];
9436    ["Offset of field: Gadget::TopEdge"][::core::mem::offset_of!(Gadget, TopEdge) - 6usize];
9437    ["Offset of field: Gadget::Width"][::core::mem::offset_of!(Gadget, Width) - 8usize];
9438    ["Offset of field: Gadget::Height"][::core::mem::offset_of!(Gadget, Height) - 10usize];
9439    ["Offset of field: Gadget::Flags"][::core::mem::offset_of!(Gadget, Flags) - 12usize];
9440    ["Offset of field: Gadget::Activation"][::core::mem::offset_of!(Gadget, Activation) - 14usize];
9441    ["Offset of field: Gadget::GadgetType"][::core::mem::offset_of!(Gadget, GadgetType) - 16usize];
9442    ["Offset of field: Gadget::GadgetRender"]
9443        [::core::mem::offset_of!(Gadget, GadgetRender) - 18usize];
9444    ["Offset of field: Gadget::SelectRender"]
9445        [::core::mem::offset_of!(Gadget, SelectRender) - 22usize];
9446    ["Offset of field: Gadget::GadgetText"][::core::mem::offset_of!(Gadget, GadgetText) - 26usize];
9447    ["Offset of field: Gadget::MutualExclude"]
9448        [::core::mem::offset_of!(Gadget, MutualExclude) - 30usize];
9449    ["Offset of field: Gadget::SpecialInfo"]
9450        [::core::mem::offset_of!(Gadget, SpecialInfo) - 34usize];
9451    ["Offset of field: Gadget::GadgetID"][::core::mem::offset_of!(Gadget, GadgetID) - 38usize];
9452    ["Offset of field: Gadget::UserData"][::core::mem::offset_of!(Gadget, UserData) - 40usize];
9453};
9454#[repr(C, packed(2))]
9455#[derive(Debug, Copy, Clone)]
9456pub struct ExtGadget {
9457    pub NextGadget: *mut ExtGadget,
9458    pub LeftEdge: WORD,
9459    pub TopEdge: WORD,
9460    pub Width: WORD,
9461    pub Height: WORD,
9462    pub Flags: UWORD,
9463    pub Activation: UWORD,
9464    pub GadgetType: UWORD,
9465    pub GadgetRender: APTR,
9466    pub SelectRender: APTR,
9467    pub GadgetText: *mut IntuiText,
9468    pub MutualExclude: LONG,
9469    pub SpecialInfo: APTR,
9470    pub GadgetID: UWORD,
9471    pub UserData: APTR,
9472    pub MoreFlags: ULONG,
9473    pub BoundsLeftEdge: WORD,
9474    pub BoundsTopEdge: WORD,
9475    pub BoundsWidth: WORD,
9476    pub BoundsHeight: WORD,
9477}
9478#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9479const _: () = {
9480    ["Size of ExtGadget"][::core::mem::size_of::<ExtGadget>() - 56usize];
9481    ["Alignment of ExtGadget"][::core::mem::align_of::<ExtGadget>() - 2usize];
9482    ["Offset of field: ExtGadget::NextGadget"]
9483        [::core::mem::offset_of!(ExtGadget, NextGadget) - 0usize];
9484    ["Offset of field: ExtGadget::LeftEdge"][::core::mem::offset_of!(ExtGadget, LeftEdge) - 4usize];
9485    ["Offset of field: ExtGadget::TopEdge"][::core::mem::offset_of!(ExtGadget, TopEdge) - 6usize];
9486    ["Offset of field: ExtGadget::Width"][::core::mem::offset_of!(ExtGadget, Width) - 8usize];
9487    ["Offset of field: ExtGadget::Height"][::core::mem::offset_of!(ExtGadget, Height) - 10usize];
9488    ["Offset of field: ExtGadget::Flags"][::core::mem::offset_of!(ExtGadget, Flags) - 12usize];
9489    ["Offset of field: ExtGadget::Activation"]
9490        [::core::mem::offset_of!(ExtGadget, Activation) - 14usize];
9491    ["Offset of field: ExtGadget::GadgetType"]
9492        [::core::mem::offset_of!(ExtGadget, GadgetType) - 16usize];
9493    ["Offset of field: ExtGadget::GadgetRender"]
9494        [::core::mem::offset_of!(ExtGadget, GadgetRender) - 18usize];
9495    ["Offset of field: ExtGadget::SelectRender"]
9496        [::core::mem::offset_of!(ExtGadget, SelectRender) - 22usize];
9497    ["Offset of field: ExtGadget::GadgetText"]
9498        [::core::mem::offset_of!(ExtGadget, GadgetText) - 26usize];
9499    ["Offset of field: ExtGadget::MutualExclude"]
9500        [::core::mem::offset_of!(ExtGadget, MutualExclude) - 30usize];
9501    ["Offset of field: ExtGadget::SpecialInfo"]
9502        [::core::mem::offset_of!(ExtGadget, SpecialInfo) - 34usize];
9503    ["Offset of field: ExtGadget::GadgetID"]
9504        [::core::mem::offset_of!(ExtGadget, GadgetID) - 38usize];
9505    ["Offset of field: ExtGadget::UserData"]
9506        [::core::mem::offset_of!(ExtGadget, UserData) - 40usize];
9507    ["Offset of field: ExtGadget::MoreFlags"]
9508        [::core::mem::offset_of!(ExtGadget, MoreFlags) - 44usize];
9509    ["Offset of field: ExtGadget::BoundsLeftEdge"]
9510        [::core::mem::offset_of!(ExtGadget, BoundsLeftEdge) - 48usize];
9511    ["Offset of field: ExtGadget::BoundsTopEdge"]
9512        [::core::mem::offset_of!(ExtGadget, BoundsTopEdge) - 50usize];
9513    ["Offset of field: ExtGadget::BoundsWidth"]
9514        [::core::mem::offset_of!(ExtGadget, BoundsWidth) - 52usize];
9515    ["Offset of field: ExtGadget::BoundsHeight"]
9516        [::core::mem::offset_of!(ExtGadget, BoundsHeight) - 54usize];
9517};
9518#[repr(C, packed(2))]
9519#[derive(Debug, Copy, Clone)]
9520pub struct BoolInfo {
9521    pub Flags: UWORD,
9522    pub Mask: *mut UWORD,
9523    pub Reserved: ULONG,
9524}
9525#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9526const _: () = {
9527    ["Size of BoolInfo"][::core::mem::size_of::<BoolInfo>() - 10usize];
9528    ["Alignment of BoolInfo"][::core::mem::align_of::<BoolInfo>() - 2usize];
9529    ["Offset of field: BoolInfo::Flags"][::core::mem::offset_of!(BoolInfo, Flags) - 0usize];
9530    ["Offset of field: BoolInfo::Mask"][::core::mem::offset_of!(BoolInfo, Mask) - 2usize];
9531    ["Offset of field: BoolInfo::Reserved"][::core::mem::offset_of!(BoolInfo, Reserved) - 6usize];
9532};
9533#[repr(C)]
9534#[derive(Debug, Copy, Clone)]
9535pub struct PropInfo {
9536    pub Flags: UWORD,
9537    pub HorizPot: UWORD,
9538    pub VertPot: UWORD,
9539    pub HorizBody: UWORD,
9540    pub VertBody: UWORD,
9541    pub CWidth: UWORD,
9542    pub CHeight: UWORD,
9543    pub HPotRes: UWORD,
9544    pub VPotRes: UWORD,
9545    pub LeftBorder: UWORD,
9546    pub TopBorder: UWORD,
9547}
9548#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9549const _: () = {
9550    ["Size of PropInfo"][::core::mem::size_of::<PropInfo>() - 22usize];
9551    ["Alignment of PropInfo"][::core::mem::align_of::<PropInfo>() - 2usize];
9552    ["Offset of field: PropInfo::Flags"][::core::mem::offset_of!(PropInfo, Flags) - 0usize];
9553    ["Offset of field: PropInfo::HorizPot"][::core::mem::offset_of!(PropInfo, HorizPot) - 2usize];
9554    ["Offset of field: PropInfo::VertPot"][::core::mem::offset_of!(PropInfo, VertPot) - 4usize];
9555    ["Offset of field: PropInfo::HorizBody"][::core::mem::offset_of!(PropInfo, HorizBody) - 6usize];
9556    ["Offset of field: PropInfo::VertBody"][::core::mem::offset_of!(PropInfo, VertBody) - 8usize];
9557    ["Offset of field: PropInfo::CWidth"][::core::mem::offset_of!(PropInfo, CWidth) - 10usize];
9558    ["Offset of field: PropInfo::CHeight"][::core::mem::offset_of!(PropInfo, CHeight) - 12usize];
9559    ["Offset of field: PropInfo::HPotRes"][::core::mem::offset_of!(PropInfo, HPotRes) - 14usize];
9560    ["Offset of field: PropInfo::VPotRes"][::core::mem::offset_of!(PropInfo, VPotRes) - 16usize];
9561    ["Offset of field: PropInfo::LeftBorder"]
9562        [::core::mem::offset_of!(PropInfo, LeftBorder) - 18usize];
9563    ["Offset of field: PropInfo::TopBorder"]
9564        [::core::mem::offset_of!(PropInfo, TopBorder) - 20usize];
9565};
9566#[repr(C, packed(2))]
9567#[derive(Debug, Copy, Clone)]
9568pub struct StringInfo {
9569    pub Buffer: STRPTR,
9570    pub UndoBuffer: STRPTR,
9571    pub BufferPos: WORD,
9572    pub MaxChars: WORD,
9573    pub DispPos: WORD,
9574    pub UndoPos: WORD,
9575    pub NumChars: WORD,
9576    pub DispCount: WORD,
9577    pub CLeft: WORD,
9578    pub CTop: WORD,
9579    pub Extension: *mut StringExtend,
9580    pub LongInt: LONG,
9581    pub AltKeyMap: *mut KeyMap,
9582}
9583#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9584const _: () = {
9585    ["Size of StringInfo"][::core::mem::size_of::<StringInfo>() - 36usize];
9586    ["Alignment of StringInfo"][::core::mem::align_of::<StringInfo>() - 2usize];
9587    ["Offset of field: StringInfo::Buffer"][::core::mem::offset_of!(StringInfo, Buffer) - 0usize];
9588    ["Offset of field: StringInfo::UndoBuffer"]
9589        [::core::mem::offset_of!(StringInfo, UndoBuffer) - 4usize];
9590    ["Offset of field: StringInfo::BufferPos"]
9591        [::core::mem::offset_of!(StringInfo, BufferPos) - 8usize];
9592    ["Offset of field: StringInfo::MaxChars"]
9593        [::core::mem::offset_of!(StringInfo, MaxChars) - 10usize];
9594    ["Offset of field: StringInfo::DispPos"]
9595        [::core::mem::offset_of!(StringInfo, DispPos) - 12usize];
9596    ["Offset of field: StringInfo::UndoPos"]
9597        [::core::mem::offset_of!(StringInfo, UndoPos) - 14usize];
9598    ["Offset of field: StringInfo::NumChars"]
9599        [::core::mem::offset_of!(StringInfo, NumChars) - 16usize];
9600    ["Offset of field: StringInfo::DispCount"]
9601        [::core::mem::offset_of!(StringInfo, DispCount) - 18usize];
9602    ["Offset of field: StringInfo::CLeft"][::core::mem::offset_of!(StringInfo, CLeft) - 20usize];
9603    ["Offset of field: StringInfo::CTop"][::core::mem::offset_of!(StringInfo, CTop) - 22usize];
9604    ["Offset of field: StringInfo::Extension"]
9605        [::core::mem::offset_of!(StringInfo, Extension) - 24usize];
9606    ["Offset of field: StringInfo::LongInt"]
9607        [::core::mem::offset_of!(StringInfo, LongInt) - 28usize];
9608    ["Offset of field: StringInfo::AltKeyMap"]
9609        [::core::mem::offset_of!(StringInfo, AltKeyMap) - 32usize];
9610};
9611#[repr(C, packed(2))]
9612#[derive(Debug, Copy, Clone)]
9613pub struct IntuiText {
9614    pub FrontPen: UBYTE,
9615    pub BackPen: UBYTE,
9616    pub DrawMode: UBYTE,
9617    pub LeftEdge: WORD,
9618    pub TopEdge: WORD,
9619    pub ITextFont: *const TextAttr,
9620    pub IText: STRPTR,
9621    pub NextText: *mut IntuiText,
9622}
9623#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9624const _: () = {
9625    ["Size of IntuiText"][::core::mem::size_of::<IntuiText>() - 20usize];
9626    ["Alignment of IntuiText"][::core::mem::align_of::<IntuiText>() - 2usize];
9627    ["Offset of field: IntuiText::FrontPen"][::core::mem::offset_of!(IntuiText, FrontPen) - 0usize];
9628    ["Offset of field: IntuiText::BackPen"][::core::mem::offset_of!(IntuiText, BackPen) - 1usize];
9629    ["Offset of field: IntuiText::DrawMode"][::core::mem::offset_of!(IntuiText, DrawMode) - 2usize];
9630    ["Offset of field: IntuiText::LeftEdge"][::core::mem::offset_of!(IntuiText, LeftEdge) - 4usize];
9631    ["Offset of field: IntuiText::TopEdge"][::core::mem::offset_of!(IntuiText, TopEdge) - 6usize];
9632    ["Offset of field: IntuiText::ITextFont"]
9633        [::core::mem::offset_of!(IntuiText, ITextFont) - 8usize];
9634    ["Offset of field: IntuiText::IText"][::core::mem::offset_of!(IntuiText, IText) - 12usize];
9635    ["Offset of field: IntuiText::NextText"]
9636        [::core::mem::offset_of!(IntuiText, NextText) - 16usize];
9637};
9638#[repr(C, packed(2))]
9639#[derive(Debug, Copy, Clone)]
9640pub struct Border {
9641    pub LeftEdge: WORD,
9642    pub TopEdge: WORD,
9643    pub FrontPen: UBYTE,
9644    pub BackPen: UBYTE,
9645    pub DrawMode: UBYTE,
9646    pub Count: BYTE,
9647    pub XY: *mut WORD,
9648    pub NextBorder: *mut Border,
9649}
9650#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9651const _: () = {
9652    ["Size of Border"][::core::mem::size_of::<Border>() - 16usize];
9653    ["Alignment of Border"][::core::mem::align_of::<Border>() - 2usize];
9654    ["Offset of field: Border::LeftEdge"][::core::mem::offset_of!(Border, LeftEdge) - 0usize];
9655    ["Offset of field: Border::TopEdge"][::core::mem::offset_of!(Border, TopEdge) - 2usize];
9656    ["Offset of field: Border::FrontPen"][::core::mem::offset_of!(Border, FrontPen) - 4usize];
9657    ["Offset of field: Border::BackPen"][::core::mem::offset_of!(Border, BackPen) - 5usize];
9658    ["Offset of field: Border::DrawMode"][::core::mem::offset_of!(Border, DrawMode) - 6usize];
9659    ["Offset of field: Border::Count"][::core::mem::offset_of!(Border, Count) - 7usize];
9660    ["Offset of field: Border::XY"][::core::mem::offset_of!(Border, XY) - 8usize];
9661    ["Offset of field: Border::NextBorder"][::core::mem::offset_of!(Border, NextBorder) - 12usize];
9662};
9663#[repr(C, packed(2))]
9664#[derive(Debug, Copy, Clone)]
9665pub struct Image {
9666    pub LeftEdge: WORD,
9667    pub TopEdge: WORD,
9668    pub Width: WORD,
9669    pub Height: WORD,
9670    pub Depth: WORD,
9671    pub ImageData: *mut UWORD,
9672    pub PlanePick: UBYTE,
9673    pub PlaneOnOff: UBYTE,
9674    pub NextImage: *mut Image,
9675}
9676#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9677const _: () = {
9678    ["Size of Image"][::core::mem::size_of::<Image>() - 20usize];
9679    ["Alignment of Image"][::core::mem::align_of::<Image>() - 2usize];
9680    ["Offset of field: Image::LeftEdge"][::core::mem::offset_of!(Image, LeftEdge) - 0usize];
9681    ["Offset of field: Image::TopEdge"][::core::mem::offset_of!(Image, TopEdge) - 2usize];
9682    ["Offset of field: Image::Width"][::core::mem::offset_of!(Image, Width) - 4usize];
9683    ["Offset of field: Image::Height"][::core::mem::offset_of!(Image, Height) - 6usize];
9684    ["Offset of field: Image::Depth"][::core::mem::offset_of!(Image, Depth) - 8usize];
9685    ["Offset of field: Image::ImageData"][::core::mem::offset_of!(Image, ImageData) - 10usize];
9686    ["Offset of field: Image::PlanePick"][::core::mem::offset_of!(Image, PlanePick) - 14usize];
9687    ["Offset of field: Image::PlaneOnOff"][::core::mem::offset_of!(Image, PlaneOnOff) - 15usize];
9688    ["Offset of field: Image::NextImage"][::core::mem::offset_of!(Image, NextImage) - 16usize];
9689};
9690#[repr(C, packed(2))]
9691#[derive(Debug, Copy, Clone)]
9692pub struct IntuiMessage {
9693    pub ExecMessage: Message,
9694    pub Class: ULONG,
9695    pub Code: UWORD,
9696    pub Qualifier: UWORD,
9697    pub IAddress: APTR,
9698    pub MouseX: WORD,
9699    pub MouseY: WORD,
9700    pub Seconds: ULONG,
9701    pub Micros: ULONG,
9702    pub IDCMPWindow: *mut Window,
9703    pub SpecialLink: *mut IntuiMessage,
9704}
9705#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9706const _: () = {
9707    ["Size of IntuiMessage"][::core::mem::size_of::<IntuiMessage>() - 52usize];
9708    ["Alignment of IntuiMessage"][::core::mem::align_of::<IntuiMessage>() - 2usize];
9709    ["Offset of field: IntuiMessage::ExecMessage"]
9710        [::core::mem::offset_of!(IntuiMessage, ExecMessage) - 0usize];
9711    ["Offset of field: IntuiMessage::Class"]
9712        [::core::mem::offset_of!(IntuiMessage, Class) - 20usize];
9713    ["Offset of field: IntuiMessage::Code"][::core::mem::offset_of!(IntuiMessage, Code) - 24usize];
9714    ["Offset of field: IntuiMessage::Qualifier"]
9715        [::core::mem::offset_of!(IntuiMessage, Qualifier) - 26usize];
9716    ["Offset of field: IntuiMessage::IAddress"]
9717        [::core::mem::offset_of!(IntuiMessage, IAddress) - 28usize];
9718    ["Offset of field: IntuiMessage::MouseX"]
9719        [::core::mem::offset_of!(IntuiMessage, MouseX) - 32usize];
9720    ["Offset of field: IntuiMessage::MouseY"]
9721        [::core::mem::offset_of!(IntuiMessage, MouseY) - 34usize];
9722    ["Offset of field: IntuiMessage::Seconds"]
9723        [::core::mem::offset_of!(IntuiMessage, Seconds) - 36usize];
9724    ["Offset of field: IntuiMessage::Micros"]
9725        [::core::mem::offset_of!(IntuiMessage, Micros) - 40usize];
9726    ["Offset of field: IntuiMessage::IDCMPWindow"]
9727        [::core::mem::offset_of!(IntuiMessage, IDCMPWindow) - 44usize];
9728    ["Offset of field: IntuiMessage::SpecialLink"]
9729        [::core::mem::offset_of!(IntuiMessage, SpecialLink) - 48usize];
9730};
9731#[repr(C, packed(2))]
9732#[derive(Debug, Copy, Clone)]
9733pub struct ExtIntuiMessage {
9734    pub eim_IntuiMessage: IntuiMessage,
9735    pub eim_TabletData: *mut TabletData,
9736}
9737#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9738const _: () = {
9739    ["Size of ExtIntuiMessage"][::core::mem::size_of::<ExtIntuiMessage>() - 56usize];
9740    ["Alignment of ExtIntuiMessage"][::core::mem::align_of::<ExtIntuiMessage>() - 2usize];
9741    ["Offset of field: ExtIntuiMessage::eim_IntuiMessage"]
9742        [::core::mem::offset_of!(ExtIntuiMessage, eim_IntuiMessage) - 0usize];
9743    ["Offset of field: ExtIntuiMessage::eim_TabletData"]
9744        [::core::mem::offset_of!(ExtIntuiMessage, eim_TabletData) - 52usize];
9745};
9746#[repr(C, packed(2))]
9747#[derive(Debug, Copy, Clone)]
9748pub struct IntuiWheelData {
9749    pub Version: UWORD,
9750    pub Reserved: UWORD,
9751    pub WheelX: WORD,
9752    pub WheelY: WORD,
9753    pub HoveredGadget: *mut Gadget,
9754}
9755#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9756const _: () = {
9757    ["Size of IntuiWheelData"][::core::mem::size_of::<IntuiWheelData>() - 12usize];
9758    ["Alignment of IntuiWheelData"][::core::mem::align_of::<IntuiWheelData>() - 2usize];
9759    ["Offset of field: IntuiWheelData::Version"]
9760        [::core::mem::offset_of!(IntuiWheelData, Version) - 0usize];
9761    ["Offset of field: IntuiWheelData::Reserved"]
9762        [::core::mem::offset_of!(IntuiWheelData, Reserved) - 2usize];
9763    ["Offset of field: IntuiWheelData::WheelX"]
9764        [::core::mem::offset_of!(IntuiWheelData, WheelX) - 4usize];
9765    ["Offset of field: IntuiWheelData::WheelY"]
9766        [::core::mem::offset_of!(IntuiWheelData, WheelY) - 6usize];
9767    ["Offset of field: IntuiWheelData::HoveredGadget"]
9768        [::core::mem::offset_of!(IntuiWheelData, HoveredGadget) - 8usize];
9769};
9770pub const IMSGCODE_INTUIWHEELDATA: _bindgen_ty_3 = 32768;
9771pub const IMSGCODE_INTUIRAWKEYDATA: _bindgen_ty_3 = 16384;
9772pub const IMSGCODE_INTUIWHEELDATAREJECT: _bindgen_ty_3 = 8192;
9773pub type _bindgen_ty_3 = ::core::ffi::c_uint;
9774#[repr(C)]
9775#[derive(Debug, Copy, Clone)]
9776pub struct IBox {
9777    pub Left: WORD,
9778    pub Top: WORD,
9779    pub Width: WORD,
9780    pub Height: WORD,
9781}
9782#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9783const _: () = {
9784    ["Size of IBox"][::core::mem::size_of::<IBox>() - 8usize];
9785    ["Alignment of IBox"][::core::mem::align_of::<IBox>() - 2usize];
9786    ["Offset of field: IBox::Left"][::core::mem::offset_of!(IBox, Left) - 0usize];
9787    ["Offset of field: IBox::Top"][::core::mem::offset_of!(IBox, Top) - 2usize];
9788    ["Offset of field: IBox::Width"][::core::mem::offset_of!(IBox, Width) - 4usize];
9789    ["Offset of field: IBox::Height"][::core::mem::offset_of!(IBox, Height) - 6usize];
9790};
9791#[repr(C, packed(2))]
9792#[derive(Debug, Copy, Clone)]
9793pub struct Window {
9794    pub NextWindow: *mut Window,
9795    pub LeftEdge: WORD,
9796    pub TopEdge: WORD,
9797    pub Width: WORD,
9798    pub Height: WORD,
9799    pub MouseY: WORD,
9800    pub MouseX: WORD,
9801    pub MinWidth: WORD,
9802    pub MinHeight: WORD,
9803    pub MaxWidth: UWORD,
9804    pub MaxHeight: UWORD,
9805    pub Flags: ULONG,
9806    pub MenuStrip: *mut Menu,
9807    pub Title: STRPTR,
9808    pub FirstRequest: *mut Requester,
9809    pub DMRequest: *mut Requester,
9810    pub ReqCount: WORD,
9811    pub WScreen: *mut Screen,
9812    pub RPort: *mut RastPort,
9813    pub BorderLeft: BYTE,
9814    pub BorderTop: BYTE,
9815    pub BorderRight: BYTE,
9816    pub BorderBottom: BYTE,
9817    pub BorderRPort: *mut RastPort,
9818    pub FirstGadget: *mut Gadget,
9819    pub Parent: *mut Window,
9820    pub Descendant: *mut Window,
9821    pub Pointer: *mut UWORD,
9822    pub PtrHeight: BYTE,
9823    pub PtrWidth: BYTE,
9824    pub XOffset: BYTE,
9825    pub YOffset: BYTE,
9826    pub IDCMPFlags: ULONG,
9827    pub UserPort: *mut MsgPort,
9828    pub WindowPort: *mut MsgPort,
9829    pub MessageKey: *mut IntuiMessage,
9830    pub DetailPen: UBYTE,
9831    pub BlockPen: UBYTE,
9832    pub CheckMark: *mut Image,
9833    pub ScreenTitle: STRPTR,
9834    pub GZZMouseX: WORD,
9835    pub GZZMouseY: WORD,
9836    pub GZZWidth: WORD,
9837    pub GZZHeight: WORD,
9838    pub ExtData: *mut UBYTE,
9839    pub UserData: *mut BYTE,
9840    pub WLayer: *mut Layer,
9841    pub IFont: *mut TextFont,
9842    pub MoreFlags: ULONG,
9843}
9844#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9845const _: () = {
9846    ["Size of Window"][::core::mem::size_of::<Window>() - 136usize];
9847    ["Alignment of Window"][::core::mem::align_of::<Window>() - 2usize];
9848    ["Offset of field: Window::NextWindow"][::core::mem::offset_of!(Window, NextWindow) - 0usize];
9849    ["Offset of field: Window::LeftEdge"][::core::mem::offset_of!(Window, LeftEdge) - 4usize];
9850    ["Offset of field: Window::TopEdge"][::core::mem::offset_of!(Window, TopEdge) - 6usize];
9851    ["Offset of field: Window::Width"][::core::mem::offset_of!(Window, Width) - 8usize];
9852    ["Offset of field: Window::Height"][::core::mem::offset_of!(Window, Height) - 10usize];
9853    ["Offset of field: Window::MouseY"][::core::mem::offset_of!(Window, MouseY) - 12usize];
9854    ["Offset of field: Window::MouseX"][::core::mem::offset_of!(Window, MouseX) - 14usize];
9855    ["Offset of field: Window::MinWidth"][::core::mem::offset_of!(Window, MinWidth) - 16usize];
9856    ["Offset of field: Window::MinHeight"][::core::mem::offset_of!(Window, MinHeight) - 18usize];
9857    ["Offset of field: Window::MaxWidth"][::core::mem::offset_of!(Window, MaxWidth) - 20usize];
9858    ["Offset of field: Window::MaxHeight"][::core::mem::offset_of!(Window, MaxHeight) - 22usize];
9859    ["Offset of field: Window::Flags"][::core::mem::offset_of!(Window, Flags) - 24usize];
9860    ["Offset of field: Window::MenuStrip"][::core::mem::offset_of!(Window, MenuStrip) - 28usize];
9861    ["Offset of field: Window::Title"][::core::mem::offset_of!(Window, Title) - 32usize];
9862    ["Offset of field: Window::FirstRequest"]
9863        [::core::mem::offset_of!(Window, FirstRequest) - 36usize];
9864    ["Offset of field: Window::DMRequest"][::core::mem::offset_of!(Window, DMRequest) - 40usize];
9865    ["Offset of field: Window::ReqCount"][::core::mem::offset_of!(Window, ReqCount) - 44usize];
9866    ["Offset of field: Window::WScreen"][::core::mem::offset_of!(Window, WScreen) - 46usize];
9867    ["Offset of field: Window::RPort"][::core::mem::offset_of!(Window, RPort) - 50usize];
9868    ["Offset of field: Window::BorderLeft"][::core::mem::offset_of!(Window, BorderLeft) - 54usize];
9869    ["Offset of field: Window::BorderTop"][::core::mem::offset_of!(Window, BorderTop) - 55usize];
9870    ["Offset of field: Window::BorderRight"]
9871        [::core::mem::offset_of!(Window, BorderRight) - 56usize];
9872    ["Offset of field: Window::BorderBottom"]
9873        [::core::mem::offset_of!(Window, BorderBottom) - 57usize];
9874    ["Offset of field: Window::BorderRPort"]
9875        [::core::mem::offset_of!(Window, BorderRPort) - 58usize];
9876    ["Offset of field: Window::FirstGadget"]
9877        [::core::mem::offset_of!(Window, FirstGadget) - 62usize];
9878    ["Offset of field: Window::Parent"][::core::mem::offset_of!(Window, Parent) - 66usize];
9879    ["Offset of field: Window::Descendant"][::core::mem::offset_of!(Window, Descendant) - 70usize];
9880    ["Offset of field: Window::Pointer"][::core::mem::offset_of!(Window, Pointer) - 74usize];
9881    ["Offset of field: Window::PtrHeight"][::core::mem::offset_of!(Window, PtrHeight) - 78usize];
9882    ["Offset of field: Window::PtrWidth"][::core::mem::offset_of!(Window, PtrWidth) - 79usize];
9883    ["Offset of field: Window::XOffset"][::core::mem::offset_of!(Window, XOffset) - 80usize];
9884    ["Offset of field: Window::YOffset"][::core::mem::offset_of!(Window, YOffset) - 81usize];
9885    ["Offset of field: Window::IDCMPFlags"][::core::mem::offset_of!(Window, IDCMPFlags) - 82usize];
9886    ["Offset of field: Window::UserPort"][::core::mem::offset_of!(Window, UserPort) - 86usize];
9887    ["Offset of field: Window::WindowPort"][::core::mem::offset_of!(Window, WindowPort) - 90usize];
9888    ["Offset of field: Window::MessageKey"][::core::mem::offset_of!(Window, MessageKey) - 94usize];
9889    ["Offset of field: Window::DetailPen"][::core::mem::offset_of!(Window, DetailPen) - 98usize];
9890    ["Offset of field: Window::BlockPen"][::core::mem::offset_of!(Window, BlockPen) - 99usize];
9891    ["Offset of field: Window::CheckMark"][::core::mem::offset_of!(Window, CheckMark) - 100usize];
9892    ["Offset of field: Window::ScreenTitle"]
9893        [::core::mem::offset_of!(Window, ScreenTitle) - 104usize];
9894    ["Offset of field: Window::GZZMouseX"][::core::mem::offset_of!(Window, GZZMouseX) - 108usize];
9895    ["Offset of field: Window::GZZMouseY"][::core::mem::offset_of!(Window, GZZMouseY) - 110usize];
9896    ["Offset of field: Window::GZZWidth"][::core::mem::offset_of!(Window, GZZWidth) - 112usize];
9897    ["Offset of field: Window::GZZHeight"][::core::mem::offset_of!(Window, GZZHeight) - 114usize];
9898    ["Offset of field: Window::ExtData"][::core::mem::offset_of!(Window, ExtData) - 116usize];
9899    ["Offset of field: Window::UserData"][::core::mem::offset_of!(Window, UserData) - 120usize];
9900    ["Offset of field: Window::WLayer"][::core::mem::offset_of!(Window, WLayer) - 124usize];
9901    ["Offset of field: Window::IFont"][::core::mem::offset_of!(Window, IFont) - 128usize];
9902    ["Offset of field: Window::MoreFlags"][::core::mem::offset_of!(Window, MoreFlags) - 132usize];
9903};
9904#[repr(C, packed(2))]
9905#[derive(Debug, Copy, Clone)]
9906pub struct NewWindow {
9907    pub LeftEdge: WORD,
9908    pub TopEdge: WORD,
9909    pub Width: WORD,
9910    pub Height: WORD,
9911    pub DetailPen: UBYTE,
9912    pub BlockPen: UBYTE,
9913    pub IDCMPFlags: ULONG,
9914    pub Flags: ULONG,
9915    pub FirstGadget: *mut Gadget,
9916    pub CheckMark: *mut Image,
9917    pub Title: STRPTR,
9918    pub Screen: *mut Screen,
9919    pub BitMap: *mut BitMap,
9920    pub MinWidth: WORD,
9921    pub MinHeight: WORD,
9922    pub MaxWidth: UWORD,
9923    pub MaxHeight: UWORD,
9924    pub Type: UWORD,
9925}
9926#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9927const _: () = {
9928    ["Size of NewWindow"][::core::mem::size_of::<NewWindow>() - 48usize];
9929    ["Alignment of NewWindow"][::core::mem::align_of::<NewWindow>() - 2usize];
9930    ["Offset of field: NewWindow::LeftEdge"][::core::mem::offset_of!(NewWindow, LeftEdge) - 0usize];
9931    ["Offset of field: NewWindow::TopEdge"][::core::mem::offset_of!(NewWindow, TopEdge) - 2usize];
9932    ["Offset of field: NewWindow::Width"][::core::mem::offset_of!(NewWindow, Width) - 4usize];
9933    ["Offset of field: NewWindow::Height"][::core::mem::offset_of!(NewWindow, Height) - 6usize];
9934    ["Offset of field: NewWindow::DetailPen"]
9935        [::core::mem::offset_of!(NewWindow, DetailPen) - 8usize];
9936    ["Offset of field: NewWindow::BlockPen"][::core::mem::offset_of!(NewWindow, BlockPen) - 9usize];
9937    ["Offset of field: NewWindow::IDCMPFlags"]
9938        [::core::mem::offset_of!(NewWindow, IDCMPFlags) - 10usize];
9939    ["Offset of field: NewWindow::Flags"][::core::mem::offset_of!(NewWindow, Flags) - 14usize];
9940    ["Offset of field: NewWindow::FirstGadget"]
9941        [::core::mem::offset_of!(NewWindow, FirstGadget) - 18usize];
9942    ["Offset of field: NewWindow::CheckMark"]
9943        [::core::mem::offset_of!(NewWindow, CheckMark) - 22usize];
9944    ["Offset of field: NewWindow::Title"][::core::mem::offset_of!(NewWindow, Title) - 26usize];
9945    ["Offset of field: NewWindow::Screen"][::core::mem::offset_of!(NewWindow, Screen) - 30usize];
9946    ["Offset of field: NewWindow::BitMap"][::core::mem::offset_of!(NewWindow, BitMap) - 34usize];
9947    ["Offset of field: NewWindow::MinWidth"]
9948        [::core::mem::offset_of!(NewWindow, MinWidth) - 38usize];
9949    ["Offset of field: NewWindow::MinHeight"]
9950        [::core::mem::offset_of!(NewWindow, MinHeight) - 40usize];
9951    ["Offset of field: NewWindow::MaxWidth"]
9952        [::core::mem::offset_of!(NewWindow, MaxWidth) - 42usize];
9953    ["Offset of field: NewWindow::MaxHeight"]
9954        [::core::mem::offset_of!(NewWindow, MaxHeight) - 44usize];
9955    ["Offset of field: NewWindow::Type"][::core::mem::offset_of!(NewWindow, Type) - 46usize];
9956};
9957#[repr(C, packed(2))]
9958#[derive(Debug, Copy, Clone)]
9959pub struct ExtNewWindow {
9960    pub LeftEdge: WORD,
9961    pub TopEdge: WORD,
9962    pub Width: WORD,
9963    pub Height: WORD,
9964    pub DetailPen: UBYTE,
9965    pub BlockPen: UBYTE,
9966    pub IDCMPFlags: ULONG,
9967    pub Flags: ULONG,
9968    pub FirstGadget: *mut Gadget,
9969    pub CheckMark: *mut Image,
9970    pub Title: STRPTR,
9971    pub Screen: *mut Screen,
9972    pub BitMap: *mut BitMap,
9973    pub MinWidth: WORD,
9974    pub MinHeight: WORD,
9975    pub MaxWidth: UWORD,
9976    pub MaxHeight: UWORD,
9977    pub Type: UWORD,
9978    pub Extension: *mut TagItem,
9979}
9980#[allow(clippy::unnecessary_operation, clippy::identity_op)]
9981const _: () = {
9982    ["Size of ExtNewWindow"][::core::mem::size_of::<ExtNewWindow>() - 52usize];
9983    ["Alignment of ExtNewWindow"][::core::mem::align_of::<ExtNewWindow>() - 2usize];
9984    ["Offset of field: ExtNewWindow::LeftEdge"]
9985        [::core::mem::offset_of!(ExtNewWindow, LeftEdge) - 0usize];
9986    ["Offset of field: ExtNewWindow::TopEdge"]
9987        [::core::mem::offset_of!(ExtNewWindow, TopEdge) - 2usize];
9988    ["Offset of field: ExtNewWindow::Width"][::core::mem::offset_of!(ExtNewWindow, Width) - 4usize];
9989    ["Offset of field: ExtNewWindow::Height"]
9990        [::core::mem::offset_of!(ExtNewWindow, Height) - 6usize];
9991    ["Offset of field: ExtNewWindow::DetailPen"]
9992        [::core::mem::offset_of!(ExtNewWindow, DetailPen) - 8usize];
9993    ["Offset of field: ExtNewWindow::BlockPen"]
9994        [::core::mem::offset_of!(ExtNewWindow, BlockPen) - 9usize];
9995    ["Offset of field: ExtNewWindow::IDCMPFlags"]
9996        [::core::mem::offset_of!(ExtNewWindow, IDCMPFlags) - 10usize];
9997    ["Offset of field: ExtNewWindow::Flags"]
9998        [::core::mem::offset_of!(ExtNewWindow, Flags) - 14usize];
9999    ["Offset of field: ExtNewWindow::FirstGadget"]
10000        [::core::mem::offset_of!(ExtNewWindow, FirstGadget) - 18usize];
10001    ["Offset of field: ExtNewWindow::CheckMark"]
10002        [::core::mem::offset_of!(ExtNewWindow, CheckMark) - 22usize];
10003    ["Offset of field: ExtNewWindow::Title"]
10004        [::core::mem::offset_of!(ExtNewWindow, Title) - 26usize];
10005    ["Offset of field: ExtNewWindow::Screen"]
10006        [::core::mem::offset_of!(ExtNewWindow, Screen) - 30usize];
10007    ["Offset of field: ExtNewWindow::BitMap"]
10008        [::core::mem::offset_of!(ExtNewWindow, BitMap) - 34usize];
10009    ["Offset of field: ExtNewWindow::MinWidth"]
10010        [::core::mem::offset_of!(ExtNewWindow, MinWidth) - 38usize];
10011    ["Offset of field: ExtNewWindow::MinHeight"]
10012        [::core::mem::offset_of!(ExtNewWindow, MinHeight) - 40usize];
10013    ["Offset of field: ExtNewWindow::MaxWidth"]
10014        [::core::mem::offset_of!(ExtNewWindow, MaxWidth) - 42usize];
10015    ["Offset of field: ExtNewWindow::MaxHeight"]
10016        [::core::mem::offset_of!(ExtNewWindow, MaxHeight) - 44usize];
10017    ["Offset of field: ExtNewWindow::Type"][::core::mem::offset_of!(ExtNewWindow, Type) - 46usize];
10018    ["Offset of field: ExtNewWindow::Extension"]
10019        [::core::mem::offset_of!(ExtNewWindow, Extension) - 48usize];
10020};
10021#[repr(C, packed(2))]
10022#[derive(Debug, Copy, Clone)]
10023pub struct DrawInfo {
10024    pub dri_Version: UWORD,
10025    pub dri_NumPens: UWORD,
10026    pub dri_Pens: *mut UWORD,
10027    pub dri_Font: *mut TextFont,
10028    pub dri_Depth: UWORD,
10029    pub dri_Resolution: DrawInfo__bindgen_ty_1,
10030    pub dri_Flags: ULONG,
10031    pub dri_CheckMark: *mut Image,
10032    pub dri_AmigaKey: *mut Image,
10033    pub dri_Screen: *mut Screen,
10034    pub dri_Reserved: [ULONG; 4usize],
10035}
10036#[repr(C)]
10037#[derive(Debug, Copy, Clone)]
10038pub struct DrawInfo__bindgen_ty_1 {
10039    pub X: UWORD,
10040    pub Y: UWORD,
10041}
10042#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10043const _: () = {
10044    ["Size of DrawInfo__bindgen_ty_1"][::core::mem::size_of::<DrawInfo__bindgen_ty_1>() - 4usize];
10045    ["Alignment of DrawInfo__bindgen_ty_1"]
10046        [::core::mem::align_of::<DrawInfo__bindgen_ty_1>() - 2usize];
10047    ["Offset of field: DrawInfo__bindgen_ty_1::X"]
10048        [::core::mem::offset_of!(DrawInfo__bindgen_ty_1, X) - 0usize];
10049    ["Offset of field: DrawInfo__bindgen_ty_1::Y"]
10050        [::core::mem::offset_of!(DrawInfo__bindgen_ty_1, Y) - 2usize];
10051};
10052#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10053const _: () = {
10054    ["Size of DrawInfo"][::core::mem::size_of::<DrawInfo>() - 50usize];
10055    ["Alignment of DrawInfo"][::core::mem::align_of::<DrawInfo>() - 2usize];
10056    ["Offset of field: DrawInfo::dri_Version"]
10057        [::core::mem::offset_of!(DrawInfo, dri_Version) - 0usize];
10058    ["Offset of field: DrawInfo::dri_NumPens"]
10059        [::core::mem::offset_of!(DrawInfo, dri_NumPens) - 2usize];
10060    ["Offset of field: DrawInfo::dri_Pens"][::core::mem::offset_of!(DrawInfo, dri_Pens) - 4usize];
10061    ["Offset of field: DrawInfo::dri_Font"][::core::mem::offset_of!(DrawInfo, dri_Font) - 8usize];
10062    ["Offset of field: DrawInfo::dri_Depth"]
10063        [::core::mem::offset_of!(DrawInfo, dri_Depth) - 12usize];
10064    ["Offset of field: DrawInfo::dri_Resolution"]
10065        [::core::mem::offset_of!(DrawInfo, dri_Resolution) - 14usize];
10066    ["Offset of field: DrawInfo::dri_Flags"]
10067        [::core::mem::offset_of!(DrawInfo, dri_Flags) - 18usize];
10068    ["Offset of field: DrawInfo::dri_CheckMark"]
10069        [::core::mem::offset_of!(DrawInfo, dri_CheckMark) - 22usize];
10070    ["Offset of field: DrawInfo::dri_AmigaKey"]
10071        [::core::mem::offset_of!(DrawInfo, dri_AmigaKey) - 26usize];
10072    ["Offset of field: DrawInfo::dri_Screen"]
10073        [::core::mem::offset_of!(DrawInfo, dri_Screen) - 30usize];
10074    ["Offset of field: DrawInfo::dri_Reserved"]
10075        [::core::mem::offset_of!(DrawInfo, dri_Reserved) - 34usize];
10076};
10077#[repr(C, packed(2))]
10078#[derive(Debug, Copy, Clone)]
10079pub struct Screen {
10080    pub NextScreen: *mut Screen,
10081    pub FirstWindow: *mut Window,
10082    pub LeftEdge: WORD,
10083    pub TopEdge: WORD,
10084    pub Width: WORD,
10085    pub Height: WORD,
10086    pub MouseY: WORD,
10087    pub MouseX: WORD,
10088    pub Flags: UWORD,
10089    pub Title: STRPTR,
10090    pub DefaultTitle: STRPTR,
10091    pub BarHeight: BYTE,
10092    pub BarVBorder: BYTE,
10093    pub BarHBorder: BYTE,
10094    pub MenuVBorder: BYTE,
10095    pub MenuHBorder: BYTE,
10096    pub WBorTop: BYTE,
10097    pub WBorLeft: BYTE,
10098    pub WBorRight: BYTE,
10099    pub WBorBottom: BYTE,
10100    pub Font: *mut TextAttr,
10101    pub ViewPort: ViewPort,
10102    pub RastPort: RastPort,
10103    pub BitMap: BitMap,
10104    pub LayerInfo: Layer_Info,
10105    pub FirstGadget: *mut Gadget,
10106    pub DetailPen: UBYTE,
10107    pub BlockPen: UBYTE,
10108    pub SaveColor0: UWORD,
10109    pub BarLayer: *mut Layer,
10110    pub ExtData: *mut UBYTE,
10111    pub UserData: *mut UBYTE,
10112}
10113#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10114const _: () = {
10115    ["Size of Screen"][::core::mem::size_of::<Screen>() - 346usize];
10116    ["Alignment of Screen"][::core::mem::align_of::<Screen>() - 2usize];
10117    ["Offset of field: Screen::NextScreen"][::core::mem::offset_of!(Screen, NextScreen) - 0usize];
10118    ["Offset of field: Screen::FirstWindow"][::core::mem::offset_of!(Screen, FirstWindow) - 4usize];
10119    ["Offset of field: Screen::LeftEdge"][::core::mem::offset_of!(Screen, LeftEdge) - 8usize];
10120    ["Offset of field: Screen::TopEdge"][::core::mem::offset_of!(Screen, TopEdge) - 10usize];
10121    ["Offset of field: Screen::Width"][::core::mem::offset_of!(Screen, Width) - 12usize];
10122    ["Offset of field: Screen::Height"][::core::mem::offset_of!(Screen, Height) - 14usize];
10123    ["Offset of field: Screen::MouseY"][::core::mem::offset_of!(Screen, MouseY) - 16usize];
10124    ["Offset of field: Screen::MouseX"][::core::mem::offset_of!(Screen, MouseX) - 18usize];
10125    ["Offset of field: Screen::Flags"][::core::mem::offset_of!(Screen, Flags) - 20usize];
10126    ["Offset of field: Screen::Title"][::core::mem::offset_of!(Screen, Title) - 22usize];
10127    ["Offset of field: Screen::DefaultTitle"]
10128        [::core::mem::offset_of!(Screen, DefaultTitle) - 26usize];
10129    ["Offset of field: Screen::BarHeight"][::core::mem::offset_of!(Screen, BarHeight) - 30usize];
10130    ["Offset of field: Screen::BarVBorder"][::core::mem::offset_of!(Screen, BarVBorder) - 31usize];
10131    ["Offset of field: Screen::BarHBorder"][::core::mem::offset_of!(Screen, BarHBorder) - 32usize];
10132    ["Offset of field: Screen::MenuVBorder"]
10133        [::core::mem::offset_of!(Screen, MenuVBorder) - 33usize];
10134    ["Offset of field: Screen::MenuHBorder"]
10135        [::core::mem::offset_of!(Screen, MenuHBorder) - 34usize];
10136    ["Offset of field: Screen::WBorTop"][::core::mem::offset_of!(Screen, WBorTop) - 35usize];
10137    ["Offset of field: Screen::WBorLeft"][::core::mem::offset_of!(Screen, WBorLeft) - 36usize];
10138    ["Offset of field: Screen::WBorRight"][::core::mem::offset_of!(Screen, WBorRight) - 37usize];
10139    ["Offset of field: Screen::WBorBottom"][::core::mem::offset_of!(Screen, WBorBottom) - 38usize];
10140    ["Offset of field: Screen::Font"][::core::mem::offset_of!(Screen, Font) - 40usize];
10141    ["Offset of field: Screen::ViewPort"][::core::mem::offset_of!(Screen, ViewPort) - 44usize];
10142    ["Offset of field: Screen::RastPort"][::core::mem::offset_of!(Screen, RastPort) - 84usize];
10143    ["Offset of field: Screen::BitMap"][::core::mem::offset_of!(Screen, BitMap) - 184usize];
10144    ["Offset of field: Screen::LayerInfo"][::core::mem::offset_of!(Screen, LayerInfo) - 224usize];
10145    ["Offset of field: Screen::FirstGadget"]
10146        [::core::mem::offset_of!(Screen, FirstGadget) - 326usize];
10147    ["Offset of field: Screen::DetailPen"][::core::mem::offset_of!(Screen, DetailPen) - 330usize];
10148    ["Offset of field: Screen::BlockPen"][::core::mem::offset_of!(Screen, BlockPen) - 331usize];
10149    ["Offset of field: Screen::SaveColor0"][::core::mem::offset_of!(Screen, SaveColor0) - 332usize];
10150    ["Offset of field: Screen::BarLayer"][::core::mem::offset_of!(Screen, BarLayer) - 334usize];
10151    ["Offset of field: Screen::ExtData"][::core::mem::offset_of!(Screen, ExtData) - 338usize];
10152    ["Offset of field: Screen::UserData"][::core::mem::offset_of!(Screen, UserData) - 342usize];
10153};
10154#[repr(C, packed(2))]
10155#[derive(Debug, Copy, Clone)]
10156pub struct NewScreen {
10157    pub LeftEdge: WORD,
10158    pub TopEdge: WORD,
10159    pub Width: WORD,
10160    pub Height: WORD,
10161    pub Depth: WORD,
10162    pub DetailPen: UBYTE,
10163    pub BlockPen: UBYTE,
10164    pub ViewModes: UWORD,
10165    pub Type: UWORD,
10166    pub Font: *mut TextAttr,
10167    pub DefaultTitle: STRPTR,
10168    pub Gadgets: *mut Gadget,
10169    pub CustomBitMap: *mut BitMap,
10170}
10171#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10172const _: () = {
10173    ["Size of NewScreen"][::core::mem::size_of::<NewScreen>() - 32usize];
10174    ["Alignment of NewScreen"][::core::mem::align_of::<NewScreen>() - 2usize];
10175    ["Offset of field: NewScreen::LeftEdge"][::core::mem::offset_of!(NewScreen, LeftEdge) - 0usize];
10176    ["Offset of field: NewScreen::TopEdge"][::core::mem::offset_of!(NewScreen, TopEdge) - 2usize];
10177    ["Offset of field: NewScreen::Width"][::core::mem::offset_of!(NewScreen, Width) - 4usize];
10178    ["Offset of field: NewScreen::Height"][::core::mem::offset_of!(NewScreen, Height) - 6usize];
10179    ["Offset of field: NewScreen::Depth"][::core::mem::offset_of!(NewScreen, Depth) - 8usize];
10180    ["Offset of field: NewScreen::DetailPen"]
10181        [::core::mem::offset_of!(NewScreen, DetailPen) - 10usize];
10182    ["Offset of field: NewScreen::BlockPen"]
10183        [::core::mem::offset_of!(NewScreen, BlockPen) - 11usize];
10184    ["Offset of field: NewScreen::ViewModes"]
10185        [::core::mem::offset_of!(NewScreen, ViewModes) - 12usize];
10186    ["Offset of field: NewScreen::Type"][::core::mem::offset_of!(NewScreen, Type) - 14usize];
10187    ["Offset of field: NewScreen::Font"][::core::mem::offset_of!(NewScreen, Font) - 16usize];
10188    ["Offset of field: NewScreen::DefaultTitle"]
10189        [::core::mem::offset_of!(NewScreen, DefaultTitle) - 20usize];
10190    ["Offset of field: NewScreen::Gadgets"][::core::mem::offset_of!(NewScreen, Gadgets) - 24usize];
10191    ["Offset of field: NewScreen::CustomBitMap"]
10192        [::core::mem::offset_of!(NewScreen, CustomBitMap) - 28usize];
10193};
10194#[repr(C, packed(2))]
10195#[derive(Debug, Copy, Clone)]
10196pub struct ExtNewScreen {
10197    pub LeftEdge: WORD,
10198    pub TopEdge: WORD,
10199    pub Width: WORD,
10200    pub Height: WORD,
10201    pub Depth: WORD,
10202    pub DetailPen: UBYTE,
10203    pub BlockPen: UBYTE,
10204    pub ViewModes: UWORD,
10205    pub Type: UWORD,
10206    pub Font: *mut TextAttr,
10207    pub DefaultTitle: STRPTR,
10208    pub Gadgets: *mut Gadget,
10209    pub CustomBitMap: *mut BitMap,
10210    pub Extension: *mut TagItem,
10211}
10212#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10213const _: () = {
10214    ["Size of ExtNewScreen"][::core::mem::size_of::<ExtNewScreen>() - 36usize];
10215    ["Alignment of ExtNewScreen"][::core::mem::align_of::<ExtNewScreen>() - 2usize];
10216    ["Offset of field: ExtNewScreen::LeftEdge"]
10217        [::core::mem::offset_of!(ExtNewScreen, LeftEdge) - 0usize];
10218    ["Offset of field: ExtNewScreen::TopEdge"]
10219        [::core::mem::offset_of!(ExtNewScreen, TopEdge) - 2usize];
10220    ["Offset of field: ExtNewScreen::Width"][::core::mem::offset_of!(ExtNewScreen, Width) - 4usize];
10221    ["Offset of field: ExtNewScreen::Height"]
10222        [::core::mem::offset_of!(ExtNewScreen, Height) - 6usize];
10223    ["Offset of field: ExtNewScreen::Depth"][::core::mem::offset_of!(ExtNewScreen, Depth) - 8usize];
10224    ["Offset of field: ExtNewScreen::DetailPen"]
10225        [::core::mem::offset_of!(ExtNewScreen, DetailPen) - 10usize];
10226    ["Offset of field: ExtNewScreen::BlockPen"]
10227        [::core::mem::offset_of!(ExtNewScreen, BlockPen) - 11usize];
10228    ["Offset of field: ExtNewScreen::ViewModes"]
10229        [::core::mem::offset_of!(ExtNewScreen, ViewModes) - 12usize];
10230    ["Offset of field: ExtNewScreen::Type"][::core::mem::offset_of!(ExtNewScreen, Type) - 14usize];
10231    ["Offset of field: ExtNewScreen::Font"][::core::mem::offset_of!(ExtNewScreen, Font) - 16usize];
10232    ["Offset of field: ExtNewScreen::DefaultTitle"]
10233        [::core::mem::offset_of!(ExtNewScreen, DefaultTitle) - 20usize];
10234    ["Offset of field: ExtNewScreen::Gadgets"]
10235        [::core::mem::offset_of!(ExtNewScreen, Gadgets) - 24usize];
10236    ["Offset of field: ExtNewScreen::CustomBitMap"]
10237        [::core::mem::offset_of!(ExtNewScreen, CustomBitMap) - 28usize];
10238    ["Offset of field: ExtNewScreen::Extension"]
10239        [::core::mem::offset_of!(ExtNewScreen, Extension) - 32usize];
10240};
10241#[repr(C, packed(2))]
10242#[derive(Debug, Copy, Clone)]
10243pub struct PubScreenNode {
10244    pub psn_Node: Node,
10245    pub psn_Screen: *mut Screen,
10246    pub psn_Flags: UWORD,
10247    pub psn_Size: WORD,
10248    pub psn_VisitorCount: WORD,
10249    pub psn_SigTask: *mut Task,
10250    pub psn_SigBit: UBYTE,
10251}
10252#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10253const _: () = {
10254    ["Size of PubScreenNode"][::core::mem::size_of::<PubScreenNode>() - 30usize];
10255    ["Alignment of PubScreenNode"][::core::mem::align_of::<PubScreenNode>() - 2usize];
10256    ["Offset of field: PubScreenNode::psn_Node"]
10257        [::core::mem::offset_of!(PubScreenNode, psn_Node) - 0usize];
10258    ["Offset of field: PubScreenNode::psn_Screen"]
10259        [::core::mem::offset_of!(PubScreenNode, psn_Screen) - 14usize];
10260    ["Offset of field: PubScreenNode::psn_Flags"]
10261        [::core::mem::offset_of!(PubScreenNode, psn_Flags) - 18usize];
10262    ["Offset of field: PubScreenNode::psn_Size"]
10263        [::core::mem::offset_of!(PubScreenNode, psn_Size) - 20usize];
10264    ["Offset of field: PubScreenNode::psn_VisitorCount"]
10265        [::core::mem::offset_of!(PubScreenNode, psn_VisitorCount) - 22usize];
10266    ["Offset of field: PubScreenNode::psn_SigTask"]
10267        [::core::mem::offset_of!(PubScreenNode, psn_SigTask) - 24usize];
10268    ["Offset of field: PubScreenNode::psn_SigBit"]
10269        [::core::mem::offset_of!(PubScreenNode, psn_SigBit) - 28usize];
10270};
10271#[repr(C, packed(2))]
10272#[derive(Debug, Copy, Clone)]
10273pub struct ScreenBuffer {
10274    pub sb_BitMap: *mut BitMap,
10275    pub sb_DBufInfo: *mut DBufInfo,
10276}
10277#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10278const _: () = {
10279    ["Size of ScreenBuffer"][::core::mem::size_of::<ScreenBuffer>() - 8usize];
10280    ["Alignment of ScreenBuffer"][::core::mem::align_of::<ScreenBuffer>() - 2usize];
10281    ["Offset of field: ScreenBuffer::sb_BitMap"]
10282        [::core::mem::offset_of!(ScreenBuffer, sb_BitMap) - 0usize];
10283    ["Offset of field: ScreenBuffer::sb_DBufInfo"]
10284        [::core::mem::offset_of!(ScreenBuffer, sb_DBufInfo) - 4usize];
10285};
10286#[repr(C)]
10287#[derive(Debug, Copy, Clone)]
10288pub struct Preferences {
10289    pub FontHeight: BYTE,
10290    pub PrinterPort: UBYTE,
10291    pub BaudRate: UWORD,
10292    pub KeyRptSpeed: TimeVal_Type,
10293    pub KeyRptDelay: TimeVal_Type,
10294    pub DoubleClick: TimeVal_Type,
10295    pub PointerMatrix: [UWORD; 36usize],
10296    pub XOffset: BYTE,
10297    pub YOffset: BYTE,
10298    pub color17: UWORD,
10299    pub color18: UWORD,
10300    pub color19: UWORD,
10301    pub PointerTicks: UWORD,
10302    pub color0: UWORD,
10303    pub color1: UWORD,
10304    pub color2: UWORD,
10305    pub color3: UWORD,
10306    pub ViewXOffset: BYTE,
10307    pub ViewYOffset: BYTE,
10308    pub ViewInitX: WORD,
10309    pub ViewInitY: WORD,
10310    pub EnableCLI: BOOL,
10311    pub PrinterType: UWORD,
10312    pub PrinterFilename: [TEXT; 30usize],
10313    pub PrintPitch: UWORD,
10314    pub PrintQuality: UWORD,
10315    pub PrintSpacing: UWORD,
10316    pub PrintLeftMargin: UWORD,
10317    pub PrintRightMargin: UWORD,
10318    pub PrintImage: UWORD,
10319    pub PrintAspect: UWORD,
10320    pub PrintShade: UWORD,
10321    pub PrintThreshold: WORD,
10322    pub PaperSize: UWORD,
10323    pub PaperLength: UWORD,
10324    pub PaperType: UWORD,
10325    pub SerRWBits: UBYTE,
10326    pub SerStopBuf: UBYTE,
10327    pub SerParShk: UBYTE,
10328    pub LaceWB: UBYTE,
10329    pub Pad: [UBYTE; 12usize],
10330    pub PrtDevName: [TEXT; 16usize],
10331    pub DefaultPrtUnit: UBYTE,
10332    pub DefaultSerUnit: UBYTE,
10333    pub RowSizeChange: BYTE,
10334    pub ColumnSizeChange: BYTE,
10335    pub PrintFlags: UWORD,
10336    pub PrintMaxWidth: UWORD,
10337    pub PrintMaxHeight: UWORD,
10338    pub PrintDensity: UBYTE,
10339    pub PrintXOffset: UBYTE,
10340    pub wb_Width: UWORD,
10341    pub wb_Height: UWORD,
10342    pub wb_Depth: UBYTE,
10343    pub ext_size: UBYTE,
10344}
10345#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10346const _: () = {
10347    ["Size of Preferences"][::core::mem::size_of::<Preferences>() - 232usize];
10348    ["Alignment of Preferences"][::core::mem::align_of::<Preferences>() - 2usize];
10349    ["Offset of field: Preferences::FontHeight"]
10350        [::core::mem::offset_of!(Preferences, FontHeight) - 0usize];
10351    ["Offset of field: Preferences::PrinterPort"]
10352        [::core::mem::offset_of!(Preferences, PrinterPort) - 1usize];
10353    ["Offset of field: Preferences::BaudRate"]
10354        [::core::mem::offset_of!(Preferences, BaudRate) - 2usize];
10355    ["Offset of field: Preferences::KeyRptSpeed"]
10356        [::core::mem::offset_of!(Preferences, KeyRptSpeed) - 4usize];
10357    ["Offset of field: Preferences::KeyRptDelay"]
10358        [::core::mem::offset_of!(Preferences, KeyRptDelay) - 12usize];
10359    ["Offset of field: Preferences::DoubleClick"]
10360        [::core::mem::offset_of!(Preferences, DoubleClick) - 20usize];
10361    ["Offset of field: Preferences::PointerMatrix"]
10362        [::core::mem::offset_of!(Preferences, PointerMatrix) - 28usize];
10363    ["Offset of field: Preferences::XOffset"]
10364        [::core::mem::offset_of!(Preferences, XOffset) - 100usize];
10365    ["Offset of field: Preferences::YOffset"]
10366        [::core::mem::offset_of!(Preferences, YOffset) - 101usize];
10367    ["Offset of field: Preferences::color17"]
10368        [::core::mem::offset_of!(Preferences, color17) - 102usize];
10369    ["Offset of field: Preferences::color18"]
10370        [::core::mem::offset_of!(Preferences, color18) - 104usize];
10371    ["Offset of field: Preferences::color19"]
10372        [::core::mem::offset_of!(Preferences, color19) - 106usize];
10373    ["Offset of field: Preferences::PointerTicks"]
10374        [::core::mem::offset_of!(Preferences, PointerTicks) - 108usize];
10375    ["Offset of field: Preferences::color0"]
10376        [::core::mem::offset_of!(Preferences, color0) - 110usize];
10377    ["Offset of field: Preferences::color1"]
10378        [::core::mem::offset_of!(Preferences, color1) - 112usize];
10379    ["Offset of field: Preferences::color2"]
10380        [::core::mem::offset_of!(Preferences, color2) - 114usize];
10381    ["Offset of field: Preferences::color3"]
10382        [::core::mem::offset_of!(Preferences, color3) - 116usize];
10383    ["Offset of field: Preferences::ViewXOffset"]
10384        [::core::mem::offset_of!(Preferences, ViewXOffset) - 118usize];
10385    ["Offset of field: Preferences::ViewYOffset"]
10386        [::core::mem::offset_of!(Preferences, ViewYOffset) - 119usize];
10387    ["Offset of field: Preferences::ViewInitX"]
10388        [::core::mem::offset_of!(Preferences, ViewInitX) - 120usize];
10389    ["Offset of field: Preferences::ViewInitY"]
10390        [::core::mem::offset_of!(Preferences, ViewInitY) - 122usize];
10391    ["Offset of field: Preferences::EnableCLI"]
10392        [::core::mem::offset_of!(Preferences, EnableCLI) - 124usize];
10393    ["Offset of field: Preferences::PrinterType"]
10394        [::core::mem::offset_of!(Preferences, PrinterType) - 126usize];
10395    ["Offset of field: Preferences::PrinterFilename"]
10396        [::core::mem::offset_of!(Preferences, PrinterFilename) - 128usize];
10397    ["Offset of field: Preferences::PrintPitch"]
10398        [::core::mem::offset_of!(Preferences, PrintPitch) - 158usize];
10399    ["Offset of field: Preferences::PrintQuality"]
10400        [::core::mem::offset_of!(Preferences, PrintQuality) - 160usize];
10401    ["Offset of field: Preferences::PrintSpacing"]
10402        [::core::mem::offset_of!(Preferences, PrintSpacing) - 162usize];
10403    ["Offset of field: Preferences::PrintLeftMargin"]
10404        [::core::mem::offset_of!(Preferences, PrintLeftMargin) - 164usize];
10405    ["Offset of field: Preferences::PrintRightMargin"]
10406        [::core::mem::offset_of!(Preferences, PrintRightMargin) - 166usize];
10407    ["Offset of field: Preferences::PrintImage"]
10408        [::core::mem::offset_of!(Preferences, PrintImage) - 168usize];
10409    ["Offset of field: Preferences::PrintAspect"]
10410        [::core::mem::offset_of!(Preferences, PrintAspect) - 170usize];
10411    ["Offset of field: Preferences::PrintShade"]
10412        [::core::mem::offset_of!(Preferences, PrintShade) - 172usize];
10413    ["Offset of field: Preferences::PrintThreshold"]
10414        [::core::mem::offset_of!(Preferences, PrintThreshold) - 174usize];
10415    ["Offset of field: Preferences::PaperSize"]
10416        [::core::mem::offset_of!(Preferences, PaperSize) - 176usize];
10417    ["Offset of field: Preferences::PaperLength"]
10418        [::core::mem::offset_of!(Preferences, PaperLength) - 178usize];
10419    ["Offset of field: Preferences::PaperType"]
10420        [::core::mem::offset_of!(Preferences, PaperType) - 180usize];
10421    ["Offset of field: Preferences::SerRWBits"]
10422        [::core::mem::offset_of!(Preferences, SerRWBits) - 182usize];
10423    ["Offset of field: Preferences::SerStopBuf"]
10424        [::core::mem::offset_of!(Preferences, SerStopBuf) - 183usize];
10425    ["Offset of field: Preferences::SerParShk"]
10426        [::core::mem::offset_of!(Preferences, SerParShk) - 184usize];
10427    ["Offset of field: Preferences::LaceWB"]
10428        [::core::mem::offset_of!(Preferences, LaceWB) - 185usize];
10429    ["Offset of field: Preferences::Pad"][::core::mem::offset_of!(Preferences, Pad) - 186usize];
10430    ["Offset of field: Preferences::PrtDevName"]
10431        [::core::mem::offset_of!(Preferences, PrtDevName) - 198usize];
10432    ["Offset of field: Preferences::DefaultPrtUnit"]
10433        [::core::mem::offset_of!(Preferences, DefaultPrtUnit) - 214usize];
10434    ["Offset of field: Preferences::DefaultSerUnit"]
10435        [::core::mem::offset_of!(Preferences, DefaultSerUnit) - 215usize];
10436    ["Offset of field: Preferences::RowSizeChange"]
10437        [::core::mem::offset_of!(Preferences, RowSizeChange) - 216usize];
10438    ["Offset of field: Preferences::ColumnSizeChange"]
10439        [::core::mem::offset_of!(Preferences, ColumnSizeChange) - 217usize];
10440    ["Offset of field: Preferences::PrintFlags"]
10441        [::core::mem::offset_of!(Preferences, PrintFlags) - 218usize];
10442    ["Offset of field: Preferences::PrintMaxWidth"]
10443        [::core::mem::offset_of!(Preferences, PrintMaxWidth) - 220usize];
10444    ["Offset of field: Preferences::PrintMaxHeight"]
10445        [::core::mem::offset_of!(Preferences, PrintMaxHeight) - 222usize];
10446    ["Offset of field: Preferences::PrintDensity"]
10447        [::core::mem::offset_of!(Preferences, PrintDensity) - 224usize];
10448    ["Offset of field: Preferences::PrintXOffset"]
10449        [::core::mem::offset_of!(Preferences, PrintXOffset) - 225usize];
10450    ["Offset of field: Preferences::wb_Width"]
10451        [::core::mem::offset_of!(Preferences, wb_Width) - 226usize];
10452    ["Offset of field: Preferences::wb_Height"]
10453        [::core::mem::offset_of!(Preferences, wb_Height) - 228usize];
10454    ["Offset of field: Preferences::wb_Depth"]
10455        [::core::mem::offset_of!(Preferences, wb_Depth) - 230usize];
10456    ["Offset of field: Preferences::ext_size"]
10457        [::core::mem::offset_of!(Preferences, ext_size) - 231usize];
10458};
10459#[repr(C, packed(2))]
10460#[derive(Debug, Copy, Clone)]
10461pub struct Remember {
10462    pub NextRemember: *mut Remember,
10463    pub RememberSize: ULONG,
10464    pub Memory: *mut UBYTE,
10465}
10466#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10467const _: () = {
10468    ["Size of Remember"][::core::mem::size_of::<Remember>() - 12usize];
10469    ["Alignment of Remember"][::core::mem::align_of::<Remember>() - 2usize];
10470    ["Offset of field: Remember::NextRemember"]
10471        [::core::mem::offset_of!(Remember, NextRemember) - 0usize];
10472    ["Offset of field: Remember::RememberSize"]
10473        [::core::mem::offset_of!(Remember, RememberSize) - 4usize];
10474    ["Offset of field: Remember::Memory"][::core::mem::offset_of!(Remember, Memory) - 8usize];
10475};
10476#[repr(C)]
10477#[derive(Debug, Copy, Clone)]
10478pub struct ColorSpec {
10479    pub ColorIndex: WORD,
10480    pub Red: UWORD,
10481    pub Green: UWORD,
10482    pub Blue: UWORD,
10483}
10484#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10485const _: () = {
10486    ["Size of ColorSpec"][::core::mem::size_of::<ColorSpec>() - 8usize];
10487    ["Alignment of ColorSpec"][::core::mem::align_of::<ColorSpec>() - 2usize];
10488    ["Offset of field: ColorSpec::ColorIndex"]
10489        [::core::mem::offset_of!(ColorSpec, ColorIndex) - 0usize];
10490    ["Offset of field: ColorSpec::Red"][::core::mem::offset_of!(ColorSpec, Red) - 2usize];
10491    ["Offset of field: ColorSpec::Green"][::core::mem::offset_of!(ColorSpec, Green) - 4usize];
10492    ["Offset of field: ColorSpec::Blue"][::core::mem::offset_of!(ColorSpec, Blue) - 6usize];
10493};
10494#[repr(C, packed(2))]
10495#[derive(Debug, Copy, Clone)]
10496pub struct EasyStruct {
10497    pub es_StructSize: ULONG,
10498    pub es_Flags: ULONG,
10499    pub es_Title: CONST_STRPTR,
10500    pub es_TextFormat: CONST_STRPTR,
10501    pub es_GadgetFormat: CONST_STRPTR,
10502}
10503#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10504const _: () = {
10505    ["Size of EasyStruct"][::core::mem::size_of::<EasyStruct>() - 20usize];
10506    ["Alignment of EasyStruct"][::core::mem::align_of::<EasyStruct>() - 2usize];
10507    ["Offset of field: EasyStruct::es_StructSize"]
10508        [::core::mem::offset_of!(EasyStruct, es_StructSize) - 0usize];
10509    ["Offset of field: EasyStruct::es_Flags"]
10510        [::core::mem::offset_of!(EasyStruct, es_Flags) - 4usize];
10511    ["Offset of field: EasyStruct::es_Title"]
10512        [::core::mem::offset_of!(EasyStruct, es_Title) - 8usize];
10513    ["Offset of field: EasyStruct::es_TextFormat"]
10514        [::core::mem::offset_of!(EasyStruct, es_TextFormat) - 12usize];
10515    ["Offset of field: EasyStruct::es_GadgetFormat"]
10516        [::core::mem::offset_of!(EasyStruct, es_GadgetFormat) - 16usize];
10517};
10518#[repr(C, packed(2))]
10519#[derive(Debug, Copy, Clone)]
10520pub struct TabletData {
10521    pub td_XFraction: UWORD,
10522    pub td_YFraction: UWORD,
10523    pub td_TabletX: ULONG,
10524    pub td_TabletY: ULONG,
10525    pub td_RangeX: ULONG,
10526    pub td_RangeY: ULONG,
10527    pub td_TagList: *mut TagItem,
10528}
10529#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10530const _: () = {
10531    ["Size of TabletData"][::core::mem::size_of::<TabletData>() - 24usize];
10532    ["Alignment of TabletData"][::core::mem::align_of::<TabletData>() - 2usize];
10533    ["Offset of field: TabletData::td_XFraction"]
10534        [::core::mem::offset_of!(TabletData, td_XFraction) - 0usize];
10535    ["Offset of field: TabletData::td_YFraction"]
10536        [::core::mem::offset_of!(TabletData, td_YFraction) - 2usize];
10537    ["Offset of field: TabletData::td_TabletX"]
10538        [::core::mem::offset_of!(TabletData, td_TabletX) - 4usize];
10539    ["Offset of field: TabletData::td_TabletY"]
10540        [::core::mem::offset_of!(TabletData, td_TabletY) - 8usize];
10541    ["Offset of field: TabletData::td_RangeX"]
10542        [::core::mem::offset_of!(TabletData, td_RangeX) - 12usize];
10543    ["Offset of field: TabletData::td_RangeY"]
10544        [::core::mem::offset_of!(TabletData, td_RangeY) - 16usize];
10545    ["Offset of field: TabletData::td_TagList"]
10546        [::core::mem::offset_of!(TabletData, td_TagList) - 20usize];
10547};
10548#[repr(C, packed(2))]
10549#[derive(Debug, Copy, Clone)]
10550pub struct TabletHookData {
10551    pub thd_Screen: *mut Screen,
10552    pub thd_Width: ULONG,
10553    pub thd_Height: ULONG,
10554    pub thd_ScreenChanged: LONG,
10555}
10556#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10557const _: () = {
10558    ["Size of TabletHookData"][::core::mem::size_of::<TabletHookData>() - 16usize];
10559    ["Alignment of TabletHookData"][::core::mem::align_of::<TabletHookData>() - 2usize];
10560    ["Offset of field: TabletHookData::thd_Screen"]
10561        [::core::mem::offset_of!(TabletHookData, thd_Screen) - 0usize];
10562    ["Offset of field: TabletHookData::thd_Width"]
10563        [::core::mem::offset_of!(TabletHookData, thd_Width) - 4usize];
10564    ["Offset of field: TabletHookData::thd_Height"]
10565        [::core::mem::offset_of!(TabletHookData, thd_Height) - 8usize];
10566    ["Offset of field: TabletHookData::thd_ScreenChanged"]
10567        [::core::mem::offset_of!(TabletHookData, thd_ScreenChanged) - 12usize];
10568};
10569#[repr(C, packed(2))]
10570#[derive(Debug, Copy, Clone)]
10571pub struct IOPrtCmdReq {
10572    pub io_Message: Message,
10573    pub io_Device: *mut Device,
10574    pub io_Unit: *mut Unit,
10575    pub io_Command: UWORD,
10576    pub io_Flags: UBYTE,
10577    pub io_Error: BYTE,
10578    pub io_PrtCommand: UWORD,
10579    pub io_Parm0: UBYTE,
10580    pub io_Parm1: UBYTE,
10581    pub io_Parm2: UBYTE,
10582    pub io_Parm3: UBYTE,
10583}
10584#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10585const _: () = {
10586    ["Size of IOPrtCmdReq"][::core::mem::size_of::<IOPrtCmdReq>() - 38usize];
10587    ["Alignment of IOPrtCmdReq"][::core::mem::align_of::<IOPrtCmdReq>() - 2usize];
10588    ["Offset of field: IOPrtCmdReq::io_Message"]
10589        [::core::mem::offset_of!(IOPrtCmdReq, io_Message) - 0usize];
10590    ["Offset of field: IOPrtCmdReq::io_Device"]
10591        [::core::mem::offset_of!(IOPrtCmdReq, io_Device) - 20usize];
10592    ["Offset of field: IOPrtCmdReq::io_Unit"]
10593        [::core::mem::offset_of!(IOPrtCmdReq, io_Unit) - 24usize];
10594    ["Offset of field: IOPrtCmdReq::io_Command"]
10595        [::core::mem::offset_of!(IOPrtCmdReq, io_Command) - 28usize];
10596    ["Offset of field: IOPrtCmdReq::io_Flags"]
10597        [::core::mem::offset_of!(IOPrtCmdReq, io_Flags) - 30usize];
10598    ["Offset of field: IOPrtCmdReq::io_Error"]
10599        [::core::mem::offset_of!(IOPrtCmdReq, io_Error) - 31usize];
10600    ["Offset of field: IOPrtCmdReq::io_PrtCommand"]
10601        [::core::mem::offset_of!(IOPrtCmdReq, io_PrtCommand) - 32usize];
10602    ["Offset of field: IOPrtCmdReq::io_Parm0"]
10603        [::core::mem::offset_of!(IOPrtCmdReq, io_Parm0) - 34usize];
10604    ["Offset of field: IOPrtCmdReq::io_Parm1"]
10605        [::core::mem::offset_of!(IOPrtCmdReq, io_Parm1) - 35usize];
10606    ["Offset of field: IOPrtCmdReq::io_Parm2"]
10607        [::core::mem::offset_of!(IOPrtCmdReq, io_Parm2) - 36usize];
10608    ["Offset of field: IOPrtCmdReq::io_Parm3"]
10609        [::core::mem::offset_of!(IOPrtCmdReq, io_Parm3) - 37usize];
10610};
10611#[repr(C, packed(2))]
10612#[derive(Debug, Copy, Clone)]
10613pub struct IODRPReq {
10614    pub io_Message: Message,
10615    pub io_Device: *mut Device,
10616    pub io_Unit: *mut Unit,
10617    pub io_Command: UWORD,
10618    pub io_Flags: UBYTE,
10619    pub io_Error: BYTE,
10620    pub io_RastPort: *mut RastPort,
10621    pub io_ColorMap: *mut ColorMap,
10622    pub io_Modes: ULONG,
10623    pub io_SrcX: UWORD,
10624    pub io_SrcY: UWORD,
10625    pub io_SrcWidth: UWORD,
10626    pub io_SrcHeight: UWORD,
10627    pub io_DestCols: LONG,
10628    pub io_DestRows: LONG,
10629    pub io_Special: UWORD,
10630}
10631#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10632const _: () = {
10633    ["Size of IODRPReq"][::core::mem::size_of::<IODRPReq>() - 62usize];
10634    ["Alignment of IODRPReq"][::core::mem::align_of::<IODRPReq>() - 2usize];
10635    ["Offset of field: IODRPReq::io_Message"]
10636        [::core::mem::offset_of!(IODRPReq, io_Message) - 0usize];
10637    ["Offset of field: IODRPReq::io_Device"]
10638        [::core::mem::offset_of!(IODRPReq, io_Device) - 20usize];
10639    ["Offset of field: IODRPReq::io_Unit"][::core::mem::offset_of!(IODRPReq, io_Unit) - 24usize];
10640    ["Offset of field: IODRPReq::io_Command"]
10641        [::core::mem::offset_of!(IODRPReq, io_Command) - 28usize];
10642    ["Offset of field: IODRPReq::io_Flags"][::core::mem::offset_of!(IODRPReq, io_Flags) - 30usize];
10643    ["Offset of field: IODRPReq::io_Error"][::core::mem::offset_of!(IODRPReq, io_Error) - 31usize];
10644    ["Offset of field: IODRPReq::io_RastPort"]
10645        [::core::mem::offset_of!(IODRPReq, io_RastPort) - 32usize];
10646    ["Offset of field: IODRPReq::io_ColorMap"]
10647        [::core::mem::offset_of!(IODRPReq, io_ColorMap) - 36usize];
10648    ["Offset of field: IODRPReq::io_Modes"][::core::mem::offset_of!(IODRPReq, io_Modes) - 40usize];
10649    ["Offset of field: IODRPReq::io_SrcX"][::core::mem::offset_of!(IODRPReq, io_SrcX) - 44usize];
10650    ["Offset of field: IODRPReq::io_SrcY"][::core::mem::offset_of!(IODRPReq, io_SrcY) - 46usize];
10651    ["Offset of field: IODRPReq::io_SrcWidth"]
10652        [::core::mem::offset_of!(IODRPReq, io_SrcWidth) - 48usize];
10653    ["Offset of field: IODRPReq::io_SrcHeight"]
10654        [::core::mem::offset_of!(IODRPReq, io_SrcHeight) - 50usize];
10655    ["Offset of field: IODRPReq::io_DestCols"]
10656        [::core::mem::offset_of!(IODRPReq, io_DestCols) - 52usize];
10657    ["Offset of field: IODRPReq::io_DestRows"]
10658        [::core::mem::offset_of!(IODRPReq, io_DestRows) - 56usize];
10659    ["Offset of field: IODRPReq::io_Special"]
10660        [::core::mem::offset_of!(IODRPReq, io_Special) - 60usize];
10661};
10662#[repr(C, packed(2))]
10663#[derive(Debug, Copy, Clone)]
10664pub struct IODRPTagsReq {
10665    pub io_Message: Message,
10666    pub io_Device: *mut Device,
10667    pub io_Unit: *mut Unit,
10668    pub io_Command: UWORD,
10669    pub io_Flags: UBYTE,
10670    pub io_Error: BYTE,
10671    pub io_RastPort: *mut RastPort,
10672    pub io_ColorMap: *mut ColorMap,
10673    pub io_Modes: ULONG,
10674    pub io_SrcX: UWORD,
10675    pub io_SrcY: UWORD,
10676    pub io_SrcWidth: UWORD,
10677    pub io_SrcHeight: UWORD,
10678    pub io_DestCols: LONG,
10679    pub io_DestRows: LONG,
10680    pub io_Special: UWORD,
10681    pub io_TagList: *mut TagItem,
10682}
10683#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10684const _: () = {
10685    ["Size of IODRPTagsReq"][::core::mem::size_of::<IODRPTagsReq>() - 66usize];
10686    ["Alignment of IODRPTagsReq"][::core::mem::align_of::<IODRPTagsReq>() - 2usize];
10687    ["Offset of field: IODRPTagsReq::io_Message"]
10688        [::core::mem::offset_of!(IODRPTagsReq, io_Message) - 0usize];
10689    ["Offset of field: IODRPTagsReq::io_Device"]
10690        [::core::mem::offset_of!(IODRPTagsReq, io_Device) - 20usize];
10691    ["Offset of field: IODRPTagsReq::io_Unit"]
10692        [::core::mem::offset_of!(IODRPTagsReq, io_Unit) - 24usize];
10693    ["Offset of field: IODRPTagsReq::io_Command"]
10694        [::core::mem::offset_of!(IODRPTagsReq, io_Command) - 28usize];
10695    ["Offset of field: IODRPTagsReq::io_Flags"]
10696        [::core::mem::offset_of!(IODRPTagsReq, io_Flags) - 30usize];
10697    ["Offset of field: IODRPTagsReq::io_Error"]
10698        [::core::mem::offset_of!(IODRPTagsReq, io_Error) - 31usize];
10699    ["Offset of field: IODRPTagsReq::io_RastPort"]
10700        [::core::mem::offset_of!(IODRPTagsReq, io_RastPort) - 32usize];
10701    ["Offset of field: IODRPTagsReq::io_ColorMap"]
10702        [::core::mem::offset_of!(IODRPTagsReq, io_ColorMap) - 36usize];
10703    ["Offset of field: IODRPTagsReq::io_Modes"]
10704        [::core::mem::offset_of!(IODRPTagsReq, io_Modes) - 40usize];
10705    ["Offset of field: IODRPTagsReq::io_SrcX"]
10706        [::core::mem::offset_of!(IODRPTagsReq, io_SrcX) - 44usize];
10707    ["Offset of field: IODRPTagsReq::io_SrcY"]
10708        [::core::mem::offset_of!(IODRPTagsReq, io_SrcY) - 46usize];
10709    ["Offset of field: IODRPTagsReq::io_SrcWidth"]
10710        [::core::mem::offset_of!(IODRPTagsReq, io_SrcWidth) - 48usize];
10711    ["Offset of field: IODRPTagsReq::io_SrcHeight"]
10712        [::core::mem::offset_of!(IODRPTagsReq, io_SrcHeight) - 50usize];
10713    ["Offset of field: IODRPTagsReq::io_DestCols"]
10714        [::core::mem::offset_of!(IODRPTagsReq, io_DestCols) - 52usize];
10715    ["Offset of field: IODRPTagsReq::io_DestRows"]
10716        [::core::mem::offset_of!(IODRPTagsReq, io_DestRows) - 56usize];
10717    ["Offset of field: IODRPTagsReq::io_Special"]
10718        [::core::mem::offset_of!(IODRPTagsReq, io_Special) - 60usize];
10719    ["Offset of field: IODRPTagsReq::io_TagList"]
10720        [::core::mem::offset_of!(IODRPTagsReq, io_TagList) - 62usize];
10721};
10722#[repr(C, packed(2))]
10723#[derive(Debug, Copy, Clone)]
10724pub struct DRPSourceMsg {
10725    pub x: LONG,
10726    pub y: LONG,
10727    pub width: LONG,
10728    pub height: LONG,
10729    pub buf: *mut ULONG,
10730}
10731#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10732const _: () = {
10733    ["Size of DRPSourceMsg"][::core::mem::size_of::<DRPSourceMsg>() - 20usize];
10734    ["Alignment of DRPSourceMsg"][::core::mem::align_of::<DRPSourceMsg>() - 2usize];
10735    ["Offset of field: DRPSourceMsg::x"][::core::mem::offset_of!(DRPSourceMsg, x) - 0usize];
10736    ["Offset of field: DRPSourceMsg::y"][::core::mem::offset_of!(DRPSourceMsg, y) - 4usize];
10737    ["Offset of field: DRPSourceMsg::width"][::core::mem::offset_of!(DRPSourceMsg, width) - 8usize];
10738    ["Offset of field: DRPSourceMsg::height"]
10739        [::core::mem::offset_of!(DRPSourceMsg, height) - 12usize];
10740    ["Offset of field: DRPSourceMsg::buf"][::core::mem::offset_of!(DRPSourceMsg, buf) - 16usize];
10741};
10742#[repr(C, packed(2))]
10743#[derive(Debug, Copy, Clone)]
10744pub struct IOPrtPrefsReq {
10745    pub io_Message: Message,
10746    pub io_Device: *mut Device,
10747    pub io_Unit: *mut Unit,
10748    pub io_Command: UWORD,
10749    pub io_Flags: UBYTE,
10750    pub io_Error: BYTE,
10751    pub io_TagList: *mut TagItem,
10752}
10753#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10754const _: () = {
10755    ["Size of IOPrtPrefsReq"][::core::mem::size_of::<IOPrtPrefsReq>() - 36usize];
10756    ["Alignment of IOPrtPrefsReq"][::core::mem::align_of::<IOPrtPrefsReq>() - 2usize];
10757    ["Offset of field: IOPrtPrefsReq::io_Message"]
10758        [::core::mem::offset_of!(IOPrtPrefsReq, io_Message) - 0usize];
10759    ["Offset of field: IOPrtPrefsReq::io_Device"]
10760        [::core::mem::offset_of!(IOPrtPrefsReq, io_Device) - 20usize];
10761    ["Offset of field: IOPrtPrefsReq::io_Unit"]
10762        [::core::mem::offset_of!(IOPrtPrefsReq, io_Unit) - 24usize];
10763    ["Offset of field: IOPrtPrefsReq::io_Command"]
10764        [::core::mem::offset_of!(IOPrtPrefsReq, io_Command) - 28usize];
10765    ["Offset of field: IOPrtPrefsReq::io_Flags"]
10766        [::core::mem::offset_of!(IOPrtPrefsReq, io_Flags) - 30usize];
10767    ["Offset of field: IOPrtPrefsReq::io_Error"]
10768        [::core::mem::offset_of!(IOPrtPrefsReq, io_Error) - 31usize];
10769    ["Offset of field: IOPrtPrefsReq::io_TagList"]
10770        [::core::mem::offset_of!(IOPrtPrefsReq, io_TagList) - 32usize];
10771};
10772#[repr(C, packed(2))]
10773#[derive(Debug, Copy, Clone)]
10774pub struct IOPrtErrReq {
10775    pub io_Message: Message,
10776    pub io_Device: *mut Device,
10777    pub io_Unit: *mut Unit,
10778    pub io_Command: UWORD,
10779    pub io_Flags: UBYTE,
10780    pub io_Error: BYTE,
10781    pub io_Hook: *mut Hook,
10782}
10783#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10784const _: () = {
10785    ["Size of IOPrtErrReq"][::core::mem::size_of::<IOPrtErrReq>() - 36usize];
10786    ["Alignment of IOPrtErrReq"][::core::mem::align_of::<IOPrtErrReq>() - 2usize];
10787    ["Offset of field: IOPrtErrReq::io_Message"]
10788        [::core::mem::offset_of!(IOPrtErrReq, io_Message) - 0usize];
10789    ["Offset of field: IOPrtErrReq::io_Device"]
10790        [::core::mem::offset_of!(IOPrtErrReq, io_Device) - 20usize];
10791    ["Offset of field: IOPrtErrReq::io_Unit"]
10792        [::core::mem::offset_of!(IOPrtErrReq, io_Unit) - 24usize];
10793    ["Offset of field: IOPrtErrReq::io_Command"]
10794        [::core::mem::offset_of!(IOPrtErrReq, io_Command) - 28usize];
10795    ["Offset of field: IOPrtErrReq::io_Flags"]
10796        [::core::mem::offset_of!(IOPrtErrReq, io_Flags) - 30usize];
10797    ["Offset of field: IOPrtErrReq::io_Error"]
10798        [::core::mem::offset_of!(IOPrtErrReq, io_Error) - 31usize];
10799    ["Offset of field: IOPrtErrReq::io_Hook"]
10800        [::core::mem::offset_of!(IOPrtErrReq, io_Hook) - 32usize];
10801};
10802#[repr(C, packed(2))]
10803#[derive(Debug, Copy, Clone)]
10804pub struct PrtErrMsg {
10805    pub pe_Version: ULONG,
10806    pub pe_ErrorLevel: ULONG,
10807    pub pe_Window: *mut Window,
10808    pub pe_ES: *mut EasyStruct,
10809    pub pe_IDCMP: *mut ULONG,
10810    pub pe_ArgList: APTR,
10811}
10812#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10813const _: () = {
10814    ["Size of PrtErrMsg"][::core::mem::size_of::<PrtErrMsg>() - 24usize];
10815    ["Alignment of PrtErrMsg"][::core::mem::align_of::<PrtErrMsg>() - 2usize];
10816    ["Offset of field: PrtErrMsg::pe_Version"]
10817        [::core::mem::offset_of!(PrtErrMsg, pe_Version) - 0usize];
10818    ["Offset of field: PrtErrMsg::pe_ErrorLevel"]
10819        [::core::mem::offset_of!(PrtErrMsg, pe_ErrorLevel) - 4usize];
10820    ["Offset of field: PrtErrMsg::pe_Window"]
10821        [::core::mem::offset_of!(PrtErrMsg, pe_Window) - 8usize];
10822    ["Offset of field: PrtErrMsg::pe_ES"][::core::mem::offset_of!(PrtErrMsg, pe_ES) - 12usize];
10823    ["Offset of field: PrtErrMsg::pe_IDCMP"]
10824        [::core::mem::offset_of!(PrtErrMsg, pe_IDCMP) - 16usize];
10825    ["Offset of field: PrtErrMsg::pe_ArgList"]
10826        [::core::mem::offset_of!(PrtErrMsg, pe_ArgList) - 20usize];
10827};
10828#[repr(C, packed(2))]
10829#[derive(Debug, Copy, Clone)]
10830pub struct IOPrefsReq {
10831    pub io_Message: Message,
10832    pub io_Device: *mut Device,
10833    pub io_Unit: *mut Unit,
10834    pub io_Command: UWORD,
10835    pub io_Flags: UBYTE,
10836    pub io_Error: BYTE,
10837    pub io_TxtPrefs: *mut PrinterTxtPrefs,
10838    pub io_UnitPrefs: *mut PrinterUnitPrefs,
10839    pub io_DevUnitPrefs: *mut PrinterDeviceUnitPrefs,
10840    pub io_GfxPrefs: *mut PrinterGfxPrefs,
10841}
10842#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10843const _: () = {
10844    ["Size of IOPrefsReq"][::core::mem::size_of::<IOPrefsReq>() - 48usize];
10845    ["Alignment of IOPrefsReq"][::core::mem::align_of::<IOPrefsReq>() - 2usize];
10846    ["Offset of field: IOPrefsReq::io_Message"]
10847        [::core::mem::offset_of!(IOPrefsReq, io_Message) - 0usize];
10848    ["Offset of field: IOPrefsReq::io_Device"]
10849        [::core::mem::offset_of!(IOPrefsReq, io_Device) - 20usize];
10850    ["Offset of field: IOPrefsReq::io_Unit"]
10851        [::core::mem::offset_of!(IOPrefsReq, io_Unit) - 24usize];
10852    ["Offset of field: IOPrefsReq::io_Command"]
10853        [::core::mem::offset_of!(IOPrefsReq, io_Command) - 28usize];
10854    ["Offset of field: IOPrefsReq::io_Flags"]
10855        [::core::mem::offset_of!(IOPrefsReq, io_Flags) - 30usize];
10856    ["Offset of field: IOPrefsReq::io_Error"]
10857        [::core::mem::offset_of!(IOPrefsReq, io_Error) - 31usize];
10858    ["Offset of field: IOPrefsReq::io_TxtPrefs"]
10859        [::core::mem::offset_of!(IOPrefsReq, io_TxtPrefs) - 32usize];
10860    ["Offset of field: IOPrefsReq::io_UnitPrefs"]
10861        [::core::mem::offset_of!(IOPrefsReq, io_UnitPrefs) - 36usize];
10862    ["Offset of field: IOPrefsReq::io_DevUnitPrefs"]
10863        [::core::mem::offset_of!(IOPrefsReq, io_DevUnitPrefs) - 40usize];
10864    ["Offset of field: IOPrefsReq::io_GfxPrefs"]
10865        [::core::mem::offset_of!(IOPrefsReq, io_GfxPrefs) - 44usize];
10866};
10867#[repr(C, packed(2))]
10868#[derive(Debug, Copy, Clone)]
10869pub struct IOPArray {
10870    pub PTermArray0: ULONG,
10871    pub PTermArray1: ULONG,
10872}
10873#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10874const _: () = {
10875    ["Size of IOPArray"][::core::mem::size_of::<IOPArray>() - 8usize];
10876    ["Alignment of IOPArray"][::core::mem::align_of::<IOPArray>() - 2usize];
10877    ["Offset of field: IOPArray::PTermArray0"]
10878        [::core::mem::offset_of!(IOPArray, PTermArray0) - 0usize];
10879    ["Offset of field: IOPArray::PTermArray1"]
10880        [::core::mem::offset_of!(IOPArray, PTermArray1) - 4usize];
10881};
10882#[repr(C, packed(2))]
10883#[derive(Debug, Copy, Clone)]
10884pub struct IOExtPar {
10885    pub IOPar: IOStdReq,
10886    pub io_PExtFlags: ULONG,
10887    pub io_Status: UBYTE,
10888    pub io_ParFlags: UBYTE,
10889    pub io_PTermArray: IOPArray,
10890}
10891#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10892const _: () = {
10893    ["Size of IOExtPar"][::core::mem::size_of::<IOExtPar>() - 62usize];
10894    ["Alignment of IOExtPar"][::core::mem::align_of::<IOExtPar>() - 2usize];
10895    ["Offset of field: IOExtPar::IOPar"][::core::mem::offset_of!(IOExtPar, IOPar) - 0usize];
10896    ["Offset of field: IOExtPar::io_PExtFlags"]
10897        [::core::mem::offset_of!(IOExtPar, io_PExtFlags) - 48usize];
10898    ["Offset of field: IOExtPar::io_Status"]
10899        [::core::mem::offset_of!(IOExtPar, io_Status) - 52usize];
10900    ["Offset of field: IOExtPar::io_ParFlags"]
10901        [::core::mem::offset_of!(IOExtPar, io_ParFlags) - 53usize];
10902    ["Offset of field: IOExtPar::io_PTermArray"]
10903        [::core::mem::offset_of!(IOExtPar, io_PTermArray) - 54usize];
10904};
10905#[repr(C, packed(2))]
10906#[derive(Debug, Copy, Clone)]
10907pub struct IOTArray {
10908    pub TermArray0: ULONG,
10909    pub TermArray1: ULONG,
10910}
10911#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10912const _: () = {
10913    ["Size of IOTArray"][::core::mem::size_of::<IOTArray>() - 8usize];
10914    ["Alignment of IOTArray"][::core::mem::align_of::<IOTArray>() - 2usize];
10915    ["Offset of field: IOTArray::TermArray0"]
10916        [::core::mem::offset_of!(IOTArray, TermArray0) - 0usize];
10917    ["Offset of field: IOTArray::TermArray1"]
10918        [::core::mem::offset_of!(IOTArray, TermArray1) - 4usize];
10919};
10920#[repr(C, packed(2))]
10921#[derive(Debug, Copy, Clone)]
10922pub struct IOExtSer {
10923    pub IOSer: IOStdReq,
10924    pub io_CtlChar: ULONG,
10925    pub io_RBufLen: ULONG,
10926    pub io_ExtFlags: ULONG,
10927    pub io_Baud: ULONG,
10928    pub io_BrkTime: ULONG,
10929    pub io_TermArray: IOTArray,
10930    pub io_ReadLen: UBYTE,
10931    pub io_WriteLen: UBYTE,
10932    pub io_StopBits: UBYTE,
10933    pub io_SerFlags: UBYTE,
10934    pub io_Status: UWORD,
10935}
10936#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10937const _: () = {
10938    ["Size of IOExtSer"][::core::mem::size_of::<IOExtSer>() - 82usize];
10939    ["Alignment of IOExtSer"][::core::mem::align_of::<IOExtSer>() - 2usize];
10940    ["Offset of field: IOExtSer::IOSer"][::core::mem::offset_of!(IOExtSer, IOSer) - 0usize];
10941    ["Offset of field: IOExtSer::io_CtlChar"]
10942        [::core::mem::offset_of!(IOExtSer, io_CtlChar) - 48usize];
10943    ["Offset of field: IOExtSer::io_RBufLen"]
10944        [::core::mem::offset_of!(IOExtSer, io_RBufLen) - 52usize];
10945    ["Offset of field: IOExtSer::io_ExtFlags"]
10946        [::core::mem::offset_of!(IOExtSer, io_ExtFlags) - 56usize];
10947    ["Offset of field: IOExtSer::io_Baud"][::core::mem::offset_of!(IOExtSer, io_Baud) - 60usize];
10948    ["Offset of field: IOExtSer::io_BrkTime"]
10949        [::core::mem::offset_of!(IOExtSer, io_BrkTime) - 64usize];
10950    ["Offset of field: IOExtSer::io_TermArray"]
10951        [::core::mem::offset_of!(IOExtSer, io_TermArray) - 68usize];
10952    ["Offset of field: IOExtSer::io_ReadLen"]
10953        [::core::mem::offset_of!(IOExtSer, io_ReadLen) - 76usize];
10954    ["Offset of field: IOExtSer::io_WriteLen"]
10955        [::core::mem::offset_of!(IOExtSer, io_WriteLen) - 77usize];
10956    ["Offset of field: IOExtSer::io_StopBits"]
10957        [::core::mem::offset_of!(IOExtSer, io_StopBits) - 78usize];
10958    ["Offset of field: IOExtSer::io_SerFlags"]
10959        [::core::mem::offset_of!(IOExtSer, io_SerFlags) - 79usize];
10960    ["Offset of field: IOExtSer::io_Status"]
10961        [::core::mem::offset_of!(IOExtSer, io_Status) - 80usize];
10962};
10963#[repr(C, packed(2))]
10964#[derive(Debug, Copy, Clone)]
10965pub struct Process {
10966    pub pr_Task: Task,
10967    pub pr_MsgPort: MsgPort,
10968    pub pr_Pad: WORD,
10969    pub pr_SegList: BPTR,
10970    pub pr_StackSize: LONG,
10971    pub pr_GlobVec: APTR,
10972    pub pr_TaskNum: LONG,
10973    pub pr_StackBase: BPTR,
10974    pub pr_Result2: LONG,
10975    pub pr_CurrentDir: BPTR,
10976    pub pr_CIS: BPTR,
10977    pub pr_COS: BPTR,
10978    pub pr_ConsoleTask: APTR,
10979    pub pr_FileSystemTask: APTR,
10980    pub pr_CLI: BPTR,
10981    pub pr_ReturnAddr: APTR,
10982    pub pr_PktWait: APTR,
10983    pub pr_WindowPtr: APTR,
10984    pub pr_HomeDir: BPTR,
10985    pub pr_Flags: LONG,
10986    pub pr_ExitCode: FPTR,
10987    pub pr_ExitData: LONG,
10988    pub pr_Arguments: STRPTR,
10989    pub pr_LocalVars: MinList,
10990    pub pr_ShellPrivate: ULONG,
10991    pub pr_CES: BPTR,
10992}
10993#[allow(clippy::unnecessary_operation, clippy::identity_op)]
10994const _: () = {
10995    ["Size of Process"][::core::mem::size_of::<Process>() - 228usize];
10996    ["Alignment of Process"][::core::mem::align_of::<Process>() - 2usize];
10997    ["Offset of field: Process::pr_Task"][::core::mem::offset_of!(Process, pr_Task) - 0usize];
10998    ["Offset of field: Process::pr_MsgPort"]
10999        [::core::mem::offset_of!(Process, pr_MsgPort) - 92usize];
11000    ["Offset of field: Process::pr_Pad"][::core::mem::offset_of!(Process, pr_Pad) - 126usize];
11001    ["Offset of field: Process::pr_SegList"]
11002        [::core::mem::offset_of!(Process, pr_SegList) - 128usize];
11003    ["Offset of field: Process::pr_StackSize"]
11004        [::core::mem::offset_of!(Process, pr_StackSize) - 132usize];
11005    ["Offset of field: Process::pr_GlobVec"]
11006        [::core::mem::offset_of!(Process, pr_GlobVec) - 136usize];
11007    ["Offset of field: Process::pr_TaskNum"]
11008        [::core::mem::offset_of!(Process, pr_TaskNum) - 140usize];
11009    ["Offset of field: Process::pr_StackBase"]
11010        [::core::mem::offset_of!(Process, pr_StackBase) - 144usize];
11011    ["Offset of field: Process::pr_Result2"]
11012        [::core::mem::offset_of!(Process, pr_Result2) - 148usize];
11013    ["Offset of field: Process::pr_CurrentDir"]
11014        [::core::mem::offset_of!(Process, pr_CurrentDir) - 152usize];
11015    ["Offset of field: Process::pr_CIS"][::core::mem::offset_of!(Process, pr_CIS) - 156usize];
11016    ["Offset of field: Process::pr_COS"][::core::mem::offset_of!(Process, pr_COS) - 160usize];
11017    ["Offset of field: Process::pr_ConsoleTask"]
11018        [::core::mem::offset_of!(Process, pr_ConsoleTask) - 164usize];
11019    ["Offset of field: Process::pr_FileSystemTask"]
11020        [::core::mem::offset_of!(Process, pr_FileSystemTask) - 168usize];
11021    ["Offset of field: Process::pr_CLI"][::core::mem::offset_of!(Process, pr_CLI) - 172usize];
11022    ["Offset of field: Process::pr_ReturnAddr"]
11023        [::core::mem::offset_of!(Process, pr_ReturnAddr) - 176usize];
11024    ["Offset of field: Process::pr_PktWait"]
11025        [::core::mem::offset_of!(Process, pr_PktWait) - 180usize];
11026    ["Offset of field: Process::pr_WindowPtr"]
11027        [::core::mem::offset_of!(Process, pr_WindowPtr) - 184usize];
11028    ["Offset of field: Process::pr_HomeDir"]
11029        [::core::mem::offset_of!(Process, pr_HomeDir) - 188usize];
11030    ["Offset of field: Process::pr_Flags"][::core::mem::offset_of!(Process, pr_Flags) - 192usize];
11031    ["Offset of field: Process::pr_ExitCode"]
11032        [::core::mem::offset_of!(Process, pr_ExitCode) - 196usize];
11033    ["Offset of field: Process::pr_ExitData"]
11034        [::core::mem::offset_of!(Process, pr_ExitData) - 200usize];
11035    ["Offset of field: Process::pr_Arguments"]
11036        [::core::mem::offset_of!(Process, pr_Arguments) - 204usize];
11037    ["Offset of field: Process::pr_LocalVars"]
11038        [::core::mem::offset_of!(Process, pr_LocalVars) - 208usize];
11039    ["Offset of field: Process::pr_ShellPrivate"]
11040        [::core::mem::offset_of!(Process, pr_ShellPrivate) - 220usize];
11041    ["Offset of field: Process::pr_CES"][::core::mem::offset_of!(Process, pr_CES) - 224usize];
11042};
11043#[repr(C, packed(2))]
11044#[derive(Debug, Copy, Clone)]
11045pub struct FileHandle {
11046    pub fh_Link: *mut Message,
11047    pub fh_Port: *mut MsgPort,
11048    pub fh_Type: *mut MsgPort,
11049    pub fh_Buf: BPTR,
11050    pub fh_Pos: LONG,
11051    pub fh_End: LONG,
11052    pub fh_Funcs: LONG,
11053    pub fh_Func2: LONG,
11054    pub fh_Func3: LONG,
11055    pub fh_Args: LONG,
11056    pub fh_Arg2: LONG,
11057}
11058#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11059const _: () = {
11060    ["Size of FileHandle"][::core::mem::size_of::<FileHandle>() - 44usize];
11061    ["Alignment of FileHandle"][::core::mem::align_of::<FileHandle>() - 2usize];
11062    ["Offset of field: FileHandle::fh_Link"][::core::mem::offset_of!(FileHandle, fh_Link) - 0usize];
11063    ["Offset of field: FileHandle::fh_Port"][::core::mem::offset_of!(FileHandle, fh_Port) - 4usize];
11064    ["Offset of field: FileHandle::fh_Type"][::core::mem::offset_of!(FileHandle, fh_Type) - 8usize];
11065    ["Offset of field: FileHandle::fh_Buf"][::core::mem::offset_of!(FileHandle, fh_Buf) - 12usize];
11066    ["Offset of field: FileHandle::fh_Pos"][::core::mem::offset_of!(FileHandle, fh_Pos) - 16usize];
11067    ["Offset of field: FileHandle::fh_End"][::core::mem::offset_of!(FileHandle, fh_End) - 20usize];
11068    ["Offset of field: FileHandle::fh_Funcs"]
11069        [::core::mem::offset_of!(FileHandle, fh_Funcs) - 24usize];
11070    ["Offset of field: FileHandle::fh_Func2"]
11071        [::core::mem::offset_of!(FileHandle, fh_Func2) - 28usize];
11072    ["Offset of field: FileHandle::fh_Func3"]
11073        [::core::mem::offset_of!(FileHandle, fh_Func3) - 32usize];
11074    ["Offset of field: FileHandle::fh_Args"]
11075        [::core::mem::offset_of!(FileHandle, fh_Args) - 36usize];
11076    ["Offset of field: FileHandle::fh_Arg2"]
11077        [::core::mem::offset_of!(FileHandle, fh_Arg2) - 40usize];
11078};
11079#[repr(C, packed(2))]
11080#[derive(Debug, Copy, Clone)]
11081pub struct DosPacket {
11082    pub dp_Link: *mut Message,
11083    pub dp_Port: *mut MsgPort,
11084    pub dp_Type: LONG,
11085    pub dp_Res1: LONG,
11086    pub dp_Res2: LONG,
11087    pub dp_Arg1: LONG,
11088    pub dp_Arg2: LONG,
11089    pub dp_Arg3: LONG,
11090    pub dp_Arg4: LONG,
11091    pub dp_Arg5: LONG,
11092    pub dp_Arg6: LONG,
11093    pub dp_Arg7: LONG,
11094}
11095#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11096const _: () = {
11097    ["Size of DosPacket"][::core::mem::size_of::<DosPacket>() - 48usize];
11098    ["Alignment of DosPacket"][::core::mem::align_of::<DosPacket>() - 2usize];
11099    ["Offset of field: DosPacket::dp_Link"][::core::mem::offset_of!(DosPacket, dp_Link) - 0usize];
11100    ["Offset of field: DosPacket::dp_Port"][::core::mem::offset_of!(DosPacket, dp_Port) - 4usize];
11101    ["Offset of field: DosPacket::dp_Type"][::core::mem::offset_of!(DosPacket, dp_Type) - 8usize];
11102    ["Offset of field: DosPacket::dp_Res1"][::core::mem::offset_of!(DosPacket, dp_Res1) - 12usize];
11103    ["Offset of field: DosPacket::dp_Res2"][::core::mem::offset_of!(DosPacket, dp_Res2) - 16usize];
11104    ["Offset of field: DosPacket::dp_Arg1"][::core::mem::offset_of!(DosPacket, dp_Arg1) - 20usize];
11105    ["Offset of field: DosPacket::dp_Arg2"][::core::mem::offset_of!(DosPacket, dp_Arg2) - 24usize];
11106    ["Offset of field: DosPacket::dp_Arg3"][::core::mem::offset_of!(DosPacket, dp_Arg3) - 28usize];
11107    ["Offset of field: DosPacket::dp_Arg4"][::core::mem::offset_of!(DosPacket, dp_Arg4) - 32usize];
11108    ["Offset of field: DosPacket::dp_Arg5"][::core::mem::offset_of!(DosPacket, dp_Arg5) - 36usize];
11109    ["Offset of field: DosPacket::dp_Arg6"][::core::mem::offset_of!(DosPacket, dp_Arg6) - 40usize];
11110    ["Offset of field: DosPacket::dp_Arg7"][::core::mem::offset_of!(DosPacket, dp_Arg7) - 44usize];
11111};
11112#[repr(C)]
11113#[derive(Debug, Copy, Clone)]
11114pub struct StandardPacket {
11115    pub sp_Msg: Message,
11116    pub sp_Pkt: DosPacket,
11117}
11118#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11119const _: () = {
11120    ["Size of StandardPacket"][::core::mem::size_of::<StandardPacket>() - 68usize];
11121    ["Alignment of StandardPacket"][::core::mem::align_of::<StandardPacket>() - 2usize];
11122    ["Offset of field: StandardPacket::sp_Msg"]
11123        [::core::mem::offset_of!(StandardPacket, sp_Msg) - 0usize];
11124    ["Offset of field: StandardPacket::sp_Pkt"]
11125        [::core::mem::offset_of!(StandardPacket, sp_Pkt) - 20usize];
11126};
11127#[repr(C, packed(2))]
11128#[derive(Debug, Copy, Clone)]
11129pub struct ErrorString {
11130    pub estr_Nums: *mut LONG,
11131    pub estr_Strings: STRPTR,
11132}
11133#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11134const _: () = {
11135    ["Size of ErrorString"][::core::mem::size_of::<ErrorString>() - 8usize];
11136    ["Alignment of ErrorString"][::core::mem::align_of::<ErrorString>() - 2usize];
11137    ["Offset of field: ErrorString::estr_Nums"]
11138        [::core::mem::offset_of!(ErrorString, estr_Nums) - 0usize];
11139    ["Offset of field: ErrorString::estr_Strings"]
11140        [::core::mem::offset_of!(ErrorString, estr_Strings) - 4usize];
11141};
11142#[repr(C, packed(2))]
11143#[derive(Debug, Copy, Clone)]
11144pub struct DosLibrary {
11145    pub dl_lib: Library,
11146    pub dl_Root: *mut RootNode,
11147    pub dl_GV: APTR,
11148    pub dl_A2: LONG,
11149    pub dl_A5: LONG,
11150    pub dl_A6: LONG,
11151    pub dl_Errors: *mut ErrorString,
11152    pub dl_TimeReq: *mut timerequest,
11153    pub dl_UtilityBase: *mut Library,
11154    pub dl_IntuitionBase: *mut Library,
11155}
11156#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11157const _: () = {
11158    ["Size of DosLibrary"][::core::mem::size_of::<DosLibrary>() - 70usize];
11159    ["Alignment of DosLibrary"][::core::mem::align_of::<DosLibrary>() - 2usize];
11160    ["Offset of field: DosLibrary::dl_lib"][::core::mem::offset_of!(DosLibrary, dl_lib) - 0usize];
11161    ["Offset of field: DosLibrary::dl_Root"]
11162        [::core::mem::offset_of!(DosLibrary, dl_Root) - 34usize];
11163    ["Offset of field: DosLibrary::dl_GV"][::core::mem::offset_of!(DosLibrary, dl_GV) - 38usize];
11164    ["Offset of field: DosLibrary::dl_A2"][::core::mem::offset_of!(DosLibrary, dl_A2) - 42usize];
11165    ["Offset of field: DosLibrary::dl_A5"][::core::mem::offset_of!(DosLibrary, dl_A5) - 46usize];
11166    ["Offset of field: DosLibrary::dl_A6"][::core::mem::offset_of!(DosLibrary, dl_A6) - 50usize];
11167    ["Offset of field: DosLibrary::dl_Errors"]
11168        [::core::mem::offset_of!(DosLibrary, dl_Errors) - 54usize];
11169    ["Offset of field: DosLibrary::dl_TimeReq"]
11170        [::core::mem::offset_of!(DosLibrary, dl_TimeReq) - 58usize];
11171    ["Offset of field: DosLibrary::dl_UtilityBase"]
11172        [::core::mem::offset_of!(DosLibrary, dl_UtilityBase) - 62usize];
11173    ["Offset of field: DosLibrary::dl_IntuitionBase"]
11174        [::core::mem::offset_of!(DosLibrary, dl_IntuitionBase) - 66usize];
11175};
11176#[repr(C, packed(2))]
11177#[derive(Debug, Copy, Clone)]
11178pub struct RootNode {
11179    pub rn_TaskArray: BPTR,
11180    pub rn_ConsoleSegment: BPTR,
11181    pub rn_Time: DateStamp,
11182    pub rn_RestartSeg: LONG,
11183    pub rn_Info: BPTR,
11184    pub rn_FileHandlerSegment: BPTR,
11185    pub rn_CliList: MinList,
11186    pub rn_BootProc: *mut MsgPort,
11187    pub rn_ShellSegment: BPTR,
11188    pub rn_Flags: LONG,
11189}
11190#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11191const _: () = {
11192    ["Size of RootNode"][::core::mem::size_of::<RootNode>() - 56usize];
11193    ["Alignment of RootNode"][::core::mem::align_of::<RootNode>() - 2usize];
11194    ["Offset of field: RootNode::rn_TaskArray"]
11195        [::core::mem::offset_of!(RootNode, rn_TaskArray) - 0usize];
11196    ["Offset of field: RootNode::rn_ConsoleSegment"]
11197        [::core::mem::offset_of!(RootNode, rn_ConsoleSegment) - 4usize];
11198    ["Offset of field: RootNode::rn_Time"][::core::mem::offset_of!(RootNode, rn_Time) - 8usize];
11199    ["Offset of field: RootNode::rn_RestartSeg"]
11200        [::core::mem::offset_of!(RootNode, rn_RestartSeg) - 20usize];
11201    ["Offset of field: RootNode::rn_Info"][::core::mem::offset_of!(RootNode, rn_Info) - 24usize];
11202    ["Offset of field: RootNode::rn_FileHandlerSegment"]
11203        [::core::mem::offset_of!(RootNode, rn_FileHandlerSegment) - 28usize];
11204    ["Offset of field: RootNode::rn_CliList"]
11205        [::core::mem::offset_of!(RootNode, rn_CliList) - 32usize];
11206    ["Offset of field: RootNode::rn_BootProc"]
11207        [::core::mem::offset_of!(RootNode, rn_BootProc) - 44usize];
11208    ["Offset of field: RootNode::rn_ShellSegment"]
11209        [::core::mem::offset_of!(RootNode, rn_ShellSegment) - 48usize];
11210    ["Offset of field: RootNode::rn_Flags"][::core::mem::offset_of!(RootNode, rn_Flags) - 52usize];
11211};
11212#[repr(C, packed(2))]
11213#[derive(Debug, Copy, Clone)]
11214pub struct CliProcList {
11215    pub cpl_Node: MinNode,
11216    pub cpl_First: LONG,
11217    pub cpl_Array: *mut *mut MsgPort,
11218}
11219#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11220const _: () = {
11221    ["Size of CliProcList"][::core::mem::size_of::<CliProcList>() - 16usize];
11222    ["Alignment of CliProcList"][::core::mem::align_of::<CliProcList>() - 2usize];
11223    ["Offset of field: CliProcList::cpl_Node"]
11224        [::core::mem::offset_of!(CliProcList, cpl_Node) - 0usize];
11225    ["Offset of field: CliProcList::cpl_First"]
11226        [::core::mem::offset_of!(CliProcList, cpl_First) - 8usize];
11227    ["Offset of field: CliProcList::cpl_Array"]
11228        [::core::mem::offset_of!(CliProcList, cpl_Array) - 12usize];
11229};
11230#[repr(C, packed(2))]
11231#[derive(Debug, Copy, Clone)]
11232pub struct DosInfo {
11233    pub di_McName: BPTR,
11234    pub di_DevInfo: BPTR,
11235    pub di_Devices: BPTR,
11236    pub di_Handlers: BPTR,
11237    pub di_NetHand: APTR,
11238    pub di_DevLock: SignalSemaphore,
11239    pub di_EntryLock: SignalSemaphore,
11240    pub di_DeleteLock: SignalSemaphore,
11241}
11242#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11243const _: () = {
11244    ["Size of DosInfo"][::core::mem::size_of::<DosInfo>() - 158usize];
11245    ["Alignment of DosInfo"][::core::mem::align_of::<DosInfo>() - 2usize];
11246    ["Offset of field: DosInfo::di_McName"][::core::mem::offset_of!(DosInfo, di_McName) - 0usize];
11247    ["Offset of field: DosInfo::di_DevInfo"][::core::mem::offset_of!(DosInfo, di_DevInfo) - 4usize];
11248    ["Offset of field: DosInfo::di_Devices"][::core::mem::offset_of!(DosInfo, di_Devices) - 8usize];
11249    ["Offset of field: DosInfo::di_Handlers"]
11250        [::core::mem::offset_of!(DosInfo, di_Handlers) - 12usize];
11251    ["Offset of field: DosInfo::di_NetHand"]
11252        [::core::mem::offset_of!(DosInfo, di_NetHand) - 16usize];
11253    ["Offset of field: DosInfo::di_DevLock"]
11254        [::core::mem::offset_of!(DosInfo, di_DevLock) - 20usize];
11255    ["Offset of field: DosInfo::di_EntryLock"]
11256        [::core::mem::offset_of!(DosInfo, di_EntryLock) - 66usize];
11257    ["Offset of field: DosInfo::di_DeleteLock"]
11258        [::core::mem::offset_of!(DosInfo, di_DeleteLock) - 112usize];
11259};
11260#[repr(C, packed(2))]
11261#[derive(Debug, Copy, Clone)]
11262pub struct Segment {
11263    pub seg_Next: BPTR,
11264    pub seg_UC: LONG,
11265    pub seg_Seg: BPTR,
11266    pub seg_Name: [UBYTE; 4usize],
11267}
11268#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11269const _: () = {
11270    ["Size of Segment"][::core::mem::size_of::<Segment>() - 16usize];
11271    ["Alignment of Segment"][::core::mem::align_of::<Segment>() - 2usize];
11272    ["Offset of field: Segment::seg_Next"][::core::mem::offset_of!(Segment, seg_Next) - 0usize];
11273    ["Offset of field: Segment::seg_UC"][::core::mem::offset_of!(Segment, seg_UC) - 4usize];
11274    ["Offset of field: Segment::seg_Seg"][::core::mem::offset_of!(Segment, seg_Seg) - 8usize];
11275    ["Offset of field: Segment::seg_Name"][::core::mem::offset_of!(Segment, seg_Name) - 12usize];
11276};
11277#[repr(C, packed(2))]
11278#[derive(Debug, Copy, Clone)]
11279pub struct CommandLineInterface {
11280    pub cli_Result2: LONG,
11281    pub cli_SetName: BSTR,
11282    pub cli_CommandDir: BPTR,
11283    pub cli_ReturnCode: LONG,
11284    pub cli_CommandName: BSTR,
11285    pub cli_FailLevel: LONG,
11286    pub cli_Prompt: BSTR,
11287    pub cli_StandardInput: BPTR,
11288    pub cli_CurrentInput: BPTR,
11289    pub cli_CommandFile: BSTR,
11290    pub cli_Interactive: LONG,
11291    pub cli_Background: LONG,
11292    pub cli_CurrentOutput: BPTR,
11293    pub cli_DefaultStack: LONG,
11294    pub cli_StandardOutput: BPTR,
11295    pub cli_Module: BPTR,
11296}
11297#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11298const _: () = {
11299    ["Size of CommandLineInterface"][::core::mem::size_of::<CommandLineInterface>() - 64usize];
11300    ["Alignment of CommandLineInterface"][::core::mem::align_of::<CommandLineInterface>() - 2usize];
11301    ["Offset of field: CommandLineInterface::cli_Result2"]
11302        [::core::mem::offset_of!(CommandLineInterface, cli_Result2) - 0usize];
11303    ["Offset of field: CommandLineInterface::cli_SetName"]
11304        [::core::mem::offset_of!(CommandLineInterface, cli_SetName) - 4usize];
11305    ["Offset of field: CommandLineInterface::cli_CommandDir"]
11306        [::core::mem::offset_of!(CommandLineInterface, cli_CommandDir) - 8usize];
11307    ["Offset of field: CommandLineInterface::cli_ReturnCode"]
11308        [::core::mem::offset_of!(CommandLineInterface, cli_ReturnCode) - 12usize];
11309    ["Offset of field: CommandLineInterface::cli_CommandName"]
11310        [::core::mem::offset_of!(CommandLineInterface, cli_CommandName) - 16usize];
11311    ["Offset of field: CommandLineInterface::cli_FailLevel"]
11312        [::core::mem::offset_of!(CommandLineInterface, cli_FailLevel) - 20usize];
11313    ["Offset of field: CommandLineInterface::cli_Prompt"]
11314        [::core::mem::offset_of!(CommandLineInterface, cli_Prompt) - 24usize];
11315    ["Offset of field: CommandLineInterface::cli_StandardInput"]
11316        [::core::mem::offset_of!(CommandLineInterface, cli_StandardInput) - 28usize];
11317    ["Offset of field: CommandLineInterface::cli_CurrentInput"]
11318        [::core::mem::offset_of!(CommandLineInterface, cli_CurrentInput) - 32usize];
11319    ["Offset of field: CommandLineInterface::cli_CommandFile"]
11320        [::core::mem::offset_of!(CommandLineInterface, cli_CommandFile) - 36usize];
11321    ["Offset of field: CommandLineInterface::cli_Interactive"]
11322        [::core::mem::offset_of!(CommandLineInterface, cli_Interactive) - 40usize];
11323    ["Offset of field: CommandLineInterface::cli_Background"]
11324        [::core::mem::offset_of!(CommandLineInterface, cli_Background) - 44usize];
11325    ["Offset of field: CommandLineInterface::cli_CurrentOutput"]
11326        [::core::mem::offset_of!(CommandLineInterface, cli_CurrentOutput) - 48usize];
11327    ["Offset of field: CommandLineInterface::cli_DefaultStack"]
11328        [::core::mem::offset_of!(CommandLineInterface, cli_DefaultStack) - 52usize];
11329    ["Offset of field: CommandLineInterface::cli_StandardOutput"]
11330        [::core::mem::offset_of!(CommandLineInterface, cli_StandardOutput) - 56usize];
11331    ["Offset of field: CommandLineInterface::cli_Module"]
11332        [::core::mem::offset_of!(CommandLineInterface, cli_Module) - 60usize];
11333};
11334#[repr(C, packed(2))]
11335#[derive(Debug, Copy, Clone)]
11336pub struct DeviceList {
11337    pub dl_Next: BPTR,
11338    pub dl_Type: LONG,
11339    pub dl_Task: *mut MsgPort,
11340    pub dl_Lock: BPTR,
11341    pub dl_VolumeDate: DateStamp,
11342    pub dl_LockList: BPTR,
11343    pub dl_DiskType: LONG,
11344    pub dl_unused: LONG,
11345    pub dl_Name: BSTR,
11346}
11347#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11348const _: () = {
11349    ["Size of DeviceList"][::core::mem::size_of::<DeviceList>() - 44usize];
11350    ["Alignment of DeviceList"][::core::mem::align_of::<DeviceList>() - 2usize];
11351    ["Offset of field: DeviceList::dl_Next"][::core::mem::offset_of!(DeviceList, dl_Next) - 0usize];
11352    ["Offset of field: DeviceList::dl_Type"][::core::mem::offset_of!(DeviceList, dl_Type) - 4usize];
11353    ["Offset of field: DeviceList::dl_Task"][::core::mem::offset_of!(DeviceList, dl_Task) - 8usize];
11354    ["Offset of field: DeviceList::dl_Lock"]
11355        [::core::mem::offset_of!(DeviceList, dl_Lock) - 12usize];
11356    ["Offset of field: DeviceList::dl_VolumeDate"]
11357        [::core::mem::offset_of!(DeviceList, dl_VolumeDate) - 16usize];
11358    ["Offset of field: DeviceList::dl_LockList"]
11359        [::core::mem::offset_of!(DeviceList, dl_LockList) - 28usize];
11360    ["Offset of field: DeviceList::dl_DiskType"]
11361        [::core::mem::offset_of!(DeviceList, dl_DiskType) - 32usize];
11362    ["Offset of field: DeviceList::dl_unused"]
11363        [::core::mem::offset_of!(DeviceList, dl_unused) - 36usize];
11364    ["Offset of field: DeviceList::dl_Name"]
11365        [::core::mem::offset_of!(DeviceList, dl_Name) - 40usize];
11366};
11367#[repr(C, packed(2))]
11368#[derive(Debug, Copy, Clone)]
11369pub struct DevInfo {
11370    pub dvi_Next: BPTR,
11371    pub dvi_Type: LONG,
11372    pub dvi_Task: APTR,
11373    pub dvi_Lock: BPTR,
11374    pub dvi_Handler: BSTR,
11375    pub dvi_StackSize: LONG,
11376    pub dvi_Priority: LONG,
11377    pub dvi_Startup: LONG,
11378    pub dvi_SegList: BPTR,
11379    pub dvi_GlobVec: BPTR,
11380    pub dvi_Name: BSTR,
11381}
11382#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11383const _: () = {
11384    ["Size of DevInfo"][::core::mem::size_of::<DevInfo>() - 44usize];
11385    ["Alignment of DevInfo"][::core::mem::align_of::<DevInfo>() - 2usize];
11386    ["Offset of field: DevInfo::dvi_Next"][::core::mem::offset_of!(DevInfo, dvi_Next) - 0usize];
11387    ["Offset of field: DevInfo::dvi_Type"][::core::mem::offset_of!(DevInfo, dvi_Type) - 4usize];
11388    ["Offset of field: DevInfo::dvi_Task"][::core::mem::offset_of!(DevInfo, dvi_Task) - 8usize];
11389    ["Offset of field: DevInfo::dvi_Lock"][::core::mem::offset_of!(DevInfo, dvi_Lock) - 12usize];
11390    ["Offset of field: DevInfo::dvi_Handler"]
11391        [::core::mem::offset_of!(DevInfo, dvi_Handler) - 16usize];
11392    ["Offset of field: DevInfo::dvi_StackSize"]
11393        [::core::mem::offset_of!(DevInfo, dvi_StackSize) - 20usize];
11394    ["Offset of field: DevInfo::dvi_Priority"]
11395        [::core::mem::offset_of!(DevInfo, dvi_Priority) - 24usize];
11396    ["Offset of field: DevInfo::dvi_Startup"]
11397        [::core::mem::offset_of!(DevInfo, dvi_Startup) - 28usize];
11398    ["Offset of field: DevInfo::dvi_SegList"]
11399        [::core::mem::offset_of!(DevInfo, dvi_SegList) - 32usize];
11400    ["Offset of field: DevInfo::dvi_GlobVec"]
11401        [::core::mem::offset_of!(DevInfo, dvi_GlobVec) - 36usize];
11402    ["Offset of field: DevInfo::dvi_Name"][::core::mem::offset_of!(DevInfo, dvi_Name) - 40usize];
11403};
11404#[repr(C, packed(2))]
11405#[derive(Copy, Clone)]
11406pub struct DosList {
11407    pub dol_Next: BPTR,
11408    pub dol_Type: LONG,
11409    pub dol_Task: *mut MsgPort,
11410    pub dol_Lock: BPTR,
11411    pub dol_misc: DosList__bindgen_ty_1,
11412    pub dol_Name: BSTR,
11413}
11414#[repr(C)]
11415#[derive(Copy, Clone)]
11416pub union DosList__bindgen_ty_1 {
11417    pub dol_handler: DosList__bindgen_ty_1__bindgen_ty_1,
11418    pub dol_volume: DosList__bindgen_ty_1__bindgen_ty_2,
11419    pub dol_assign: DosList__bindgen_ty_1__bindgen_ty_3,
11420}
11421#[repr(C, packed(2))]
11422#[derive(Debug, Copy, Clone)]
11423pub struct DosList__bindgen_ty_1__bindgen_ty_1 {
11424    pub dol_Handler: BSTR,
11425    pub dol_StackSize: LONG,
11426    pub dol_Priority: LONG,
11427    pub dol_Startup: ULONG,
11428    pub dol_SegList: BPTR,
11429    pub dol_GlobVec: BPTR,
11430}
11431#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11432const _: () = {
11433    ["Size of DosList__bindgen_ty_1__bindgen_ty_1"]
11434        [::core::mem::size_of::<DosList__bindgen_ty_1__bindgen_ty_1>() - 24usize];
11435    ["Alignment of DosList__bindgen_ty_1__bindgen_ty_1"]
11436        [::core::mem::align_of::<DosList__bindgen_ty_1__bindgen_ty_1>() - 2usize];
11437    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_1::dol_Handler"]
11438        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_1, dol_Handler) - 0usize];
11439    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_1::dol_StackSize"]
11440        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_1, dol_StackSize) - 4usize];
11441    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_1::dol_Priority"]
11442        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_1, dol_Priority) - 8usize];
11443    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_1::dol_Startup"]
11444        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_1, dol_Startup) - 12usize];
11445    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_1::dol_SegList"]
11446        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_1, dol_SegList) - 16usize];
11447    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_1::dol_GlobVec"]
11448        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_1, dol_GlobVec) - 20usize];
11449};
11450#[repr(C, packed(2))]
11451#[derive(Debug, Copy, Clone)]
11452pub struct DosList__bindgen_ty_1__bindgen_ty_2 {
11453    pub dol_VolumeDate: DateStamp,
11454    pub dol_LockList: BPTR,
11455    pub dol_DiskType: LONG,
11456}
11457#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11458const _: () = {
11459    ["Size of DosList__bindgen_ty_1__bindgen_ty_2"]
11460        [::core::mem::size_of::<DosList__bindgen_ty_1__bindgen_ty_2>() - 20usize];
11461    ["Alignment of DosList__bindgen_ty_1__bindgen_ty_2"]
11462        [::core::mem::align_of::<DosList__bindgen_ty_1__bindgen_ty_2>() - 2usize];
11463    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_2::dol_VolumeDate"]
11464        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_2, dol_VolumeDate) - 0usize];
11465    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_2::dol_LockList"]
11466        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_2, dol_LockList) - 12usize];
11467    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_2::dol_DiskType"]
11468        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_2, dol_DiskType) - 16usize];
11469};
11470#[repr(C, packed(2))]
11471#[derive(Debug, Copy, Clone)]
11472pub struct DosList__bindgen_ty_1__bindgen_ty_3 {
11473    pub dol_AssignName: STRPTR,
11474    pub dol_List: *mut AssignList,
11475}
11476#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11477const _: () = {
11478    ["Size of DosList__bindgen_ty_1__bindgen_ty_3"]
11479        [::core::mem::size_of::<DosList__bindgen_ty_1__bindgen_ty_3>() - 8usize];
11480    ["Alignment of DosList__bindgen_ty_1__bindgen_ty_3"]
11481        [::core::mem::align_of::<DosList__bindgen_ty_1__bindgen_ty_3>() - 2usize];
11482    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_3::dol_AssignName"]
11483        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_3, dol_AssignName) - 0usize];
11484    ["Offset of field: DosList__bindgen_ty_1__bindgen_ty_3::dol_List"]
11485        [::core::mem::offset_of!(DosList__bindgen_ty_1__bindgen_ty_3, dol_List) - 4usize];
11486};
11487#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11488const _: () = {
11489    ["Size of DosList__bindgen_ty_1"][::core::mem::size_of::<DosList__bindgen_ty_1>() - 24usize];
11490    ["Alignment of DosList__bindgen_ty_1"]
11491        [::core::mem::align_of::<DosList__bindgen_ty_1>() - 2usize];
11492    ["Offset of field: DosList__bindgen_ty_1::dol_handler"]
11493        [::core::mem::offset_of!(DosList__bindgen_ty_1, dol_handler) - 0usize];
11494    ["Offset of field: DosList__bindgen_ty_1::dol_volume"]
11495        [::core::mem::offset_of!(DosList__bindgen_ty_1, dol_volume) - 0usize];
11496    ["Offset of field: DosList__bindgen_ty_1::dol_assign"]
11497        [::core::mem::offset_of!(DosList__bindgen_ty_1, dol_assign) - 0usize];
11498};
11499#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11500const _: () = {
11501    ["Size of DosList"][::core::mem::size_of::<DosList>() - 44usize];
11502    ["Alignment of DosList"][::core::mem::align_of::<DosList>() - 2usize];
11503    ["Offset of field: DosList::dol_Next"][::core::mem::offset_of!(DosList, dol_Next) - 0usize];
11504    ["Offset of field: DosList::dol_Type"][::core::mem::offset_of!(DosList, dol_Type) - 4usize];
11505    ["Offset of field: DosList::dol_Task"][::core::mem::offset_of!(DosList, dol_Task) - 8usize];
11506    ["Offset of field: DosList::dol_Lock"][::core::mem::offset_of!(DosList, dol_Lock) - 12usize];
11507    ["Offset of field: DosList::dol_misc"][::core::mem::offset_of!(DosList, dol_misc) - 16usize];
11508    ["Offset of field: DosList::dol_Name"][::core::mem::offset_of!(DosList, dol_Name) - 40usize];
11509};
11510#[repr(C, packed(2))]
11511#[derive(Debug, Copy, Clone)]
11512pub struct AssignList {
11513    pub al_Next: *mut AssignList,
11514    pub al_Lock: BPTR,
11515}
11516#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11517const _: () = {
11518    ["Size of AssignList"][::core::mem::size_of::<AssignList>() - 8usize];
11519    ["Alignment of AssignList"][::core::mem::align_of::<AssignList>() - 2usize];
11520    ["Offset of field: AssignList::al_Next"][::core::mem::offset_of!(AssignList, al_Next) - 0usize];
11521    ["Offset of field: AssignList::al_Lock"][::core::mem::offset_of!(AssignList, al_Lock) - 4usize];
11522};
11523#[repr(C, packed(2))]
11524#[derive(Debug, Copy, Clone)]
11525pub struct DevProc {
11526    pub dvp_Port: *mut MsgPort,
11527    pub dvp_Lock: BPTR,
11528    pub dvp_Flags: ULONG,
11529    pub dvp_DevNode: *mut DosList,
11530}
11531#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11532const _: () = {
11533    ["Size of DevProc"][::core::mem::size_of::<DevProc>() - 16usize];
11534    ["Alignment of DevProc"][::core::mem::align_of::<DevProc>() - 2usize];
11535    ["Offset of field: DevProc::dvp_Port"][::core::mem::offset_of!(DevProc, dvp_Port) - 0usize];
11536    ["Offset of field: DevProc::dvp_Lock"][::core::mem::offset_of!(DevProc, dvp_Lock) - 4usize];
11537    ["Offset of field: DevProc::dvp_Flags"][::core::mem::offset_of!(DevProc, dvp_Flags) - 8usize];
11538    ["Offset of field: DevProc::dvp_DevNode"]
11539        [::core::mem::offset_of!(DevProc, dvp_DevNode) - 12usize];
11540};
11541#[repr(C, packed(2))]
11542#[derive(Debug, Copy, Clone)]
11543pub struct FileLock {
11544    pub fl_Link: BPTR,
11545    pub fl_Key: LONG,
11546    pub fl_Access: LONG,
11547    pub fl_Task: *mut MsgPort,
11548    pub fl_Volume: BPTR,
11549}
11550#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11551const _: () = {
11552    ["Size of FileLock"][::core::mem::size_of::<FileLock>() - 20usize];
11553    ["Alignment of FileLock"][::core::mem::align_of::<FileLock>() - 2usize];
11554    ["Offset of field: FileLock::fl_Link"][::core::mem::offset_of!(FileLock, fl_Link) - 0usize];
11555    ["Offset of field: FileLock::fl_Key"][::core::mem::offset_of!(FileLock, fl_Key) - 4usize];
11556    ["Offset of field: FileLock::fl_Access"][::core::mem::offset_of!(FileLock, fl_Access) - 8usize];
11557    ["Offset of field: FileLock::fl_Task"][::core::mem::offset_of!(FileLock, fl_Task) - 12usize];
11558    ["Offset of field: FileLock::fl_Volume"]
11559        [::core::mem::offset_of!(FileLock, fl_Volume) - 16usize];
11560};
11561#[repr(C, packed(2))]
11562#[derive(Debug, Copy, Clone)]
11563pub struct DeviceData {
11564    pub dd_Device: Library,
11565    pub dd_Segment: APTR,
11566    pub dd_ExecBase: APTR,
11567    pub dd_CmdVectors: APTR,
11568    pub dd_CmdBytes: APTR,
11569    pub dd_NumCommands: UWORD,
11570}
11571#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11572const _: () = {
11573    ["Size of DeviceData"][::core::mem::size_of::<DeviceData>() - 52usize];
11574    ["Alignment of DeviceData"][::core::mem::align_of::<DeviceData>() - 2usize];
11575    ["Offset of field: DeviceData::dd_Device"]
11576        [::core::mem::offset_of!(DeviceData, dd_Device) - 0usize];
11577    ["Offset of field: DeviceData::dd_Segment"]
11578        [::core::mem::offset_of!(DeviceData, dd_Segment) - 34usize];
11579    ["Offset of field: DeviceData::dd_ExecBase"]
11580        [::core::mem::offset_of!(DeviceData, dd_ExecBase) - 38usize];
11581    ["Offset of field: DeviceData::dd_CmdVectors"]
11582        [::core::mem::offset_of!(DeviceData, dd_CmdVectors) - 42usize];
11583    ["Offset of field: DeviceData::dd_CmdBytes"]
11584        [::core::mem::offset_of!(DeviceData, dd_CmdBytes) - 46usize];
11585    ["Offset of field: DeviceData::dd_NumCommands"]
11586        [::core::mem::offset_of!(DeviceData, dd_NumCommands) - 50usize];
11587};
11588#[repr(C, packed(2))]
11589#[derive(Copy, Clone)]
11590pub struct PrinterData {
11591    pub pd_Device: DeviceData,
11592    pub pd_Unit: MsgPort,
11593    pub pd_PrinterSegment: BPTR,
11594    pub pd_PrinterType: UWORD,
11595    pub pd_SegmentData: *mut PrinterSegment,
11596    pub pd_PrintBuf: *mut UBYTE,
11597    pub pd_PWrite: FPTR,
11598    pub pd_PBothReady: FPTR,
11599    pub pd_ior0: PrinterData__bindgen_ty_1,
11600    pub pd_ior1: PrinterData__bindgen_ty_2,
11601    pub pd_TIOR: timerequest,
11602    pub pd_IORPort: MsgPort,
11603    pub pd_TC: Task,
11604    pub pd_OldStk: [UBYTE; 2048usize],
11605    pub pd_Flags: UBYTE,
11606    pub pd_pad: UBYTE,
11607    pub pd_Preferences: Preferences,
11608    pub pd_PWaitEnabled: UBYTE,
11609    pub pd_Flags1: UBYTE,
11610    pub pd_Stk: [UBYTE; 4096usize],
11611    pub pd_PUnit: *mut PrinterUnit,
11612    pub pd_PRead: FPTR,
11613    pub pd_CallErrHook: FPTR,
11614    pub pd_UnitNumber: ULONG,
11615    pub pd_DriverName: STRPTR,
11616    pub pd_PQuery: FPTR,
11617}
11618#[repr(C)]
11619#[derive(Copy, Clone)]
11620pub union PrinterData__bindgen_ty_1 {
11621    pub pd_p0: IOExtPar,
11622    pub pd_s0: IOExtSer,
11623}
11624#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11625const _: () = {
11626    ["Size of PrinterData__bindgen_ty_1"]
11627        [::core::mem::size_of::<PrinterData__bindgen_ty_1>() - 82usize];
11628    ["Alignment of PrinterData__bindgen_ty_1"]
11629        [::core::mem::align_of::<PrinterData__bindgen_ty_1>() - 2usize];
11630    ["Offset of field: PrinterData__bindgen_ty_1::pd_p0"]
11631        [::core::mem::offset_of!(PrinterData__bindgen_ty_1, pd_p0) - 0usize];
11632    ["Offset of field: PrinterData__bindgen_ty_1::pd_s0"]
11633        [::core::mem::offset_of!(PrinterData__bindgen_ty_1, pd_s0) - 0usize];
11634};
11635#[repr(C)]
11636#[derive(Copy, Clone)]
11637pub union PrinterData__bindgen_ty_2 {
11638    pub pd_p1: IOExtPar,
11639    pub pd_s1: IOExtSer,
11640}
11641#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11642const _: () = {
11643    ["Size of PrinterData__bindgen_ty_2"]
11644        [::core::mem::size_of::<PrinterData__bindgen_ty_2>() - 82usize];
11645    ["Alignment of PrinterData__bindgen_ty_2"]
11646        [::core::mem::align_of::<PrinterData__bindgen_ty_2>() - 2usize];
11647    ["Offset of field: PrinterData__bindgen_ty_2::pd_p1"]
11648        [::core::mem::offset_of!(PrinterData__bindgen_ty_2, pd_p1) - 0usize];
11649    ["Offset of field: PrinterData__bindgen_ty_2::pd_s1"]
11650        [::core::mem::offset_of!(PrinterData__bindgen_ty_2, pd_s1) - 0usize];
11651};
11652#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11653const _: () = {
11654    ["Size of PrinterData"][::core::mem::size_of::<PrinterData>() - 6842usize];
11655    ["Alignment of PrinterData"][::core::mem::align_of::<PrinterData>() - 2usize];
11656    ["Offset of field: PrinterData::pd_Device"]
11657        [::core::mem::offset_of!(PrinterData, pd_Device) - 0usize];
11658    ["Offset of field: PrinterData::pd_Unit"]
11659        [::core::mem::offset_of!(PrinterData, pd_Unit) - 52usize];
11660    ["Offset of field: PrinterData::pd_PrinterSegment"]
11661        [::core::mem::offset_of!(PrinterData, pd_PrinterSegment) - 86usize];
11662    ["Offset of field: PrinterData::pd_PrinterType"]
11663        [::core::mem::offset_of!(PrinterData, pd_PrinterType) - 90usize];
11664    ["Offset of field: PrinterData::pd_SegmentData"]
11665        [::core::mem::offset_of!(PrinterData, pd_SegmentData) - 92usize];
11666    ["Offset of field: PrinterData::pd_PrintBuf"]
11667        [::core::mem::offset_of!(PrinterData, pd_PrintBuf) - 96usize];
11668    ["Offset of field: PrinterData::pd_PWrite"]
11669        [::core::mem::offset_of!(PrinterData, pd_PWrite) - 100usize];
11670    ["Offset of field: PrinterData::pd_PBothReady"]
11671        [::core::mem::offset_of!(PrinterData, pd_PBothReady) - 104usize];
11672    ["Offset of field: PrinterData::pd_ior0"]
11673        [::core::mem::offset_of!(PrinterData, pd_ior0) - 108usize];
11674    ["Offset of field: PrinterData::pd_ior1"]
11675        [::core::mem::offset_of!(PrinterData, pd_ior1) - 190usize];
11676    ["Offset of field: PrinterData::pd_TIOR"]
11677        [::core::mem::offset_of!(PrinterData, pd_TIOR) - 272usize];
11678    ["Offset of field: PrinterData::pd_IORPort"]
11679        [::core::mem::offset_of!(PrinterData, pd_IORPort) - 312usize];
11680    ["Offset of field: PrinterData::pd_TC"][::core::mem::offset_of!(PrinterData, pd_TC) - 346usize];
11681    ["Offset of field: PrinterData::pd_OldStk"]
11682        [::core::mem::offset_of!(PrinterData, pd_OldStk) - 438usize];
11683    ["Offset of field: PrinterData::pd_Flags"]
11684        [::core::mem::offset_of!(PrinterData, pd_Flags) - 2486usize];
11685    ["Offset of field: PrinterData::pd_pad"]
11686        [::core::mem::offset_of!(PrinterData, pd_pad) - 2487usize];
11687    ["Offset of field: PrinterData::pd_Preferences"]
11688        [::core::mem::offset_of!(PrinterData, pd_Preferences) - 2488usize];
11689    ["Offset of field: PrinterData::pd_PWaitEnabled"]
11690        [::core::mem::offset_of!(PrinterData, pd_PWaitEnabled) - 2720usize];
11691    ["Offset of field: PrinterData::pd_Flags1"]
11692        [::core::mem::offset_of!(PrinterData, pd_Flags1) - 2721usize];
11693    ["Offset of field: PrinterData::pd_Stk"]
11694        [::core::mem::offset_of!(PrinterData, pd_Stk) - 2722usize];
11695    ["Offset of field: PrinterData::pd_PUnit"]
11696        [::core::mem::offset_of!(PrinterData, pd_PUnit) - 6818usize];
11697    ["Offset of field: PrinterData::pd_PRead"]
11698        [::core::mem::offset_of!(PrinterData, pd_PRead) - 6822usize];
11699    ["Offset of field: PrinterData::pd_CallErrHook"]
11700        [::core::mem::offset_of!(PrinterData, pd_CallErrHook) - 6826usize];
11701    ["Offset of field: PrinterData::pd_UnitNumber"]
11702        [::core::mem::offset_of!(PrinterData, pd_UnitNumber) - 6830usize];
11703    ["Offset of field: PrinterData::pd_DriverName"]
11704        [::core::mem::offset_of!(PrinterData, pd_DriverName) - 6834usize];
11705    ["Offset of field: PrinterData::pd_PQuery"]
11706        [::core::mem::offset_of!(PrinterData, pd_PQuery) - 6838usize];
11707};
11708#[repr(C, packed(2))]
11709#[derive(Debug, Copy, Clone)]
11710pub struct PrinterExtendedData {
11711    pub ped_PrinterName: STRPTR,
11712    pub ped_Init: FPTR,
11713    pub ped_Expunge: FPTR,
11714    pub ped_Open: FPTR,
11715    pub ped_Close: FPTR,
11716    pub ped_PrinterClass: UBYTE,
11717    pub ped_ColorClass: UBYTE,
11718    pub ped_MaxColumns: UBYTE,
11719    pub ped_NumCharSets: UBYTE,
11720    pub ped_NumRows: UWORD,
11721    pub ped_MaxXDots: ULONG,
11722    pub ped_MaxYDots: ULONG,
11723    pub ped_XDotsInch: UWORD,
11724    pub ped_YDotsInch: UWORD,
11725    pub ped_Commands: *mut *mut STRPTR,
11726    pub ped_DoSpecial: FPTR,
11727    pub ped_Render: FPTR,
11728    pub ped_TimeoutSecs: LONG,
11729    pub ped_8BitChars: *mut STRPTR,
11730    pub ped_PrintMode: LONG,
11731    pub ped_ConvFunc: FPTR,
11732    pub ped_TagList: *mut TagItem,
11733    pub ped_DoPreferences: FPTR,
11734    pub ped_CallErrHook: FPTR,
11735}
11736#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11737const _: () = {
11738    ["Size of PrinterExtendedData"][::core::mem::size_of::<PrinterExtendedData>() - 78usize];
11739    ["Alignment of PrinterExtendedData"][::core::mem::align_of::<PrinterExtendedData>() - 2usize];
11740    ["Offset of field: PrinterExtendedData::ped_PrinterName"]
11741        [::core::mem::offset_of!(PrinterExtendedData, ped_PrinterName) - 0usize];
11742    ["Offset of field: PrinterExtendedData::ped_Init"]
11743        [::core::mem::offset_of!(PrinterExtendedData, ped_Init) - 4usize];
11744    ["Offset of field: PrinterExtendedData::ped_Expunge"]
11745        [::core::mem::offset_of!(PrinterExtendedData, ped_Expunge) - 8usize];
11746    ["Offset of field: PrinterExtendedData::ped_Open"]
11747        [::core::mem::offset_of!(PrinterExtendedData, ped_Open) - 12usize];
11748    ["Offset of field: PrinterExtendedData::ped_Close"]
11749        [::core::mem::offset_of!(PrinterExtendedData, ped_Close) - 16usize];
11750    ["Offset of field: PrinterExtendedData::ped_PrinterClass"]
11751        [::core::mem::offset_of!(PrinterExtendedData, ped_PrinterClass) - 20usize];
11752    ["Offset of field: PrinterExtendedData::ped_ColorClass"]
11753        [::core::mem::offset_of!(PrinterExtendedData, ped_ColorClass) - 21usize];
11754    ["Offset of field: PrinterExtendedData::ped_MaxColumns"]
11755        [::core::mem::offset_of!(PrinterExtendedData, ped_MaxColumns) - 22usize];
11756    ["Offset of field: PrinterExtendedData::ped_NumCharSets"]
11757        [::core::mem::offset_of!(PrinterExtendedData, ped_NumCharSets) - 23usize];
11758    ["Offset of field: PrinterExtendedData::ped_NumRows"]
11759        [::core::mem::offset_of!(PrinterExtendedData, ped_NumRows) - 24usize];
11760    ["Offset of field: PrinterExtendedData::ped_MaxXDots"]
11761        [::core::mem::offset_of!(PrinterExtendedData, ped_MaxXDots) - 26usize];
11762    ["Offset of field: PrinterExtendedData::ped_MaxYDots"]
11763        [::core::mem::offset_of!(PrinterExtendedData, ped_MaxYDots) - 30usize];
11764    ["Offset of field: PrinterExtendedData::ped_XDotsInch"]
11765        [::core::mem::offset_of!(PrinterExtendedData, ped_XDotsInch) - 34usize];
11766    ["Offset of field: PrinterExtendedData::ped_YDotsInch"]
11767        [::core::mem::offset_of!(PrinterExtendedData, ped_YDotsInch) - 36usize];
11768    ["Offset of field: PrinterExtendedData::ped_Commands"]
11769        [::core::mem::offset_of!(PrinterExtendedData, ped_Commands) - 38usize];
11770    ["Offset of field: PrinterExtendedData::ped_DoSpecial"]
11771        [::core::mem::offset_of!(PrinterExtendedData, ped_DoSpecial) - 42usize];
11772    ["Offset of field: PrinterExtendedData::ped_Render"]
11773        [::core::mem::offset_of!(PrinterExtendedData, ped_Render) - 46usize];
11774    ["Offset of field: PrinterExtendedData::ped_TimeoutSecs"]
11775        [::core::mem::offset_of!(PrinterExtendedData, ped_TimeoutSecs) - 50usize];
11776    ["Offset of field: PrinterExtendedData::ped_8BitChars"]
11777        [::core::mem::offset_of!(PrinterExtendedData, ped_8BitChars) - 54usize];
11778    ["Offset of field: PrinterExtendedData::ped_PrintMode"]
11779        [::core::mem::offset_of!(PrinterExtendedData, ped_PrintMode) - 58usize];
11780    ["Offset of field: PrinterExtendedData::ped_ConvFunc"]
11781        [::core::mem::offset_of!(PrinterExtendedData, ped_ConvFunc) - 62usize];
11782    ["Offset of field: PrinterExtendedData::ped_TagList"]
11783        [::core::mem::offset_of!(PrinterExtendedData, ped_TagList) - 66usize];
11784    ["Offset of field: PrinterExtendedData::ped_DoPreferences"]
11785        [::core::mem::offset_of!(PrinterExtendedData, ped_DoPreferences) - 70usize];
11786    ["Offset of field: PrinterExtendedData::ped_CallErrHook"]
11787        [::core::mem::offset_of!(PrinterExtendedData, ped_CallErrHook) - 74usize];
11788};
11789#[repr(C, packed(2))]
11790#[derive(Debug, Copy, Clone)]
11791pub struct PrinterSegment {
11792    pub ps_NextSegment: ULONG,
11793    pub ps_runAlert: ULONG,
11794    pub ps_Version: UWORD,
11795    pub ps_Revision: UWORD,
11796    pub ps_PED: PrinterExtendedData,
11797}
11798#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11799const _: () = {
11800    ["Size of PrinterSegment"][::core::mem::size_of::<PrinterSegment>() - 90usize];
11801    ["Alignment of PrinterSegment"][::core::mem::align_of::<PrinterSegment>() - 2usize];
11802    ["Offset of field: PrinterSegment::ps_NextSegment"]
11803        [::core::mem::offset_of!(PrinterSegment, ps_NextSegment) - 0usize];
11804    ["Offset of field: PrinterSegment::ps_runAlert"]
11805        [::core::mem::offset_of!(PrinterSegment, ps_runAlert) - 4usize];
11806    ["Offset of field: PrinterSegment::ps_Version"]
11807        [::core::mem::offset_of!(PrinterSegment, ps_Version) - 8usize];
11808    ["Offset of field: PrinterSegment::ps_Revision"]
11809        [::core::mem::offset_of!(PrinterSegment, ps_Revision) - 10usize];
11810    ["Offset of field: PrinterSegment::ps_PED"]
11811        [::core::mem::offset_of!(PrinterSegment, ps_PED) - 12usize];
11812};
11813#[repr(C, packed(2))]
11814#[derive(Debug, Copy, Clone)]
11815pub struct DTSpecialInfo {
11816    pub si_Lock: SignalSemaphore,
11817    pub si_Flags: ULONG,
11818    pub si_TopVert: LONG,
11819    pub si_VisVert: LONG,
11820    pub si_TotVert: LONG,
11821    pub si_OTopVert: LONG,
11822    pub si_VertUnit: LONG,
11823    pub si_TopHoriz: LONG,
11824    pub si_VisHoriz: LONG,
11825    pub si_TotHoriz: LONG,
11826    pub si_OTopHoriz: LONG,
11827    pub si_HorizUnit: LONG,
11828}
11829#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11830const _: () = {
11831    ["Size of DTSpecialInfo"][::core::mem::size_of::<DTSpecialInfo>() - 90usize];
11832    ["Alignment of DTSpecialInfo"][::core::mem::align_of::<DTSpecialInfo>() - 2usize];
11833    ["Offset of field: DTSpecialInfo::si_Lock"]
11834        [::core::mem::offset_of!(DTSpecialInfo, si_Lock) - 0usize];
11835    ["Offset of field: DTSpecialInfo::si_Flags"]
11836        [::core::mem::offset_of!(DTSpecialInfo, si_Flags) - 46usize];
11837    ["Offset of field: DTSpecialInfo::si_TopVert"]
11838        [::core::mem::offset_of!(DTSpecialInfo, si_TopVert) - 50usize];
11839    ["Offset of field: DTSpecialInfo::si_VisVert"]
11840        [::core::mem::offset_of!(DTSpecialInfo, si_VisVert) - 54usize];
11841    ["Offset of field: DTSpecialInfo::si_TotVert"]
11842        [::core::mem::offset_of!(DTSpecialInfo, si_TotVert) - 58usize];
11843    ["Offset of field: DTSpecialInfo::si_OTopVert"]
11844        [::core::mem::offset_of!(DTSpecialInfo, si_OTopVert) - 62usize];
11845    ["Offset of field: DTSpecialInfo::si_VertUnit"]
11846        [::core::mem::offset_of!(DTSpecialInfo, si_VertUnit) - 66usize];
11847    ["Offset of field: DTSpecialInfo::si_TopHoriz"]
11848        [::core::mem::offset_of!(DTSpecialInfo, si_TopHoriz) - 70usize];
11849    ["Offset of field: DTSpecialInfo::si_VisHoriz"]
11850        [::core::mem::offset_of!(DTSpecialInfo, si_VisHoriz) - 74usize];
11851    ["Offset of field: DTSpecialInfo::si_TotHoriz"]
11852        [::core::mem::offset_of!(DTSpecialInfo, si_TotHoriz) - 78usize];
11853    ["Offset of field: DTSpecialInfo::si_OTopHoriz"]
11854        [::core::mem::offset_of!(DTSpecialInfo, si_OTopHoriz) - 82usize];
11855    ["Offset of field: DTSpecialInfo::si_HorizUnit"]
11856        [::core::mem::offset_of!(DTSpecialInfo, si_HorizUnit) - 86usize];
11857};
11858#[repr(C, packed(2))]
11859#[derive(Debug, Copy, Clone)]
11860pub struct DTMethod {
11861    pub dtm_Label: STRPTR,
11862    pub dtm_Command: STRPTR,
11863    pub dtm_Method: ULONG,
11864}
11865#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11866const _: () = {
11867    ["Size of DTMethod"][::core::mem::size_of::<DTMethod>() - 12usize];
11868    ["Alignment of DTMethod"][::core::mem::align_of::<DTMethod>() - 2usize];
11869    ["Offset of field: DTMethod::dtm_Label"][::core::mem::offset_of!(DTMethod, dtm_Label) - 0usize];
11870    ["Offset of field: DTMethod::dtm_Command"]
11871        [::core::mem::offset_of!(DTMethod, dtm_Command) - 4usize];
11872    ["Offset of field: DTMethod::dtm_Method"]
11873        [::core::mem::offset_of!(DTMethod, dtm_Method) - 8usize];
11874};
11875#[repr(C, packed(2))]
11876#[derive(Debug, Copy, Clone)]
11877pub struct FrameInfo {
11878    pub fri_PropertyFlags: ULONG,
11879    pub fri_Resolution: Point,
11880    pub fri_RedBits: UBYTE,
11881    pub fri_GreenBits: UBYTE,
11882    pub fri_BlueBits: UBYTE,
11883    pub fri_Dimensions: FrameInfo__bindgen_ty_1,
11884    pub fri_Screen: *mut Screen,
11885    pub fri_ColorMap: *mut ColorMap,
11886    pub fri_Flags: ULONG,
11887}
11888#[repr(C, packed(2))]
11889#[derive(Debug, Copy, Clone)]
11890pub struct FrameInfo__bindgen_ty_1 {
11891    pub Width: ULONG,
11892    pub Height: ULONG,
11893    pub Depth: ULONG,
11894}
11895#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11896const _: () = {
11897    ["Size of FrameInfo__bindgen_ty_1"]
11898        [::core::mem::size_of::<FrameInfo__bindgen_ty_1>() - 12usize];
11899    ["Alignment of FrameInfo__bindgen_ty_1"]
11900        [::core::mem::align_of::<FrameInfo__bindgen_ty_1>() - 2usize];
11901    ["Offset of field: FrameInfo__bindgen_ty_1::Width"]
11902        [::core::mem::offset_of!(FrameInfo__bindgen_ty_1, Width) - 0usize];
11903    ["Offset of field: FrameInfo__bindgen_ty_1::Height"]
11904        [::core::mem::offset_of!(FrameInfo__bindgen_ty_1, Height) - 4usize];
11905    ["Offset of field: FrameInfo__bindgen_ty_1::Depth"]
11906        [::core::mem::offset_of!(FrameInfo__bindgen_ty_1, Depth) - 8usize];
11907};
11908#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11909const _: () = {
11910    ["Size of FrameInfo"][::core::mem::size_of::<FrameInfo>() - 36usize];
11911    ["Alignment of FrameInfo"][::core::mem::align_of::<FrameInfo>() - 2usize];
11912    ["Offset of field: FrameInfo::fri_PropertyFlags"]
11913        [::core::mem::offset_of!(FrameInfo, fri_PropertyFlags) - 0usize];
11914    ["Offset of field: FrameInfo::fri_Resolution"]
11915        [::core::mem::offset_of!(FrameInfo, fri_Resolution) - 4usize];
11916    ["Offset of field: FrameInfo::fri_RedBits"]
11917        [::core::mem::offset_of!(FrameInfo, fri_RedBits) - 8usize];
11918    ["Offset of field: FrameInfo::fri_GreenBits"]
11919        [::core::mem::offset_of!(FrameInfo, fri_GreenBits) - 9usize];
11920    ["Offset of field: FrameInfo::fri_BlueBits"]
11921        [::core::mem::offset_of!(FrameInfo, fri_BlueBits) - 10usize];
11922    ["Offset of field: FrameInfo::fri_Dimensions"]
11923        [::core::mem::offset_of!(FrameInfo, fri_Dimensions) - 12usize];
11924    ["Offset of field: FrameInfo::fri_Screen"]
11925        [::core::mem::offset_of!(FrameInfo, fri_Screen) - 24usize];
11926    ["Offset of field: FrameInfo::fri_ColorMap"]
11927        [::core::mem::offset_of!(FrameInfo, fri_ColorMap) - 28usize];
11928    ["Offset of field: FrameInfo::fri_Flags"]
11929        [::core::mem::offset_of!(FrameInfo, fri_Flags) - 32usize];
11930};
11931#[repr(C, packed(2))]
11932#[derive(Debug, Copy, Clone)]
11933pub struct dtGeneral {
11934    pub MethodID: ULONG,
11935    pub dtg_GInfo: *mut GadgetInfo,
11936}
11937#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11938const _: () = {
11939    ["Size of dtGeneral"][::core::mem::size_of::<dtGeneral>() - 8usize];
11940    ["Alignment of dtGeneral"][::core::mem::align_of::<dtGeneral>() - 2usize];
11941    ["Offset of field: dtGeneral::MethodID"][::core::mem::offset_of!(dtGeneral, MethodID) - 0usize];
11942    ["Offset of field: dtGeneral::dtg_GInfo"]
11943        [::core::mem::offset_of!(dtGeneral, dtg_GInfo) - 4usize];
11944};
11945#[repr(C, packed(2))]
11946#[derive(Debug, Copy, Clone)]
11947pub struct dtSelect {
11948    pub MethodID: ULONG,
11949    pub dts_GInfo: *mut GadgetInfo,
11950    pub dts_Select: Rectangle,
11951}
11952#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11953const _: () = {
11954    ["Size of dtSelect"][::core::mem::size_of::<dtSelect>() - 16usize];
11955    ["Alignment of dtSelect"][::core::mem::align_of::<dtSelect>() - 2usize];
11956    ["Offset of field: dtSelect::MethodID"][::core::mem::offset_of!(dtSelect, MethodID) - 0usize];
11957    ["Offset of field: dtSelect::dts_GInfo"][::core::mem::offset_of!(dtSelect, dts_GInfo) - 4usize];
11958    ["Offset of field: dtSelect::dts_Select"]
11959        [::core::mem::offset_of!(dtSelect, dts_Select) - 8usize];
11960};
11961#[repr(C, packed(2))]
11962#[derive(Debug, Copy, Clone)]
11963pub struct dtFrameBox {
11964    pub MethodID: ULONG,
11965    pub dtf_GInfo: *mut GadgetInfo,
11966    pub dtf_ContentsInfo: *mut FrameInfo,
11967    pub dtf_FrameInfo: *mut FrameInfo,
11968    pub dtf_SizeFrameInfo: ULONG,
11969    pub dtf_FrameFlags: ULONG,
11970}
11971#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11972const _: () = {
11973    ["Size of dtFrameBox"][::core::mem::size_of::<dtFrameBox>() - 24usize];
11974    ["Alignment of dtFrameBox"][::core::mem::align_of::<dtFrameBox>() - 2usize];
11975    ["Offset of field: dtFrameBox::MethodID"]
11976        [::core::mem::offset_of!(dtFrameBox, MethodID) - 0usize];
11977    ["Offset of field: dtFrameBox::dtf_GInfo"]
11978        [::core::mem::offset_of!(dtFrameBox, dtf_GInfo) - 4usize];
11979    ["Offset of field: dtFrameBox::dtf_ContentsInfo"]
11980        [::core::mem::offset_of!(dtFrameBox, dtf_ContentsInfo) - 8usize];
11981    ["Offset of field: dtFrameBox::dtf_FrameInfo"]
11982        [::core::mem::offset_of!(dtFrameBox, dtf_FrameInfo) - 12usize];
11983    ["Offset of field: dtFrameBox::dtf_SizeFrameInfo"]
11984        [::core::mem::offset_of!(dtFrameBox, dtf_SizeFrameInfo) - 16usize];
11985    ["Offset of field: dtFrameBox::dtf_FrameFlags"]
11986        [::core::mem::offset_of!(dtFrameBox, dtf_FrameFlags) - 20usize];
11987};
11988#[repr(C, packed(2))]
11989#[derive(Debug, Copy, Clone)]
11990pub struct dtGoto {
11991    pub MethodID: ULONG,
11992    pub dtg_GInfo: *mut GadgetInfo,
11993    pub dtg_NodeName: STRPTR,
11994    pub dtg_AttrList: *mut TagItem,
11995}
11996#[allow(clippy::unnecessary_operation, clippy::identity_op)]
11997const _: () = {
11998    ["Size of dtGoto"][::core::mem::size_of::<dtGoto>() - 16usize];
11999    ["Alignment of dtGoto"][::core::mem::align_of::<dtGoto>() - 2usize];
12000    ["Offset of field: dtGoto::MethodID"][::core::mem::offset_of!(dtGoto, MethodID) - 0usize];
12001    ["Offset of field: dtGoto::dtg_GInfo"][::core::mem::offset_of!(dtGoto, dtg_GInfo) - 4usize];
12002    ["Offset of field: dtGoto::dtg_NodeName"]
12003        [::core::mem::offset_of!(dtGoto, dtg_NodeName) - 8usize];
12004    ["Offset of field: dtGoto::dtg_AttrList"]
12005        [::core::mem::offset_of!(dtGoto, dtg_AttrList) - 12usize];
12006};
12007#[repr(C, packed(2))]
12008#[derive(Debug, Copy, Clone)]
12009pub struct dtTrigger {
12010    pub MethodID: ULONG,
12011    pub dtt_GInfo: *mut GadgetInfo,
12012    pub dtt_Function: ULONG,
12013    pub dtt_Data: APTR,
12014}
12015#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12016const _: () = {
12017    ["Size of dtTrigger"][::core::mem::size_of::<dtTrigger>() - 16usize];
12018    ["Alignment of dtTrigger"][::core::mem::align_of::<dtTrigger>() - 2usize];
12019    ["Offset of field: dtTrigger::MethodID"][::core::mem::offset_of!(dtTrigger, MethodID) - 0usize];
12020    ["Offset of field: dtTrigger::dtt_GInfo"]
12021        [::core::mem::offset_of!(dtTrigger, dtt_GInfo) - 4usize];
12022    ["Offset of field: dtTrigger::dtt_Function"]
12023        [::core::mem::offset_of!(dtTrigger, dtt_Function) - 8usize];
12024    ["Offset of field: dtTrigger::dtt_Data"]
12025        [::core::mem::offset_of!(dtTrigger, dtt_Data) - 12usize];
12026};
12027#[repr(C)]
12028#[derive(Copy, Clone)]
12029pub union printerIO {
12030    pub ios: IOStdReq,
12031    pub iodrp: IODRPReq,
12032    pub iopc: IOPrtCmdReq,
12033}
12034#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12035const _: () = {
12036    ["Size of printerIO"][::core::mem::size_of::<printerIO>() - 62usize];
12037    ["Alignment of printerIO"][::core::mem::align_of::<printerIO>() - 2usize];
12038    ["Offset of field: printerIO::ios"][::core::mem::offset_of!(printerIO, ios) - 0usize];
12039    ["Offset of field: printerIO::iodrp"][::core::mem::offset_of!(printerIO, iodrp) - 0usize];
12040    ["Offset of field: printerIO::iopc"][::core::mem::offset_of!(printerIO, iopc) - 0usize];
12041};
12042#[repr(C, packed(2))]
12043#[derive(Debug, Copy, Clone)]
12044pub struct dtPrint {
12045    pub MethodID: ULONG,
12046    pub dtp_GInfo: *mut GadgetInfo,
12047    pub dtp_PIO: *mut printerIO,
12048    pub dtp_AttrList: *mut TagItem,
12049}
12050#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12051const _: () = {
12052    ["Size of dtPrint"][::core::mem::size_of::<dtPrint>() - 16usize];
12053    ["Alignment of dtPrint"][::core::mem::align_of::<dtPrint>() - 2usize];
12054    ["Offset of field: dtPrint::MethodID"][::core::mem::offset_of!(dtPrint, MethodID) - 0usize];
12055    ["Offset of field: dtPrint::dtp_GInfo"][::core::mem::offset_of!(dtPrint, dtp_GInfo) - 4usize];
12056    ["Offset of field: dtPrint::dtp_PIO"][::core::mem::offset_of!(dtPrint, dtp_PIO) - 8usize];
12057    ["Offset of field: dtPrint::dtp_AttrList"]
12058        [::core::mem::offset_of!(dtPrint, dtp_AttrList) - 12usize];
12059};
12060#[repr(C, packed(2))]
12061#[derive(Debug, Copy, Clone)]
12062pub struct dtDraw {
12063    pub MethodID: ULONG,
12064    pub dtd_RPort: *mut RastPort,
12065    pub dtd_Left: LONG,
12066    pub dtd_Top: LONG,
12067    pub dtd_Width: LONG,
12068    pub dtd_Height: LONG,
12069    pub dtd_TopHoriz: LONG,
12070    pub dtd_TopVert: LONG,
12071    pub dtd_AttrList: *mut TagItem,
12072}
12073#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12074const _: () = {
12075    ["Size of dtDraw"][::core::mem::size_of::<dtDraw>() - 36usize];
12076    ["Alignment of dtDraw"][::core::mem::align_of::<dtDraw>() - 2usize];
12077    ["Offset of field: dtDraw::MethodID"][::core::mem::offset_of!(dtDraw, MethodID) - 0usize];
12078    ["Offset of field: dtDraw::dtd_RPort"][::core::mem::offset_of!(dtDraw, dtd_RPort) - 4usize];
12079    ["Offset of field: dtDraw::dtd_Left"][::core::mem::offset_of!(dtDraw, dtd_Left) - 8usize];
12080    ["Offset of field: dtDraw::dtd_Top"][::core::mem::offset_of!(dtDraw, dtd_Top) - 12usize];
12081    ["Offset of field: dtDraw::dtd_Width"][::core::mem::offset_of!(dtDraw, dtd_Width) - 16usize];
12082    ["Offset of field: dtDraw::dtd_Height"][::core::mem::offset_of!(dtDraw, dtd_Height) - 20usize];
12083    ["Offset of field: dtDraw::dtd_TopHoriz"]
12084        [::core::mem::offset_of!(dtDraw, dtd_TopHoriz) - 24usize];
12085    ["Offset of field: dtDraw::dtd_TopVert"]
12086        [::core::mem::offset_of!(dtDraw, dtd_TopVert) - 28usize];
12087    ["Offset of field: dtDraw::dtd_AttrList"]
12088        [::core::mem::offset_of!(dtDraw, dtd_AttrList) - 32usize];
12089};
12090#[repr(C, packed(2))]
12091#[derive(Debug, Copy, Clone)]
12092pub struct dtWrite {
12093    pub MethodID: ULONG,
12094    pub dtw_GInfo: *mut GadgetInfo,
12095    pub dtw_FileHandle: BPTR,
12096    pub dtw_Mode: ULONG,
12097    pub dtw_AttrList: *mut TagItem,
12098}
12099#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12100const _: () = {
12101    ["Size of dtWrite"][::core::mem::size_of::<dtWrite>() - 20usize];
12102    ["Alignment of dtWrite"][::core::mem::align_of::<dtWrite>() - 2usize];
12103    ["Offset of field: dtWrite::MethodID"][::core::mem::offset_of!(dtWrite, MethodID) - 0usize];
12104    ["Offset of field: dtWrite::dtw_GInfo"][::core::mem::offset_of!(dtWrite, dtw_GInfo) - 4usize];
12105    ["Offset of field: dtWrite::dtw_FileHandle"]
12106        [::core::mem::offset_of!(dtWrite, dtw_FileHandle) - 8usize];
12107    ["Offset of field: dtWrite::dtw_Mode"][::core::mem::offset_of!(dtWrite, dtw_Mode) - 12usize];
12108    ["Offset of field: dtWrite::dtw_AttrList"]
12109        [::core::mem::offset_of!(dtWrite, dtw_AttrList) - 16usize];
12110};
12111#[repr(C, packed(2))]
12112#[derive(Debug, Copy, Clone)]
12113pub struct pdtBlitPixelArray {
12114    pub MethodID: ULONG,
12115    pub pbpa_PixelData: APTR,
12116    pub pbpa_PixelFormat: ULONG,
12117    pub pbpa_PixelArrayMod: ULONG,
12118    pub pbpa_Left: ULONG,
12119    pub pbpa_Top: ULONG,
12120    pub pbpa_Width: ULONG,
12121    pub pbpa_Height: ULONG,
12122}
12123#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12124const _: () = {
12125    ["Size of pdtBlitPixelArray"][::core::mem::size_of::<pdtBlitPixelArray>() - 32usize];
12126    ["Alignment of pdtBlitPixelArray"][::core::mem::align_of::<pdtBlitPixelArray>() - 2usize];
12127    ["Offset of field: pdtBlitPixelArray::MethodID"]
12128        [::core::mem::offset_of!(pdtBlitPixelArray, MethodID) - 0usize];
12129    ["Offset of field: pdtBlitPixelArray::pbpa_PixelData"]
12130        [::core::mem::offset_of!(pdtBlitPixelArray, pbpa_PixelData) - 4usize];
12131    ["Offset of field: pdtBlitPixelArray::pbpa_PixelFormat"]
12132        [::core::mem::offset_of!(pdtBlitPixelArray, pbpa_PixelFormat) - 8usize];
12133    ["Offset of field: pdtBlitPixelArray::pbpa_PixelArrayMod"]
12134        [::core::mem::offset_of!(pdtBlitPixelArray, pbpa_PixelArrayMod) - 12usize];
12135    ["Offset of field: pdtBlitPixelArray::pbpa_Left"]
12136        [::core::mem::offset_of!(pdtBlitPixelArray, pbpa_Left) - 16usize];
12137    ["Offset of field: pdtBlitPixelArray::pbpa_Top"]
12138        [::core::mem::offset_of!(pdtBlitPixelArray, pbpa_Top) - 20usize];
12139    ["Offset of field: pdtBlitPixelArray::pbpa_Width"]
12140        [::core::mem::offset_of!(pdtBlitPixelArray, pbpa_Width) - 24usize];
12141    ["Offset of field: pdtBlitPixelArray::pbpa_Height"]
12142        [::core::mem::offset_of!(pdtBlitPixelArray, pbpa_Height) - 28usize];
12143};
12144#[repr(C, packed(2))]
12145#[derive(Debug, Copy, Clone)]
12146pub struct pdtScale {
12147    pub MethodID: ULONG,
12148    pub ps_NewWidth: ULONG,
12149    pub ps_NewHeight: ULONG,
12150    pub ps_Flags: ULONG,
12151}
12152#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12153const _: () = {
12154    ["Size of pdtScale"][::core::mem::size_of::<pdtScale>() - 16usize];
12155    ["Alignment of pdtScale"][::core::mem::align_of::<pdtScale>() - 2usize];
12156    ["Offset of field: pdtScale::MethodID"][::core::mem::offset_of!(pdtScale, MethodID) - 0usize];
12157    ["Offset of field: pdtScale::ps_NewWidth"]
12158        [::core::mem::offset_of!(pdtScale, ps_NewWidth) - 4usize];
12159    ["Offset of field: pdtScale::ps_NewHeight"]
12160        [::core::mem::offset_of!(pdtScale, ps_NewHeight) - 8usize];
12161    ["Offset of field: pdtScale::ps_Flags"][::core::mem::offset_of!(pdtScale, ps_Flags) - 12usize];
12162};
12163#[repr(C, packed(2))]
12164#[derive(Debug, Copy, Clone)]
12165pub struct pdtObtainPixelArray {
12166    pub MethodID: ULONG,
12167    pub popa_PixelArray: *mut pdtBlitPixelArray,
12168    pub popa_Flags: ULONG,
12169}
12170#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12171const _: () = {
12172    ["Size of pdtObtainPixelArray"][::core::mem::size_of::<pdtObtainPixelArray>() - 12usize];
12173    ["Alignment of pdtObtainPixelArray"][::core::mem::align_of::<pdtObtainPixelArray>() - 2usize];
12174    ["Offset of field: pdtObtainPixelArray::MethodID"]
12175        [::core::mem::offset_of!(pdtObtainPixelArray, MethodID) - 0usize];
12176    ["Offset of field: pdtObtainPixelArray::popa_PixelArray"]
12177        [::core::mem::offset_of!(pdtObtainPixelArray, popa_PixelArray) - 4usize];
12178    ["Offset of field: pdtObtainPixelArray::popa_Flags"]
12179        [::core::mem::offset_of!(pdtObtainPixelArray, popa_Flags) - 8usize];
12180};
12181#[repr(C)]
12182#[derive(Debug, Copy, Clone)]
12183pub struct BitMapHeader {
12184    pub bmh_Width: UWORD,
12185    pub bmh_Height: UWORD,
12186    pub bmh_Left: WORD,
12187    pub bmh_Top: WORD,
12188    pub bmh_Depth: UBYTE,
12189    pub bmh_Masking: UBYTE,
12190    pub bmh_Compression: UBYTE,
12191    pub bmh_Pad: UBYTE,
12192    pub bmh_Transparent: UWORD,
12193    pub bmh_XAspect: UBYTE,
12194    pub bmh_YAspect: UBYTE,
12195    pub bmh_PageWidth: WORD,
12196    pub bmh_PageHeight: WORD,
12197}
12198#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12199const _: () = {
12200    ["Size of BitMapHeader"][::core::mem::size_of::<BitMapHeader>() - 20usize];
12201    ["Alignment of BitMapHeader"][::core::mem::align_of::<BitMapHeader>() - 2usize];
12202    ["Offset of field: BitMapHeader::bmh_Width"]
12203        [::core::mem::offset_of!(BitMapHeader, bmh_Width) - 0usize];
12204    ["Offset of field: BitMapHeader::bmh_Height"]
12205        [::core::mem::offset_of!(BitMapHeader, bmh_Height) - 2usize];
12206    ["Offset of field: BitMapHeader::bmh_Left"]
12207        [::core::mem::offset_of!(BitMapHeader, bmh_Left) - 4usize];
12208    ["Offset of field: BitMapHeader::bmh_Top"]
12209        [::core::mem::offset_of!(BitMapHeader, bmh_Top) - 6usize];
12210    ["Offset of field: BitMapHeader::bmh_Depth"]
12211        [::core::mem::offset_of!(BitMapHeader, bmh_Depth) - 8usize];
12212    ["Offset of field: BitMapHeader::bmh_Masking"]
12213        [::core::mem::offset_of!(BitMapHeader, bmh_Masking) - 9usize];
12214    ["Offset of field: BitMapHeader::bmh_Compression"]
12215        [::core::mem::offset_of!(BitMapHeader, bmh_Compression) - 10usize];
12216    ["Offset of field: BitMapHeader::bmh_Pad"]
12217        [::core::mem::offset_of!(BitMapHeader, bmh_Pad) - 11usize];
12218    ["Offset of field: BitMapHeader::bmh_Transparent"]
12219        [::core::mem::offset_of!(BitMapHeader, bmh_Transparent) - 12usize];
12220    ["Offset of field: BitMapHeader::bmh_XAspect"]
12221        [::core::mem::offset_of!(BitMapHeader, bmh_XAspect) - 14usize];
12222    ["Offset of field: BitMapHeader::bmh_YAspect"]
12223        [::core::mem::offset_of!(BitMapHeader, bmh_YAspect) - 15usize];
12224    ["Offset of field: BitMapHeader::bmh_PageWidth"]
12225        [::core::mem::offset_of!(BitMapHeader, bmh_PageWidth) - 16usize];
12226    ["Offset of field: BitMapHeader::bmh_PageHeight"]
12227        [::core::mem::offset_of!(BitMapHeader, bmh_PageHeight) - 18usize];
12228};
12229#[repr(C)]
12230#[derive(Debug, Copy, Clone)]
12231#[repr(align(2))]
12232pub struct ColorRegister {
12233    pub red: UBYTE,
12234    pub green: UBYTE,
12235    pub blue: UBYTE,
12236}
12237#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12238const _: () = {
12239    ["Size of ColorRegister"][::core::mem::size_of::<ColorRegister>() - 4usize];
12240    ["Alignment of ColorRegister"][::core::mem::align_of::<ColorRegister>() - 2usize];
12241    ["Offset of field: ColorRegister::red"][::core::mem::offset_of!(ColorRegister, red) - 0usize];
12242    ["Offset of field: ColorRegister::green"]
12243        [::core::mem::offset_of!(ColorRegister, green) - 1usize];
12244    ["Offset of field: ColorRegister::blue"][::core::mem::offset_of!(ColorRegister, blue) - 2usize];
12245};
12246#[repr(C, packed(2))]
12247#[derive(Debug, Copy, Clone)]
12248pub struct VoiceHeader {
12249    pub vh_OneShotHiSamples: ULONG,
12250    pub vh_RepeatHiSamples: ULONG,
12251    pub vh_SamplesPerHiCycle: ULONG,
12252    pub vh_SamplesPerSec: UWORD,
12253    pub vh_Octaves: UBYTE,
12254    pub vh_Compression: UBYTE,
12255    pub vh_Volume: ULONG,
12256}
12257#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12258const _: () = {
12259    ["Size of VoiceHeader"][::core::mem::size_of::<VoiceHeader>() - 20usize];
12260    ["Alignment of VoiceHeader"][::core::mem::align_of::<VoiceHeader>() - 2usize];
12261    ["Offset of field: VoiceHeader::vh_OneShotHiSamples"]
12262        [::core::mem::offset_of!(VoiceHeader, vh_OneShotHiSamples) - 0usize];
12263    ["Offset of field: VoiceHeader::vh_RepeatHiSamples"]
12264        [::core::mem::offset_of!(VoiceHeader, vh_RepeatHiSamples) - 4usize];
12265    ["Offset of field: VoiceHeader::vh_SamplesPerHiCycle"]
12266        [::core::mem::offset_of!(VoiceHeader, vh_SamplesPerHiCycle) - 8usize];
12267    ["Offset of field: VoiceHeader::vh_SamplesPerSec"]
12268        [::core::mem::offset_of!(VoiceHeader, vh_SamplesPerSec) - 12usize];
12269    ["Offset of field: VoiceHeader::vh_Octaves"]
12270        [::core::mem::offset_of!(VoiceHeader, vh_Octaves) - 14usize];
12271    ["Offset of field: VoiceHeader::vh_Compression"]
12272        [::core::mem::offset_of!(VoiceHeader, vh_Compression) - 15usize];
12273    ["Offset of field: VoiceHeader::vh_Volume"]
12274        [::core::mem::offset_of!(VoiceHeader, vh_Volume) - 16usize];
12275};
12276pub type SampleType = ::core::ffi::c_long;
12277#[repr(C, packed(2))]
12278#[derive(Debug, Copy, Clone)]
12279pub struct AnimHeader {
12280    pub ah_Operation: UBYTE,
12281    pub ah_Mask: UBYTE,
12282    pub ah_Width: UWORD,
12283    pub ah_Height: UWORD,
12284    pub ah_Left: WORD,
12285    pub ah_Top: WORD,
12286    pub ah_AbsTime: ULONG,
12287    pub ah_RelTime: ULONG,
12288    pub ah_Interleave: UBYTE,
12289    pub ah_Pad0: UBYTE,
12290    pub ah_Flags: ULONG,
12291    pub ah_Pad: [UBYTE; 16usize],
12292}
12293#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12294const _: () = {
12295    ["Size of AnimHeader"][::core::mem::size_of::<AnimHeader>() - 40usize];
12296    ["Alignment of AnimHeader"][::core::mem::align_of::<AnimHeader>() - 2usize];
12297    ["Offset of field: AnimHeader::ah_Operation"]
12298        [::core::mem::offset_of!(AnimHeader, ah_Operation) - 0usize];
12299    ["Offset of field: AnimHeader::ah_Mask"][::core::mem::offset_of!(AnimHeader, ah_Mask) - 1usize];
12300    ["Offset of field: AnimHeader::ah_Width"]
12301        [::core::mem::offset_of!(AnimHeader, ah_Width) - 2usize];
12302    ["Offset of field: AnimHeader::ah_Height"]
12303        [::core::mem::offset_of!(AnimHeader, ah_Height) - 4usize];
12304    ["Offset of field: AnimHeader::ah_Left"][::core::mem::offset_of!(AnimHeader, ah_Left) - 6usize];
12305    ["Offset of field: AnimHeader::ah_Top"][::core::mem::offset_of!(AnimHeader, ah_Top) - 8usize];
12306    ["Offset of field: AnimHeader::ah_AbsTime"]
12307        [::core::mem::offset_of!(AnimHeader, ah_AbsTime) - 10usize];
12308    ["Offset of field: AnimHeader::ah_RelTime"]
12309        [::core::mem::offset_of!(AnimHeader, ah_RelTime) - 14usize];
12310    ["Offset of field: AnimHeader::ah_Interleave"]
12311        [::core::mem::offset_of!(AnimHeader, ah_Interleave) - 18usize];
12312    ["Offset of field: AnimHeader::ah_Pad0"]
12313        [::core::mem::offset_of!(AnimHeader, ah_Pad0) - 19usize];
12314    ["Offset of field: AnimHeader::ah_Flags"]
12315        [::core::mem::offset_of!(AnimHeader, ah_Flags) - 20usize];
12316    ["Offset of field: AnimHeader::ah_Pad"][::core::mem::offset_of!(AnimHeader, ah_Pad) - 24usize];
12317};
12318#[repr(C, packed(2))]
12319#[derive(Debug, Copy, Clone)]
12320pub struct adtFrame {
12321    pub MethodID: ULONG,
12322    pub alf_TimeStamp: ULONG,
12323    pub alf_Frame: ULONG,
12324    pub alf_Duration: ULONG,
12325    pub alf_BitMap: *mut BitMap,
12326    pub alf_CMap: *mut ColorMap,
12327    pub alf_Sample: *mut BYTE,
12328    pub alf_SampleLength: ULONG,
12329    pub alf_Period: ULONG,
12330    pub alf_UserData: APTR,
12331}
12332#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12333const _: () = {
12334    ["Size of adtFrame"][::core::mem::size_of::<adtFrame>() - 40usize];
12335    ["Alignment of adtFrame"][::core::mem::align_of::<adtFrame>() - 2usize];
12336    ["Offset of field: adtFrame::MethodID"][::core::mem::offset_of!(adtFrame, MethodID) - 0usize];
12337    ["Offset of field: adtFrame::alf_TimeStamp"]
12338        [::core::mem::offset_of!(adtFrame, alf_TimeStamp) - 4usize];
12339    ["Offset of field: adtFrame::alf_Frame"][::core::mem::offset_of!(adtFrame, alf_Frame) - 8usize];
12340    ["Offset of field: adtFrame::alf_Duration"]
12341        [::core::mem::offset_of!(adtFrame, alf_Duration) - 12usize];
12342    ["Offset of field: adtFrame::alf_BitMap"]
12343        [::core::mem::offset_of!(adtFrame, alf_BitMap) - 16usize];
12344    ["Offset of field: adtFrame::alf_CMap"][::core::mem::offset_of!(adtFrame, alf_CMap) - 20usize];
12345    ["Offset of field: adtFrame::alf_Sample"]
12346        [::core::mem::offset_of!(adtFrame, alf_Sample) - 24usize];
12347    ["Offset of field: adtFrame::alf_SampleLength"]
12348        [::core::mem::offset_of!(adtFrame, alf_SampleLength) - 28usize];
12349    ["Offset of field: adtFrame::alf_Period"]
12350        [::core::mem::offset_of!(adtFrame, alf_Period) - 32usize];
12351    ["Offset of field: adtFrame::alf_UserData"]
12352        [::core::mem::offset_of!(adtFrame, alf_UserData) - 36usize];
12353};
12354#[repr(C, packed(2))]
12355#[derive(Debug, Copy, Clone)]
12356pub struct adtNewFormatFrame {
12357    pub MethodID: ULONG,
12358    pub alf_TimeStamp: ULONG,
12359    pub alf_Frame: ULONG,
12360    pub alf_Duration: ULONG,
12361    pub alf_BitMap: *mut BitMap,
12362    pub alf_CMap: *mut ColorMap,
12363    pub alf_Sample: *mut BYTE,
12364    pub alf_SampleLength: ULONG,
12365    pub alf_Period: ULONG,
12366    pub alf_UserData: APTR,
12367    pub alf_Size: ULONG,
12368    pub alf_LeftSample: *mut BYTE,
12369    pub alf_RightSample: *mut BYTE,
12370    pub alf_SamplesPerSec: ULONG,
12371}
12372#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12373const _: () = {
12374    ["Size of adtNewFormatFrame"][::core::mem::size_of::<adtNewFormatFrame>() - 56usize];
12375    ["Alignment of adtNewFormatFrame"][::core::mem::align_of::<adtNewFormatFrame>() - 2usize];
12376    ["Offset of field: adtNewFormatFrame::MethodID"]
12377        [::core::mem::offset_of!(adtNewFormatFrame, MethodID) - 0usize];
12378    ["Offset of field: adtNewFormatFrame::alf_TimeStamp"]
12379        [::core::mem::offset_of!(adtNewFormatFrame, alf_TimeStamp) - 4usize];
12380    ["Offset of field: adtNewFormatFrame::alf_Frame"]
12381        [::core::mem::offset_of!(adtNewFormatFrame, alf_Frame) - 8usize];
12382    ["Offset of field: adtNewFormatFrame::alf_Duration"]
12383        [::core::mem::offset_of!(adtNewFormatFrame, alf_Duration) - 12usize];
12384    ["Offset of field: adtNewFormatFrame::alf_BitMap"]
12385        [::core::mem::offset_of!(adtNewFormatFrame, alf_BitMap) - 16usize];
12386    ["Offset of field: adtNewFormatFrame::alf_CMap"]
12387        [::core::mem::offset_of!(adtNewFormatFrame, alf_CMap) - 20usize];
12388    ["Offset of field: adtNewFormatFrame::alf_Sample"]
12389        [::core::mem::offset_of!(adtNewFormatFrame, alf_Sample) - 24usize];
12390    ["Offset of field: adtNewFormatFrame::alf_SampleLength"]
12391        [::core::mem::offset_of!(adtNewFormatFrame, alf_SampleLength) - 28usize];
12392    ["Offset of field: adtNewFormatFrame::alf_Period"]
12393        [::core::mem::offset_of!(adtNewFormatFrame, alf_Period) - 32usize];
12394    ["Offset of field: adtNewFormatFrame::alf_UserData"]
12395        [::core::mem::offset_of!(adtNewFormatFrame, alf_UserData) - 36usize];
12396    ["Offset of field: adtNewFormatFrame::alf_Size"]
12397        [::core::mem::offset_of!(adtNewFormatFrame, alf_Size) - 40usize];
12398    ["Offset of field: adtNewFormatFrame::alf_LeftSample"]
12399        [::core::mem::offset_of!(adtNewFormatFrame, alf_LeftSample) - 44usize];
12400    ["Offset of field: adtNewFormatFrame::alf_RightSample"]
12401        [::core::mem::offset_of!(adtNewFormatFrame, alf_RightSample) - 48usize];
12402    ["Offset of field: adtNewFormatFrame::alf_SamplesPerSec"]
12403        [::core::mem::offset_of!(adtNewFormatFrame, alf_SamplesPerSec) - 52usize];
12404};
12405#[repr(C, packed(2))]
12406#[derive(Debug, Copy, Clone)]
12407pub struct adtStart {
12408    pub MethodID: ULONG,
12409    pub asa_Frame: ULONG,
12410}
12411#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12412const _: () = {
12413    ["Size of adtStart"][::core::mem::size_of::<adtStart>() - 8usize];
12414    ["Alignment of adtStart"][::core::mem::align_of::<adtStart>() - 2usize];
12415    ["Offset of field: adtStart::MethodID"][::core::mem::offset_of!(adtStart, MethodID) - 0usize];
12416    ["Offset of field: adtStart::asa_Frame"][::core::mem::offset_of!(adtStart, asa_Frame) - 4usize];
12417};
12418#[repr(C, packed(2))]
12419#[derive(Debug, Copy, Clone)]
12420pub struct Line {
12421    pub ln_Link: MinNode,
12422    pub ln_Text: STRPTR,
12423    pub ln_TextLen: ULONG,
12424    pub ln_XOffset: UWORD,
12425    pub ln_YOffset: UWORD,
12426    pub ln_Width: UWORD,
12427    pub ln_Height: UWORD,
12428    pub ln_Flags: UWORD,
12429    pub ln_FgPen: BYTE,
12430    pub ln_BgPen: BYTE,
12431    pub ln_Style: ULONG,
12432    pub ln_Data: APTR,
12433}
12434#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12435const _: () = {
12436    ["Size of Line"][::core::mem::size_of::<Line>() - 36usize];
12437    ["Alignment of Line"][::core::mem::align_of::<Line>() - 2usize];
12438    ["Offset of field: Line::ln_Link"][::core::mem::offset_of!(Line, ln_Link) - 0usize];
12439    ["Offset of field: Line::ln_Text"][::core::mem::offset_of!(Line, ln_Text) - 8usize];
12440    ["Offset of field: Line::ln_TextLen"][::core::mem::offset_of!(Line, ln_TextLen) - 12usize];
12441    ["Offset of field: Line::ln_XOffset"][::core::mem::offset_of!(Line, ln_XOffset) - 16usize];
12442    ["Offset of field: Line::ln_YOffset"][::core::mem::offset_of!(Line, ln_YOffset) - 18usize];
12443    ["Offset of field: Line::ln_Width"][::core::mem::offset_of!(Line, ln_Width) - 20usize];
12444    ["Offset of field: Line::ln_Height"][::core::mem::offset_of!(Line, ln_Height) - 22usize];
12445    ["Offset of field: Line::ln_Flags"][::core::mem::offset_of!(Line, ln_Flags) - 24usize];
12446    ["Offset of field: Line::ln_FgPen"][::core::mem::offset_of!(Line, ln_FgPen) - 26usize];
12447    ["Offset of field: Line::ln_BgPen"][::core::mem::offset_of!(Line, ln_BgPen) - 27usize];
12448    ["Offset of field: Line::ln_Style"][::core::mem::offset_of!(Line, ln_Style) - 28usize];
12449    ["Offset of field: Line::ln_Data"][::core::mem::offset_of!(Line, ln_Data) - 32usize];
12450};
12451#[repr(C, packed(2))]
12452#[derive(Debug, Copy, Clone)]
12453pub struct IOAudio {
12454    pub ioa_Request: IORequest,
12455    pub ioa_AllocKey: WORD,
12456    pub ioa_Data: *mut UBYTE,
12457    pub ioa_Length: ULONG,
12458    pub ioa_Period: UWORD,
12459    pub ioa_Volume: UWORD,
12460    pub ioa_Cycles: UWORD,
12461    pub ioa_WriteMsg: Message,
12462}
12463#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12464const _: () = {
12465    ["Size of IOAudio"][::core::mem::size_of::<IOAudio>() - 68usize];
12466    ["Alignment of IOAudio"][::core::mem::align_of::<IOAudio>() - 2usize];
12467    ["Offset of field: IOAudio::ioa_Request"]
12468        [::core::mem::offset_of!(IOAudio, ioa_Request) - 0usize];
12469    ["Offset of field: IOAudio::ioa_AllocKey"]
12470        [::core::mem::offset_of!(IOAudio, ioa_AllocKey) - 32usize];
12471    ["Offset of field: IOAudio::ioa_Data"][::core::mem::offset_of!(IOAudio, ioa_Data) - 34usize];
12472    ["Offset of field: IOAudio::ioa_Length"]
12473        [::core::mem::offset_of!(IOAudio, ioa_Length) - 38usize];
12474    ["Offset of field: IOAudio::ioa_Period"]
12475        [::core::mem::offset_of!(IOAudio, ioa_Period) - 42usize];
12476    ["Offset of field: IOAudio::ioa_Volume"]
12477        [::core::mem::offset_of!(IOAudio, ioa_Volume) - 44usize];
12478    ["Offset of field: IOAudio::ioa_Cycles"]
12479        [::core::mem::offset_of!(IOAudio, ioa_Cycles) - 46usize];
12480    ["Offset of field: IOAudio::ioa_WriteMsg"]
12481        [::core::mem::offset_of!(IOAudio, ioa_WriteMsg) - 48usize];
12482};
12483#[repr(C, packed(2))]
12484#[derive(Debug, Copy, Clone)]
12485pub struct BootBlock {
12486    pub bb_id: [UBYTE; 4usize],
12487    pub bb_chksum: LONG,
12488    pub bb_dosblock: LONG,
12489}
12490#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12491const _: () = {
12492    ["Size of BootBlock"][::core::mem::size_of::<BootBlock>() - 12usize];
12493    ["Alignment of BootBlock"][::core::mem::align_of::<BootBlock>() - 2usize];
12494    ["Offset of field: BootBlock::bb_id"][::core::mem::offset_of!(BootBlock, bb_id) - 0usize];
12495    ["Offset of field: BootBlock::bb_chksum"]
12496        [::core::mem::offset_of!(BootBlock, bb_chksum) - 4usize];
12497    ["Offset of field: BootBlock::bb_dosblock"]
12498        [::core::mem::offset_of!(BootBlock, bb_dosblock) - 8usize];
12499};
12500#[repr(C)]
12501#[derive(Debug, Copy, Clone)]
12502pub struct CDInfo {
12503    pub PlaySpeed: UWORD,
12504    pub ReadSpeed: UWORD,
12505    pub ReadXLSpeed: UWORD,
12506    pub SectorSize: UWORD,
12507    pub XLECC: UWORD,
12508    pub EjectReset: UWORD,
12509    pub Reserved1: [UWORD; 4usize],
12510    pub MaxSpeed: UWORD,
12511    pub AudioPrecision: UWORD,
12512    pub Status: UWORD,
12513    pub Reserved2: [UWORD; 4usize],
12514}
12515#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12516const _: () = {
12517    ["Size of CDInfo"][::core::mem::size_of::<CDInfo>() - 34usize];
12518    ["Alignment of CDInfo"][::core::mem::align_of::<CDInfo>() - 2usize];
12519    ["Offset of field: CDInfo::PlaySpeed"][::core::mem::offset_of!(CDInfo, PlaySpeed) - 0usize];
12520    ["Offset of field: CDInfo::ReadSpeed"][::core::mem::offset_of!(CDInfo, ReadSpeed) - 2usize];
12521    ["Offset of field: CDInfo::ReadXLSpeed"][::core::mem::offset_of!(CDInfo, ReadXLSpeed) - 4usize];
12522    ["Offset of field: CDInfo::SectorSize"][::core::mem::offset_of!(CDInfo, SectorSize) - 6usize];
12523    ["Offset of field: CDInfo::XLECC"][::core::mem::offset_of!(CDInfo, XLECC) - 8usize];
12524    ["Offset of field: CDInfo::EjectReset"][::core::mem::offset_of!(CDInfo, EjectReset) - 10usize];
12525    ["Offset of field: CDInfo::Reserved1"][::core::mem::offset_of!(CDInfo, Reserved1) - 12usize];
12526    ["Offset of field: CDInfo::MaxSpeed"][::core::mem::offset_of!(CDInfo, MaxSpeed) - 20usize];
12527    ["Offset of field: CDInfo::AudioPrecision"]
12528        [::core::mem::offset_of!(CDInfo, AudioPrecision) - 22usize];
12529    ["Offset of field: CDInfo::Status"][::core::mem::offset_of!(CDInfo, Status) - 24usize];
12530    ["Offset of field: CDInfo::Reserved2"][::core::mem::offset_of!(CDInfo, Reserved2) - 26usize];
12531};
12532#[repr(C)]
12533#[derive(Debug, Copy, Clone)]
12534pub struct RMSF {
12535    pub Reserved: UBYTE,
12536    pub Minute: UBYTE,
12537    pub Second: UBYTE,
12538    pub Frame: UBYTE,
12539}
12540#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12541const _: () = {
12542    ["Size of RMSF"][::core::mem::size_of::<RMSF>() - 4usize];
12543    ["Alignment of RMSF"][::core::mem::align_of::<RMSF>() - 1usize];
12544    ["Offset of field: RMSF::Reserved"][::core::mem::offset_of!(RMSF, Reserved) - 0usize];
12545    ["Offset of field: RMSF::Minute"][::core::mem::offset_of!(RMSF, Minute) - 1usize];
12546    ["Offset of field: RMSF::Second"][::core::mem::offset_of!(RMSF, Second) - 2usize];
12547    ["Offset of field: RMSF::Frame"][::core::mem::offset_of!(RMSF, Frame) - 3usize];
12548};
12549#[repr(C, packed(2))]
12550#[derive(Copy, Clone)]
12551pub union LSNMSF {
12552    pub MSF: RMSF,
12553    pub LSN: ULONG,
12554}
12555#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12556const _: () = {
12557    ["Size of LSNMSF"][::core::mem::size_of::<LSNMSF>() - 4usize];
12558    ["Alignment of LSNMSF"][::core::mem::align_of::<LSNMSF>() - 2usize];
12559    ["Offset of field: LSNMSF::MSF"][::core::mem::offset_of!(LSNMSF, MSF) - 0usize];
12560    ["Offset of field: LSNMSF::LSN"][::core::mem::offset_of!(LSNMSF, LSN) - 0usize];
12561};
12562#[repr(C, packed(2))]
12563#[derive(Debug, Copy, Clone)]
12564pub struct CDXL {
12565    pub Node: MinNode,
12566    pub Buffer: *mut BYTE,
12567    pub Length: LONG,
12568    pub Actual: LONG,
12569    pub IntData: APTR,
12570    pub IntCode: FPTR,
12571}
12572#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12573const _: () = {
12574    ["Size of CDXL"][::core::mem::size_of::<CDXL>() - 28usize];
12575    ["Alignment of CDXL"][::core::mem::align_of::<CDXL>() - 2usize];
12576    ["Offset of field: CDXL::Node"][::core::mem::offset_of!(CDXL, Node) - 0usize];
12577    ["Offset of field: CDXL::Buffer"][::core::mem::offset_of!(CDXL, Buffer) - 8usize];
12578    ["Offset of field: CDXL::Length"][::core::mem::offset_of!(CDXL, Length) - 12usize];
12579    ["Offset of field: CDXL::Actual"][::core::mem::offset_of!(CDXL, Actual) - 16usize];
12580    ["Offset of field: CDXL::IntData"][::core::mem::offset_of!(CDXL, IntData) - 20usize];
12581    ["Offset of field: CDXL::IntCode"][::core::mem::offset_of!(CDXL, IntCode) - 24usize];
12582};
12583#[repr(C)]
12584#[derive(Copy, Clone)]
12585pub struct TOCSummary {
12586    pub FirstTrack: UBYTE,
12587    pub LastTrack: UBYTE,
12588    pub LeadOut: LSNMSF,
12589}
12590#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12591const _: () = {
12592    ["Size of TOCSummary"][::core::mem::size_of::<TOCSummary>() - 6usize];
12593    ["Alignment of TOCSummary"][::core::mem::align_of::<TOCSummary>() - 2usize];
12594    ["Offset of field: TOCSummary::FirstTrack"]
12595        [::core::mem::offset_of!(TOCSummary, FirstTrack) - 0usize];
12596    ["Offset of field: TOCSummary::LastTrack"]
12597        [::core::mem::offset_of!(TOCSummary, LastTrack) - 1usize];
12598    ["Offset of field: TOCSummary::LeadOut"][::core::mem::offset_of!(TOCSummary, LeadOut) - 2usize];
12599};
12600#[repr(C)]
12601#[derive(Copy, Clone)]
12602pub struct TOCEntry {
12603    pub CtlAdr: UBYTE,
12604    pub Track: UBYTE,
12605    pub Position: LSNMSF,
12606}
12607#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12608const _: () = {
12609    ["Size of TOCEntry"][::core::mem::size_of::<TOCEntry>() - 6usize];
12610    ["Alignment of TOCEntry"][::core::mem::align_of::<TOCEntry>() - 2usize];
12611    ["Offset of field: TOCEntry::CtlAdr"][::core::mem::offset_of!(TOCEntry, CtlAdr) - 0usize];
12612    ["Offset of field: TOCEntry::Track"][::core::mem::offset_of!(TOCEntry, Track) - 1usize];
12613    ["Offset of field: TOCEntry::Position"][::core::mem::offset_of!(TOCEntry, Position) - 2usize];
12614};
12615#[repr(C)]
12616#[derive(Copy, Clone)]
12617pub union CDTOC {
12618    pub Summary: TOCSummary,
12619    pub Entry: TOCEntry,
12620}
12621#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12622const _: () = {
12623    ["Size of CDTOC"][::core::mem::size_of::<CDTOC>() - 6usize];
12624    ["Alignment of CDTOC"][::core::mem::align_of::<CDTOC>() - 2usize];
12625    ["Offset of field: CDTOC::Summary"][::core::mem::offset_of!(CDTOC, Summary) - 0usize];
12626    ["Offset of field: CDTOC::Entry"][::core::mem::offset_of!(CDTOC, Entry) - 0usize];
12627};
12628#[repr(C)]
12629#[derive(Copy, Clone)]
12630pub struct QCode {
12631    pub CtlAdr: UBYTE,
12632    pub Track: UBYTE,
12633    pub Index: UBYTE,
12634    pub Zero: UBYTE,
12635    pub TrackPosition: LSNMSF,
12636    pub DiskPosition: LSNMSF,
12637}
12638#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12639const _: () = {
12640    ["Size of QCode"][::core::mem::size_of::<QCode>() - 12usize];
12641    ["Alignment of QCode"][::core::mem::align_of::<QCode>() - 2usize];
12642    ["Offset of field: QCode::CtlAdr"][::core::mem::offset_of!(QCode, CtlAdr) - 0usize];
12643    ["Offset of field: QCode::Track"][::core::mem::offset_of!(QCode, Track) - 1usize];
12644    ["Offset of field: QCode::Index"][::core::mem::offset_of!(QCode, Index) - 2usize];
12645    ["Offset of field: QCode::Zero"][::core::mem::offset_of!(QCode, Zero) - 3usize];
12646    ["Offset of field: QCode::TrackPosition"]
12647        [::core::mem::offset_of!(QCode, TrackPosition) - 4usize];
12648    ["Offset of field: QCode::DiskPosition"][::core::mem::offset_of!(QCode, DiskPosition) - 8usize];
12649};
12650#[repr(C, packed(2))]
12651#[derive(Debug, Copy, Clone)]
12652pub struct ConsoleScrollback {
12653    pub cs_ScrollerGadget: APTR,
12654    pub cs_NumLines: UWORD,
12655}
12656#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12657const _: () = {
12658    ["Size of ConsoleScrollback"][::core::mem::size_of::<ConsoleScrollback>() - 6usize];
12659    ["Alignment of ConsoleScrollback"][::core::mem::align_of::<ConsoleScrollback>() - 2usize];
12660    ["Offset of field: ConsoleScrollback::cs_ScrollerGadget"]
12661        [::core::mem::offset_of!(ConsoleScrollback, cs_ScrollerGadget) - 0usize];
12662    ["Offset of field: ConsoleScrollback::cs_NumLines"]
12663        [::core::mem::offset_of!(ConsoleScrollback, cs_NumLines) - 4usize];
12664};
12665#[repr(C)]
12666#[derive(Debug, Copy, Clone)]
12667pub struct KeyMapResource {
12668    pub kr_Node: Node,
12669    pub kr_List: List,
12670}
12671#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12672const _: () = {
12673    ["Size of KeyMapResource"][::core::mem::size_of::<KeyMapResource>() - 28usize];
12674    ["Alignment of KeyMapResource"][::core::mem::align_of::<KeyMapResource>() - 2usize];
12675    ["Offset of field: KeyMapResource::kr_Node"]
12676        [::core::mem::offset_of!(KeyMapResource, kr_Node) - 0usize];
12677    ["Offset of field: KeyMapResource::kr_List"]
12678        [::core::mem::offset_of!(KeyMapResource, kr_List) - 14usize];
12679};
12680#[repr(C, packed(2))]
12681#[derive(Debug, Copy, Clone)]
12682pub struct KeyMap {
12683    pub km_LoKeyMapTypes: *mut UBYTE,
12684    pub km_LoKeyMap: *mut ULONG,
12685    pub km_LoCapsable: *mut UBYTE,
12686    pub km_LoRepeatable: *mut UBYTE,
12687    pub km_HiKeyMapTypes: *mut UBYTE,
12688    pub km_HiKeyMap: *mut ULONG,
12689    pub km_HiCapsable: *mut UBYTE,
12690    pub km_HiRepeatable: *mut UBYTE,
12691}
12692#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12693const _: () = {
12694    ["Size of KeyMap"][::core::mem::size_of::<KeyMap>() - 32usize];
12695    ["Alignment of KeyMap"][::core::mem::align_of::<KeyMap>() - 2usize];
12696    ["Offset of field: KeyMap::km_LoKeyMapTypes"]
12697        [::core::mem::offset_of!(KeyMap, km_LoKeyMapTypes) - 0usize];
12698    ["Offset of field: KeyMap::km_LoKeyMap"][::core::mem::offset_of!(KeyMap, km_LoKeyMap) - 4usize];
12699    ["Offset of field: KeyMap::km_LoCapsable"]
12700        [::core::mem::offset_of!(KeyMap, km_LoCapsable) - 8usize];
12701    ["Offset of field: KeyMap::km_LoRepeatable"]
12702        [::core::mem::offset_of!(KeyMap, km_LoRepeatable) - 12usize];
12703    ["Offset of field: KeyMap::km_HiKeyMapTypes"]
12704        [::core::mem::offset_of!(KeyMap, km_HiKeyMapTypes) - 16usize];
12705    ["Offset of field: KeyMap::km_HiKeyMap"]
12706        [::core::mem::offset_of!(KeyMap, km_HiKeyMap) - 20usize];
12707    ["Offset of field: KeyMap::km_HiCapsable"]
12708        [::core::mem::offset_of!(KeyMap, km_HiCapsable) - 24usize];
12709    ["Offset of field: KeyMap::km_HiRepeatable"]
12710        [::core::mem::offset_of!(KeyMap, km_HiRepeatable) - 28usize];
12711};
12712#[repr(C)]
12713#[derive(Debug, Copy, Clone)]
12714pub struct KeyMapNode {
12715    pub kn_Node: Node,
12716    pub kn_KeyMap: KeyMap,
12717}
12718#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12719const _: () = {
12720    ["Size of KeyMapNode"][::core::mem::size_of::<KeyMapNode>() - 46usize];
12721    ["Alignment of KeyMapNode"][::core::mem::align_of::<KeyMapNode>() - 2usize];
12722    ["Offset of field: KeyMapNode::kn_Node"][::core::mem::offset_of!(KeyMapNode, kn_Node) - 0usize];
12723    ["Offset of field: KeyMapNode::kn_KeyMap"]
12724        [::core::mem::offset_of!(KeyMapNode, kn_KeyMap) - 14usize];
12725};
12726#[repr(C, packed(2))]
12727#[derive(Debug, Copy, Clone)]
12728pub struct ConUnit {
12729    pub cu_MP: MsgPort,
12730    pub cu_Window: *mut Window,
12731    pub cu_XCP: WORD,
12732    pub cu_YCP: WORD,
12733    pub cu_XMax: WORD,
12734    pub cu_YMax: WORD,
12735    pub cu_XRSize: WORD,
12736    pub cu_YRSize: WORD,
12737    pub cu_XROrigin: WORD,
12738    pub cu_YROrigin: WORD,
12739    pub cu_XRExtant: WORD,
12740    pub cu_YRExtant: WORD,
12741    pub cu_XMinShrink: WORD,
12742    pub cu_YMinShrink: WORD,
12743    pub cu_XCCP: WORD,
12744    pub cu_YCCP: WORD,
12745    pub cu_KeyMapStruct: KeyMap,
12746    pub cu_TabStops: [UWORD; 80usize],
12747    pub cu_Mask: BYTE,
12748    pub cu_FgPen: BYTE,
12749    pub cu_BgPen: BYTE,
12750    pub cu_AOLPen: BYTE,
12751    pub cu_DrawMode: BYTE,
12752    pub cu_Obsolete1: BYTE,
12753    pub cu_Obsolete2: APTR,
12754    pub cu_Minterms: [UBYTE; 8usize],
12755    pub cu_Font: *mut TextFont,
12756    pub cu_AlgoStyle: UBYTE,
12757    pub cu_TxFlags: UBYTE,
12758    pub cu_TxHeight: UWORD,
12759    pub cu_TxWidth: UWORD,
12760    pub cu_TxBaseline: UWORD,
12761    pub cu_TxSpacing: WORD,
12762    pub cu_Modes: [UBYTE; 3usize],
12763    pub cu_RawEvents: [UBYTE; 3usize],
12764}
12765#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12766const _: () = {
12767    ["Size of ConUnit"][::core::mem::size_of::<ConUnit>() - 296usize];
12768    ["Alignment of ConUnit"][::core::mem::align_of::<ConUnit>() - 2usize];
12769    ["Offset of field: ConUnit::cu_MP"][::core::mem::offset_of!(ConUnit, cu_MP) - 0usize];
12770    ["Offset of field: ConUnit::cu_Window"][::core::mem::offset_of!(ConUnit, cu_Window) - 34usize];
12771    ["Offset of field: ConUnit::cu_XCP"][::core::mem::offset_of!(ConUnit, cu_XCP) - 38usize];
12772    ["Offset of field: ConUnit::cu_YCP"][::core::mem::offset_of!(ConUnit, cu_YCP) - 40usize];
12773    ["Offset of field: ConUnit::cu_XMax"][::core::mem::offset_of!(ConUnit, cu_XMax) - 42usize];
12774    ["Offset of field: ConUnit::cu_YMax"][::core::mem::offset_of!(ConUnit, cu_YMax) - 44usize];
12775    ["Offset of field: ConUnit::cu_XRSize"][::core::mem::offset_of!(ConUnit, cu_XRSize) - 46usize];
12776    ["Offset of field: ConUnit::cu_YRSize"][::core::mem::offset_of!(ConUnit, cu_YRSize) - 48usize];
12777    ["Offset of field: ConUnit::cu_XROrigin"]
12778        [::core::mem::offset_of!(ConUnit, cu_XROrigin) - 50usize];
12779    ["Offset of field: ConUnit::cu_YROrigin"]
12780        [::core::mem::offset_of!(ConUnit, cu_YROrigin) - 52usize];
12781    ["Offset of field: ConUnit::cu_XRExtant"]
12782        [::core::mem::offset_of!(ConUnit, cu_XRExtant) - 54usize];
12783    ["Offset of field: ConUnit::cu_YRExtant"]
12784        [::core::mem::offset_of!(ConUnit, cu_YRExtant) - 56usize];
12785    ["Offset of field: ConUnit::cu_XMinShrink"]
12786        [::core::mem::offset_of!(ConUnit, cu_XMinShrink) - 58usize];
12787    ["Offset of field: ConUnit::cu_YMinShrink"]
12788        [::core::mem::offset_of!(ConUnit, cu_YMinShrink) - 60usize];
12789    ["Offset of field: ConUnit::cu_XCCP"][::core::mem::offset_of!(ConUnit, cu_XCCP) - 62usize];
12790    ["Offset of field: ConUnit::cu_YCCP"][::core::mem::offset_of!(ConUnit, cu_YCCP) - 64usize];
12791    ["Offset of field: ConUnit::cu_KeyMapStruct"]
12792        [::core::mem::offset_of!(ConUnit, cu_KeyMapStruct) - 66usize];
12793    ["Offset of field: ConUnit::cu_TabStops"]
12794        [::core::mem::offset_of!(ConUnit, cu_TabStops) - 98usize];
12795    ["Offset of field: ConUnit::cu_Mask"][::core::mem::offset_of!(ConUnit, cu_Mask) - 258usize];
12796    ["Offset of field: ConUnit::cu_FgPen"][::core::mem::offset_of!(ConUnit, cu_FgPen) - 259usize];
12797    ["Offset of field: ConUnit::cu_BgPen"][::core::mem::offset_of!(ConUnit, cu_BgPen) - 260usize];
12798    ["Offset of field: ConUnit::cu_AOLPen"][::core::mem::offset_of!(ConUnit, cu_AOLPen) - 261usize];
12799    ["Offset of field: ConUnit::cu_DrawMode"]
12800        [::core::mem::offset_of!(ConUnit, cu_DrawMode) - 262usize];
12801    ["Offset of field: ConUnit::cu_Obsolete1"]
12802        [::core::mem::offset_of!(ConUnit, cu_Obsolete1) - 263usize];
12803    ["Offset of field: ConUnit::cu_Obsolete2"]
12804        [::core::mem::offset_of!(ConUnit, cu_Obsolete2) - 264usize];
12805    ["Offset of field: ConUnit::cu_Minterms"]
12806        [::core::mem::offset_of!(ConUnit, cu_Minterms) - 268usize];
12807    ["Offset of field: ConUnit::cu_Font"][::core::mem::offset_of!(ConUnit, cu_Font) - 276usize];
12808    ["Offset of field: ConUnit::cu_AlgoStyle"]
12809        [::core::mem::offset_of!(ConUnit, cu_AlgoStyle) - 280usize];
12810    ["Offset of field: ConUnit::cu_TxFlags"]
12811        [::core::mem::offset_of!(ConUnit, cu_TxFlags) - 281usize];
12812    ["Offset of field: ConUnit::cu_TxHeight"]
12813        [::core::mem::offset_of!(ConUnit, cu_TxHeight) - 282usize];
12814    ["Offset of field: ConUnit::cu_TxWidth"]
12815        [::core::mem::offset_of!(ConUnit, cu_TxWidth) - 284usize];
12816    ["Offset of field: ConUnit::cu_TxBaseline"]
12817        [::core::mem::offset_of!(ConUnit, cu_TxBaseline) - 286usize];
12818    ["Offset of field: ConUnit::cu_TxSpacing"]
12819        [::core::mem::offset_of!(ConUnit, cu_TxSpacing) - 288usize];
12820    ["Offset of field: ConUnit::cu_Modes"][::core::mem::offset_of!(ConUnit, cu_Modes) - 290usize];
12821    ["Offset of field: ConUnit::cu_RawEvents"]
12822        [::core::mem::offset_of!(ConUnit, cu_RawEvents) - 293usize];
12823};
12824#[repr(C)]
12825#[derive(Debug, Copy, Clone)]
12826pub struct GamePortTrigger {
12827    pub gpt_Keys: UWORD,
12828    pub gpt_Timeout: UWORD,
12829    pub gpt_XDelta: UWORD,
12830    pub gpt_YDelta: UWORD,
12831}
12832#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12833const _: () = {
12834    ["Size of GamePortTrigger"][::core::mem::size_of::<GamePortTrigger>() - 8usize];
12835    ["Alignment of GamePortTrigger"][::core::mem::align_of::<GamePortTrigger>() - 2usize];
12836    ["Offset of field: GamePortTrigger::gpt_Keys"]
12837        [::core::mem::offset_of!(GamePortTrigger, gpt_Keys) - 0usize];
12838    ["Offset of field: GamePortTrigger::gpt_Timeout"]
12839        [::core::mem::offset_of!(GamePortTrigger, gpt_Timeout) - 2usize];
12840    ["Offset of field: GamePortTrigger::gpt_XDelta"]
12841        [::core::mem::offset_of!(GamePortTrigger, gpt_XDelta) - 4usize];
12842    ["Offset of field: GamePortTrigger::gpt_YDelta"]
12843        [::core::mem::offset_of!(GamePortTrigger, gpt_YDelta) - 6usize];
12844};
12845#[repr(C, packed(2))]
12846#[derive(Debug, Copy, Clone)]
12847pub struct RigidDiskBlock {
12848    pub rdb_ID: ULONG,
12849    pub rdb_SummedLongs: ULONG,
12850    pub rdb_ChkSum: LONG,
12851    pub rdb_HostID: ULONG,
12852    pub rdb_BlockBytes: ULONG,
12853    pub rdb_Flags: ULONG,
12854    pub rdb_BadBlockList: ULONG,
12855    pub rdb_PartitionList: ULONG,
12856    pub rdb_FileSysHeaderList: ULONG,
12857    pub rdb_DriveInit: ULONG,
12858    pub rdb_Reserved1: [ULONG; 6usize],
12859    pub rdb_Cylinders: ULONG,
12860    pub rdb_Sectors: ULONG,
12861    pub rdb_Heads: ULONG,
12862    pub rdb_Interleave: ULONG,
12863    pub rdb_Park: ULONG,
12864    pub rdb_Reserved2: [ULONG; 3usize],
12865    pub rdb_WritePreComp: ULONG,
12866    pub rdb_ReducedWrite: ULONG,
12867    pub rdb_StepRate: ULONG,
12868    pub rdb_Reserved3: [ULONG; 5usize],
12869    pub rdb_RDBBlocksLo: ULONG,
12870    pub rdb_RDBBlocksHi: ULONG,
12871    pub rdb_LoCylinder: ULONG,
12872    pub rdb_HiCylinder: ULONG,
12873    pub rdb_CylBlocks: ULONG,
12874    pub rdb_AutoParkSeconds: ULONG,
12875    pub rdb_HighRDSKBlock: ULONG,
12876    pub rdb_Reserved4: ULONG,
12877    pub rdb_DiskVendor: [::core::ffi::c_char; 8usize],
12878    pub rdb_DiskProduct: [::core::ffi::c_char; 16usize],
12879    pub rdb_DiskRevision: [::core::ffi::c_char; 4usize],
12880    pub rdb_ControllerVendor: [::core::ffi::c_char; 8usize],
12881    pub rdb_ControllerProduct: [::core::ffi::c_char; 16usize],
12882    pub rdb_ControllerRevision: [::core::ffi::c_char; 4usize],
12883    pub rdb_DriveInitName: [::core::ffi::c_char; 40usize],
12884}
12885#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12886const _: () = {
12887    ["Size of RigidDiskBlock"][::core::mem::size_of::<RigidDiskBlock>() - 256usize];
12888    ["Alignment of RigidDiskBlock"][::core::mem::align_of::<RigidDiskBlock>() - 2usize];
12889    ["Offset of field: RigidDiskBlock::rdb_ID"]
12890        [::core::mem::offset_of!(RigidDiskBlock, rdb_ID) - 0usize];
12891    ["Offset of field: RigidDiskBlock::rdb_SummedLongs"]
12892        [::core::mem::offset_of!(RigidDiskBlock, rdb_SummedLongs) - 4usize];
12893    ["Offset of field: RigidDiskBlock::rdb_ChkSum"]
12894        [::core::mem::offset_of!(RigidDiskBlock, rdb_ChkSum) - 8usize];
12895    ["Offset of field: RigidDiskBlock::rdb_HostID"]
12896        [::core::mem::offset_of!(RigidDiskBlock, rdb_HostID) - 12usize];
12897    ["Offset of field: RigidDiskBlock::rdb_BlockBytes"]
12898        [::core::mem::offset_of!(RigidDiskBlock, rdb_BlockBytes) - 16usize];
12899    ["Offset of field: RigidDiskBlock::rdb_Flags"]
12900        [::core::mem::offset_of!(RigidDiskBlock, rdb_Flags) - 20usize];
12901    ["Offset of field: RigidDiskBlock::rdb_BadBlockList"]
12902        [::core::mem::offset_of!(RigidDiskBlock, rdb_BadBlockList) - 24usize];
12903    ["Offset of field: RigidDiskBlock::rdb_PartitionList"]
12904        [::core::mem::offset_of!(RigidDiskBlock, rdb_PartitionList) - 28usize];
12905    ["Offset of field: RigidDiskBlock::rdb_FileSysHeaderList"]
12906        [::core::mem::offset_of!(RigidDiskBlock, rdb_FileSysHeaderList) - 32usize];
12907    ["Offset of field: RigidDiskBlock::rdb_DriveInit"]
12908        [::core::mem::offset_of!(RigidDiskBlock, rdb_DriveInit) - 36usize];
12909    ["Offset of field: RigidDiskBlock::rdb_Reserved1"]
12910        [::core::mem::offset_of!(RigidDiskBlock, rdb_Reserved1) - 40usize];
12911    ["Offset of field: RigidDiskBlock::rdb_Cylinders"]
12912        [::core::mem::offset_of!(RigidDiskBlock, rdb_Cylinders) - 64usize];
12913    ["Offset of field: RigidDiskBlock::rdb_Sectors"]
12914        [::core::mem::offset_of!(RigidDiskBlock, rdb_Sectors) - 68usize];
12915    ["Offset of field: RigidDiskBlock::rdb_Heads"]
12916        [::core::mem::offset_of!(RigidDiskBlock, rdb_Heads) - 72usize];
12917    ["Offset of field: RigidDiskBlock::rdb_Interleave"]
12918        [::core::mem::offset_of!(RigidDiskBlock, rdb_Interleave) - 76usize];
12919    ["Offset of field: RigidDiskBlock::rdb_Park"]
12920        [::core::mem::offset_of!(RigidDiskBlock, rdb_Park) - 80usize];
12921    ["Offset of field: RigidDiskBlock::rdb_Reserved2"]
12922        [::core::mem::offset_of!(RigidDiskBlock, rdb_Reserved2) - 84usize];
12923    ["Offset of field: RigidDiskBlock::rdb_WritePreComp"]
12924        [::core::mem::offset_of!(RigidDiskBlock, rdb_WritePreComp) - 96usize];
12925    ["Offset of field: RigidDiskBlock::rdb_ReducedWrite"]
12926        [::core::mem::offset_of!(RigidDiskBlock, rdb_ReducedWrite) - 100usize];
12927    ["Offset of field: RigidDiskBlock::rdb_StepRate"]
12928        [::core::mem::offset_of!(RigidDiskBlock, rdb_StepRate) - 104usize];
12929    ["Offset of field: RigidDiskBlock::rdb_Reserved3"]
12930        [::core::mem::offset_of!(RigidDiskBlock, rdb_Reserved3) - 108usize];
12931    ["Offset of field: RigidDiskBlock::rdb_RDBBlocksLo"]
12932        [::core::mem::offset_of!(RigidDiskBlock, rdb_RDBBlocksLo) - 128usize];
12933    ["Offset of field: RigidDiskBlock::rdb_RDBBlocksHi"]
12934        [::core::mem::offset_of!(RigidDiskBlock, rdb_RDBBlocksHi) - 132usize];
12935    ["Offset of field: RigidDiskBlock::rdb_LoCylinder"]
12936        [::core::mem::offset_of!(RigidDiskBlock, rdb_LoCylinder) - 136usize];
12937    ["Offset of field: RigidDiskBlock::rdb_HiCylinder"]
12938        [::core::mem::offset_of!(RigidDiskBlock, rdb_HiCylinder) - 140usize];
12939    ["Offset of field: RigidDiskBlock::rdb_CylBlocks"]
12940        [::core::mem::offset_of!(RigidDiskBlock, rdb_CylBlocks) - 144usize];
12941    ["Offset of field: RigidDiskBlock::rdb_AutoParkSeconds"]
12942        [::core::mem::offset_of!(RigidDiskBlock, rdb_AutoParkSeconds) - 148usize];
12943    ["Offset of field: RigidDiskBlock::rdb_HighRDSKBlock"]
12944        [::core::mem::offset_of!(RigidDiskBlock, rdb_HighRDSKBlock) - 152usize];
12945    ["Offset of field: RigidDiskBlock::rdb_Reserved4"]
12946        [::core::mem::offset_of!(RigidDiskBlock, rdb_Reserved4) - 156usize];
12947    ["Offset of field: RigidDiskBlock::rdb_DiskVendor"]
12948        [::core::mem::offset_of!(RigidDiskBlock, rdb_DiskVendor) - 160usize];
12949    ["Offset of field: RigidDiskBlock::rdb_DiskProduct"]
12950        [::core::mem::offset_of!(RigidDiskBlock, rdb_DiskProduct) - 168usize];
12951    ["Offset of field: RigidDiskBlock::rdb_DiskRevision"]
12952        [::core::mem::offset_of!(RigidDiskBlock, rdb_DiskRevision) - 184usize];
12953    ["Offset of field: RigidDiskBlock::rdb_ControllerVendor"]
12954        [::core::mem::offset_of!(RigidDiskBlock, rdb_ControllerVendor) - 188usize];
12955    ["Offset of field: RigidDiskBlock::rdb_ControllerProduct"]
12956        [::core::mem::offset_of!(RigidDiskBlock, rdb_ControllerProduct) - 196usize];
12957    ["Offset of field: RigidDiskBlock::rdb_ControllerRevision"]
12958        [::core::mem::offset_of!(RigidDiskBlock, rdb_ControllerRevision) - 212usize];
12959    ["Offset of field: RigidDiskBlock::rdb_DriveInitName"]
12960        [::core::mem::offset_of!(RigidDiskBlock, rdb_DriveInitName) - 216usize];
12961};
12962#[repr(C, packed(2))]
12963#[derive(Debug, Copy, Clone)]
12964pub struct BadBlockEntry {
12965    pub bbe_BadBlock: ULONG,
12966    pub bbe_GoodBlock: ULONG,
12967}
12968#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12969const _: () = {
12970    ["Size of BadBlockEntry"][::core::mem::size_of::<BadBlockEntry>() - 8usize];
12971    ["Alignment of BadBlockEntry"][::core::mem::align_of::<BadBlockEntry>() - 2usize];
12972    ["Offset of field: BadBlockEntry::bbe_BadBlock"]
12973        [::core::mem::offset_of!(BadBlockEntry, bbe_BadBlock) - 0usize];
12974    ["Offset of field: BadBlockEntry::bbe_GoodBlock"]
12975        [::core::mem::offset_of!(BadBlockEntry, bbe_GoodBlock) - 4usize];
12976};
12977#[repr(C, packed(2))]
12978#[derive(Debug, Copy, Clone)]
12979pub struct BadBlockBlock {
12980    pub bbb_ID: ULONG,
12981    pub bbb_SummedLongs: ULONG,
12982    pub bbb_ChkSum: LONG,
12983    pub bbb_HostID: ULONG,
12984    pub bbb_Next: ULONG,
12985    pub bbb_Reserved: ULONG,
12986    pub bbb_BlockPairs: [BadBlockEntry; 61usize],
12987}
12988#[allow(clippy::unnecessary_operation, clippy::identity_op)]
12989const _: () = {
12990    ["Size of BadBlockBlock"][::core::mem::size_of::<BadBlockBlock>() - 512usize];
12991    ["Alignment of BadBlockBlock"][::core::mem::align_of::<BadBlockBlock>() - 2usize];
12992    ["Offset of field: BadBlockBlock::bbb_ID"]
12993        [::core::mem::offset_of!(BadBlockBlock, bbb_ID) - 0usize];
12994    ["Offset of field: BadBlockBlock::bbb_SummedLongs"]
12995        [::core::mem::offset_of!(BadBlockBlock, bbb_SummedLongs) - 4usize];
12996    ["Offset of field: BadBlockBlock::bbb_ChkSum"]
12997        [::core::mem::offset_of!(BadBlockBlock, bbb_ChkSum) - 8usize];
12998    ["Offset of field: BadBlockBlock::bbb_HostID"]
12999        [::core::mem::offset_of!(BadBlockBlock, bbb_HostID) - 12usize];
13000    ["Offset of field: BadBlockBlock::bbb_Next"]
13001        [::core::mem::offset_of!(BadBlockBlock, bbb_Next) - 16usize];
13002    ["Offset of field: BadBlockBlock::bbb_Reserved"]
13003        [::core::mem::offset_of!(BadBlockBlock, bbb_Reserved) - 20usize];
13004    ["Offset of field: BadBlockBlock::bbb_BlockPairs"]
13005        [::core::mem::offset_of!(BadBlockBlock, bbb_BlockPairs) - 24usize];
13006};
13007#[repr(C, packed(2))]
13008#[derive(Debug, Copy, Clone)]
13009pub struct PartitionBlock {
13010    pub pb_ID: ULONG,
13011    pub pb_SummedLongs: ULONG,
13012    pub pb_ChkSum: LONG,
13013    pub pb_HostID: ULONG,
13014    pub pb_Next: ULONG,
13015    pub pb_Flags: ULONG,
13016    pub pb_Reserved1: [ULONG; 2usize],
13017    pub pb_DevFlags: ULONG,
13018    pub pb_DriveName: [UBYTE; 32usize],
13019    pub pb_Reserved2: [ULONG; 15usize],
13020    pub pb_Environment: [ULONG; 20usize],
13021    pub pb_EReserved: [ULONG; 12usize],
13022}
13023#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13024const _: () = {
13025    ["Size of PartitionBlock"][::core::mem::size_of::<PartitionBlock>() - 256usize];
13026    ["Alignment of PartitionBlock"][::core::mem::align_of::<PartitionBlock>() - 2usize];
13027    ["Offset of field: PartitionBlock::pb_ID"]
13028        [::core::mem::offset_of!(PartitionBlock, pb_ID) - 0usize];
13029    ["Offset of field: PartitionBlock::pb_SummedLongs"]
13030        [::core::mem::offset_of!(PartitionBlock, pb_SummedLongs) - 4usize];
13031    ["Offset of field: PartitionBlock::pb_ChkSum"]
13032        [::core::mem::offset_of!(PartitionBlock, pb_ChkSum) - 8usize];
13033    ["Offset of field: PartitionBlock::pb_HostID"]
13034        [::core::mem::offset_of!(PartitionBlock, pb_HostID) - 12usize];
13035    ["Offset of field: PartitionBlock::pb_Next"]
13036        [::core::mem::offset_of!(PartitionBlock, pb_Next) - 16usize];
13037    ["Offset of field: PartitionBlock::pb_Flags"]
13038        [::core::mem::offset_of!(PartitionBlock, pb_Flags) - 20usize];
13039    ["Offset of field: PartitionBlock::pb_Reserved1"]
13040        [::core::mem::offset_of!(PartitionBlock, pb_Reserved1) - 24usize];
13041    ["Offset of field: PartitionBlock::pb_DevFlags"]
13042        [::core::mem::offset_of!(PartitionBlock, pb_DevFlags) - 32usize];
13043    ["Offset of field: PartitionBlock::pb_DriveName"]
13044        [::core::mem::offset_of!(PartitionBlock, pb_DriveName) - 36usize];
13045    ["Offset of field: PartitionBlock::pb_Reserved2"]
13046        [::core::mem::offset_of!(PartitionBlock, pb_Reserved2) - 68usize];
13047    ["Offset of field: PartitionBlock::pb_Environment"]
13048        [::core::mem::offset_of!(PartitionBlock, pb_Environment) - 128usize];
13049    ["Offset of field: PartitionBlock::pb_EReserved"]
13050        [::core::mem::offset_of!(PartitionBlock, pb_EReserved) - 208usize];
13051};
13052#[repr(C, packed(2))]
13053#[derive(Debug, Copy, Clone)]
13054pub struct FileSysHeaderBlock {
13055    pub fhb_ID: ULONG,
13056    pub fhb_SummedLongs: ULONG,
13057    pub fhb_ChkSum: LONG,
13058    pub fhb_HostID: ULONG,
13059    pub fhb_Next: ULONG,
13060    pub fhb_Flags: ULONG,
13061    pub fhb_Reserved1: [ULONG; 2usize],
13062    pub fhb_DosType: ULONG,
13063    pub fhb_Version: ULONG,
13064    pub fhb_PatchFlags: ULONG,
13065    pub fhb_Type: ULONG,
13066    pub fhb_Task: ULONG,
13067    pub fhb_Lock: ULONG,
13068    pub fhb_Handler: ULONG,
13069    pub fhb_StackSize: ULONG,
13070    pub fhb_Priority: LONG,
13071    pub fhb_Startup: LONG,
13072    pub fhb_SegListBlocks: LONG,
13073    pub fhb_GlobalVec: LONG,
13074    pub fhb_Reserved2: [ULONG; 23usize],
13075    pub fhb_FileSysName: [::core::ffi::c_char; 84usize],
13076}
13077#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13078const _: () = {
13079    ["Size of FileSysHeaderBlock"][::core::mem::size_of::<FileSysHeaderBlock>() - 256usize];
13080    ["Alignment of FileSysHeaderBlock"][::core::mem::align_of::<FileSysHeaderBlock>() - 2usize];
13081    ["Offset of field: FileSysHeaderBlock::fhb_ID"]
13082        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_ID) - 0usize];
13083    ["Offset of field: FileSysHeaderBlock::fhb_SummedLongs"]
13084        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_SummedLongs) - 4usize];
13085    ["Offset of field: FileSysHeaderBlock::fhb_ChkSum"]
13086        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_ChkSum) - 8usize];
13087    ["Offset of field: FileSysHeaderBlock::fhb_HostID"]
13088        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_HostID) - 12usize];
13089    ["Offset of field: FileSysHeaderBlock::fhb_Next"]
13090        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Next) - 16usize];
13091    ["Offset of field: FileSysHeaderBlock::fhb_Flags"]
13092        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Flags) - 20usize];
13093    ["Offset of field: FileSysHeaderBlock::fhb_Reserved1"]
13094        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Reserved1) - 24usize];
13095    ["Offset of field: FileSysHeaderBlock::fhb_DosType"]
13096        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_DosType) - 32usize];
13097    ["Offset of field: FileSysHeaderBlock::fhb_Version"]
13098        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Version) - 36usize];
13099    ["Offset of field: FileSysHeaderBlock::fhb_PatchFlags"]
13100        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_PatchFlags) - 40usize];
13101    ["Offset of field: FileSysHeaderBlock::fhb_Type"]
13102        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Type) - 44usize];
13103    ["Offset of field: FileSysHeaderBlock::fhb_Task"]
13104        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Task) - 48usize];
13105    ["Offset of field: FileSysHeaderBlock::fhb_Lock"]
13106        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Lock) - 52usize];
13107    ["Offset of field: FileSysHeaderBlock::fhb_Handler"]
13108        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Handler) - 56usize];
13109    ["Offset of field: FileSysHeaderBlock::fhb_StackSize"]
13110        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_StackSize) - 60usize];
13111    ["Offset of field: FileSysHeaderBlock::fhb_Priority"]
13112        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Priority) - 64usize];
13113    ["Offset of field: FileSysHeaderBlock::fhb_Startup"]
13114        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Startup) - 68usize];
13115    ["Offset of field: FileSysHeaderBlock::fhb_SegListBlocks"]
13116        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_SegListBlocks) - 72usize];
13117    ["Offset of field: FileSysHeaderBlock::fhb_GlobalVec"]
13118        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_GlobalVec) - 76usize];
13119    ["Offset of field: FileSysHeaderBlock::fhb_Reserved2"]
13120        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_Reserved2) - 80usize];
13121    ["Offset of field: FileSysHeaderBlock::fhb_FileSysName"]
13122        [::core::mem::offset_of!(FileSysHeaderBlock, fhb_FileSysName) - 172usize];
13123};
13124#[repr(C, packed(2))]
13125#[derive(Debug, Copy, Clone)]
13126pub struct LoadSegBlock {
13127    pub lsb_ID: ULONG,
13128    pub lsb_SummedLongs: ULONG,
13129    pub lsb_ChkSum: LONG,
13130    pub lsb_HostID: ULONG,
13131    pub lsb_Next: ULONG,
13132    pub lsb_LoadData: [ULONG; 123usize],
13133}
13134#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13135const _: () = {
13136    ["Size of LoadSegBlock"][::core::mem::size_of::<LoadSegBlock>() - 512usize];
13137    ["Alignment of LoadSegBlock"][::core::mem::align_of::<LoadSegBlock>() - 2usize];
13138    ["Offset of field: LoadSegBlock::lsb_ID"]
13139        [::core::mem::offset_of!(LoadSegBlock, lsb_ID) - 0usize];
13140    ["Offset of field: LoadSegBlock::lsb_SummedLongs"]
13141        [::core::mem::offset_of!(LoadSegBlock, lsb_SummedLongs) - 4usize];
13142    ["Offset of field: LoadSegBlock::lsb_ChkSum"]
13143        [::core::mem::offset_of!(LoadSegBlock, lsb_ChkSum) - 8usize];
13144    ["Offset of field: LoadSegBlock::lsb_HostID"]
13145        [::core::mem::offset_of!(LoadSegBlock, lsb_HostID) - 12usize];
13146    ["Offset of field: LoadSegBlock::lsb_Next"]
13147        [::core::mem::offset_of!(LoadSegBlock, lsb_Next) - 16usize];
13148    ["Offset of field: LoadSegBlock::lsb_LoadData"]
13149        [::core::mem::offset_of!(LoadSegBlock, lsb_LoadData) - 20usize];
13150};
13151#[repr(C, packed(2))]
13152#[derive(Debug, Copy, Clone)]
13153pub struct narrator_rb {
13154    pub message: IOStdReq,
13155    pub rate: UWORD,
13156    pub pitch: UWORD,
13157    pub mode: UWORD,
13158    pub sex: UWORD,
13159    pub ch_masks: *mut UBYTE,
13160    pub nm_masks: UWORD,
13161    pub volume: UWORD,
13162    pub sampfreq: UWORD,
13163    pub mouths: UBYTE,
13164    pub chanmask: UBYTE,
13165    pub numchan: UBYTE,
13166    pub flags: UBYTE,
13167    pub F0enthusiasm: UBYTE,
13168    pub F0perturb: UBYTE,
13169    pub F1adj: BYTE,
13170    pub F2adj: BYTE,
13171    pub F3adj: BYTE,
13172    pub A1adj: BYTE,
13173    pub A2adj: BYTE,
13174    pub A3adj: BYTE,
13175    pub articulate: UBYTE,
13176    pub centralize: UBYTE,
13177    pub centphon: *mut ::core::ffi::c_char,
13178    pub AVbias: BYTE,
13179    pub AFbias: BYTE,
13180    pub priority: BYTE,
13181    pub pad1: BYTE,
13182}
13183#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13184const _: () = {
13185    ["Size of narrator_rb"][::core::mem::size_of::<narrator_rb>() - 88usize];
13186    ["Alignment of narrator_rb"][::core::mem::align_of::<narrator_rb>() - 2usize];
13187    ["Offset of field: narrator_rb::message"]
13188        [::core::mem::offset_of!(narrator_rb, message) - 0usize];
13189    ["Offset of field: narrator_rb::rate"][::core::mem::offset_of!(narrator_rb, rate) - 48usize];
13190    ["Offset of field: narrator_rb::pitch"][::core::mem::offset_of!(narrator_rb, pitch) - 50usize];
13191    ["Offset of field: narrator_rb::mode"][::core::mem::offset_of!(narrator_rb, mode) - 52usize];
13192    ["Offset of field: narrator_rb::sex"][::core::mem::offset_of!(narrator_rb, sex) - 54usize];
13193    ["Offset of field: narrator_rb::ch_masks"]
13194        [::core::mem::offset_of!(narrator_rb, ch_masks) - 56usize];
13195    ["Offset of field: narrator_rb::nm_masks"]
13196        [::core::mem::offset_of!(narrator_rb, nm_masks) - 60usize];
13197    ["Offset of field: narrator_rb::volume"]
13198        [::core::mem::offset_of!(narrator_rb, volume) - 62usize];
13199    ["Offset of field: narrator_rb::sampfreq"]
13200        [::core::mem::offset_of!(narrator_rb, sampfreq) - 64usize];
13201    ["Offset of field: narrator_rb::mouths"]
13202        [::core::mem::offset_of!(narrator_rb, mouths) - 66usize];
13203    ["Offset of field: narrator_rb::chanmask"]
13204        [::core::mem::offset_of!(narrator_rb, chanmask) - 67usize];
13205    ["Offset of field: narrator_rb::numchan"]
13206        [::core::mem::offset_of!(narrator_rb, numchan) - 68usize];
13207    ["Offset of field: narrator_rb::flags"][::core::mem::offset_of!(narrator_rb, flags) - 69usize];
13208    ["Offset of field: narrator_rb::F0enthusiasm"]
13209        [::core::mem::offset_of!(narrator_rb, F0enthusiasm) - 70usize];
13210    ["Offset of field: narrator_rb::F0perturb"]
13211        [::core::mem::offset_of!(narrator_rb, F0perturb) - 71usize];
13212    ["Offset of field: narrator_rb::F1adj"][::core::mem::offset_of!(narrator_rb, F1adj) - 72usize];
13213    ["Offset of field: narrator_rb::F2adj"][::core::mem::offset_of!(narrator_rb, F2adj) - 73usize];
13214    ["Offset of field: narrator_rb::F3adj"][::core::mem::offset_of!(narrator_rb, F3adj) - 74usize];
13215    ["Offset of field: narrator_rb::A1adj"][::core::mem::offset_of!(narrator_rb, A1adj) - 75usize];
13216    ["Offset of field: narrator_rb::A2adj"][::core::mem::offset_of!(narrator_rb, A2adj) - 76usize];
13217    ["Offset of field: narrator_rb::A3adj"][::core::mem::offset_of!(narrator_rb, A3adj) - 77usize];
13218    ["Offset of field: narrator_rb::articulate"]
13219        [::core::mem::offset_of!(narrator_rb, articulate) - 78usize];
13220    ["Offset of field: narrator_rb::centralize"]
13221        [::core::mem::offset_of!(narrator_rb, centralize) - 79usize];
13222    ["Offset of field: narrator_rb::centphon"]
13223        [::core::mem::offset_of!(narrator_rb, centphon) - 80usize];
13224    ["Offset of field: narrator_rb::AVbias"]
13225        [::core::mem::offset_of!(narrator_rb, AVbias) - 84usize];
13226    ["Offset of field: narrator_rb::AFbias"]
13227        [::core::mem::offset_of!(narrator_rb, AFbias) - 85usize];
13228    ["Offset of field: narrator_rb::priority"]
13229        [::core::mem::offset_of!(narrator_rb, priority) - 86usize];
13230    ["Offset of field: narrator_rb::pad1"][::core::mem::offset_of!(narrator_rb, pad1) - 87usize];
13231};
13232#[repr(C)]
13233#[derive(Debug, Copy, Clone)]
13234pub struct mouth_rb {
13235    pub voice: narrator_rb,
13236    pub width: UBYTE,
13237    pub height: UBYTE,
13238    pub shape: UBYTE,
13239    pub sync: UBYTE,
13240}
13241#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13242const _: () = {
13243    ["Size of mouth_rb"][::core::mem::size_of::<mouth_rb>() - 92usize];
13244    ["Alignment of mouth_rb"][::core::mem::align_of::<mouth_rb>() - 2usize];
13245    ["Offset of field: mouth_rb::voice"][::core::mem::offset_of!(mouth_rb, voice) - 0usize];
13246    ["Offset of field: mouth_rb::width"][::core::mem::offset_of!(mouth_rb, width) - 88usize];
13247    ["Offset of field: mouth_rb::height"][::core::mem::offset_of!(mouth_rb, height) - 89usize];
13248    ["Offset of field: mouth_rb::shape"][::core::mem::offset_of!(mouth_rb, shape) - 90usize];
13249    ["Offset of field: mouth_rb::sync"][::core::mem::offset_of!(mouth_rb, sync) - 91usize];
13250};
13251#[repr(C, packed(2))]
13252#[derive(Debug, Copy, Clone)]
13253pub struct NSDeviceQueryResult {
13254    pub nsdqr_DevQueryFormat: ULONG,
13255    pub nsdqr_SizeAvailable: ULONG,
13256    pub nsdqr_DeviceType: UWORD,
13257    pub nsdqr_DeviceSubType: UWORD,
13258    pub nsdqr_SupportedCommands: APTR,
13259}
13260#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13261const _: () = {
13262    ["Size of NSDeviceQueryResult"][::core::mem::size_of::<NSDeviceQueryResult>() - 16usize];
13263    ["Alignment of NSDeviceQueryResult"][::core::mem::align_of::<NSDeviceQueryResult>() - 2usize];
13264    ["Offset of field: NSDeviceQueryResult::nsdqr_DevQueryFormat"]
13265        [::core::mem::offset_of!(NSDeviceQueryResult, nsdqr_DevQueryFormat) - 0usize];
13266    ["Offset of field: NSDeviceQueryResult::nsdqr_SizeAvailable"]
13267        [::core::mem::offset_of!(NSDeviceQueryResult, nsdqr_SizeAvailable) - 4usize];
13268    ["Offset of field: NSDeviceQueryResult::nsdqr_DeviceType"]
13269        [::core::mem::offset_of!(NSDeviceQueryResult, nsdqr_DeviceType) - 8usize];
13270    ["Offset of field: NSDeviceQueryResult::nsdqr_DeviceSubType"]
13271        [::core::mem::offset_of!(NSDeviceQueryResult, nsdqr_DeviceSubType) - 10usize];
13272    ["Offset of field: NSDeviceQueryResult::nsdqr_SupportedCommands"]
13273        [::core::mem::offset_of!(NSDeviceQueryResult, nsdqr_SupportedCommands) - 12usize];
13274};
13275#[repr(C, packed(2))]
13276#[derive(Copy, Clone)]
13277pub union colorEntry {
13278    pub colorLong: ULONG,
13279    pub colorByte: [UBYTE; 4usize],
13280    pub colorSByte: [BYTE; 4usize],
13281}
13282#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13283const _: () = {
13284    ["Size of colorEntry"][::core::mem::size_of::<colorEntry>() - 4usize];
13285    ["Alignment of colorEntry"][::core::mem::align_of::<colorEntry>() - 2usize];
13286    ["Offset of field: colorEntry::colorLong"]
13287        [::core::mem::offset_of!(colorEntry, colorLong) - 0usize];
13288    ["Offset of field: colorEntry::colorByte"]
13289        [::core::mem::offset_of!(colorEntry, colorByte) - 0usize];
13290    ["Offset of field: colorEntry::colorSByte"]
13291        [::core::mem::offset_of!(colorEntry, colorSByte) - 0usize];
13292};
13293#[repr(C)]
13294#[derive(Debug, Copy, Clone)]
13295pub struct WordColorEntry {
13296    pub ColorWord: [WORD; 4usize],
13297}
13298#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13299const _: () = {
13300    ["Size of WordColorEntry"][::core::mem::size_of::<WordColorEntry>() - 8usize];
13301    ["Alignment of WordColorEntry"][::core::mem::align_of::<WordColorEntry>() - 2usize];
13302    ["Offset of field: WordColorEntry::ColorWord"]
13303        [::core::mem::offset_of!(WordColorEntry, ColorWord) - 0usize];
13304};
13305#[repr(C, packed(2))]
13306#[derive(Debug, Copy, Clone)]
13307pub struct PrtInfo {
13308    pub pi_render: FPTR,
13309    pub pi_rp: *mut RastPort,
13310    pub pi_temprp: *mut RastPort,
13311    pub pi_RowBuf: *mut UWORD,
13312    pub pi_HamBuf: *mut UWORD,
13313    pub pi_ColorMap: *mut colorEntry,
13314    pub pi_ColorInt: *mut colorEntry,
13315    pub pi_HamInt: *mut colorEntry,
13316    pub pi_Dest1Int: *mut colorEntry,
13317    pub pi_Dest2Int: *mut colorEntry,
13318    pub pi_ScaleX: *mut UWORD,
13319    pub pi_ScaleXAlt: *mut UWORD,
13320    pub pi_dmatrix: *mut UBYTE,
13321    pub pi_TopBuf: *mut UWORD,
13322    pub pi_BotBuf: *mut UWORD,
13323    pub pi_RowBufSize: UWORD,
13324    pub pi_HamBufSize: UWORD,
13325    pub pi_ColorMapSize: UWORD,
13326    pub pi_ColorIntSize: UWORD,
13327    pub pi_HamIntSize: UWORD,
13328    pub pi_Dest1IntSize: UWORD,
13329    pub pi_Dest2IntSize: UWORD,
13330    pub pi_ScaleXSize: UWORD,
13331    pub pi_ScaleXAltSize: UWORD,
13332    pub pi_PrefsFlags: UWORD,
13333    pub pi_special: ULONG,
13334    pub pi_xstart: UWORD,
13335    pub pi_ystart: UWORD,
13336    pub pi_width: UWORD,
13337    pub pi_height: UWORD,
13338    pub pi_pc: ULONG,
13339    pub pi_pr: ULONG,
13340    pub pi_ymult: UWORD,
13341    pub pi_ymod: UWORD,
13342    pub pi_ety: WORD,
13343    pub pi_xpos: UWORD,
13344    pub pi_threshold: UWORD,
13345    pub pi_tempwidth: UWORD,
13346    pub pi_flags: UWORD,
13347    pub pi_ReduceBuf: *mut UWORD,
13348    pub pi_ReduceBufSize: UWORD,
13349    pub pi_SourceHook: *mut Hook,
13350    pub pi_InvertHookBuf: *mut ULONG,
13351}
13352#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13353const _: () = {
13354    ["Size of PrtInfo"][::core::mem::size_of::<PrtInfo>() - 128usize];
13355    ["Alignment of PrtInfo"][::core::mem::align_of::<PrtInfo>() - 2usize];
13356    ["Offset of field: PrtInfo::pi_render"][::core::mem::offset_of!(PrtInfo, pi_render) - 0usize];
13357    ["Offset of field: PrtInfo::pi_rp"][::core::mem::offset_of!(PrtInfo, pi_rp) - 4usize];
13358    ["Offset of field: PrtInfo::pi_temprp"][::core::mem::offset_of!(PrtInfo, pi_temprp) - 8usize];
13359    ["Offset of field: PrtInfo::pi_RowBuf"][::core::mem::offset_of!(PrtInfo, pi_RowBuf) - 12usize];
13360    ["Offset of field: PrtInfo::pi_HamBuf"][::core::mem::offset_of!(PrtInfo, pi_HamBuf) - 16usize];
13361    ["Offset of field: PrtInfo::pi_ColorMap"]
13362        [::core::mem::offset_of!(PrtInfo, pi_ColorMap) - 20usize];
13363    ["Offset of field: PrtInfo::pi_ColorInt"]
13364        [::core::mem::offset_of!(PrtInfo, pi_ColorInt) - 24usize];
13365    ["Offset of field: PrtInfo::pi_HamInt"][::core::mem::offset_of!(PrtInfo, pi_HamInt) - 28usize];
13366    ["Offset of field: PrtInfo::pi_Dest1Int"]
13367        [::core::mem::offset_of!(PrtInfo, pi_Dest1Int) - 32usize];
13368    ["Offset of field: PrtInfo::pi_Dest2Int"]
13369        [::core::mem::offset_of!(PrtInfo, pi_Dest2Int) - 36usize];
13370    ["Offset of field: PrtInfo::pi_ScaleX"][::core::mem::offset_of!(PrtInfo, pi_ScaleX) - 40usize];
13371    ["Offset of field: PrtInfo::pi_ScaleXAlt"]
13372        [::core::mem::offset_of!(PrtInfo, pi_ScaleXAlt) - 44usize];
13373    ["Offset of field: PrtInfo::pi_dmatrix"]
13374        [::core::mem::offset_of!(PrtInfo, pi_dmatrix) - 48usize];
13375    ["Offset of field: PrtInfo::pi_TopBuf"][::core::mem::offset_of!(PrtInfo, pi_TopBuf) - 52usize];
13376    ["Offset of field: PrtInfo::pi_BotBuf"][::core::mem::offset_of!(PrtInfo, pi_BotBuf) - 56usize];
13377    ["Offset of field: PrtInfo::pi_RowBufSize"]
13378        [::core::mem::offset_of!(PrtInfo, pi_RowBufSize) - 60usize];
13379    ["Offset of field: PrtInfo::pi_HamBufSize"]
13380        [::core::mem::offset_of!(PrtInfo, pi_HamBufSize) - 62usize];
13381    ["Offset of field: PrtInfo::pi_ColorMapSize"]
13382        [::core::mem::offset_of!(PrtInfo, pi_ColorMapSize) - 64usize];
13383    ["Offset of field: PrtInfo::pi_ColorIntSize"]
13384        [::core::mem::offset_of!(PrtInfo, pi_ColorIntSize) - 66usize];
13385    ["Offset of field: PrtInfo::pi_HamIntSize"]
13386        [::core::mem::offset_of!(PrtInfo, pi_HamIntSize) - 68usize];
13387    ["Offset of field: PrtInfo::pi_Dest1IntSize"]
13388        [::core::mem::offset_of!(PrtInfo, pi_Dest1IntSize) - 70usize];
13389    ["Offset of field: PrtInfo::pi_Dest2IntSize"]
13390        [::core::mem::offset_of!(PrtInfo, pi_Dest2IntSize) - 72usize];
13391    ["Offset of field: PrtInfo::pi_ScaleXSize"]
13392        [::core::mem::offset_of!(PrtInfo, pi_ScaleXSize) - 74usize];
13393    ["Offset of field: PrtInfo::pi_ScaleXAltSize"]
13394        [::core::mem::offset_of!(PrtInfo, pi_ScaleXAltSize) - 76usize];
13395    ["Offset of field: PrtInfo::pi_PrefsFlags"]
13396        [::core::mem::offset_of!(PrtInfo, pi_PrefsFlags) - 78usize];
13397    ["Offset of field: PrtInfo::pi_special"]
13398        [::core::mem::offset_of!(PrtInfo, pi_special) - 80usize];
13399    ["Offset of field: PrtInfo::pi_xstart"][::core::mem::offset_of!(PrtInfo, pi_xstart) - 84usize];
13400    ["Offset of field: PrtInfo::pi_ystart"][::core::mem::offset_of!(PrtInfo, pi_ystart) - 86usize];
13401    ["Offset of field: PrtInfo::pi_width"][::core::mem::offset_of!(PrtInfo, pi_width) - 88usize];
13402    ["Offset of field: PrtInfo::pi_height"][::core::mem::offset_of!(PrtInfo, pi_height) - 90usize];
13403    ["Offset of field: PrtInfo::pi_pc"][::core::mem::offset_of!(PrtInfo, pi_pc) - 92usize];
13404    ["Offset of field: PrtInfo::pi_pr"][::core::mem::offset_of!(PrtInfo, pi_pr) - 96usize];
13405    ["Offset of field: PrtInfo::pi_ymult"][::core::mem::offset_of!(PrtInfo, pi_ymult) - 100usize];
13406    ["Offset of field: PrtInfo::pi_ymod"][::core::mem::offset_of!(PrtInfo, pi_ymod) - 102usize];
13407    ["Offset of field: PrtInfo::pi_ety"][::core::mem::offset_of!(PrtInfo, pi_ety) - 104usize];
13408    ["Offset of field: PrtInfo::pi_xpos"][::core::mem::offset_of!(PrtInfo, pi_xpos) - 106usize];
13409    ["Offset of field: PrtInfo::pi_threshold"]
13410        [::core::mem::offset_of!(PrtInfo, pi_threshold) - 108usize];
13411    ["Offset of field: PrtInfo::pi_tempwidth"]
13412        [::core::mem::offset_of!(PrtInfo, pi_tempwidth) - 110usize];
13413    ["Offset of field: PrtInfo::pi_flags"][::core::mem::offset_of!(PrtInfo, pi_flags) - 112usize];
13414    ["Offset of field: PrtInfo::pi_ReduceBuf"]
13415        [::core::mem::offset_of!(PrtInfo, pi_ReduceBuf) - 114usize];
13416    ["Offset of field: PrtInfo::pi_ReduceBufSize"]
13417        [::core::mem::offset_of!(PrtInfo, pi_ReduceBufSize) - 118usize];
13418    ["Offset of field: PrtInfo::pi_SourceHook"]
13419        [::core::mem::offset_of!(PrtInfo, pi_SourceHook) - 120usize];
13420    ["Offset of field: PrtInfo::pi_InvertHookBuf"]
13421        [::core::mem::offset_of!(PrtInfo, pi_InvertHookBuf) - 124usize];
13422};
13423#[repr(C, packed(2))]
13424#[derive(Debug, Copy, Clone)]
13425pub struct SCSICmd {
13426    pub scsi_Data: *mut UWORD,
13427    pub scsi_Length: ULONG,
13428    pub scsi_Actual: ULONG,
13429    pub scsi_Command: *mut UBYTE,
13430    pub scsi_CmdLength: UWORD,
13431    pub scsi_CmdActual: UWORD,
13432    pub scsi_Flags: UBYTE,
13433    pub scsi_Status: UBYTE,
13434    pub scsi_SenseData: *mut UBYTE,
13435    pub scsi_SenseLength: UWORD,
13436    pub scsi_SenseActual: UWORD,
13437}
13438#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13439const _: () = {
13440    ["Size of SCSICmd"][::core::mem::size_of::<SCSICmd>() - 30usize];
13441    ["Alignment of SCSICmd"][::core::mem::align_of::<SCSICmd>() - 2usize];
13442    ["Offset of field: SCSICmd::scsi_Data"][::core::mem::offset_of!(SCSICmd, scsi_Data) - 0usize];
13443    ["Offset of field: SCSICmd::scsi_Length"]
13444        [::core::mem::offset_of!(SCSICmd, scsi_Length) - 4usize];
13445    ["Offset of field: SCSICmd::scsi_Actual"]
13446        [::core::mem::offset_of!(SCSICmd, scsi_Actual) - 8usize];
13447    ["Offset of field: SCSICmd::scsi_Command"]
13448        [::core::mem::offset_of!(SCSICmd, scsi_Command) - 12usize];
13449    ["Offset of field: SCSICmd::scsi_CmdLength"]
13450        [::core::mem::offset_of!(SCSICmd, scsi_CmdLength) - 16usize];
13451    ["Offset of field: SCSICmd::scsi_CmdActual"]
13452        [::core::mem::offset_of!(SCSICmd, scsi_CmdActual) - 18usize];
13453    ["Offset of field: SCSICmd::scsi_Flags"]
13454        [::core::mem::offset_of!(SCSICmd, scsi_Flags) - 20usize];
13455    ["Offset of field: SCSICmd::scsi_Status"]
13456        [::core::mem::offset_of!(SCSICmd, scsi_Status) - 21usize];
13457    ["Offset of field: SCSICmd::scsi_SenseData"]
13458        [::core::mem::offset_of!(SCSICmd, scsi_SenseData) - 22usize];
13459    ["Offset of field: SCSICmd::scsi_SenseLength"]
13460        [::core::mem::offset_of!(SCSICmd, scsi_SenseLength) - 26usize];
13461    ["Offset of field: SCSICmd::scsi_SenseActual"]
13462        [::core::mem::offset_of!(SCSICmd, scsi_SenseActual) - 28usize];
13463};
13464#[repr(C, packed(2))]
13465#[derive(Debug, Copy, Clone)]
13466pub struct IOExtTD {
13467    pub iotd_Req: IOStdReq,
13468    pub iotd_Count: ULONG,
13469    pub iotd_SecLabel: APTR,
13470}
13471#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13472const _: () = {
13473    ["Size of IOExtTD"][::core::mem::size_of::<IOExtTD>() - 56usize];
13474    ["Alignment of IOExtTD"][::core::mem::align_of::<IOExtTD>() - 2usize];
13475    ["Offset of field: IOExtTD::iotd_Req"][::core::mem::offset_of!(IOExtTD, iotd_Req) - 0usize];
13476    ["Offset of field: IOExtTD::iotd_Count"]
13477        [::core::mem::offset_of!(IOExtTD, iotd_Count) - 48usize];
13478    ["Offset of field: IOExtTD::iotd_SecLabel"]
13479        [::core::mem::offset_of!(IOExtTD, iotd_SecLabel) - 52usize];
13480};
13481#[repr(C, packed(2))]
13482#[derive(Debug, Copy, Clone)]
13483pub struct DriveGeometry {
13484    pub dg_SectorSize: ULONG,
13485    pub dg_TotalSectors: ULONG,
13486    pub dg_Cylinders: ULONG,
13487    pub dg_CylSectors: ULONG,
13488    pub dg_Heads: ULONG,
13489    pub dg_TrackSectors: ULONG,
13490    pub dg_BufMemType: ULONG,
13491    pub dg_DeviceType: UBYTE,
13492    pub dg_Flags: UBYTE,
13493    pub dg_Reserved: UWORD,
13494}
13495#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13496const _: () = {
13497    ["Size of DriveGeometry"][::core::mem::size_of::<DriveGeometry>() - 32usize];
13498    ["Alignment of DriveGeometry"][::core::mem::align_of::<DriveGeometry>() - 2usize];
13499    ["Offset of field: DriveGeometry::dg_SectorSize"]
13500        [::core::mem::offset_of!(DriveGeometry, dg_SectorSize) - 0usize];
13501    ["Offset of field: DriveGeometry::dg_TotalSectors"]
13502        [::core::mem::offset_of!(DriveGeometry, dg_TotalSectors) - 4usize];
13503    ["Offset of field: DriveGeometry::dg_Cylinders"]
13504        [::core::mem::offset_of!(DriveGeometry, dg_Cylinders) - 8usize];
13505    ["Offset of field: DriveGeometry::dg_CylSectors"]
13506        [::core::mem::offset_of!(DriveGeometry, dg_CylSectors) - 12usize];
13507    ["Offset of field: DriveGeometry::dg_Heads"]
13508        [::core::mem::offset_of!(DriveGeometry, dg_Heads) - 16usize];
13509    ["Offset of field: DriveGeometry::dg_TrackSectors"]
13510        [::core::mem::offset_of!(DriveGeometry, dg_TrackSectors) - 20usize];
13511    ["Offset of field: DriveGeometry::dg_BufMemType"]
13512        [::core::mem::offset_of!(DriveGeometry, dg_BufMemType) - 24usize];
13513    ["Offset of field: DriveGeometry::dg_DeviceType"]
13514        [::core::mem::offset_of!(DriveGeometry, dg_DeviceType) - 28usize];
13515    ["Offset of field: DriveGeometry::dg_Flags"]
13516        [::core::mem::offset_of!(DriveGeometry, dg_Flags) - 29usize];
13517    ["Offset of field: DriveGeometry::dg_Reserved"]
13518        [::core::mem::offset_of!(DriveGeometry, dg_Reserved) - 30usize];
13519};
13520#[repr(C, packed(2))]
13521#[derive(Debug, Copy, Clone)]
13522pub struct TDU_PublicUnit {
13523    pub tdu_Unit: Unit,
13524    pub tdu_Comp01Track: UWORD,
13525    pub tdu_Comp10Track: UWORD,
13526    pub tdu_Comp11Track: UWORD,
13527    pub tdu_StepDelay: ULONG,
13528    pub tdu_SettleDelay: ULONG,
13529    pub tdu_RetryCnt: UBYTE,
13530    pub tdu_PubFlags: UBYTE,
13531    pub tdu_CurrTrk: UWORD,
13532    pub tdu_CalibrateDelay: ULONG,
13533    pub tdu_Counter: ULONG,
13534    pub tdu_PostWriteDelay: ULONG,
13535    pub tdu_SideSelectDelay: ULONG,
13536}
13537#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13538const _: () = {
13539    ["Size of TDU_PublicUnit"][::core::mem::size_of::<TDU_PublicUnit>() - 72usize];
13540    ["Alignment of TDU_PublicUnit"][::core::mem::align_of::<TDU_PublicUnit>() - 2usize];
13541    ["Offset of field: TDU_PublicUnit::tdu_Unit"]
13542        [::core::mem::offset_of!(TDU_PublicUnit, tdu_Unit) - 0usize];
13543    ["Offset of field: TDU_PublicUnit::tdu_Comp01Track"]
13544        [::core::mem::offset_of!(TDU_PublicUnit, tdu_Comp01Track) - 38usize];
13545    ["Offset of field: TDU_PublicUnit::tdu_Comp10Track"]
13546        [::core::mem::offset_of!(TDU_PublicUnit, tdu_Comp10Track) - 40usize];
13547    ["Offset of field: TDU_PublicUnit::tdu_Comp11Track"]
13548        [::core::mem::offset_of!(TDU_PublicUnit, tdu_Comp11Track) - 42usize];
13549    ["Offset of field: TDU_PublicUnit::tdu_StepDelay"]
13550        [::core::mem::offset_of!(TDU_PublicUnit, tdu_StepDelay) - 44usize];
13551    ["Offset of field: TDU_PublicUnit::tdu_SettleDelay"]
13552        [::core::mem::offset_of!(TDU_PublicUnit, tdu_SettleDelay) - 48usize];
13553    ["Offset of field: TDU_PublicUnit::tdu_RetryCnt"]
13554        [::core::mem::offset_of!(TDU_PublicUnit, tdu_RetryCnt) - 52usize];
13555    ["Offset of field: TDU_PublicUnit::tdu_PubFlags"]
13556        [::core::mem::offset_of!(TDU_PublicUnit, tdu_PubFlags) - 53usize];
13557    ["Offset of field: TDU_PublicUnit::tdu_CurrTrk"]
13558        [::core::mem::offset_of!(TDU_PublicUnit, tdu_CurrTrk) - 54usize];
13559    ["Offset of field: TDU_PublicUnit::tdu_CalibrateDelay"]
13560        [::core::mem::offset_of!(TDU_PublicUnit, tdu_CalibrateDelay) - 56usize];
13561    ["Offset of field: TDU_PublicUnit::tdu_Counter"]
13562        [::core::mem::offset_of!(TDU_PublicUnit, tdu_Counter) - 60usize];
13563    ["Offset of field: TDU_PublicUnit::tdu_PostWriteDelay"]
13564        [::core::mem::offset_of!(TDU_PublicUnit, tdu_PostWriteDelay) - 64usize];
13565    ["Offset of field: TDU_PublicUnit::tdu_SideSelectDelay"]
13566        [::core::mem::offset_of!(TDU_PublicUnit, tdu_SideSelectDelay) - 68usize];
13567};
13568#[repr(C, packed(2))]
13569#[derive(Debug, Copy, Clone)]
13570pub struct TrackFileChecksum {
13571    pub tfc_high: ULONG,
13572    pub tfc_low: ULONG,
13573}
13574#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13575const _: () = {
13576    ["Size of TrackFileChecksum"][::core::mem::size_of::<TrackFileChecksum>() - 8usize];
13577    ["Alignment of TrackFileChecksum"][::core::mem::align_of::<TrackFileChecksum>() - 2usize];
13578    ["Offset of field: TrackFileChecksum::tfc_high"]
13579        [::core::mem::offset_of!(TrackFileChecksum, tfc_high) - 0usize];
13580    ["Offset of field: TrackFileChecksum::tfc_low"]
13581        [::core::mem::offset_of!(TrackFileChecksum, tfc_low) - 4usize];
13582};
13583#[repr(C, packed(2))]
13584#[derive(Debug, Copy, Clone)]
13585pub struct TrackFileUnitData {
13586    pub tfud_Next: *mut TrackFileUnitData,
13587    pub tfud_Size: ULONG,
13588    pub tfud_UnitNumber: LONG,
13589    pub tfud_DriveType: LONG,
13590    pub tfud_DeviceName: STRPTR,
13591    pub tfud_FileName: STRPTR,
13592    pub tfud_IsActive: BOOL,
13593    pub tfud_IsWritable: BOOL,
13594    pub tfud_MediumIsPresent: BOOL,
13595    pub tfud_IsBusy: BOOL,
13596    pub tfud_ChecksumsEnabled: BOOL,
13597    pub tfud_Checksum: TrackFileChecksum,
13598    pub tfud_VolumeValid: BOOL,
13599    pub tfud_VolumeName: [TEXT; 32usize],
13600    pub tfud_VolumeDate: DateStamp,
13601    pub tfud_FileSysSignature: ULONG,
13602    pub tfud_BootBlockChecksum: ULONG,
13603    pub tfud_CacheEnabled: BOOL,
13604    pub tfud_CacheAccesses: ULONG,
13605    pub tfud_CacheMisses: ULONG,
13606}
13607#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13608const _: () = {
13609    ["Size of TrackFileUnitData"][::core::mem::size_of::<TrackFileUnitData>() - 106usize];
13610    ["Alignment of TrackFileUnitData"][::core::mem::align_of::<TrackFileUnitData>() - 2usize];
13611    ["Offset of field: TrackFileUnitData::tfud_Next"]
13612        [::core::mem::offset_of!(TrackFileUnitData, tfud_Next) - 0usize];
13613    ["Offset of field: TrackFileUnitData::tfud_Size"]
13614        [::core::mem::offset_of!(TrackFileUnitData, tfud_Size) - 4usize];
13615    ["Offset of field: TrackFileUnitData::tfud_UnitNumber"]
13616        [::core::mem::offset_of!(TrackFileUnitData, tfud_UnitNumber) - 8usize];
13617    ["Offset of field: TrackFileUnitData::tfud_DriveType"]
13618        [::core::mem::offset_of!(TrackFileUnitData, tfud_DriveType) - 12usize];
13619    ["Offset of field: TrackFileUnitData::tfud_DeviceName"]
13620        [::core::mem::offset_of!(TrackFileUnitData, tfud_DeviceName) - 16usize];
13621    ["Offset of field: TrackFileUnitData::tfud_FileName"]
13622        [::core::mem::offset_of!(TrackFileUnitData, tfud_FileName) - 20usize];
13623    ["Offset of field: TrackFileUnitData::tfud_IsActive"]
13624        [::core::mem::offset_of!(TrackFileUnitData, tfud_IsActive) - 24usize];
13625    ["Offset of field: TrackFileUnitData::tfud_IsWritable"]
13626        [::core::mem::offset_of!(TrackFileUnitData, tfud_IsWritable) - 26usize];
13627    ["Offset of field: TrackFileUnitData::tfud_MediumIsPresent"]
13628        [::core::mem::offset_of!(TrackFileUnitData, tfud_MediumIsPresent) - 28usize];
13629    ["Offset of field: TrackFileUnitData::tfud_IsBusy"]
13630        [::core::mem::offset_of!(TrackFileUnitData, tfud_IsBusy) - 30usize];
13631    ["Offset of field: TrackFileUnitData::tfud_ChecksumsEnabled"]
13632        [::core::mem::offset_of!(TrackFileUnitData, tfud_ChecksumsEnabled) - 32usize];
13633    ["Offset of field: TrackFileUnitData::tfud_Checksum"]
13634        [::core::mem::offset_of!(TrackFileUnitData, tfud_Checksum) - 34usize];
13635    ["Offset of field: TrackFileUnitData::tfud_VolumeValid"]
13636        [::core::mem::offset_of!(TrackFileUnitData, tfud_VolumeValid) - 42usize];
13637    ["Offset of field: TrackFileUnitData::tfud_VolumeName"]
13638        [::core::mem::offset_of!(TrackFileUnitData, tfud_VolumeName) - 44usize];
13639    ["Offset of field: TrackFileUnitData::tfud_VolumeDate"]
13640        [::core::mem::offset_of!(TrackFileUnitData, tfud_VolumeDate) - 76usize];
13641    ["Offset of field: TrackFileUnitData::tfud_FileSysSignature"]
13642        [::core::mem::offset_of!(TrackFileUnitData, tfud_FileSysSignature) - 88usize];
13643    ["Offset of field: TrackFileUnitData::tfud_BootBlockChecksum"]
13644        [::core::mem::offset_of!(TrackFileUnitData, tfud_BootBlockChecksum) - 92usize];
13645    ["Offset of field: TrackFileUnitData::tfud_CacheEnabled"]
13646        [::core::mem::offset_of!(TrackFileUnitData, tfud_CacheEnabled) - 96usize];
13647    ["Offset of field: TrackFileUnitData::tfud_CacheAccesses"]
13648        [::core::mem::offset_of!(TrackFileUnitData, tfud_CacheAccesses) - 98usize];
13649    ["Offset of field: TrackFileUnitData::tfud_CacheMisses"]
13650        [::core::mem::offset_of!(TrackFileUnitData, tfud_CacheMisses) - 102usize];
13651};
13652#[repr(C)]
13653#[derive(Debug, Copy, Clone)]
13654pub struct FontContents {
13655    pub fc_FileName: [TEXT; 256usize],
13656    pub fc_YSize: UWORD,
13657    pub fc_Style: UBYTE,
13658    pub fc_Flags: UBYTE,
13659}
13660#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13661const _: () = {
13662    ["Size of FontContents"][::core::mem::size_of::<FontContents>() - 260usize];
13663    ["Alignment of FontContents"][::core::mem::align_of::<FontContents>() - 2usize];
13664    ["Offset of field: FontContents::fc_FileName"]
13665        [::core::mem::offset_of!(FontContents, fc_FileName) - 0usize];
13666    ["Offset of field: FontContents::fc_YSize"]
13667        [::core::mem::offset_of!(FontContents, fc_YSize) - 256usize];
13668    ["Offset of field: FontContents::fc_Style"]
13669        [::core::mem::offset_of!(FontContents, fc_Style) - 258usize];
13670    ["Offset of field: FontContents::fc_Flags"]
13671        [::core::mem::offset_of!(FontContents, fc_Flags) - 259usize];
13672};
13673#[repr(C)]
13674#[derive(Debug, Copy, Clone)]
13675pub struct TFontContents {
13676    pub tfc_FileName: [TEXT; 254usize],
13677    pub tfc_TagCount: UWORD,
13678    pub tfc_YSize: UWORD,
13679    pub tfc_Style: UBYTE,
13680    pub tfc_Flags: UBYTE,
13681}
13682#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13683const _: () = {
13684    ["Size of TFontContents"][::core::mem::size_of::<TFontContents>() - 260usize];
13685    ["Alignment of TFontContents"][::core::mem::align_of::<TFontContents>() - 2usize];
13686    ["Offset of field: TFontContents::tfc_FileName"]
13687        [::core::mem::offset_of!(TFontContents, tfc_FileName) - 0usize];
13688    ["Offset of field: TFontContents::tfc_TagCount"]
13689        [::core::mem::offset_of!(TFontContents, tfc_TagCount) - 254usize];
13690    ["Offset of field: TFontContents::tfc_YSize"]
13691        [::core::mem::offset_of!(TFontContents, tfc_YSize) - 256usize];
13692    ["Offset of field: TFontContents::tfc_Style"]
13693        [::core::mem::offset_of!(TFontContents, tfc_Style) - 258usize];
13694    ["Offset of field: TFontContents::tfc_Flags"]
13695        [::core::mem::offset_of!(TFontContents, tfc_Flags) - 259usize];
13696};
13697#[repr(C)]
13698#[derive(Debug, Copy, Clone)]
13699pub struct FontContentsHeader {
13700    pub fch_FileID: UWORD,
13701    pub fch_NumEntries: UWORD,
13702}
13703#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13704const _: () = {
13705    ["Size of FontContentsHeader"][::core::mem::size_of::<FontContentsHeader>() - 4usize];
13706    ["Alignment of FontContentsHeader"][::core::mem::align_of::<FontContentsHeader>() - 2usize];
13707    ["Offset of field: FontContentsHeader::fch_FileID"]
13708        [::core::mem::offset_of!(FontContentsHeader, fch_FileID) - 0usize];
13709    ["Offset of field: FontContentsHeader::fch_NumEntries"]
13710        [::core::mem::offset_of!(FontContentsHeader, fch_NumEntries) - 2usize];
13711};
13712#[repr(C, packed(2))]
13713#[derive(Debug, Copy, Clone)]
13714pub struct DiskFontHeader {
13715    pub dfh_DF: Node,
13716    pub dfh_FileID: UWORD,
13717    pub dfh_Revision: UWORD,
13718    pub dfh_Segment: LONG,
13719    pub dfh_Name: [TEXT; 32usize],
13720    pub dfh_TF: TextFont,
13721}
13722#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13723const _: () = {
13724    ["Size of DiskFontHeader"][::core::mem::size_of::<DiskFontHeader>() - 106usize];
13725    ["Alignment of DiskFontHeader"][::core::mem::align_of::<DiskFontHeader>() - 2usize];
13726    ["Offset of field: DiskFontHeader::dfh_DF"]
13727        [::core::mem::offset_of!(DiskFontHeader, dfh_DF) - 0usize];
13728    ["Offset of field: DiskFontHeader::dfh_FileID"]
13729        [::core::mem::offset_of!(DiskFontHeader, dfh_FileID) - 14usize];
13730    ["Offset of field: DiskFontHeader::dfh_Revision"]
13731        [::core::mem::offset_of!(DiskFontHeader, dfh_Revision) - 16usize];
13732    ["Offset of field: DiskFontHeader::dfh_Segment"]
13733        [::core::mem::offset_of!(DiskFontHeader, dfh_Segment) - 18usize];
13734    ["Offset of field: DiskFontHeader::dfh_Name"]
13735        [::core::mem::offset_of!(DiskFontHeader, dfh_Name) - 22usize];
13736    ["Offset of field: DiskFontHeader::dfh_TF"]
13737        [::core::mem::offset_of!(DiskFontHeader, dfh_TF) - 54usize];
13738};
13739#[repr(C)]
13740#[derive(Debug, Copy, Clone)]
13741pub struct AvailFonts {
13742    pub af_Type: UWORD,
13743    pub af_Attr: TextAttr,
13744}
13745#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13746const _: () = {
13747    ["Size of AvailFonts"][::core::mem::size_of::<AvailFonts>() - 10usize];
13748    ["Alignment of AvailFonts"][::core::mem::align_of::<AvailFonts>() - 2usize];
13749    ["Offset of field: AvailFonts::af_Type"][::core::mem::offset_of!(AvailFonts, af_Type) - 0usize];
13750    ["Offset of field: AvailFonts::af_Attr"][::core::mem::offset_of!(AvailFonts, af_Attr) - 2usize];
13751};
13752#[repr(C)]
13753#[derive(Debug, Copy, Clone)]
13754pub struct TAvailFonts {
13755    pub taf_Type: UWORD,
13756    pub taf_Attr: TTextAttr,
13757}
13758#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13759const _: () = {
13760    ["Size of TAvailFonts"][::core::mem::size_of::<TAvailFonts>() - 14usize];
13761    ["Alignment of TAvailFonts"][::core::mem::align_of::<TAvailFonts>() - 2usize];
13762    ["Offset of field: TAvailFonts::taf_Type"]
13763        [::core::mem::offset_of!(TAvailFonts, taf_Type) - 0usize];
13764    ["Offset of field: TAvailFonts::taf_Attr"]
13765        [::core::mem::offset_of!(TAvailFonts, taf_Attr) - 2usize];
13766};
13767#[repr(C)]
13768#[derive(Debug, Copy, Clone)]
13769pub struct AvailFontsHeader {
13770    pub afh_NumEntries: UWORD,
13771}
13772#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13773const _: () = {
13774    ["Size of AvailFontsHeader"][::core::mem::size_of::<AvailFontsHeader>() - 2usize];
13775    ["Alignment of AvailFontsHeader"][::core::mem::align_of::<AvailFontsHeader>() - 2usize];
13776    ["Offset of field: AvailFontsHeader::afh_NumEntries"]
13777        [::core::mem::offset_of!(AvailFontsHeader, afh_NumEntries) - 0usize];
13778};
13779#[repr(C, packed(2))]
13780#[derive(Debug, Copy, Clone)]
13781pub struct EGlyphEngine {
13782    pub ege_Reserved: APTR,
13783    pub ege_BulletBase: *mut Library,
13784    pub ege_GlyphEngine: *mut GlyphEngine,
13785}
13786#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13787const _: () = {
13788    ["Size of EGlyphEngine"][::core::mem::size_of::<EGlyphEngine>() - 12usize];
13789    ["Alignment of EGlyphEngine"][::core::mem::align_of::<EGlyphEngine>() - 2usize];
13790    ["Offset of field: EGlyphEngine::ege_Reserved"]
13791        [::core::mem::offset_of!(EGlyphEngine, ege_Reserved) - 0usize];
13792    ["Offset of field: EGlyphEngine::ege_BulletBase"]
13793        [::core::mem::offset_of!(EGlyphEngine, ege_BulletBase) - 4usize];
13794    ["Offset of field: EGlyphEngine::ege_GlyphEngine"]
13795        [::core::mem::offset_of!(EGlyphEngine, ege_GlyphEngine) - 8usize];
13796};
13797#[repr(C, packed(2))]
13798#[derive(Debug, Copy, Clone)]
13799pub struct OutlineFont {
13800    pub olf_OTagPath: STRPTR,
13801    pub olf_OTagList: *mut TagItem,
13802    pub olf_EngineName: STRPTR,
13803    pub olf_LibraryName: STRPTR,
13804    pub olf_EEngine: EGlyphEngine,
13805    pub olf_Reserved: APTR,
13806    pub olf_UserData: APTR,
13807}
13808#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13809const _: () = {
13810    ["Size of OutlineFont"][::core::mem::size_of::<OutlineFont>() - 36usize];
13811    ["Alignment of OutlineFont"][::core::mem::align_of::<OutlineFont>() - 2usize];
13812    ["Offset of field: OutlineFont::olf_OTagPath"]
13813        [::core::mem::offset_of!(OutlineFont, olf_OTagPath) - 0usize];
13814    ["Offset of field: OutlineFont::olf_OTagList"]
13815        [::core::mem::offset_of!(OutlineFont, olf_OTagList) - 4usize];
13816    ["Offset of field: OutlineFont::olf_EngineName"]
13817        [::core::mem::offset_of!(OutlineFont, olf_EngineName) - 8usize];
13818    ["Offset of field: OutlineFont::olf_LibraryName"]
13819        [::core::mem::offset_of!(OutlineFont, olf_LibraryName) - 12usize];
13820    ["Offset of field: OutlineFont::olf_EEngine"]
13821        [::core::mem::offset_of!(OutlineFont, olf_EEngine) - 16usize];
13822    ["Offset of field: OutlineFont::olf_Reserved"]
13823        [::core::mem::offset_of!(OutlineFont, olf_Reserved) - 28usize];
13824    ["Offset of field: OutlineFont::olf_UserData"]
13825        [::core::mem::offset_of!(OutlineFont, olf_UserData) - 32usize];
13826};
13827#[repr(C, packed(2))]
13828#[derive(Debug, Copy, Clone)]
13829pub struct GlyphEngine {
13830    pub gle_Library: *mut Library,
13831    pub gle_Name: STRPTR,
13832}
13833#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13834const _: () = {
13835    ["Size of GlyphEngine"][::core::mem::size_of::<GlyphEngine>() - 8usize];
13836    ["Alignment of GlyphEngine"][::core::mem::align_of::<GlyphEngine>() - 2usize];
13837    ["Offset of field: GlyphEngine::gle_Library"]
13838        [::core::mem::offset_of!(GlyphEngine, gle_Library) - 0usize];
13839    ["Offset of field: GlyphEngine::gle_Name"]
13840        [::core::mem::offset_of!(GlyphEngine, gle_Name) - 4usize];
13841};
13842pub type FIXED = LONG;
13843#[repr(C, packed(2))]
13844#[derive(Debug, Copy, Clone)]
13845pub struct GlyphMap {
13846    pub glm_BMModulo: UWORD,
13847    pub glm_BMRows: UWORD,
13848    pub glm_BlackLeft: UWORD,
13849    pub glm_BlackTop: UWORD,
13850    pub glm_BlackWidth: UWORD,
13851    pub glm_BlackHeight: UWORD,
13852    pub glm_XOrigin: FIXED,
13853    pub glm_YOrigin: FIXED,
13854    pub glm_X0: WORD,
13855    pub glm_Y0: WORD,
13856    pub glm_X1: WORD,
13857    pub glm_Y1: WORD,
13858    pub glm_Width: FIXED,
13859    pub glm_BitMap: *mut UBYTE,
13860}
13861#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13862const _: () = {
13863    ["Size of GlyphMap"][::core::mem::size_of::<GlyphMap>() - 36usize];
13864    ["Alignment of GlyphMap"][::core::mem::align_of::<GlyphMap>() - 2usize];
13865    ["Offset of field: GlyphMap::glm_BMModulo"]
13866        [::core::mem::offset_of!(GlyphMap, glm_BMModulo) - 0usize];
13867    ["Offset of field: GlyphMap::glm_BMRows"]
13868        [::core::mem::offset_of!(GlyphMap, glm_BMRows) - 2usize];
13869    ["Offset of field: GlyphMap::glm_BlackLeft"]
13870        [::core::mem::offset_of!(GlyphMap, glm_BlackLeft) - 4usize];
13871    ["Offset of field: GlyphMap::glm_BlackTop"]
13872        [::core::mem::offset_of!(GlyphMap, glm_BlackTop) - 6usize];
13873    ["Offset of field: GlyphMap::glm_BlackWidth"]
13874        [::core::mem::offset_of!(GlyphMap, glm_BlackWidth) - 8usize];
13875    ["Offset of field: GlyphMap::glm_BlackHeight"]
13876        [::core::mem::offset_of!(GlyphMap, glm_BlackHeight) - 10usize];
13877    ["Offset of field: GlyphMap::glm_XOrigin"]
13878        [::core::mem::offset_of!(GlyphMap, glm_XOrigin) - 12usize];
13879    ["Offset of field: GlyphMap::glm_YOrigin"]
13880        [::core::mem::offset_of!(GlyphMap, glm_YOrigin) - 16usize];
13881    ["Offset of field: GlyphMap::glm_X0"][::core::mem::offset_of!(GlyphMap, glm_X0) - 20usize];
13882    ["Offset of field: GlyphMap::glm_Y0"][::core::mem::offset_of!(GlyphMap, glm_Y0) - 22usize];
13883    ["Offset of field: GlyphMap::glm_X1"][::core::mem::offset_of!(GlyphMap, glm_X1) - 24usize];
13884    ["Offset of field: GlyphMap::glm_Y1"][::core::mem::offset_of!(GlyphMap, glm_Y1) - 26usize];
13885    ["Offset of field: GlyphMap::glm_Width"]
13886        [::core::mem::offset_of!(GlyphMap, glm_Width) - 28usize];
13887    ["Offset of field: GlyphMap::glm_BitMap"]
13888        [::core::mem::offset_of!(GlyphMap, glm_BitMap) - 32usize];
13889};
13890#[repr(C, packed(2))]
13891#[derive(Debug, Copy, Clone)]
13892pub struct GlyphWidthEntry {
13893    pub gwe_Node: MinNode,
13894    pub gwe_Code: UWORD,
13895    pub gwe_Width: FIXED,
13896}
13897#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13898const _: () = {
13899    ["Size of GlyphWidthEntry"][::core::mem::size_of::<GlyphWidthEntry>() - 14usize];
13900    ["Alignment of GlyphWidthEntry"][::core::mem::align_of::<GlyphWidthEntry>() - 2usize];
13901    ["Offset of field: GlyphWidthEntry::gwe_Node"]
13902        [::core::mem::offset_of!(GlyphWidthEntry, gwe_Node) - 0usize];
13903    ["Offset of field: GlyphWidthEntry::gwe_Code"]
13904        [::core::mem::offset_of!(GlyphWidthEntry, gwe_Code) - 8usize];
13905    ["Offset of field: GlyphWidthEntry::gwe_Width"]
13906        [::core::mem::offset_of!(GlyphWidthEntry, gwe_Width) - 10usize];
13907};
13908#[repr(C, packed(2))]
13909#[derive(Debug, Copy, Clone)]
13910pub struct GlyphWidthEntry32 {
13911    pub gwe32_Node: MinNode,
13912    pub gwe32_reserved: UWORD,
13913    pub gwe32_Width: FIXED,
13914    pub gwe32_Code: ULONG,
13915}
13916#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13917const _: () = {
13918    ["Size of GlyphWidthEntry32"][::core::mem::size_of::<GlyphWidthEntry32>() - 18usize];
13919    ["Alignment of GlyphWidthEntry32"][::core::mem::align_of::<GlyphWidthEntry32>() - 2usize];
13920    ["Offset of field: GlyphWidthEntry32::gwe32_Node"]
13921        [::core::mem::offset_of!(GlyphWidthEntry32, gwe32_Node) - 0usize];
13922    ["Offset of field: GlyphWidthEntry32::gwe32_reserved"]
13923        [::core::mem::offset_of!(GlyphWidthEntry32, gwe32_reserved) - 8usize];
13924    ["Offset of field: GlyphWidthEntry32::gwe32_Width"]
13925        [::core::mem::offset_of!(GlyphWidthEntry32, gwe32_Width) - 10usize];
13926    ["Offset of field: GlyphWidthEntry32::gwe32_Code"]
13927        [::core::mem::offset_of!(GlyphWidthEntry32, gwe32_Code) - 14usize];
13928};
13929#[repr(C, packed(2))]
13930#[derive(Debug, Copy, Clone)]
13931pub struct DateTime {
13932    pub dat_Stamp: DateStamp,
13933    pub dat_Format: UBYTE,
13934    pub dat_Flags: UBYTE,
13935    pub dat_StrDay: STRPTR,
13936    pub dat_StrDate: STRPTR,
13937    pub dat_StrTime: STRPTR,
13938}
13939#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13940const _: () = {
13941    ["Size of DateTime"][::core::mem::size_of::<DateTime>() - 26usize];
13942    ["Alignment of DateTime"][::core::mem::align_of::<DateTime>() - 2usize];
13943    ["Offset of field: DateTime::dat_Stamp"][::core::mem::offset_of!(DateTime, dat_Stamp) - 0usize];
13944    ["Offset of field: DateTime::dat_Format"]
13945        [::core::mem::offset_of!(DateTime, dat_Format) - 12usize];
13946    ["Offset of field: DateTime::dat_Flags"]
13947        [::core::mem::offset_of!(DateTime, dat_Flags) - 13usize];
13948    ["Offset of field: DateTime::dat_StrDay"]
13949        [::core::mem::offset_of!(DateTime, dat_StrDay) - 14usize];
13950    ["Offset of field: DateTime::dat_StrDate"]
13951        [::core::mem::offset_of!(DateTime, dat_StrDate) - 18usize];
13952    ["Offset of field: DateTime::dat_StrTime"]
13953        [::core::mem::offset_of!(DateTime, dat_StrTime) - 22usize];
13954};
13955#[repr(C, packed(2))]
13956#[derive(Debug, Copy, Clone)]
13957pub struct AnchorPath {
13958    pub ap_Base: *mut AChain,
13959    pub ap_Last: *mut AChain,
13960    pub ap_BreakBits: LONG,
13961    pub ap_FoundBreak: LONG,
13962    pub ap_Flags: BYTE,
13963    pub ap_Reserved: BYTE,
13964    pub ap_Strlen: WORD,
13965    pub ap_Info: FileInfoBlock,
13966    pub ap_Buf: [TEXT; 1usize],
13967}
13968#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13969const _: () = {
13970    ["Size of AnchorPath"][::core::mem::size_of::<AnchorPath>() - 282usize];
13971    ["Alignment of AnchorPath"][::core::mem::align_of::<AnchorPath>() - 2usize];
13972    ["Offset of field: AnchorPath::ap_Base"][::core::mem::offset_of!(AnchorPath, ap_Base) - 0usize];
13973    ["Offset of field: AnchorPath::ap_Last"][::core::mem::offset_of!(AnchorPath, ap_Last) - 4usize];
13974    ["Offset of field: AnchorPath::ap_BreakBits"]
13975        [::core::mem::offset_of!(AnchorPath, ap_BreakBits) - 8usize];
13976    ["Offset of field: AnchorPath::ap_FoundBreak"]
13977        [::core::mem::offset_of!(AnchorPath, ap_FoundBreak) - 12usize];
13978    ["Offset of field: AnchorPath::ap_Flags"]
13979        [::core::mem::offset_of!(AnchorPath, ap_Flags) - 16usize];
13980    ["Offset of field: AnchorPath::ap_Reserved"]
13981        [::core::mem::offset_of!(AnchorPath, ap_Reserved) - 17usize];
13982    ["Offset of field: AnchorPath::ap_Strlen"]
13983        [::core::mem::offset_of!(AnchorPath, ap_Strlen) - 18usize];
13984    ["Offset of field: AnchorPath::ap_Info"]
13985        [::core::mem::offset_of!(AnchorPath, ap_Info) - 20usize];
13986    ["Offset of field: AnchorPath::ap_Buf"][::core::mem::offset_of!(AnchorPath, ap_Buf) - 280usize];
13987};
13988#[repr(C, packed(2))]
13989#[derive(Debug, Copy, Clone)]
13990pub struct AChain {
13991    pub an_Child: *mut AChain,
13992    pub an_Parent: *mut AChain,
13993    pub an_Lock: BPTR,
13994    pub an_Info: FileInfoBlock,
13995    pub an_Flags: BYTE,
13996    pub an_String: [TEXT; 1usize],
13997}
13998#[allow(clippy::unnecessary_operation, clippy::identity_op)]
13999const _: () = {
14000    ["Size of AChain"][::core::mem::size_of::<AChain>() - 274usize];
14001    ["Alignment of AChain"][::core::mem::align_of::<AChain>() - 2usize];
14002    ["Offset of field: AChain::an_Child"][::core::mem::offset_of!(AChain, an_Child) - 0usize];
14003    ["Offset of field: AChain::an_Parent"][::core::mem::offset_of!(AChain, an_Parent) - 4usize];
14004    ["Offset of field: AChain::an_Lock"][::core::mem::offset_of!(AChain, an_Lock) - 8usize];
14005    ["Offset of field: AChain::an_Info"][::core::mem::offset_of!(AChain, an_Info) - 12usize];
14006    ["Offset of field: AChain::an_Flags"][::core::mem::offset_of!(AChain, an_Flags) - 272usize];
14007    ["Offset of field: AChain::an_String"][::core::mem::offset_of!(AChain, an_String) - 273usize];
14008};
14009#[repr(C, packed(2))]
14010#[derive(Debug, Copy, Clone)]
14011pub struct ExAllData {
14012    pub ed_Next: *mut ExAllData,
14013    pub ed_Name: STRPTR,
14014    pub ed_Type: LONG,
14015    pub ed_Size: ULONG,
14016    pub ed_Prot: ULONG,
14017    pub ed_Days: ULONG,
14018    pub ed_Mins: ULONG,
14019    pub ed_Ticks: ULONG,
14020    pub ed_Comment: STRPTR,
14021    pub ed_OwnerUID: UWORD,
14022    pub ed_OwnerGID: UWORD,
14023}
14024#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14025const _: () = {
14026    ["Size of ExAllData"][::core::mem::size_of::<ExAllData>() - 40usize];
14027    ["Alignment of ExAllData"][::core::mem::align_of::<ExAllData>() - 2usize];
14028    ["Offset of field: ExAllData::ed_Next"][::core::mem::offset_of!(ExAllData, ed_Next) - 0usize];
14029    ["Offset of field: ExAllData::ed_Name"][::core::mem::offset_of!(ExAllData, ed_Name) - 4usize];
14030    ["Offset of field: ExAllData::ed_Type"][::core::mem::offset_of!(ExAllData, ed_Type) - 8usize];
14031    ["Offset of field: ExAllData::ed_Size"][::core::mem::offset_of!(ExAllData, ed_Size) - 12usize];
14032    ["Offset of field: ExAllData::ed_Prot"][::core::mem::offset_of!(ExAllData, ed_Prot) - 16usize];
14033    ["Offset of field: ExAllData::ed_Days"][::core::mem::offset_of!(ExAllData, ed_Days) - 20usize];
14034    ["Offset of field: ExAllData::ed_Mins"][::core::mem::offset_of!(ExAllData, ed_Mins) - 24usize];
14035    ["Offset of field: ExAllData::ed_Ticks"]
14036        [::core::mem::offset_of!(ExAllData, ed_Ticks) - 28usize];
14037    ["Offset of field: ExAllData::ed_Comment"]
14038        [::core::mem::offset_of!(ExAllData, ed_Comment) - 32usize];
14039    ["Offset of field: ExAllData::ed_OwnerUID"]
14040        [::core::mem::offset_of!(ExAllData, ed_OwnerUID) - 36usize];
14041    ["Offset of field: ExAllData::ed_OwnerGID"]
14042        [::core::mem::offset_of!(ExAllData, ed_OwnerGID) - 38usize];
14043};
14044#[repr(C, packed(2))]
14045#[derive(Debug, Copy, Clone)]
14046pub struct ExAllControl {
14047    pub eac_Entries: ULONG,
14048    pub eac_LastKey: ULONG,
14049    pub eac_MatchString: STRPTR,
14050    pub eac_MatchFunc: *mut Hook,
14051}
14052#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14053const _: () = {
14054    ["Size of ExAllControl"][::core::mem::size_of::<ExAllControl>() - 16usize];
14055    ["Alignment of ExAllControl"][::core::mem::align_of::<ExAllControl>() - 2usize];
14056    ["Offset of field: ExAllControl::eac_Entries"]
14057        [::core::mem::offset_of!(ExAllControl, eac_Entries) - 0usize];
14058    ["Offset of field: ExAllControl::eac_LastKey"]
14059        [::core::mem::offset_of!(ExAllControl, eac_LastKey) - 4usize];
14060    ["Offset of field: ExAllControl::eac_MatchString"]
14061        [::core::mem::offset_of!(ExAllControl, eac_MatchString) - 8usize];
14062    ["Offset of field: ExAllControl::eac_MatchFunc"]
14063        [::core::mem::offset_of!(ExAllControl, eac_MatchFunc) - 12usize];
14064};
14065#[repr(C, packed(2))]
14066#[derive(Debug, Copy, Clone)]
14067pub struct DosEnvec {
14068    pub de_TableSize: ULONG,
14069    pub de_SizeBlock: ULONG,
14070    pub de_SecOrg: ULONG,
14071    pub de_Surfaces: ULONG,
14072    pub de_SectorPerBlock: ULONG,
14073    pub de_BlocksPerTrack: ULONG,
14074    pub de_Reserved: ULONG,
14075    pub de_PreAlloc: ULONG,
14076    pub de_Interleave: ULONG,
14077    pub de_LowCyl: ULONG,
14078    pub de_HighCyl: ULONG,
14079    pub de_NumBuffers: ULONG,
14080    pub de_BufMemType: ULONG,
14081    pub de_MaxTransfer: ULONG,
14082    pub de_Mask: ULONG,
14083    pub de_BootPri: LONG,
14084    pub de_DosType: ULONG,
14085    pub de_Baud: ULONG,
14086    pub de_Control: ULONG,
14087    pub de_BootBlocks: ULONG,
14088}
14089#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14090const _: () = {
14091    ["Size of DosEnvec"][::core::mem::size_of::<DosEnvec>() - 80usize];
14092    ["Alignment of DosEnvec"][::core::mem::align_of::<DosEnvec>() - 2usize];
14093    ["Offset of field: DosEnvec::de_TableSize"]
14094        [::core::mem::offset_of!(DosEnvec, de_TableSize) - 0usize];
14095    ["Offset of field: DosEnvec::de_SizeBlock"]
14096        [::core::mem::offset_of!(DosEnvec, de_SizeBlock) - 4usize];
14097    ["Offset of field: DosEnvec::de_SecOrg"][::core::mem::offset_of!(DosEnvec, de_SecOrg) - 8usize];
14098    ["Offset of field: DosEnvec::de_Surfaces"]
14099        [::core::mem::offset_of!(DosEnvec, de_Surfaces) - 12usize];
14100    ["Offset of field: DosEnvec::de_SectorPerBlock"]
14101        [::core::mem::offset_of!(DosEnvec, de_SectorPerBlock) - 16usize];
14102    ["Offset of field: DosEnvec::de_BlocksPerTrack"]
14103        [::core::mem::offset_of!(DosEnvec, de_BlocksPerTrack) - 20usize];
14104    ["Offset of field: DosEnvec::de_Reserved"]
14105        [::core::mem::offset_of!(DosEnvec, de_Reserved) - 24usize];
14106    ["Offset of field: DosEnvec::de_PreAlloc"]
14107        [::core::mem::offset_of!(DosEnvec, de_PreAlloc) - 28usize];
14108    ["Offset of field: DosEnvec::de_Interleave"]
14109        [::core::mem::offset_of!(DosEnvec, de_Interleave) - 32usize];
14110    ["Offset of field: DosEnvec::de_LowCyl"]
14111        [::core::mem::offset_of!(DosEnvec, de_LowCyl) - 36usize];
14112    ["Offset of field: DosEnvec::de_HighCyl"]
14113        [::core::mem::offset_of!(DosEnvec, de_HighCyl) - 40usize];
14114    ["Offset of field: DosEnvec::de_NumBuffers"]
14115        [::core::mem::offset_of!(DosEnvec, de_NumBuffers) - 44usize];
14116    ["Offset of field: DosEnvec::de_BufMemType"]
14117        [::core::mem::offset_of!(DosEnvec, de_BufMemType) - 48usize];
14118    ["Offset of field: DosEnvec::de_MaxTransfer"]
14119        [::core::mem::offset_of!(DosEnvec, de_MaxTransfer) - 52usize];
14120    ["Offset of field: DosEnvec::de_Mask"][::core::mem::offset_of!(DosEnvec, de_Mask) - 56usize];
14121    ["Offset of field: DosEnvec::de_BootPri"]
14122        [::core::mem::offset_of!(DosEnvec, de_BootPri) - 60usize];
14123    ["Offset of field: DosEnvec::de_DosType"]
14124        [::core::mem::offset_of!(DosEnvec, de_DosType) - 64usize];
14125    ["Offset of field: DosEnvec::de_Baud"][::core::mem::offset_of!(DosEnvec, de_Baud) - 68usize];
14126    ["Offset of field: DosEnvec::de_Control"]
14127        [::core::mem::offset_of!(DosEnvec, de_Control) - 72usize];
14128    ["Offset of field: DosEnvec::de_BootBlocks"]
14129        [::core::mem::offset_of!(DosEnvec, de_BootBlocks) - 76usize];
14130};
14131#[repr(C, packed(2))]
14132#[derive(Debug, Copy, Clone)]
14133pub struct FileSysStartupMsg {
14134    pub fssm_Unit: ULONG,
14135    pub fssm_Device: BSTR,
14136    pub fssm_Environ: BPTR,
14137    pub fssm_Flags: ULONG,
14138}
14139#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14140const _: () = {
14141    ["Size of FileSysStartupMsg"][::core::mem::size_of::<FileSysStartupMsg>() - 16usize];
14142    ["Alignment of FileSysStartupMsg"][::core::mem::align_of::<FileSysStartupMsg>() - 2usize];
14143    ["Offset of field: FileSysStartupMsg::fssm_Unit"]
14144        [::core::mem::offset_of!(FileSysStartupMsg, fssm_Unit) - 0usize];
14145    ["Offset of field: FileSysStartupMsg::fssm_Device"]
14146        [::core::mem::offset_of!(FileSysStartupMsg, fssm_Device) - 4usize];
14147    ["Offset of field: FileSysStartupMsg::fssm_Environ"]
14148        [::core::mem::offset_of!(FileSysStartupMsg, fssm_Environ) - 8usize];
14149    ["Offset of field: FileSysStartupMsg::fssm_Flags"]
14150        [::core::mem::offset_of!(FileSysStartupMsg, fssm_Flags) - 12usize];
14151};
14152#[repr(C, packed(2))]
14153#[derive(Debug, Copy, Clone)]
14154pub struct DeviceNode {
14155    pub dn_Next: BPTR,
14156    pub dn_Type: ULONG,
14157    pub dn_Task: *mut MsgPort,
14158    pub dn_Lock: BPTR,
14159    pub dn_Handler: BSTR,
14160    pub dn_StackSize: ULONG,
14161    pub dn_Priority: LONG,
14162    pub dn_Startup: BPTR,
14163    pub dn_SegList: BPTR,
14164    pub dn_GlobalVec: BPTR,
14165    pub dn_Name: BSTR,
14166}
14167#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14168const _: () = {
14169    ["Size of DeviceNode"][::core::mem::size_of::<DeviceNode>() - 44usize];
14170    ["Alignment of DeviceNode"][::core::mem::align_of::<DeviceNode>() - 2usize];
14171    ["Offset of field: DeviceNode::dn_Next"][::core::mem::offset_of!(DeviceNode, dn_Next) - 0usize];
14172    ["Offset of field: DeviceNode::dn_Type"][::core::mem::offset_of!(DeviceNode, dn_Type) - 4usize];
14173    ["Offset of field: DeviceNode::dn_Task"][::core::mem::offset_of!(DeviceNode, dn_Task) - 8usize];
14174    ["Offset of field: DeviceNode::dn_Lock"]
14175        [::core::mem::offset_of!(DeviceNode, dn_Lock) - 12usize];
14176    ["Offset of field: DeviceNode::dn_Handler"]
14177        [::core::mem::offset_of!(DeviceNode, dn_Handler) - 16usize];
14178    ["Offset of field: DeviceNode::dn_StackSize"]
14179        [::core::mem::offset_of!(DeviceNode, dn_StackSize) - 20usize];
14180    ["Offset of field: DeviceNode::dn_Priority"]
14181        [::core::mem::offset_of!(DeviceNode, dn_Priority) - 24usize];
14182    ["Offset of field: DeviceNode::dn_Startup"]
14183        [::core::mem::offset_of!(DeviceNode, dn_Startup) - 28usize];
14184    ["Offset of field: DeviceNode::dn_SegList"]
14185        [::core::mem::offset_of!(DeviceNode, dn_SegList) - 32usize];
14186    ["Offset of field: DeviceNode::dn_GlobalVec"]
14187        [::core::mem::offset_of!(DeviceNode, dn_GlobalVec) - 36usize];
14188    ["Offset of field: DeviceNode::dn_Name"]
14189        [::core::mem::offset_of!(DeviceNode, dn_Name) - 40usize];
14190};
14191#[repr(C, packed(2))]
14192#[derive(Debug, Copy, Clone)]
14193pub struct NotifyMessage {
14194    pub nm_ExecMessage: Message,
14195    pub nm_Class: ULONG,
14196    pub nm_Code: UWORD,
14197    pub nm_NReq: *mut NotifyRequest,
14198    pub nm_DoNotTouch: ULONG,
14199    pub nm_DoNotTouch2: ULONG,
14200}
14201#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14202const _: () = {
14203    ["Size of NotifyMessage"][::core::mem::size_of::<NotifyMessage>() - 38usize];
14204    ["Alignment of NotifyMessage"][::core::mem::align_of::<NotifyMessage>() - 2usize];
14205    ["Offset of field: NotifyMessage::nm_ExecMessage"]
14206        [::core::mem::offset_of!(NotifyMessage, nm_ExecMessage) - 0usize];
14207    ["Offset of field: NotifyMessage::nm_Class"]
14208        [::core::mem::offset_of!(NotifyMessage, nm_Class) - 20usize];
14209    ["Offset of field: NotifyMessage::nm_Code"]
14210        [::core::mem::offset_of!(NotifyMessage, nm_Code) - 24usize];
14211    ["Offset of field: NotifyMessage::nm_NReq"]
14212        [::core::mem::offset_of!(NotifyMessage, nm_NReq) - 26usize];
14213    ["Offset of field: NotifyMessage::nm_DoNotTouch"]
14214        [::core::mem::offset_of!(NotifyMessage, nm_DoNotTouch) - 30usize];
14215    ["Offset of field: NotifyMessage::nm_DoNotTouch2"]
14216        [::core::mem::offset_of!(NotifyMessage, nm_DoNotTouch2) - 34usize];
14217};
14218#[repr(C, packed(2))]
14219#[derive(Copy, Clone)]
14220pub struct NotifyRequest {
14221    pub nr_Name: STRPTR,
14222    pub nr_FullName: STRPTR,
14223    pub nr_UserData: ULONG,
14224    pub nr_Flags: ULONG,
14225    pub nr_stuff: NotifyRequest__bindgen_ty_1,
14226    pub nr_Reserved: [ULONG; 4usize],
14227    pub nr_MsgCount: ULONG,
14228    pub nr_Handler: *mut MsgPort,
14229}
14230#[repr(C)]
14231#[derive(Copy, Clone)]
14232pub union NotifyRequest__bindgen_ty_1 {
14233    pub nr_Msg: NotifyRequest__bindgen_ty_1__bindgen_ty_1,
14234    pub nr_Signal: NotifyRequest__bindgen_ty_1__bindgen_ty_2,
14235}
14236#[repr(C, packed(2))]
14237#[derive(Debug, Copy, Clone)]
14238pub struct NotifyRequest__bindgen_ty_1__bindgen_ty_1 {
14239    pub nr_Port: *mut MsgPort,
14240}
14241#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14242const _: () = {
14243    ["Size of NotifyRequest__bindgen_ty_1__bindgen_ty_1"]
14244        [::core::mem::size_of::<NotifyRequest__bindgen_ty_1__bindgen_ty_1>() - 4usize];
14245    ["Alignment of NotifyRequest__bindgen_ty_1__bindgen_ty_1"]
14246        [::core::mem::align_of::<NotifyRequest__bindgen_ty_1__bindgen_ty_1>() - 2usize];
14247    ["Offset of field: NotifyRequest__bindgen_ty_1__bindgen_ty_1::nr_Port"]
14248        [::core::mem::offset_of!(NotifyRequest__bindgen_ty_1__bindgen_ty_1, nr_Port) - 0usize];
14249};
14250#[repr(C, packed(2))]
14251#[derive(Debug, Copy, Clone)]
14252pub struct NotifyRequest__bindgen_ty_1__bindgen_ty_2 {
14253    pub nr_Task: *mut Task,
14254    pub nr_SignalNum: UBYTE,
14255    pub nr_pad: [UBYTE; 3usize],
14256}
14257#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14258const _: () = {
14259    ["Size of NotifyRequest__bindgen_ty_1__bindgen_ty_2"]
14260        [::core::mem::size_of::<NotifyRequest__bindgen_ty_1__bindgen_ty_2>() - 8usize];
14261    ["Alignment of NotifyRequest__bindgen_ty_1__bindgen_ty_2"]
14262        [::core::mem::align_of::<NotifyRequest__bindgen_ty_1__bindgen_ty_2>() - 2usize];
14263    ["Offset of field: NotifyRequest__bindgen_ty_1__bindgen_ty_2::nr_Task"]
14264        [::core::mem::offset_of!(NotifyRequest__bindgen_ty_1__bindgen_ty_2, nr_Task) - 0usize];
14265    ["Offset of field: NotifyRequest__bindgen_ty_1__bindgen_ty_2::nr_SignalNum"]
14266        [::core::mem::offset_of!(NotifyRequest__bindgen_ty_1__bindgen_ty_2, nr_SignalNum) - 4usize];
14267    ["Offset of field: NotifyRequest__bindgen_ty_1__bindgen_ty_2::nr_pad"]
14268        [::core::mem::offset_of!(NotifyRequest__bindgen_ty_1__bindgen_ty_2, nr_pad) - 5usize];
14269};
14270#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14271const _: () = {
14272    ["Size of NotifyRequest__bindgen_ty_1"]
14273        [::core::mem::size_of::<NotifyRequest__bindgen_ty_1>() - 8usize];
14274    ["Alignment of NotifyRequest__bindgen_ty_1"]
14275        [::core::mem::align_of::<NotifyRequest__bindgen_ty_1>() - 2usize];
14276    ["Offset of field: NotifyRequest__bindgen_ty_1::nr_Msg"]
14277        [::core::mem::offset_of!(NotifyRequest__bindgen_ty_1, nr_Msg) - 0usize];
14278    ["Offset of field: NotifyRequest__bindgen_ty_1::nr_Signal"]
14279        [::core::mem::offset_of!(NotifyRequest__bindgen_ty_1, nr_Signal) - 0usize];
14280};
14281#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14282const _: () = {
14283    ["Size of NotifyRequest"][::core::mem::size_of::<NotifyRequest>() - 48usize];
14284    ["Alignment of NotifyRequest"][::core::mem::align_of::<NotifyRequest>() - 2usize];
14285    ["Offset of field: NotifyRequest::nr_Name"]
14286        [::core::mem::offset_of!(NotifyRequest, nr_Name) - 0usize];
14287    ["Offset of field: NotifyRequest::nr_FullName"]
14288        [::core::mem::offset_of!(NotifyRequest, nr_FullName) - 4usize];
14289    ["Offset of field: NotifyRequest::nr_UserData"]
14290        [::core::mem::offset_of!(NotifyRequest, nr_UserData) - 8usize];
14291    ["Offset of field: NotifyRequest::nr_Flags"]
14292        [::core::mem::offset_of!(NotifyRequest, nr_Flags) - 12usize];
14293    ["Offset of field: NotifyRequest::nr_stuff"]
14294        [::core::mem::offset_of!(NotifyRequest, nr_stuff) - 16usize];
14295    ["Offset of field: NotifyRequest::nr_Reserved"]
14296        [::core::mem::offset_of!(NotifyRequest, nr_Reserved) - 24usize];
14297    ["Offset of field: NotifyRequest::nr_MsgCount"]
14298        [::core::mem::offset_of!(NotifyRequest, nr_MsgCount) - 40usize];
14299    ["Offset of field: NotifyRequest::nr_Handler"]
14300        [::core::mem::offset_of!(NotifyRequest, nr_Handler) - 44usize];
14301};
14302#[repr(C, packed(2))]
14303#[derive(Debug, Copy, Clone)]
14304pub struct RecordLock {
14305    pub rec_FH: BPTR,
14306    pub rec_Offset: ULONG,
14307    pub rec_Length: ULONG,
14308    pub rec_Mode: ULONG,
14309}
14310#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14311const _: () = {
14312    ["Size of RecordLock"][::core::mem::size_of::<RecordLock>() - 16usize];
14313    ["Alignment of RecordLock"][::core::mem::align_of::<RecordLock>() - 2usize];
14314    ["Offset of field: RecordLock::rec_FH"][::core::mem::offset_of!(RecordLock, rec_FH) - 0usize];
14315    ["Offset of field: RecordLock::rec_Offset"]
14316        [::core::mem::offset_of!(RecordLock, rec_Offset) - 4usize];
14317    ["Offset of field: RecordLock::rec_Length"]
14318        [::core::mem::offset_of!(RecordLock, rec_Length) - 8usize];
14319    ["Offset of field: RecordLock::rec_Mode"]
14320        [::core::mem::offset_of!(RecordLock, rec_Mode) - 12usize];
14321};
14322#[repr(C, packed(2))]
14323#[derive(Debug, Copy, Clone)]
14324pub struct ExtendedCommandLineInterface {
14325    pub cle_Result2: LONG,
14326    pub cle_SetName: BSTR,
14327    pub cle_CommandDir: BPTR,
14328    pub cle_ReturnCode: LONG,
14329    pub cle_CommandName: BSTR,
14330    pub cle_FailLevel: LONG,
14331    pub cle_Prompt: BSTR,
14332    pub cle_StandardInput: BPTR,
14333    pub cle_CurrentInput: BPTR,
14334    pub cle_CommandFile: BSTR,
14335    pub cle_Interactive: LONG,
14336    pub cle_Background: LONG,
14337    pub cle_CurrentOutput: BPTR,
14338    pub cle_DefaultStack: LONG,
14339    pub cle_StandardOutput: BPTR,
14340    pub cle_Module: BPTR,
14341    pub cle_Hook: Hook,
14342    pub cle_This: *mut ExtendedCommandLineInterface,
14343    pub cle_Version: LONG,
14344}
14345#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14346const _: () = {
14347    ["Size of ExtendedCommandLineInterface"]
14348        [::core::mem::size_of::<ExtendedCommandLineInterface>() - 92usize];
14349    ["Alignment of ExtendedCommandLineInterface"]
14350        [::core::mem::align_of::<ExtendedCommandLineInterface>() - 2usize];
14351    ["Offset of field: ExtendedCommandLineInterface::cle_Result2"]
14352        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_Result2) - 0usize];
14353    ["Offset of field: ExtendedCommandLineInterface::cle_SetName"]
14354        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_SetName) - 4usize];
14355    ["Offset of field: ExtendedCommandLineInterface::cle_CommandDir"]
14356        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_CommandDir) - 8usize];
14357    ["Offset of field: ExtendedCommandLineInterface::cle_ReturnCode"]
14358        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_ReturnCode) - 12usize];
14359    ["Offset of field: ExtendedCommandLineInterface::cle_CommandName"]
14360        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_CommandName) - 16usize];
14361    ["Offset of field: ExtendedCommandLineInterface::cle_FailLevel"]
14362        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_FailLevel) - 20usize];
14363    ["Offset of field: ExtendedCommandLineInterface::cle_Prompt"]
14364        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_Prompt) - 24usize];
14365    ["Offset of field: ExtendedCommandLineInterface::cle_StandardInput"]
14366        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_StandardInput) - 28usize];
14367    ["Offset of field: ExtendedCommandLineInterface::cle_CurrentInput"]
14368        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_CurrentInput) - 32usize];
14369    ["Offset of field: ExtendedCommandLineInterface::cle_CommandFile"]
14370        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_CommandFile) - 36usize];
14371    ["Offset of field: ExtendedCommandLineInterface::cle_Interactive"]
14372        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_Interactive) - 40usize];
14373    ["Offset of field: ExtendedCommandLineInterface::cle_Background"]
14374        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_Background) - 44usize];
14375    ["Offset of field: ExtendedCommandLineInterface::cle_CurrentOutput"]
14376        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_CurrentOutput) - 48usize];
14377    ["Offset of field: ExtendedCommandLineInterface::cle_DefaultStack"]
14378        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_DefaultStack) - 52usize];
14379    ["Offset of field: ExtendedCommandLineInterface::cle_StandardOutput"]
14380        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_StandardOutput) - 56usize];
14381    ["Offset of field: ExtendedCommandLineInterface::cle_Module"]
14382        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_Module) - 60usize];
14383    ["Offset of field: ExtendedCommandLineInterface::cle_Hook"]
14384        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_Hook) - 64usize];
14385    ["Offset of field: ExtendedCommandLineInterface::cle_This"]
14386        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_This) - 84usize];
14387    ["Offset of field: ExtendedCommandLineInterface::cle_Version"]
14388        [::core::mem::offset_of!(ExtendedCommandLineInterface, cle_Version) - 88usize];
14389};
14390#[repr(C, packed(2))]
14391#[derive(Debug, Copy, Clone)]
14392pub struct HistoryNode {
14393    pub hn_Node: MinNode,
14394    pub hn_Line: STRPTR,
14395}
14396#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14397const _: () = {
14398    ["Size of HistoryNode"][::core::mem::size_of::<HistoryNode>() - 12usize];
14399    ["Alignment of HistoryNode"][::core::mem::align_of::<HistoryNode>() - 2usize];
14400    ["Offset of field: HistoryNode::hn_Node"]
14401        [::core::mem::offset_of!(HistoryNode, hn_Node) - 0usize];
14402    ["Offset of field: HistoryNode::hn_Line"]
14403        [::core::mem::offset_of!(HistoryNode, hn_Line) - 8usize];
14404};
14405#[repr(C, packed(2))]
14406#[derive(Debug, Copy, Clone)]
14407pub struct LocalVar {
14408    pub lv_Node: Node,
14409    pub lv_Flags: UWORD,
14410    pub lv_Value: STRPTR,
14411    pub lv_Len: ULONG,
14412}
14413#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14414const _: () = {
14415    ["Size of LocalVar"][::core::mem::size_of::<LocalVar>() - 24usize];
14416    ["Alignment of LocalVar"][::core::mem::align_of::<LocalVar>() - 2usize];
14417    ["Offset of field: LocalVar::lv_Node"][::core::mem::offset_of!(LocalVar, lv_Node) - 0usize];
14418    ["Offset of field: LocalVar::lv_Flags"][::core::mem::offset_of!(LocalVar, lv_Flags) - 14usize];
14419    ["Offset of field: LocalVar::lv_Value"][::core::mem::offset_of!(LocalVar, lv_Value) - 16usize];
14420    ["Offset of field: LocalVar::lv_Len"][::core::mem::offset_of!(LocalVar, lv_Len) - 20usize];
14421};
14422#[repr(C, packed(2))]
14423#[derive(Debug, Copy, Clone)]
14424pub struct gpHitTest {
14425    pub MethodID: ULONG,
14426    pub gpht_GInfo: *mut GadgetInfo,
14427    pub gpht_Mouse: gpHitTest__bindgen_ty_1,
14428}
14429#[repr(C)]
14430#[derive(Debug, Copy, Clone)]
14431pub struct gpHitTest__bindgen_ty_1 {
14432    pub X: WORD,
14433    pub Y: WORD,
14434}
14435#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14436const _: () = {
14437    ["Size of gpHitTest__bindgen_ty_1"][::core::mem::size_of::<gpHitTest__bindgen_ty_1>() - 4usize];
14438    ["Alignment of gpHitTest__bindgen_ty_1"]
14439        [::core::mem::align_of::<gpHitTest__bindgen_ty_1>() - 2usize];
14440    ["Offset of field: gpHitTest__bindgen_ty_1::X"]
14441        [::core::mem::offset_of!(gpHitTest__bindgen_ty_1, X) - 0usize];
14442    ["Offset of field: gpHitTest__bindgen_ty_1::Y"]
14443        [::core::mem::offset_of!(gpHitTest__bindgen_ty_1, Y) - 2usize];
14444};
14445#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14446const _: () = {
14447    ["Size of gpHitTest"][::core::mem::size_of::<gpHitTest>() - 12usize];
14448    ["Alignment of gpHitTest"][::core::mem::align_of::<gpHitTest>() - 2usize];
14449    ["Offset of field: gpHitTest::MethodID"][::core::mem::offset_of!(gpHitTest, MethodID) - 0usize];
14450    ["Offset of field: gpHitTest::gpht_GInfo"]
14451        [::core::mem::offset_of!(gpHitTest, gpht_GInfo) - 4usize];
14452    ["Offset of field: gpHitTest::gpht_Mouse"]
14453        [::core::mem::offset_of!(gpHitTest, gpht_Mouse) - 8usize];
14454};
14455#[repr(C, packed(2))]
14456#[derive(Debug, Copy, Clone)]
14457pub struct gpRender {
14458    pub MethodID: ULONG,
14459    pub gpr_GInfo: *mut GadgetInfo,
14460    pub gpr_RPort: *mut RastPort,
14461    pub gpr_Redraw: LONG,
14462}
14463#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14464const _: () = {
14465    ["Size of gpRender"][::core::mem::size_of::<gpRender>() - 16usize];
14466    ["Alignment of gpRender"][::core::mem::align_of::<gpRender>() - 2usize];
14467    ["Offset of field: gpRender::MethodID"][::core::mem::offset_of!(gpRender, MethodID) - 0usize];
14468    ["Offset of field: gpRender::gpr_GInfo"][::core::mem::offset_of!(gpRender, gpr_GInfo) - 4usize];
14469    ["Offset of field: gpRender::gpr_RPort"][::core::mem::offset_of!(gpRender, gpr_RPort) - 8usize];
14470    ["Offset of field: gpRender::gpr_Redraw"]
14471        [::core::mem::offset_of!(gpRender, gpr_Redraw) - 12usize];
14472};
14473#[repr(C, packed(2))]
14474#[derive(Debug, Copy, Clone)]
14475pub struct gpInput {
14476    pub MethodID: ULONG,
14477    pub gpi_GInfo: *mut GadgetInfo,
14478    pub gpi_IEvent: *mut InputEvent,
14479    pub gpi_Termination: *mut LONG,
14480    pub gpi_Mouse: gpInput__bindgen_ty_1,
14481    pub gpi_TabletData: *mut TabletData,
14482}
14483#[repr(C)]
14484#[derive(Debug, Copy, Clone)]
14485pub struct gpInput__bindgen_ty_1 {
14486    pub X: WORD,
14487    pub Y: WORD,
14488}
14489#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14490const _: () = {
14491    ["Size of gpInput__bindgen_ty_1"][::core::mem::size_of::<gpInput__bindgen_ty_1>() - 4usize];
14492    ["Alignment of gpInput__bindgen_ty_1"]
14493        [::core::mem::align_of::<gpInput__bindgen_ty_1>() - 2usize];
14494    ["Offset of field: gpInput__bindgen_ty_1::X"]
14495        [::core::mem::offset_of!(gpInput__bindgen_ty_1, X) - 0usize];
14496    ["Offset of field: gpInput__bindgen_ty_1::Y"]
14497        [::core::mem::offset_of!(gpInput__bindgen_ty_1, Y) - 2usize];
14498};
14499#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14500const _: () = {
14501    ["Size of gpInput"][::core::mem::size_of::<gpInput>() - 24usize];
14502    ["Alignment of gpInput"][::core::mem::align_of::<gpInput>() - 2usize];
14503    ["Offset of field: gpInput::MethodID"][::core::mem::offset_of!(gpInput, MethodID) - 0usize];
14504    ["Offset of field: gpInput::gpi_GInfo"][::core::mem::offset_of!(gpInput, gpi_GInfo) - 4usize];
14505    ["Offset of field: gpInput::gpi_IEvent"][::core::mem::offset_of!(gpInput, gpi_IEvent) - 8usize];
14506    ["Offset of field: gpInput::gpi_Termination"]
14507        [::core::mem::offset_of!(gpInput, gpi_Termination) - 12usize];
14508    ["Offset of field: gpInput::gpi_Mouse"][::core::mem::offset_of!(gpInput, gpi_Mouse) - 16usize];
14509    ["Offset of field: gpInput::gpi_TabletData"]
14510        [::core::mem::offset_of!(gpInput, gpi_TabletData) - 20usize];
14511};
14512#[repr(C, packed(2))]
14513#[derive(Debug, Copy, Clone)]
14514pub struct gpGoInactive {
14515    pub MethodID: ULONG,
14516    pub gpgi_GInfo: *mut GadgetInfo,
14517    pub gpgi_Abort: ULONG,
14518}
14519#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14520const _: () = {
14521    ["Size of gpGoInactive"][::core::mem::size_of::<gpGoInactive>() - 12usize];
14522    ["Alignment of gpGoInactive"][::core::mem::align_of::<gpGoInactive>() - 2usize];
14523    ["Offset of field: gpGoInactive::MethodID"]
14524        [::core::mem::offset_of!(gpGoInactive, MethodID) - 0usize];
14525    ["Offset of field: gpGoInactive::gpgi_GInfo"]
14526        [::core::mem::offset_of!(gpGoInactive, gpgi_GInfo) - 4usize];
14527    ["Offset of field: gpGoInactive::gpgi_Abort"]
14528        [::core::mem::offset_of!(gpGoInactive, gpgi_Abort) - 8usize];
14529};
14530#[repr(C, packed(2))]
14531#[derive(Debug, Copy, Clone)]
14532pub struct gpLayout {
14533    pub MethodID: ULONG,
14534    pub gpl_GInfo: *mut GadgetInfo,
14535    pub gpl_Initial: ULONG,
14536}
14537#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14538const _: () = {
14539    ["Size of gpLayout"][::core::mem::size_of::<gpLayout>() - 12usize];
14540    ["Alignment of gpLayout"][::core::mem::align_of::<gpLayout>() - 2usize];
14541    ["Offset of field: gpLayout::MethodID"][::core::mem::offset_of!(gpLayout, MethodID) - 0usize];
14542    ["Offset of field: gpLayout::gpl_GInfo"][::core::mem::offset_of!(gpLayout, gpl_GInfo) - 4usize];
14543    ["Offset of field: gpLayout::gpl_Initial"]
14544        [::core::mem::offset_of!(gpLayout, gpl_Initial) - 8usize];
14545};
14546#[repr(C, packed(2))]
14547#[derive(Debug, Copy, Clone)]
14548pub struct gpDomain {
14549    pub MethodID: ULONG,
14550    pub gpd_GInfo: *mut GadgetInfo,
14551    pub gpd_RPort: *mut RastPort,
14552    pub gpd_Which: LONG,
14553    pub gpd_Domain: IBox,
14554    pub gpd_Attrs: *mut TagItem,
14555}
14556#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14557const _: () = {
14558    ["Size of gpDomain"][::core::mem::size_of::<gpDomain>() - 28usize];
14559    ["Alignment of gpDomain"][::core::mem::align_of::<gpDomain>() - 2usize];
14560    ["Offset of field: gpDomain::MethodID"][::core::mem::offset_of!(gpDomain, MethodID) - 0usize];
14561    ["Offset of field: gpDomain::gpd_GInfo"][::core::mem::offset_of!(gpDomain, gpd_GInfo) - 4usize];
14562    ["Offset of field: gpDomain::gpd_RPort"][::core::mem::offset_of!(gpDomain, gpd_RPort) - 8usize];
14563    ["Offset of field: gpDomain::gpd_Which"]
14564        [::core::mem::offset_of!(gpDomain, gpd_Which) - 12usize];
14565    ["Offset of field: gpDomain::gpd_Domain"]
14566        [::core::mem::offset_of!(gpDomain, gpd_Domain) - 16usize];
14567    ["Offset of field: gpDomain::gpd_Attrs"]
14568        [::core::mem::offset_of!(gpDomain, gpd_Attrs) - 24usize];
14569};
14570#[repr(C, packed(2))]
14571#[derive(Debug, Copy, Clone)]
14572pub struct gpKeyTest {
14573    pub MethodID: ULONG,
14574    pub gpkt_GInfo: *mut GadgetInfo,
14575    pub gpkt_IMsg: *mut IntuiMessage,
14576    pub gpkt_VanillaKey: ULONG,
14577}
14578#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14579const _: () = {
14580    ["Size of gpKeyTest"][::core::mem::size_of::<gpKeyTest>() - 16usize];
14581    ["Alignment of gpKeyTest"][::core::mem::align_of::<gpKeyTest>() - 2usize];
14582    ["Offset of field: gpKeyTest::MethodID"][::core::mem::offset_of!(gpKeyTest, MethodID) - 0usize];
14583    ["Offset of field: gpKeyTest::gpkt_GInfo"]
14584        [::core::mem::offset_of!(gpKeyTest, gpkt_GInfo) - 4usize];
14585    ["Offset of field: gpKeyTest::gpkt_IMsg"]
14586        [::core::mem::offset_of!(gpKeyTest, gpkt_IMsg) - 8usize];
14587    ["Offset of field: gpKeyTest::gpkt_VanillaKey"]
14588        [::core::mem::offset_of!(gpKeyTest, gpkt_VanillaKey) - 12usize];
14589};
14590#[repr(C, packed(2))]
14591#[derive(Debug, Copy, Clone)]
14592pub struct gpKeyInput {
14593    pub MethodID: ULONG,
14594    pub gpk_GInfo: *mut GadgetInfo,
14595    pub gpk_IEvent: *mut InputEvent,
14596    pub gpk_Termination: *mut LONG,
14597}
14598#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14599const _: () = {
14600    ["Size of gpKeyInput"][::core::mem::size_of::<gpKeyInput>() - 16usize];
14601    ["Alignment of gpKeyInput"][::core::mem::align_of::<gpKeyInput>() - 2usize];
14602    ["Offset of field: gpKeyInput::MethodID"]
14603        [::core::mem::offset_of!(gpKeyInput, MethodID) - 0usize];
14604    ["Offset of field: gpKeyInput::gpk_GInfo"]
14605        [::core::mem::offset_of!(gpKeyInput, gpk_GInfo) - 4usize];
14606    ["Offset of field: gpKeyInput::gpk_IEvent"]
14607        [::core::mem::offset_of!(gpKeyInput, gpk_IEvent) - 8usize];
14608    ["Offset of field: gpKeyInput::gpk_Termination"]
14609        [::core::mem::offset_of!(gpKeyInput, gpk_Termination) - 12usize];
14610};
14611#[repr(C, packed(2))]
14612#[derive(Debug, Copy, Clone)]
14613pub struct gpKeyGoInactive {
14614    pub MethodID: ULONG,
14615    pub gpki_GInfo: *mut GadgetInfo,
14616    pub gpki_Abort: ULONG,
14617}
14618#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14619const _: () = {
14620    ["Size of gpKeyGoInactive"][::core::mem::size_of::<gpKeyGoInactive>() - 12usize];
14621    ["Alignment of gpKeyGoInactive"][::core::mem::align_of::<gpKeyGoInactive>() - 2usize];
14622    ["Offset of field: gpKeyGoInactive::MethodID"]
14623        [::core::mem::offset_of!(gpKeyGoInactive, MethodID) - 0usize];
14624    ["Offset of field: gpKeyGoInactive::gpki_GInfo"]
14625        [::core::mem::offset_of!(gpKeyGoInactive, gpki_GInfo) - 4usize];
14626    ["Offset of field: gpKeyGoInactive::gpki_Abort"]
14627        [::core::mem::offset_of!(gpKeyGoInactive, gpki_Abort) - 8usize];
14628};
14629#[repr(C, packed(2))]
14630#[derive(Debug, Copy, Clone)]
14631pub struct impFrameBox {
14632    pub MethodID: ULONG,
14633    pub imp_ContentsBox: *mut IBox,
14634    pub imp_FrameBox: *mut IBox,
14635    pub imp_DrInfo: *mut DrawInfo,
14636    pub imp_FrameFlags: ULONG,
14637}
14638#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14639const _: () = {
14640    ["Size of impFrameBox"][::core::mem::size_of::<impFrameBox>() - 20usize];
14641    ["Alignment of impFrameBox"][::core::mem::align_of::<impFrameBox>() - 2usize];
14642    ["Offset of field: impFrameBox::MethodID"]
14643        [::core::mem::offset_of!(impFrameBox, MethodID) - 0usize];
14644    ["Offset of field: impFrameBox::imp_ContentsBox"]
14645        [::core::mem::offset_of!(impFrameBox, imp_ContentsBox) - 4usize];
14646    ["Offset of field: impFrameBox::imp_FrameBox"]
14647        [::core::mem::offset_of!(impFrameBox, imp_FrameBox) - 8usize];
14648    ["Offset of field: impFrameBox::imp_DrInfo"]
14649        [::core::mem::offset_of!(impFrameBox, imp_DrInfo) - 12usize];
14650    ["Offset of field: impFrameBox::imp_FrameFlags"]
14651        [::core::mem::offset_of!(impFrameBox, imp_FrameFlags) - 16usize];
14652};
14653#[repr(C, packed(2))]
14654#[derive(Debug, Copy, Clone)]
14655pub struct impDraw {
14656    pub MethodID: ULONG,
14657    pub imp_RPort: *mut RastPort,
14658    pub imp_Offset: impDraw__bindgen_ty_1,
14659    pub imp_State: ULONG,
14660    pub imp_DrInfo: *mut DrawInfo,
14661    pub imp_Dimensions: impDraw__bindgen_ty_2,
14662}
14663#[repr(C)]
14664#[derive(Debug, Copy, Clone)]
14665pub struct impDraw__bindgen_ty_1 {
14666    pub X: WORD,
14667    pub Y: WORD,
14668}
14669#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14670const _: () = {
14671    ["Size of impDraw__bindgen_ty_1"][::core::mem::size_of::<impDraw__bindgen_ty_1>() - 4usize];
14672    ["Alignment of impDraw__bindgen_ty_1"]
14673        [::core::mem::align_of::<impDraw__bindgen_ty_1>() - 2usize];
14674    ["Offset of field: impDraw__bindgen_ty_1::X"]
14675        [::core::mem::offset_of!(impDraw__bindgen_ty_1, X) - 0usize];
14676    ["Offset of field: impDraw__bindgen_ty_1::Y"]
14677        [::core::mem::offset_of!(impDraw__bindgen_ty_1, Y) - 2usize];
14678};
14679#[repr(C)]
14680#[derive(Debug, Copy, Clone)]
14681pub struct impDraw__bindgen_ty_2 {
14682    pub Width: WORD,
14683    pub Height: WORD,
14684}
14685#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14686const _: () = {
14687    ["Size of impDraw__bindgen_ty_2"][::core::mem::size_of::<impDraw__bindgen_ty_2>() - 4usize];
14688    ["Alignment of impDraw__bindgen_ty_2"]
14689        [::core::mem::align_of::<impDraw__bindgen_ty_2>() - 2usize];
14690    ["Offset of field: impDraw__bindgen_ty_2::Width"]
14691        [::core::mem::offset_of!(impDraw__bindgen_ty_2, Width) - 0usize];
14692    ["Offset of field: impDraw__bindgen_ty_2::Height"]
14693        [::core::mem::offset_of!(impDraw__bindgen_ty_2, Height) - 2usize];
14694};
14695#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14696const _: () = {
14697    ["Size of impDraw"][::core::mem::size_of::<impDraw>() - 24usize];
14698    ["Alignment of impDraw"][::core::mem::align_of::<impDraw>() - 2usize];
14699    ["Offset of field: impDraw::MethodID"][::core::mem::offset_of!(impDraw, MethodID) - 0usize];
14700    ["Offset of field: impDraw::imp_RPort"][::core::mem::offset_of!(impDraw, imp_RPort) - 4usize];
14701    ["Offset of field: impDraw::imp_Offset"][::core::mem::offset_of!(impDraw, imp_Offset) - 8usize];
14702    ["Offset of field: impDraw::imp_State"][::core::mem::offset_of!(impDraw, imp_State) - 12usize];
14703    ["Offset of field: impDraw::imp_DrInfo"]
14704        [::core::mem::offset_of!(impDraw, imp_DrInfo) - 16usize];
14705    ["Offset of field: impDraw::imp_Dimensions"]
14706        [::core::mem::offset_of!(impDraw, imp_Dimensions) - 20usize];
14707};
14708#[repr(C, packed(2))]
14709#[derive(Debug, Copy, Clone)]
14710pub struct impErase {
14711    pub MethodID: ULONG,
14712    pub imp_RPort: *mut RastPort,
14713    pub imp_Offset: impErase__bindgen_ty_1,
14714    pub imp_Dimensions: impErase__bindgen_ty_2,
14715}
14716#[repr(C)]
14717#[derive(Debug, Copy, Clone)]
14718pub struct impErase__bindgen_ty_1 {
14719    pub X: WORD,
14720    pub Y: WORD,
14721}
14722#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14723const _: () = {
14724    ["Size of impErase__bindgen_ty_1"][::core::mem::size_of::<impErase__bindgen_ty_1>() - 4usize];
14725    ["Alignment of impErase__bindgen_ty_1"]
14726        [::core::mem::align_of::<impErase__bindgen_ty_1>() - 2usize];
14727    ["Offset of field: impErase__bindgen_ty_1::X"]
14728        [::core::mem::offset_of!(impErase__bindgen_ty_1, X) - 0usize];
14729    ["Offset of field: impErase__bindgen_ty_1::Y"]
14730        [::core::mem::offset_of!(impErase__bindgen_ty_1, Y) - 2usize];
14731};
14732#[repr(C)]
14733#[derive(Debug, Copy, Clone)]
14734pub struct impErase__bindgen_ty_2 {
14735    pub Width: WORD,
14736    pub Height: WORD,
14737}
14738#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14739const _: () = {
14740    ["Size of impErase__bindgen_ty_2"][::core::mem::size_of::<impErase__bindgen_ty_2>() - 4usize];
14741    ["Alignment of impErase__bindgen_ty_2"]
14742        [::core::mem::align_of::<impErase__bindgen_ty_2>() - 2usize];
14743    ["Offset of field: impErase__bindgen_ty_2::Width"]
14744        [::core::mem::offset_of!(impErase__bindgen_ty_2, Width) - 0usize];
14745    ["Offset of field: impErase__bindgen_ty_2::Height"]
14746        [::core::mem::offset_of!(impErase__bindgen_ty_2, Height) - 2usize];
14747};
14748#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14749const _: () = {
14750    ["Size of impErase"][::core::mem::size_of::<impErase>() - 16usize];
14751    ["Alignment of impErase"][::core::mem::align_of::<impErase>() - 2usize];
14752    ["Offset of field: impErase::MethodID"][::core::mem::offset_of!(impErase, MethodID) - 0usize];
14753    ["Offset of field: impErase::imp_RPort"][::core::mem::offset_of!(impErase, imp_RPort) - 4usize];
14754    ["Offset of field: impErase::imp_Offset"]
14755        [::core::mem::offset_of!(impErase, imp_Offset) - 8usize];
14756    ["Offset of field: impErase::imp_Dimensions"]
14757        [::core::mem::offset_of!(impErase, imp_Dimensions) - 12usize];
14758};
14759#[repr(C, packed(2))]
14760#[derive(Debug, Copy, Clone)]
14761pub struct impHitTest {
14762    pub MethodID: ULONG,
14763    pub imp_Point: impHitTest__bindgen_ty_1,
14764    pub imp_Dimensions: impHitTest__bindgen_ty_2,
14765}
14766#[repr(C)]
14767#[derive(Debug, Copy, Clone)]
14768pub struct impHitTest__bindgen_ty_1 {
14769    pub X: WORD,
14770    pub Y: WORD,
14771}
14772#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14773const _: () = {
14774    ["Size of impHitTest__bindgen_ty_1"]
14775        [::core::mem::size_of::<impHitTest__bindgen_ty_1>() - 4usize];
14776    ["Alignment of impHitTest__bindgen_ty_1"]
14777        [::core::mem::align_of::<impHitTest__bindgen_ty_1>() - 2usize];
14778    ["Offset of field: impHitTest__bindgen_ty_1::X"]
14779        [::core::mem::offset_of!(impHitTest__bindgen_ty_1, X) - 0usize];
14780    ["Offset of field: impHitTest__bindgen_ty_1::Y"]
14781        [::core::mem::offset_of!(impHitTest__bindgen_ty_1, Y) - 2usize];
14782};
14783#[repr(C)]
14784#[derive(Debug, Copy, Clone)]
14785pub struct impHitTest__bindgen_ty_2 {
14786    pub Width: WORD,
14787    pub Height: WORD,
14788}
14789#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14790const _: () = {
14791    ["Size of impHitTest__bindgen_ty_2"]
14792        [::core::mem::size_of::<impHitTest__bindgen_ty_2>() - 4usize];
14793    ["Alignment of impHitTest__bindgen_ty_2"]
14794        [::core::mem::align_of::<impHitTest__bindgen_ty_2>() - 2usize];
14795    ["Offset of field: impHitTest__bindgen_ty_2::Width"]
14796        [::core::mem::offset_of!(impHitTest__bindgen_ty_2, Width) - 0usize];
14797    ["Offset of field: impHitTest__bindgen_ty_2::Height"]
14798        [::core::mem::offset_of!(impHitTest__bindgen_ty_2, Height) - 2usize];
14799};
14800#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14801const _: () = {
14802    ["Size of impHitTest"][::core::mem::size_of::<impHitTest>() - 12usize];
14803    ["Alignment of impHitTest"][::core::mem::align_of::<impHitTest>() - 2usize];
14804    ["Offset of field: impHitTest::MethodID"]
14805        [::core::mem::offset_of!(impHitTest, MethodID) - 0usize];
14806    ["Offset of field: impHitTest::imp_Point"]
14807        [::core::mem::offset_of!(impHitTest, imp_Point) - 4usize];
14808    ["Offset of field: impHitTest::imp_Dimensions"]
14809        [::core::mem::offset_of!(impHitTest, imp_Dimensions) - 8usize];
14810};
14811#[repr(C, packed(2))]
14812#[derive(Debug, Copy, Clone)]
14813pub struct impDomainFrame {
14814    pub MethodID: ULONG,
14815    pub imp_DrInfo: *mut DrawInfo,
14816    pub imp_RPort: *mut RastPort,
14817    pub imp_Which: LONG,
14818    pub imp_Domain: IBox,
14819    pub imp_Attrs: *mut TagItem,
14820}
14821#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14822const _: () = {
14823    ["Size of impDomainFrame"][::core::mem::size_of::<impDomainFrame>() - 28usize];
14824    ["Alignment of impDomainFrame"][::core::mem::align_of::<impDomainFrame>() - 2usize];
14825    ["Offset of field: impDomainFrame::MethodID"]
14826        [::core::mem::offset_of!(impDomainFrame, MethodID) - 0usize];
14827    ["Offset of field: impDomainFrame::imp_DrInfo"]
14828        [::core::mem::offset_of!(impDomainFrame, imp_DrInfo) - 4usize];
14829    ["Offset of field: impDomainFrame::imp_RPort"]
14830        [::core::mem::offset_of!(impDomainFrame, imp_RPort) - 8usize];
14831    ["Offset of field: impDomainFrame::imp_Which"]
14832        [::core::mem::offset_of!(impDomainFrame, imp_Which) - 12usize];
14833    ["Offset of field: impDomainFrame::imp_Domain"]
14834        [::core::mem::offset_of!(impDomainFrame, imp_Domain) - 16usize];
14835    ["Offset of field: impDomainFrame::imp_Attrs"]
14836        [::core::mem::offset_of!(impDomainFrame, imp_Attrs) - 24usize];
14837};
14838#[repr(C, packed(2))]
14839#[derive(Debug, Copy, Clone)]
14840pub struct ColorWheelHSB {
14841    pub cw_Hue: ULONG,
14842    pub cw_Saturation: ULONG,
14843    pub cw_Brightness: ULONG,
14844}
14845#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14846const _: () = {
14847    ["Size of ColorWheelHSB"][::core::mem::size_of::<ColorWheelHSB>() - 12usize];
14848    ["Alignment of ColorWheelHSB"][::core::mem::align_of::<ColorWheelHSB>() - 2usize];
14849    ["Offset of field: ColorWheelHSB::cw_Hue"]
14850        [::core::mem::offset_of!(ColorWheelHSB, cw_Hue) - 0usize];
14851    ["Offset of field: ColorWheelHSB::cw_Saturation"]
14852        [::core::mem::offset_of!(ColorWheelHSB, cw_Saturation) - 4usize];
14853    ["Offset of field: ColorWheelHSB::cw_Brightness"]
14854        [::core::mem::offset_of!(ColorWheelHSB, cw_Brightness) - 8usize];
14855};
14856#[repr(C, packed(2))]
14857#[derive(Debug, Copy, Clone)]
14858pub struct ColorWheelRGB {
14859    pub cw_Red: ULONG,
14860    pub cw_Green: ULONG,
14861    pub cw_Blue: ULONG,
14862}
14863#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14864const _: () = {
14865    ["Size of ColorWheelRGB"][::core::mem::size_of::<ColorWheelRGB>() - 12usize];
14866    ["Alignment of ColorWheelRGB"][::core::mem::align_of::<ColorWheelRGB>() - 2usize];
14867    ["Offset of field: ColorWheelRGB::cw_Red"]
14868        [::core::mem::offset_of!(ColorWheelRGB, cw_Red) - 0usize];
14869    ["Offset of field: ColorWheelRGB::cw_Green"]
14870        [::core::mem::offset_of!(ColorWheelRGB, cw_Green) - 4usize];
14871    ["Offset of field: ColorWheelRGB::cw_Blue"]
14872        [::core::mem::offset_of!(ColorWheelRGB, cw_Blue) - 8usize];
14873};
14874#[repr(C, packed(2))]
14875#[derive(Debug, Copy, Clone)]
14876pub struct gcRequest {
14877    pub MethodID: ULONG,
14878    pub gcr_Window: *mut Window,
14879}
14880#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14881const _: () = {
14882    ["Size of gcRequest"][::core::mem::size_of::<gcRequest>() - 8usize];
14883    ["Alignment of gcRequest"][::core::mem::align_of::<gcRequest>() - 2usize];
14884    ["Offset of field: gcRequest::MethodID"][::core::mem::offset_of!(gcRequest, MethodID) - 0usize];
14885    ["Offset of field: gcRequest::gcr_Window"]
14886        [::core::mem::offset_of!(gcRequest, gcr_Window) - 4usize];
14887};
14888#[repr(C, packed(2))]
14889#[derive(Debug, Copy, Clone)]
14890pub struct gfileRequest {
14891    pub MethodID: ULONG,
14892    pub gfile_Window: *mut Window,
14893}
14894#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14895const _: () = {
14896    ["Size of gfileRequest"][::core::mem::size_of::<gfileRequest>() - 8usize];
14897    ["Alignment of gfileRequest"][::core::mem::align_of::<gfileRequest>() - 2usize];
14898    ["Offset of field: gfileRequest::MethodID"]
14899        [::core::mem::offset_of!(gfileRequest, MethodID) - 0usize];
14900    ["Offset of field: gfileRequest::gfile_Window"]
14901        [::core::mem::offset_of!(gfileRequest, gfile_Window) - 4usize];
14902};
14903#[repr(C, packed(2))]
14904#[derive(Debug, Copy, Clone)]
14905pub struct gfileFreelist {
14906    pub MethodID: ULONG,
14907    pub gfile_Filelist: *mut List,
14908}
14909#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14910const _: () = {
14911    ["Size of gfileFreelist"][::core::mem::size_of::<gfileFreelist>() - 8usize];
14912    ["Alignment of gfileFreelist"][::core::mem::align_of::<gfileFreelist>() - 2usize];
14913    ["Offset of field: gfileFreelist::MethodID"]
14914        [::core::mem::offset_of!(gfileFreelist, MethodID) - 0usize];
14915    ["Offset of field: gfileFreelist::gfile_Filelist"]
14916        [::core::mem::offset_of!(gfileFreelist, gfile_Filelist) - 4usize];
14917};
14918#[repr(C, packed(2))]
14919#[derive(Debug, Copy, Clone)]
14920pub struct gfRequest {
14921    pub MethodID: ULONG,
14922    pub gfr_Window: *mut Window,
14923}
14924#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14925const _: () = {
14926    ["Size of gfRequest"][::core::mem::size_of::<gfRequest>() - 8usize];
14927    ["Alignment of gfRequest"][::core::mem::align_of::<gfRequest>() - 2usize];
14928    ["Offset of field: gfRequest::MethodID"][::core::mem::offset_of!(gfRequest, MethodID) - 0usize];
14929    ["Offset of field: gfRequest::gfr_Window"]
14930        [::core::mem::offset_of!(gfRequest, gfr_Window) - 4usize];
14931};
14932#[repr(C, packed(2))]
14933#[derive(Debug, Copy, Clone)]
14934pub struct gsmRequest {
14935    pub MethodID: ULONG,
14936    pub gsmr_Window: *mut Window,
14937}
14938#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14939const _: () = {
14940    ["Size of gsmRequest"][::core::mem::size_of::<gsmRequest>() - 8usize];
14941    ["Alignment of gsmRequest"][::core::mem::align_of::<gsmRequest>() - 2usize];
14942    ["Offset of field: gsmRequest::MethodID"]
14943        [::core::mem::offset_of!(gsmRequest, MethodID) - 0usize];
14944    ["Offset of field: gsmRequest::gsmr_Window"]
14945        [::core::mem::offset_of!(gsmRequest, gsmr_Window) - 4usize];
14946};
14947#[repr(C, packed(2))]
14948#[derive(Debug, Copy, Clone)]
14949pub struct WeightObject {
14950    pub wb_SuccHeight: ULONG,
14951    pub wb_PredHeight: ULONG,
14952    pub wb_Reserved1: ULONG,
14953    pub wb_SuccWidth: ULONG,
14954    pub wb_PredWidth: ULONG,
14955    pub wb_Reserved2: ULONG,
14956}
14957#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14958const _: () = {
14959    ["Size of WeightObject"][::core::mem::size_of::<WeightObject>() - 24usize];
14960    ["Alignment of WeightObject"][::core::mem::align_of::<WeightObject>() - 2usize];
14961    ["Offset of field: WeightObject::wb_SuccHeight"]
14962        [::core::mem::offset_of!(WeightObject, wb_SuccHeight) - 0usize];
14963    ["Offset of field: WeightObject::wb_PredHeight"]
14964        [::core::mem::offset_of!(WeightObject, wb_PredHeight) - 4usize];
14965    ["Offset of field: WeightObject::wb_Reserved1"]
14966        [::core::mem::offset_of!(WeightObject, wb_Reserved1) - 8usize];
14967    ["Offset of field: WeightObject::wb_SuccWidth"]
14968        [::core::mem::offset_of!(WeightObject, wb_SuccWidth) - 12usize];
14969    ["Offset of field: WeightObject::wb_PredWidth"]
14970        [::core::mem::offset_of!(WeightObject, wb_PredWidth) - 16usize];
14971    ["Offset of field: WeightObject::wb_Reserved2"]
14972        [::core::mem::offset_of!(WeightObject, wb_Reserved2) - 20usize];
14973};
14974#[repr(C)]
14975#[derive(Debug, Copy, Clone)]
14976pub struct LayoutLimits {
14977    pub MinWidth: UWORD,
14978    pub MinHeight: UWORD,
14979    pub MaxWidth: UWORD,
14980    pub MaxHeight: UWORD,
14981}
14982#[allow(clippy::unnecessary_operation, clippy::identity_op)]
14983const _: () = {
14984    ["Size of LayoutLimits"][::core::mem::size_of::<LayoutLimits>() - 8usize];
14985    ["Alignment of LayoutLimits"][::core::mem::align_of::<LayoutLimits>() - 2usize];
14986    ["Offset of field: LayoutLimits::MinWidth"]
14987        [::core::mem::offset_of!(LayoutLimits, MinWidth) - 0usize];
14988    ["Offset of field: LayoutLimits::MinHeight"]
14989        [::core::mem::offset_of!(LayoutLimits, MinHeight) - 2usize];
14990    ["Offset of field: LayoutLimits::MaxWidth"]
14991        [::core::mem::offset_of!(LayoutLimits, MaxWidth) - 4usize];
14992    ["Offset of field: LayoutLimits::MaxHeight"]
14993        [::core::mem::offset_of!(LayoutLimits, MaxHeight) - 6usize];
14994};
14995#[repr(C, packed(2))]
14996#[derive(Debug, Copy, Clone)]
14997pub struct lmAddChild {
14998    pub MethodID: ULONG,
14999    pub lm_Window: *mut Window,
15000    pub lm_Object: *mut Object,
15001    pub lm_ObjectAttrs: *mut TagItem,
15002}
15003#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15004const _: () = {
15005    ["Size of lmAddChild"][::core::mem::size_of::<lmAddChild>() - 16usize];
15006    ["Alignment of lmAddChild"][::core::mem::align_of::<lmAddChild>() - 2usize];
15007    ["Offset of field: lmAddChild::MethodID"]
15008        [::core::mem::offset_of!(lmAddChild, MethodID) - 0usize];
15009    ["Offset of field: lmAddChild::lm_Window"]
15010        [::core::mem::offset_of!(lmAddChild, lm_Window) - 4usize];
15011    ["Offset of field: lmAddChild::lm_Object"]
15012        [::core::mem::offset_of!(lmAddChild, lm_Object) - 8usize];
15013    ["Offset of field: lmAddChild::lm_ObjectAttrs"]
15014        [::core::mem::offset_of!(lmAddChild, lm_ObjectAttrs) - 12usize];
15015};
15016#[repr(C, packed(2))]
15017#[derive(Debug, Copy, Clone)]
15018pub struct lmAddImage {
15019    pub MethodID: ULONG,
15020    pub lm_Window: *mut Window,
15021    pub lm_Object: *mut Object,
15022    pub lm_ObjectAttrs: *mut TagItem,
15023}
15024#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15025const _: () = {
15026    ["Size of lmAddImage"][::core::mem::size_of::<lmAddImage>() - 16usize];
15027    ["Alignment of lmAddImage"][::core::mem::align_of::<lmAddImage>() - 2usize];
15028    ["Offset of field: lmAddImage::MethodID"]
15029        [::core::mem::offset_of!(lmAddImage, MethodID) - 0usize];
15030    ["Offset of field: lmAddImage::lm_Window"]
15031        [::core::mem::offset_of!(lmAddImage, lm_Window) - 4usize];
15032    ["Offset of field: lmAddImage::lm_Object"]
15033        [::core::mem::offset_of!(lmAddImage, lm_Object) - 8usize];
15034    ["Offset of field: lmAddImage::lm_ObjectAttrs"]
15035        [::core::mem::offset_of!(lmAddImage, lm_ObjectAttrs) - 12usize];
15036};
15037#[repr(C, packed(2))]
15038#[derive(Debug, Copy, Clone)]
15039pub struct lmRemoveChild {
15040    pub MethodID: ULONG,
15041    pub lm_Window: *mut Window,
15042    pub lm_Object: *mut Object,
15043}
15044#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15045const _: () = {
15046    ["Size of lmRemoveChild"][::core::mem::size_of::<lmRemoveChild>() - 12usize];
15047    ["Alignment of lmRemoveChild"][::core::mem::align_of::<lmRemoveChild>() - 2usize];
15048    ["Offset of field: lmRemoveChild::MethodID"]
15049        [::core::mem::offset_of!(lmRemoveChild, MethodID) - 0usize];
15050    ["Offset of field: lmRemoveChild::lm_Window"]
15051        [::core::mem::offset_of!(lmRemoveChild, lm_Window) - 4usize];
15052    ["Offset of field: lmRemoveChild::lm_Object"]
15053        [::core::mem::offset_of!(lmRemoveChild, lm_Object) - 8usize];
15054};
15055#[repr(C, packed(2))]
15056#[derive(Debug, Copy, Clone)]
15057pub struct lmModifyChild {
15058    pub MethodID: ULONG,
15059    pub lm_Window: *mut Window,
15060    pub lm_Object: *mut Object,
15061    pub lm_ObjectAttrs: *mut TagItem,
15062}
15063#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15064const _: () = {
15065    ["Size of lmModifyChild"][::core::mem::size_of::<lmModifyChild>() - 16usize];
15066    ["Alignment of lmModifyChild"][::core::mem::align_of::<lmModifyChild>() - 2usize];
15067    ["Offset of field: lmModifyChild::MethodID"]
15068        [::core::mem::offset_of!(lmModifyChild, MethodID) - 0usize];
15069    ["Offset of field: lmModifyChild::lm_Window"]
15070        [::core::mem::offset_of!(lmModifyChild, lm_Window) - 4usize];
15071    ["Offset of field: lmModifyChild::lm_Object"]
15072        [::core::mem::offset_of!(lmModifyChild, lm_Object) - 8usize];
15073    ["Offset of field: lmModifyChild::lm_ObjectAttrs"]
15074        [::core::mem::offset_of!(lmModifyChild, lm_ObjectAttrs) - 12usize];
15075};
15076#[repr(C, packed(2))]
15077#[derive(Debug, Copy, Clone)]
15078pub struct lbAddNode {
15079    pub MethodID: ULONG,
15080    pub lba_GInfo: *mut GadgetInfo,
15081    pub lba_Node: *mut Node,
15082    pub lba_NodeAttrs: *mut TagItem,
15083}
15084#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15085const _: () = {
15086    ["Size of lbAddNode"][::core::mem::size_of::<lbAddNode>() - 16usize];
15087    ["Alignment of lbAddNode"][::core::mem::align_of::<lbAddNode>() - 2usize];
15088    ["Offset of field: lbAddNode::MethodID"][::core::mem::offset_of!(lbAddNode, MethodID) - 0usize];
15089    ["Offset of field: lbAddNode::lba_GInfo"]
15090        [::core::mem::offset_of!(lbAddNode, lba_GInfo) - 4usize];
15091    ["Offset of field: lbAddNode::lba_Node"][::core::mem::offset_of!(lbAddNode, lba_Node) - 8usize];
15092    ["Offset of field: lbAddNode::lba_NodeAttrs"]
15093        [::core::mem::offset_of!(lbAddNode, lba_NodeAttrs) - 12usize];
15094};
15095#[repr(C, packed(2))]
15096#[derive(Debug, Copy, Clone)]
15097pub struct lbRemNode {
15098    pub MethodID: ULONG,
15099    pub lbr_GInfo: *mut GadgetInfo,
15100    pub lbr_Node: *mut Node,
15101}
15102#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15103const _: () = {
15104    ["Size of lbRemNode"][::core::mem::size_of::<lbRemNode>() - 12usize];
15105    ["Alignment of lbRemNode"][::core::mem::align_of::<lbRemNode>() - 2usize];
15106    ["Offset of field: lbRemNode::MethodID"][::core::mem::offset_of!(lbRemNode, MethodID) - 0usize];
15107    ["Offset of field: lbRemNode::lbr_GInfo"]
15108        [::core::mem::offset_of!(lbRemNode, lbr_GInfo) - 4usize];
15109    ["Offset of field: lbRemNode::lbr_Node"][::core::mem::offset_of!(lbRemNode, lbr_Node) - 8usize];
15110};
15111#[repr(C, packed(2))]
15112#[derive(Debug, Copy, Clone)]
15113pub struct lbEditNode {
15114    pub MethodID: ULONG,
15115    pub lbe_GInfo: *mut GadgetInfo,
15116    pub lbe_Node: *mut Node,
15117    pub lbe_NodeAttrs: *mut TagItem,
15118}
15119#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15120const _: () = {
15121    ["Size of lbEditNode"][::core::mem::size_of::<lbEditNode>() - 16usize];
15122    ["Alignment of lbEditNode"][::core::mem::align_of::<lbEditNode>() - 2usize];
15123    ["Offset of field: lbEditNode::MethodID"]
15124        [::core::mem::offset_of!(lbEditNode, MethodID) - 0usize];
15125    ["Offset of field: lbEditNode::lbe_GInfo"]
15126        [::core::mem::offset_of!(lbEditNode, lbe_GInfo) - 4usize];
15127    ["Offset of field: lbEditNode::lbe_Node"]
15128        [::core::mem::offset_of!(lbEditNode, lbe_Node) - 8usize];
15129    ["Offset of field: lbEditNode::lbe_NodeAttrs"]
15130        [::core::mem::offset_of!(lbEditNode, lbe_NodeAttrs) - 12usize];
15131};
15132#[repr(C, packed(2))]
15133#[derive(Debug, Copy, Clone)]
15134pub struct lbSort {
15135    pub MethodID: ULONG,
15136    pub lbs_GInfo: *mut GadgetInfo,
15137    pub lbs_Column: ULONG,
15138    pub lbs_Direction: ULONG,
15139    pub lbs_CompareHook: *mut Hook,
15140}
15141#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15142const _: () = {
15143    ["Size of lbSort"][::core::mem::size_of::<lbSort>() - 20usize];
15144    ["Alignment of lbSort"][::core::mem::align_of::<lbSort>() - 2usize];
15145    ["Offset of field: lbSort::MethodID"][::core::mem::offset_of!(lbSort, MethodID) - 0usize];
15146    ["Offset of field: lbSort::lbs_GInfo"][::core::mem::offset_of!(lbSort, lbs_GInfo) - 4usize];
15147    ["Offset of field: lbSort::lbs_Column"][::core::mem::offset_of!(lbSort, lbs_Column) - 8usize];
15148    ["Offset of field: lbSort::lbs_Direction"]
15149        [::core::mem::offset_of!(lbSort, lbs_Direction) - 12usize];
15150    ["Offset of field: lbSort::lbs_CompareHook"]
15151        [::core::mem::offset_of!(lbSort, lbs_CompareHook) - 16usize];
15152};
15153#[repr(C, packed(2))]
15154#[derive(Debug, Copy, Clone)]
15155pub struct lbShowChildren {
15156    pub MethodID: ULONG,
15157    pub lbsc_GInfo: *mut GadgetInfo,
15158    pub lbsc_Node: *mut Node,
15159    pub lbsc_Depth: WORD,
15160}
15161#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15162const _: () = {
15163    ["Size of lbShowChildren"][::core::mem::size_of::<lbShowChildren>() - 14usize];
15164    ["Alignment of lbShowChildren"][::core::mem::align_of::<lbShowChildren>() - 2usize];
15165    ["Offset of field: lbShowChildren::MethodID"]
15166        [::core::mem::offset_of!(lbShowChildren, MethodID) - 0usize];
15167    ["Offset of field: lbShowChildren::lbsc_GInfo"]
15168        [::core::mem::offset_of!(lbShowChildren, lbsc_GInfo) - 4usize];
15169    ["Offset of field: lbShowChildren::lbsc_Node"]
15170        [::core::mem::offset_of!(lbShowChildren, lbsc_Node) - 8usize];
15171    ["Offset of field: lbShowChildren::lbsc_Depth"]
15172        [::core::mem::offset_of!(lbShowChildren, lbsc_Depth) - 12usize];
15173};
15174#[repr(C, packed(2))]
15175#[derive(Debug, Copy, Clone)]
15176pub struct lbHideChildren {
15177    pub MethodID: ULONG,
15178    pub lbhc_GInfo: *mut GadgetInfo,
15179    pub lbhc_Node: *mut Node,
15180    pub lbhc_Depth: WORD,
15181}
15182#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15183const _: () = {
15184    ["Size of lbHideChildren"][::core::mem::size_of::<lbHideChildren>() - 14usize];
15185    ["Alignment of lbHideChildren"][::core::mem::align_of::<lbHideChildren>() - 2usize];
15186    ["Offset of field: lbHideChildren::MethodID"]
15187        [::core::mem::offset_of!(lbHideChildren, MethodID) - 0usize];
15188    ["Offset of field: lbHideChildren::lbhc_GInfo"]
15189        [::core::mem::offset_of!(lbHideChildren, lbhc_GInfo) - 4usize];
15190    ["Offset of field: lbHideChildren::lbhc_Node"]
15191        [::core::mem::offset_of!(lbHideChildren, lbhc_Node) - 8usize];
15192    ["Offset of field: lbHideChildren::lbhc_Depth"]
15193        [::core::mem::offset_of!(lbHideChildren, lbhc_Depth) - 12usize];
15194};
15195#[repr(C, packed(2))]
15196#[derive(Debug, Copy, Clone)]
15197pub struct LBDrawMsg {
15198    pub lbdm_MethodID: ULONG,
15199    pub lbdm_RastPort: *mut RastPort,
15200    pub lbdm_DrawInfo: *mut DrawInfo,
15201    pub lbdm_Bounds: Rectangle,
15202    pub lbdm_State: ULONG,
15203}
15204#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15205const _: () = {
15206    ["Size of LBDrawMsg"][::core::mem::size_of::<LBDrawMsg>() - 24usize];
15207    ["Alignment of LBDrawMsg"][::core::mem::align_of::<LBDrawMsg>() - 2usize];
15208    ["Offset of field: LBDrawMsg::lbdm_MethodID"]
15209        [::core::mem::offset_of!(LBDrawMsg, lbdm_MethodID) - 0usize];
15210    ["Offset of field: LBDrawMsg::lbdm_RastPort"]
15211        [::core::mem::offset_of!(LBDrawMsg, lbdm_RastPort) - 4usize];
15212    ["Offset of field: LBDrawMsg::lbdm_DrawInfo"]
15213        [::core::mem::offset_of!(LBDrawMsg, lbdm_DrawInfo) - 8usize];
15214    ["Offset of field: LBDrawMsg::lbdm_Bounds"]
15215        [::core::mem::offset_of!(LBDrawMsg, lbdm_Bounds) - 12usize];
15216    ["Offset of field: LBDrawMsg::lbdm_State"]
15217        [::core::mem::offset_of!(LBDrawMsg, lbdm_State) - 20usize];
15218};
15219#[repr(C, packed(2))]
15220#[derive(Copy, Clone)]
15221pub struct LBSortMsg {
15222    pub lbsm_TypeA: ULONG,
15223    pub lbsm_DataA: LBSortMsg__bindgen_ty_1,
15224    pub lbsm_UserDataA: APTR,
15225    pub lbsm_TypeB: ULONG,
15226    pub lbsm_DataB: LBSortMsg__bindgen_ty_2,
15227    pub lbsm_UserDataB: APTR,
15228    pub lbsm_Column: WORD,
15229    pub lbsm_Direction: ULONG,
15230}
15231#[repr(C, packed(2))]
15232#[derive(Copy, Clone)]
15233pub union LBSortMsg__bindgen_ty_1 {
15234    pub Integer: LONG,
15235    pub Text: STRPTR,
15236}
15237#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15238const _: () = {
15239    ["Size of LBSortMsg__bindgen_ty_1"][::core::mem::size_of::<LBSortMsg__bindgen_ty_1>() - 4usize];
15240    ["Alignment of LBSortMsg__bindgen_ty_1"]
15241        [::core::mem::align_of::<LBSortMsg__bindgen_ty_1>() - 2usize];
15242    ["Offset of field: LBSortMsg__bindgen_ty_1::Integer"]
15243        [::core::mem::offset_of!(LBSortMsg__bindgen_ty_1, Integer) - 0usize];
15244    ["Offset of field: LBSortMsg__bindgen_ty_1::Text"]
15245        [::core::mem::offset_of!(LBSortMsg__bindgen_ty_1, Text) - 0usize];
15246};
15247#[repr(C, packed(2))]
15248#[derive(Copy, Clone)]
15249pub union LBSortMsg__bindgen_ty_2 {
15250    pub Integer: LONG,
15251    pub Text: STRPTR,
15252}
15253#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15254const _: () = {
15255    ["Size of LBSortMsg__bindgen_ty_2"][::core::mem::size_of::<LBSortMsg__bindgen_ty_2>() - 4usize];
15256    ["Alignment of LBSortMsg__bindgen_ty_2"]
15257        [::core::mem::align_of::<LBSortMsg__bindgen_ty_2>() - 2usize];
15258    ["Offset of field: LBSortMsg__bindgen_ty_2::Integer"]
15259        [::core::mem::offset_of!(LBSortMsg__bindgen_ty_2, Integer) - 0usize];
15260    ["Offset of field: LBSortMsg__bindgen_ty_2::Text"]
15261        [::core::mem::offset_of!(LBSortMsg__bindgen_ty_2, Text) - 0usize];
15262};
15263#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15264const _: () = {
15265    ["Size of LBSortMsg"][::core::mem::size_of::<LBSortMsg>() - 30usize];
15266    ["Alignment of LBSortMsg"][::core::mem::align_of::<LBSortMsg>() - 2usize];
15267    ["Offset of field: LBSortMsg::lbsm_TypeA"]
15268        [::core::mem::offset_of!(LBSortMsg, lbsm_TypeA) - 0usize];
15269    ["Offset of field: LBSortMsg::lbsm_DataA"]
15270        [::core::mem::offset_of!(LBSortMsg, lbsm_DataA) - 4usize];
15271    ["Offset of field: LBSortMsg::lbsm_UserDataA"]
15272        [::core::mem::offset_of!(LBSortMsg, lbsm_UserDataA) - 8usize];
15273    ["Offset of field: LBSortMsg::lbsm_TypeB"]
15274        [::core::mem::offset_of!(LBSortMsg, lbsm_TypeB) - 12usize];
15275    ["Offset of field: LBSortMsg::lbsm_DataB"]
15276        [::core::mem::offset_of!(LBSortMsg, lbsm_DataB) - 16usize];
15277    ["Offset of field: LBSortMsg::lbsm_UserDataB"]
15278        [::core::mem::offset_of!(LBSortMsg, lbsm_UserDataB) - 20usize];
15279    ["Offset of field: LBSortMsg::lbsm_Column"]
15280        [::core::mem::offset_of!(LBSortMsg, lbsm_Column) - 24usize];
15281    ["Offset of field: LBSortMsg::lbsm_Direction"]
15282        [::core::mem::offset_of!(LBSortMsg, lbsm_Direction) - 26usize];
15283};
15284#[repr(C, packed(2))]
15285#[derive(Debug, Copy, Clone)]
15286pub struct ColumnInfo {
15287    pub ci_Width: WORD,
15288    pub ci_Title: STRPTR,
15289    pub ci_Flags: ULONG,
15290}
15291#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15292const _: () = {
15293    ["Size of ColumnInfo"][::core::mem::size_of::<ColumnInfo>() - 10usize];
15294    ["Alignment of ColumnInfo"][::core::mem::align_of::<ColumnInfo>() - 2usize];
15295    ["Offset of field: ColumnInfo::ci_Width"]
15296        [::core::mem::offset_of!(ColumnInfo, ci_Width) - 0usize];
15297    ["Offset of field: ColumnInfo::ci_Title"]
15298        [::core::mem::offset_of!(ColumnInfo, ci_Title) - 2usize];
15299    ["Offset of field: ColumnInfo::ci_Flags"]
15300        [::core::mem::offset_of!(ColumnInfo, ci_Flags) - 6usize];
15301};
15302#[repr(C, packed(2))]
15303#[derive(Debug, Copy, Clone)]
15304pub struct ListLabelNode {
15305    pub lvn_Node: Node,
15306    pub lvn_UserData: ULONG,
15307    pub lvn_RenderForeground: WORD,
15308    pub lvn_RenderBackground: WORD,
15309    pub lvn_SelectForeground: WORD,
15310    pub lvn_SelectBackground: WORD,
15311    pub lvn_RenderImage: *mut Image,
15312    pub lvn_SelectImage: *mut Image,
15313    pub lvn_TextLength: WORD,
15314    pub lvn_LeftEdge: WORD,
15315    pub lvn_TopEdge: WORD,
15316    pub lvn_Width: WORD,
15317    pub lvn_Height: WORD,
15318    pub lvn_Justification: WORD,
15319    pub lvn_Selected: WORD,
15320}
15321#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15322const _: () = {
15323    ["Size of ListLabelNode"][::core::mem::size_of::<ListLabelNode>() - 48usize];
15324    ["Alignment of ListLabelNode"][::core::mem::align_of::<ListLabelNode>() - 2usize];
15325    ["Offset of field: ListLabelNode::lvn_Node"]
15326        [::core::mem::offset_of!(ListLabelNode, lvn_Node) - 0usize];
15327    ["Offset of field: ListLabelNode::lvn_UserData"]
15328        [::core::mem::offset_of!(ListLabelNode, lvn_UserData) - 14usize];
15329    ["Offset of field: ListLabelNode::lvn_RenderForeground"]
15330        [::core::mem::offset_of!(ListLabelNode, lvn_RenderForeground) - 18usize];
15331    ["Offset of field: ListLabelNode::lvn_RenderBackground"]
15332        [::core::mem::offset_of!(ListLabelNode, lvn_RenderBackground) - 20usize];
15333    ["Offset of field: ListLabelNode::lvn_SelectForeground"]
15334        [::core::mem::offset_of!(ListLabelNode, lvn_SelectForeground) - 22usize];
15335    ["Offset of field: ListLabelNode::lvn_SelectBackground"]
15336        [::core::mem::offset_of!(ListLabelNode, lvn_SelectBackground) - 24usize];
15337    ["Offset of field: ListLabelNode::lvn_RenderImage"]
15338        [::core::mem::offset_of!(ListLabelNode, lvn_RenderImage) - 26usize];
15339    ["Offset of field: ListLabelNode::lvn_SelectImage"]
15340        [::core::mem::offset_of!(ListLabelNode, lvn_SelectImage) - 30usize];
15341    ["Offset of field: ListLabelNode::lvn_TextLength"]
15342        [::core::mem::offset_of!(ListLabelNode, lvn_TextLength) - 34usize];
15343    ["Offset of field: ListLabelNode::lvn_LeftEdge"]
15344        [::core::mem::offset_of!(ListLabelNode, lvn_LeftEdge) - 36usize];
15345    ["Offset of field: ListLabelNode::lvn_TopEdge"]
15346        [::core::mem::offset_of!(ListLabelNode, lvn_TopEdge) - 38usize];
15347    ["Offset of field: ListLabelNode::lvn_Width"]
15348        [::core::mem::offset_of!(ListLabelNode, lvn_Width) - 40usize];
15349    ["Offset of field: ListLabelNode::lvn_Height"]
15350        [::core::mem::offset_of!(ListLabelNode, lvn_Height) - 42usize];
15351    ["Offset of field: ListLabelNode::lvn_Justification"]
15352        [::core::mem::offset_of!(ListLabelNode, lvn_Justification) - 44usize];
15353    ["Offset of field: ListLabelNode::lvn_Selected"]
15354        [::core::mem::offset_of!(ListLabelNode, lvn_Selected) - 46usize];
15355};
15356#[repr(C, packed(2))]
15357#[derive(Debug, Copy, Clone)]
15358pub struct PBoxDrawMsg {
15359    pub pbdm_MethodID: ULONG,
15360    pub pbdm_RastPort: *mut RastPort,
15361    pub pbdm_DrawInfo: *mut DrawInfo,
15362    pub pbdm_Bounds: Rectangle,
15363    pub pbdm_State: ULONG,
15364    pub pbdm_Color: ULONG,
15365    pub pbdm_Gadget: *mut Gadget,
15366}
15367#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15368const _: () = {
15369    ["Size of PBoxDrawMsg"][::core::mem::size_of::<PBoxDrawMsg>() - 32usize];
15370    ["Alignment of PBoxDrawMsg"][::core::mem::align_of::<PBoxDrawMsg>() - 2usize];
15371    ["Offset of field: PBoxDrawMsg::pbdm_MethodID"]
15372        [::core::mem::offset_of!(PBoxDrawMsg, pbdm_MethodID) - 0usize];
15373    ["Offset of field: PBoxDrawMsg::pbdm_RastPort"]
15374        [::core::mem::offset_of!(PBoxDrawMsg, pbdm_RastPort) - 4usize];
15375    ["Offset of field: PBoxDrawMsg::pbdm_DrawInfo"]
15376        [::core::mem::offset_of!(PBoxDrawMsg, pbdm_DrawInfo) - 8usize];
15377    ["Offset of field: PBoxDrawMsg::pbdm_Bounds"]
15378        [::core::mem::offset_of!(PBoxDrawMsg, pbdm_Bounds) - 12usize];
15379    ["Offset of field: PBoxDrawMsg::pbdm_State"]
15380        [::core::mem::offset_of!(PBoxDrawMsg, pbdm_State) - 20usize];
15381    ["Offset of field: PBoxDrawMsg::pbdm_Color"]
15382        [::core::mem::offset_of!(PBoxDrawMsg, pbdm_Color) - 24usize];
15383    ["Offset of field: PBoxDrawMsg::pbdm_Gadget"]
15384        [::core::mem::offset_of!(PBoxDrawMsg, pbdm_Gadget) - 28usize];
15385};
15386#[repr(C, packed(2))]
15387#[derive(Debug, Copy, Clone)]
15388pub struct GadgetInfo {
15389    pub gi_Screen: *mut Screen,
15390    pub gi_Window: *mut Window,
15391    pub gi_Requester: *mut Requester,
15392    pub gi_RastPort: *mut RastPort,
15393    pub gi_Layer: *mut Layer,
15394    pub gi_Domain: IBox,
15395    pub gi_Pens: GadgetInfo__bindgen_ty_1,
15396    pub gi_DrInfo: *mut DrawInfo,
15397    pub gi_Reserved: [ULONG; 6usize],
15398}
15399#[repr(C)]
15400#[derive(Debug, Copy, Clone)]
15401pub struct GadgetInfo__bindgen_ty_1 {
15402    pub DetailPen: UBYTE,
15403    pub BlockPen: UBYTE,
15404}
15405#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15406const _: () = {
15407    ["Size of GadgetInfo__bindgen_ty_1"]
15408        [::core::mem::size_of::<GadgetInfo__bindgen_ty_1>() - 2usize];
15409    ["Alignment of GadgetInfo__bindgen_ty_1"]
15410        [::core::mem::align_of::<GadgetInfo__bindgen_ty_1>() - 1usize];
15411    ["Offset of field: GadgetInfo__bindgen_ty_1::DetailPen"]
15412        [::core::mem::offset_of!(GadgetInfo__bindgen_ty_1, DetailPen) - 0usize];
15413    ["Offset of field: GadgetInfo__bindgen_ty_1::BlockPen"]
15414        [::core::mem::offset_of!(GadgetInfo__bindgen_ty_1, BlockPen) - 1usize];
15415};
15416#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15417const _: () = {
15418    ["Size of GadgetInfo"][::core::mem::size_of::<GadgetInfo>() - 58usize];
15419    ["Alignment of GadgetInfo"][::core::mem::align_of::<GadgetInfo>() - 2usize];
15420    ["Offset of field: GadgetInfo::gi_Screen"]
15421        [::core::mem::offset_of!(GadgetInfo, gi_Screen) - 0usize];
15422    ["Offset of field: GadgetInfo::gi_Window"]
15423        [::core::mem::offset_of!(GadgetInfo, gi_Window) - 4usize];
15424    ["Offset of field: GadgetInfo::gi_Requester"]
15425        [::core::mem::offset_of!(GadgetInfo, gi_Requester) - 8usize];
15426    ["Offset of field: GadgetInfo::gi_RastPort"]
15427        [::core::mem::offset_of!(GadgetInfo, gi_RastPort) - 12usize];
15428    ["Offset of field: GadgetInfo::gi_Layer"]
15429        [::core::mem::offset_of!(GadgetInfo, gi_Layer) - 16usize];
15430    ["Offset of field: GadgetInfo::gi_Domain"]
15431        [::core::mem::offset_of!(GadgetInfo, gi_Domain) - 20usize];
15432    ["Offset of field: GadgetInfo::gi_Pens"]
15433        [::core::mem::offset_of!(GadgetInfo, gi_Pens) - 28usize];
15434    ["Offset of field: GadgetInfo::gi_DrInfo"]
15435        [::core::mem::offset_of!(GadgetInfo, gi_DrInfo) - 30usize];
15436    ["Offset of field: GadgetInfo::gi_Reserved"]
15437        [::core::mem::offset_of!(GadgetInfo, gi_Reserved) - 34usize];
15438};
15439#[repr(C)]
15440#[derive(Debug, Copy, Clone)]
15441pub struct PGX {
15442    pub pgx_Container: IBox,
15443    pub pgx_NewKnob: IBox,
15444}
15445#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15446const _: () = {
15447    ["Size of PGX"][::core::mem::size_of::<PGX>() - 16usize];
15448    ["Alignment of PGX"][::core::mem::align_of::<PGX>() - 2usize];
15449    ["Offset of field: PGX::pgx_Container"][::core::mem::offset_of!(PGX, pgx_Container) - 0usize];
15450    ["Offset of field: PGX::pgx_NewKnob"][::core::mem::offset_of!(PGX, pgx_NewKnob) - 8usize];
15451};
15452#[repr(C, packed(2))]
15453#[derive(Debug, Copy, Clone)]
15454pub struct spGeneral {
15455    pub MethodID: ULONG,
15456    pub GInfo: GadgetInfo,
15457}
15458#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15459const _: () = {
15460    ["Size of spGeneral"][::core::mem::size_of::<spGeneral>() - 62usize];
15461    ["Alignment of spGeneral"][::core::mem::align_of::<spGeneral>() - 2usize];
15462    ["Offset of field: spGeneral::MethodID"][::core::mem::offset_of!(spGeneral, MethodID) - 0usize];
15463    ["Offset of field: spGeneral::GInfo"][::core::mem::offset_of!(spGeneral, GInfo) - 4usize];
15464};
15465#[repr(C, packed(2))]
15466#[derive(Debug, Copy, Clone)]
15467pub struct spScrollRaster {
15468    pub MethodID: ULONG,
15469    pub GInfo: *mut GadgetInfo,
15470    pub DeltaX: LONG,
15471    pub DeltaY: LONG,
15472}
15473#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15474const _: () = {
15475    ["Size of spScrollRaster"][::core::mem::size_of::<spScrollRaster>() - 16usize];
15476    ["Alignment of spScrollRaster"][::core::mem::align_of::<spScrollRaster>() - 2usize];
15477    ["Offset of field: spScrollRaster::MethodID"]
15478        [::core::mem::offset_of!(spScrollRaster, MethodID) - 0usize];
15479    ["Offset of field: spScrollRaster::GInfo"]
15480        [::core::mem::offset_of!(spScrollRaster, GInfo) - 4usize];
15481    ["Offset of field: spScrollRaster::DeltaX"]
15482        [::core::mem::offset_of!(spScrollRaster, DeltaX) - 8usize];
15483    ["Offset of field: spScrollRaster::DeltaY"]
15484        [::core::mem::offset_of!(spScrollRaster, DeltaY) - 12usize];
15485};
15486#[repr(C, packed(2))]
15487#[derive(Debug, Copy, Clone)]
15488pub struct sbSetNodeAttrs {
15489    pub MethodID: ULONG,
15490    pub sb_GInfo: *mut GadgetInfo,
15491    pub sb_Node: *mut Node,
15492    pub sb_AttrList: *mut TagItem,
15493}
15494#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15495const _: () = {
15496    ["Size of sbSetNodeAttrs"][::core::mem::size_of::<sbSetNodeAttrs>() - 16usize];
15497    ["Alignment of sbSetNodeAttrs"][::core::mem::align_of::<sbSetNodeAttrs>() - 2usize];
15498    ["Offset of field: sbSetNodeAttrs::MethodID"]
15499        [::core::mem::offset_of!(sbSetNodeAttrs, MethodID) - 0usize];
15500    ["Offset of field: sbSetNodeAttrs::sb_GInfo"]
15501        [::core::mem::offset_of!(sbSetNodeAttrs, sb_GInfo) - 4usize];
15502    ["Offset of field: sbSetNodeAttrs::sb_Node"]
15503        [::core::mem::offset_of!(sbSetNodeAttrs, sb_Node) - 8usize];
15504    ["Offset of field: sbSetNodeAttrs::sb_AttrList"]
15505        [::core::mem::offset_of!(sbSetNodeAttrs, sb_AttrList) - 12usize];
15506};
15507#[repr(C, packed(2))]
15508#[derive(Debug, Copy, Clone)]
15509pub struct tagTabLabel {
15510    pub tl_Label: STRPTR,
15511    pub tl_Pens: [WORD; 4usize],
15512    pub tl_Attrs: *mut TagItem,
15513}
15514#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15515const _: () = {
15516    ["Size of tagTabLabel"][::core::mem::size_of::<tagTabLabel>() - 16usize];
15517    ["Alignment of tagTabLabel"][::core::mem::align_of::<tagTabLabel>() - 2usize];
15518    ["Offset of field: tagTabLabel::tl_Label"]
15519        [::core::mem::offset_of!(tagTabLabel, tl_Label) - 0usize];
15520    ["Offset of field: tagTabLabel::tl_Pens"]
15521        [::core::mem::offset_of!(tagTabLabel, tl_Pens) - 4usize];
15522    ["Offset of field: tagTabLabel::tl_Attrs"]
15523        [::core::mem::offset_of!(tagTabLabel, tl_Attrs) - 12usize];
15524};
15525pub type TabLabel = tagTabLabel;
15526pub type TabLabelP = *mut tagTabLabel;
15527#[repr(C, packed(2))]
15528#[derive(Debug, Copy, Clone)]
15529pub struct ChangeListener {
15530    pub onCharsInserted: FPTR,
15531    pub onCharsDeleted: FPTR,
15532    pub onCharEntered: FPTR,
15533    pub Reserved1: ULONG,
15534    pub Reserved2: ULONG,
15535    pub Reserved3: ULONG,
15536    pub Reserved4: ULONG,
15537    pub Reserved5: ULONG,
15538}
15539#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15540const _: () = {
15541    ["Size of ChangeListener"][::core::mem::size_of::<ChangeListener>() - 32usize];
15542    ["Alignment of ChangeListener"][::core::mem::align_of::<ChangeListener>() - 2usize];
15543    ["Offset of field: ChangeListener::onCharsInserted"]
15544        [::core::mem::offset_of!(ChangeListener, onCharsInserted) - 0usize];
15545    ["Offset of field: ChangeListener::onCharsDeleted"]
15546        [::core::mem::offset_of!(ChangeListener, onCharsDeleted) - 4usize];
15547    ["Offset of field: ChangeListener::onCharEntered"]
15548        [::core::mem::offset_of!(ChangeListener, onCharEntered) - 8usize];
15549    ["Offset of field: ChangeListener::Reserved1"]
15550        [::core::mem::offset_of!(ChangeListener, Reserved1) - 12usize];
15551    ["Offset of field: ChangeListener::Reserved2"]
15552        [::core::mem::offset_of!(ChangeListener, Reserved2) - 16usize];
15553    ["Offset of field: ChangeListener::Reserved3"]
15554        [::core::mem::offset_of!(ChangeListener, Reserved3) - 20usize];
15555    ["Offset of field: ChangeListener::Reserved4"]
15556        [::core::mem::offset_of!(ChangeListener, Reserved4) - 24usize];
15557    ["Offset of field: ChangeListener::Reserved5"]
15558        [::core::mem::offset_of!(ChangeListener, Reserved5) - 28usize];
15559};
15560#[repr(C, packed(2))]
15561#[derive(Debug, Copy, Clone)]
15562pub struct GP_TEXTEDITOR_ARexxCmd {
15563    pub MethodID: ULONG,
15564    pub GInfo: *mut GadgetInfo,
15565    pub command: STRPTR,
15566}
15567#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15568const _: () = {
15569    ["Size of GP_TEXTEDITOR_ARexxCmd"][::core::mem::size_of::<GP_TEXTEDITOR_ARexxCmd>() - 12usize];
15570    ["Alignment of GP_TEXTEDITOR_ARexxCmd"]
15571        [::core::mem::align_of::<GP_TEXTEDITOR_ARexxCmd>() - 2usize];
15572    ["Offset of field: GP_TEXTEDITOR_ARexxCmd::MethodID"]
15573        [::core::mem::offset_of!(GP_TEXTEDITOR_ARexxCmd, MethodID) - 0usize];
15574    ["Offset of field: GP_TEXTEDITOR_ARexxCmd::GInfo"]
15575        [::core::mem::offset_of!(GP_TEXTEDITOR_ARexxCmd, GInfo) - 4usize];
15576    ["Offset of field: GP_TEXTEDITOR_ARexxCmd::command"]
15577        [::core::mem::offset_of!(GP_TEXTEDITOR_ARexxCmd, command) - 8usize];
15578};
15579#[repr(C, packed(2))]
15580#[derive(Debug, Copy, Clone)]
15581pub struct GP_TEXTEDITOR_BlockInfo {
15582    pub MethodID: ULONG,
15583    pub GInfo: *mut GadgetInfo,
15584    pub startx: *mut ULONG,
15585    pub starty: *mut ULONG,
15586    pub stopx: *mut ULONG,
15587    pub stopy: *mut ULONG,
15588}
15589#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15590const _: () = {
15591    ["Size of GP_TEXTEDITOR_BlockInfo"]
15592        [::core::mem::size_of::<GP_TEXTEDITOR_BlockInfo>() - 24usize];
15593    ["Alignment of GP_TEXTEDITOR_BlockInfo"]
15594        [::core::mem::align_of::<GP_TEXTEDITOR_BlockInfo>() - 2usize];
15595    ["Offset of field: GP_TEXTEDITOR_BlockInfo::MethodID"]
15596        [::core::mem::offset_of!(GP_TEXTEDITOR_BlockInfo, MethodID) - 0usize];
15597    ["Offset of field: GP_TEXTEDITOR_BlockInfo::GInfo"]
15598        [::core::mem::offset_of!(GP_TEXTEDITOR_BlockInfo, GInfo) - 4usize];
15599    ["Offset of field: GP_TEXTEDITOR_BlockInfo::startx"]
15600        [::core::mem::offset_of!(GP_TEXTEDITOR_BlockInfo, startx) - 8usize];
15601    ["Offset of field: GP_TEXTEDITOR_BlockInfo::starty"]
15602        [::core::mem::offset_of!(GP_TEXTEDITOR_BlockInfo, starty) - 12usize];
15603    ["Offset of field: GP_TEXTEDITOR_BlockInfo::stopx"]
15604        [::core::mem::offset_of!(GP_TEXTEDITOR_BlockInfo, stopx) - 16usize];
15605    ["Offset of field: GP_TEXTEDITOR_BlockInfo::stopy"]
15606        [::core::mem::offset_of!(GP_TEXTEDITOR_BlockInfo, stopy) - 20usize];
15607};
15608#[repr(C, packed(2))]
15609#[derive(Debug, Copy, Clone)]
15610pub struct GP_TEXTEDITOR_ClearText {
15611    pub MethodID: ULONG,
15612    pub GInfo: *mut GadgetInfo,
15613}
15614#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15615const _: () = {
15616    ["Size of GP_TEXTEDITOR_ClearText"][::core::mem::size_of::<GP_TEXTEDITOR_ClearText>() - 8usize];
15617    ["Alignment of GP_TEXTEDITOR_ClearText"]
15618        [::core::mem::align_of::<GP_TEXTEDITOR_ClearText>() - 2usize];
15619    ["Offset of field: GP_TEXTEDITOR_ClearText::MethodID"]
15620        [::core::mem::offset_of!(GP_TEXTEDITOR_ClearText, MethodID) - 0usize];
15621    ["Offset of field: GP_TEXTEDITOR_ClearText::GInfo"]
15622        [::core::mem::offset_of!(GP_TEXTEDITOR_ClearText, GInfo) - 4usize];
15623};
15624#[repr(C, packed(2))]
15625#[derive(Debug, Copy, Clone)]
15626pub struct GP_TEXTEDITOR_ExportText {
15627    pub MethodID: ULONG,
15628    pub GInfo: *mut GadgetInfo,
15629}
15630#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15631const _: () = {
15632    ["Size of GP_TEXTEDITOR_ExportText"]
15633        [::core::mem::size_of::<GP_TEXTEDITOR_ExportText>() - 8usize];
15634    ["Alignment of GP_TEXTEDITOR_ExportText"]
15635        [::core::mem::align_of::<GP_TEXTEDITOR_ExportText>() - 2usize];
15636    ["Offset of field: GP_TEXTEDITOR_ExportText::MethodID"]
15637        [::core::mem::offset_of!(GP_TEXTEDITOR_ExportText, MethodID) - 0usize];
15638    ["Offset of field: GP_TEXTEDITOR_ExportText::GInfo"]
15639        [::core::mem::offset_of!(GP_TEXTEDITOR_ExportText, GInfo) - 4usize];
15640};
15641#[repr(C, packed(2))]
15642#[derive(Debug, Copy, Clone)]
15643pub struct GP_TEXTEDITOR_HandleError {
15644    pub MethodID: ULONG,
15645    pub errorcode: ULONG,
15646}
15647#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15648const _: () = {
15649    ["Size of GP_TEXTEDITOR_HandleError"]
15650        [::core::mem::size_of::<GP_TEXTEDITOR_HandleError>() - 8usize];
15651    ["Alignment of GP_TEXTEDITOR_HandleError"]
15652        [::core::mem::align_of::<GP_TEXTEDITOR_HandleError>() - 2usize];
15653    ["Offset of field: GP_TEXTEDITOR_HandleError::MethodID"]
15654        [::core::mem::offset_of!(GP_TEXTEDITOR_HandleError, MethodID) - 0usize];
15655    ["Offset of field: GP_TEXTEDITOR_HandleError::errorcode"]
15656        [::core::mem::offset_of!(GP_TEXTEDITOR_HandleError, errorcode) - 4usize];
15657};
15658#[repr(C, packed(2))]
15659#[derive(Debug, Copy, Clone)]
15660pub struct GP_TEXTEDITOR_InsertText {
15661    pub MethodID: ULONG,
15662    pub GInfo: *mut GadgetInfo,
15663    pub text: STRPTR,
15664    pub pos: LONG,
15665}
15666#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15667const _: () = {
15668    ["Size of GP_TEXTEDITOR_InsertText"]
15669        [::core::mem::size_of::<GP_TEXTEDITOR_InsertText>() - 16usize];
15670    ["Alignment of GP_TEXTEDITOR_InsertText"]
15671        [::core::mem::align_of::<GP_TEXTEDITOR_InsertText>() - 2usize];
15672    ["Offset of field: GP_TEXTEDITOR_InsertText::MethodID"]
15673        [::core::mem::offset_of!(GP_TEXTEDITOR_InsertText, MethodID) - 0usize];
15674    ["Offset of field: GP_TEXTEDITOR_InsertText::GInfo"]
15675        [::core::mem::offset_of!(GP_TEXTEDITOR_InsertText, GInfo) - 4usize];
15676    ["Offset of field: GP_TEXTEDITOR_InsertText::text"]
15677        [::core::mem::offset_of!(GP_TEXTEDITOR_InsertText, text) - 8usize];
15678    ["Offset of field: GP_TEXTEDITOR_InsertText::pos"]
15679        [::core::mem::offset_of!(GP_TEXTEDITOR_InsertText, pos) - 12usize];
15680};
15681#[repr(C, packed(2))]
15682#[derive(Debug, Copy, Clone)]
15683pub struct GP_TEXTEDITOR_MarkText {
15684    pub MethodID: ULONG,
15685    pub GInfo: *mut GadgetInfo,
15686    pub start_crsr_x: ULONG,
15687    pub start_crsr_y: ULONG,
15688    pub stop_crsr_x: ULONG,
15689    pub stop_crsr_y: ULONG,
15690}
15691#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15692const _: () = {
15693    ["Size of GP_TEXTEDITOR_MarkText"][::core::mem::size_of::<GP_TEXTEDITOR_MarkText>() - 24usize];
15694    ["Alignment of GP_TEXTEDITOR_MarkText"]
15695        [::core::mem::align_of::<GP_TEXTEDITOR_MarkText>() - 2usize];
15696    ["Offset of field: GP_TEXTEDITOR_MarkText::MethodID"]
15697        [::core::mem::offset_of!(GP_TEXTEDITOR_MarkText, MethodID) - 0usize];
15698    ["Offset of field: GP_TEXTEDITOR_MarkText::GInfo"]
15699        [::core::mem::offset_of!(GP_TEXTEDITOR_MarkText, GInfo) - 4usize];
15700    ["Offset of field: GP_TEXTEDITOR_MarkText::start_crsr_x"]
15701        [::core::mem::offset_of!(GP_TEXTEDITOR_MarkText, start_crsr_x) - 8usize];
15702    ["Offset of field: GP_TEXTEDITOR_MarkText::start_crsr_y"]
15703        [::core::mem::offset_of!(GP_TEXTEDITOR_MarkText, start_crsr_y) - 12usize];
15704    ["Offset of field: GP_TEXTEDITOR_MarkText::stop_crsr_x"]
15705        [::core::mem::offset_of!(GP_TEXTEDITOR_MarkText, stop_crsr_x) - 16usize];
15706    ["Offset of field: GP_TEXTEDITOR_MarkText::stop_crsr_y"]
15707        [::core::mem::offset_of!(GP_TEXTEDITOR_MarkText, stop_crsr_y) - 20usize];
15708};
15709#[repr(C, packed(2))]
15710#[derive(Debug, Copy, Clone)]
15711pub struct GP_TEXTEDITOR_Replace {
15712    pub MethodID: ULONG,
15713    pub GInfo: *mut GadgetInfo,
15714    pub newstring: STRPTR,
15715    pub flags: ULONG,
15716}
15717#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15718const _: () = {
15719    ["Size of GP_TEXTEDITOR_Replace"][::core::mem::size_of::<GP_TEXTEDITOR_Replace>() - 16usize];
15720    ["Alignment of GP_TEXTEDITOR_Replace"]
15721        [::core::mem::align_of::<GP_TEXTEDITOR_Replace>() - 2usize];
15722    ["Offset of field: GP_TEXTEDITOR_Replace::MethodID"]
15723        [::core::mem::offset_of!(GP_TEXTEDITOR_Replace, MethodID) - 0usize];
15724    ["Offset of field: GP_TEXTEDITOR_Replace::GInfo"]
15725        [::core::mem::offset_of!(GP_TEXTEDITOR_Replace, GInfo) - 4usize];
15726    ["Offset of field: GP_TEXTEDITOR_Replace::newstring"]
15727        [::core::mem::offset_of!(GP_TEXTEDITOR_Replace, newstring) - 8usize];
15728    ["Offset of field: GP_TEXTEDITOR_Replace::flags"]
15729        [::core::mem::offset_of!(GP_TEXTEDITOR_Replace, flags) - 12usize];
15730};
15731#[repr(C, packed(2))]
15732#[derive(Debug, Copy, Clone)]
15733pub struct GP_TEXTEDITOR_Search {
15734    pub MethodID: ULONG,
15735    pub GInfo: *mut GadgetInfo,
15736    pub string: STRPTR,
15737    pub flags: ULONG,
15738}
15739#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15740const _: () = {
15741    ["Size of GP_TEXTEDITOR_Search"][::core::mem::size_of::<GP_TEXTEDITOR_Search>() - 16usize];
15742    ["Alignment of GP_TEXTEDITOR_Search"][::core::mem::align_of::<GP_TEXTEDITOR_Search>() - 2usize];
15743    ["Offset of field: GP_TEXTEDITOR_Search::MethodID"]
15744        [::core::mem::offset_of!(GP_TEXTEDITOR_Search, MethodID) - 0usize];
15745    ["Offset of field: GP_TEXTEDITOR_Search::GInfo"]
15746        [::core::mem::offset_of!(GP_TEXTEDITOR_Search, GInfo) - 4usize];
15747    ["Offset of field: GP_TEXTEDITOR_Search::string"]
15748        [::core::mem::offset_of!(GP_TEXTEDITOR_Search, string) - 8usize];
15749    ["Offset of field: GP_TEXTEDITOR_Search::flags"]
15750        [::core::mem::offset_of!(GP_TEXTEDITOR_Search, flags) - 12usize];
15751};
15752#[repr(C, packed(2))]
15753#[derive(Debug, Copy, Clone)]
15754pub struct GP_TEXTEDITOR_AddChangeListener {
15755    pub MethodID: ULONG,
15756    pub listener: *mut ChangeListener,
15757}
15758#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15759const _: () = {
15760    ["Size of GP_TEXTEDITOR_AddChangeListener"]
15761        [::core::mem::size_of::<GP_TEXTEDITOR_AddChangeListener>() - 8usize];
15762    ["Alignment of GP_TEXTEDITOR_AddChangeListener"]
15763        [::core::mem::align_of::<GP_TEXTEDITOR_AddChangeListener>() - 2usize];
15764    ["Offset of field: GP_TEXTEDITOR_AddChangeListener::MethodID"]
15765        [::core::mem::offset_of!(GP_TEXTEDITOR_AddChangeListener, MethodID) - 0usize];
15766    ["Offset of field: GP_TEXTEDITOR_AddChangeListener::listener"]
15767        [::core::mem::offset_of!(GP_TEXTEDITOR_AddChangeListener, listener) - 4usize];
15768};
15769#[repr(C, packed(2))]
15770#[derive(Debug, Copy, Clone)]
15771pub struct GP_TEXTEDITOR_ReplaceAll {
15772    pub MethodID: ULONG,
15773    pub GInfo: *mut GadgetInfo,
15774    pub string: STRPTR,
15775    pub newstring: STRPTR,
15776    pub flags: ULONG,
15777}
15778#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15779const _: () = {
15780    ["Size of GP_TEXTEDITOR_ReplaceAll"]
15781        [::core::mem::size_of::<GP_TEXTEDITOR_ReplaceAll>() - 20usize];
15782    ["Alignment of GP_TEXTEDITOR_ReplaceAll"]
15783        [::core::mem::align_of::<GP_TEXTEDITOR_ReplaceAll>() - 2usize];
15784    ["Offset of field: GP_TEXTEDITOR_ReplaceAll::MethodID"]
15785        [::core::mem::offset_of!(GP_TEXTEDITOR_ReplaceAll, MethodID) - 0usize];
15786    ["Offset of field: GP_TEXTEDITOR_ReplaceAll::GInfo"]
15787        [::core::mem::offset_of!(GP_TEXTEDITOR_ReplaceAll, GInfo) - 4usize];
15788    ["Offset of field: GP_TEXTEDITOR_ReplaceAll::string"]
15789        [::core::mem::offset_of!(GP_TEXTEDITOR_ReplaceAll, string) - 8usize];
15790    ["Offset of field: GP_TEXTEDITOR_ReplaceAll::newstring"]
15791        [::core::mem::offset_of!(GP_TEXTEDITOR_ReplaceAll, newstring) - 12usize];
15792    ["Offset of field: GP_TEXTEDITOR_ReplaceAll::flags"]
15793        [::core::mem::offset_of!(GP_TEXTEDITOR_ReplaceAll, flags) - 16usize];
15794};
15795#[repr(C, packed(2))]
15796#[derive(Debug, Copy, Clone)]
15797pub struct ClickMessage {
15798    pub LineContents: STRPTR,
15799    pub ClickPosition: ULONG,
15800}
15801#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15802const _: () = {
15803    ["Size of ClickMessage"][::core::mem::size_of::<ClickMessage>() - 8usize];
15804    ["Alignment of ClickMessage"][::core::mem::align_of::<ClickMessage>() - 2usize];
15805    ["Offset of field: ClickMessage::LineContents"]
15806        [::core::mem::offset_of!(ClickMessage, LineContents) - 0usize];
15807    ["Offset of field: ClickMessage::ClickPosition"]
15808        [::core::mem::offset_of!(ClickMessage, ClickPosition) - 4usize];
15809};
15810#[repr(C, packed(2))]
15811#[derive(Debug, Copy, Clone)]
15812pub struct HighlightMessage {
15813    pub Version: ULONG,
15814    pub Text: STRPTR,
15815    pub StatusOfPrevBlock: ULONG,
15816}
15817#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15818const _: () = {
15819    ["Size of HighlightMessage"][::core::mem::size_of::<HighlightMessage>() - 12usize];
15820    ["Alignment of HighlightMessage"][::core::mem::align_of::<HighlightMessage>() - 2usize];
15821    ["Offset of field: HighlightMessage::Version"]
15822        [::core::mem::offset_of!(HighlightMessage, Version) - 0usize];
15823    ["Offset of field: HighlightMessage::Text"]
15824        [::core::mem::offset_of!(HighlightMessage, Text) - 4usize];
15825    ["Offset of field: HighlightMessage::StatusOfPrevBlock"]
15826        [::core::mem::offset_of!(HighlightMessage, StatusOfPrevBlock) - 8usize];
15827};
15828#[repr(C, packed(2))]
15829#[derive(Debug, Copy, Clone)]
15830pub struct LeftBarRenderMessage {
15831    pub Command: UWORD,
15832    pub Version: UWORD,
15833    pub BlockNum: ULONG,
15834    pub LineSubNum: ULONG,
15835    pub RastPort: *mut RastPort,
15836}
15837#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15838const _: () = {
15839    ["Size of LeftBarRenderMessage"][::core::mem::size_of::<LeftBarRenderMessage>() - 16usize];
15840    ["Alignment of LeftBarRenderMessage"][::core::mem::align_of::<LeftBarRenderMessage>() - 2usize];
15841    ["Offset of field: LeftBarRenderMessage::Command"]
15842        [::core::mem::offset_of!(LeftBarRenderMessage, Command) - 0usize];
15843    ["Offset of field: LeftBarRenderMessage::Version"]
15844        [::core::mem::offset_of!(LeftBarRenderMessage, Version) - 2usize];
15845    ["Offset of field: LeftBarRenderMessage::BlockNum"]
15846        [::core::mem::offset_of!(LeftBarRenderMessage, BlockNum) - 4usize];
15847    ["Offset of field: LeftBarRenderMessage::LineSubNum"]
15848        [::core::mem::offset_of!(LeftBarRenderMessage, LineSubNum) - 8usize];
15849    ["Offset of field: LeftBarRenderMessage::RastPort"]
15850        [::core::mem::offset_of!(LeftBarRenderMessage, RastPort) - 12usize];
15851};
15852#[repr(C, packed(2))]
15853#[derive(Debug, Copy, Clone)]
15854pub struct LeftBarMouseMessage {
15855    pub Command: UWORD,
15856    pub Version: UWORD,
15857    pub BlockNum: ULONG,
15858    pub Code: UWORD,
15859    pub Qualifier: UWORD,
15860    pub X: WORD,
15861    pub Y: WORD,
15862    pub TimeStamp: timeval,
15863}
15864#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15865const _: () = {
15866    ["Size of LeftBarMouseMessage"][::core::mem::size_of::<LeftBarMouseMessage>() - 24usize];
15867    ["Alignment of LeftBarMouseMessage"][::core::mem::align_of::<LeftBarMouseMessage>() - 2usize];
15868    ["Offset of field: LeftBarMouseMessage::Command"]
15869        [::core::mem::offset_of!(LeftBarMouseMessage, Command) - 0usize];
15870    ["Offset of field: LeftBarMouseMessage::Version"]
15871        [::core::mem::offset_of!(LeftBarMouseMessage, Version) - 2usize];
15872    ["Offset of field: LeftBarMouseMessage::BlockNum"]
15873        [::core::mem::offset_of!(LeftBarMouseMessage, BlockNum) - 4usize];
15874    ["Offset of field: LeftBarMouseMessage::Code"]
15875        [::core::mem::offset_of!(LeftBarMouseMessage, Code) - 8usize];
15876    ["Offset of field: LeftBarMouseMessage::Qualifier"]
15877        [::core::mem::offset_of!(LeftBarMouseMessage, Qualifier) - 10usize];
15878    ["Offset of field: LeftBarMouseMessage::X"]
15879        [::core::mem::offset_of!(LeftBarMouseMessage, X) - 12usize];
15880    ["Offset of field: LeftBarMouseMessage::Y"]
15881        [::core::mem::offset_of!(LeftBarMouseMessage, Y) - 14usize];
15882    ["Offset of field: LeftBarMouseMessage::TimeStamp"]
15883        [::core::mem::offset_of!(LeftBarMouseMessage, TimeStamp) - 16usize];
15884};
15885#[repr(C, packed(2))]
15886#[derive(Debug, Copy, Clone)]
15887pub struct VSprite {
15888    pub NextVSprite: *mut VSprite,
15889    pub PrevVSprite: *mut VSprite,
15890    pub DrawPath: *mut VSprite,
15891    pub ClearPath: *mut VSprite,
15892    pub OldY: WORD,
15893    pub OldX: WORD,
15894    pub Flags: WORD,
15895    pub Y: WORD,
15896    pub X: WORD,
15897    pub Height: WORD,
15898    pub Width: WORD,
15899    pub Depth: WORD,
15900    pub MeMask: WORD,
15901    pub HitMask: WORD,
15902    pub ImageData: *mut WORD,
15903    pub BorderLine: *mut WORD,
15904    pub CollMask: *mut WORD,
15905    pub SprColors: *mut WORD,
15906    pub VSBob: *mut Bob,
15907    pub PlanePick: BYTE,
15908    pub PlaneOnOff: BYTE,
15909    pub VUserExt: WORD,
15910}
15911#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15912const _: () = {
15913    ["Size of VSprite"][::core::mem::size_of::<VSprite>() - 60usize];
15914    ["Alignment of VSprite"][::core::mem::align_of::<VSprite>() - 2usize];
15915    ["Offset of field: VSprite::NextVSprite"]
15916        [::core::mem::offset_of!(VSprite, NextVSprite) - 0usize];
15917    ["Offset of field: VSprite::PrevVSprite"]
15918        [::core::mem::offset_of!(VSprite, PrevVSprite) - 4usize];
15919    ["Offset of field: VSprite::DrawPath"][::core::mem::offset_of!(VSprite, DrawPath) - 8usize];
15920    ["Offset of field: VSprite::ClearPath"][::core::mem::offset_of!(VSprite, ClearPath) - 12usize];
15921    ["Offset of field: VSprite::OldY"][::core::mem::offset_of!(VSprite, OldY) - 16usize];
15922    ["Offset of field: VSprite::OldX"][::core::mem::offset_of!(VSprite, OldX) - 18usize];
15923    ["Offset of field: VSprite::Flags"][::core::mem::offset_of!(VSprite, Flags) - 20usize];
15924    ["Offset of field: VSprite::Y"][::core::mem::offset_of!(VSprite, Y) - 22usize];
15925    ["Offset of field: VSprite::X"][::core::mem::offset_of!(VSprite, X) - 24usize];
15926    ["Offset of field: VSprite::Height"][::core::mem::offset_of!(VSprite, Height) - 26usize];
15927    ["Offset of field: VSprite::Width"][::core::mem::offset_of!(VSprite, Width) - 28usize];
15928    ["Offset of field: VSprite::Depth"][::core::mem::offset_of!(VSprite, Depth) - 30usize];
15929    ["Offset of field: VSprite::MeMask"][::core::mem::offset_of!(VSprite, MeMask) - 32usize];
15930    ["Offset of field: VSprite::HitMask"][::core::mem::offset_of!(VSprite, HitMask) - 34usize];
15931    ["Offset of field: VSprite::ImageData"][::core::mem::offset_of!(VSprite, ImageData) - 36usize];
15932    ["Offset of field: VSprite::BorderLine"]
15933        [::core::mem::offset_of!(VSprite, BorderLine) - 40usize];
15934    ["Offset of field: VSprite::CollMask"][::core::mem::offset_of!(VSprite, CollMask) - 44usize];
15935    ["Offset of field: VSprite::SprColors"][::core::mem::offset_of!(VSprite, SprColors) - 48usize];
15936    ["Offset of field: VSprite::VSBob"][::core::mem::offset_of!(VSprite, VSBob) - 52usize];
15937    ["Offset of field: VSprite::PlanePick"][::core::mem::offset_of!(VSprite, PlanePick) - 56usize];
15938    ["Offset of field: VSprite::PlaneOnOff"]
15939        [::core::mem::offset_of!(VSprite, PlaneOnOff) - 57usize];
15940    ["Offset of field: VSprite::VUserExt"][::core::mem::offset_of!(VSprite, VUserExt) - 58usize];
15941};
15942#[repr(C, packed(2))]
15943#[derive(Debug, Copy, Clone)]
15944pub struct Bob {
15945    pub Flags: WORD,
15946    pub SaveBuffer: *mut WORD,
15947    pub ImageShadow: *mut WORD,
15948    pub Before: *mut Bob,
15949    pub After: *mut Bob,
15950    pub BobVSprite: *mut VSprite,
15951    pub BobComp: *mut AnimComp,
15952    pub DBuffer: *mut DBufPacket,
15953    pub BUserExt: WORD,
15954}
15955#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15956const _: () = {
15957    ["Size of Bob"][::core::mem::size_of::<Bob>() - 32usize];
15958    ["Alignment of Bob"][::core::mem::align_of::<Bob>() - 2usize];
15959    ["Offset of field: Bob::Flags"][::core::mem::offset_of!(Bob, Flags) - 0usize];
15960    ["Offset of field: Bob::SaveBuffer"][::core::mem::offset_of!(Bob, SaveBuffer) - 2usize];
15961    ["Offset of field: Bob::ImageShadow"][::core::mem::offset_of!(Bob, ImageShadow) - 6usize];
15962    ["Offset of field: Bob::Before"][::core::mem::offset_of!(Bob, Before) - 10usize];
15963    ["Offset of field: Bob::After"][::core::mem::offset_of!(Bob, After) - 14usize];
15964    ["Offset of field: Bob::BobVSprite"][::core::mem::offset_of!(Bob, BobVSprite) - 18usize];
15965    ["Offset of field: Bob::BobComp"][::core::mem::offset_of!(Bob, BobComp) - 22usize];
15966    ["Offset of field: Bob::DBuffer"][::core::mem::offset_of!(Bob, DBuffer) - 26usize];
15967    ["Offset of field: Bob::BUserExt"][::core::mem::offset_of!(Bob, BUserExt) - 30usize];
15968};
15969#[repr(C, packed(2))]
15970#[derive(Debug, Copy, Clone)]
15971pub struct AnimComp {
15972    pub Flags: WORD,
15973    pub Timer: WORD,
15974    pub TimeSet: WORD,
15975    pub NextComp: *mut AnimComp,
15976    pub PrevComp: *mut AnimComp,
15977    pub NextSeq: *mut AnimComp,
15978    pub PrevSeq: *mut AnimComp,
15979    pub AnimCRoutine: FPTR,
15980    pub YTrans: WORD,
15981    pub XTrans: WORD,
15982    pub HeadOb: *mut AnimOb,
15983    pub AnimBob: *mut Bob,
15984}
15985#[allow(clippy::unnecessary_operation, clippy::identity_op)]
15986const _: () = {
15987    ["Size of AnimComp"][::core::mem::size_of::<AnimComp>() - 38usize];
15988    ["Alignment of AnimComp"][::core::mem::align_of::<AnimComp>() - 2usize];
15989    ["Offset of field: AnimComp::Flags"][::core::mem::offset_of!(AnimComp, Flags) - 0usize];
15990    ["Offset of field: AnimComp::Timer"][::core::mem::offset_of!(AnimComp, Timer) - 2usize];
15991    ["Offset of field: AnimComp::TimeSet"][::core::mem::offset_of!(AnimComp, TimeSet) - 4usize];
15992    ["Offset of field: AnimComp::NextComp"][::core::mem::offset_of!(AnimComp, NextComp) - 6usize];
15993    ["Offset of field: AnimComp::PrevComp"][::core::mem::offset_of!(AnimComp, PrevComp) - 10usize];
15994    ["Offset of field: AnimComp::NextSeq"][::core::mem::offset_of!(AnimComp, NextSeq) - 14usize];
15995    ["Offset of field: AnimComp::PrevSeq"][::core::mem::offset_of!(AnimComp, PrevSeq) - 18usize];
15996    ["Offset of field: AnimComp::AnimCRoutine"]
15997        [::core::mem::offset_of!(AnimComp, AnimCRoutine) - 22usize];
15998    ["Offset of field: AnimComp::YTrans"][::core::mem::offset_of!(AnimComp, YTrans) - 26usize];
15999    ["Offset of field: AnimComp::XTrans"][::core::mem::offset_of!(AnimComp, XTrans) - 28usize];
16000    ["Offset of field: AnimComp::HeadOb"][::core::mem::offset_of!(AnimComp, HeadOb) - 30usize];
16001    ["Offset of field: AnimComp::AnimBob"][::core::mem::offset_of!(AnimComp, AnimBob) - 34usize];
16002};
16003#[repr(C, packed(2))]
16004#[derive(Debug, Copy, Clone)]
16005pub struct AnimOb {
16006    pub NextOb: *mut AnimOb,
16007    pub PrevOb: *mut AnimOb,
16008    pub Clock: LONG,
16009    pub AnOldY: WORD,
16010    pub AnOldX: WORD,
16011    pub AnY: WORD,
16012    pub AnX: WORD,
16013    pub YVel: WORD,
16014    pub XVel: WORD,
16015    pub YAccel: WORD,
16016    pub XAccel: WORD,
16017    pub RingYTrans: WORD,
16018    pub RingXTrans: WORD,
16019    pub AnimORoutine: FPTR,
16020    pub HeadComp: *mut AnimComp,
16021    pub AUserExt: WORD,
16022}
16023#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16024const _: () = {
16025    ["Size of AnimOb"][::core::mem::size_of::<AnimOb>() - 42usize];
16026    ["Alignment of AnimOb"][::core::mem::align_of::<AnimOb>() - 2usize];
16027    ["Offset of field: AnimOb::NextOb"][::core::mem::offset_of!(AnimOb, NextOb) - 0usize];
16028    ["Offset of field: AnimOb::PrevOb"][::core::mem::offset_of!(AnimOb, PrevOb) - 4usize];
16029    ["Offset of field: AnimOb::Clock"][::core::mem::offset_of!(AnimOb, Clock) - 8usize];
16030    ["Offset of field: AnimOb::AnOldY"][::core::mem::offset_of!(AnimOb, AnOldY) - 12usize];
16031    ["Offset of field: AnimOb::AnOldX"][::core::mem::offset_of!(AnimOb, AnOldX) - 14usize];
16032    ["Offset of field: AnimOb::AnY"][::core::mem::offset_of!(AnimOb, AnY) - 16usize];
16033    ["Offset of field: AnimOb::AnX"][::core::mem::offset_of!(AnimOb, AnX) - 18usize];
16034    ["Offset of field: AnimOb::YVel"][::core::mem::offset_of!(AnimOb, YVel) - 20usize];
16035    ["Offset of field: AnimOb::XVel"][::core::mem::offset_of!(AnimOb, XVel) - 22usize];
16036    ["Offset of field: AnimOb::YAccel"][::core::mem::offset_of!(AnimOb, YAccel) - 24usize];
16037    ["Offset of field: AnimOb::XAccel"][::core::mem::offset_of!(AnimOb, XAccel) - 26usize];
16038    ["Offset of field: AnimOb::RingYTrans"][::core::mem::offset_of!(AnimOb, RingYTrans) - 28usize];
16039    ["Offset of field: AnimOb::RingXTrans"][::core::mem::offset_of!(AnimOb, RingXTrans) - 30usize];
16040    ["Offset of field: AnimOb::AnimORoutine"]
16041        [::core::mem::offset_of!(AnimOb, AnimORoutine) - 32usize];
16042    ["Offset of field: AnimOb::HeadComp"][::core::mem::offset_of!(AnimOb, HeadComp) - 36usize];
16043    ["Offset of field: AnimOb::AUserExt"][::core::mem::offset_of!(AnimOb, AUserExt) - 40usize];
16044};
16045#[repr(C, packed(2))]
16046#[derive(Debug, Copy, Clone)]
16047pub struct DBufPacket {
16048    pub BufY: WORD,
16049    pub BufX: WORD,
16050    pub BufPath: *mut VSprite,
16051    pub BufBuffer: *mut WORD,
16052}
16053#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16054const _: () = {
16055    ["Size of DBufPacket"][::core::mem::size_of::<DBufPacket>() - 12usize];
16056    ["Alignment of DBufPacket"][::core::mem::align_of::<DBufPacket>() - 2usize];
16057    ["Offset of field: DBufPacket::BufY"][::core::mem::offset_of!(DBufPacket, BufY) - 0usize];
16058    ["Offset of field: DBufPacket::BufX"][::core::mem::offset_of!(DBufPacket, BufX) - 2usize];
16059    ["Offset of field: DBufPacket::BufPath"][::core::mem::offset_of!(DBufPacket, BufPath) - 4usize];
16060    ["Offset of field: DBufPacket::BufBuffer"]
16061        [::core::mem::offset_of!(DBufPacket, BufBuffer) - 8usize];
16062};
16063#[repr(C, packed(2))]
16064#[derive(Debug, Copy, Clone)]
16065pub struct collTable {
16066    pub collPtrs: [FPTR; 16usize],
16067}
16068#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16069const _: () = {
16070    ["Size of collTable"][::core::mem::size_of::<collTable>() - 64usize];
16071    ["Alignment of collTable"][::core::mem::align_of::<collTable>() - 2usize];
16072    ["Offset of field: collTable::collPtrs"][::core::mem::offset_of!(collTable, collPtrs) - 0usize];
16073};
16074#[repr(C, packed(2))]
16075#[derive(Debug, Copy, Clone)]
16076pub struct GfxBase {
16077    pub LibNode: Library,
16078    pub ActiView: *mut View,
16079    pub copinit: *mut copinit,
16080    pub cia: *mut LONG,
16081    pub blitter: *mut LONG,
16082    pub LOFlist: *mut UWORD,
16083    pub SHFlist: *mut UWORD,
16084    pub blthd: *mut bltnode,
16085    pub blttl: *mut bltnode,
16086    pub bsblthd: *mut bltnode,
16087    pub bsblttl: *mut bltnode,
16088    pub vbsrv: Interrupt,
16089    pub timsrv: Interrupt,
16090    pub bltsrv: Interrupt,
16091    pub TextFonts: List,
16092    pub DefaultFont: *mut TextFont,
16093    pub Modes: UWORD,
16094    pub VBlank: BYTE,
16095    pub Debug: BYTE,
16096    pub BeamSync: WORD,
16097    pub system_bplcon0: WORD,
16098    pub SpriteReserved: UBYTE,
16099    pub bytereserved: UBYTE,
16100    pub Flags: UWORD,
16101    pub BlitLock: WORD,
16102    pub BlitNest: WORD,
16103    pub BlitWaitQ: List,
16104    pub BlitOwner: *mut Task,
16105    pub TOF_WaitQ: List,
16106    pub DisplayFlags: UWORD,
16107    pub SimpleSprites: *mut *mut SimpleSprite,
16108    pub MaxDisplayRow: UWORD,
16109    pub MaxDisplayColumn: UWORD,
16110    pub NormalDisplayRows: UWORD,
16111    pub NormalDisplayColumns: UWORD,
16112    pub NormalDPMX: UWORD,
16113    pub NormalDPMY: UWORD,
16114    pub LastChanceMemory: *mut SignalSemaphore,
16115    pub LCMptr: *mut UWORD,
16116    pub MicrosPerLine: UWORD,
16117    pub MinDisplayColumn: UWORD,
16118    pub ChipRevBits0: UBYTE,
16119    pub MemType: UBYTE,
16120    pub crb_reserved: [UBYTE; 4usize],
16121    pub monitor_id: UWORD,
16122    pub hedley: [ULONG; 8usize],
16123    pub hedley_sprites: [ULONG; 8usize],
16124    pub hedley_sprites1: [ULONG; 8usize],
16125    pub hedley_count: WORD,
16126    pub hedley_flags: UWORD,
16127    pub hedley_tmp: WORD,
16128    pub hash_table: *mut LONG,
16129    pub current_tot_rows: UWORD,
16130    pub current_tot_cclks: UWORD,
16131    pub hedley_hint: UBYTE,
16132    pub hedley_hint2: UBYTE,
16133    pub nreserved: [ULONG; 4usize],
16134    pub a2024_sync_raster: *mut LONG,
16135    pub control_delta_pal: UWORD,
16136    pub control_delta_ntsc: UWORD,
16137    pub current_monitor: *mut MonitorSpec,
16138    pub MonitorList: List,
16139    pub default_monitor: *mut MonitorSpec,
16140    pub MonitorListSemaphore: *mut SignalSemaphore,
16141    pub DisplayInfoDataBase: *mut ::core::ffi::c_void,
16142    pub TopLine: UWORD,
16143    pub ActiViewCprSemaphore: *mut SignalSemaphore,
16144    pub UtilBase: *mut Library,
16145    pub ExecBase: *mut Library,
16146    pub bwshifts: *mut UBYTE,
16147    pub StrtFetchMasks: *mut UWORD,
16148    pub StopFetchMasks: *mut UWORD,
16149    pub Overrun: *mut UWORD,
16150    pub RealStops: *mut WORD,
16151    pub SpriteWidth: UWORD,
16152    pub SpriteFMode: UWORD,
16153    pub SoftSprites: BYTE,
16154    pub arraywidth: BYTE,
16155    pub DefaultSpriteWidth: UWORD,
16156    pub SprMoveDisable: BYTE,
16157    pub WantChips: UBYTE,
16158    pub BoardMemType: UBYTE,
16159    pub Bugs: UBYTE,
16160    pub gb_LayersBase: *mut ULONG,
16161    pub ColorMask: ULONG,
16162    pub IVector: APTR,
16163    pub IData: APTR,
16164    pub SpecialCounter: ULONG,
16165    pub DBList: APTR,
16166    pub MonitorFlags: UWORD,
16167    pub ScanDoubledSprites: UBYTE,
16168    pub BP3Bits: UBYTE,
16169    pub MonitorVBlank: AnalogSignalInterval,
16170    pub natural_monitor: *mut MonitorSpec,
16171    pub ProgData: APTR,
16172    pub ExtSprites: UBYTE,
16173    pub pad3: UBYTE,
16174    pub GfxFlags: UWORD,
16175    pub VBCounter: ULONG,
16176    pub HashTableSemaphore: *mut SignalSemaphore,
16177    pub HWEmul: [*mut ULONG; 9usize],
16178    pub Scratch: *mut RegionRectangle,
16179    pub ScratchSize: ULONG,
16180}
16181#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16182const _: () = {
16183    ["Size of GfxBase"][::core::mem::size_of::<GfxBase>() - 552usize];
16184    ["Alignment of GfxBase"][::core::mem::align_of::<GfxBase>() - 2usize];
16185    ["Offset of field: GfxBase::LibNode"][::core::mem::offset_of!(GfxBase, LibNode) - 0usize];
16186    ["Offset of field: GfxBase::ActiView"][::core::mem::offset_of!(GfxBase, ActiView) - 34usize];
16187    ["Offset of field: GfxBase::copinit"][::core::mem::offset_of!(GfxBase, copinit) - 38usize];
16188    ["Offset of field: GfxBase::cia"][::core::mem::offset_of!(GfxBase, cia) - 42usize];
16189    ["Offset of field: GfxBase::blitter"][::core::mem::offset_of!(GfxBase, blitter) - 46usize];
16190    ["Offset of field: GfxBase::LOFlist"][::core::mem::offset_of!(GfxBase, LOFlist) - 50usize];
16191    ["Offset of field: GfxBase::SHFlist"][::core::mem::offset_of!(GfxBase, SHFlist) - 54usize];
16192    ["Offset of field: GfxBase::blthd"][::core::mem::offset_of!(GfxBase, blthd) - 58usize];
16193    ["Offset of field: GfxBase::blttl"][::core::mem::offset_of!(GfxBase, blttl) - 62usize];
16194    ["Offset of field: GfxBase::bsblthd"][::core::mem::offset_of!(GfxBase, bsblthd) - 66usize];
16195    ["Offset of field: GfxBase::bsblttl"][::core::mem::offset_of!(GfxBase, bsblttl) - 70usize];
16196    ["Offset of field: GfxBase::vbsrv"][::core::mem::offset_of!(GfxBase, vbsrv) - 74usize];
16197    ["Offset of field: GfxBase::timsrv"][::core::mem::offset_of!(GfxBase, timsrv) - 96usize];
16198    ["Offset of field: GfxBase::bltsrv"][::core::mem::offset_of!(GfxBase, bltsrv) - 118usize];
16199    ["Offset of field: GfxBase::TextFonts"][::core::mem::offset_of!(GfxBase, TextFonts) - 140usize];
16200    ["Offset of field: GfxBase::DefaultFont"]
16201        [::core::mem::offset_of!(GfxBase, DefaultFont) - 154usize];
16202    ["Offset of field: GfxBase::Modes"][::core::mem::offset_of!(GfxBase, Modes) - 158usize];
16203    ["Offset of field: GfxBase::VBlank"][::core::mem::offset_of!(GfxBase, VBlank) - 160usize];
16204    ["Offset of field: GfxBase::Debug"][::core::mem::offset_of!(GfxBase, Debug) - 161usize];
16205    ["Offset of field: GfxBase::BeamSync"][::core::mem::offset_of!(GfxBase, BeamSync) - 162usize];
16206    ["Offset of field: GfxBase::system_bplcon0"]
16207        [::core::mem::offset_of!(GfxBase, system_bplcon0) - 164usize];
16208    ["Offset of field: GfxBase::SpriteReserved"]
16209        [::core::mem::offset_of!(GfxBase, SpriteReserved) - 166usize];
16210    ["Offset of field: GfxBase::bytereserved"]
16211        [::core::mem::offset_of!(GfxBase, bytereserved) - 167usize];
16212    ["Offset of field: GfxBase::Flags"][::core::mem::offset_of!(GfxBase, Flags) - 168usize];
16213    ["Offset of field: GfxBase::BlitLock"][::core::mem::offset_of!(GfxBase, BlitLock) - 170usize];
16214    ["Offset of field: GfxBase::BlitNest"][::core::mem::offset_of!(GfxBase, BlitNest) - 172usize];
16215    ["Offset of field: GfxBase::BlitWaitQ"][::core::mem::offset_of!(GfxBase, BlitWaitQ) - 174usize];
16216    ["Offset of field: GfxBase::BlitOwner"][::core::mem::offset_of!(GfxBase, BlitOwner) - 188usize];
16217    ["Offset of field: GfxBase::TOF_WaitQ"][::core::mem::offset_of!(GfxBase, TOF_WaitQ) - 192usize];
16218    ["Offset of field: GfxBase::DisplayFlags"]
16219        [::core::mem::offset_of!(GfxBase, DisplayFlags) - 206usize];
16220    ["Offset of field: GfxBase::SimpleSprites"]
16221        [::core::mem::offset_of!(GfxBase, SimpleSprites) - 208usize];
16222    ["Offset of field: GfxBase::MaxDisplayRow"]
16223        [::core::mem::offset_of!(GfxBase, MaxDisplayRow) - 212usize];
16224    ["Offset of field: GfxBase::MaxDisplayColumn"]
16225        [::core::mem::offset_of!(GfxBase, MaxDisplayColumn) - 214usize];
16226    ["Offset of field: GfxBase::NormalDisplayRows"]
16227        [::core::mem::offset_of!(GfxBase, NormalDisplayRows) - 216usize];
16228    ["Offset of field: GfxBase::NormalDisplayColumns"]
16229        [::core::mem::offset_of!(GfxBase, NormalDisplayColumns) - 218usize];
16230    ["Offset of field: GfxBase::NormalDPMX"]
16231        [::core::mem::offset_of!(GfxBase, NormalDPMX) - 220usize];
16232    ["Offset of field: GfxBase::NormalDPMY"]
16233        [::core::mem::offset_of!(GfxBase, NormalDPMY) - 222usize];
16234    ["Offset of field: GfxBase::LastChanceMemory"]
16235        [::core::mem::offset_of!(GfxBase, LastChanceMemory) - 224usize];
16236    ["Offset of field: GfxBase::LCMptr"][::core::mem::offset_of!(GfxBase, LCMptr) - 228usize];
16237    ["Offset of field: GfxBase::MicrosPerLine"]
16238        [::core::mem::offset_of!(GfxBase, MicrosPerLine) - 232usize];
16239    ["Offset of field: GfxBase::MinDisplayColumn"]
16240        [::core::mem::offset_of!(GfxBase, MinDisplayColumn) - 234usize];
16241    ["Offset of field: GfxBase::ChipRevBits0"]
16242        [::core::mem::offset_of!(GfxBase, ChipRevBits0) - 236usize];
16243    ["Offset of field: GfxBase::MemType"][::core::mem::offset_of!(GfxBase, MemType) - 237usize];
16244    ["Offset of field: GfxBase::crb_reserved"]
16245        [::core::mem::offset_of!(GfxBase, crb_reserved) - 238usize];
16246    ["Offset of field: GfxBase::monitor_id"]
16247        [::core::mem::offset_of!(GfxBase, monitor_id) - 242usize];
16248    ["Offset of field: GfxBase::hedley"][::core::mem::offset_of!(GfxBase, hedley) - 244usize];
16249    ["Offset of field: GfxBase::hedley_sprites"]
16250        [::core::mem::offset_of!(GfxBase, hedley_sprites) - 276usize];
16251    ["Offset of field: GfxBase::hedley_sprites1"]
16252        [::core::mem::offset_of!(GfxBase, hedley_sprites1) - 308usize];
16253    ["Offset of field: GfxBase::hedley_count"]
16254        [::core::mem::offset_of!(GfxBase, hedley_count) - 340usize];
16255    ["Offset of field: GfxBase::hedley_flags"]
16256        [::core::mem::offset_of!(GfxBase, hedley_flags) - 342usize];
16257    ["Offset of field: GfxBase::hedley_tmp"]
16258        [::core::mem::offset_of!(GfxBase, hedley_tmp) - 344usize];
16259    ["Offset of field: GfxBase::hash_table"]
16260        [::core::mem::offset_of!(GfxBase, hash_table) - 346usize];
16261    ["Offset of field: GfxBase::current_tot_rows"]
16262        [::core::mem::offset_of!(GfxBase, current_tot_rows) - 350usize];
16263    ["Offset of field: GfxBase::current_tot_cclks"]
16264        [::core::mem::offset_of!(GfxBase, current_tot_cclks) - 352usize];
16265    ["Offset of field: GfxBase::hedley_hint"]
16266        [::core::mem::offset_of!(GfxBase, hedley_hint) - 354usize];
16267    ["Offset of field: GfxBase::hedley_hint2"]
16268        [::core::mem::offset_of!(GfxBase, hedley_hint2) - 355usize];
16269    ["Offset of field: GfxBase::nreserved"][::core::mem::offset_of!(GfxBase, nreserved) - 356usize];
16270    ["Offset of field: GfxBase::a2024_sync_raster"]
16271        [::core::mem::offset_of!(GfxBase, a2024_sync_raster) - 372usize];
16272    ["Offset of field: GfxBase::control_delta_pal"]
16273        [::core::mem::offset_of!(GfxBase, control_delta_pal) - 376usize];
16274    ["Offset of field: GfxBase::control_delta_ntsc"]
16275        [::core::mem::offset_of!(GfxBase, control_delta_ntsc) - 378usize];
16276    ["Offset of field: GfxBase::current_monitor"]
16277        [::core::mem::offset_of!(GfxBase, current_monitor) - 380usize];
16278    ["Offset of field: GfxBase::MonitorList"]
16279        [::core::mem::offset_of!(GfxBase, MonitorList) - 384usize];
16280    ["Offset of field: GfxBase::default_monitor"]
16281        [::core::mem::offset_of!(GfxBase, default_monitor) - 398usize];
16282    ["Offset of field: GfxBase::MonitorListSemaphore"]
16283        [::core::mem::offset_of!(GfxBase, MonitorListSemaphore) - 402usize];
16284    ["Offset of field: GfxBase::DisplayInfoDataBase"]
16285        [::core::mem::offset_of!(GfxBase, DisplayInfoDataBase) - 406usize];
16286    ["Offset of field: GfxBase::TopLine"][::core::mem::offset_of!(GfxBase, TopLine) - 410usize];
16287    ["Offset of field: GfxBase::ActiViewCprSemaphore"]
16288        [::core::mem::offset_of!(GfxBase, ActiViewCprSemaphore) - 412usize];
16289    ["Offset of field: GfxBase::UtilBase"][::core::mem::offset_of!(GfxBase, UtilBase) - 416usize];
16290    ["Offset of field: GfxBase::ExecBase"][::core::mem::offset_of!(GfxBase, ExecBase) - 420usize];
16291    ["Offset of field: GfxBase::bwshifts"][::core::mem::offset_of!(GfxBase, bwshifts) - 424usize];
16292    ["Offset of field: GfxBase::StrtFetchMasks"]
16293        [::core::mem::offset_of!(GfxBase, StrtFetchMasks) - 428usize];
16294    ["Offset of field: GfxBase::StopFetchMasks"]
16295        [::core::mem::offset_of!(GfxBase, StopFetchMasks) - 432usize];
16296    ["Offset of field: GfxBase::Overrun"][::core::mem::offset_of!(GfxBase, Overrun) - 436usize];
16297    ["Offset of field: GfxBase::RealStops"][::core::mem::offset_of!(GfxBase, RealStops) - 440usize];
16298    ["Offset of field: GfxBase::SpriteWidth"]
16299        [::core::mem::offset_of!(GfxBase, SpriteWidth) - 444usize];
16300    ["Offset of field: GfxBase::SpriteFMode"]
16301        [::core::mem::offset_of!(GfxBase, SpriteFMode) - 446usize];
16302    ["Offset of field: GfxBase::SoftSprites"]
16303        [::core::mem::offset_of!(GfxBase, SoftSprites) - 448usize];
16304    ["Offset of field: GfxBase::arraywidth"]
16305        [::core::mem::offset_of!(GfxBase, arraywidth) - 449usize];
16306    ["Offset of field: GfxBase::DefaultSpriteWidth"]
16307        [::core::mem::offset_of!(GfxBase, DefaultSpriteWidth) - 450usize];
16308    ["Offset of field: GfxBase::SprMoveDisable"]
16309        [::core::mem::offset_of!(GfxBase, SprMoveDisable) - 452usize];
16310    ["Offset of field: GfxBase::WantChips"][::core::mem::offset_of!(GfxBase, WantChips) - 453usize];
16311    ["Offset of field: GfxBase::BoardMemType"]
16312        [::core::mem::offset_of!(GfxBase, BoardMemType) - 454usize];
16313    ["Offset of field: GfxBase::Bugs"][::core::mem::offset_of!(GfxBase, Bugs) - 455usize];
16314    ["Offset of field: GfxBase::gb_LayersBase"]
16315        [::core::mem::offset_of!(GfxBase, gb_LayersBase) - 456usize];
16316    ["Offset of field: GfxBase::ColorMask"][::core::mem::offset_of!(GfxBase, ColorMask) - 460usize];
16317    ["Offset of field: GfxBase::IVector"][::core::mem::offset_of!(GfxBase, IVector) - 464usize];
16318    ["Offset of field: GfxBase::IData"][::core::mem::offset_of!(GfxBase, IData) - 468usize];
16319    ["Offset of field: GfxBase::SpecialCounter"]
16320        [::core::mem::offset_of!(GfxBase, SpecialCounter) - 472usize];
16321    ["Offset of field: GfxBase::DBList"][::core::mem::offset_of!(GfxBase, DBList) - 476usize];
16322    ["Offset of field: GfxBase::MonitorFlags"]
16323        [::core::mem::offset_of!(GfxBase, MonitorFlags) - 480usize];
16324    ["Offset of field: GfxBase::ScanDoubledSprites"]
16325        [::core::mem::offset_of!(GfxBase, ScanDoubledSprites) - 482usize];
16326    ["Offset of field: GfxBase::BP3Bits"][::core::mem::offset_of!(GfxBase, BP3Bits) - 483usize];
16327    ["Offset of field: GfxBase::MonitorVBlank"]
16328        [::core::mem::offset_of!(GfxBase, MonitorVBlank) - 484usize];
16329    ["Offset of field: GfxBase::natural_monitor"]
16330        [::core::mem::offset_of!(GfxBase, natural_monitor) - 488usize];
16331    ["Offset of field: GfxBase::ProgData"][::core::mem::offset_of!(GfxBase, ProgData) - 492usize];
16332    ["Offset of field: GfxBase::ExtSprites"]
16333        [::core::mem::offset_of!(GfxBase, ExtSprites) - 496usize];
16334    ["Offset of field: GfxBase::pad3"][::core::mem::offset_of!(GfxBase, pad3) - 497usize];
16335    ["Offset of field: GfxBase::GfxFlags"][::core::mem::offset_of!(GfxBase, GfxFlags) - 498usize];
16336    ["Offset of field: GfxBase::VBCounter"][::core::mem::offset_of!(GfxBase, VBCounter) - 500usize];
16337    ["Offset of field: GfxBase::HashTableSemaphore"]
16338        [::core::mem::offset_of!(GfxBase, HashTableSemaphore) - 504usize];
16339    ["Offset of field: GfxBase::HWEmul"][::core::mem::offset_of!(GfxBase, HWEmul) - 508usize];
16340    ["Offset of field: GfxBase::Scratch"][::core::mem::offset_of!(GfxBase, Scratch) - 544usize];
16341    ["Offset of field: GfxBase::ScratchSize"]
16342        [::core::mem::offset_of!(GfxBase, ScratchSize) - 548usize];
16343};
16344#[repr(C, packed(2))]
16345#[derive(Debug, Copy, Clone)]
16346pub struct Isrvstr {
16347    pub is_Node: Node,
16348    pub Iptr: *mut Isrvstr,
16349    pub code: FPTR,
16350    pub ccode: FPTR,
16351    pub Carg: APTR,
16352}
16353#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16354const _: () = {
16355    ["Size of Isrvstr"][::core::mem::size_of::<Isrvstr>() - 30usize];
16356    ["Alignment of Isrvstr"][::core::mem::align_of::<Isrvstr>() - 2usize];
16357    ["Offset of field: Isrvstr::is_Node"][::core::mem::offset_of!(Isrvstr, is_Node) - 0usize];
16358    ["Offset of field: Isrvstr::Iptr"][::core::mem::offset_of!(Isrvstr, Iptr) - 14usize];
16359    ["Offset of field: Isrvstr::code"][::core::mem::offset_of!(Isrvstr, code) - 18usize];
16360    ["Offset of field: Isrvstr::ccode"][::core::mem::offset_of!(Isrvstr, ccode) - 22usize];
16361    ["Offset of field: Isrvstr::Carg"][::core::mem::offset_of!(Isrvstr, Carg) - 26usize];
16362};
16363#[repr(C, packed(2))]
16364#[derive(Debug, Copy, Clone)]
16365pub struct RegionRectangle {
16366    pub Next: *mut RegionRectangle,
16367    pub Prev: *mut RegionRectangle,
16368    pub bounds: Rectangle,
16369}
16370#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16371const _: () = {
16372    ["Size of RegionRectangle"][::core::mem::size_of::<RegionRectangle>() - 16usize];
16373    ["Alignment of RegionRectangle"][::core::mem::align_of::<RegionRectangle>() - 2usize];
16374    ["Offset of field: RegionRectangle::Next"]
16375        [::core::mem::offset_of!(RegionRectangle, Next) - 0usize];
16376    ["Offset of field: RegionRectangle::Prev"]
16377        [::core::mem::offset_of!(RegionRectangle, Prev) - 4usize];
16378    ["Offset of field: RegionRectangle::bounds"]
16379        [::core::mem::offset_of!(RegionRectangle, bounds) - 8usize];
16380};
16381#[repr(C, packed(2))]
16382#[derive(Debug, Copy, Clone)]
16383pub struct Region {
16384    pub bounds: Rectangle,
16385    pub RegionRectangle: *mut RegionRectangle,
16386}
16387#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16388const _: () = {
16389    ["Size of Region"][::core::mem::size_of::<Region>() - 12usize];
16390    ["Alignment of Region"][::core::mem::align_of::<Region>() - 2usize];
16391    ["Offset of field: Region::bounds"][::core::mem::offset_of!(Region, bounds) - 0usize];
16392    ["Offset of field: Region::RegionRectangle"]
16393        [::core::mem::offset_of!(Region, RegionRectangle) - 8usize];
16394};
16395#[repr(C, packed(2))]
16396#[derive(Debug, Copy, Clone)]
16397pub struct BitScaleArgs {
16398    pub bsa_SrcX: UWORD,
16399    pub bsa_SrcY: UWORD,
16400    pub bsa_SrcWidth: UWORD,
16401    pub bsa_SrcHeight: UWORD,
16402    pub bsa_XSrcFactor: UWORD,
16403    pub bsa_YSrcFactor: UWORD,
16404    pub bsa_DestX: UWORD,
16405    pub bsa_DestY: UWORD,
16406    pub bsa_DestWidth: UWORD,
16407    pub bsa_DestHeight: UWORD,
16408    pub bsa_XDestFactor: UWORD,
16409    pub bsa_YDestFactor: UWORD,
16410    pub bsa_SrcBitMap: *mut BitMap,
16411    pub bsa_DestBitMap: *mut BitMap,
16412    pub bsa_Flags: ULONG,
16413    pub bsa_XDDA: UWORD,
16414    pub bsa_YDDA: UWORD,
16415    pub bsa_Reserved1: LONG,
16416    pub bsa_Reserved2: LONG,
16417}
16418#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16419const _: () = {
16420    ["Size of BitScaleArgs"][::core::mem::size_of::<BitScaleArgs>() - 48usize];
16421    ["Alignment of BitScaleArgs"][::core::mem::align_of::<BitScaleArgs>() - 2usize];
16422    ["Offset of field: BitScaleArgs::bsa_SrcX"]
16423        [::core::mem::offset_of!(BitScaleArgs, bsa_SrcX) - 0usize];
16424    ["Offset of field: BitScaleArgs::bsa_SrcY"]
16425        [::core::mem::offset_of!(BitScaleArgs, bsa_SrcY) - 2usize];
16426    ["Offset of field: BitScaleArgs::bsa_SrcWidth"]
16427        [::core::mem::offset_of!(BitScaleArgs, bsa_SrcWidth) - 4usize];
16428    ["Offset of field: BitScaleArgs::bsa_SrcHeight"]
16429        [::core::mem::offset_of!(BitScaleArgs, bsa_SrcHeight) - 6usize];
16430    ["Offset of field: BitScaleArgs::bsa_XSrcFactor"]
16431        [::core::mem::offset_of!(BitScaleArgs, bsa_XSrcFactor) - 8usize];
16432    ["Offset of field: BitScaleArgs::bsa_YSrcFactor"]
16433        [::core::mem::offset_of!(BitScaleArgs, bsa_YSrcFactor) - 10usize];
16434    ["Offset of field: BitScaleArgs::bsa_DestX"]
16435        [::core::mem::offset_of!(BitScaleArgs, bsa_DestX) - 12usize];
16436    ["Offset of field: BitScaleArgs::bsa_DestY"]
16437        [::core::mem::offset_of!(BitScaleArgs, bsa_DestY) - 14usize];
16438    ["Offset of field: BitScaleArgs::bsa_DestWidth"]
16439        [::core::mem::offset_of!(BitScaleArgs, bsa_DestWidth) - 16usize];
16440    ["Offset of field: BitScaleArgs::bsa_DestHeight"]
16441        [::core::mem::offset_of!(BitScaleArgs, bsa_DestHeight) - 18usize];
16442    ["Offset of field: BitScaleArgs::bsa_XDestFactor"]
16443        [::core::mem::offset_of!(BitScaleArgs, bsa_XDestFactor) - 20usize];
16444    ["Offset of field: BitScaleArgs::bsa_YDestFactor"]
16445        [::core::mem::offset_of!(BitScaleArgs, bsa_YDestFactor) - 22usize];
16446    ["Offset of field: BitScaleArgs::bsa_SrcBitMap"]
16447        [::core::mem::offset_of!(BitScaleArgs, bsa_SrcBitMap) - 24usize];
16448    ["Offset of field: BitScaleArgs::bsa_DestBitMap"]
16449        [::core::mem::offset_of!(BitScaleArgs, bsa_DestBitMap) - 28usize];
16450    ["Offset of field: BitScaleArgs::bsa_Flags"]
16451        [::core::mem::offset_of!(BitScaleArgs, bsa_Flags) - 32usize];
16452    ["Offset of field: BitScaleArgs::bsa_XDDA"]
16453        [::core::mem::offset_of!(BitScaleArgs, bsa_XDDA) - 36usize];
16454    ["Offset of field: BitScaleArgs::bsa_YDDA"]
16455        [::core::mem::offset_of!(BitScaleArgs, bsa_YDDA) - 38usize];
16456    ["Offset of field: BitScaleArgs::bsa_Reserved1"]
16457        [::core::mem::offset_of!(BitScaleArgs, bsa_Reserved1) - 40usize];
16458    ["Offset of field: BitScaleArgs::bsa_Reserved2"]
16459        [::core::mem::offset_of!(BitScaleArgs, bsa_Reserved2) - 44usize];
16460};
16461#[repr(C, packed(2))]
16462#[derive(Debug, Copy, Clone)]
16463pub struct SimpleSprite {
16464    pub posctldata: *mut UWORD,
16465    pub height: UWORD,
16466    pub x: UWORD,
16467    pub y: UWORD,
16468    pub num: UWORD,
16469}
16470#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16471const _: () = {
16472    ["Size of SimpleSprite"][::core::mem::size_of::<SimpleSprite>() - 12usize];
16473    ["Alignment of SimpleSprite"][::core::mem::align_of::<SimpleSprite>() - 2usize];
16474    ["Offset of field: SimpleSprite::posctldata"]
16475        [::core::mem::offset_of!(SimpleSprite, posctldata) - 0usize];
16476    ["Offset of field: SimpleSprite::height"]
16477        [::core::mem::offset_of!(SimpleSprite, height) - 4usize];
16478    ["Offset of field: SimpleSprite::x"][::core::mem::offset_of!(SimpleSprite, x) - 6usize];
16479    ["Offset of field: SimpleSprite::y"][::core::mem::offset_of!(SimpleSprite, y) - 8usize];
16480    ["Offset of field: SimpleSprite::num"][::core::mem::offset_of!(SimpleSprite, num) - 10usize];
16481};
16482#[repr(C)]
16483#[derive(Debug, Copy, Clone)]
16484pub struct ExtSprite {
16485    pub es_SimpleSprite: SimpleSprite,
16486    pub es_wordwidth: UWORD,
16487    pub es_flags: UWORD,
16488}
16489#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16490const _: () = {
16491    ["Size of ExtSprite"][::core::mem::size_of::<ExtSprite>() - 16usize];
16492    ["Alignment of ExtSprite"][::core::mem::align_of::<ExtSprite>() - 2usize];
16493    ["Offset of field: ExtSprite::es_SimpleSprite"]
16494        [::core::mem::offset_of!(ExtSprite, es_SimpleSprite) - 0usize];
16495    ["Offset of field: ExtSprite::es_wordwidth"]
16496        [::core::mem::offset_of!(ExtSprite, es_wordwidth) - 12usize];
16497    ["Offset of field: ExtSprite::es_flags"]
16498        [::core::mem::offset_of!(ExtSprite, es_flags) - 14usize];
16499};
16500#[repr(C, packed(2))]
16501#[derive(Debug, Copy, Clone)]
16502pub struct bltnode {
16503    pub n: *mut bltnode,
16504    pub function: FPTR,
16505    pub stat: ::core::ffi::c_char,
16506    pub blitsize: ::core::ffi::c_short,
16507    pub beamsync: ::core::ffi::c_short,
16508    pub cleanup: FPTR,
16509}
16510#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16511const _: () = {
16512    ["Size of bltnode"][::core::mem::size_of::<bltnode>() - 18usize];
16513    ["Alignment of bltnode"][::core::mem::align_of::<bltnode>() - 2usize];
16514    ["Offset of field: bltnode::n"][::core::mem::offset_of!(bltnode, n) - 0usize];
16515    ["Offset of field: bltnode::function"][::core::mem::offset_of!(bltnode, function) - 4usize];
16516    ["Offset of field: bltnode::stat"][::core::mem::offset_of!(bltnode, stat) - 8usize];
16517    ["Offset of field: bltnode::blitsize"][::core::mem::offset_of!(bltnode, blitsize) - 10usize];
16518    ["Offset of field: bltnode::beamsync"][::core::mem::offset_of!(bltnode, beamsync) - 12usize];
16519    ["Offset of field: bltnode::cleanup"][::core::mem::offset_of!(bltnode, cleanup) - 14usize];
16520};
16521#[repr(C)]
16522#[derive(Debug, Copy, Clone)]
16523#[repr(align(2))]
16524pub struct CIA {
16525    pub ciapra: UBYTE,
16526    pub pad0: [UBYTE; 255usize],
16527    pub ciaprb: UBYTE,
16528    pub pad1: [UBYTE; 255usize],
16529    pub ciaddra: UBYTE,
16530    pub pad2: [UBYTE; 255usize],
16531    pub ciaddrb: UBYTE,
16532    pub pad3: [UBYTE; 255usize],
16533    pub ciatalo: UBYTE,
16534    pub pad4: [UBYTE; 255usize],
16535    pub ciatahi: UBYTE,
16536    pub pad5: [UBYTE; 255usize],
16537    pub ciatblo: UBYTE,
16538    pub pad6: [UBYTE; 255usize],
16539    pub ciatbhi: UBYTE,
16540    pub pad7: [UBYTE; 255usize],
16541    pub ciatodlow: UBYTE,
16542    pub pad8: [UBYTE; 255usize],
16543    pub ciatodmid: UBYTE,
16544    pub pad9: [UBYTE; 255usize],
16545    pub ciatodhi: UBYTE,
16546    pub pad10: [UBYTE; 255usize],
16547    pub unusedreg: UBYTE,
16548    pub pad11: [UBYTE; 255usize],
16549    pub ciasdr: UBYTE,
16550    pub pad12: [UBYTE; 255usize],
16551    pub ciaicr: UBYTE,
16552    pub pad13: [UBYTE; 255usize],
16553    pub ciacra: UBYTE,
16554    pub pad14: [UBYTE; 255usize],
16555    pub ciacrb: UBYTE,
16556}
16557#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16558const _: () = {
16559    ["Size of CIA"][::core::mem::size_of::<CIA>() - 3842usize];
16560    ["Alignment of CIA"][::core::mem::align_of::<CIA>() - 2usize];
16561    ["Offset of field: CIA::ciapra"][::core::mem::offset_of!(CIA, ciapra) - 0usize];
16562    ["Offset of field: CIA::pad0"][::core::mem::offset_of!(CIA, pad0) - 1usize];
16563    ["Offset of field: CIA::ciaprb"][::core::mem::offset_of!(CIA, ciaprb) - 256usize];
16564    ["Offset of field: CIA::pad1"][::core::mem::offset_of!(CIA, pad1) - 257usize];
16565    ["Offset of field: CIA::ciaddra"][::core::mem::offset_of!(CIA, ciaddra) - 512usize];
16566    ["Offset of field: CIA::pad2"][::core::mem::offset_of!(CIA, pad2) - 513usize];
16567    ["Offset of field: CIA::ciaddrb"][::core::mem::offset_of!(CIA, ciaddrb) - 768usize];
16568    ["Offset of field: CIA::pad3"][::core::mem::offset_of!(CIA, pad3) - 769usize];
16569    ["Offset of field: CIA::ciatalo"][::core::mem::offset_of!(CIA, ciatalo) - 1024usize];
16570    ["Offset of field: CIA::pad4"][::core::mem::offset_of!(CIA, pad4) - 1025usize];
16571    ["Offset of field: CIA::ciatahi"][::core::mem::offset_of!(CIA, ciatahi) - 1280usize];
16572    ["Offset of field: CIA::pad5"][::core::mem::offset_of!(CIA, pad5) - 1281usize];
16573    ["Offset of field: CIA::ciatblo"][::core::mem::offset_of!(CIA, ciatblo) - 1536usize];
16574    ["Offset of field: CIA::pad6"][::core::mem::offset_of!(CIA, pad6) - 1537usize];
16575    ["Offset of field: CIA::ciatbhi"][::core::mem::offset_of!(CIA, ciatbhi) - 1792usize];
16576    ["Offset of field: CIA::pad7"][::core::mem::offset_of!(CIA, pad7) - 1793usize];
16577    ["Offset of field: CIA::ciatodlow"][::core::mem::offset_of!(CIA, ciatodlow) - 2048usize];
16578    ["Offset of field: CIA::pad8"][::core::mem::offset_of!(CIA, pad8) - 2049usize];
16579    ["Offset of field: CIA::ciatodmid"][::core::mem::offset_of!(CIA, ciatodmid) - 2304usize];
16580    ["Offset of field: CIA::pad9"][::core::mem::offset_of!(CIA, pad9) - 2305usize];
16581    ["Offset of field: CIA::ciatodhi"][::core::mem::offset_of!(CIA, ciatodhi) - 2560usize];
16582    ["Offset of field: CIA::pad10"][::core::mem::offset_of!(CIA, pad10) - 2561usize];
16583    ["Offset of field: CIA::unusedreg"][::core::mem::offset_of!(CIA, unusedreg) - 2816usize];
16584    ["Offset of field: CIA::pad11"][::core::mem::offset_of!(CIA, pad11) - 2817usize];
16585    ["Offset of field: CIA::ciasdr"][::core::mem::offset_of!(CIA, ciasdr) - 3072usize];
16586    ["Offset of field: CIA::pad12"][::core::mem::offset_of!(CIA, pad12) - 3073usize];
16587    ["Offset of field: CIA::ciaicr"][::core::mem::offset_of!(CIA, ciaicr) - 3328usize];
16588    ["Offset of field: CIA::pad13"][::core::mem::offset_of!(CIA, pad13) - 3329usize];
16589    ["Offset of field: CIA::ciacra"][::core::mem::offset_of!(CIA, ciacra) - 3584usize];
16590    ["Offset of field: CIA::pad14"][::core::mem::offset_of!(CIA, pad14) - 3585usize];
16591    ["Offset of field: CIA::ciacrb"][::core::mem::offset_of!(CIA, ciacrb) - 3840usize];
16592};
16593#[repr(C)]
16594#[derive(Debug, Copy, Clone)]
16595pub struct DrawList {
16596    pub dl_Directive: WORD,
16597    pub dl_X1: UWORD,
16598    pub dl_Y1: UWORD,
16599    pub dl_X2: UWORD,
16600    pub dl_Y2: UWORD,
16601    pub dl_Pen: WORD,
16602}
16603#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16604const _: () = {
16605    ["Size of DrawList"][::core::mem::size_of::<DrawList>() - 12usize];
16606    ["Alignment of DrawList"][::core::mem::align_of::<DrawList>() - 2usize];
16607    ["Offset of field: DrawList::dl_Directive"]
16608        [::core::mem::offset_of!(DrawList, dl_Directive) - 0usize];
16609    ["Offset of field: DrawList::dl_X1"][::core::mem::offset_of!(DrawList, dl_X1) - 2usize];
16610    ["Offset of field: DrawList::dl_Y1"][::core::mem::offset_of!(DrawList, dl_Y1) - 4usize];
16611    ["Offset of field: DrawList::dl_X2"][::core::mem::offset_of!(DrawList, dl_X2) - 6usize];
16612    ["Offset of field: DrawList::dl_Y2"][::core::mem::offset_of!(DrawList, dl_Y2) - 8usize];
16613    ["Offset of field: DrawList::dl_Pen"][::core::mem::offset_of!(DrawList, dl_Pen) - 10usize];
16614};
16615#[repr(C, packed(2))]
16616#[derive(Debug, Copy, Clone)]
16617pub struct IntuitionBase {
16618    pub LibNode: Library,
16619    pub ViewLord: View,
16620    pub ActiveWindow: *mut Window,
16621    pub ActiveScreen: *mut Screen,
16622    pub FirstScreen: *mut Screen,
16623    pub Flags: ULONG,
16624    pub MouseY: WORD,
16625    pub MouseX: WORD,
16626    pub Seconds: ULONG,
16627    pub Micros: ULONG,
16628}
16629#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16630const _: () = {
16631    ["Size of IntuitionBase"][::core::mem::size_of::<IntuitionBase>() - 80usize];
16632    ["Alignment of IntuitionBase"][::core::mem::align_of::<IntuitionBase>() - 2usize];
16633    ["Offset of field: IntuitionBase::LibNode"]
16634        [::core::mem::offset_of!(IntuitionBase, LibNode) - 0usize];
16635    ["Offset of field: IntuitionBase::ViewLord"]
16636        [::core::mem::offset_of!(IntuitionBase, ViewLord) - 34usize];
16637    ["Offset of field: IntuitionBase::ActiveWindow"]
16638        [::core::mem::offset_of!(IntuitionBase, ActiveWindow) - 52usize];
16639    ["Offset of field: IntuitionBase::ActiveScreen"]
16640        [::core::mem::offset_of!(IntuitionBase, ActiveScreen) - 56usize];
16641    ["Offset of field: IntuitionBase::FirstScreen"]
16642        [::core::mem::offset_of!(IntuitionBase, FirstScreen) - 60usize];
16643    ["Offset of field: IntuitionBase::Flags"]
16644        [::core::mem::offset_of!(IntuitionBase, Flags) - 64usize];
16645    ["Offset of field: IntuitionBase::MouseY"]
16646        [::core::mem::offset_of!(IntuitionBase, MouseY) - 68usize];
16647    ["Offset of field: IntuitionBase::MouseX"]
16648        [::core::mem::offset_of!(IntuitionBase, MouseX) - 70usize];
16649    ["Offset of field: IntuitionBase::Seconds"]
16650        [::core::mem::offset_of!(IntuitionBase, Seconds) - 72usize];
16651    ["Offset of field: IntuitionBase::Micros"]
16652        [::core::mem::offset_of!(IntuitionBase, Micros) - 76usize];
16653};
16654#[repr(C, packed(2))]
16655#[derive(Debug, Copy, Clone)]
16656pub struct StringExtend {
16657    pub Font: *mut TextFont,
16658    pub Pens: [UBYTE; 2usize],
16659    pub ActivePens: [UBYTE; 2usize],
16660    pub InitialModes: ULONG,
16661    pub EditHook: *mut Hook,
16662    pub WorkBuffer: STRPTR,
16663    pub Reserved: [ULONG; 4usize],
16664}
16665#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16666const _: () = {
16667    ["Size of StringExtend"][::core::mem::size_of::<StringExtend>() - 36usize];
16668    ["Alignment of StringExtend"][::core::mem::align_of::<StringExtend>() - 2usize];
16669    ["Offset of field: StringExtend::Font"][::core::mem::offset_of!(StringExtend, Font) - 0usize];
16670    ["Offset of field: StringExtend::Pens"][::core::mem::offset_of!(StringExtend, Pens) - 4usize];
16671    ["Offset of field: StringExtend::ActivePens"]
16672        [::core::mem::offset_of!(StringExtend, ActivePens) - 6usize];
16673    ["Offset of field: StringExtend::InitialModes"]
16674        [::core::mem::offset_of!(StringExtend, InitialModes) - 8usize];
16675    ["Offset of field: StringExtend::EditHook"]
16676        [::core::mem::offset_of!(StringExtend, EditHook) - 12usize];
16677    ["Offset of field: StringExtend::WorkBuffer"]
16678        [::core::mem::offset_of!(StringExtend, WorkBuffer) - 16usize];
16679    ["Offset of field: StringExtend::Reserved"]
16680        [::core::mem::offset_of!(StringExtend, Reserved) - 20usize];
16681};
16682#[repr(C, packed(2))]
16683#[derive(Debug, Copy, Clone)]
16684pub struct SGWork {
16685    pub Gadget: *mut Gadget,
16686    pub StringInfo: *mut StringInfo,
16687    pub WorkBuffer: STRPTR,
16688    pub PrevBuffer: STRPTR,
16689    pub Modes: ULONG,
16690    pub IEvent: *mut InputEvent,
16691    pub Code: UWORD,
16692    pub BufferPos: WORD,
16693    pub NumChars: WORD,
16694    pub Actions: ULONG,
16695    pub LongInt: LONG,
16696    pub GadgetInfo: *mut GadgetInfo,
16697    pub EditOp: UWORD,
16698}
16699#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16700const _: () = {
16701    ["Size of SGWork"][::core::mem::size_of::<SGWork>() - 44usize];
16702    ["Alignment of SGWork"][::core::mem::align_of::<SGWork>() - 2usize];
16703    ["Offset of field: SGWork::Gadget"][::core::mem::offset_of!(SGWork, Gadget) - 0usize];
16704    ["Offset of field: SGWork::StringInfo"][::core::mem::offset_of!(SGWork, StringInfo) - 4usize];
16705    ["Offset of field: SGWork::WorkBuffer"][::core::mem::offset_of!(SGWork, WorkBuffer) - 8usize];
16706    ["Offset of field: SGWork::PrevBuffer"][::core::mem::offset_of!(SGWork, PrevBuffer) - 12usize];
16707    ["Offset of field: SGWork::Modes"][::core::mem::offset_of!(SGWork, Modes) - 16usize];
16708    ["Offset of field: SGWork::IEvent"][::core::mem::offset_of!(SGWork, IEvent) - 20usize];
16709    ["Offset of field: SGWork::Code"][::core::mem::offset_of!(SGWork, Code) - 24usize];
16710    ["Offset of field: SGWork::BufferPos"][::core::mem::offset_of!(SGWork, BufferPos) - 26usize];
16711    ["Offset of field: SGWork::NumChars"][::core::mem::offset_of!(SGWork, NumChars) - 28usize];
16712    ["Offset of field: SGWork::Actions"][::core::mem::offset_of!(SGWork, Actions) - 30usize];
16713    ["Offset of field: SGWork::LongInt"][::core::mem::offset_of!(SGWork, LongInt) - 34usize];
16714    ["Offset of field: SGWork::GadgetInfo"][::core::mem::offset_of!(SGWork, GadgetInfo) - 38usize];
16715    ["Offset of field: SGWork::EditOp"][::core::mem::offset_of!(SGWork, EditOp) - 42usize];
16716};
16717pub type AMIGAGUIDECONTEXT = *mut ::core::ffi::c_void;
16718#[repr(C, packed(2))]
16719#[derive(Debug, Copy, Clone)]
16720pub struct AmigaGuideMsg {
16721    pub agm_Msg: Message,
16722    pub agm_Type: ULONG,
16723    pub agm_Data: APTR,
16724    pub agm_DSize: ULONG,
16725    pub agm_DType: ULONG,
16726    pub agm_Pri_Ret: ULONG,
16727    pub agm_Sec_Ret: ULONG,
16728    pub agm_System1: APTR,
16729    pub agm_System2: APTR,
16730}
16731#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16732const _: () = {
16733    ["Size of AmigaGuideMsg"][::core::mem::size_of::<AmigaGuideMsg>() - 52usize];
16734    ["Alignment of AmigaGuideMsg"][::core::mem::align_of::<AmigaGuideMsg>() - 2usize];
16735    ["Offset of field: AmigaGuideMsg::agm_Msg"]
16736        [::core::mem::offset_of!(AmigaGuideMsg, agm_Msg) - 0usize];
16737    ["Offset of field: AmigaGuideMsg::agm_Type"]
16738        [::core::mem::offset_of!(AmigaGuideMsg, agm_Type) - 20usize];
16739    ["Offset of field: AmigaGuideMsg::agm_Data"]
16740        [::core::mem::offset_of!(AmigaGuideMsg, agm_Data) - 24usize];
16741    ["Offset of field: AmigaGuideMsg::agm_DSize"]
16742        [::core::mem::offset_of!(AmigaGuideMsg, agm_DSize) - 28usize];
16743    ["Offset of field: AmigaGuideMsg::agm_DType"]
16744        [::core::mem::offset_of!(AmigaGuideMsg, agm_DType) - 32usize];
16745    ["Offset of field: AmigaGuideMsg::agm_Pri_Ret"]
16746        [::core::mem::offset_of!(AmigaGuideMsg, agm_Pri_Ret) - 36usize];
16747    ["Offset of field: AmigaGuideMsg::agm_Sec_Ret"]
16748        [::core::mem::offset_of!(AmigaGuideMsg, agm_Sec_Ret) - 40usize];
16749    ["Offset of field: AmigaGuideMsg::agm_System1"]
16750        [::core::mem::offset_of!(AmigaGuideMsg, agm_System1) - 44usize];
16751    ["Offset of field: AmigaGuideMsg::agm_System2"]
16752        [::core::mem::offset_of!(AmigaGuideMsg, agm_System2) - 48usize];
16753};
16754#[repr(C, packed(2))]
16755#[derive(Debug, Copy, Clone)]
16756pub struct NewAmigaGuide {
16757    pub nag_Lock: BPTR,
16758    pub nag_Name: STRPTR,
16759    pub nag_Screen: *mut Screen,
16760    pub nag_PubScreen: STRPTR,
16761    pub nag_HostPort: STRPTR,
16762    pub nag_ClientPort: STRPTR,
16763    pub nag_BaseName: STRPTR,
16764    pub nag_Flags: ULONG,
16765    pub nag_Context: *mut STRPTR,
16766    pub nag_Node: STRPTR,
16767    pub nag_Line: LONG,
16768    pub nag_Extens: *mut TagItem,
16769    pub nag_Client: *mut ::core::ffi::c_void,
16770}
16771#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16772const _: () = {
16773    ["Size of NewAmigaGuide"][::core::mem::size_of::<NewAmigaGuide>() - 52usize];
16774    ["Alignment of NewAmigaGuide"][::core::mem::align_of::<NewAmigaGuide>() - 2usize];
16775    ["Offset of field: NewAmigaGuide::nag_Lock"]
16776        [::core::mem::offset_of!(NewAmigaGuide, nag_Lock) - 0usize];
16777    ["Offset of field: NewAmigaGuide::nag_Name"]
16778        [::core::mem::offset_of!(NewAmigaGuide, nag_Name) - 4usize];
16779    ["Offset of field: NewAmigaGuide::nag_Screen"]
16780        [::core::mem::offset_of!(NewAmigaGuide, nag_Screen) - 8usize];
16781    ["Offset of field: NewAmigaGuide::nag_PubScreen"]
16782        [::core::mem::offset_of!(NewAmigaGuide, nag_PubScreen) - 12usize];
16783    ["Offset of field: NewAmigaGuide::nag_HostPort"]
16784        [::core::mem::offset_of!(NewAmigaGuide, nag_HostPort) - 16usize];
16785    ["Offset of field: NewAmigaGuide::nag_ClientPort"]
16786        [::core::mem::offset_of!(NewAmigaGuide, nag_ClientPort) - 20usize];
16787    ["Offset of field: NewAmigaGuide::nag_BaseName"]
16788        [::core::mem::offset_of!(NewAmigaGuide, nag_BaseName) - 24usize];
16789    ["Offset of field: NewAmigaGuide::nag_Flags"]
16790        [::core::mem::offset_of!(NewAmigaGuide, nag_Flags) - 28usize];
16791    ["Offset of field: NewAmigaGuide::nag_Context"]
16792        [::core::mem::offset_of!(NewAmigaGuide, nag_Context) - 32usize];
16793    ["Offset of field: NewAmigaGuide::nag_Node"]
16794        [::core::mem::offset_of!(NewAmigaGuide, nag_Node) - 36usize];
16795    ["Offset of field: NewAmigaGuide::nag_Line"]
16796        [::core::mem::offset_of!(NewAmigaGuide, nag_Line) - 40usize];
16797    ["Offset of field: NewAmigaGuide::nag_Extens"]
16798        [::core::mem::offset_of!(NewAmigaGuide, nag_Extens) - 44usize];
16799    ["Offset of field: NewAmigaGuide::nag_Client"]
16800        [::core::mem::offset_of!(NewAmigaGuide, nag_Client) - 48usize];
16801};
16802pub type AMIGAGUIDEHOST = *mut AmigaGuideHost;
16803#[repr(C, packed(2))]
16804#[derive(Debug, Copy, Clone)]
16805pub struct XRef {
16806    pub xr_Node: Node,
16807    pub xr_Pad: UWORD,
16808    pub xr_DF: *mut DocFile,
16809    pub xr_File: STRPTR,
16810    pub xr_Name: STRPTR,
16811    pub xr_Line: LONG,
16812    pub xr_Reserved: [ULONG; 2usize],
16813}
16814#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16815const _: () = {
16816    ["Size of XRef"][::core::mem::size_of::<XRef>() - 40usize];
16817    ["Alignment of XRef"][::core::mem::align_of::<XRef>() - 2usize];
16818    ["Offset of field: XRef::xr_Node"][::core::mem::offset_of!(XRef, xr_Node) - 0usize];
16819    ["Offset of field: XRef::xr_Pad"][::core::mem::offset_of!(XRef, xr_Pad) - 14usize];
16820    ["Offset of field: XRef::xr_DF"][::core::mem::offset_of!(XRef, xr_DF) - 16usize];
16821    ["Offset of field: XRef::xr_File"][::core::mem::offset_of!(XRef, xr_File) - 20usize];
16822    ["Offset of field: XRef::xr_Name"][::core::mem::offset_of!(XRef, xr_Name) - 24usize];
16823    ["Offset of field: XRef::xr_Line"][::core::mem::offset_of!(XRef, xr_Line) - 28usize];
16824    ["Offset of field: XRef::xr_Reserved"][::core::mem::offset_of!(XRef, xr_Reserved) - 32usize];
16825};
16826#[repr(C, packed(2))]
16827#[derive(Debug, Copy, Clone)]
16828pub struct AmigaGuideHost {
16829    pub agh_Dispatcher: Hook,
16830    pub agh_Reserved: ULONG,
16831    pub agh_Flags: ULONG,
16832    pub agh_UseCnt: ULONG,
16833    pub agh_SystemData: APTR,
16834    pub agh_UserData: APTR,
16835}
16836#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16837const _: () = {
16838    ["Size of AmigaGuideHost"][::core::mem::size_of::<AmigaGuideHost>() - 40usize];
16839    ["Alignment of AmigaGuideHost"][::core::mem::align_of::<AmigaGuideHost>() - 2usize];
16840    ["Offset of field: AmigaGuideHost::agh_Dispatcher"]
16841        [::core::mem::offset_of!(AmigaGuideHost, agh_Dispatcher) - 0usize];
16842    ["Offset of field: AmigaGuideHost::agh_Reserved"]
16843        [::core::mem::offset_of!(AmigaGuideHost, agh_Reserved) - 20usize];
16844    ["Offset of field: AmigaGuideHost::agh_Flags"]
16845        [::core::mem::offset_of!(AmigaGuideHost, agh_Flags) - 24usize];
16846    ["Offset of field: AmigaGuideHost::agh_UseCnt"]
16847        [::core::mem::offset_of!(AmigaGuideHost, agh_UseCnt) - 28usize];
16848    ["Offset of field: AmigaGuideHost::agh_SystemData"]
16849        [::core::mem::offset_of!(AmigaGuideHost, agh_SystemData) - 32usize];
16850    ["Offset of field: AmigaGuideHost::agh_UserData"]
16851        [::core::mem::offset_of!(AmigaGuideHost, agh_UserData) - 36usize];
16852};
16853#[repr(C, packed(2))]
16854#[derive(Debug, Copy, Clone)]
16855pub struct opFindHost {
16856    pub MethodID: ULONG,
16857    pub ofh_Attrs: *mut TagItem,
16858    pub ofh_Node: STRPTR,
16859    pub ofh_TOC: STRPTR,
16860    pub ofh_Title: STRPTR,
16861    pub ofh_Next: STRPTR,
16862    pub ofh_Prev: STRPTR,
16863}
16864#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16865const _: () = {
16866    ["Size of opFindHost"][::core::mem::size_of::<opFindHost>() - 28usize];
16867    ["Alignment of opFindHost"][::core::mem::align_of::<opFindHost>() - 2usize];
16868    ["Offset of field: opFindHost::MethodID"]
16869        [::core::mem::offset_of!(opFindHost, MethodID) - 0usize];
16870    ["Offset of field: opFindHost::ofh_Attrs"]
16871        [::core::mem::offset_of!(opFindHost, ofh_Attrs) - 4usize];
16872    ["Offset of field: opFindHost::ofh_Node"]
16873        [::core::mem::offset_of!(opFindHost, ofh_Node) - 8usize];
16874    ["Offset of field: opFindHost::ofh_TOC"]
16875        [::core::mem::offset_of!(opFindHost, ofh_TOC) - 12usize];
16876    ["Offset of field: opFindHost::ofh_Title"]
16877        [::core::mem::offset_of!(opFindHost, ofh_Title) - 16usize];
16878    ["Offset of field: opFindHost::ofh_Next"]
16879        [::core::mem::offset_of!(opFindHost, ofh_Next) - 20usize];
16880    ["Offset of field: opFindHost::ofh_Prev"]
16881        [::core::mem::offset_of!(opFindHost, ofh_Prev) - 24usize];
16882};
16883#[repr(C, packed(2))]
16884#[derive(Debug, Copy, Clone)]
16885pub struct opNodeIO {
16886    pub MethodID: ULONG,
16887    pub onm_Attrs: *mut TagItem,
16888    pub onm_Node: STRPTR,
16889    pub onm_FileName: STRPTR,
16890    pub onm_DocBuffer: STRPTR,
16891    pub onm_BuffLen: ULONG,
16892    pub onm_Flags: ULONG,
16893}
16894#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16895const _: () = {
16896    ["Size of opNodeIO"][::core::mem::size_of::<opNodeIO>() - 28usize];
16897    ["Alignment of opNodeIO"][::core::mem::align_of::<opNodeIO>() - 2usize];
16898    ["Offset of field: opNodeIO::MethodID"][::core::mem::offset_of!(opNodeIO, MethodID) - 0usize];
16899    ["Offset of field: opNodeIO::onm_Attrs"][::core::mem::offset_of!(opNodeIO, onm_Attrs) - 4usize];
16900    ["Offset of field: opNodeIO::onm_Node"][::core::mem::offset_of!(opNodeIO, onm_Node) - 8usize];
16901    ["Offset of field: opNodeIO::onm_FileName"]
16902        [::core::mem::offset_of!(opNodeIO, onm_FileName) - 12usize];
16903    ["Offset of field: opNodeIO::onm_DocBuffer"]
16904        [::core::mem::offset_of!(opNodeIO, onm_DocBuffer) - 16usize];
16905    ["Offset of field: opNodeIO::onm_BuffLen"]
16906        [::core::mem::offset_of!(opNodeIO, onm_BuffLen) - 20usize];
16907    ["Offset of field: opNodeIO::onm_Flags"]
16908        [::core::mem::offset_of!(opNodeIO, onm_Flags) - 24usize];
16909};
16910#[repr(C, packed(2))]
16911#[derive(Debug, Copy, Clone)]
16912pub struct opExpungeNode {
16913    pub MethodID: ULONG,
16914    pub oen_Attrs: *mut TagItem,
16915}
16916#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16917const _: () = {
16918    ["Size of opExpungeNode"][::core::mem::size_of::<opExpungeNode>() - 8usize];
16919    ["Alignment of opExpungeNode"][::core::mem::align_of::<opExpungeNode>() - 2usize];
16920    ["Offset of field: opExpungeNode::MethodID"]
16921        [::core::mem::offset_of!(opExpungeNode, MethodID) - 0usize];
16922    ["Offset of field: opExpungeNode::oen_Attrs"]
16923        [::core::mem::offset_of!(opExpungeNode, oen_Attrs) - 4usize];
16924};
16925#[repr(C, packed(2))]
16926#[derive(Debug, Copy, Clone)]
16927pub struct WBStartup {
16928    pub sm_Message: Message,
16929    pub sm_Process: *mut MsgPort,
16930    pub sm_Segment: BPTR,
16931    pub sm_NumArgs: LONG,
16932    pub sm_ToolWindow: STRPTR,
16933    pub sm_ArgList: *mut WBArg,
16934}
16935#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16936const _: () = {
16937    ["Size of WBStartup"][::core::mem::size_of::<WBStartup>() - 40usize];
16938    ["Alignment of WBStartup"][::core::mem::align_of::<WBStartup>() - 2usize];
16939    ["Offset of field: WBStartup::sm_Message"]
16940        [::core::mem::offset_of!(WBStartup, sm_Message) - 0usize];
16941    ["Offset of field: WBStartup::sm_Process"]
16942        [::core::mem::offset_of!(WBStartup, sm_Process) - 20usize];
16943    ["Offset of field: WBStartup::sm_Segment"]
16944        [::core::mem::offset_of!(WBStartup, sm_Segment) - 24usize];
16945    ["Offset of field: WBStartup::sm_NumArgs"]
16946        [::core::mem::offset_of!(WBStartup, sm_NumArgs) - 28usize];
16947    ["Offset of field: WBStartup::sm_ToolWindow"]
16948        [::core::mem::offset_of!(WBStartup, sm_ToolWindow) - 32usize];
16949    ["Offset of field: WBStartup::sm_ArgList"]
16950        [::core::mem::offset_of!(WBStartup, sm_ArgList) - 36usize];
16951};
16952#[repr(C, packed(2))]
16953#[derive(Debug, Copy, Clone)]
16954pub struct WBArg {
16955    pub wa_Lock: BPTR,
16956    pub wa_Name: STRPTR,
16957}
16958#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16959const _: () = {
16960    ["Size of WBArg"][::core::mem::size_of::<WBArg>() - 8usize];
16961    ["Alignment of WBArg"][::core::mem::align_of::<WBArg>() - 2usize];
16962    ["Offset of field: WBArg::wa_Lock"][::core::mem::offset_of!(WBArg, wa_Lock) - 0usize];
16963    ["Offset of field: WBArg::wa_Name"][::core::mem::offset_of!(WBArg, wa_Name) - 4usize];
16964};
16965#[repr(C, packed(2))]
16966#[derive(Debug, Copy, Clone)]
16967pub struct FileRequester {
16968    pub fr_Reserved0: [UBYTE; 4usize],
16969    pub fr_File: STRPTR,
16970    pub fr_Drawer: STRPTR,
16971    pub fr_Reserved1: [UBYTE; 10usize],
16972    pub fr_LeftEdge: WORD,
16973    pub fr_TopEdge: WORD,
16974    pub fr_Width: WORD,
16975    pub fr_Height: WORD,
16976    pub fr_Reserved2: [UBYTE; 2usize],
16977    pub fr_NumArgs: LONG,
16978    pub fr_ArgList: *mut WBArg,
16979    pub fr_UserData: APTR,
16980    pub fr_Reserved3: [UBYTE; 8usize],
16981    pub fr_Pattern: STRPTR,
16982}
16983#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16984const _: () = {
16985    ["Size of FileRequester"][::core::mem::size_of::<FileRequester>() - 56usize];
16986    ["Alignment of FileRequester"][::core::mem::align_of::<FileRequester>() - 2usize];
16987    ["Offset of field: FileRequester::fr_Reserved0"]
16988        [::core::mem::offset_of!(FileRequester, fr_Reserved0) - 0usize];
16989    ["Offset of field: FileRequester::fr_File"]
16990        [::core::mem::offset_of!(FileRequester, fr_File) - 4usize];
16991    ["Offset of field: FileRequester::fr_Drawer"]
16992        [::core::mem::offset_of!(FileRequester, fr_Drawer) - 8usize];
16993    ["Offset of field: FileRequester::fr_Reserved1"]
16994        [::core::mem::offset_of!(FileRequester, fr_Reserved1) - 12usize];
16995    ["Offset of field: FileRequester::fr_LeftEdge"]
16996        [::core::mem::offset_of!(FileRequester, fr_LeftEdge) - 22usize];
16997    ["Offset of field: FileRequester::fr_TopEdge"]
16998        [::core::mem::offset_of!(FileRequester, fr_TopEdge) - 24usize];
16999    ["Offset of field: FileRequester::fr_Width"]
17000        [::core::mem::offset_of!(FileRequester, fr_Width) - 26usize];
17001    ["Offset of field: FileRequester::fr_Height"]
17002        [::core::mem::offset_of!(FileRequester, fr_Height) - 28usize];
17003    ["Offset of field: FileRequester::fr_Reserved2"]
17004        [::core::mem::offset_of!(FileRequester, fr_Reserved2) - 30usize];
17005    ["Offset of field: FileRequester::fr_NumArgs"]
17006        [::core::mem::offset_of!(FileRequester, fr_NumArgs) - 32usize];
17007    ["Offset of field: FileRequester::fr_ArgList"]
17008        [::core::mem::offset_of!(FileRequester, fr_ArgList) - 36usize];
17009    ["Offset of field: FileRequester::fr_UserData"]
17010        [::core::mem::offset_of!(FileRequester, fr_UserData) - 40usize];
17011    ["Offset of field: FileRequester::fr_Reserved3"]
17012        [::core::mem::offset_of!(FileRequester, fr_Reserved3) - 44usize];
17013    ["Offset of field: FileRequester::fr_Pattern"]
17014        [::core::mem::offset_of!(FileRequester, fr_Pattern) - 52usize];
17015};
17016#[repr(C, packed(2))]
17017#[derive(Debug, Copy, Clone)]
17018pub struct FontRequester {
17019    pub fo_Reserved0: [UBYTE; 8usize],
17020    pub fo_Attr: TextAttr,
17021    pub fo_FrontPen: UBYTE,
17022    pub fo_BackPen: UBYTE,
17023    pub fo_DrawMode: UBYTE,
17024    pub fo_SpecialDrawMode: UBYTE,
17025    pub fo_UserData: APTR,
17026    pub fo_LeftEdge: WORD,
17027    pub fo_TopEdge: WORD,
17028    pub fo_Width: WORD,
17029    pub fo_Height: WORD,
17030    pub fo_TAttr: TTextAttr,
17031}
17032#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17033const _: () = {
17034    ["Size of FontRequester"][::core::mem::size_of::<FontRequester>() - 44usize];
17035    ["Alignment of FontRequester"][::core::mem::align_of::<FontRequester>() - 2usize];
17036    ["Offset of field: FontRequester::fo_Reserved0"]
17037        [::core::mem::offset_of!(FontRequester, fo_Reserved0) - 0usize];
17038    ["Offset of field: FontRequester::fo_Attr"]
17039        [::core::mem::offset_of!(FontRequester, fo_Attr) - 8usize];
17040    ["Offset of field: FontRequester::fo_FrontPen"]
17041        [::core::mem::offset_of!(FontRequester, fo_FrontPen) - 16usize];
17042    ["Offset of field: FontRequester::fo_BackPen"]
17043        [::core::mem::offset_of!(FontRequester, fo_BackPen) - 17usize];
17044    ["Offset of field: FontRequester::fo_DrawMode"]
17045        [::core::mem::offset_of!(FontRequester, fo_DrawMode) - 18usize];
17046    ["Offset of field: FontRequester::fo_SpecialDrawMode"]
17047        [::core::mem::offset_of!(FontRequester, fo_SpecialDrawMode) - 19usize];
17048    ["Offset of field: FontRequester::fo_UserData"]
17049        [::core::mem::offset_of!(FontRequester, fo_UserData) - 20usize];
17050    ["Offset of field: FontRequester::fo_LeftEdge"]
17051        [::core::mem::offset_of!(FontRequester, fo_LeftEdge) - 24usize];
17052    ["Offset of field: FontRequester::fo_TopEdge"]
17053        [::core::mem::offset_of!(FontRequester, fo_TopEdge) - 26usize];
17054    ["Offset of field: FontRequester::fo_Width"]
17055        [::core::mem::offset_of!(FontRequester, fo_Width) - 28usize];
17056    ["Offset of field: FontRequester::fo_Height"]
17057        [::core::mem::offset_of!(FontRequester, fo_Height) - 30usize];
17058    ["Offset of field: FontRequester::fo_TAttr"]
17059        [::core::mem::offset_of!(FontRequester, fo_TAttr) - 32usize];
17060};
17061#[repr(C, packed(2))]
17062#[derive(Debug, Copy, Clone)]
17063pub struct ScreenModeRequester {
17064    pub sm_DisplayID: ULONG,
17065    pub sm_DisplayWidth: ULONG,
17066    pub sm_DisplayHeight: ULONG,
17067    pub sm_DisplayDepth: UWORD,
17068    pub sm_OverscanType: UWORD,
17069    pub sm_AutoScroll: BOOL,
17070    pub sm_BitMapWidth: ULONG,
17071    pub sm_BitMapHeight: ULONG,
17072    pub sm_LeftEdge: WORD,
17073    pub sm_TopEdge: WORD,
17074    pub sm_Width: WORD,
17075    pub sm_Height: WORD,
17076    pub sm_InfoOpened: BOOL,
17077    pub sm_InfoLeftEdge: WORD,
17078    pub sm_InfoTopEdge: WORD,
17079    pub sm_InfoWidth: WORD,
17080    pub sm_InfoHeight: WORD,
17081    pub sm_UserData: APTR,
17082}
17083#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17084const _: () = {
17085    ["Size of ScreenModeRequester"][::core::mem::size_of::<ScreenModeRequester>() - 48usize];
17086    ["Alignment of ScreenModeRequester"][::core::mem::align_of::<ScreenModeRequester>() - 2usize];
17087    ["Offset of field: ScreenModeRequester::sm_DisplayID"]
17088        [::core::mem::offset_of!(ScreenModeRequester, sm_DisplayID) - 0usize];
17089    ["Offset of field: ScreenModeRequester::sm_DisplayWidth"]
17090        [::core::mem::offset_of!(ScreenModeRequester, sm_DisplayWidth) - 4usize];
17091    ["Offset of field: ScreenModeRequester::sm_DisplayHeight"]
17092        [::core::mem::offset_of!(ScreenModeRequester, sm_DisplayHeight) - 8usize];
17093    ["Offset of field: ScreenModeRequester::sm_DisplayDepth"]
17094        [::core::mem::offset_of!(ScreenModeRequester, sm_DisplayDepth) - 12usize];
17095    ["Offset of field: ScreenModeRequester::sm_OverscanType"]
17096        [::core::mem::offset_of!(ScreenModeRequester, sm_OverscanType) - 14usize];
17097    ["Offset of field: ScreenModeRequester::sm_AutoScroll"]
17098        [::core::mem::offset_of!(ScreenModeRequester, sm_AutoScroll) - 16usize];
17099    ["Offset of field: ScreenModeRequester::sm_BitMapWidth"]
17100        [::core::mem::offset_of!(ScreenModeRequester, sm_BitMapWidth) - 18usize];
17101    ["Offset of field: ScreenModeRequester::sm_BitMapHeight"]
17102        [::core::mem::offset_of!(ScreenModeRequester, sm_BitMapHeight) - 22usize];
17103    ["Offset of field: ScreenModeRequester::sm_LeftEdge"]
17104        [::core::mem::offset_of!(ScreenModeRequester, sm_LeftEdge) - 26usize];
17105    ["Offset of field: ScreenModeRequester::sm_TopEdge"]
17106        [::core::mem::offset_of!(ScreenModeRequester, sm_TopEdge) - 28usize];
17107    ["Offset of field: ScreenModeRequester::sm_Width"]
17108        [::core::mem::offset_of!(ScreenModeRequester, sm_Width) - 30usize];
17109    ["Offset of field: ScreenModeRequester::sm_Height"]
17110        [::core::mem::offset_of!(ScreenModeRequester, sm_Height) - 32usize];
17111    ["Offset of field: ScreenModeRequester::sm_InfoOpened"]
17112        [::core::mem::offset_of!(ScreenModeRequester, sm_InfoOpened) - 34usize];
17113    ["Offset of field: ScreenModeRequester::sm_InfoLeftEdge"]
17114        [::core::mem::offset_of!(ScreenModeRequester, sm_InfoLeftEdge) - 36usize];
17115    ["Offset of field: ScreenModeRequester::sm_InfoTopEdge"]
17116        [::core::mem::offset_of!(ScreenModeRequester, sm_InfoTopEdge) - 38usize];
17117    ["Offset of field: ScreenModeRequester::sm_InfoWidth"]
17118        [::core::mem::offset_of!(ScreenModeRequester, sm_InfoWidth) - 40usize];
17119    ["Offset of field: ScreenModeRequester::sm_InfoHeight"]
17120        [::core::mem::offset_of!(ScreenModeRequester, sm_InfoHeight) - 42usize];
17121    ["Offset of field: ScreenModeRequester::sm_UserData"]
17122        [::core::mem::offset_of!(ScreenModeRequester, sm_UserData) - 44usize];
17123};
17124#[repr(C, packed(2))]
17125#[derive(Debug, Copy, Clone)]
17126pub struct DisplayMode {
17127    pub dm_Node: Node,
17128    pub dm_DimensionInfo: DimensionInfo,
17129    pub dm_PropertyFlags: ULONG,
17130}
17131#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17132const _: () = {
17133    ["Size of DisplayMode"][::core::mem::size_of::<DisplayMode>() - 106usize];
17134    ["Alignment of DisplayMode"][::core::mem::align_of::<DisplayMode>() - 2usize];
17135    ["Offset of field: DisplayMode::dm_Node"]
17136        [::core::mem::offset_of!(DisplayMode, dm_Node) - 0usize];
17137    ["Offset of field: DisplayMode::dm_DimensionInfo"]
17138        [::core::mem::offset_of!(DisplayMode, dm_DimensionInfo) - 14usize];
17139    ["Offset of field: DisplayMode::dm_PropertyFlags"]
17140        [::core::mem::offset_of!(DisplayMode, dm_PropertyFlags) - 102usize];
17141};
17142#[repr(C, packed(2))]
17143#[derive(Debug, Copy, Clone)]
17144pub struct AslSemaphore {
17145    pub as_Semaphore: SignalSemaphore,
17146    pub as_Version: UWORD,
17147    pub as_Size: ULONG,
17148    pub as_SortBy: UBYTE,
17149    pub as_SortDrawers: UBYTE,
17150    pub as_SortOrder: UBYTE,
17151    pub as_SizePosition: UBYTE,
17152    pub as_RelativeLeft: WORD,
17153    pub as_RelativeTop: WORD,
17154    pub as_RelativeWidth: UBYTE,
17155    pub as_RelativeHeight: UBYTE,
17156}
17157#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17158const _: () = {
17159    ["Size of AslSemaphore"][::core::mem::size_of::<AslSemaphore>() - 62usize];
17160    ["Alignment of AslSemaphore"][::core::mem::align_of::<AslSemaphore>() - 2usize];
17161    ["Offset of field: AslSemaphore::as_Semaphore"]
17162        [::core::mem::offset_of!(AslSemaphore, as_Semaphore) - 0usize];
17163    ["Offset of field: AslSemaphore::as_Version"]
17164        [::core::mem::offset_of!(AslSemaphore, as_Version) - 46usize];
17165    ["Offset of field: AslSemaphore::as_Size"]
17166        [::core::mem::offset_of!(AslSemaphore, as_Size) - 48usize];
17167    ["Offset of field: AslSemaphore::as_SortBy"]
17168        [::core::mem::offset_of!(AslSemaphore, as_SortBy) - 52usize];
17169    ["Offset of field: AslSemaphore::as_SortDrawers"]
17170        [::core::mem::offset_of!(AslSemaphore, as_SortDrawers) - 53usize];
17171    ["Offset of field: AslSemaphore::as_SortOrder"]
17172        [::core::mem::offset_of!(AslSemaphore, as_SortOrder) - 54usize];
17173    ["Offset of field: AslSemaphore::as_SizePosition"]
17174        [::core::mem::offset_of!(AslSemaphore, as_SizePosition) - 55usize];
17175    ["Offset of field: AslSemaphore::as_RelativeLeft"]
17176        [::core::mem::offset_of!(AslSemaphore, as_RelativeLeft) - 56usize];
17177    ["Offset of field: AslSemaphore::as_RelativeTop"]
17178        [::core::mem::offset_of!(AslSemaphore, as_RelativeTop) - 58usize];
17179    ["Offset of field: AslSemaphore::as_RelativeWidth"]
17180        [::core::mem::offset_of!(AslSemaphore, as_RelativeWidth) - 60usize];
17181    ["Offset of field: AslSemaphore::as_RelativeHeight"]
17182        [::core::mem::offset_of!(AslSemaphore, as_RelativeHeight) - 61usize];
17183};
17184#[repr(C, packed(2))]
17185#[derive(Debug, Copy, Clone)]
17186pub struct NewBroker {
17187    pub nb_Version: BYTE,
17188    pub nb_Name: STRPTR,
17189    pub nb_Title: STRPTR,
17190    pub nb_Descr: STRPTR,
17191    pub nb_Unique: WORD,
17192    pub nb_Flags: WORD,
17193    pub nb_Pri: BYTE,
17194    pub nb_Port: *mut MsgPort,
17195    pub nb_ReservedChannel: WORD,
17196}
17197#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17198const _: () = {
17199    ["Size of NewBroker"][::core::mem::size_of::<NewBroker>() - 26usize];
17200    ["Alignment of NewBroker"][::core::mem::align_of::<NewBroker>() - 2usize];
17201    ["Offset of field: NewBroker::nb_Version"]
17202        [::core::mem::offset_of!(NewBroker, nb_Version) - 0usize];
17203    ["Offset of field: NewBroker::nb_Name"][::core::mem::offset_of!(NewBroker, nb_Name) - 2usize];
17204    ["Offset of field: NewBroker::nb_Title"][::core::mem::offset_of!(NewBroker, nb_Title) - 6usize];
17205    ["Offset of field: NewBroker::nb_Descr"]
17206        [::core::mem::offset_of!(NewBroker, nb_Descr) - 10usize];
17207    ["Offset of field: NewBroker::nb_Unique"]
17208        [::core::mem::offset_of!(NewBroker, nb_Unique) - 14usize];
17209    ["Offset of field: NewBroker::nb_Flags"]
17210        [::core::mem::offset_of!(NewBroker, nb_Flags) - 16usize];
17211    ["Offset of field: NewBroker::nb_Pri"][::core::mem::offset_of!(NewBroker, nb_Pri) - 18usize];
17212    ["Offset of field: NewBroker::nb_Port"][::core::mem::offset_of!(NewBroker, nb_Port) - 20usize];
17213    ["Offset of field: NewBroker::nb_ReservedChannel"]
17214        [::core::mem::offset_of!(NewBroker, nb_ReservedChannel) - 24usize];
17215};
17216pub type CxObj = LONG;
17217pub type CxMsg = LONG;
17218pub type PFL = FPTR;
17219#[repr(C)]
17220#[derive(Debug, Copy, Clone)]
17221pub struct InputXpression {
17222    pub ix_Version: UBYTE,
17223    pub ix_Class: UBYTE,
17224    pub ix_Code: UWORD,
17225    pub ix_CodeMask: UWORD,
17226    pub ix_Qualifier: UWORD,
17227    pub ix_QualMask: UWORD,
17228    pub ix_QualSame: UWORD,
17229}
17230#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17231const _: () = {
17232    ["Size of InputXpression"][::core::mem::size_of::<InputXpression>() - 12usize];
17233    ["Alignment of InputXpression"][::core::mem::align_of::<InputXpression>() - 2usize];
17234    ["Offset of field: InputXpression::ix_Version"]
17235        [::core::mem::offset_of!(InputXpression, ix_Version) - 0usize];
17236    ["Offset of field: InputXpression::ix_Class"]
17237        [::core::mem::offset_of!(InputXpression, ix_Class) - 1usize];
17238    ["Offset of field: InputXpression::ix_Code"]
17239        [::core::mem::offset_of!(InputXpression, ix_Code) - 2usize];
17240    ["Offset of field: InputXpression::ix_CodeMask"]
17241        [::core::mem::offset_of!(InputXpression, ix_CodeMask) - 4usize];
17242    ["Offset of field: InputXpression::ix_Qualifier"]
17243        [::core::mem::offset_of!(InputXpression, ix_Qualifier) - 6usize];
17244    ["Offset of field: InputXpression::ix_QualMask"]
17245        [::core::mem::offset_of!(InputXpression, ix_QualMask) - 8usize];
17246    ["Offset of field: InputXpression::ix_QualSame"]
17247        [::core::mem::offset_of!(InputXpression, ix_QualSame) - 10usize];
17248};
17249pub type IX = InputXpression;
17250#[repr(C, packed(2))]
17251#[derive(Debug, Copy, Clone)]
17252pub struct ExpansionRom {
17253    pub er_Type: UBYTE,
17254    pub er_Product: UBYTE,
17255    pub er_Flags: UBYTE,
17256    pub er_Reserved03: UBYTE,
17257    pub er_Manufacturer: UWORD,
17258    pub er_SerialNumber: ULONG,
17259    pub er_InitDiagVec: UWORD,
17260    pub er_Reserved0c: UBYTE,
17261    pub er_Reserved0d: UBYTE,
17262    pub er_Reserved0e: UBYTE,
17263    pub er_Reserved0f: UBYTE,
17264}
17265#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17266const _: () = {
17267    ["Size of ExpansionRom"][::core::mem::size_of::<ExpansionRom>() - 16usize];
17268    ["Alignment of ExpansionRom"][::core::mem::align_of::<ExpansionRom>() - 2usize];
17269    ["Offset of field: ExpansionRom::er_Type"]
17270        [::core::mem::offset_of!(ExpansionRom, er_Type) - 0usize];
17271    ["Offset of field: ExpansionRom::er_Product"]
17272        [::core::mem::offset_of!(ExpansionRom, er_Product) - 1usize];
17273    ["Offset of field: ExpansionRom::er_Flags"]
17274        [::core::mem::offset_of!(ExpansionRom, er_Flags) - 2usize];
17275    ["Offset of field: ExpansionRom::er_Reserved03"]
17276        [::core::mem::offset_of!(ExpansionRom, er_Reserved03) - 3usize];
17277    ["Offset of field: ExpansionRom::er_Manufacturer"]
17278        [::core::mem::offset_of!(ExpansionRom, er_Manufacturer) - 4usize];
17279    ["Offset of field: ExpansionRom::er_SerialNumber"]
17280        [::core::mem::offset_of!(ExpansionRom, er_SerialNumber) - 6usize];
17281    ["Offset of field: ExpansionRom::er_InitDiagVec"]
17282        [::core::mem::offset_of!(ExpansionRom, er_InitDiagVec) - 10usize];
17283    ["Offset of field: ExpansionRom::er_Reserved0c"]
17284        [::core::mem::offset_of!(ExpansionRom, er_Reserved0c) - 12usize];
17285    ["Offset of field: ExpansionRom::er_Reserved0d"]
17286        [::core::mem::offset_of!(ExpansionRom, er_Reserved0d) - 13usize];
17287    ["Offset of field: ExpansionRom::er_Reserved0e"]
17288        [::core::mem::offset_of!(ExpansionRom, er_Reserved0e) - 14usize];
17289    ["Offset of field: ExpansionRom::er_Reserved0f"]
17290        [::core::mem::offset_of!(ExpansionRom, er_Reserved0f) - 15usize];
17291};
17292#[repr(C)]
17293#[derive(Debug, Copy, Clone)]
17294pub struct ExpansionControl {
17295    pub ec_Interrupt: UBYTE,
17296    pub ec_Z3_HighBase: UBYTE,
17297    pub ec_BaseAddress: UBYTE,
17298    pub ec_Shutup: UBYTE,
17299    pub ec_Reserved14: UBYTE,
17300    pub ec_Reserved15: UBYTE,
17301    pub ec_Reserved16: UBYTE,
17302    pub ec_Reserved17: UBYTE,
17303    pub ec_Reserved18: UBYTE,
17304    pub ec_Reserved19: UBYTE,
17305    pub ec_Reserved1a: UBYTE,
17306    pub ec_Reserved1b: UBYTE,
17307    pub ec_Reserved1c: UBYTE,
17308    pub ec_Reserved1d: UBYTE,
17309    pub ec_Reserved1e: UBYTE,
17310    pub ec_Reserved1f: UBYTE,
17311}
17312#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17313const _: () = {
17314    ["Size of ExpansionControl"][::core::mem::size_of::<ExpansionControl>() - 16usize];
17315    ["Alignment of ExpansionControl"][::core::mem::align_of::<ExpansionControl>() - 1usize];
17316    ["Offset of field: ExpansionControl::ec_Interrupt"]
17317        [::core::mem::offset_of!(ExpansionControl, ec_Interrupt) - 0usize];
17318    ["Offset of field: ExpansionControl::ec_Z3_HighBase"]
17319        [::core::mem::offset_of!(ExpansionControl, ec_Z3_HighBase) - 1usize];
17320    ["Offset of field: ExpansionControl::ec_BaseAddress"]
17321        [::core::mem::offset_of!(ExpansionControl, ec_BaseAddress) - 2usize];
17322    ["Offset of field: ExpansionControl::ec_Shutup"]
17323        [::core::mem::offset_of!(ExpansionControl, ec_Shutup) - 3usize];
17324    ["Offset of field: ExpansionControl::ec_Reserved14"]
17325        [::core::mem::offset_of!(ExpansionControl, ec_Reserved14) - 4usize];
17326    ["Offset of field: ExpansionControl::ec_Reserved15"]
17327        [::core::mem::offset_of!(ExpansionControl, ec_Reserved15) - 5usize];
17328    ["Offset of field: ExpansionControl::ec_Reserved16"]
17329        [::core::mem::offset_of!(ExpansionControl, ec_Reserved16) - 6usize];
17330    ["Offset of field: ExpansionControl::ec_Reserved17"]
17331        [::core::mem::offset_of!(ExpansionControl, ec_Reserved17) - 7usize];
17332    ["Offset of field: ExpansionControl::ec_Reserved18"]
17333        [::core::mem::offset_of!(ExpansionControl, ec_Reserved18) - 8usize];
17334    ["Offset of field: ExpansionControl::ec_Reserved19"]
17335        [::core::mem::offset_of!(ExpansionControl, ec_Reserved19) - 9usize];
17336    ["Offset of field: ExpansionControl::ec_Reserved1a"]
17337        [::core::mem::offset_of!(ExpansionControl, ec_Reserved1a) - 10usize];
17338    ["Offset of field: ExpansionControl::ec_Reserved1b"]
17339        [::core::mem::offset_of!(ExpansionControl, ec_Reserved1b) - 11usize];
17340    ["Offset of field: ExpansionControl::ec_Reserved1c"]
17341        [::core::mem::offset_of!(ExpansionControl, ec_Reserved1c) - 12usize];
17342    ["Offset of field: ExpansionControl::ec_Reserved1d"]
17343        [::core::mem::offset_of!(ExpansionControl, ec_Reserved1d) - 13usize];
17344    ["Offset of field: ExpansionControl::ec_Reserved1e"]
17345        [::core::mem::offset_of!(ExpansionControl, ec_Reserved1e) - 14usize];
17346    ["Offset of field: ExpansionControl::ec_Reserved1f"]
17347        [::core::mem::offset_of!(ExpansionControl, ec_Reserved1f) - 15usize];
17348};
17349#[repr(C)]
17350#[derive(Debug, Copy, Clone)]
17351pub struct DiagArea {
17352    pub da_Config: UBYTE,
17353    pub da_Flags: UBYTE,
17354    pub da_Size: UWORD,
17355    pub da_DiagPoint: UWORD,
17356    pub da_BootPoint: UWORD,
17357    pub da_Name: UWORD,
17358    pub da_Reserved01: UWORD,
17359    pub da_Reserved02: UWORD,
17360}
17361#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17362const _: () = {
17363    ["Size of DiagArea"][::core::mem::size_of::<DiagArea>() - 14usize];
17364    ["Alignment of DiagArea"][::core::mem::align_of::<DiagArea>() - 2usize];
17365    ["Offset of field: DiagArea::da_Config"][::core::mem::offset_of!(DiagArea, da_Config) - 0usize];
17366    ["Offset of field: DiagArea::da_Flags"][::core::mem::offset_of!(DiagArea, da_Flags) - 1usize];
17367    ["Offset of field: DiagArea::da_Size"][::core::mem::offset_of!(DiagArea, da_Size) - 2usize];
17368    ["Offset of field: DiagArea::da_DiagPoint"]
17369        [::core::mem::offset_of!(DiagArea, da_DiagPoint) - 4usize];
17370    ["Offset of field: DiagArea::da_BootPoint"]
17371        [::core::mem::offset_of!(DiagArea, da_BootPoint) - 6usize];
17372    ["Offset of field: DiagArea::da_Name"][::core::mem::offset_of!(DiagArea, da_Name) - 8usize];
17373    ["Offset of field: DiagArea::da_Reserved01"]
17374        [::core::mem::offset_of!(DiagArea, da_Reserved01) - 10usize];
17375    ["Offset of field: DiagArea::da_Reserved02"]
17376        [::core::mem::offset_of!(DiagArea, da_Reserved02) - 12usize];
17377};
17378#[repr(C, packed(2))]
17379#[derive(Debug, Copy, Clone)]
17380pub struct ConfigDev {
17381    pub cd_Node: Node,
17382    pub cd_Flags: UBYTE,
17383    pub cd_Pad: UBYTE,
17384    pub cd_Rom: ExpansionRom,
17385    pub cd_BoardAddr: APTR,
17386    pub cd_BoardSize: ULONG,
17387    pub cd_SlotAddr: UWORD,
17388    pub cd_SlotSize: UWORD,
17389    pub cd_Driver: APTR,
17390    pub cd_NextCD: *mut ConfigDev,
17391    pub cd_Unused: [ULONG; 4usize],
17392}
17393#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17394const _: () = {
17395    ["Size of ConfigDev"][::core::mem::size_of::<ConfigDev>() - 68usize];
17396    ["Alignment of ConfigDev"][::core::mem::align_of::<ConfigDev>() - 2usize];
17397    ["Offset of field: ConfigDev::cd_Node"][::core::mem::offset_of!(ConfigDev, cd_Node) - 0usize];
17398    ["Offset of field: ConfigDev::cd_Flags"]
17399        [::core::mem::offset_of!(ConfigDev, cd_Flags) - 14usize];
17400    ["Offset of field: ConfigDev::cd_Pad"][::core::mem::offset_of!(ConfigDev, cd_Pad) - 15usize];
17401    ["Offset of field: ConfigDev::cd_Rom"][::core::mem::offset_of!(ConfigDev, cd_Rom) - 16usize];
17402    ["Offset of field: ConfigDev::cd_BoardAddr"]
17403        [::core::mem::offset_of!(ConfigDev, cd_BoardAddr) - 32usize];
17404    ["Offset of field: ConfigDev::cd_BoardSize"]
17405        [::core::mem::offset_of!(ConfigDev, cd_BoardSize) - 36usize];
17406    ["Offset of field: ConfigDev::cd_SlotAddr"]
17407        [::core::mem::offset_of!(ConfigDev, cd_SlotAddr) - 40usize];
17408    ["Offset of field: ConfigDev::cd_SlotSize"]
17409        [::core::mem::offset_of!(ConfigDev, cd_SlotSize) - 42usize];
17410    ["Offset of field: ConfigDev::cd_Driver"]
17411        [::core::mem::offset_of!(ConfigDev, cd_Driver) - 44usize];
17412    ["Offset of field: ConfigDev::cd_NextCD"]
17413        [::core::mem::offset_of!(ConfigDev, cd_NextCD) - 48usize];
17414    ["Offset of field: ConfigDev::cd_Unused"]
17415        [::core::mem::offset_of!(ConfigDev, cd_Unused) - 52usize];
17416};
17417#[repr(C, packed(2))]
17418#[derive(Debug, Copy, Clone)]
17419pub struct CurrentBinding {
17420    pub cb_ConfigDev: *mut ConfigDev,
17421    pub cb_FileName: STRPTR,
17422    pub cb_ProductString: STRPTR,
17423    pub cb_ToolTypes: *mut STRPTR,
17424}
17425#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17426const _: () = {
17427    ["Size of CurrentBinding"][::core::mem::size_of::<CurrentBinding>() - 16usize];
17428    ["Alignment of CurrentBinding"][::core::mem::align_of::<CurrentBinding>() - 2usize];
17429    ["Offset of field: CurrentBinding::cb_ConfigDev"]
17430        [::core::mem::offset_of!(CurrentBinding, cb_ConfigDev) - 0usize];
17431    ["Offset of field: CurrentBinding::cb_FileName"]
17432        [::core::mem::offset_of!(CurrentBinding, cb_FileName) - 4usize];
17433    ["Offset of field: CurrentBinding::cb_ProductString"]
17434        [::core::mem::offset_of!(CurrentBinding, cb_ProductString) - 8usize];
17435    ["Offset of field: CurrentBinding::cb_ToolTypes"]
17436        [::core::mem::offset_of!(CurrentBinding, cb_ToolTypes) - 12usize];
17437};
17438#[repr(C, packed(2))]
17439#[derive(Debug, Copy, Clone)]
17440pub struct BootNode {
17441    pub bn_Node: Node,
17442    pub bn_Flags: UWORD,
17443    pub bn_DeviceNode: APTR,
17444}
17445#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17446const _: () = {
17447    ["Size of BootNode"][::core::mem::size_of::<BootNode>() - 20usize];
17448    ["Alignment of BootNode"][::core::mem::align_of::<BootNode>() - 2usize];
17449    ["Offset of field: BootNode::bn_Node"][::core::mem::offset_of!(BootNode, bn_Node) - 0usize];
17450    ["Offset of field: BootNode::bn_Flags"][::core::mem::offset_of!(BootNode, bn_Flags) - 14usize];
17451    ["Offset of field: BootNode::bn_DeviceNode"]
17452        [::core::mem::offset_of!(BootNode, bn_DeviceNode) - 16usize];
17453};
17454#[repr(C, packed(2))]
17455#[derive(Debug, Copy, Clone)]
17456pub struct ExpansionBase {
17457    pub LibNode: Library,
17458    pub Flags: UBYTE,
17459    pub eb_Private01: UBYTE,
17460    pub eb_Private02: ULONG,
17461    pub eb_Private03: ULONG,
17462    pub eb_Private04: CurrentBinding,
17463    pub eb_Private05: List,
17464    pub MountList: List,
17465}
17466#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17467const _: () = {
17468    ["Size of ExpansionBase"][::core::mem::size_of::<ExpansionBase>() - 88usize];
17469    ["Alignment of ExpansionBase"][::core::mem::align_of::<ExpansionBase>() - 2usize];
17470    ["Offset of field: ExpansionBase::LibNode"]
17471        [::core::mem::offset_of!(ExpansionBase, LibNode) - 0usize];
17472    ["Offset of field: ExpansionBase::Flags"]
17473        [::core::mem::offset_of!(ExpansionBase, Flags) - 34usize];
17474    ["Offset of field: ExpansionBase::eb_Private01"]
17475        [::core::mem::offset_of!(ExpansionBase, eb_Private01) - 35usize];
17476    ["Offset of field: ExpansionBase::eb_Private02"]
17477        [::core::mem::offset_of!(ExpansionBase, eb_Private02) - 36usize];
17478    ["Offset of field: ExpansionBase::eb_Private03"]
17479        [::core::mem::offset_of!(ExpansionBase, eb_Private03) - 40usize];
17480    ["Offset of field: ExpansionBase::eb_Private04"]
17481        [::core::mem::offset_of!(ExpansionBase, eb_Private04) - 44usize];
17482    ["Offset of field: ExpansionBase::eb_Private05"]
17483        [::core::mem::offset_of!(ExpansionBase, eb_Private05) - 60usize];
17484    ["Offset of field: ExpansionBase::MountList"]
17485        [::core::mem::offset_of!(ExpansionBase, MountList) - 74usize];
17486};
17487#[repr(C, packed(2))]
17488#[derive(Debug, Copy, Clone)]
17489pub struct NewGadget {
17490    pub ng_LeftEdge: WORD,
17491    pub ng_TopEdge: WORD,
17492    pub ng_Width: WORD,
17493    pub ng_Height: WORD,
17494    pub ng_GadgetText: CONST_STRPTR,
17495    pub ng_TextAttr: *const TextAttr,
17496    pub ng_GadgetID: UWORD,
17497    pub ng_Flags: ULONG,
17498    pub ng_VisualInfo: APTR,
17499    pub ng_UserData: APTR,
17500}
17501#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17502const _: () = {
17503    ["Size of NewGadget"][::core::mem::size_of::<NewGadget>() - 30usize];
17504    ["Alignment of NewGadget"][::core::mem::align_of::<NewGadget>() - 2usize];
17505    ["Offset of field: NewGadget::ng_LeftEdge"]
17506        [::core::mem::offset_of!(NewGadget, ng_LeftEdge) - 0usize];
17507    ["Offset of field: NewGadget::ng_TopEdge"]
17508        [::core::mem::offset_of!(NewGadget, ng_TopEdge) - 2usize];
17509    ["Offset of field: NewGadget::ng_Width"][::core::mem::offset_of!(NewGadget, ng_Width) - 4usize];
17510    ["Offset of field: NewGadget::ng_Height"]
17511        [::core::mem::offset_of!(NewGadget, ng_Height) - 6usize];
17512    ["Offset of field: NewGadget::ng_GadgetText"]
17513        [::core::mem::offset_of!(NewGadget, ng_GadgetText) - 8usize];
17514    ["Offset of field: NewGadget::ng_TextAttr"]
17515        [::core::mem::offset_of!(NewGadget, ng_TextAttr) - 12usize];
17516    ["Offset of field: NewGadget::ng_GadgetID"]
17517        [::core::mem::offset_of!(NewGadget, ng_GadgetID) - 16usize];
17518    ["Offset of field: NewGadget::ng_Flags"]
17519        [::core::mem::offset_of!(NewGadget, ng_Flags) - 18usize];
17520    ["Offset of field: NewGadget::ng_VisualInfo"]
17521        [::core::mem::offset_of!(NewGadget, ng_VisualInfo) - 22usize];
17522    ["Offset of field: NewGadget::ng_UserData"]
17523        [::core::mem::offset_of!(NewGadget, ng_UserData) - 26usize];
17524};
17525#[repr(C, packed(2))]
17526#[derive(Debug, Copy, Clone)]
17527pub struct NewMenu {
17528    pub nm_Type: UBYTE,
17529    pub nm_Label: CONST_STRPTR,
17530    pub nm_CommKey: CONST_STRPTR,
17531    pub nm_Flags: UWORD,
17532    pub nm_MutualExclude: LONG,
17533    pub nm_UserData: APTR,
17534}
17535#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17536const _: () = {
17537    ["Size of NewMenu"][::core::mem::size_of::<NewMenu>() - 20usize];
17538    ["Alignment of NewMenu"][::core::mem::align_of::<NewMenu>() - 2usize];
17539    ["Offset of field: NewMenu::nm_Type"][::core::mem::offset_of!(NewMenu, nm_Type) - 0usize];
17540    ["Offset of field: NewMenu::nm_Label"][::core::mem::offset_of!(NewMenu, nm_Label) - 2usize];
17541    ["Offset of field: NewMenu::nm_CommKey"][::core::mem::offset_of!(NewMenu, nm_CommKey) - 6usize];
17542    ["Offset of field: NewMenu::nm_Flags"][::core::mem::offset_of!(NewMenu, nm_Flags) - 10usize];
17543    ["Offset of field: NewMenu::nm_MutualExclude"]
17544        [::core::mem::offset_of!(NewMenu, nm_MutualExclude) - 12usize];
17545    ["Offset of field: NewMenu::nm_UserData"]
17546        [::core::mem::offset_of!(NewMenu, nm_UserData) - 16usize];
17547};
17548#[repr(C, packed(2))]
17549#[derive(Debug, Copy, Clone)]
17550pub struct LVDrawMsg {
17551    pub lvdm_MethodID: ULONG,
17552    pub lvdm_RastPort: *mut RastPort,
17553    pub lvdm_DrawInfo: *mut DrawInfo,
17554    pub lvdm_Bounds: Rectangle,
17555    pub lvdm_State: ULONG,
17556}
17557#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17558const _: () = {
17559    ["Size of LVDrawMsg"][::core::mem::size_of::<LVDrawMsg>() - 24usize];
17560    ["Alignment of LVDrawMsg"][::core::mem::align_of::<LVDrawMsg>() - 2usize];
17561    ["Offset of field: LVDrawMsg::lvdm_MethodID"]
17562        [::core::mem::offset_of!(LVDrawMsg, lvdm_MethodID) - 0usize];
17563    ["Offset of field: LVDrawMsg::lvdm_RastPort"]
17564        [::core::mem::offset_of!(LVDrawMsg, lvdm_RastPort) - 4usize];
17565    ["Offset of field: LVDrawMsg::lvdm_DrawInfo"]
17566        [::core::mem::offset_of!(LVDrawMsg, lvdm_DrawInfo) - 8usize];
17567    ["Offset of field: LVDrawMsg::lvdm_Bounds"]
17568        [::core::mem::offset_of!(LVDrawMsg, lvdm_Bounds) - 12usize];
17569    ["Offset of field: LVDrawMsg::lvdm_State"]
17570        [::core::mem::offset_of!(LVDrawMsg, lvdm_State) - 20usize];
17571};
17572#[repr(C)]
17573#[derive(Debug, Copy, Clone)]
17574pub struct LocaleBase {
17575    pub lb_LibNode: Library,
17576    pub lb_SysPatches: BOOL,
17577}
17578#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17579const _: () = {
17580    ["Size of LocaleBase"][::core::mem::size_of::<LocaleBase>() - 36usize];
17581    ["Alignment of LocaleBase"][::core::mem::align_of::<LocaleBase>() - 2usize];
17582    ["Offset of field: LocaleBase::lb_LibNode"]
17583        [::core::mem::offset_of!(LocaleBase, lb_LibNode) - 0usize];
17584    ["Offset of field: LocaleBase::lb_SysPatches"]
17585        [::core::mem::offset_of!(LocaleBase, lb_SysPatches) - 34usize];
17586};
17587#[repr(C, packed(2))]
17588#[derive(Debug, Copy, Clone)]
17589pub struct Locale {
17590    pub loc_LocaleName: STRPTR,
17591    pub loc_LanguageName: STRPTR,
17592    pub loc_PrefLanguages: [STRPTR; 10usize],
17593    pub loc_Flags: ULONG,
17594    pub loc_CodeSet: ULONG,
17595    pub loc_CountryCode: ULONG,
17596    pub loc_TelephoneCode: ULONG,
17597    pub loc_GMTOffset: LONG,
17598    pub loc_MeasuringSystem: UBYTE,
17599    pub loc_CalendarType: UBYTE,
17600    pub loc_Reserved0: [UBYTE; 2usize],
17601    pub loc_DateTimeFormat: STRPTR,
17602    pub loc_DateFormat: STRPTR,
17603    pub loc_TimeFormat: STRPTR,
17604    pub loc_ShortDateTimeFormat: STRPTR,
17605    pub loc_ShortDateFormat: STRPTR,
17606    pub loc_ShortTimeFormat: STRPTR,
17607    pub loc_DecimalPoint: STRPTR,
17608    pub loc_GroupSeparator: STRPTR,
17609    pub loc_FracGroupSeparator: STRPTR,
17610    pub loc_Grouping: *mut UBYTE,
17611    pub loc_FracGrouping: *mut UBYTE,
17612    pub loc_MonDecimalPoint: STRPTR,
17613    pub loc_MonGroupSeparator: STRPTR,
17614    pub loc_MonFracGroupSeparator: STRPTR,
17615    pub loc_MonGrouping: *mut UBYTE,
17616    pub loc_MonFracGrouping: *mut UBYTE,
17617    pub loc_MonFracDigits: UBYTE,
17618    pub loc_MonIntFracDigits: UBYTE,
17619    pub loc_Reserved1: [UBYTE; 2usize],
17620    pub loc_MonCS: STRPTR,
17621    pub loc_MonSmallCS: STRPTR,
17622    pub loc_MonIntCS: STRPTR,
17623    pub loc_MonPositiveSign: STRPTR,
17624    pub loc_MonPositiveSpaceSep: UBYTE,
17625    pub loc_MonPositiveSignPos: UBYTE,
17626    pub loc_MonPositiveCSPos: UBYTE,
17627    pub loc_Reserved2: UBYTE,
17628    pub loc_MonNegativeSign: STRPTR,
17629    pub loc_MonNegativeSpaceSep: UBYTE,
17630    pub loc_MonNegativeSignPos: UBYTE,
17631    pub loc_MonNegativeCSPos: UBYTE,
17632    pub loc_Reserved3: UBYTE,
17633}
17634#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17635const _: () = {
17636    ["Size of Locale"][::core::mem::size_of::<Locale>() - 168usize];
17637    ["Alignment of Locale"][::core::mem::align_of::<Locale>() - 2usize];
17638    ["Offset of field: Locale::loc_LocaleName"]
17639        [::core::mem::offset_of!(Locale, loc_LocaleName) - 0usize];
17640    ["Offset of field: Locale::loc_LanguageName"]
17641        [::core::mem::offset_of!(Locale, loc_LanguageName) - 4usize];
17642    ["Offset of field: Locale::loc_PrefLanguages"]
17643        [::core::mem::offset_of!(Locale, loc_PrefLanguages) - 8usize];
17644    ["Offset of field: Locale::loc_Flags"][::core::mem::offset_of!(Locale, loc_Flags) - 48usize];
17645    ["Offset of field: Locale::loc_CodeSet"]
17646        [::core::mem::offset_of!(Locale, loc_CodeSet) - 52usize];
17647    ["Offset of field: Locale::loc_CountryCode"]
17648        [::core::mem::offset_of!(Locale, loc_CountryCode) - 56usize];
17649    ["Offset of field: Locale::loc_TelephoneCode"]
17650        [::core::mem::offset_of!(Locale, loc_TelephoneCode) - 60usize];
17651    ["Offset of field: Locale::loc_GMTOffset"]
17652        [::core::mem::offset_of!(Locale, loc_GMTOffset) - 64usize];
17653    ["Offset of field: Locale::loc_MeasuringSystem"]
17654        [::core::mem::offset_of!(Locale, loc_MeasuringSystem) - 68usize];
17655    ["Offset of field: Locale::loc_CalendarType"]
17656        [::core::mem::offset_of!(Locale, loc_CalendarType) - 69usize];
17657    ["Offset of field: Locale::loc_Reserved0"]
17658        [::core::mem::offset_of!(Locale, loc_Reserved0) - 70usize];
17659    ["Offset of field: Locale::loc_DateTimeFormat"]
17660        [::core::mem::offset_of!(Locale, loc_DateTimeFormat) - 72usize];
17661    ["Offset of field: Locale::loc_DateFormat"]
17662        [::core::mem::offset_of!(Locale, loc_DateFormat) - 76usize];
17663    ["Offset of field: Locale::loc_TimeFormat"]
17664        [::core::mem::offset_of!(Locale, loc_TimeFormat) - 80usize];
17665    ["Offset of field: Locale::loc_ShortDateTimeFormat"]
17666        [::core::mem::offset_of!(Locale, loc_ShortDateTimeFormat) - 84usize];
17667    ["Offset of field: Locale::loc_ShortDateFormat"]
17668        [::core::mem::offset_of!(Locale, loc_ShortDateFormat) - 88usize];
17669    ["Offset of field: Locale::loc_ShortTimeFormat"]
17670        [::core::mem::offset_of!(Locale, loc_ShortTimeFormat) - 92usize];
17671    ["Offset of field: Locale::loc_DecimalPoint"]
17672        [::core::mem::offset_of!(Locale, loc_DecimalPoint) - 96usize];
17673    ["Offset of field: Locale::loc_GroupSeparator"]
17674        [::core::mem::offset_of!(Locale, loc_GroupSeparator) - 100usize];
17675    ["Offset of field: Locale::loc_FracGroupSeparator"]
17676        [::core::mem::offset_of!(Locale, loc_FracGroupSeparator) - 104usize];
17677    ["Offset of field: Locale::loc_Grouping"]
17678        [::core::mem::offset_of!(Locale, loc_Grouping) - 108usize];
17679    ["Offset of field: Locale::loc_FracGrouping"]
17680        [::core::mem::offset_of!(Locale, loc_FracGrouping) - 112usize];
17681    ["Offset of field: Locale::loc_MonDecimalPoint"]
17682        [::core::mem::offset_of!(Locale, loc_MonDecimalPoint) - 116usize];
17683    ["Offset of field: Locale::loc_MonGroupSeparator"]
17684        [::core::mem::offset_of!(Locale, loc_MonGroupSeparator) - 120usize];
17685    ["Offset of field: Locale::loc_MonFracGroupSeparator"]
17686        [::core::mem::offset_of!(Locale, loc_MonFracGroupSeparator) - 124usize];
17687    ["Offset of field: Locale::loc_MonGrouping"]
17688        [::core::mem::offset_of!(Locale, loc_MonGrouping) - 128usize];
17689    ["Offset of field: Locale::loc_MonFracGrouping"]
17690        [::core::mem::offset_of!(Locale, loc_MonFracGrouping) - 132usize];
17691    ["Offset of field: Locale::loc_MonFracDigits"]
17692        [::core::mem::offset_of!(Locale, loc_MonFracDigits) - 136usize];
17693    ["Offset of field: Locale::loc_MonIntFracDigits"]
17694        [::core::mem::offset_of!(Locale, loc_MonIntFracDigits) - 137usize];
17695    ["Offset of field: Locale::loc_Reserved1"]
17696        [::core::mem::offset_of!(Locale, loc_Reserved1) - 138usize];
17697    ["Offset of field: Locale::loc_MonCS"][::core::mem::offset_of!(Locale, loc_MonCS) - 140usize];
17698    ["Offset of field: Locale::loc_MonSmallCS"]
17699        [::core::mem::offset_of!(Locale, loc_MonSmallCS) - 144usize];
17700    ["Offset of field: Locale::loc_MonIntCS"]
17701        [::core::mem::offset_of!(Locale, loc_MonIntCS) - 148usize];
17702    ["Offset of field: Locale::loc_MonPositiveSign"]
17703        [::core::mem::offset_of!(Locale, loc_MonPositiveSign) - 152usize];
17704    ["Offset of field: Locale::loc_MonPositiveSpaceSep"]
17705        [::core::mem::offset_of!(Locale, loc_MonPositiveSpaceSep) - 156usize];
17706    ["Offset of field: Locale::loc_MonPositiveSignPos"]
17707        [::core::mem::offset_of!(Locale, loc_MonPositiveSignPos) - 157usize];
17708    ["Offset of field: Locale::loc_MonPositiveCSPos"]
17709        [::core::mem::offset_of!(Locale, loc_MonPositiveCSPos) - 158usize];
17710    ["Offset of field: Locale::loc_Reserved2"]
17711        [::core::mem::offset_of!(Locale, loc_Reserved2) - 159usize];
17712    ["Offset of field: Locale::loc_MonNegativeSign"]
17713        [::core::mem::offset_of!(Locale, loc_MonNegativeSign) - 160usize];
17714    ["Offset of field: Locale::loc_MonNegativeSpaceSep"]
17715        [::core::mem::offset_of!(Locale, loc_MonNegativeSpaceSep) - 164usize];
17716    ["Offset of field: Locale::loc_MonNegativeSignPos"]
17717        [::core::mem::offset_of!(Locale, loc_MonNegativeSignPos) - 165usize];
17718    ["Offset of field: Locale::loc_MonNegativeCSPos"]
17719        [::core::mem::offset_of!(Locale, loc_MonNegativeCSPos) - 166usize];
17720    ["Offset of field: Locale::loc_Reserved3"]
17721        [::core::mem::offset_of!(Locale, loc_Reserved3) - 167usize];
17722};
17723#[repr(C, packed(2))]
17724#[derive(Debug, Copy, Clone)]
17725pub struct Catalog {
17726    pub cat_Link: Node,
17727    pub cat_Pad: UWORD,
17728    pub cat_Language: STRPTR,
17729    pub cat_CodeSet: ULONG,
17730    pub cat_Version: UWORD,
17731    pub cat_Revision: UWORD,
17732}
17733#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17734const _: () = {
17735    ["Size of Catalog"][::core::mem::size_of::<Catalog>() - 28usize];
17736    ["Alignment of Catalog"][::core::mem::align_of::<Catalog>() - 2usize];
17737    ["Offset of field: Catalog::cat_Link"][::core::mem::offset_of!(Catalog, cat_Link) - 0usize];
17738    ["Offset of field: Catalog::cat_Pad"][::core::mem::offset_of!(Catalog, cat_Pad) - 14usize];
17739    ["Offset of field: Catalog::cat_Language"]
17740        [::core::mem::offset_of!(Catalog, cat_Language) - 16usize];
17741    ["Offset of field: Catalog::cat_CodeSet"]
17742        [::core::mem::offset_of!(Catalog, cat_CodeSet) - 20usize];
17743    ["Offset of field: Catalog::cat_Version"]
17744        [::core::mem::offset_of!(Catalog, cat_Version) - 24usize];
17745    ["Offset of field: Catalog::cat_Revision"]
17746        [::core::mem::offset_of!(Catalog, cat_Revision) - 26usize];
17747};
17748#[repr(C)]
17749#[derive(Debug, Copy, Clone)]
17750pub struct KeyQuery {
17751    pub kq_KeyCode: UWORD,
17752    pub kq_Pressed: BOOL,
17753}
17754#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17755const _: () = {
17756    ["Size of KeyQuery"][::core::mem::size_of::<KeyQuery>() - 4usize];
17757    ["Alignment of KeyQuery"][::core::mem::align_of::<KeyQuery>() - 2usize];
17758    ["Offset of field: KeyQuery::kq_KeyCode"]
17759        [::core::mem::offset_of!(KeyQuery, kq_KeyCode) - 0usize];
17760    ["Offset of field: KeyQuery::kq_Pressed"]
17761        [::core::mem::offset_of!(KeyQuery, kq_Pressed) - 2usize];
17762};
17763#[repr(C, packed(2))]
17764#[derive(Debug, Copy, Clone)]
17765pub struct MathIEEEBase {
17766    pub MathIEEEBase_LibNode: Library,
17767    pub MathIEEEBase_reserved: [::core::ffi::c_uchar; 18usize],
17768    pub MathIEEEBase_TaskOpenLib: FPTR,
17769    pub MathIEEEBase_TaskCloseLib: FPTR,
17770}
17771#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17772const _: () = {
17773    ["Size of MathIEEEBase"][::core::mem::size_of::<MathIEEEBase>() - 60usize];
17774    ["Alignment of MathIEEEBase"][::core::mem::align_of::<MathIEEEBase>() - 2usize];
17775    ["Offset of field: MathIEEEBase::MathIEEEBase_LibNode"]
17776        [::core::mem::offset_of!(MathIEEEBase, MathIEEEBase_LibNode) - 0usize];
17777    ["Offset of field: MathIEEEBase::MathIEEEBase_reserved"]
17778        [::core::mem::offset_of!(MathIEEEBase, MathIEEEBase_reserved) - 34usize];
17779    ["Offset of field: MathIEEEBase::MathIEEEBase_TaskOpenLib"]
17780        [::core::mem::offset_of!(MathIEEEBase, MathIEEEBase_TaskOpenLib) - 52usize];
17781    ["Offset of field: MathIEEEBase::MathIEEEBase_TaskCloseLib"]
17782        [::core::mem::offset_of!(MathIEEEBase, MathIEEEBase_TaskCloseLib) - 56usize];
17783};
17784#[repr(C, packed(2))]
17785#[derive(Debug, Copy, Clone)]
17786pub struct MathIEEEResource {
17787    pub MathIEEEResource_Node: Node,
17788    pub MathIEEEResource_Flags: ::core::ffi::c_ushort,
17789    pub MathIEEEResource_BaseAddr: *mut ::core::ffi::c_ushort,
17790    pub MathIEEEResource_DblBasInit: FPTR,
17791    pub MathIEEEResource_DblTransInit: FPTR,
17792    pub MathIEEEResource_SglBasInit: FPTR,
17793    pub MathIEEEResource_SglTransInit: FPTR,
17794    pub MathIEEEResource_ExtBasInit: FPTR,
17795    pub MathIEEEResource_ExtTransInit: FPTR,
17796}
17797#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17798const _: () = {
17799    ["Size of MathIEEEResource"][::core::mem::size_of::<MathIEEEResource>() - 44usize];
17800    ["Alignment of MathIEEEResource"][::core::mem::align_of::<MathIEEEResource>() - 2usize];
17801    ["Offset of field: MathIEEEResource::MathIEEEResource_Node"]
17802        [::core::mem::offset_of!(MathIEEEResource, MathIEEEResource_Node) - 0usize];
17803    ["Offset of field: MathIEEEResource::MathIEEEResource_Flags"]
17804        [::core::mem::offset_of!(MathIEEEResource, MathIEEEResource_Flags) - 14usize];
17805    ["Offset of field: MathIEEEResource::MathIEEEResource_BaseAddr"]
17806        [::core::mem::offset_of!(MathIEEEResource, MathIEEEResource_BaseAddr) - 16usize];
17807    ["Offset of field: MathIEEEResource::MathIEEEResource_DblBasInit"]
17808        [::core::mem::offset_of!(MathIEEEResource, MathIEEEResource_DblBasInit) - 20usize];
17809    ["Offset of field: MathIEEEResource::MathIEEEResource_DblTransInit"]
17810        [::core::mem::offset_of!(MathIEEEResource, MathIEEEResource_DblTransInit) - 24usize];
17811    ["Offset of field: MathIEEEResource::MathIEEEResource_SglBasInit"]
17812        [::core::mem::offset_of!(MathIEEEResource, MathIEEEResource_SglBasInit) - 28usize];
17813    ["Offset of field: MathIEEEResource::MathIEEEResource_SglTransInit"]
17814        [::core::mem::offset_of!(MathIEEEResource, MathIEEEResource_SglTransInit) - 32usize];
17815    ["Offset of field: MathIEEEResource::MathIEEEResource_ExtBasInit"]
17816        [::core::mem::offset_of!(MathIEEEResource, MathIEEEResource_ExtBasInit) - 36usize];
17817    ["Offset of field: MathIEEEResource::MathIEEEResource_ExtTransInit"]
17818        [::core::mem::offset_of!(MathIEEEResource, MathIEEEResource_ExtTransInit) - 40usize];
17819};
17820#[repr(C, packed(2))]
17821#[derive(Debug, Copy, Clone)]
17822pub struct NVInfo {
17823    pub nvi_MaxStorage: ULONG,
17824    pub nvi_FreeStorage: ULONG,
17825}
17826#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17827const _: () = {
17828    ["Size of NVInfo"][::core::mem::size_of::<NVInfo>() - 8usize];
17829    ["Alignment of NVInfo"][::core::mem::align_of::<NVInfo>() - 2usize];
17830    ["Offset of field: NVInfo::nvi_MaxStorage"]
17831        [::core::mem::offset_of!(NVInfo, nvi_MaxStorage) - 0usize];
17832    ["Offset of field: NVInfo::nvi_FreeStorage"]
17833        [::core::mem::offset_of!(NVInfo, nvi_FreeStorage) - 4usize];
17834};
17835#[repr(C, packed(2))]
17836#[derive(Debug, Copy, Clone)]
17837pub struct NVEntry {
17838    pub nve_Node: MinNode,
17839    pub nve_Name: STRPTR,
17840    pub nve_Size: ULONG,
17841    pub nve_Protection: ULONG,
17842}
17843#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17844const _: () = {
17845    ["Size of NVEntry"][::core::mem::size_of::<NVEntry>() - 20usize];
17846    ["Alignment of NVEntry"][::core::mem::align_of::<NVEntry>() - 2usize];
17847    ["Offset of field: NVEntry::nve_Node"][::core::mem::offset_of!(NVEntry, nve_Node) - 0usize];
17848    ["Offset of field: NVEntry::nve_Name"][::core::mem::offset_of!(NVEntry, nve_Name) - 8usize];
17849    ["Offset of field: NVEntry::nve_Size"][::core::mem::offset_of!(NVEntry, nve_Size) - 12usize];
17850    ["Offset of field: NVEntry::nve_Protection"]
17851        [::core::mem::offset_of!(NVEntry, nve_Protection) - 16usize];
17852};
17853#[repr(C, packed(2))]
17854#[derive(Debug, Copy, Clone)]
17855pub struct Conductor {
17856    pub cdt_Link: Node,
17857    pub cdt_Reserved0: UWORD,
17858    pub cdt_Players: MinList,
17859    pub cdt_ClockTime: ULONG,
17860    pub cdt_StartTime: ULONG,
17861    pub cdt_ExternalTime: ULONG,
17862    pub cdt_MaxExternalTime: ULONG,
17863    pub cdt_Metronome: ULONG,
17864    pub cdt_Reserved1: UWORD,
17865    pub cdt_Flags: UWORD,
17866    pub cdt_State: UBYTE,
17867}
17868#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17869const _: () = {
17870    ["Size of Conductor"][::core::mem::size_of::<Conductor>() - 54usize];
17871    ["Alignment of Conductor"][::core::mem::align_of::<Conductor>() - 2usize];
17872    ["Offset of field: Conductor::cdt_Link"][::core::mem::offset_of!(Conductor, cdt_Link) - 0usize];
17873    ["Offset of field: Conductor::cdt_Reserved0"]
17874        [::core::mem::offset_of!(Conductor, cdt_Reserved0) - 14usize];
17875    ["Offset of field: Conductor::cdt_Players"]
17876        [::core::mem::offset_of!(Conductor, cdt_Players) - 16usize];
17877    ["Offset of field: Conductor::cdt_ClockTime"]
17878        [::core::mem::offset_of!(Conductor, cdt_ClockTime) - 28usize];
17879    ["Offset of field: Conductor::cdt_StartTime"]
17880        [::core::mem::offset_of!(Conductor, cdt_StartTime) - 32usize];
17881    ["Offset of field: Conductor::cdt_ExternalTime"]
17882        [::core::mem::offset_of!(Conductor, cdt_ExternalTime) - 36usize];
17883    ["Offset of field: Conductor::cdt_MaxExternalTime"]
17884        [::core::mem::offset_of!(Conductor, cdt_MaxExternalTime) - 40usize];
17885    ["Offset of field: Conductor::cdt_Metronome"]
17886        [::core::mem::offset_of!(Conductor, cdt_Metronome) - 44usize];
17887    ["Offset of field: Conductor::cdt_Reserved1"]
17888        [::core::mem::offset_of!(Conductor, cdt_Reserved1) - 48usize];
17889    ["Offset of field: Conductor::cdt_Flags"]
17890        [::core::mem::offset_of!(Conductor, cdt_Flags) - 50usize];
17891    ["Offset of field: Conductor::cdt_State"]
17892        [::core::mem::offset_of!(Conductor, cdt_State) - 52usize];
17893};
17894#[repr(C, packed(2))]
17895#[derive(Debug, Copy, Clone)]
17896pub struct Player {
17897    pub pl_Link: Node,
17898    pub pl_Reserved0: BYTE,
17899    pub pl_Reserved1: BYTE,
17900    pub pl_Hook: *mut Hook,
17901    pub pl_Source: *mut Conductor,
17902    pub pl_Task: *mut Task,
17903    pub pl_MetricTime: LONG,
17904    pub pl_AlarmTime: LONG,
17905    pub pl_UserData: *mut ::core::ffi::c_void,
17906    pub pl_PlayerID: UWORD,
17907    pub pl_Flags: UWORD,
17908}
17909#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17910const _: () = {
17911    ["Size of Player"][::core::mem::size_of::<Player>() - 44usize];
17912    ["Alignment of Player"][::core::mem::align_of::<Player>() - 2usize];
17913    ["Offset of field: Player::pl_Link"][::core::mem::offset_of!(Player, pl_Link) - 0usize];
17914    ["Offset of field: Player::pl_Reserved0"]
17915        [::core::mem::offset_of!(Player, pl_Reserved0) - 14usize];
17916    ["Offset of field: Player::pl_Reserved1"]
17917        [::core::mem::offset_of!(Player, pl_Reserved1) - 15usize];
17918    ["Offset of field: Player::pl_Hook"][::core::mem::offset_of!(Player, pl_Hook) - 16usize];
17919    ["Offset of field: Player::pl_Source"][::core::mem::offset_of!(Player, pl_Source) - 20usize];
17920    ["Offset of field: Player::pl_Task"][::core::mem::offset_of!(Player, pl_Task) - 24usize];
17921    ["Offset of field: Player::pl_MetricTime"]
17922        [::core::mem::offset_of!(Player, pl_MetricTime) - 28usize];
17923    ["Offset of field: Player::pl_AlarmTime"]
17924        [::core::mem::offset_of!(Player, pl_AlarmTime) - 32usize];
17925    ["Offset of field: Player::pl_UserData"]
17926        [::core::mem::offset_of!(Player, pl_UserData) - 36usize];
17927    ["Offset of field: Player::pl_PlayerID"]
17928        [::core::mem::offset_of!(Player, pl_PlayerID) - 40usize];
17929    ["Offset of field: Player::pl_Flags"][::core::mem::offset_of!(Player, pl_Flags) - 42usize];
17930};
17931#[repr(C, packed(2))]
17932#[derive(Debug, Copy, Clone)]
17933pub struct pmTime {
17934    pub pmt_Method: ULONG,
17935    pub pmt_Time: ULONG,
17936}
17937#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17938const _: () = {
17939    ["Size of pmTime"][::core::mem::size_of::<pmTime>() - 8usize];
17940    ["Alignment of pmTime"][::core::mem::align_of::<pmTime>() - 2usize];
17941    ["Offset of field: pmTime::pmt_Method"][::core::mem::offset_of!(pmTime, pmt_Method) - 0usize];
17942    ["Offset of field: pmTime::pmt_Time"][::core::mem::offset_of!(pmTime, pmt_Time) - 4usize];
17943};
17944#[repr(C, packed(2))]
17945#[derive(Debug, Copy, Clone)]
17946pub struct pmState {
17947    pub pms_Method: ULONG,
17948    pub pms_OldState: ULONG,
17949}
17950#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17951const _: () = {
17952    ["Size of pmState"][::core::mem::size_of::<pmState>() - 8usize];
17953    ["Alignment of pmState"][::core::mem::align_of::<pmState>() - 2usize];
17954    ["Offset of field: pmState::pms_Method"][::core::mem::offset_of!(pmState, pms_Method) - 0usize];
17955    ["Offset of field: pmState::pms_OldState"]
17956        [::core::mem::offset_of!(pmState, pms_OldState) - 4usize];
17957};
17958#[repr(C, packed(2))]
17959#[derive(Debug, Copy, Clone)]
17960pub struct RealTimeBase {
17961    pub rtb_LibNode: Library,
17962    pub rtb_Reserved0: [UBYTE; 2usize],
17963    pub rtb_Time: ULONG,
17964    pub rtb_TimeFrac: ULONG,
17965    pub rtb_Reserved1: UWORD,
17966    pub rtb_TickErr: WORD,
17967}
17968#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17969const _: () = {
17970    ["Size of RealTimeBase"][::core::mem::size_of::<RealTimeBase>() - 48usize];
17971    ["Alignment of RealTimeBase"][::core::mem::align_of::<RealTimeBase>() - 2usize];
17972    ["Offset of field: RealTimeBase::rtb_LibNode"]
17973        [::core::mem::offset_of!(RealTimeBase, rtb_LibNode) - 0usize];
17974    ["Offset of field: RealTimeBase::rtb_Reserved0"]
17975        [::core::mem::offset_of!(RealTimeBase, rtb_Reserved0) - 34usize];
17976    ["Offset of field: RealTimeBase::rtb_Time"]
17977        [::core::mem::offset_of!(RealTimeBase, rtb_Time) - 36usize];
17978    ["Offset of field: RealTimeBase::rtb_TimeFrac"]
17979        [::core::mem::offset_of!(RealTimeBase, rtb_TimeFrac) - 40usize];
17980    ["Offset of field: RealTimeBase::rtb_Reserved1"]
17981        [::core::mem::offset_of!(RealTimeBase, rtb_Reserved1) - 44usize];
17982    ["Offset of field: RealTimeBase::rtb_TickErr"]
17983        [::core::mem::offset_of!(RealTimeBase, rtb_TickErr) - 46usize];
17984};
17985#[repr(C, packed(2))]
17986#[derive(Debug, Copy, Clone)]
17987pub struct AslPrefs {
17988    pub ap_Reserved: [LONG; 4usize],
17989    pub ap_SortBy: UBYTE,
17990    pub ap_SortDrawers: UBYTE,
17991    pub ap_SortOrder: UBYTE,
17992    pub ap_SizePosition: UBYTE,
17993    pub ap_RelativeLeft: WORD,
17994    pub ap_RelativeTop: WORD,
17995    pub ap_RelativeWidth: UBYTE,
17996    pub ap_RelativeHeight: UBYTE,
17997}
17998#[allow(clippy::unnecessary_operation, clippy::identity_op)]
17999const _: () = {
18000    ["Size of AslPrefs"][::core::mem::size_of::<AslPrefs>() - 26usize];
18001    ["Alignment of AslPrefs"][::core::mem::align_of::<AslPrefs>() - 2usize];
18002    ["Offset of field: AslPrefs::ap_Reserved"]
18003        [::core::mem::offset_of!(AslPrefs, ap_Reserved) - 0usize];
18004    ["Offset of field: AslPrefs::ap_SortBy"]
18005        [::core::mem::offset_of!(AslPrefs, ap_SortBy) - 16usize];
18006    ["Offset of field: AslPrefs::ap_SortDrawers"]
18007        [::core::mem::offset_of!(AslPrefs, ap_SortDrawers) - 17usize];
18008    ["Offset of field: AslPrefs::ap_SortOrder"]
18009        [::core::mem::offset_of!(AslPrefs, ap_SortOrder) - 18usize];
18010    ["Offset of field: AslPrefs::ap_SizePosition"]
18011        [::core::mem::offset_of!(AslPrefs, ap_SizePosition) - 19usize];
18012    ["Offset of field: AslPrefs::ap_RelativeLeft"]
18013        [::core::mem::offset_of!(AslPrefs, ap_RelativeLeft) - 20usize];
18014    ["Offset of field: AslPrefs::ap_RelativeTop"]
18015        [::core::mem::offset_of!(AslPrefs, ap_RelativeTop) - 22usize];
18016    ["Offset of field: AslPrefs::ap_RelativeWidth"]
18017        [::core::mem::offset_of!(AslPrefs, ap_RelativeWidth) - 24usize];
18018    ["Offset of field: AslPrefs::ap_RelativeHeight"]
18019        [::core::mem::offset_of!(AslPrefs, ap_RelativeHeight) - 25usize];
18020};
18021#[repr(C, packed(2))]
18022#[derive(Debug, Copy, Clone)]
18023pub struct FontPrefs {
18024    pub fp_Reserved: [LONG; 3usize],
18025    pub fp_Reserved2: UWORD,
18026    pub fp_Type: UWORD,
18027    pub fp_FrontPen: UBYTE,
18028    pub fp_BackPen: UBYTE,
18029    pub fp_DrawMode: UBYTE,
18030    pub fp_SpecialDrawMode: UBYTE,
18031    pub fp_TextAttr: TextAttr,
18032    pub fp_Name: [BYTE; 128usize],
18033}
18034#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18035const _: () = {
18036    ["Size of FontPrefs"][::core::mem::size_of::<FontPrefs>() - 156usize];
18037    ["Alignment of FontPrefs"][::core::mem::align_of::<FontPrefs>() - 2usize];
18038    ["Offset of field: FontPrefs::fp_Reserved"]
18039        [::core::mem::offset_of!(FontPrefs, fp_Reserved) - 0usize];
18040    ["Offset of field: FontPrefs::fp_Reserved2"]
18041        [::core::mem::offset_of!(FontPrefs, fp_Reserved2) - 12usize];
18042    ["Offset of field: FontPrefs::fp_Type"][::core::mem::offset_of!(FontPrefs, fp_Type) - 14usize];
18043    ["Offset of field: FontPrefs::fp_FrontPen"]
18044        [::core::mem::offset_of!(FontPrefs, fp_FrontPen) - 16usize];
18045    ["Offset of field: FontPrefs::fp_BackPen"]
18046        [::core::mem::offset_of!(FontPrefs, fp_BackPen) - 17usize];
18047    ["Offset of field: FontPrefs::fp_DrawMode"]
18048        [::core::mem::offset_of!(FontPrefs, fp_DrawMode) - 18usize];
18049    ["Offset of field: FontPrefs::fp_SpecialDrawMode"]
18050        [::core::mem::offset_of!(FontPrefs, fp_SpecialDrawMode) - 19usize];
18051    ["Offset of field: FontPrefs::fp_TextAttr"]
18052        [::core::mem::offset_of!(FontPrefs, fp_TextAttr) - 20usize];
18053    ["Offset of field: FontPrefs::fp_Name"][::core::mem::offset_of!(FontPrefs, fp_Name) - 28usize];
18054};
18055#[repr(C, packed(2))]
18056#[derive(Debug, Copy, Clone)]
18057pub struct IControlPrefs {
18058    pub ic_Reserved: [LONG; 4usize],
18059    pub ic_TimeOut: UWORD,
18060    pub ic_MetaDrag: WORD,
18061    pub ic_Flags: ULONG,
18062    pub ic_WBtoFront: UBYTE,
18063    pub ic_FrontToBack: UBYTE,
18064    pub ic_ReqTrue: UBYTE,
18065    pub ic_ReqFalse: UBYTE,
18066    pub ic_Version: UWORD,
18067    pub ic_VersionMagic: UWORD,
18068    pub _bitfield_align_1: [u8; 0],
18069    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
18070    pub ic_Pad: UBYTE,
18071    pub ic_GUIGeometry: [UBYTE; 4usize],
18072}
18073#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18074const _: () = {
18075    ["Size of IControlPrefs"][::core::mem::size_of::<IControlPrefs>() - 38usize];
18076    ["Alignment of IControlPrefs"][::core::mem::align_of::<IControlPrefs>() - 2usize];
18077    ["Offset of field: IControlPrefs::ic_Reserved"]
18078        [::core::mem::offset_of!(IControlPrefs, ic_Reserved) - 0usize];
18079    ["Offset of field: IControlPrefs::ic_TimeOut"]
18080        [::core::mem::offset_of!(IControlPrefs, ic_TimeOut) - 16usize];
18081    ["Offset of field: IControlPrefs::ic_MetaDrag"]
18082        [::core::mem::offset_of!(IControlPrefs, ic_MetaDrag) - 18usize];
18083    ["Offset of field: IControlPrefs::ic_Flags"]
18084        [::core::mem::offset_of!(IControlPrefs, ic_Flags) - 20usize];
18085    ["Offset of field: IControlPrefs::ic_WBtoFront"]
18086        [::core::mem::offset_of!(IControlPrefs, ic_WBtoFront) - 24usize];
18087    ["Offset of field: IControlPrefs::ic_FrontToBack"]
18088        [::core::mem::offset_of!(IControlPrefs, ic_FrontToBack) - 25usize];
18089    ["Offset of field: IControlPrefs::ic_ReqTrue"]
18090        [::core::mem::offset_of!(IControlPrefs, ic_ReqTrue) - 26usize];
18091    ["Offset of field: IControlPrefs::ic_ReqFalse"]
18092        [::core::mem::offset_of!(IControlPrefs, ic_ReqFalse) - 27usize];
18093    ["Offset of field: IControlPrefs::ic_Version"]
18094        [::core::mem::offset_of!(IControlPrefs, ic_Version) - 28usize];
18095    ["Offset of field: IControlPrefs::ic_VersionMagic"]
18096        [::core::mem::offset_of!(IControlPrefs, ic_VersionMagic) - 30usize];
18097    ["Offset of field: IControlPrefs::ic_Pad"]
18098        [::core::mem::offset_of!(IControlPrefs, ic_Pad) - 33usize];
18099    ["Offset of field: IControlPrefs::ic_GUIGeometry"]
18100        [::core::mem::offset_of!(IControlPrefs, ic_GUIGeometry) - 34usize];
18101};
18102impl IControlPrefs {
18103    #[inline]
18104    pub fn ic_HoverSlugishness(&self) -> UBYTE {
18105        unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 3u8) as u8) }
18106    }
18107    #[inline]
18108    pub fn set_ic_HoverSlugishness(&mut self, val: UBYTE) {
18109        unsafe {
18110            let val: u8 = ::core::mem::transmute(val);
18111            self._bitfield_1.set(0usize, 3u8, val as u64)
18112        }
18113    }
18114    #[inline]
18115    pub unsafe fn ic_HoverSlugishness_raw(this: *const Self) -> UBYTE {
18116        unsafe {
18117            ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
18118                ::core::ptr::addr_of!((*this)._bitfield_1),
18119                0usize,
18120                3u8,
18121            ) as u8)
18122        }
18123    }
18124    #[inline]
18125    pub unsafe fn set_ic_HoverSlugishness_raw(this: *mut Self, val: UBYTE) {
18126        unsafe {
18127            let val: u8 = ::core::mem::transmute(val);
18128            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
18129                ::core::ptr::addr_of_mut!((*this)._bitfield_1),
18130                0usize,
18131                3u8,
18132                val as u64,
18133            )
18134        }
18135    }
18136    #[inline]
18137    pub fn ic_HoverFlags(&self) -> UBYTE {
18138        unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 5u8) as u8) }
18139    }
18140    #[inline]
18141    pub fn set_ic_HoverFlags(&mut self, val: UBYTE) {
18142        unsafe {
18143            let val: u8 = ::core::mem::transmute(val);
18144            self._bitfield_1.set(3usize, 5u8, val as u64)
18145        }
18146    }
18147    #[inline]
18148    pub unsafe fn ic_HoverFlags_raw(this: *const Self) -> UBYTE {
18149        unsafe {
18150            ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
18151                ::core::ptr::addr_of!((*this)._bitfield_1),
18152                3usize,
18153                5u8,
18154            ) as u8)
18155        }
18156    }
18157    #[inline]
18158    pub unsafe fn set_ic_HoverFlags_raw(this: *mut Self, val: UBYTE) {
18159        unsafe {
18160            let val: u8 = ::core::mem::transmute(val);
18161            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
18162                ::core::ptr::addr_of_mut!((*this)._bitfield_1),
18163                3usize,
18164                5u8,
18165                val as u64,
18166            )
18167        }
18168    }
18169    #[inline]
18170    pub fn new_bitfield_1(
18171        ic_HoverSlugishness: UBYTE,
18172        ic_HoverFlags: UBYTE,
18173    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
18174        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
18175        __bindgen_bitfield_unit.set(0usize, 3u8, {
18176            let ic_HoverSlugishness: u8 = unsafe { ::core::mem::transmute(ic_HoverSlugishness) };
18177            ic_HoverSlugishness as u64
18178        });
18179        __bindgen_bitfield_unit.set(3usize, 5u8, {
18180            let ic_HoverFlags: u8 = unsafe { ::core::mem::transmute(ic_HoverFlags) };
18181            ic_HoverFlags as u64
18182        });
18183        __bindgen_bitfield_unit
18184    }
18185}
18186#[repr(C)]
18187#[derive(Debug)]
18188pub struct IExceptionPrefs {
18189    pub ie_Tags: __IncompleteArrayField<TagItem>,
18190}
18191#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18192const _: () = {
18193    ["Size of IExceptionPrefs"][::core::mem::size_of::<IExceptionPrefs>() - 0usize];
18194    ["Alignment of IExceptionPrefs"][::core::mem::align_of::<IExceptionPrefs>() - 2usize];
18195    ["Offset of field: IExceptionPrefs::ie_Tags"]
18196        [::core::mem::offset_of!(IExceptionPrefs, ie_Tags) - 0usize];
18197};
18198#[repr(C)]
18199#[derive(Debug, Copy, Clone)]
18200pub struct InputPrefs {
18201    pub ip_Keymap: [::core::ffi::c_char; 16usize],
18202    pub ip_PointerTicks: UWORD,
18203    pub ip_DoubleClick: TimeVal_Type,
18204    pub ip_KeyRptDelay: TimeVal_Type,
18205    pub ip_KeyRptSpeed: TimeVal_Type,
18206    pub ip_MouseAccel: WORD,
18207}
18208#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18209const _: () = {
18210    ["Size of InputPrefs"][::core::mem::size_of::<InputPrefs>() - 44usize];
18211    ["Alignment of InputPrefs"][::core::mem::align_of::<InputPrefs>() - 2usize];
18212    ["Offset of field: InputPrefs::ip_Keymap"]
18213        [::core::mem::offset_of!(InputPrefs, ip_Keymap) - 0usize];
18214    ["Offset of field: InputPrefs::ip_PointerTicks"]
18215        [::core::mem::offset_of!(InputPrefs, ip_PointerTicks) - 16usize];
18216    ["Offset of field: InputPrefs::ip_DoubleClick"]
18217        [::core::mem::offset_of!(InputPrefs, ip_DoubleClick) - 18usize];
18218    ["Offset of field: InputPrefs::ip_KeyRptDelay"]
18219        [::core::mem::offset_of!(InputPrefs, ip_KeyRptDelay) - 26usize];
18220    ["Offset of field: InputPrefs::ip_KeyRptSpeed"]
18221        [::core::mem::offset_of!(InputPrefs, ip_KeyRptSpeed) - 34usize];
18222    ["Offset of field: InputPrefs::ip_MouseAccel"]
18223        [::core::mem::offset_of!(InputPrefs, ip_MouseAccel) - 42usize];
18224};
18225#[repr(C, packed(2))]
18226#[derive(Debug, Copy, Clone)]
18227pub struct CountryPrefs {
18228    pub cp_Reserved: [ULONG; 4usize],
18229    pub cp_CountryCode: ULONG,
18230    pub cp_TelephoneCode: ULONG,
18231    pub cp_MeasuringSystem: UBYTE,
18232    pub cp_DateTimeFormat: [::core::ffi::c_char; 80usize],
18233    pub cp_DateFormat: [::core::ffi::c_char; 40usize],
18234    pub cp_TimeFormat: [::core::ffi::c_char; 40usize],
18235    pub cp_ShortDateTimeFormat: [::core::ffi::c_char; 80usize],
18236    pub cp_ShortDateFormat: [::core::ffi::c_char; 40usize],
18237    pub cp_ShortTimeFormat: [::core::ffi::c_char; 40usize],
18238    pub cp_DecimalPoint: [::core::ffi::c_char; 10usize],
18239    pub cp_GroupSeparator: [::core::ffi::c_char; 10usize],
18240    pub cp_FracGroupSeparator: [::core::ffi::c_char; 10usize],
18241    pub cp_Grouping: [UBYTE; 10usize],
18242    pub cp_FracGrouping: [UBYTE; 10usize],
18243    pub cp_MonDecimalPoint: [::core::ffi::c_char; 10usize],
18244    pub cp_MonGroupSeparator: [::core::ffi::c_char; 10usize],
18245    pub cp_MonFracGroupSeparator: [::core::ffi::c_char; 10usize],
18246    pub cp_MonGrouping: [UBYTE; 10usize],
18247    pub cp_MonFracGrouping: [UBYTE; 10usize],
18248    pub cp_MonFracDigits: UBYTE,
18249    pub cp_MonIntFracDigits: UBYTE,
18250    pub cp_MonCS: [::core::ffi::c_char; 10usize],
18251    pub cp_MonSmallCS: [::core::ffi::c_char; 10usize],
18252    pub cp_MonIntCS: [::core::ffi::c_char; 10usize],
18253    pub cp_MonPositiveSign: [::core::ffi::c_char; 10usize],
18254    pub cp_MonPositiveSpaceSep: UBYTE,
18255    pub cp_MonPositiveSignPos: UBYTE,
18256    pub cp_MonPositiveCSPos: UBYTE,
18257    pub cp_MonNegativeSign: [::core::ffi::c_char; 10usize],
18258    pub cp_MonNegativeSpaceSep: UBYTE,
18259    pub cp_MonNegativeSignPos: UBYTE,
18260    pub cp_MonNegativeCSPos: UBYTE,
18261    pub cp_CalendarType: UBYTE,
18262}
18263#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18264const _: () = {
18265    ["Size of CountryPrefs"][::core::mem::size_of::<CountryPrefs>() - 504usize];
18266    ["Alignment of CountryPrefs"][::core::mem::align_of::<CountryPrefs>() - 2usize];
18267    ["Offset of field: CountryPrefs::cp_Reserved"]
18268        [::core::mem::offset_of!(CountryPrefs, cp_Reserved) - 0usize];
18269    ["Offset of field: CountryPrefs::cp_CountryCode"]
18270        [::core::mem::offset_of!(CountryPrefs, cp_CountryCode) - 16usize];
18271    ["Offset of field: CountryPrefs::cp_TelephoneCode"]
18272        [::core::mem::offset_of!(CountryPrefs, cp_TelephoneCode) - 20usize];
18273    ["Offset of field: CountryPrefs::cp_MeasuringSystem"]
18274        [::core::mem::offset_of!(CountryPrefs, cp_MeasuringSystem) - 24usize];
18275    ["Offset of field: CountryPrefs::cp_DateTimeFormat"]
18276        [::core::mem::offset_of!(CountryPrefs, cp_DateTimeFormat) - 25usize];
18277    ["Offset of field: CountryPrefs::cp_DateFormat"]
18278        [::core::mem::offset_of!(CountryPrefs, cp_DateFormat) - 105usize];
18279    ["Offset of field: CountryPrefs::cp_TimeFormat"]
18280        [::core::mem::offset_of!(CountryPrefs, cp_TimeFormat) - 145usize];
18281    ["Offset of field: CountryPrefs::cp_ShortDateTimeFormat"]
18282        [::core::mem::offset_of!(CountryPrefs, cp_ShortDateTimeFormat) - 185usize];
18283    ["Offset of field: CountryPrefs::cp_ShortDateFormat"]
18284        [::core::mem::offset_of!(CountryPrefs, cp_ShortDateFormat) - 265usize];
18285    ["Offset of field: CountryPrefs::cp_ShortTimeFormat"]
18286        [::core::mem::offset_of!(CountryPrefs, cp_ShortTimeFormat) - 305usize];
18287    ["Offset of field: CountryPrefs::cp_DecimalPoint"]
18288        [::core::mem::offset_of!(CountryPrefs, cp_DecimalPoint) - 345usize];
18289    ["Offset of field: CountryPrefs::cp_GroupSeparator"]
18290        [::core::mem::offset_of!(CountryPrefs, cp_GroupSeparator) - 355usize];
18291    ["Offset of field: CountryPrefs::cp_FracGroupSeparator"]
18292        [::core::mem::offset_of!(CountryPrefs, cp_FracGroupSeparator) - 365usize];
18293    ["Offset of field: CountryPrefs::cp_Grouping"]
18294        [::core::mem::offset_of!(CountryPrefs, cp_Grouping) - 375usize];
18295    ["Offset of field: CountryPrefs::cp_FracGrouping"]
18296        [::core::mem::offset_of!(CountryPrefs, cp_FracGrouping) - 385usize];
18297    ["Offset of field: CountryPrefs::cp_MonDecimalPoint"]
18298        [::core::mem::offset_of!(CountryPrefs, cp_MonDecimalPoint) - 395usize];
18299    ["Offset of field: CountryPrefs::cp_MonGroupSeparator"]
18300        [::core::mem::offset_of!(CountryPrefs, cp_MonGroupSeparator) - 405usize];
18301    ["Offset of field: CountryPrefs::cp_MonFracGroupSeparator"]
18302        [::core::mem::offset_of!(CountryPrefs, cp_MonFracGroupSeparator) - 415usize];
18303    ["Offset of field: CountryPrefs::cp_MonGrouping"]
18304        [::core::mem::offset_of!(CountryPrefs, cp_MonGrouping) - 425usize];
18305    ["Offset of field: CountryPrefs::cp_MonFracGrouping"]
18306        [::core::mem::offset_of!(CountryPrefs, cp_MonFracGrouping) - 435usize];
18307    ["Offset of field: CountryPrefs::cp_MonFracDigits"]
18308        [::core::mem::offset_of!(CountryPrefs, cp_MonFracDigits) - 445usize];
18309    ["Offset of field: CountryPrefs::cp_MonIntFracDigits"]
18310        [::core::mem::offset_of!(CountryPrefs, cp_MonIntFracDigits) - 446usize];
18311    ["Offset of field: CountryPrefs::cp_MonCS"]
18312        [::core::mem::offset_of!(CountryPrefs, cp_MonCS) - 447usize];
18313    ["Offset of field: CountryPrefs::cp_MonSmallCS"]
18314        [::core::mem::offset_of!(CountryPrefs, cp_MonSmallCS) - 457usize];
18315    ["Offset of field: CountryPrefs::cp_MonIntCS"]
18316        [::core::mem::offset_of!(CountryPrefs, cp_MonIntCS) - 467usize];
18317    ["Offset of field: CountryPrefs::cp_MonPositiveSign"]
18318        [::core::mem::offset_of!(CountryPrefs, cp_MonPositiveSign) - 477usize];
18319    ["Offset of field: CountryPrefs::cp_MonPositiveSpaceSep"]
18320        [::core::mem::offset_of!(CountryPrefs, cp_MonPositiveSpaceSep) - 487usize];
18321    ["Offset of field: CountryPrefs::cp_MonPositiveSignPos"]
18322        [::core::mem::offset_of!(CountryPrefs, cp_MonPositiveSignPos) - 488usize];
18323    ["Offset of field: CountryPrefs::cp_MonPositiveCSPos"]
18324        [::core::mem::offset_of!(CountryPrefs, cp_MonPositiveCSPos) - 489usize];
18325    ["Offset of field: CountryPrefs::cp_MonNegativeSign"]
18326        [::core::mem::offset_of!(CountryPrefs, cp_MonNegativeSign) - 490usize];
18327    ["Offset of field: CountryPrefs::cp_MonNegativeSpaceSep"]
18328        [::core::mem::offset_of!(CountryPrefs, cp_MonNegativeSpaceSep) - 500usize];
18329    ["Offset of field: CountryPrefs::cp_MonNegativeSignPos"]
18330        [::core::mem::offset_of!(CountryPrefs, cp_MonNegativeSignPos) - 501usize];
18331    ["Offset of field: CountryPrefs::cp_MonNegativeCSPos"]
18332        [::core::mem::offset_of!(CountryPrefs, cp_MonNegativeCSPos) - 502usize];
18333    ["Offset of field: CountryPrefs::cp_CalendarType"]
18334        [::core::mem::offset_of!(CountryPrefs, cp_CalendarType) - 503usize];
18335};
18336#[repr(C, packed(2))]
18337#[derive(Debug, Copy, Clone)]
18338pub struct LocalePrefs {
18339    pub lp_Reserved: [ULONG; 4usize],
18340    pub lp_CountryName: [::core::ffi::c_char; 32usize],
18341    pub lp_PreferredLanguages: [[::core::ffi::c_char; 30usize]; 10usize],
18342    pub lp_GMTOffset: LONG,
18343    pub lp_Flags: ULONG,
18344    pub lp_CountryData: CountryPrefs,
18345}
18346#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18347const _: () = {
18348    ["Size of LocalePrefs"][::core::mem::size_of::<LocalePrefs>() - 860usize];
18349    ["Alignment of LocalePrefs"][::core::mem::align_of::<LocalePrefs>() - 2usize];
18350    ["Offset of field: LocalePrefs::lp_Reserved"]
18351        [::core::mem::offset_of!(LocalePrefs, lp_Reserved) - 0usize];
18352    ["Offset of field: LocalePrefs::lp_CountryName"]
18353        [::core::mem::offset_of!(LocalePrefs, lp_CountryName) - 16usize];
18354    ["Offset of field: LocalePrefs::lp_PreferredLanguages"]
18355        [::core::mem::offset_of!(LocalePrefs, lp_PreferredLanguages) - 48usize];
18356    ["Offset of field: LocalePrefs::lp_GMTOffset"]
18357        [::core::mem::offset_of!(LocalePrefs, lp_GMTOffset) - 348usize];
18358    ["Offset of field: LocalePrefs::lp_Flags"]
18359        [::core::mem::offset_of!(LocalePrefs, lp_Flags) - 352usize];
18360    ["Offset of field: LocalePrefs::lp_CountryData"]
18361        [::core::mem::offset_of!(LocalePrefs, lp_CountryData) - 356usize];
18362};
18363#[repr(C, packed(2))]
18364#[derive(Debug, Copy, Clone)]
18365pub struct OverscanPrefs {
18366    pub os_Reserved: ULONG,
18367    pub os_Magic: ULONG,
18368    pub os_HStart: UWORD,
18369    pub os_HStop: UWORD,
18370    pub os_VStart: UWORD,
18371    pub os_VStop: UWORD,
18372    pub os_DisplayID: ULONG,
18373    pub os_ViewPos: Point,
18374    pub os_Text: Point,
18375    pub os_Standard: Rectangle,
18376}
18377#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18378const _: () = {
18379    ["Size of OverscanPrefs"][::core::mem::size_of::<OverscanPrefs>() - 36usize];
18380    ["Alignment of OverscanPrefs"][::core::mem::align_of::<OverscanPrefs>() - 2usize];
18381    ["Offset of field: OverscanPrefs::os_Reserved"]
18382        [::core::mem::offset_of!(OverscanPrefs, os_Reserved) - 0usize];
18383    ["Offset of field: OverscanPrefs::os_Magic"]
18384        [::core::mem::offset_of!(OverscanPrefs, os_Magic) - 4usize];
18385    ["Offset of field: OverscanPrefs::os_HStart"]
18386        [::core::mem::offset_of!(OverscanPrefs, os_HStart) - 8usize];
18387    ["Offset of field: OverscanPrefs::os_HStop"]
18388        [::core::mem::offset_of!(OverscanPrefs, os_HStop) - 10usize];
18389    ["Offset of field: OverscanPrefs::os_VStart"]
18390        [::core::mem::offset_of!(OverscanPrefs, os_VStart) - 12usize];
18391    ["Offset of field: OverscanPrefs::os_VStop"]
18392        [::core::mem::offset_of!(OverscanPrefs, os_VStop) - 14usize];
18393    ["Offset of field: OverscanPrefs::os_DisplayID"]
18394        [::core::mem::offset_of!(OverscanPrefs, os_DisplayID) - 16usize];
18395    ["Offset of field: OverscanPrefs::os_ViewPos"]
18396        [::core::mem::offset_of!(OverscanPrefs, os_ViewPos) - 20usize];
18397    ["Offset of field: OverscanPrefs::os_Text"]
18398        [::core::mem::offset_of!(OverscanPrefs, os_Text) - 24usize];
18399    ["Offset of field: OverscanPrefs::os_Standard"]
18400        [::core::mem::offset_of!(OverscanPrefs, os_Standard) - 28usize];
18401};
18402#[repr(C, packed(2))]
18403#[derive(Debug, Copy, Clone)]
18404pub struct PalettePrefs {
18405    pub pap_Reserved: [LONG; 4usize],
18406    pub pap_4ColorPens: [UWORD; 32usize],
18407    pub pap_8ColorPens: [UWORD; 32usize],
18408    pub pap_Colors: [ColorSpec; 32usize],
18409}
18410#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18411const _: () = {
18412    ["Size of PalettePrefs"][::core::mem::size_of::<PalettePrefs>() - 400usize];
18413    ["Alignment of PalettePrefs"][::core::mem::align_of::<PalettePrefs>() - 2usize];
18414    ["Offset of field: PalettePrefs::pap_Reserved"]
18415        [::core::mem::offset_of!(PalettePrefs, pap_Reserved) - 0usize];
18416    ["Offset of field: PalettePrefs::pap_4ColorPens"]
18417        [::core::mem::offset_of!(PalettePrefs, pap_4ColorPens) - 16usize];
18418    ["Offset of field: PalettePrefs::pap_8ColorPens"]
18419        [::core::mem::offset_of!(PalettePrefs, pap_8ColorPens) - 80usize];
18420    ["Offset of field: PalettePrefs::pap_Colors"]
18421        [::core::mem::offset_of!(PalettePrefs, pap_Colors) - 144usize];
18422};
18423#[repr(C, packed(2))]
18424#[derive(Debug, Copy, Clone)]
18425pub struct PointerPrefs {
18426    pub pp_Reserved: [ULONG; 4usize],
18427    pub pp_Which: UWORD,
18428    pub pp_Size: UWORD,
18429    pub pp_Width: UWORD,
18430    pub pp_Height: UWORD,
18431    pub pp_Depth: UWORD,
18432    pub pp_YSize: UWORD,
18433    pub pp_X: WORD,
18434    pub pp_Y: WORD,
18435}
18436#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18437const _: () = {
18438    ["Size of PointerPrefs"][::core::mem::size_of::<PointerPrefs>() - 32usize];
18439    ["Alignment of PointerPrefs"][::core::mem::align_of::<PointerPrefs>() - 2usize];
18440    ["Offset of field: PointerPrefs::pp_Reserved"]
18441        [::core::mem::offset_of!(PointerPrefs, pp_Reserved) - 0usize];
18442    ["Offset of field: PointerPrefs::pp_Which"]
18443        [::core::mem::offset_of!(PointerPrefs, pp_Which) - 16usize];
18444    ["Offset of field: PointerPrefs::pp_Size"]
18445        [::core::mem::offset_of!(PointerPrefs, pp_Size) - 18usize];
18446    ["Offset of field: PointerPrefs::pp_Width"]
18447        [::core::mem::offset_of!(PointerPrefs, pp_Width) - 20usize];
18448    ["Offset of field: PointerPrefs::pp_Height"]
18449        [::core::mem::offset_of!(PointerPrefs, pp_Height) - 22usize];
18450    ["Offset of field: PointerPrefs::pp_Depth"]
18451        [::core::mem::offset_of!(PointerPrefs, pp_Depth) - 24usize];
18452    ["Offset of field: PointerPrefs::pp_YSize"]
18453        [::core::mem::offset_of!(PointerPrefs, pp_YSize) - 26usize];
18454    ["Offset of field: PointerPrefs::pp_X"][::core::mem::offset_of!(PointerPrefs, pp_X) - 28usize];
18455    ["Offset of field: PointerPrefs::pp_Y"][::core::mem::offset_of!(PointerPrefs, pp_Y) - 30usize];
18456};
18457#[repr(C)]
18458#[derive(Debug, Copy, Clone)]
18459#[repr(align(2))]
18460pub struct RGBTable {
18461    pub t_Red: UBYTE,
18462    pub t_Green: UBYTE,
18463    pub t_Blue: UBYTE,
18464}
18465#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18466const _: () = {
18467    ["Size of RGBTable"][::core::mem::size_of::<RGBTable>() - 4usize];
18468    ["Alignment of RGBTable"][::core::mem::align_of::<RGBTable>() - 2usize];
18469    ["Offset of field: RGBTable::t_Red"][::core::mem::offset_of!(RGBTable, t_Red) - 0usize];
18470    ["Offset of field: RGBTable::t_Green"][::core::mem::offset_of!(RGBTable, t_Green) - 1usize];
18471    ["Offset of field: RGBTable::t_Blue"][::core::mem::offset_of!(RGBTable, t_Blue) - 2usize];
18472};
18473#[repr(C, packed(2))]
18474#[derive(Debug, Copy, Clone)]
18475pub struct PrefHeader {
18476    pub ph_Version: UBYTE,
18477    pub ph_Type: UBYTE,
18478    pub ph_Flags: ULONG,
18479}
18480#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18481const _: () = {
18482    ["Size of PrefHeader"][::core::mem::size_of::<PrefHeader>() - 6usize];
18483    ["Alignment of PrefHeader"][::core::mem::align_of::<PrefHeader>() - 2usize];
18484    ["Offset of field: PrefHeader::ph_Version"]
18485        [::core::mem::offset_of!(PrefHeader, ph_Version) - 0usize];
18486    ["Offset of field: PrefHeader::ph_Type"][::core::mem::offset_of!(PrefHeader, ph_Type) - 1usize];
18487    ["Offset of field: PrefHeader::ph_Flags"]
18488        [::core::mem::offset_of!(PrefHeader, ph_Flags) - 2usize];
18489};
18490#[repr(C, packed(2))]
18491#[derive(Debug, Copy, Clone)]
18492pub struct PrinterGfxPrefs {
18493    pub pg_Reserved: [LONG; 4usize],
18494    pub pg_Aspect: UWORD,
18495    pub pg_Shade: UWORD,
18496    pub pg_Image: UWORD,
18497    pub pg_Threshold: WORD,
18498    pub pg_ColorCorrect: UBYTE,
18499    pub pg_Dimensions: UBYTE,
18500    pub pg_Dithering: UBYTE,
18501    pub pg_GraphicFlags: UWORD,
18502    pub pg_PrintDensity: UBYTE,
18503    pub pg_PrintMaxWidth: UWORD,
18504    pub pg_PrintMaxHeight: UWORD,
18505    pub pg_PrintXOffset: UBYTE,
18506    pub pg_PrintYOffset: UBYTE,
18507}
18508#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18509const _: () = {
18510    ["Size of PrinterGfxPrefs"][::core::mem::size_of::<PrinterGfxPrefs>() - 38usize];
18511    ["Alignment of PrinterGfxPrefs"][::core::mem::align_of::<PrinterGfxPrefs>() - 2usize];
18512    ["Offset of field: PrinterGfxPrefs::pg_Reserved"]
18513        [::core::mem::offset_of!(PrinterGfxPrefs, pg_Reserved) - 0usize];
18514    ["Offset of field: PrinterGfxPrefs::pg_Aspect"]
18515        [::core::mem::offset_of!(PrinterGfxPrefs, pg_Aspect) - 16usize];
18516    ["Offset of field: PrinterGfxPrefs::pg_Shade"]
18517        [::core::mem::offset_of!(PrinterGfxPrefs, pg_Shade) - 18usize];
18518    ["Offset of field: PrinterGfxPrefs::pg_Image"]
18519        [::core::mem::offset_of!(PrinterGfxPrefs, pg_Image) - 20usize];
18520    ["Offset of field: PrinterGfxPrefs::pg_Threshold"]
18521        [::core::mem::offset_of!(PrinterGfxPrefs, pg_Threshold) - 22usize];
18522    ["Offset of field: PrinterGfxPrefs::pg_ColorCorrect"]
18523        [::core::mem::offset_of!(PrinterGfxPrefs, pg_ColorCorrect) - 24usize];
18524    ["Offset of field: PrinterGfxPrefs::pg_Dimensions"]
18525        [::core::mem::offset_of!(PrinterGfxPrefs, pg_Dimensions) - 25usize];
18526    ["Offset of field: PrinterGfxPrefs::pg_Dithering"]
18527        [::core::mem::offset_of!(PrinterGfxPrefs, pg_Dithering) - 26usize];
18528    ["Offset of field: PrinterGfxPrefs::pg_GraphicFlags"]
18529        [::core::mem::offset_of!(PrinterGfxPrefs, pg_GraphicFlags) - 28usize];
18530    ["Offset of field: PrinterGfxPrefs::pg_PrintDensity"]
18531        [::core::mem::offset_of!(PrinterGfxPrefs, pg_PrintDensity) - 30usize];
18532    ["Offset of field: PrinterGfxPrefs::pg_PrintMaxWidth"]
18533        [::core::mem::offset_of!(PrinterGfxPrefs, pg_PrintMaxWidth) - 32usize];
18534    ["Offset of field: PrinterGfxPrefs::pg_PrintMaxHeight"]
18535        [::core::mem::offset_of!(PrinterGfxPrefs, pg_PrintMaxHeight) - 34usize];
18536    ["Offset of field: PrinterGfxPrefs::pg_PrintXOffset"]
18537        [::core::mem::offset_of!(PrinterGfxPrefs, pg_PrintXOffset) - 36usize];
18538    ["Offset of field: PrinterGfxPrefs::pg_PrintYOffset"]
18539        [::core::mem::offset_of!(PrinterGfxPrefs, pg_PrintYOffset) - 37usize];
18540};
18541#[repr(C, packed(2))]
18542#[derive(Debug, Copy, Clone)]
18543pub struct PrinterPSPrefs {
18544    pub ps_Reserved: [LONG; 4usize],
18545    pub ps_DriverMode: UBYTE,
18546    pub ps_PaperFormat: UBYTE,
18547    pub ps_Reserved1: [UBYTE; 2usize],
18548    pub ps_Copies: LONG,
18549    pub ps_PaperWidth: LONG,
18550    pub ps_PaperHeight: LONG,
18551    pub ps_HorizontalDPI: LONG,
18552    pub ps_VerticalDPI: LONG,
18553    pub ps_Font: UBYTE,
18554    pub ps_Pitch: UBYTE,
18555    pub ps_Orientation: UBYTE,
18556    pub ps_Tab: UBYTE,
18557    pub ps_Reserved2: [UBYTE; 8usize],
18558    pub ps_LeftMargin: LONG,
18559    pub ps_RightMargin: LONG,
18560    pub ps_TopMargin: LONG,
18561    pub ps_BottomMargin: LONG,
18562    pub ps_FontPointSize: LONG,
18563    pub ps_Leading: LONG,
18564    pub ps_Reserved3: [UBYTE; 8usize],
18565    pub ps_LeftEdge: LONG,
18566    pub ps_TopEdge: LONG,
18567    pub ps_Width: LONG,
18568    pub ps_Height: LONG,
18569    pub ps_Image: UBYTE,
18570    pub ps_Shading: UBYTE,
18571    pub ps_Dithering: UBYTE,
18572    pub ps_Reserved4: [UBYTE; 9usize],
18573    pub ps_Aspect: UBYTE,
18574    pub ps_ScalingType: UBYTE,
18575    pub ps_Reserved5: UBYTE,
18576    pub ps_Centering: UBYTE,
18577    pub ps_Reserved6: [UBYTE; 8usize],
18578}
18579#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18580const _: () = {
18581    ["Size of PrinterPSPrefs"][::core::mem::size_of::<PrinterPSPrefs>() - 124usize];
18582    ["Alignment of PrinterPSPrefs"][::core::mem::align_of::<PrinterPSPrefs>() - 2usize];
18583    ["Offset of field: PrinterPSPrefs::ps_Reserved"]
18584        [::core::mem::offset_of!(PrinterPSPrefs, ps_Reserved) - 0usize];
18585    ["Offset of field: PrinterPSPrefs::ps_DriverMode"]
18586        [::core::mem::offset_of!(PrinterPSPrefs, ps_DriverMode) - 16usize];
18587    ["Offset of field: PrinterPSPrefs::ps_PaperFormat"]
18588        [::core::mem::offset_of!(PrinterPSPrefs, ps_PaperFormat) - 17usize];
18589    ["Offset of field: PrinterPSPrefs::ps_Reserved1"]
18590        [::core::mem::offset_of!(PrinterPSPrefs, ps_Reserved1) - 18usize];
18591    ["Offset of field: PrinterPSPrefs::ps_Copies"]
18592        [::core::mem::offset_of!(PrinterPSPrefs, ps_Copies) - 20usize];
18593    ["Offset of field: PrinterPSPrefs::ps_PaperWidth"]
18594        [::core::mem::offset_of!(PrinterPSPrefs, ps_PaperWidth) - 24usize];
18595    ["Offset of field: PrinterPSPrefs::ps_PaperHeight"]
18596        [::core::mem::offset_of!(PrinterPSPrefs, ps_PaperHeight) - 28usize];
18597    ["Offset of field: PrinterPSPrefs::ps_HorizontalDPI"]
18598        [::core::mem::offset_of!(PrinterPSPrefs, ps_HorizontalDPI) - 32usize];
18599    ["Offset of field: PrinterPSPrefs::ps_VerticalDPI"]
18600        [::core::mem::offset_of!(PrinterPSPrefs, ps_VerticalDPI) - 36usize];
18601    ["Offset of field: PrinterPSPrefs::ps_Font"]
18602        [::core::mem::offset_of!(PrinterPSPrefs, ps_Font) - 40usize];
18603    ["Offset of field: PrinterPSPrefs::ps_Pitch"]
18604        [::core::mem::offset_of!(PrinterPSPrefs, ps_Pitch) - 41usize];
18605    ["Offset of field: PrinterPSPrefs::ps_Orientation"]
18606        [::core::mem::offset_of!(PrinterPSPrefs, ps_Orientation) - 42usize];
18607    ["Offset of field: PrinterPSPrefs::ps_Tab"]
18608        [::core::mem::offset_of!(PrinterPSPrefs, ps_Tab) - 43usize];
18609    ["Offset of field: PrinterPSPrefs::ps_Reserved2"]
18610        [::core::mem::offset_of!(PrinterPSPrefs, ps_Reserved2) - 44usize];
18611    ["Offset of field: PrinterPSPrefs::ps_LeftMargin"]
18612        [::core::mem::offset_of!(PrinterPSPrefs, ps_LeftMargin) - 52usize];
18613    ["Offset of field: PrinterPSPrefs::ps_RightMargin"]
18614        [::core::mem::offset_of!(PrinterPSPrefs, ps_RightMargin) - 56usize];
18615    ["Offset of field: PrinterPSPrefs::ps_TopMargin"]
18616        [::core::mem::offset_of!(PrinterPSPrefs, ps_TopMargin) - 60usize];
18617    ["Offset of field: PrinterPSPrefs::ps_BottomMargin"]
18618        [::core::mem::offset_of!(PrinterPSPrefs, ps_BottomMargin) - 64usize];
18619    ["Offset of field: PrinterPSPrefs::ps_FontPointSize"]
18620        [::core::mem::offset_of!(PrinterPSPrefs, ps_FontPointSize) - 68usize];
18621    ["Offset of field: PrinterPSPrefs::ps_Leading"]
18622        [::core::mem::offset_of!(PrinterPSPrefs, ps_Leading) - 72usize];
18623    ["Offset of field: PrinterPSPrefs::ps_Reserved3"]
18624        [::core::mem::offset_of!(PrinterPSPrefs, ps_Reserved3) - 76usize];
18625    ["Offset of field: PrinterPSPrefs::ps_LeftEdge"]
18626        [::core::mem::offset_of!(PrinterPSPrefs, ps_LeftEdge) - 84usize];
18627    ["Offset of field: PrinterPSPrefs::ps_TopEdge"]
18628        [::core::mem::offset_of!(PrinterPSPrefs, ps_TopEdge) - 88usize];
18629    ["Offset of field: PrinterPSPrefs::ps_Width"]
18630        [::core::mem::offset_of!(PrinterPSPrefs, ps_Width) - 92usize];
18631    ["Offset of field: PrinterPSPrefs::ps_Height"]
18632        [::core::mem::offset_of!(PrinterPSPrefs, ps_Height) - 96usize];
18633    ["Offset of field: PrinterPSPrefs::ps_Image"]
18634        [::core::mem::offset_of!(PrinterPSPrefs, ps_Image) - 100usize];
18635    ["Offset of field: PrinterPSPrefs::ps_Shading"]
18636        [::core::mem::offset_of!(PrinterPSPrefs, ps_Shading) - 101usize];
18637    ["Offset of field: PrinterPSPrefs::ps_Dithering"]
18638        [::core::mem::offset_of!(PrinterPSPrefs, ps_Dithering) - 102usize];
18639    ["Offset of field: PrinterPSPrefs::ps_Reserved4"]
18640        [::core::mem::offset_of!(PrinterPSPrefs, ps_Reserved4) - 103usize];
18641    ["Offset of field: PrinterPSPrefs::ps_Aspect"]
18642        [::core::mem::offset_of!(PrinterPSPrefs, ps_Aspect) - 112usize];
18643    ["Offset of field: PrinterPSPrefs::ps_ScalingType"]
18644        [::core::mem::offset_of!(PrinterPSPrefs, ps_ScalingType) - 113usize];
18645    ["Offset of field: PrinterPSPrefs::ps_Reserved5"]
18646        [::core::mem::offset_of!(PrinterPSPrefs, ps_Reserved5) - 114usize];
18647    ["Offset of field: PrinterPSPrefs::ps_Centering"]
18648        [::core::mem::offset_of!(PrinterPSPrefs, ps_Centering) - 115usize];
18649    ["Offset of field: PrinterPSPrefs::ps_Reserved6"]
18650        [::core::mem::offset_of!(PrinterPSPrefs, ps_Reserved6) - 116usize];
18651};
18652#[repr(C, packed(2))]
18653#[derive(Debug, Copy, Clone)]
18654pub struct PrinterTxtPrefs {
18655    pub pt_Reserved: [LONG; 4usize],
18656    pub pt_Driver: [TEXT; 30usize],
18657    pub pt_Port: UBYTE,
18658    pub pt_PaperType: UWORD,
18659    pub pt_PaperSize: UWORD,
18660    pub pt_PaperLength: UWORD,
18661    pub pt_Pitch: UWORD,
18662    pub pt_Spacing: UWORD,
18663    pub pt_LeftMargin: UWORD,
18664    pub pt_RightMargin: UWORD,
18665    pub pt_Quality: UWORD,
18666}
18667#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18668const _: () = {
18669    ["Size of PrinterTxtPrefs"][::core::mem::size_of::<PrinterTxtPrefs>() - 64usize];
18670    ["Alignment of PrinterTxtPrefs"][::core::mem::align_of::<PrinterTxtPrefs>() - 2usize];
18671    ["Offset of field: PrinterTxtPrefs::pt_Reserved"]
18672        [::core::mem::offset_of!(PrinterTxtPrefs, pt_Reserved) - 0usize];
18673    ["Offset of field: PrinterTxtPrefs::pt_Driver"]
18674        [::core::mem::offset_of!(PrinterTxtPrefs, pt_Driver) - 16usize];
18675    ["Offset of field: PrinterTxtPrefs::pt_Port"]
18676        [::core::mem::offset_of!(PrinterTxtPrefs, pt_Port) - 46usize];
18677    ["Offset of field: PrinterTxtPrefs::pt_PaperType"]
18678        [::core::mem::offset_of!(PrinterTxtPrefs, pt_PaperType) - 48usize];
18679    ["Offset of field: PrinterTxtPrefs::pt_PaperSize"]
18680        [::core::mem::offset_of!(PrinterTxtPrefs, pt_PaperSize) - 50usize];
18681    ["Offset of field: PrinterTxtPrefs::pt_PaperLength"]
18682        [::core::mem::offset_of!(PrinterTxtPrefs, pt_PaperLength) - 52usize];
18683    ["Offset of field: PrinterTxtPrefs::pt_Pitch"]
18684        [::core::mem::offset_of!(PrinterTxtPrefs, pt_Pitch) - 54usize];
18685    ["Offset of field: PrinterTxtPrefs::pt_Spacing"]
18686        [::core::mem::offset_of!(PrinterTxtPrefs, pt_Spacing) - 56usize];
18687    ["Offset of field: PrinterTxtPrefs::pt_LeftMargin"]
18688        [::core::mem::offset_of!(PrinterTxtPrefs, pt_LeftMargin) - 58usize];
18689    ["Offset of field: PrinterTxtPrefs::pt_RightMargin"]
18690        [::core::mem::offset_of!(PrinterTxtPrefs, pt_RightMargin) - 60usize];
18691    ["Offset of field: PrinterTxtPrefs::pt_Quality"]
18692        [::core::mem::offset_of!(PrinterTxtPrefs, pt_Quality) - 62usize];
18693};
18694#[repr(C, packed(2))]
18695#[derive(Debug, Copy, Clone)]
18696pub struct PrinterUnitPrefs {
18697    pub pu_Reserved: [LONG; 4usize],
18698    pub pu_UnitNum: LONG,
18699    pub pu_OpenDeviceFlags: ULONG,
18700    pub pu_DeviceName: [TEXT; 32usize],
18701}
18702#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18703const _: () = {
18704    ["Size of PrinterUnitPrefs"][::core::mem::size_of::<PrinterUnitPrefs>() - 56usize];
18705    ["Alignment of PrinterUnitPrefs"][::core::mem::align_of::<PrinterUnitPrefs>() - 2usize];
18706    ["Offset of field: PrinterUnitPrefs::pu_Reserved"]
18707        [::core::mem::offset_of!(PrinterUnitPrefs, pu_Reserved) - 0usize];
18708    ["Offset of field: PrinterUnitPrefs::pu_UnitNum"]
18709        [::core::mem::offset_of!(PrinterUnitPrefs, pu_UnitNum) - 16usize];
18710    ["Offset of field: PrinterUnitPrefs::pu_OpenDeviceFlags"]
18711        [::core::mem::offset_of!(PrinterUnitPrefs, pu_OpenDeviceFlags) - 20usize];
18712    ["Offset of field: PrinterUnitPrefs::pu_DeviceName"]
18713        [::core::mem::offset_of!(PrinterUnitPrefs, pu_DeviceName) - 24usize];
18714};
18715#[repr(C, packed(2))]
18716#[derive(Debug, Copy, Clone)]
18717pub struct PrinterDeviceUnitPrefs {
18718    pub pd_Reserved: [LONG; 4usize],
18719    pub pd_UnitNum: LONG,
18720    pub pd_UnitName: [TEXT; 32usize],
18721}
18722#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18723const _: () = {
18724    ["Size of PrinterDeviceUnitPrefs"][::core::mem::size_of::<PrinterDeviceUnitPrefs>() - 52usize];
18725    ["Alignment of PrinterDeviceUnitPrefs"]
18726        [::core::mem::align_of::<PrinterDeviceUnitPrefs>() - 2usize];
18727    ["Offset of field: PrinterDeviceUnitPrefs::pd_Reserved"]
18728        [::core::mem::offset_of!(PrinterDeviceUnitPrefs, pd_Reserved) - 0usize];
18729    ["Offset of field: PrinterDeviceUnitPrefs::pd_UnitNum"]
18730        [::core::mem::offset_of!(PrinterDeviceUnitPrefs, pd_UnitNum) - 16usize];
18731    ["Offset of field: PrinterDeviceUnitPrefs::pd_UnitName"]
18732        [::core::mem::offset_of!(PrinterDeviceUnitPrefs, pd_UnitName) - 20usize];
18733};
18734#[repr(C)]
18735#[derive(Debug, Copy, Clone)]
18736pub struct ReactionPrefs {
18737    pub rp_BevelType: UWORD,
18738    pub rp_GlyphType: UWORD,
18739    pub rp_LayoutSpacing: UWORD,
18740    pub rp_3DProp: BOOL,
18741    pub rp_LabelPen: UWORD,
18742    pub rp_LabelPlace: UWORD,
18743    pub rp_3DLabel: BOOL,
18744    pub rp_SimpleRefresh: BOOL,
18745    pub rp_3DLook: BOOL,
18746    pub rp_FallbackAttr: TextAttr,
18747    pub rp_LabelAttr: TextAttr,
18748    pub rp_FallbackName: [UBYTE; 128usize],
18749    pub rp_LabelName: [UBYTE; 128usize],
18750    pub rp_Pattern: [UBYTE; 256usize],
18751}
18752#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18753const _: () = {
18754    ["Size of ReactionPrefs"][::core::mem::size_of::<ReactionPrefs>() - 546usize];
18755    ["Alignment of ReactionPrefs"][::core::mem::align_of::<ReactionPrefs>() - 2usize];
18756    ["Offset of field: ReactionPrefs::rp_BevelType"]
18757        [::core::mem::offset_of!(ReactionPrefs, rp_BevelType) - 0usize];
18758    ["Offset of field: ReactionPrefs::rp_GlyphType"]
18759        [::core::mem::offset_of!(ReactionPrefs, rp_GlyphType) - 2usize];
18760    ["Offset of field: ReactionPrefs::rp_LayoutSpacing"]
18761        [::core::mem::offset_of!(ReactionPrefs, rp_LayoutSpacing) - 4usize];
18762    ["Offset of field: ReactionPrefs::rp_3DProp"]
18763        [::core::mem::offset_of!(ReactionPrefs, rp_3DProp) - 6usize];
18764    ["Offset of field: ReactionPrefs::rp_LabelPen"]
18765        [::core::mem::offset_of!(ReactionPrefs, rp_LabelPen) - 8usize];
18766    ["Offset of field: ReactionPrefs::rp_LabelPlace"]
18767        [::core::mem::offset_of!(ReactionPrefs, rp_LabelPlace) - 10usize];
18768    ["Offset of field: ReactionPrefs::rp_3DLabel"]
18769        [::core::mem::offset_of!(ReactionPrefs, rp_3DLabel) - 12usize];
18770    ["Offset of field: ReactionPrefs::rp_SimpleRefresh"]
18771        [::core::mem::offset_of!(ReactionPrefs, rp_SimpleRefresh) - 14usize];
18772    ["Offset of field: ReactionPrefs::rp_3DLook"]
18773        [::core::mem::offset_of!(ReactionPrefs, rp_3DLook) - 16usize];
18774    ["Offset of field: ReactionPrefs::rp_FallbackAttr"]
18775        [::core::mem::offset_of!(ReactionPrefs, rp_FallbackAttr) - 18usize];
18776    ["Offset of field: ReactionPrefs::rp_LabelAttr"]
18777        [::core::mem::offset_of!(ReactionPrefs, rp_LabelAttr) - 26usize];
18778    ["Offset of field: ReactionPrefs::rp_FallbackName"]
18779        [::core::mem::offset_of!(ReactionPrefs, rp_FallbackName) - 34usize];
18780    ["Offset of field: ReactionPrefs::rp_LabelName"]
18781        [::core::mem::offset_of!(ReactionPrefs, rp_LabelName) - 162usize];
18782    ["Offset of field: ReactionPrefs::rp_Pattern"]
18783        [::core::mem::offset_of!(ReactionPrefs, rp_Pattern) - 290usize];
18784};
18785#[repr(C, packed(2))]
18786#[derive(Debug, Copy, Clone)]
18787pub struct ScreenModePrefs {
18788    pub smp_Reserved: [ULONG; 4usize],
18789    pub smp_DisplayID: ULONG,
18790    pub smp_Width: UWORD,
18791    pub smp_Height: UWORD,
18792    pub smp_Depth: UWORD,
18793    pub smp_Control: UWORD,
18794}
18795#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18796const _: () = {
18797    ["Size of ScreenModePrefs"][::core::mem::size_of::<ScreenModePrefs>() - 28usize];
18798    ["Alignment of ScreenModePrefs"][::core::mem::align_of::<ScreenModePrefs>() - 2usize];
18799    ["Offset of field: ScreenModePrefs::smp_Reserved"]
18800        [::core::mem::offset_of!(ScreenModePrefs, smp_Reserved) - 0usize];
18801    ["Offset of field: ScreenModePrefs::smp_DisplayID"]
18802        [::core::mem::offset_of!(ScreenModePrefs, smp_DisplayID) - 16usize];
18803    ["Offset of field: ScreenModePrefs::smp_Width"]
18804        [::core::mem::offset_of!(ScreenModePrefs, smp_Width) - 20usize];
18805    ["Offset of field: ScreenModePrefs::smp_Height"]
18806        [::core::mem::offset_of!(ScreenModePrefs, smp_Height) - 22usize];
18807    ["Offset of field: ScreenModePrefs::smp_Depth"]
18808        [::core::mem::offset_of!(ScreenModePrefs, smp_Depth) - 24usize];
18809    ["Offset of field: ScreenModePrefs::smp_Control"]
18810        [::core::mem::offset_of!(ScreenModePrefs, smp_Control) - 26usize];
18811};
18812#[repr(C, packed(2))]
18813#[derive(Debug, Copy, Clone)]
18814pub struct SerialPrefs {
18815    pub sp_Reserved: [LONG; 3usize],
18816    pub sp_Unit0Map: ULONG,
18817    pub sp_BaudRate: ULONG,
18818    pub sp_InputBuffer: ULONG,
18819    pub sp_OutputBuffer: ULONG,
18820    pub sp_InputHandshake: UBYTE,
18821    pub sp_OutputHandshake: UBYTE,
18822    pub sp_Parity: UBYTE,
18823    pub sp_BitsPerChar: UBYTE,
18824    pub sp_StopBits: UBYTE,
18825}
18826#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18827const _: () = {
18828    ["Size of SerialPrefs"][::core::mem::size_of::<SerialPrefs>() - 34usize];
18829    ["Alignment of SerialPrefs"][::core::mem::align_of::<SerialPrefs>() - 2usize];
18830    ["Offset of field: SerialPrefs::sp_Reserved"]
18831        [::core::mem::offset_of!(SerialPrefs, sp_Reserved) - 0usize];
18832    ["Offset of field: SerialPrefs::sp_Unit0Map"]
18833        [::core::mem::offset_of!(SerialPrefs, sp_Unit0Map) - 12usize];
18834    ["Offset of field: SerialPrefs::sp_BaudRate"]
18835        [::core::mem::offset_of!(SerialPrefs, sp_BaudRate) - 16usize];
18836    ["Offset of field: SerialPrefs::sp_InputBuffer"]
18837        [::core::mem::offset_of!(SerialPrefs, sp_InputBuffer) - 20usize];
18838    ["Offset of field: SerialPrefs::sp_OutputBuffer"]
18839        [::core::mem::offset_of!(SerialPrefs, sp_OutputBuffer) - 24usize];
18840    ["Offset of field: SerialPrefs::sp_InputHandshake"]
18841        [::core::mem::offset_of!(SerialPrefs, sp_InputHandshake) - 28usize];
18842    ["Offset of field: SerialPrefs::sp_OutputHandshake"]
18843        [::core::mem::offset_of!(SerialPrefs, sp_OutputHandshake) - 29usize];
18844    ["Offset of field: SerialPrefs::sp_Parity"]
18845        [::core::mem::offset_of!(SerialPrefs, sp_Parity) - 30usize];
18846    ["Offset of field: SerialPrefs::sp_BitsPerChar"]
18847        [::core::mem::offset_of!(SerialPrefs, sp_BitsPerChar) - 31usize];
18848    ["Offset of field: SerialPrefs::sp_StopBits"]
18849        [::core::mem::offset_of!(SerialPrefs, sp_StopBits) - 32usize];
18850};
18851#[repr(C, packed(2))]
18852#[derive(Debug, Copy, Clone)]
18853pub struct SoundPrefs {
18854    pub sop_Reserved: [LONG; 4usize],
18855    pub sop_DisplayQueue: BOOL,
18856    pub sop_AudioQueue: BOOL,
18857    pub sop_AudioType: UWORD,
18858    pub sop_AudioVolume: UWORD,
18859    pub sop_AudioPeriod: UWORD,
18860    pub sop_AudioDuration: UWORD,
18861    pub sop_AudioFileName: [TEXT; 256usize],
18862}
18863#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18864const _: () = {
18865    ["Size of SoundPrefs"][::core::mem::size_of::<SoundPrefs>() - 284usize];
18866    ["Alignment of SoundPrefs"][::core::mem::align_of::<SoundPrefs>() - 2usize];
18867    ["Offset of field: SoundPrefs::sop_Reserved"]
18868        [::core::mem::offset_of!(SoundPrefs, sop_Reserved) - 0usize];
18869    ["Offset of field: SoundPrefs::sop_DisplayQueue"]
18870        [::core::mem::offset_of!(SoundPrefs, sop_DisplayQueue) - 16usize];
18871    ["Offset of field: SoundPrefs::sop_AudioQueue"]
18872        [::core::mem::offset_of!(SoundPrefs, sop_AudioQueue) - 18usize];
18873    ["Offset of field: SoundPrefs::sop_AudioType"]
18874        [::core::mem::offset_of!(SoundPrefs, sop_AudioType) - 20usize];
18875    ["Offset of field: SoundPrefs::sop_AudioVolume"]
18876        [::core::mem::offset_of!(SoundPrefs, sop_AudioVolume) - 22usize];
18877    ["Offset of field: SoundPrefs::sop_AudioPeriod"]
18878        [::core::mem::offset_of!(SoundPrefs, sop_AudioPeriod) - 24usize];
18879    ["Offset of field: SoundPrefs::sop_AudioDuration"]
18880        [::core::mem::offset_of!(SoundPrefs, sop_AudioDuration) - 26usize];
18881    ["Offset of field: SoundPrefs::sop_AudioFileName"]
18882        [::core::mem::offset_of!(SoundPrefs, sop_AudioFileName) - 28usize];
18883};
18884#[repr(C, packed(2))]
18885#[derive(Debug, Copy, Clone)]
18886pub struct WBPatternPrefs {
18887    pub wbp_Reserved: [ULONG; 4usize],
18888    pub wbp_Which: UWORD,
18889    pub wbp_Flags: UWORD,
18890    pub wbp_Revision: BYTE,
18891    pub wbp_Depth: BYTE,
18892    pub wbp_DataLength: UWORD,
18893}
18894#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18895const _: () = {
18896    ["Size of WBPatternPrefs"][::core::mem::size_of::<WBPatternPrefs>() - 24usize];
18897    ["Alignment of WBPatternPrefs"][::core::mem::align_of::<WBPatternPrefs>() - 2usize];
18898    ["Offset of field: WBPatternPrefs::wbp_Reserved"]
18899        [::core::mem::offset_of!(WBPatternPrefs, wbp_Reserved) - 0usize];
18900    ["Offset of field: WBPatternPrefs::wbp_Which"]
18901        [::core::mem::offset_of!(WBPatternPrefs, wbp_Which) - 16usize];
18902    ["Offset of field: WBPatternPrefs::wbp_Flags"]
18903        [::core::mem::offset_of!(WBPatternPrefs, wbp_Flags) - 18usize];
18904    ["Offset of field: WBPatternPrefs::wbp_Revision"]
18905        [::core::mem::offset_of!(WBPatternPrefs, wbp_Revision) - 20usize];
18906    ["Offset of field: WBPatternPrefs::wbp_Depth"]
18907        [::core::mem::offset_of!(WBPatternPrefs, wbp_Depth) - 21usize];
18908    ["Offset of field: WBPatternPrefs::wbp_DataLength"]
18909        [::core::mem::offset_of!(WBPatternPrefs, wbp_DataLength) - 22usize];
18910};
18911#[repr(C, packed(2))]
18912#[derive(Debug, Copy, Clone)]
18913pub struct WorkbenchPrefs {
18914    pub wbp_DefaultStackSize: ULONG,
18915    pub wbp_TypeRestartTime: ULONG,
18916    pub wbp_IconPrecision: ULONG,
18917    pub wbp_EmbossRect: Rectangle,
18918    pub wbp_Borderless: BOOL,
18919    pub wbp_MaxNameLength: LONG,
18920    pub wbp_NewIconsSupport: BOOL,
18921    pub wbp_ColorIconSupport: BOOL,
18922}
18923#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18924const _: () = {
18925    ["Size of WorkbenchPrefs"][::core::mem::size_of::<WorkbenchPrefs>() - 30usize];
18926    ["Alignment of WorkbenchPrefs"][::core::mem::align_of::<WorkbenchPrefs>() - 2usize];
18927    ["Offset of field: WorkbenchPrefs::wbp_DefaultStackSize"]
18928        [::core::mem::offset_of!(WorkbenchPrefs, wbp_DefaultStackSize) - 0usize];
18929    ["Offset of field: WorkbenchPrefs::wbp_TypeRestartTime"]
18930        [::core::mem::offset_of!(WorkbenchPrefs, wbp_TypeRestartTime) - 4usize];
18931    ["Offset of field: WorkbenchPrefs::wbp_IconPrecision"]
18932        [::core::mem::offset_of!(WorkbenchPrefs, wbp_IconPrecision) - 8usize];
18933    ["Offset of field: WorkbenchPrefs::wbp_EmbossRect"]
18934        [::core::mem::offset_of!(WorkbenchPrefs, wbp_EmbossRect) - 12usize];
18935    ["Offset of field: WorkbenchPrefs::wbp_Borderless"]
18936        [::core::mem::offset_of!(WorkbenchPrefs, wbp_Borderless) - 20usize];
18937    ["Offset of field: WorkbenchPrefs::wbp_MaxNameLength"]
18938        [::core::mem::offset_of!(WorkbenchPrefs, wbp_MaxNameLength) - 22usize];
18939    ["Offset of field: WorkbenchPrefs::wbp_NewIconsSupport"]
18940        [::core::mem::offset_of!(WorkbenchPrefs, wbp_NewIconsSupport) - 26usize];
18941    ["Offset of field: WorkbenchPrefs::wbp_ColorIconSupport"]
18942        [::core::mem::offset_of!(WorkbenchPrefs, wbp_ColorIconSupport) - 28usize];
18943};
18944#[repr(C, packed(2))]
18945#[derive(Debug, Copy, Clone)]
18946pub struct WorkbenchExtendedPrefs {
18947    pub wbe_BasicPrefs: WorkbenchPrefs,
18948    pub wbe_IconMemoryType: ULONG,
18949    pub wbe_LockPens: BOOL,
18950    pub wbe_DisableTitleBar: BOOL,
18951    pub wbe_DisableVolumeGauge: BOOL,
18952    pub wbe_TitleUpdateDelay: UWORD,
18953    pub wbe_CopyBufferSize: ULONG,
18954    pub wbe_Flags: ULONG,
18955}
18956#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18957const _: () = {
18958    ["Size of WorkbenchExtendedPrefs"][::core::mem::size_of::<WorkbenchExtendedPrefs>() - 50usize];
18959    ["Alignment of WorkbenchExtendedPrefs"]
18960        [::core::mem::align_of::<WorkbenchExtendedPrefs>() - 2usize];
18961    ["Offset of field: WorkbenchExtendedPrefs::wbe_BasicPrefs"]
18962        [::core::mem::offset_of!(WorkbenchExtendedPrefs, wbe_BasicPrefs) - 0usize];
18963    ["Offset of field: WorkbenchExtendedPrefs::wbe_IconMemoryType"]
18964        [::core::mem::offset_of!(WorkbenchExtendedPrefs, wbe_IconMemoryType) - 30usize];
18965    ["Offset of field: WorkbenchExtendedPrefs::wbe_LockPens"]
18966        [::core::mem::offset_of!(WorkbenchExtendedPrefs, wbe_LockPens) - 34usize];
18967    ["Offset of field: WorkbenchExtendedPrefs::wbe_DisableTitleBar"]
18968        [::core::mem::offset_of!(WorkbenchExtendedPrefs, wbe_DisableTitleBar) - 36usize];
18969    ["Offset of field: WorkbenchExtendedPrefs::wbe_DisableVolumeGauge"]
18970        [::core::mem::offset_of!(WorkbenchExtendedPrefs, wbe_DisableVolumeGauge) - 38usize];
18971    ["Offset of field: WorkbenchExtendedPrefs::wbe_TitleUpdateDelay"]
18972        [::core::mem::offset_of!(WorkbenchExtendedPrefs, wbe_TitleUpdateDelay) - 40usize];
18973    ["Offset of field: WorkbenchExtendedPrefs::wbe_CopyBufferSize"]
18974        [::core::mem::offset_of!(WorkbenchExtendedPrefs, wbe_CopyBufferSize) - 42usize];
18975    ["Offset of field: WorkbenchExtendedPrefs::wbe_Flags"]
18976        [::core::mem::offset_of!(WorkbenchExtendedPrefs, wbe_Flags) - 46usize];
18977};
18978#[repr(C)]
18979#[derive(Debug)]
18980pub struct WorkbenchHiddenDevicePrefs {
18981    pub whdp_Name: __IncompleteArrayField<TEXT>,
18982}
18983#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18984const _: () = {
18985    ["Size of WorkbenchHiddenDevicePrefs"]
18986        [::core::mem::size_of::<WorkbenchHiddenDevicePrefs>() - 0usize];
18987    ["Alignment of WorkbenchHiddenDevicePrefs"]
18988        [::core::mem::align_of::<WorkbenchHiddenDevicePrefs>() - 1usize];
18989    ["Offset of field: WorkbenchHiddenDevicePrefs::whdp_Name"]
18990        [::core::mem::offset_of!(WorkbenchHiddenDevicePrefs, whdp_Name) - 0usize];
18991};
18992#[repr(C)]
18993#[derive(Debug)]
18994pub struct WorkbenchTitleFormatPrefs {
18995    pub wtfp_Format: __IncompleteArrayField<TEXT>,
18996}
18997#[allow(clippy::unnecessary_operation, clippy::identity_op)]
18998const _: () = {
18999    ["Size of WorkbenchTitleFormatPrefs"]
19000        [::core::mem::size_of::<WorkbenchTitleFormatPrefs>() - 0usize];
19001    ["Alignment of WorkbenchTitleFormatPrefs"]
19002        [::core::mem::align_of::<WorkbenchTitleFormatPrefs>() - 1usize];
19003    ["Offset of field: WorkbenchTitleFormatPrefs::wtfp_Format"]
19004        [::core::mem::offset_of!(WorkbenchTitleFormatPrefs, wtfp_Format) - 0usize];
19005};
19006#[repr(C, packed(2))]
19007#[derive(Debug, Copy, Clone)]
19008pub struct UIExtPens {
19009    pub extp_Version: WORD,
19010    pub extp_DarkPen: LONG,
19011    pub extp_LightPen: LONG,
19012}
19013#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19014const _: () = {
19015    ["Size of UIExtPens"][::core::mem::size_of::<UIExtPens>() - 10usize];
19016    ["Alignment of UIExtPens"][::core::mem::align_of::<UIExtPens>() - 2usize];
19017    ["Offset of field: UIExtPens::extp_Version"]
19018        [::core::mem::offset_of!(UIExtPens, extp_Version) - 0usize];
19019    ["Offset of field: UIExtPens::extp_DarkPen"]
19020        [::core::mem::offset_of!(UIExtPens, extp_DarkPen) - 2usize];
19021    ["Offset of field: UIExtPens::extp_LightPen"]
19022        [::core::mem::offset_of!(UIExtPens, extp_LightPen) - 6usize];
19023};
19024#[repr(C, packed(2))]
19025#[derive(Debug, Copy, Clone)]
19026pub struct SpecialPens {
19027    pub sp_Version: WORD,
19028    pub sp_DarkPen: LONG,
19029    pub sp_LightPen: LONG,
19030}
19031#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19032const _: () = {
19033    ["Size of SpecialPens"][::core::mem::size_of::<SpecialPens>() - 10usize];
19034    ["Alignment of SpecialPens"][::core::mem::align_of::<SpecialPens>() - 2usize];
19035    ["Offset of field: SpecialPens::sp_Version"]
19036        [::core::mem::offset_of!(SpecialPens, sp_Version) - 0usize];
19037    ["Offset of field: SpecialPens::sp_DarkPen"]
19038        [::core::mem::offset_of!(SpecialPens, sp_DarkPen) - 2usize];
19039    ["Offset of field: SpecialPens::sp_LightPen"]
19040        [::core::mem::offset_of!(SpecialPens, sp_LightPen) - 6usize];
19041};
19042#[repr(C, packed(2))]
19043#[derive(Debug, Copy, Clone)]
19044pub struct gpClipRect {
19045    pub MethodID: ULONG,
19046    pub gpc_GInfo: *mut GadgetInfo,
19047    pub gpc_ClipRect: *mut Rectangle,
19048    pub gpc_Flags: ULONG,
19049}
19050#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19051const _: () = {
19052    ["Size of gpClipRect"][::core::mem::size_of::<gpClipRect>() - 16usize];
19053    ["Alignment of gpClipRect"][::core::mem::align_of::<gpClipRect>() - 2usize];
19054    ["Offset of field: gpClipRect::MethodID"]
19055        [::core::mem::offset_of!(gpClipRect, MethodID) - 0usize];
19056    ["Offset of field: gpClipRect::gpc_GInfo"]
19057        [::core::mem::offset_of!(gpClipRect, gpc_GInfo) - 4usize];
19058    ["Offset of field: gpClipRect::gpc_ClipRect"]
19059        [::core::mem::offset_of!(gpClipRect, gpc_ClipRect) - 8usize];
19060    ["Offset of field: gpClipRect::gpc_Flags"]
19061        [::core::mem::offset_of!(gpClipRect, gpc_Flags) - 12usize];
19062};
19063#[repr(C, packed(2))]
19064#[derive(Debug, Copy, Clone)]
19065pub struct UIPrefs {
19066    pub cap_Semaphore: SignalSemaphore,
19067    pub cap_PrefsVersion: UWORD,
19068    pub cap_PrefsSize: UWORD,
19069    pub cap_BevelType: UBYTE,
19070    pub cap_LayoutSpacing: UWORD,
19071    pub cap_3DLook: BOOL,
19072    pub cap_LabelPen: UWORD,
19073    pub cap_LabelPlace: UBYTE,
19074    pub cap_3DLabel: UBYTE,
19075    pub cap_Reserved1: *mut ULONG,
19076    pub cap_SimpleRefresh: BOOL,
19077    pub cap_Pattern: [UBYTE; 256usize],
19078    pub cap_Reserved2: *mut ULONG,
19079    pub cap_3DProp: BOOL,
19080    pub cap_Reserved3: BOOL,
19081    pub cap_GlyphType: UBYTE,
19082    pub cap_Reserved4: UBYTE,
19083    pub cap_FallbackAttr: *mut TextAttr,
19084    pub cap_LabelAttr: *mut TextAttr,
19085}
19086#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19087const _: () = {
19088    ["Size of UIPrefs"][::core::mem::size_of::<UIPrefs>() - 340usize];
19089    ["Alignment of UIPrefs"][::core::mem::align_of::<UIPrefs>() - 2usize];
19090    ["Offset of field: UIPrefs::cap_Semaphore"]
19091        [::core::mem::offset_of!(UIPrefs, cap_Semaphore) - 0usize];
19092    ["Offset of field: UIPrefs::cap_PrefsVersion"]
19093        [::core::mem::offset_of!(UIPrefs, cap_PrefsVersion) - 46usize];
19094    ["Offset of field: UIPrefs::cap_PrefsSize"]
19095        [::core::mem::offset_of!(UIPrefs, cap_PrefsSize) - 48usize];
19096    ["Offset of field: UIPrefs::cap_BevelType"]
19097        [::core::mem::offset_of!(UIPrefs, cap_BevelType) - 50usize];
19098    ["Offset of field: UIPrefs::cap_LayoutSpacing"]
19099        [::core::mem::offset_of!(UIPrefs, cap_LayoutSpacing) - 52usize];
19100    ["Offset of field: UIPrefs::cap_3DLook"]
19101        [::core::mem::offset_of!(UIPrefs, cap_3DLook) - 54usize];
19102    ["Offset of field: UIPrefs::cap_LabelPen"]
19103        [::core::mem::offset_of!(UIPrefs, cap_LabelPen) - 56usize];
19104    ["Offset of field: UIPrefs::cap_LabelPlace"]
19105        [::core::mem::offset_of!(UIPrefs, cap_LabelPlace) - 58usize];
19106    ["Offset of field: UIPrefs::cap_3DLabel"]
19107        [::core::mem::offset_of!(UIPrefs, cap_3DLabel) - 59usize];
19108    ["Offset of field: UIPrefs::cap_Reserved1"]
19109        [::core::mem::offset_of!(UIPrefs, cap_Reserved1) - 60usize];
19110    ["Offset of field: UIPrefs::cap_SimpleRefresh"]
19111        [::core::mem::offset_of!(UIPrefs, cap_SimpleRefresh) - 64usize];
19112    ["Offset of field: UIPrefs::cap_Pattern"]
19113        [::core::mem::offset_of!(UIPrefs, cap_Pattern) - 66usize];
19114    ["Offset of field: UIPrefs::cap_Reserved2"]
19115        [::core::mem::offset_of!(UIPrefs, cap_Reserved2) - 322usize];
19116    ["Offset of field: UIPrefs::cap_3DProp"]
19117        [::core::mem::offset_of!(UIPrefs, cap_3DProp) - 326usize];
19118    ["Offset of field: UIPrefs::cap_Reserved3"]
19119        [::core::mem::offset_of!(UIPrefs, cap_Reserved3) - 328usize];
19120    ["Offset of field: UIPrefs::cap_GlyphType"]
19121        [::core::mem::offset_of!(UIPrefs, cap_GlyphType) - 330usize];
19122    ["Offset of field: UIPrefs::cap_Reserved4"]
19123        [::core::mem::offset_of!(UIPrefs, cap_Reserved4) - 331usize];
19124    ["Offset of field: UIPrefs::cap_FallbackAttr"]
19125        [::core::mem::offset_of!(UIPrefs, cap_FallbackAttr) - 332usize];
19126    ["Offset of field: UIPrefs::cap_LabelAttr"]
19127        [::core::mem::offset_of!(UIPrefs, cap_LabelAttr) - 336usize];
19128};
19129#[repr(C, packed(2))]
19130#[derive(Debug, Copy, Clone)]
19131pub struct CardHandle {
19132    pub cah_CardNode: Node,
19133    pub cah_CardRemoved: *mut Interrupt,
19134    pub cah_CardInserted: *mut Interrupt,
19135    pub cah_CardStatus: *mut Interrupt,
19136    pub cah_CardFlags: UBYTE,
19137}
19138#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19139const _: () = {
19140    ["Size of CardHandle"][::core::mem::size_of::<CardHandle>() - 28usize];
19141    ["Alignment of CardHandle"][::core::mem::align_of::<CardHandle>() - 2usize];
19142    ["Offset of field: CardHandle::cah_CardNode"]
19143        [::core::mem::offset_of!(CardHandle, cah_CardNode) - 0usize];
19144    ["Offset of field: CardHandle::cah_CardRemoved"]
19145        [::core::mem::offset_of!(CardHandle, cah_CardRemoved) - 14usize];
19146    ["Offset of field: CardHandle::cah_CardInserted"]
19147        [::core::mem::offset_of!(CardHandle, cah_CardInserted) - 18usize];
19148    ["Offset of field: CardHandle::cah_CardStatus"]
19149        [::core::mem::offset_of!(CardHandle, cah_CardStatus) - 22usize];
19150    ["Offset of field: CardHandle::cah_CardFlags"]
19151        [::core::mem::offset_of!(CardHandle, cah_CardFlags) - 26usize];
19152};
19153#[repr(C, packed(2))]
19154#[derive(Debug, Copy, Clone)]
19155pub struct DeviceTData {
19156    pub dtd_DTsize: ULONG,
19157    pub dtd_DTspeed: ULONG,
19158    pub dtd_DTtype: UBYTE,
19159    pub dtd_DTflags: UBYTE,
19160}
19161#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19162const _: () = {
19163    ["Size of DeviceTData"][::core::mem::size_of::<DeviceTData>() - 10usize];
19164    ["Alignment of DeviceTData"][::core::mem::align_of::<DeviceTData>() - 2usize];
19165    ["Offset of field: DeviceTData::dtd_DTsize"]
19166        [::core::mem::offset_of!(DeviceTData, dtd_DTsize) - 0usize];
19167    ["Offset of field: DeviceTData::dtd_DTspeed"]
19168        [::core::mem::offset_of!(DeviceTData, dtd_DTspeed) - 4usize];
19169    ["Offset of field: DeviceTData::dtd_DTtype"]
19170        [::core::mem::offset_of!(DeviceTData, dtd_DTtype) - 8usize];
19171    ["Offset of field: DeviceTData::dtd_DTflags"]
19172        [::core::mem::offset_of!(DeviceTData, dtd_DTflags) - 9usize];
19173};
19174#[repr(C, packed(2))]
19175#[derive(Debug, Copy, Clone)]
19176pub struct CardMemoryMap {
19177    pub cmm_CommonMemory: *mut UBYTE,
19178    pub cmm_AttributeMemory: *mut UBYTE,
19179    pub cmm_IOMemory: *mut UBYTE,
19180    pub cmm_CommonMemSize: ULONG,
19181    pub cmm_AttributeMemSize: ULONG,
19182    pub cmm_IOMemSize: ULONG,
19183}
19184#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19185const _: () = {
19186    ["Size of CardMemoryMap"][::core::mem::size_of::<CardMemoryMap>() - 24usize];
19187    ["Alignment of CardMemoryMap"][::core::mem::align_of::<CardMemoryMap>() - 2usize];
19188    ["Offset of field: CardMemoryMap::cmm_CommonMemory"]
19189        [::core::mem::offset_of!(CardMemoryMap, cmm_CommonMemory) - 0usize];
19190    ["Offset of field: CardMemoryMap::cmm_AttributeMemory"]
19191        [::core::mem::offset_of!(CardMemoryMap, cmm_AttributeMemory) - 4usize];
19192    ["Offset of field: CardMemoryMap::cmm_IOMemory"]
19193        [::core::mem::offset_of!(CardMemoryMap, cmm_IOMemory) - 8usize];
19194    ["Offset of field: CardMemoryMap::cmm_CommonMemSize"]
19195        [::core::mem::offset_of!(CardMemoryMap, cmm_CommonMemSize) - 12usize];
19196    ["Offset of field: CardMemoryMap::cmm_AttributeMemSize"]
19197        [::core::mem::offset_of!(CardMemoryMap, cmm_AttributeMemSize) - 16usize];
19198    ["Offset of field: CardMemoryMap::cmm_IOMemSize"]
19199        [::core::mem::offset_of!(CardMemoryMap, cmm_IOMemSize) - 20usize];
19200};
19201#[repr(C)]
19202#[derive(Debug, Copy, Clone)]
19203pub struct TP_AmigaXIP {
19204    pub TPL_CODE: UBYTE,
19205    pub TPL_LINK: UBYTE,
19206    pub TP_XIPLOC: [UBYTE; 4usize],
19207    pub TP_XIPFLAGS: UBYTE,
19208    pub TP_XIPRESRV: UBYTE,
19209}
19210#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19211const _: () = {
19212    ["Size of TP_AmigaXIP"][::core::mem::size_of::<TP_AmigaXIP>() - 8usize];
19213    ["Alignment of TP_AmigaXIP"][::core::mem::align_of::<TP_AmigaXIP>() - 1usize];
19214    ["Offset of field: TP_AmigaXIP::TPL_CODE"]
19215        [::core::mem::offset_of!(TP_AmigaXIP, TPL_CODE) - 0usize];
19216    ["Offset of field: TP_AmigaXIP::TPL_LINK"]
19217        [::core::mem::offset_of!(TP_AmigaXIP, TPL_LINK) - 1usize];
19218    ["Offset of field: TP_AmigaXIP::TP_XIPLOC"]
19219        [::core::mem::offset_of!(TP_AmigaXIP, TP_XIPLOC) - 2usize];
19220    ["Offset of field: TP_AmigaXIP::TP_XIPFLAGS"]
19221        [::core::mem::offset_of!(TP_AmigaXIP, TP_XIPFLAGS) - 6usize];
19222    ["Offset of field: TP_AmigaXIP::TP_XIPRESRV"]
19223        [::core::mem::offset_of!(TP_AmigaXIP, TP_XIPRESRV) - 7usize];
19224};
19225#[repr(C)]
19226#[derive(Debug, Copy, Clone)]
19227pub struct DiscResourceUnit {
19228    pub dru_Message: Message,
19229    pub dru_DiscBlock: Interrupt,
19230    pub dru_DiscSync: Interrupt,
19231    pub dru_Index: Interrupt,
19232}
19233#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19234const _: () = {
19235    ["Size of DiscResourceUnit"][::core::mem::size_of::<DiscResourceUnit>() - 86usize];
19236    ["Alignment of DiscResourceUnit"][::core::mem::align_of::<DiscResourceUnit>() - 2usize];
19237    ["Offset of field: DiscResourceUnit::dru_Message"]
19238        [::core::mem::offset_of!(DiscResourceUnit, dru_Message) - 0usize];
19239    ["Offset of field: DiscResourceUnit::dru_DiscBlock"]
19240        [::core::mem::offset_of!(DiscResourceUnit, dru_DiscBlock) - 20usize];
19241    ["Offset of field: DiscResourceUnit::dru_DiscSync"]
19242        [::core::mem::offset_of!(DiscResourceUnit, dru_DiscSync) - 42usize];
19243    ["Offset of field: DiscResourceUnit::dru_Index"]
19244        [::core::mem::offset_of!(DiscResourceUnit, dru_Index) - 64usize];
19245};
19246#[repr(C, packed(2))]
19247#[derive(Debug, Copy, Clone)]
19248pub struct DiscResource {
19249    pub dr_Library: Library,
19250    pub dr_Current: *mut DiscResourceUnit,
19251    pub dr_Flags: UBYTE,
19252    pub dr_UnitInit: UBYTE,
19253    pub dr_SysLib: *mut Library,
19254    pub dr_CiaResource: *mut Library,
19255    pub dr_UnitID: [ULONG; 4usize],
19256    pub dr_Waiting: List,
19257    pub dr_DiscBlock: Interrupt,
19258    pub dr_DiscSync: Interrupt,
19259    pub dr_Index: Interrupt,
19260    pub dr_CurrTask: *mut Task,
19261}
19262#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19263const _: () = {
19264    ["Size of DiscResource"][::core::mem::size_of::<DiscResource>() - 148usize];
19265    ["Alignment of DiscResource"][::core::mem::align_of::<DiscResource>() - 2usize];
19266    ["Offset of field: DiscResource::dr_Library"]
19267        [::core::mem::offset_of!(DiscResource, dr_Library) - 0usize];
19268    ["Offset of field: DiscResource::dr_Current"]
19269        [::core::mem::offset_of!(DiscResource, dr_Current) - 34usize];
19270    ["Offset of field: DiscResource::dr_Flags"]
19271        [::core::mem::offset_of!(DiscResource, dr_Flags) - 38usize];
19272    ["Offset of field: DiscResource::dr_UnitInit"]
19273        [::core::mem::offset_of!(DiscResource, dr_UnitInit) - 39usize];
19274    ["Offset of field: DiscResource::dr_SysLib"]
19275        [::core::mem::offset_of!(DiscResource, dr_SysLib) - 40usize];
19276    ["Offset of field: DiscResource::dr_CiaResource"]
19277        [::core::mem::offset_of!(DiscResource, dr_CiaResource) - 44usize];
19278    ["Offset of field: DiscResource::dr_UnitID"]
19279        [::core::mem::offset_of!(DiscResource, dr_UnitID) - 48usize];
19280    ["Offset of field: DiscResource::dr_Waiting"]
19281        [::core::mem::offset_of!(DiscResource, dr_Waiting) - 64usize];
19282    ["Offset of field: DiscResource::dr_DiscBlock"]
19283        [::core::mem::offset_of!(DiscResource, dr_DiscBlock) - 78usize];
19284    ["Offset of field: DiscResource::dr_DiscSync"]
19285        [::core::mem::offset_of!(DiscResource, dr_DiscSync) - 100usize];
19286    ["Offset of field: DiscResource::dr_Index"]
19287        [::core::mem::offset_of!(DiscResource, dr_Index) - 122usize];
19288    ["Offset of field: DiscResource::dr_CurrTask"]
19289        [::core::mem::offset_of!(DiscResource, dr_CurrTask) - 144usize];
19290};
19291#[repr(C, packed(2))]
19292#[derive(Debug, Copy, Clone)]
19293pub struct FileSysResource {
19294    pub fsr_Node: Node,
19295    pub fsr_Creator: *mut ::core::ffi::c_char,
19296    pub fsr_FileSysEntries: List,
19297}
19298#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19299const _: () = {
19300    ["Size of FileSysResource"][::core::mem::size_of::<FileSysResource>() - 32usize];
19301    ["Alignment of FileSysResource"][::core::mem::align_of::<FileSysResource>() - 2usize];
19302    ["Offset of field: FileSysResource::fsr_Node"]
19303        [::core::mem::offset_of!(FileSysResource, fsr_Node) - 0usize];
19304    ["Offset of field: FileSysResource::fsr_Creator"]
19305        [::core::mem::offset_of!(FileSysResource, fsr_Creator) - 14usize];
19306    ["Offset of field: FileSysResource::fsr_FileSysEntries"]
19307        [::core::mem::offset_of!(FileSysResource, fsr_FileSysEntries) - 18usize];
19308};
19309#[repr(C, packed(2))]
19310#[derive(Debug, Copy, Clone)]
19311pub struct FileSysEntry {
19312    pub fse_Node: Node,
19313    pub fse_DosType: ULONG,
19314    pub fse_Version: ULONG,
19315    pub fse_PatchFlags: ULONG,
19316    pub fse_Type: ULONG,
19317    pub fse_Task: CPTR,
19318    pub fse_Lock: BPTR,
19319    pub fse_Handler: BSTR,
19320    pub fse_StackSize: ULONG,
19321    pub fse_Priority: LONG,
19322    pub fse_Startup: BPTR,
19323    pub fse_SegList: BPTR,
19324    pub fse_GlobalVec: BPTR,
19325}
19326#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19327const _: () = {
19328    ["Size of FileSysEntry"][::core::mem::size_of::<FileSysEntry>() - 62usize];
19329    ["Alignment of FileSysEntry"][::core::mem::align_of::<FileSysEntry>() - 2usize];
19330    ["Offset of field: FileSysEntry::fse_Node"]
19331        [::core::mem::offset_of!(FileSysEntry, fse_Node) - 0usize];
19332    ["Offset of field: FileSysEntry::fse_DosType"]
19333        [::core::mem::offset_of!(FileSysEntry, fse_DosType) - 14usize];
19334    ["Offset of field: FileSysEntry::fse_Version"]
19335        [::core::mem::offset_of!(FileSysEntry, fse_Version) - 18usize];
19336    ["Offset of field: FileSysEntry::fse_PatchFlags"]
19337        [::core::mem::offset_of!(FileSysEntry, fse_PatchFlags) - 22usize];
19338    ["Offset of field: FileSysEntry::fse_Type"]
19339        [::core::mem::offset_of!(FileSysEntry, fse_Type) - 26usize];
19340    ["Offset of field: FileSysEntry::fse_Task"]
19341        [::core::mem::offset_of!(FileSysEntry, fse_Task) - 30usize];
19342    ["Offset of field: FileSysEntry::fse_Lock"]
19343        [::core::mem::offset_of!(FileSysEntry, fse_Lock) - 34usize];
19344    ["Offset of field: FileSysEntry::fse_Handler"]
19345        [::core::mem::offset_of!(FileSysEntry, fse_Handler) - 38usize];
19346    ["Offset of field: FileSysEntry::fse_StackSize"]
19347        [::core::mem::offset_of!(FileSysEntry, fse_StackSize) - 42usize];
19348    ["Offset of field: FileSysEntry::fse_Priority"]
19349        [::core::mem::offset_of!(FileSysEntry, fse_Priority) - 46usize];
19350    ["Offset of field: FileSysEntry::fse_Startup"]
19351        [::core::mem::offset_of!(FileSysEntry, fse_Startup) - 50usize];
19352    ["Offset of field: FileSysEntry::fse_SegList"]
19353        [::core::mem::offset_of!(FileSysEntry, fse_SegList) - 54usize];
19354    ["Offset of field: FileSysEntry::fse_GlobalVec"]
19355        [::core::mem::offset_of!(FileSysEntry, fse_GlobalVec) - 58usize];
19356};
19357#[repr(C, packed(2))]
19358#[derive(Debug, Copy, Clone)]
19359pub struct IoBuff {
19360    pub iobNode: RexxRsrc,
19361    pub iobRpt: APTR,
19362    pub iobRct: LONG,
19363    pub iobDFH: LONG,
19364    pub iobLock: APTR,
19365    pub iobBct: LONG,
19366    pub iobArea: [BYTE; 204usize],
19367}
19368#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19369const _: () = {
19370    ["Size of IoBuff"][::core::mem::size_of::<IoBuff>() - 256usize];
19371    ["Alignment of IoBuff"][::core::mem::align_of::<IoBuff>() - 2usize];
19372    ["Offset of field: IoBuff::iobNode"][::core::mem::offset_of!(IoBuff, iobNode) - 0usize];
19373    ["Offset of field: IoBuff::iobRpt"][::core::mem::offset_of!(IoBuff, iobRpt) - 32usize];
19374    ["Offset of field: IoBuff::iobRct"][::core::mem::offset_of!(IoBuff, iobRct) - 36usize];
19375    ["Offset of field: IoBuff::iobDFH"][::core::mem::offset_of!(IoBuff, iobDFH) - 40usize];
19376    ["Offset of field: IoBuff::iobLock"][::core::mem::offset_of!(IoBuff, iobLock) - 44usize];
19377    ["Offset of field: IoBuff::iobBct"][::core::mem::offset_of!(IoBuff, iobBct) - 48usize];
19378    ["Offset of field: IoBuff::iobArea"][::core::mem::offset_of!(IoBuff, iobArea) - 52usize];
19379};
19380#[repr(C)]
19381#[derive(Debug, Copy, Clone)]
19382pub struct RexxMsgPort {
19383    pub rmp_Node: RexxRsrc,
19384    pub rmp_Port: MsgPort,
19385    pub rmp_ReplyList: List,
19386}
19387#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19388const _: () = {
19389    ["Size of RexxMsgPort"][::core::mem::size_of::<RexxMsgPort>() - 80usize];
19390    ["Alignment of RexxMsgPort"][::core::mem::align_of::<RexxMsgPort>() - 2usize];
19391    ["Offset of field: RexxMsgPort::rmp_Node"]
19392        [::core::mem::offset_of!(RexxMsgPort, rmp_Node) - 0usize];
19393    ["Offset of field: RexxMsgPort::rmp_Port"]
19394        [::core::mem::offset_of!(RexxMsgPort, rmp_Port) - 32usize];
19395    ["Offset of field: RexxMsgPort::rmp_ReplyList"]
19396        [::core::mem::offset_of!(RexxMsgPort, rmp_ReplyList) - 66usize];
19397};
19398#[repr(C)]
19399#[derive(Debug, Copy, Clone)]
19400pub struct ClockData {
19401    pub sec: UWORD,
19402    pub min: UWORD,
19403    pub hour: UWORD,
19404    pub mday: UWORD,
19405    pub month: UWORD,
19406    pub year: UWORD,
19407    pub wday: UWORD,
19408}
19409#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19410const _: () = {
19411    ["Size of ClockData"][::core::mem::size_of::<ClockData>() - 14usize];
19412    ["Alignment of ClockData"][::core::mem::align_of::<ClockData>() - 2usize];
19413    ["Offset of field: ClockData::sec"][::core::mem::offset_of!(ClockData, sec) - 0usize];
19414    ["Offset of field: ClockData::min"][::core::mem::offset_of!(ClockData, min) - 2usize];
19415    ["Offset of field: ClockData::hour"][::core::mem::offset_of!(ClockData, hour) - 4usize];
19416    ["Offset of field: ClockData::mday"][::core::mem::offset_of!(ClockData, mday) - 6usize];
19417    ["Offset of field: ClockData::month"][::core::mem::offset_of!(ClockData, month) - 8usize];
19418    ["Offset of field: ClockData::year"][::core::mem::offset_of!(ClockData, year) - 10usize];
19419    ["Offset of field: ClockData::wday"][::core::mem::offset_of!(ClockData, wday) - 12usize];
19420};
19421#[repr(C, packed(2))]
19422#[derive(Debug, Copy, Clone)]
19423pub struct NamedObject {
19424    pub no_Object: APTR,
19425}
19426#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19427const _: () = {
19428    ["Size of NamedObject"][::core::mem::size_of::<NamedObject>() - 4usize];
19429    ["Alignment of NamedObject"][::core::mem::align_of::<NamedObject>() - 2usize];
19430    ["Offset of field: NamedObject::no_Object"]
19431        [::core::mem::offset_of!(NamedObject, no_Object) - 0usize];
19432};
19433#[repr(C)]
19434#[derive(Debug, Copy, Clone)]
19435pub struct UtilityBase {
19436    pub ub_LibNode: Library,
19437    pub ub_Language: UBYTE,
19438    pub ub_Reserved: UBYTE,
19439}
19440#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19441const _: () = {
19442    ["Size of UtilityBase"][::core::mem::size_of::<UtilityBase>() - 36usize];
19443    ["Alignment of UtilityBase"][::core::mem::align_of::<UtilityBase>() - 2usize];
19444    ["Offset of field: UtilityBase::ub_LibNode"]
19445        [::core::mem::offset_of!(UtilityBase, ub_LibNode) - 0usize];
19446    ["Offset of field: UtilityBase::ub_Language"]
19447        [::core::mem::offset_of!(UtilityBase, ub_Language) - 34usize];
19448    ["Offset of field: UtilityBase::ub_Reserved"]
19449        [::core::mem::offset_of!(UtilityBase, ub_Reserved) - 35usize];
19450};
19451#[repr(C, packed(2))]
19452#[derive(Debug, Copy, Clone)]
19453pub struct IconIdentifyMsg {
19454    pub iim_SysBase: *mut Library,
19455    pub iim_DOSBase: *mut Library,
19456    pub iim_UtilityBase: *mut Library,
19457    pub iim_IconBase: *mut Library,
19458    pub iim_FileLock: BPTR,
19459    pub iim_ParentLock: BPTR,
19460    pub iim_FIB: *mut FileInfoBlock,
19461    pub iim_FileHandle: BPTR,
19462    pub iim_Tags: *mut TagItem,
19463}
19464#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19465const _: () = {
19466    ["Size of IconIdentifyMsg"][::core::mem::size_of::<IconIdentifyMsg>() - 36usize];
19467    ["Alignment of IconIdentifyMsg"][::core::mem::align_of::<IconIdentifyMsg>() - 2usize];
19468    ["Offset of field: IconIdentifyMsg::iim_SysBase"]
19469        [::core::mem::offset_of!(IconIdentifyMsg, iim_SysBase) - 0usize];
19470    ["Offset of field: IconIdentifyMsg::iim_DOSBase"]
19471        [::core::mem::offset_of!(IconIdentifyMsg, iim_DOSBase) - 4usize];
19472    ["Offset of field: IconIdentifyMsg::iim_UtilityBase"]
19473        [::core::mem::offset_of!(IconIdentifyMsg, iim_UtilityBase) - 8usize];
19474    ["Offset of field: IconIdentifyMsg::iim_IconBase"]
19475        [::core::mem::offset_of!(IconIdentifyMsg, iim_IconBase) - 12usize];
19476    ["Offset of field: IconIdentifyMsg::iim_FileLock"]
19477        [::core::mem::offset_of!(IconIdentifyMsg, iim_FileLock) - 16usize];
19478    ["Offset of field: IconIdentifyMsg::iim_ParentLock"]
19479        [::core::mem::offset_of!(IconIdentifyMsg, iim_ParentLock) - 20usize];
19480    ["Offset of field: IconIdentifyMsg::iim_FIB"]
19481        [::core::mem::offset_of!(IconIdentifyMsg, iim_FIB) - 24usize];
19482    ["Offset of field: IconIdentifyMsg::iim_FileHandle"]
19483        [::core::mem::offset_of!(IconIdentifyMsg, iim_FileHandle) - 28usize];
19484    ["Offset of field: IconIdentifyMsg::iim_Tags"]
19485        [::core::mem::offset_of!(IconIdentifyMsg, iim_Tags) - 32usize];
19486};
19487#[repr(C, packed(2))]
19488#[derive(Debug, Copy, Clone)]
19489pub struct OldDrawerData {
19490    pub dd_NewWindow: NewWindow,
19491    pub dd_CurrentX: LONG,
19492    pub dd_CurrentY: LONG,
19493}
19494#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19495const _: () = {
19496    ["Size of OldDrawerData"][::core::mem::size_of::<OldDrawerData>() - 56usize];
19497    ["Alignment of OldDrawerData"][::core::mem::align_of::<OldDrawerData>() - 2usize];
19498    ["Offset of field: OldDrawerData::dd_NewWindow"]
19499        [::core::mem::offset_of!(OldDrawerData, dd_NewWindow) - 0usize];
19500    ["Offset of field: OldDrawerData::dd_CurrentX"]
19501        [::core::mem::offset_of!(OldDrawerData, dd_CurrentX) - 48usize];
19502    ["Offset of field: OldDrawerData::dd_CurrentY"]
19503        [::core::mem::offset_of!(OldDrawerData, dd_CurrentY) - 52usize];
19504};
19505#[repr(C, packed(2))]
19506#[derive(Debug, Copy, Clone)]
19507pub struct DrawerData {
19508    pub dd_NewWindow: NewWindow,
19509    pub dd_CurrentX: LONG,
19510    pub dd_CurrentY: LONG,
19511    pub dd_Flags: ULONG,
19512    pub dd_ViewModes: UWORD,
19513}
19514#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19515const _: () = {
19516    ["Size of DrawerData"][::core::mem::size_of::<DrawerData>() - 62usize];
19517    ["Alignment of DrawerData"][::core::mem::align_of::<DrawerData>() - 2usize];
19518    ["Offset of field: DrawerData::dd_NewWindow"]
19519        [::core::mem::offset_of!(DrawerData, dd_NewWindow) - 0usize];
19520    ["Offset of field: DrawerData::dd_CurrentX"]
19521        [::core::mem::offset_of!(DrawerData, dd_CurrentX) - 48usize];
19522    ["Offset of field: DrawerData::dd_CurrentY"]
19523        [::core::mem::offset_of!(DrawerData, dd_CurrentY) - 52usize];
19524    ["Offset of field: DrawerData::dd_Flags"]
19525        [::core::mem::offset_of!(DrawerData, dd_Flags) - 56usize];
19526    ["Offset of field: DrawerData::dd_ViewModes"]
19527        [::core::mem::offset_of!(DrawerData, dd_ViewModes) - 60usize];
19528};
19529#[repr(C, packed(2))]
19530#[derive(Debug, Copy, Clone)]
19531pub struct DiskObject {
19532    pub do_Magic: UWORD,
19533    pub do_Version: UWORD,
19534    pub do_Gadget: Gadget,
19535    pub do_Type: UBYTE,
19536    pub do_DefaultTool: STRPTR,
19537    pub do_ToolTypes: *mut STRPTR,
19538    pub do_CurrentX: LONG,
19539    pub do_CurrentY: LONG,
19540    pub do_DrawerData: *mut DrawerData,
19541    pub do_ToolWindow: STRPTR,
19542    pub do_StackSize: LONG,
19543}
19544#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19545const _: () = {
19546    ["Size of DiskObject"][::core::mem::size_of::<DiskObject>() - 78usize];
19547    ["Alignment of DiskObject"][::core::mem::align_of::<DiskObject>() - 2usize];
19548    ["Offset of field: DiskObject::do_Magic"]
19549        [::core::mem::offset_of!(DiskObject, do_Magic) - 0usize];
19550    ["Offset of field: DiskObject::do_Version"]
19551        [::core::mem::offset_of!(DiskObject, do_Version) - 2usize];
19552    ["Offset of field: DiskObject::do_Gadget"]
19553        [::core::mem::offset_of!(DiskObject, do_Gadget) - 4usize];
19554    ["Offset of field: DiskObject::do_Type"]
19555        [::core::mem::offset_of!(DiskObject, do_Type) - 48usize];
19556    ["Offset of field: DiskObject::do_DefaultTool"]
19557        [::core::mem::offset_of!(DiskObject, do_DefaultTool) - 50usize];
19558    ["Offset of field: DiskObject::do_ToolTypes"]
19559        [::core::mem::offset_of!(DiskObject, do_ToolTypes) - 54usize];
19560    ["Offset of field: DiskObject::do_CurrentX"]
19561        [::core::mem::offset_of!(DiskObject, do_CurrentX) - 58usize];
19562    ["Offset of field: DiskObject::do_CurrentY"]
19563        [::core::mem::offset_of!(DiskObject, do_CurrentY) - 62usize];
19564    ["Offset of field: DiskObject::do_DrawerData"]
19565        [::core::mem::offset_of!(DiskObject, do_DrawerData) - 66usize];
19566    ["Offset of field: DiskObject::do_ToolWindow"]
19567        [::core::mem::offset_of!(DiskObject, do_ToolWindow) - 70usize];
19568    ["Offset of field: DiskObject::do_StackSize"]
19569        [::core::mem::offset_of!(DiskObject, do_StackSize) - 74usize];
19570};
19571#[repr(C)]
19572#[derive(Debug, Copy, Clone)]
19573pub struct FreeList {
19574    pub fl_NumFree: WORD,
19575    pub fl_MemList: List,
19576}
19577#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19578const _: () = {
19579    ["Size of FreeList"][::core::mem::size_of::<FreeList>() - 16usize];
19580    ["Alignment of FreeList"][::core::mem::align_of::<FreeList>() - 2usize];
19581    ["Offset of field: FreeList::fl_NumFree"]
19582        [::core::mem::offset_of!(FreeList, fl_NumFree) - 0usize];
19583    ["Offset of field: FreeList::fl_MemList"]
19584        [::core::mem::offset_of!(FreeList, fl_MemList) - 2usize];
19585};
19586#[repr(C, packed(2))]
19587#[derive(Debug, Copy, Clone)]
19588pub struct AppMessage {
19589    pub am_Message: Message,
19590    pub am_Type: UWORD,
19591    pub am_UserData: ULONG,
19592    pub am_ID: ULONG,
19593    pub am_NumArgs: LONG,
19594    pub am_ArgList: *mut WBArg,
19595    pub am_Version: UWORD,
19596    pub am_Class: UWORD,
19597    pub am_MouseX: WORD,
19598    pub am_MouseY: WORD,
19599    pub am_Seconds: ULONG,
19600    pub am_Micros: ULONG,
19601    pub am_Reserved: [ULONG; 8usize],
19602}
19603#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19604const _: () = {
19605    ["Size of AppMessage"][::core::mem::size_of::<AppMessage>() - 86usize];
19606    ["Alignment of AppMessage"][::core::mem::align_of::<AppMessage>() - 2usize];
19607    ["Offset of field: AppMessage::am_Message"]
19608        [::core::mem::offset_of!(AppMessage, am_Message) - 0usize];
19609    ["Offset of field: AppMessage::am_Type"]
19610        [::core::mem::offset_of!(AppMessage, am_Type) - 20usize];
19611    ["Offset of field: AppMessage::am_UserData"]
19612        [::core::mem::offset_of!(AppMessage, am_UserData) - 22usize];
19613    ["Offset of field: AppMessage::am_ID"][::core::mem::offset_of!(AppMessage, am_ID) - 26usize];
19614    ["Offset of field: AppMessage::am_NumArgs"]
19615        [::core::mem::offset_of!(AppMessage, am_NumArgs) - 30usize];
19616    ["Offset of field: AppMessage::am_ArgList"]
19617        [::core::mem::offset_of!(AppMessage, am_ArgList) - 34usize];
19618    ["Offset of field: AppMessage::am_Version"]
19619        [::core::mem::offset_of!(AppMessage, am_Version) - 38usize];
19620    ["Offset of field: AppMessage::am_Class"]
19621        [::core::mem::offset_of!(AppMessage, am_Class) - 40usize];
19622    ["Offset of field: AppMessage::am_MouseX"]
19623        [::core::mem::offset_of!(AppMessage, am_MouseX) - 42usize];
19624    ["Offset of field: AppMessage::am_MouseY"]
19625        [::core::mem::offset_of!(AppMessage, am_MouseY) - 44usize];
19626    ["Offset of field: AppMessage::am_Seconds"]
19627        [::core::mem::offset_of!(AppMessage, am_Seconds) - 46usize];
19628    ["Offset of field: AppMessage::am_Micros"]
19629        [::core::mem::offset_of!(AppMessage, am_Micros) - 50usize];
19630    ["Offset of field: AppMessage::am_Reserved"]
19631        [::core::mem::offset_of!(AppMessage, am_Reserved) - 54usize];
19632};
19633#[repr(C, packed(2))]
19634#[derive(Debug, Copy, Clone)]
19635pub struct AppWindow {
19636    pub aw_PRIVATE: *mut ::core::ffi::c_void,
19637}
19638#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19639const _: () = {
19640    ["Size of AppWindow"][::core::mem::size_of::<AppWindow>() - 4usize];
19641    ["Alignment of AppWindow"][::core::mem::align_of::<AppWindow>() - 2usize];
19642    ["Offset of field: AppWindow::aw_PRIVATE"]
19643        [::core::mem::offset_of!(AppWindow, aw_PRIVATE) - 0usize];
19644};
19645#[repr(C, packed(2))]
19646#[derive(Debug, Copy, Clone)]
19647pub struct AppWindowDropZone {
19648    pub awdz_PRIVATE: *mut ::core::ffi::c_void,
19649}
19650#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19651const _: () = {
19652    ["Size of AppWindowDropZone"][::core::mem::size_of::<AppWindowDropZone>() - 4usize];
19653    ["Alignment of AppWindowDropZone"][::core::mem::align_of::<AppWindowDropZone>() - 2usize];
19654    ["Offset of field: AppWindowDropZone::awdz_PRIVATE"]
19655        [::core::mem::offset_of!(AppWindowDropZone, awdz_PRIVATE) - 0usize];
19656};
19657#[repr(C, packed(2))]
19658#[derive(Debug, Copy, Clone)]
19659pub struct AppIcon {
19660    pub ai_PRIVATE: *mut ::core::ffi::c_void,
19661}
19662#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19663const _: () = {
19664    ["Size of AppIcon"][::core::mem::size_of::<AppIcon>() - 4usize];
19665    ["Alignment of AppIcon"][::core::mem::align_of::<AppIcon>() - 2usize];
19666    ["Offset of field: AppIcon::ai_PRIVATE"][::core::mem::offset_of!(AppIcon, ai_PRIVATE) - 0usize];
19667};
19668#[repr(C, packed(2))]
19669#[derive(Debug, Copy, Clone)]
19670pub struct AppMenuItem {
19671    pub ami_PRIVATE: *mut ::core::ffi::c_void,
19672}
19673#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19674const _: () = {
19675    ["Size of AppMenuItem"][::core::mem::size_of::<AppMenuItem>() - 4usize];
19676    ["Alignment of AppMenuItem"][::core::mem::align_of::<AppMenuItem>() - 2usize];
19677    ["Offset of field: AppMenuItem::ami_PRIVATE"]
19678        [::core::mem::offset_of!(AppMenuItem, ami_PRIVATE) - 0usize];
19679};
19680#[repr(C, packed(2))]
19681#[derive(Debug, Copy, Clone)]
19682pub struct AppMenu {
19683    pub am_PRIVATE: *mut ::core::ffi::c_void,
19684}
19685#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19686const _: () = {
19687    ["Size of AppMenu"][::core::mem::size_of::<AppMenu>() - 4usize];
19688    ["Alignment of AppMenu"][::core::mem::align_of::<AppMenu>() - 2usize];
19689    ["Offset of field: AppMenu::am_PRIVATE"][::core::mem::offset_of!(AppMenu, am_PRIVATE) - 0usize];
19690};
19691#[repr(C, packed(2))]
19692#[derive(Debug, Copy, Clone)]
19693pub struct SetupCleanupHookMsg {
19694    pub schm_Length: ULONG,
19695    pub schm_State: LONG,
19696}
19697#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19698const _: () = {
19699    ["Size of SetupCleanupHookMsg"][::core::mem::size_of::<SetupCleanupHookMsg>() - 8usize];
19700    ["Alignment of SetupCleanupHookMsg"][::core::mem::align_of::<SetupCleanupHookMsg>() - 2usize];
19701    ["Offset of field: SetupCleanupHookMsg::schm_Length"]
19702        [::core::mem::offset_of!(SetupCleanupHookMsg, schm_Length) - 0usize];
19703    ["Offset of field: SetupCleanupHookMsg::schm_State"]
19704        [::core::mem::offset_of!(SetupCleanupHookMsg, schm_State) - 4usize];
19705};
19706#[repr(C, packed(2))]
19707#[derive(Debug, Copy, Clone)]
19708pub struct AppIconRenderMsg {
19709    pub arm_RastPort: *mut RastPort,
19710    pub arm_Icon: *mut DiskObject,
19711    pub arm_Label: STRPTR,
19712    pub arm_Tags: *mut TagItem,
19713    pub arm_Left: WORD,
19714    pub arm_Top: WORD,
19715    pub arm_Width: WORD,
19716    pub arm_Height: WORD,
19717    pub arm_State: ULONG,
19718}
19719#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19720const _: () = {
19721    ["Size of AppIconRenderMsg"][::core::mem::size_of::<AppIconRenderMsg>() - 28usize];
19722    ["Alignment of AppIconRenderMsg"][::core::mem::align_of::<AppIconRenderMsg>() - 2usize];
19723    ["Offset of field: AppIconRenderMsg::arm_RastPort"]
19724        [::core::mem::offset_of!(AppIconRenderMsg, arm_RastPort) - 0usize];
19725    ["Offset of field: AppIconRenderMsg::arm_Icon"]
19726        [::core::mem::offset_of!(AppIconRenderMsg, arm_Icon) - 4usize];
19727    ["Offset of field: AppIconRenderMsg::arm_Label"]
19728        [::core::mem::offset_of!(AppIconRenderMsg, arm_Label) - 8usize];
19729    ["Offset of field: AppIconRenderMsg::arm_Tags"]
19730        [::core::mem::offset_of!(AppIconRenderMsg, arm_Tags) - 12usize];
19731    ["Offset of field: AppIconRenderMsg::arm_Left"]
19732        [::core::mem::offset_of!(AppIconRenderMsg, arm_Left) - 16usize];
19733    ["Offset of field: AppIconRenderMsg::arm_Top"]
19734        [::core::mem::offset_of!(AppIconRenderMsg, arm_Top) - 18usize];
19735    ["Offset of field: AppIconRenderMsg::arm_Width"]
19736        [::core::mem::offset_of!(AppIconRenderMsg, arm_Width) - 20usize];
19737    ["Offset of field: AppIconRenderMsg::arm_Height"]
19738        [::core::mem::offset_of!(AppIconRenderMsg, arm_Height) - 22usize];
19739    ["Offset of field: AppIconRenderMsg::arm_State"]
19740        [::core::mem::offset_of!(AppIconRenderMsg, arm_State) - 24usize];
19741};
19742#[repr(C, packed(2))]
19743#[derive(Debug, Copy, Clone)]
19744pub struct AppWindowDropZoneMsg {
19745    pub adzm_RastPort: *mut RastPort,
19746    pub adzm_DropZoneBox: IBox,
19747    pub adzm_ID: ULONG,
19748    pub adzm_UserData: ULONG,
19749    pub adzm_Action: LONG,
19750}
19751#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19752const _: () = {
19753    ["Size of AppWindowDropZoneMsg"][::core::mem::size_of::<AppWindowDropZoneMsg>() - 24usize];
19754    ["Alignment of AppWindowDropZoneMsg"][::core::mem::align_of::<AppWindowDropZoneMsg>() - 2usize];
19755    ["Offset of field: AppWindowDropZoneMsg::adzm_RastPort"]
19756        [::core::mem::offset_of!(AppWindowDropZoneMsg, adzm_RastPort) - 0usize];
19757    ["Offset of field: AppWindowDropZoneMsg::adzm_DropZoneBox"]
19758        [::core::mem::offset_of!(AppWindowDropZoneMsg, adzm_DropZoneBox) - 4usize];
19759    ["Offset of field: AppWindowDropZoneMsg::adzm_ID"]
19760        [::core::mem::offset_of!(AppWindowDropZoneMsg, adzm_ID) - 12usize];
19761    ["Offset of field: AppWindowDropZoneMsg::adzm_UserData"]
19762        [::core::mem::offset_of!(AppWindowDropZoneMsg, adzm_UserData) - 16usize];
19763    ["Offset of field: AppWindowDropZoneMsg::adzm_Action"]
19764        [::core::mem::offset_of!(AppWindowDropZoneMsg, adzm_Action) - 20usize];
19765};
19766#[repr(C, packed(2))]
19767#[derive(Debug, Copy, Clone)]
19768pub struct IconSelectMsg {
19769    pub ism_Length: ULONG,
19770    pub ism_Drawer: BPTR,
19771    pub ism_Name: STRPTR,
19772    pub ism_Type: UWORD,
19773    pub ism_Selected: BOOL,
19774    pub ism_Tags: *mut TagItem,
19775    pub ism_DrawerWindow: *mut Window,
19776    pub ism_ParentWindow: *mut Window,
19777    pub ism_Left: WORD,
19778    pub ism_Top: WORD,
19779    pub ism_Width: WORD,
19780    pub ism_Height: WORD,
19781}
19782#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19783const _: () = {
19784    ["Size of IconSelectMsg"][::core::mem::size_of::<IconSelectMsg>() - 36usize];
19785    ["Alignment of IconSelectMsg"][::core::mem::align_of::<IconSelectMsg>() - 2usize];
19786    ["Offset of field: IconSelectMsg::ism_Length"]
19787        [::core::mem::offset_of!(IconSelectMsg, ism_Length) - 0usize];
19788    ["Offset of field: IconSelectMsg::ism_Drawer"]
19789        [::core::mem::offset_of!(IconSelectMsg, ism_Drawer) - 4usize];
19790    ["Offset of field: IconSelectMsg::ism_Name"]
19791        [::core::mem::offset_of!(IconSelectMsg, ism_Name) - 8usize];
19792    ["Offset of field: IconSelectMsg::ism_Type"]
19793        [::core::mem::offset_of!(IconSelectMsg, ism_Type) - 12usize];
19794    ["Offset of field: IconSelectMsg::ism_Selected"]
19795        [::core::mem::offset_of!(IconSelectMsg, ism_Selected) - 14usize];
19796    ["Offset of field: IconSelectMsg::ism_Tags"]
19797        [::core::mem::offset_of!(IconSelectMsg, ism_Tags) - 16usize];
19798    ["Offset of field: IconSelectMsg::ism_DrawerWindow"]
19799        [::core::mem::offset_of!(IconSelectMsg, ism_DrawerWindow) - 20usize];
19800    ["Offset of field: IconSelectMsg::ism_ParentWindow"]
19801        [::core::mem::offset_of!(IconSelectMsg, ism_ParentWindow) - 24usize];
19802    ["Offset of field: IconSelectMsg::ism_Left"]
19803        [::core::mem::offset_of!(IconSelectMsg, ism_Left) - 28usize];
19804    ["Offset of field: IconSelectMsg::ism_Top"]
19805        [::core::mem::offset_of!(IconSelectMsg, ism_Top) - 30usize];
19806    ["Offset of field: IconSelectMsg::ism_Width"]
19807        [::core::mem::offset_of!(IconSelectMsg, ism_Width) - 32usize];
19808    ["Offset of field: IconSelectMsg::ism_Height"]
19809        [::core::mem::offset_of!(IconSelectMsg, ism_Height) - 34usize];
19810};
19811#[repr(C, packed(2))]
19812#[derive(Debug, Copy, Clone)]
19813pub struct CopyBeginMsg {
19814    pub cbm_Length: ULONG,
19815    pub cbm_Action: LONG,
19816    pub cbm_SourceDrawer: BPTR,
19817    pub cbm_DestinationDrawer: BPTR,
19818}
19819#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19820const _: () = {
19821    ["Size of CopyBeginMsg"][::core::mem::size_of::<CopyBeginMsg>() - 16usize];
19822    ["Alignment of CopyBeginMsg"][::core::mem::align_of::<CopyBeginMsg>() - 2usize];
19823    ["Offset of field: CopyBeginMsg::cbm_Length"]
19824        [::core::mem::offset_of!(CopyBeginMsg, cbm_Length) - 0usize];
19825    ["Offset of field: CopyBeginMsg::cbm_Action"]
19826        [::core::mem::offset_of!(CopyBeginMsg, cbm_Action) - 4usize];
19827    ["Offset of field: CopyBeginMsg::cbm_SourceDrawer"]
19828        [::core::mem::offset_of!(CopyBeginMsg, cbm_SourceDrawer) - 8usize];
19829    ["Offset of field: CopyBeginMsg::cbm_DestinationDrawer"]
19830        [::core::mem::offset_of!(CopyBeginMsg, cbm_DestinationDrawer) - 12usize];
19831};
19832#[repr(C, packed(2))]
19833#[derive(Debug, Copy, Clone)]
19834pub struct CopyDataMsg {
19835    pub cdm_Length: ULONG,
19836    pub cdm_Action: LONG,
19837    pub cdm_SourceLock: BPTR,
19838    pub cdm_SourceName: STRPTR,
19839    pub cdm_DestinationLock: BPTR,
19840    pub cdm_DestinationName: STRPTR,
19841    pub cdm_DestinationX: LONG,
19842    pub cdm_DestinationY: LONG,
19843}
19844#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19845const _: () = {
19846    ["Size of CopyDataMsg"][::core::mem::size_of::<CopyDataMsg>() - 32usize];
19847    ["Alignment of CopyDataMsg"][::core::mem::align_of::<CopyDataMsg>() - 2usize];
19848    ["Offset of field: CopyDataMsg::cdm_Length"]
19849        [::core::mem::offset_of!(CopyDataMsg, cdm_Length) - 0usize];
19850    ["Offset of field: CopyDataMsg::cdm_Action"]
19851        [::core::mem::offset_of!(CopyDataMsg, cdm_Action) - 4usize];
19852    ["Offset of field: CopyDataMsg::cdm_SourceLock"]
19853        [::core::mem::offset_of!(CopyDataMsg, cdm_SourceLock) - 8usize];
19854    ["Offset of field: CopyDataMsg::cdm_SourceName"]
19855        [::core::mem::offset_of!(CopyDataMsg, cdm_SourceName) - 12usize];
19856    ["Offset of field: CopyDataMsg::cdm_DestinationLock"]
19857        [::core::mem::offset_of!(CopyDataMsg, cdm_DestinationLock) - 16usize];
19858    ["Offset of field: CopyDataMsg::cdm_DestinationName"]
19859        [::core::mem::offset_of!(CopyDataMsg, cdm_DestinationName) - 20usize];
19860    ["Offset of field: CopyDataMsg::cdm_DestinationX"]
19861        [::core::mem::offset_of!(CopyDataMsg, cdm_DestinationX) - 24usize];
19862    ["Offset of field: CopyDataMsg::cdm_DestinationY"]
19863        [::core::mem::offset_of!(CopyDataMsg, cdm_DestinationY) - 28usize];
19864};
19865#[repr(C, packed(2))]
19866#[derive(Debug, Copy, Clone)]
19867pub struct CopyEndMsg {
19868    pub cem_Length: ULONG,
19869    pub cem_Action: LONG,
19870}
19871#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19872const _: () = {
19873    ["Size of CopyEndMsg"][::core::mem::size_of::<CopyEndMsg>() - 8usize];
19874    ["Alignment of CopyEndMsg"][::core::mem::align_of::<CopyEndMsg>() - 2usize];
19875    ["Offset of field: CopyEndMsg::cem_Length"]
19876        [::core::mem::offset_of!(CopyEndMsg, cem_Length) - 0usize];
19877    ["Offset of field: CopyEndMsg::cem_Action"]
19878        [::core::mem::offset_of!(CopyEndMsg, cem_Action) - 4usize];
19879};
19880#[repr(C, packed(2))]
19881#[derive(Debug, Copy, Clone)]
19882pub struct DeleteBeginMsg {
19883    pub dbm_Length: ULONG,
19884    pub dbm_Action: LONG,
19885}
19886#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19887const _: () = {
19888    ["Size of DeleteBeginMsg"][::core::mem::size_of::<DeleteBeginMsg>() - 8usize];
19889    ["Alignment of DeleteBeginMsg"][::core::mem::align_of::<DeleteBeginMsg>() - 2usize];
19890    ["Offset of field: DeleteBeginMsg::dbm_Length"]
19891        [::core::mem::offset_of!(DeleteBeginMsg, dbm_Length) - 0usize];
19892    ["Offset of field: DeleteBeginMsg::dbm_Action"]
19893        [::core::mem::offset_of!(DeleteBeginMsg, dbm_Action) - 4usize];
19894};
19895#[repr(C, packed(2))]
19896#[derive(Debug, Copy, Clone)]
19897pub struct DeleteDataMsg {
19898    pub ddm_Length: ULONG,
19899    pub ddm_Action: LONG,
19900    pub ddm_Lock: BPTR,
19901    pub ddm_Name: STRPTR,
19902}
19903#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19904const _: () = {
19905    ["Size of DeleteDataMsg"][::core::mem::size_of::<DeleteDataMsg>() - 16usize];
19906    ["Alignment of DeleteDataMsg"][::core::mem::align_of::<DeleteDataMsg>() - 2usize];
19907    ["Offset of field: DeleteDataMsg::ddm_Length"]
19908        [::core::mem::offset_of!(DeleteDataMsg, ddm_Length) - 0usize];
19909    ["Offset of field: DeleteDataMsg::ddm_Action"]
19910        [::core::mem::offset_of!(DeleteDataMsg, ddm_Action) - 4usize];
19911    ["Offset of field: DeleteDataMsg::ddm_Lock"]
19912        [::core::mem::offset_of!(DeleteDataMsg, ddm_Lock) - 8usize];
19913    ["Offset of field: DeleteDataMsg::ddm_Name"]
19914        [::core::mem::offset_of!(DeleteDataMsg, ddm_Name) - 12usize];
19915};
19916#[repr(C, packed(2))]
19917#[derive(Debug, Copy, Clone)]
19918pub struct DeleteEndMsg {
19919    pub dem_Length: ULONG,
19920    pub dem_Action: LONG,
19921}
19922#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19923const _: () = {
19924    ["Size of DeleteEndMsg"][::core::mem::size_of::<DeleteEndMsg>() - 8usize];
19925    ["Alignment of DeleteEndMsg"][::core::mem::align_of::<DeleteEndMsg>() - 2usize];
19926    ["Offset of field: DeleteEndMsg::dem_Length"]
19927        [::core::mem::offset_of!(DeleteEndMsg, dem_Length) - 0usize];
19928    ["Offset of field: DeleteEndMsg::dem_Action"]
19929        [::core::mem::offset_of!(DeleteEndMsg, dem_Action) - 4usize];
19930};
19931#[repr(C, packed(2))]
19932#[derive(Debug, Copy, Clone)]
19933pub struct TextInputMsg {
19934    pub tim_Length: ULONG,
19935    pub tim_Action: LONG,
19936    pub tim_Prompt: STRPTR,
19937}
19938#[allow(clippy::unnecessary_operation, clippy::identity_op)]
19939const _: () = {
19940    ["Size of TextInputMsg"][::core::mem::size_of::<TextInputMsg>() - 12usize];
19941    ["Alignment of TextInputMsg"][::core::mem::align_of::<TextInputMsg>() - 2usize];
19942    ["Offset of field: TextInputMsg::tim_Length"]
19943        [::core::mem::offset_of!(TextInputMsg, tim_Length) - 0usize];
19944    ["Offset of field: TextInputMsg::tim_Action"]
19945        [::core::mem::offset_of!(TextInputMsg, tim_Action) - 4usize];
19946    ["Offset of field: TextInputMsg::tim_Prompt"]
19947        [::core::mem::offset_of!(TextInputMsg, tim_Prompt) - 8usize];
19948};
19949/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
19950pub unsafe fn LockAmigaGuideBase(AmigaGuideBase: *mut Library, handle: APTR) -> LONG {
19951    let asm_ret_value: LONG;
19952    unsafe {
19953        asm!(
19954            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
19955            ".short 0x40c0",
19956            "move.l %a6, -(%sp)",
19957            "move.l {basereg}, %a6",
19958            ".short 0x4eae", // jsr -36(a6)
19959            ".short -36",
19960            "move.l (%sp)+, %a6",
19961            "movem.l (%sp)+, %d1/%a0-%a1",
19962            basereg = in(reg) AmigaGuideBase,
19963            in("a0") handle,
19964            out("d0") asm_ret_value,
19965        );
19966    }
19967    asm_ret_value
19968}
19969
19970/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
19971pub unsafe fn UnlockAmigaGuideBase(AmigaGuideBase: *mut Library, key: LONG) {
19972    unsafe {
19973        asm!(
19974            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
19975            ".short 0xc0c0",
19976            "move.l %a6, -(%sp)",
19977            "move.l {basereg}, %a6",
19978            ".short 0x4eae", // jsr -42(a6)
19979            ".short -42",
19980            "move.l (%sp)+, %a6",
19981            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
19982            basereg = in(reg) AmigaGuideBase,
19983            in("d0") key,
19984        );
19985    }
19986}
19987
19988/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
19989pub unsafe fn OpenAmigaGuideA(
19990    AmigaGuideBase: *mut Library,
19991    nag: *mut NewAmigaGuide,
19992    attrs: *const TagItem,
19993) -> APTR {
19994    let asm_ret_value: APTR;
19995    unsafe {
19996        asm!(
19997            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
19998            ".short 0x40c0",
19999            "move.l %a6, -(%sp)",
20000            "move.l {basereg}, %a6",
20001            ".short 0x4eae", // jsr -54(a6)
20002            ".short -54",
20003            "move.l (%sp)+, %a6",
20004            "movem.l (%sp)+, %d1/%a0-%a1",
20005            basereg = in(reg) AmigaGuideBase,
20006            in("a0") nag,
20007            in("a1") attrs,
20008            out("d0") asm_ret_value,
20009        );
20010    }
20011    asm_ret_value
20012}
20013
20014/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20015pub unsafe fn OpenAmigaGuideAsyncA(
20016    AmigaGuideBase: *mut Library,
20017    nag: *mut NewAmigaGuide,
20018    attrs: *const TagItem,
20019) -> APTR {
20020    let asm_ret_value: APTR;
20021    unsafe {
20022        asm!(
20023            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20024            ".short 0x40c0",
20025            "move.l %a6, -(%sp)",
20026            "move.l {basereg}, %a6",
20027            ".short 0x4eae", // jsr -60(a6)
20028            ".short -60",
20029            "move.l (%sp)+, %a6",
20030            "movem.l (%sp)+, %d1/%a0-%a1",
20031            basereg = in(reg) AmigaGuideBase,
20032            in("a0") nag,
20033            in("d0") attrs,
20034            lateout("d0") asm_ret_value,
20035        );
20036    }
20037    asm_ret_value
20038}
20039
20040/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20041pub unsafe fn CloseAmigaGuide(AmigaGuideBase: *mut Library, cl: APTR) {
20042    unsafe {
20043        asm!(
20044            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20045            ".short 0xc0c0",
20046            "move.l %a6, -(%sp)",
20047            "move.l {basereg}, %a6",
20048            ".short 0x4eae", // jsr -66(a6)
20049            ".short -66",
20050            "move.l (%sp)+, %a6",
20051            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20052            basereg = in(reg) AmigaGuideBase,
20053            in("a0") cl,
20054        );
20055    }
20056}
20057
20058/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20059pub unsafe fn AmigaGuideSignal(AmigaGuideBase: *mut Library, cl: APTR) -> ULONG {
20060    let asm_ret_value: ULONG;
20061    unsafe {
20062        asm!(
20063            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20064            ".short 0x40c0",
20065            "move.l %a6, -(%sp)",
20066            "move.l {basereg}, %a6",
20067            ".short 0x4eae", // jsr -72(a6)
20068            ".short -72",
20069            "move.l (%sp)+, %a6",
20070            "movem.l (%sp)+, %d1/%a0-%a1",
20071            basereg = in(reg) AmigaGuideBase,
20072            in("a0") cl,
20073            out("d0") asm_ret_value,
20074        );
20075    }
20076    asm_ret_value
20077}
20078
20079/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20080pub unsafe fn GetAmigaGuideMsg(AmigaGuideBase: *mut Library, cl: APTR) -> *mut AmigaGuideMsg {
20081    let asm_ret_value: *mut AmigaGuideMsg;
20082    unsafe {
20083        asm!(
20084            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20085            ".short 0x40c0",
20086            "move.l %a6, -(%sp)",
20087            "move.l {basereg}, %a6",
20088            ".short 0x4eae", // jsr -78(a6)
20089            ".short -78",
20090            "move.l (%sp)+, %a6",
20091            "movem.l (%sp)+, %d1/%a0-%a1",
20092            basereg = in(reg) AmigaGuideBase,
20093            in("a0") cl,
20094            out("d0") asm_ret_value,
20095        );
20096    }
20097    asm_ret_value
20098}
20099
20100/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20101pub unsafe fn ReplyAmigaGuideMsg(AmigaGuideBase: *mut Library, amsg: *mut AmigaGuideMsg) {
20102    unsafe {
20103        asm!(
20104            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20105            ".short 0xc0c0",
20106            "move.l %a6, -(%sp)",
20107            "move.l {basereg}, %a6",
20108            ".short 0x4eae", // jsr -84(a6)
20109            ".short -84",
20110            "move.l (%sp)+, %a6",
20111            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20112            basereg = in(reg) AmigaGuideBase,
20113            in("a0") amsg,
20114        );
20115    }
20116}
20117
20118/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20119pub unsafe fn SetAmigaGuideContextA(
20120    AmigaGuideBase: *mut Library,
20121    cl: APTR,
20122    id: ULONG,
20123    attrs: *const TagItem,
20124) -> LONG {
20125    let asm_ret_value: LONG;
20126    unsafe {
20127        asm!(
20128            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20129            ".short 0x40c0",
20130            "move.l %a6, -(%sp)",
20131            "move.l {basereg}, %a6",
20132            ".short 0x4eae", // jsr -90(a6)
20133            ".short -90",
20134            "move.l (%sp)+, %a6",
20135            "movem.l (%sp)+, %d1/%a0-%a1",
20136            basereg = in(reg) AmigaGuideBase,
20137            in("a0") cl,
20138            in("d0") id,
20139            in("d1") attrs,
20140            lateout("d0") asm_ret_value,
20141        );
20142    }
20143    asm_ret_value
20144}
20145
20146/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20147pub unsafe fn SendAmigaGuideContextA(
20148    AmigaGuideBase: *mut Library,
20149    cl: APTR,
20150    attrs: *const TagItem,
20151) -> LONG {
20152    let asm_ret_value: LONG;
20153    unsafe {
20154        asm!(
20155            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20156            ".short 0x40c0",
20157            "move.l %a6, -(%sp)",
20158            "move.l {basereg}, %a6",
20159            ".short 0x4eae", // jsr -96(a6)
20160            ".short -96",
20161            "move.l (%sp)+, %a6",
20162            "movem.l (%sp)+, %d1/%a0-%a1",
20163            basereg = in(reg) AmigaGuideBase,
20164            in("a0") cl,
20165            in("d0") attrs,
20166            lateout("d0") asm_ret_value,
20167        );
20168    }
20169    asm_ret_value
20170}
20171
20172/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20173pub unsafe fn SendAmigaGuideCmdA(
20174    AmigaGuideBase: *mut Library,
20175    cl: APTR,
20176    cmd: STRPTR,
20177    attrs: *const TagItem,
20178) -> LONG {
20179    let asm_ret_value: LONG;
20180    unsafe {
20181        asm!(
20182            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20183            ".short 0x40c0",
20184            "move.l %a6, -(%sp)",
20185            "move.l {basereg}, %a6",
20186            ".short 0x4eae", // jsr -102(a6)
20187            ".short -102",
20188            "move.l (%sp)+, %a6",
20189            "movem.l (%sp)+, %d1/%a0-%a1",
20190            basereg = in(reg) AmigaGuideBase,
20191            in("a0") cl,
20192            in("d0") cmd,
20193            in("d1") attrs,
20194            lateout("d0") asm_ret_value,
20195        );
20196    }
20197    asm_ret_value
20198}
20199
20200/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20201pub unsafe fn SetAmigaGuideAttrsA(
20202    AmigaGuideBase: *mut Library,
20203    cl: APTR,
20204    attrs: *const TagItem,
20205) -> LONG {
20206    let asm_ret_value: LONG;
20207    unsafe {
20208        asm!(
20209            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20210            ".short 0x40c0",
20211            "move.l %a6, -(%sp)",
20212            "move.l {basereg}, %a6",
20213            ".short 0x4eae", // jsr -108(a6)
20214            ".short -108",
20215            "move.l (%sp)+, %a6",
20216            "movem.l (%sp)+, %d1/%a0-%a1",
20217            basereg = in(reg) AmigaGuideBase,
20218            in("a0") cl,
20219            in("a1") attrs,
20220            out("d0") asm_ret_value,
20221        );
20222    }
20223    asm_ret_value
20224}
20225
20226/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20227pub unsafe fn GetAmigaGuideAttr(
20228    AmigaGuideBase: *mut Library,
20229    tag1: Tag,
20230    cl: APTR,
20231    storage: *mut ULONG,
20232) -> LONG {
20233    let asm_ret_value: LONG;
20234    unsafe {
20235        asm!(
20236            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20237            ".short 0x40c0",
20238            "move.l %a6, -(%sp)",
20239            "move.l {basereg}, %a6",
20240            ".short 0x4eae", // jsr -114(a6)
20241            ".short -114",
20242            "move.l (%sp)+, %a6",
20243            "movem.l (%sp)+, %d1/%a0-%a1",
20244            basereg = in(reg) AmigaGuideBase,
20245            in("d0") tag1,
20246            in("a0") cl,
20247            in("a1") storage,
20248            lateout("d0") asm_ret_value,
20249        );
20250    }
20251    asm_ret_value
20252}
20253
20254/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20255pub unsafe fn LoadXRef(AmigaGuideBase: *mut Library, lock: BPTR, name: STRPTR) -> LONG {
20256    let asm_ret_value: LONG;
20257    unsafe {
20258        asm!(
20259            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20260            ".short 0x40c0",
20261            "move.l %a6, -(%sp)",
20262            "move.l {basereg}, %a6",
20263            ".short 0x4eae", // jsr -126(a6)
20264            ".short -126",
20265            "move.l (%sp)+, %a6",
20266            "movem.l (%sp)+, %d1/%a0-%a1",
20267            basereg = in(reg) AmigaGuideBase,
20268            in("a0") lock,
20269            in("a1") name,
20270            out("d0") asm_ret_value,
20271        );
20272    }
20273    asm_ret_value
20274}
20275
20276/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20277pub unsafe fn ExpungeXRef(AmigaGuideBase: *mut Library) {
20278    unsafe {
20279        asm!(
20280            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20281            ".short 0xc0c0",
20282            "move.l %a6, -(%sp)",
20283            "move.l {basereg}, %a6",
20284            ".short 0x4eae", // jsr -132(a6)
20285            ".short -132",
20286            "move.l (%sp)+, %a6",
20287            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20288            basereg = in(reg) AmigaGuideBase,
20289        );
20290    }
20291}
20292
20293/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20294pub unsafe fn AddAmigaGuideHostA(
20295    AmigaGuideBase: *mut Library,
20296    h: *mut Hook,
20297    name: CONST_STRPTR,
20298    attrs: *const TagItem,
20299) -> APTR {
20300    let asm_ret_value: APTR;
20301    unsafe {
20302        asm!(
20303            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20304            ".short 0x40c0",
20305            "move.l %a6, -(%sp)",
20306            "move.l {basereg}, %a6",
20307            ".short 0x4eae", // jsr -138(a6)
20308            ".short -138",
20309            "move.l (%sp)+, %a6",
20310            "movem.l (%sp)+, %d1/%a0-%a1",
20311            basereg = in(reg) AmigaGuideBase,
20312            in("a0") h,
20313            in("d0") name,
20314            in("a1") attrs,
20315            lateout("d0") asm_ret_value,
20316        );
20317    }
20318    asm_ret_value
20319}
20320
20321/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20322pub unsafe fn RemoveAmigaGuideHostA(
20323    AmigaGuideBase: *mut Library,
20324    hh: APTR,
20325    attrs: *const TagItem,
20326) -> LONG {
20327    let asm_ret_value: LONG;
20328    unsafe {
20329        asm!(
20330            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20331            ".short 0x40c0",
20332            "move.l %a6, -(%sp)",
20333            "move.l {basereg}, %a6",
20334            ".short 0x4eae", // jsr -144(a6)
20335            ".short -144",
20336            "move.l (%sp)+, %a6",
20337            "movem.l (%sp)+, %d1/%a0-%a1",
20338            basereg = in(reg) AmigaGuideBase,
20339            in("a0") hh,
20340            in("a1") attrs,
20341            out("d0") asm_ret_value,
20342        );
20343    }
20344    asm_ret_value
20345}
20346
20347/// libname: "amigaguide.library" (V40) (Kickstart 3.1)
20348pub unsafe fn GetAmigaGuideString(AmigaGuideBase: *mut Library, id: LONG) -> STRPTR {
20349    let asm_ret_value: STRPTR;
20350    unsafe {
20351        asm!(
20352            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20353            ".short 0x40c0",
20354            "move.l %a6, -(%sp)",
20355            "move.l {basereg}, %a6",
20356            ".short 0x4eae", // jsr -210(a6)
20357            ".short -210",
20358            "move.l (%sp)+, %a6",
20359            "movem.l (%sp)+, %d1/%a0-%a1",
20360            basereg = in(reg) AmigaGuideBase,
20361            in("d0") id,
20362            lateout("d0") asm_ret_value,
20363        );
20364    }
20365    asm_ret_value
20366}
20367
20368/// libname: "arexx.class" (V40) (Kickstart 3.1)
20369pub unsafe fn AREXX_GetClass(ARexxBase: *mut ::core::ffi::c_void) -> *mut Class {
20370    let asm_ret_value: *mut Class;
20371    unsafe {
20372        asm!(
20373            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20374            ".short 0x40c0",
20375            "move.l %a6, -(%sp)",
20376            "move.l {basereg}, %a6",
20377            ".short 0x4eae", // jsr -30(a6)
20378            ".short -30",
20379            "move.l (%sp)+, %a6",
20380            "movem.l (%sp)+, %d1/%a0-%a1",
20381            basereg = in(reg) ARexxBase,
20382            out("d0") asm_ret_value,
20383        );
20384    }
20385    asm_ret_value
20386}
20387
20388/// libname: "asl.library" (V36) (Kickstart 2.0)
20389pub unsafe fn AllocFileRequest(AslBase: *mut Library) -> *mut FileRequester {
20390    let asm_ret_value: *mut FileRequester;
20391    unsafe {
20392        asm!(
20393            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20394            ".short 0x40c0",
20395            "move.l %a6, -(%sp)",
20396            "move.l {basereg}, %a6",
20397            ".short 0x4eae", // jsr -30(a6)
20398            ".short -30",
20399            "move.l (%sp)+, %a6",
20400            "movem.l (%sp)+, %d1/%a0-%a1",
20401            basereg = in(reg) AslBase,
20402            out("d0") asm_ret_value,
20403        );
20404    }
20405    asm_ret_value
20406}
20407
20408/// libname: "asl.library" (V36) (Kickstart 2.0)
20409pub unsafe fn FreeFileRequest(AslBase: *mut Library, fileReq: *mut FileRequester) {
20410    unsafe {
20411        asm!(
20412            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20413            ".short 0xc0c0",
20414            "move.l %a6, -(%sp)",
20415            "move.l {basereg}, %a6",
20416            ".short 0x4eae", // jsr -36(a6)
20417            ".short -36",
20418            "move.l (%sp)+, %a6",
20419            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20420            basereg = in(reg) AslBase,
20421            in("a0") fileReq,
20422        );
20423    }
20424}
20425
20426/// libname: "asl.library" (V36) (Kickstart 2.0)
20427pub unsafe fn RequestFile(AslBase: *mut Library, fileReq: *mut FileRequester) -> BOOL {
20428    let asm_ret_value: BOOL;
20429    unsafe {
20430        asm!(
20431            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20432            ".short 0x40c0",
20433            "move.l %a6, -(%sp)",
20434            "move.l {basereg}, %a6",
20435            ".short 0x4eae", // jsr -42(a6)
20436            ".short -42",
20437            "move.l (%sp)+, %a6",
20438            "movem.l (%sp)+, %d1/%a0-%a1",
20439            basereg = in(reg) AslBase,
20440            in("a0") fileReq,
20441            out("d0") asm_ret_value,
20442        );
20443    }
20444    asm_ret_value
20445}
20446
20447/// libname: "asl.library" (V36) (Kickstart 2.0)
20448pub unsafe fn AllocAslRequest(
20449    AslBase: *mut Library,
20450    reqType: ULONG,
20451    tagList: *const TagItem,
20452) -> APTR {
20453    let asm_ret_value: APTR;
20454    unsafe {
20455        asm!(
20456            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20457            ".short 0x40c0",
20458            "move.l %a6, -(%sp)",
20459            "move.l {basereg}, %a6",
20460            ".short 0x4eae", // jsr -48(a6)
20461            ".short -48",
20462            "move.l (%sp)+, %a6",
20463            "movem.l (%sp)+, %d1/%a0-%a1",
20464            basereg = in(reg) AslBase,
20465            in("d0") reqType,
20466            in("a0") tagList,
20467            lateout("d0") asm_ret_value,
20468        );
20469    }
20470    asm_ret_value
20471}
20472
20473/// libname: "asl.library" (V36) (Kickstart 2.0)
20474pub unsafe fn FreeAslRequest(AslBase: *mut Library, requester: APTR) {
20475    unsafe {
20476        asm!(
20477            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20478            ".short 0xc0c0",
20479            "move.l %a6, -(%sp)",
20480            "move.l {basereg}, %a6",
20481            ".short 0x4eae", // jsr -54(a6)
20482            ".short -54",
20483            "move.l (%sp)+, %a6",
20484            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20485            basereg = in(reg) AslBase,
20486            in("a0") requester,
20487        );
20488    }
20489}
20490
20491/// libname: "asl.library" (V36) (Kickstart 2.0)
20492pub unsafe fn AslRequest(AslBase: *mut Library, requester: APTR, tagList: *const TagItem) -> BOOL {
20493    let asm_ret_value: BOOL;
20494    unsafe {
20495        asm!(
20496            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20497            ".short 0x40c0",
20498            "move.l %a6, -(%sp)",
20499            "move.l {basereg}, %a6",
20500            ".short 0x4eae", // jsr -60(a6)
20501            ".short -60",
20502            "move.l (%sp)+, %a6",
20503            "movem.l (%sp)+, %d1/%a0-%a1",
20504            basereg = in(reg) AslBase,
20505            in("a0") requester,
20506            in("a1") tagList,
20507            out("d0") asm_ret_value,
20508        );
20509    }
20510    asm_ret_value
20511}
20512
20513/// libname: "asl.library" (V44) (Kickstart 3.5 / 1999)
20514pub unsafe fn AbortAslRequest(AslBase: *mut Library, requester: APTR) {
20515    unsafe {
20516        asm!(
20517            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20518            ".short 0xc0c0",
20519            "move.l %a6, -(%sp)",
20520            "move.l {basereg}, %a6",
20521            ".short 0x4eae", // jsr -78(a6)
20522            ".short -78",
20523            "move.l (%sp)+, %a6",
20524            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20525            basereg = in(reg) AslBase,
20526            in("a0") requester,
20527        );
20528    }
20529}
20530
20531/// libname: "asl.library" (V44) (Kickstart 3.5 / 1999)
20532pub unsafe fn ActivateAslRequest(AslBase: *mut Library, requester: APTR) {
20533    unsafe {
20534        asm!(
20535            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20536            ".short 0xc0c0",
20537            "move.l %a6, -(%sp)",
20538            "move.l {basereg}, %a6",
20539            ".short 0x4eae", // jsr -84(a6)
20540            ".short -84",
20541            "move.l (%sp)+, %a6",
20542            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20543            basereg = in(reg) AslBase,
20544            in("a0") requester,
20545        );
20546    }
20547}
20548
20549/// libname: "battclock.resource" (V36) (Kickstart 2.0)
20550pub unsafe fn ResetBattClock(BattClockBase: *mut ::core::ffi::c_void) {
20551    unsafe {
20552        asm!(
20553            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20554            ".short 0xc0c0",
20555            "move.l %a6, -(%sp)",
20556            "move.l {basereg}, %a6",
20557            ".short 0x4eae", // jsr -6(a6)
20558            ".short -6",
20559            "move.l (%sp)+, %a6",
20560            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20561            basereg = in(reg) BattClockBase,
20562        );
20563    }
20564}
20565
20566/// libname: "battclock.resource" (V36) (Kickstart 2.0)
20567pub unsafe fn ReadBattClock(BattClockBase: *mut ::core::ffi::c_void) -> ULONG {
20568    let asm_ret_value: ULONG;
20569    unsafe {
20570        asm!(
20571            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20572            ".short 0x40c0",
20573            "move.l %a6, -(%sp)",
20574            "move.l {basereg}, %a6",
20575            ".short 0x4eae", // jsr -12(a6)
20576            ".short -12",
20577            "move.l (%sp)+, %a6",
20578            "movem.l (%sp)+, %d1/%a0-%a1",
20579            basereg = in(reg) BattClockBase,
20580            out("d0") asm_ret_value,
20581        );
20582    }
20583    asm_ret_value
20584}
20585
20586/// libname: "battclock.resource" (V36) (Kickstart 2.0)
20587pub unsafe fn WriteBattClock(BattClockBase: *mut ::core::ffi::c_void, time: ULONG) {
20588    unsafe {
20589        asm!(
20590            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20591            ".short 0xc0c0",
20592            "move.l %a6, -(%sp)",
20593            "move.l {basereg}, %a6",
20594            ".short 0x4eae", // jsr -18(a6)
20595            ".short -18",
20596            "move.l (%sp)+, %a6",
20597            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20598            basereg = in(reg) BattClockBase,
20599            in("d0") time,
20600        );
20601    }
20602}
20603
20604/// libname: "battmem.resource" (V36) (Kickstart 2.0)
20605pub unsafe fn ObtainBattSemaphore(BattMemBase: *mut ::core::ffi::c_void) {
20606    unsafe {
20607        asm!(
20608            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20609            ".short 0xc0c0",
20610            "move.l %a6, -(%sp)",
20611            "move.l {basereg}, %a6",
20612            ".short 0x4eae", // jsr -6(a6)
20613            ".short -6",
20614            "move.l (%sp)+, %a6",
20615            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20616            basereg = in(reg) BattMemBase,
20617        );
20618    }
20619}
20620
20621/// libname: "battmem.resource" (V36) (Kickstart 2.0)
20622pub unsafe fn ReleaseBattSemaphore(BattMemBase: *mut ::core::ffi::c_void) {
20623    unsafe {
20624        asm!(
20625            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20626            ".short 0xc0c0",
20627            "move.l %a6, -(%sp)",
20628            "move.l {basereg}, %a6",
20629            ".short 0x4eae", // jsr -12(a6)
20630            ".short -12",
20631            "move.l (%sp)+, %a6",
20632            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20633            basereg = in(reg) BattMemBase,
20634        );
20635    }
20636}
20637
20638/// libname: "battmem.resource" (V36) (Kickstart 2.0)
20639pub unsafe fn ReadBattMem(
20640    BattMemBase: *mut ::core::ffi::c_void,
20641    buffer: APTR,
20642    offset: ULONG,
20643    length: ULONG,
20644) -> ULONG {
20645    let asm_ret_value: ULONG;
20646    unsafe {
20647        asm!(
20648            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20649            ".short 0x40c0",
20650            "move.l %a6, -(%sp)",
20651            "move.l {basereg}, %a6",
20652            ".short 0x4eae", // jsr -18(a6)
20653            ".short -18",
20654            "move.l (%sp)+, %a6",
20655            "movem.l (%sp)+, %d1/%a0-%a1",
20656            basereg = in(reg) BattMemBase,
20657            in("a0") buffer,
20658            in("d0") offset,
20659            in("d1") length,
20660            lateout("d0") asm_ret_value,
20661        );
20662    }
20663    asm_ret_value
20664}
20665
20666/// libname: "battmem.resource" (V36) (Kickstart 2.0)
20667pub unsafe fn WriteBattMem(
20668    BattMemBase: *mut ::core::ffi::c_void,
20669    buffer: CONST_APTR,
20670    offset: ULONG,
20671    length: ULONG,
20672) -> ULONG {
20673    let asm_ret_value: ULONG;
20674    unsafe {
20675        asm!(
20676            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20677            ".short 0x40c0",
20678            "move.l %a6, -(%sp)",
20679            "move.l {basereg}, %a6",
20680            ".short 0x4eae", // jsr -24(a6)
20681            ".short -24",
20682            "move.l (%sp)+, %a6",
20683            "movem.l (%sp)+, %d1/%a0-%a1",
20684            basereg = in(reg) BattMemBase,
20685            in("a0") buffer,
20686            in("d0") offset,
20687            in("d1") length,
20688            lateout("d0") asm_ret_value,
20689        );
20690    }
20691    asm_ret_value
20692}
20693
20694/// libname: "bevel.image" (V40) (Kickstart 3.1)
20695pub unsafe fn BEVEL_GetClass(BevelBase: *mut ::core::ffi::c_void) -> *mut Class {
20696    let asm_ret_value: *mut Class;
20697    unsafe {
20698        asm!(
20699            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20700            ".short 0x40c0",
20701            "move.l %a6, -(%sp)",
20702            "move.l {basereg}, %a6",
20703            ".short 0x4eae", // jsr -30(a6)
20704            ".short -30",
20705            "move.l (%sp)+, %a6",
20706            "movem.l (%sp)+, %d1/%a0-%a1",
20707            basereg = in(reg) BevelBase,
20708            out("d0") asm_ret_value,
20709        );
20710    }
20711    asm_ret_value
20712}
20713
20714/// libname: "bitmap.image" (V40) (Kickstart 3.1)
20715pub unsafe fn BITMAP_GetClass(BitMapBase: *mut ::core::ffi::c_void) -> *mut Class {
20716    let asm_ret_value: *mut Class;
20717    unsafe {
20718        asm!(
20719            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20720            ".short 0x40c0",
20721            "move.l %a6, -(%sp)",
20722            "move.l {basereg}, %a6",
20723            ".short 0x4eae", // jsr -30(a6)
20724            ".short -30",
20725            "move.l (%sp)+, %a6",
20726            "movem.l (%sp)+, %d1/%a0-%a1",
20727            basereg = in(reg) BitMapBase,
20728            out("d0") asm_ret_value,
20729        );
20730    }
20731    asm_ret_value
20732}
20733
20734/// libname: "bullet.library" (V38) (Kickstart 2.1)
20735pub unsafe fn OpenEngine(BulletBase: *mut Library) -> *mut GlyphEngine {
20736    let asm_ret_value: *mut GlyphEngine;
20737    unsafe {
20738        asm!(
20739            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20740            ".short 0x40c0",
20741            "move.l %a6, -(%sp)",
20742            "move.l {basereg}, %a6",
20743            ".short 0x4eae", // jsr -30(a6)
20744            ".short -30",
20745            "move.l (%sp)+, %a6",
20746            "movem.l (%sp)+, %d1/%a0-%a1",
20747            basereg = in(reg) BulletBase,
20748            out("d0") asm_ret_value,
20749        );
20750    }
20751    asm_ret_value
20752}
20753
20754/// libname: "bullet.library" (V38) (Kickstart 2.1)
20755pub unsafe fn CloseEngine(BulletBase: *mut Library, glyphEngine: *mut GlyphEngine) {
20756    unsafe {
20757        asm!(
20758            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20759            ".short 0xc0c0",
20760            "move.l %a6, -(%sp)",
20761            "move.l {basereg}, %a6",
20762            ".short 0x4eae", // jsr -36(a6)
20763            ".short -36",
20764            "move.l (%sp)+, %a6",
20765            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20766            basereg = in(reg) BulletBase,
20767            in("a0") glyphEngine,
20768        );
20769    }
20770}
20771
20772/// libname: "bullet.library" (V38) (Kickstart 2.1)
20773pub unsafe fn SetInfoA(
20774    BulletBase: *mut Library,
20775    glyphEngine: *mut GlyphEngine,
20776    tagList: *const TagItem,
20777) -> ULONG {
20778    let asm_ret_value: ULONG;
20779    unsafe {
20780        asm!(
20781            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20782            ".short 0x40c0",
20783            "move.l %a6, -(%sp)",
20784            "move.l {basereg}, %a6",
20785            ".short 0x4eae", // jsr -42(a6)
20786            ".short -42",
20787            "move.l (%sp)+, %a6",
20788            "movem.l (%sp)+, %d1/%a0-%a1",
20789            basereg = in(reg) BulletBase,
20790            in("a0") glyphEngine,
20791            in("a1") tagList,
20792            out("d0") asm_ret_value,
20793        );
20794    }
20795    asm_ret_value
20796}
20797
20798/// libname: "bullet.library" (V38) (Kickstart 2.1)
20799pub unsafe fn ObtainInfoA(
20800    BulletBase: *mut Library,
20801    glyphEngine: *mut GlyphEngine,
20802    tagList: *const TagItem,
20803) -> ULONG {
20804    let asm_ret_value: ULONG;
20805    unsafe {
20806        asm!(
20807            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20808            ".short 0x40c0",
20809            "move.l %a6, -(%sp)",
20810            "move.l {basereg}, %a6",
20811            ".short 0x4eae", // jsr -48(a6)
20812            ".short -48",
20813            "move.l (%sp)+, %a6",
20814            "movem.l (%sp)+, %d1/%a0-%a1",
20815            basereg = in(reg) BulletBase,
20816            in("a0") glyphEngine,
20817            in("a1") tagList,
20818            out("d0") asm_ret_value,
20819        );
20820    }
20821    asm_ret_value
20822}
20823
20824/// libname: "bullet.library" (V38) (Kickstart 2.1)
20825pub unsafe fn ReleaseInfoA(
20826    BulletBase: *mut Library,
20827    glyphEngine: *mut GlyphEngine,
20828    tagList: *const TagItem,
20829) -> ULONG {
20830    let asm_ret_value: ULONG;
20831    unsafe {
20832        asm!(
20833            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20834            ".short 0x40c0",
20835            "move.l %a6, -(%sp)",
20836            "move.l {basereg}, %a6",
20837            ".short 0x4eae", // jsr -54(a6)
20838            ".short -54",
20839            "move.l (%sp)+, %a6",
20840            "movem.l (%sp)+, %d1/%a0-%a1",
20841            basereg = in(reg) BulletBase,
20842            in("a0") glyphEngine,
20843            in("a1") tagList,
20844            out("d0") asm_ret_value,
20845        );
20846    }
20847    asm_ret_value
20848}
20849
20850/// libname: "button.gadget" (V40) (Kickstart 3.1)
20851pub unsafe fn BUTTON_GetClass(ButtonBase: *mut ::core::ffi::c_void) -> *mut Class {
20852    let asm_ret_value: *mut Class;
20853    unsafe {
20854        asm!(
20855            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20856            ".short 0x40c0",
20857            "move.l %a6, -(%sp)",
20858            "move.l {basereg}, %a6",
20859            ".short 0x4eae", // jsr -30(a6)
20860            ".short -30",
20861            "move.l (%sp)+, %a6",
20862            "movem.l (%sp)+, %d1/%a0-%a1",
20863            basereg = in(reg) ButtonBase,
20864            out("d0") asm_ret_value,
20865        );
20866    }
20867    asm_ret_value
20868}
20869
20870/// libname: "card.resource" (V40) (Kickstart 3.1)
20871pub unsafe fn OwnCard(
20872    CardResource: *mut ::core::ffi::c_void,
20873    handle: *mut CardHandle,
20874) -> *mut CardHandle {
20875    let asm_ret_value: *mut CardHandle;
20876    unsafe {
20877        asm!(
20878            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20879            ".short 0x40c0",
20880            "move.l %a6, -(%sp)",
20881            "move.l {basereg}, %a6",
20882            ".short 0x4eae", // jsr -6(a6)
20883            ".short -6",
20884            "move.l (%sp)+, %a6",
20885            "movem.l (%sp)+, %d1/%a0-%a1",
20886            basereg = in(reg) CardResource,
20887            in("a1") handle,
20888            out("d0") asm_ret_value,
20889        );
20890    }
20891    asm_ret_value
20892}
20893
20894/// libname: "card.resource" (V40) (Kickstart 3.1)
20895pub unsafe fn ReleaseCard(
20896    CardResource: *mut ::core::ffi::c_void,
20897    handle: *mut CardHandle,
20898    flags: ULONG,
20899) {
20900    unsafe {
20901        asm!(
20902            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
20903            ".short 0xc0c0",
20904            "move.l %a6, -(%sp)",
20905            "move.l {basereg}, %a6",
20906            ".short 0x4eae", // jsr -12(a6)
20907            ".short -12",
20908            "move.l (%sp)+, %a6",
20909            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
20910            basereg = in(reg) CardResource,
20911            in("a1") handle,
20912            in("d0") flags,
20913        );
20914    }
20915}
20916
20917/// libname: "card.resource" (V40) (Kickstart 3.1)
20918pub unsafe fn GetCardMap(CardResource: *mut ::core::ffi::c_void) -> *mut CardMemoryMap {
20919    let asm_ret_value: *mut CardMemoryMap;
20920    unsafe {
20921        asm!(
20922            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20923            ".short 0x40c0",
20924            "move.l %a6, -(%sp)",
20925            "move.l {basereg}, %a6",
20926            ".short 0x4eae", // jsr -18(a6)
20927            ".short -18",
20928            "move.l (%sp)+, %a6",
20929            "movem.l (%sp)+, %d1/%a0-%a1",
20930            basereg = in(reg) CardResource,
20931            out("d0") asm_ret_value,
20932        );
20933    }
20934    asm_ret_value
20935}
20936
20937/// libname: "card.resource" (V40) (Kickstart 3.1)
20938pub unsafe fn BeginCardAccess(
20939    CardResource: *mut ::core::ffi::c_void,
20940    handle: *mut CardHandle,
20941) -> BOOL {
20942    let asm_ret_value: BOOL;
20943    unsafe {
20944        asm!(
20945            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20946            ".short 0x40c0",
20947            "move.l %a6, -(%sp)",
20948            "move.l {basereg}, %a6",
20949            ".short 0x4eae", // jsr -24(a6)
20950            ".short -24",
20951            "move.l (%sp)+, %a6",
20952            "movem.l (%sp)+, %d1/%a0-%a1",
20953            basereg = in(reg) CardResource,
20954            in("a1") handle,
20955            out("d0") asm_ret_value,
20956        );
20957    }
20958    asm_ret_value
20959}
20960
20961/// libname: "card.resource" (V40) (Kickstart 3.1)
20962pub unsafe fn EndCardAccess(
20963    CardResource: *mut ::core::ffi::c_void,
20964    handle: *mut CardHandle,
20965) -> BOOL {
20966    let asm_ret_value: BOOL;
20967    unsafe {
20968        asm!(
20969            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20970            ".short 0x40c0",
20971            "move.l %a6, -(%sp)",
20972            "move.l {basereg}, %a6",
20973            ".short 0x4eae", // jsr -30(a6)
20974            ".short -30",
20975            "move.l (%sp)+, %a6",
20976            "movem.l (%sp)+, %d1/%a0-%a1",
20977            basereg = in(reg) CardResource,
20978            in("a1") handle,
20979            out("d0") asm_ret_value,
20980        );
20981    }
20982    asm_ret_value
20983}
20984
20985/// libname: "card.resource" (V40) (Kickstart 3.1)
20986pub unsafe fn ReadCardStatus(CardResource: *mut ::core::ffi::c_void) -> UBYTE {
20987    let asm_ret_value: i16;
20988    unsafe {
20989        asm!(
20990            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
20991            ".short 0x40c0",
20992            "move.l %a6, -(%sp)",
20993            "move.l {basereg}, %a6",
20994            ".short 0x4eae", // jsr -36(a6)
20995            ".short -36",
20996            "and.w #0x00ff, %d0",
20997            "move.l (%sp)+, %a6",
20998            "movem.l (%sp)+, %d1/%a0-%a1",
20999            basereg = in(reg) CardResource,
21000            out("d0") asm_ret_value,
21001        );
21002    }
21003    asm_ret_value as u8
21004}
21005
21006/// libname: "card.resource" (V40) (Kickstart 3.1)
21007pub unsafe fn CardResetRemove(
21008    CardResource: *mut ::core::ffi::c_void,
21009    handle: *mut CardHandle,
21010    flag: ULONG,
21011) -> BOOL {
21012    let asm_ret_value: BOOL;
21013    unsafe {
21014        asm!(
21015            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21016            ".short 0x40c0",
21017            "move.l %a6, -(%sp)",
21018            "move.l {basereg}, %a6",
21019            ".short 0x4eae", // jsr -42(a6)
21020            ".short -42",
21021            "move.l (%sp)+, %a6",
21022            "movem.l (%sp)+, %d1/%a0-%a1",
21023            basereg = in(reg) CardResource,
21024            in("a1") handle,
21025            in("d0") flag,
21026            lateout("d0") asm_ret_value,
21027        );
21028    }
21029    asm_ret_value
21030}
21031
21032/// libname: "card.resource" (V40) (Kickstart 3.1)
21033pub unsafe fn CardMiscControl(
21034    CardResource: *mut ::core::ffi::c_void,
21035    handle: *mut CardHandle,
21036    control_bits: ULONG,
21037) -> UBYTE {
21038    let asm_ret_value: i16;
21039    unsafe {
21040        asm!(
21041            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21042            ".short 0x40c0",
21043            "move.l %a6, -(%sp)",
21044            "move.l {basereg}, %a6",
21045            ".short 0x4eae", // jsr -48(a6)
21046            ".short -48",
21047            "and.w #0x00ff, %d0",
21048            "move.l (%sp)+, %a6",
21049            "movem.l (%sp)+, %d1/%a0-%a1",
21050            basereg = in(reg) CardResource,
21051            in("a1") handle,
21052            in("d1") control_bits,
21053            out("d0") asm_ret_value,
21054        );
21055    }
21056    asm_ret_value as u8
21057}
21058
21059/// libname: "card.resource" (V40) (Kickstart 3.1)
21060pub unsafe fn CardAccessSpeed(
21061    CardResource: *mut ::core::ffi::c_void,
21062    handle: *mut CardHandle,
21063    nanoseconds: ULONG,
21064) -> ULONG {
21065    let asm_ret_value: ULONG;
21066    unsafe {
21067        asm!(
21068            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21069            ".short 0x40c0",
21070            "move.l %a6, -(%sp)",
21071            "move.l {basereg}, %a6",
21072            ".short 0x4eae", // jsr -54(a6)
21073            ".short -54",
21074            "move.l (%sp)+, %a6",
21075            "movem.l (%sp)+, %d1/%a0-%a1",
21076            basereg = in(reg) CardResource,
21077            in("a1") handle,
21078            in("d0") nanoseconds,
21079            lateout("d0") asm_ret_value,
21080        );
21081    }
21082    asm_ret_value
21083}
21084
21085/// libname: "card.resource" (V40) (Kickstart 3.1)
21086pub unsafe fn CardProgramVoltage(
21087    CardResource: *mut ::core::ffi::c_void,
21088    handle: *mut CardHandle,
21089    voltage: ULONG,
21090) -> LONG {
21091    let asm_ret_value: LONG;
21092    unsafe {
21093        asm!(
21094            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21095            ".short 0x40c0",
21096            "move.l %a6, -(%sp)",
21097            "move.l {basereg}, %a6",
21098            ".short 0x4eae", // jsr -60(a6)
21099            ".short -60",
21100            "move.l (%sp)+, %a6",
21101            "movem.l (%sp)+, %d1/%a0-%a1",
21102            basereg = in(reg) CardResource,
21103            in("a1") handle,
21104            in("d0") voltage,
21105            lateout("d0") asm_ret_value,
21106        );
21107    }
21108    asm_ret_value
21109}
21110
21111/// libname: "card.resource" (V40) (Kickstart 3.1)
21112pub unsafe fn CardResetCard(
21113    CardResource: *mut ::core::ffi::c_void,
21114    handle: *mut CardHandle,
21115) -> BOOL {
21116    let asm_ret_value: BOOL;
21117    unsafe {
21118        asm!(
21119            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21120            ".short 0x40c0",
21121            "move.l %a6, -(%sp)",
21122            "move.l {basereg}, %a6",
21123            ".short 0x4eae", // jsr -66(a6)
21124            ".short -66",
21125            "move.l (%sp)+, %a6",
21126            "movem.l (%sp)+, %d1/%a0-%a1",
21127            basereg = in(reg) CardResource,
21128            in("a1") handle,
21129            out("d0") asm_ret_value,
21130        );
21131    }
21132    asm_ret_value
21133}
21134
21135/// libname: "card.resource" (V40) (Kickstart 3.1)
21136pub unsafe fn CopyTuple(
21137    CardResource: *mut ::core::ffi::c_void,
21138    handle: *mut CardHandle,
21139    buffer: *mut UBYTE,
21140    tuplecode: ULONG,
21141    size: ULONG,
21142) -> BOOL {
21143    let asm_ret_value: BOOL;
21144    unsafe {
21145        asm!(
21146            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21147            ".short 0x40c0",
21148            "move.l %a6, -(%sp)",
21149            "move.l {basereg}, %a6",
21150            ".short 0x4eae", // jsr -72(a6)
21151            ".short -72",
21152            "move.l (%sp)+, %a6",
21153            "movem.l (%sp)+, %d1/%a0-%a1",
21154            basereg = in(reg) CardResource,
21155            in("a1") handle,
21156            in("a0") buffer,
21157            in("d1") tuplecode,
21158            in("d0") size,
21159            lateout("d0") asm_ret_value,
21160        );
21161    }
21162    asm_ret_value
21163}
21164
21165/// libname: "card.resource" (V40) (Kickstart 3.1)
21166pub unsafe fn DeviceTuple(
21167    CardResource: *mut ::core::ffi::c_void,
21168    tuple_data: *const UBYTE,
21169    storage: *mut DeviceTData,
21170) -> ULONG {
21171    let asm_ret_value: ULONG;
21172    unsafe {
21173        asm!(
21174            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21175            ".short 0x40c0",
21176            "move.l %a6, -(%sp)",
21177            "move.l {basereg}, %a6",
21178            ".short 0x4eae", // jsr -78(a6)
21179            ".short -78",
21180            "move.l (%sp)+, %a6",
21181            "movem.l (%sp)+, %d1/%a0-%a1",
21182            basereg = in(reg) CardResource,
21183            in("a0") tuple_data,
21184            in("a1") storage,
21185            out("d0") asm_ret_value,
21186        );
21187    }
21188    asm_ret_value
21189}
21190
21191/// libname: "card.resource" (V40) (Kickstart 3.1)
21192pub unsafe fn IfAmigaXIP(
21193    CardResource: *mut ::core::ffi::c_void,
21194    handle: *mut CardHandle,
21195) -> *mut Resident {
21196    let asm_ret_value: *mut Resident;
21197    unsafe {
21198        asm!(
21199            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21200            ".short 0x40c0",
21201            "move.l %a6, -(%sp)",
21202            "move.l {basereg}, %a6",
21203            ".short 0x4eae", // jsr -84(a6)
21204            ".short -84",
21205            "move.l (%sp)+, %a6",
21206            "movem.l (%sp)+, %d1/%a0-%a1",
21207            basereg = in(reg) CardResource,
21208            in("a2") handle,
21209            out("d0") asm_ret_value,
21210        );
21211    }
21212    asm_ret_value
21213}
21214
21215/// libname: "card.resource" (V40) (Kickstart 3.1)
21216pub unsafe fn CardForceChange(CardResource: *mut ::core::ffi::c_void) -> BOOL {
21217    let asm_ret_value: BOOL;
21218    unsafe {
21219        asm!(
21220            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21221            ".short 0x40c0",
21222            "move.l %a6, -(%sp)",
21223            "move.l {basereg}, %a6",
21224            ".short 0x4eae", // jsr -90(a6)
21225            ".short -90",
21226            "move.l (%sp)+, %a6",
21227            "movem.l (%sp)+, %d1/%a0-%a1",
21228            basereg = in(reg) CardResource,
21229            out("d0") asm_ret_value,
21230        );
21231    }
21232    asm_ret_value
21233}
21234
21235/// libname: "card.resource" (V40) (Kickstart 3.1)
21236pub unsafe fn CardChangeCount(CardResource: *mut ::core::ffi::c_void) -> ULONG {
21237    let asm_ret_value: ULONG;
21238    unsafe {
21239        asm!(
21240            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21241            ".short 0x40c0",
21242            "move.l %a6, -(%sp)",
21243            "move.l {basereg}, %a6",
21244            ".short 0x4eae", // jsr -96(a6)
21245            ".short -96",
21246            "move.l (%sp)+, %a6",
21247            "movem.l (%sp)+, %d1/%a0-%a1",
21248            basereg = in(reg) CardResource,
21249            out("d0") asm_ret_value,
21250        );
21251    }
21252    asm_ret_value
21253}
21254
21255/// libname: "card.resource" (V40) (Kickstart 3.1)
21256pub unsafe fn CardInterface(CardResource: *mut ::core::ffi::c_void) -> ULONG {
21257    let asm_ret_value: ULONG;
21258    unsafe {
21259        asm!(
21260            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21261            ".short 0x40c0",
21262            "move.l %a6, -(%sp)",
21263            "move.l {basereg}, %a6",
21264            ".short 0x4eae", // jsr -102(a6)
21265            ".short -102",
21266            "move.l (%sp)+, %a6",
21267            "movem.l (%sp)+, %d1/%a0-%a1",
21268            basereg = in(reg) CardResource,
21269            out("d0") asm_ret_value,
21270        );
21271    }
21272    asm_ret_value
21273}
21274
21275/// libname: "checkbox.gadget" (V40) (Kickstart 3.1)
21276pub unsafe fn CHECKBOX_GetClass(CheckBoxBase: *mut ::core::ffi::c_void) -> *mut Class {
21277    let asm_ret_value: *mut Class;
21278    unsafe {
21279        asm!(
21280            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21281            ".short 0x40c0",
21282            "move.l %a6, -(%sp)",
21283            "move.l {basereg}, %a6",
21284            ".short 0x4eae", // jsr -30(a6)
21285            ".short -30",
21286            "move.l (%sp)+, %a6",
21287            "movem.l (%sp)+, %d1/%a0-%a1",
21288            basereg = in(reg) CheckBoxBase,
21289            out("d0") asm_ret_value,
21290        );
21291    }
21292    asm_ret_value
21293}
21294
21295/// libname: "chooser.gadget" (V40) (Kickstart 3.1)
21296pub unsafe fn CHOOSER_GetClass(ChooserBase: *mut ::core::ffi::c_void) -> *mut Class {
21297    let asm_ret_value: *mut Class;
21298    unsafe {
21299        asm!(
21300            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21301            ".short 0x40c0",
21302            "move.l %a6, -(%sp)",
21303            "move.l {basereg}, %a6",
21304            ".short 0x4eae", // jsr -30(a6)
21305            ".short -30",
21306            "move.l (%sp)+, %a6",
21307            "movem.l (%sp)+, %d1/%a0-%a1",
21308            basereg = in(reg) ChooserBase,
21309            out("d0") asm_ret_value,
21310        );
21311    }
21312    asm_ret_value
21313}
21314
21315/// libname: "chooser.gadget" (V40) (Kickstart 3.1)
21316pub unsafe fn AllocChooserNodeA(
21317    ChooserBase: *mut ::core::ffi::c_void,
21318    tags: *mut TagItem,
21319) -> *mut Node {
21320    let asm_ret_value: *mut Node;
21321    unsafe {
21322        asm!(
21323            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21324            ".short 0x40c0",
21325            "move.l %a6, -(%sp)",
21326            "move.l {basereg}, %a6",
21327            ".short 0x4eae", // jsr -36(a6)
21328            ".short -36",
21329            "move.l (%sp)+, %a6",
21330            "movem.l (%sp)+, %d1/%a0-%a1",
21331            basereg = in(reg) ChooserBase,
21332            in("a0") tags,
21333            out("d0") asm_ret_value,
21334        );
21335    }
21336    asm_ret_value
21337}
21338
21339/// libname: "chooser.gadget" (V40) (Kickstart 3.1)
21340pub unsafe fn FreeChooserNode(ChooserBase: *mut ::core::ffi::c_void, node: *mut Node) {
21341    unsafe {
21342        asm!(
21343            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21344            ".short 0xc0c0",
21345            "move.l %a6, -(%sp)",
21346            "move.l {basereg}, %a6",
21347            ".short 0x4eae", // jsr -42(a6)
21348            ".short -42",
21349            "move.l (%sp)+, %a6",
21350            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21351            basereg = in(reg) ChooserBase,
21352            in("a0") node,
21353        );
21354    }
21355}
21356
21357/// libname: "chooser.gadget" (V40) (Kickstart 3.1)
21358pub unsafe fn SetChooserNodeAttrsA(
21359    ChooserBase: *mut ::core::ffi::c_void,
21360    node: *mut Node,
21361    tags: *mut TagItem,
21362) {
21363    unsafe {
21364        asm!(
21365            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21366            ".short 0xc0c0",
21367            "move.l %a6, -(%sp)",
21368            "move.l {basereg}, %a6",
21369            ".short 0x4eae", // jsr -48(a6)
21370            ".short -48",
21371            "move.l (%sp)+, %a6",
21372            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21373            basereg = in(reg) ChooserBase,
21374            in("a0") node,
21375            in("a1") tags,
21376        );
21377    }
21378}
21379
21380/// libname: "chooser.gadget" (V40) (Kickstart 3.1)
21381pub unsafe fn GetChooserNodeAttrsA(
21382    ChooserBase: *mut ::core::ffi::c_void,
21383    node: *mut Node,
21384    tags: *mut TagItem,
21385) {
21386    unsafe {
21387        asm!(
21388            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21389            ".short 0xc0c0",
21390            "move.l %a6, -(%sp)",
21391            "move.l {basereg}, %a6",
21392            ".short 0x4eae", // jsr -54(a6)
21393            ".short -54",
21394            "move.l (%sp)+, %a6",
21395            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21396            basereg = in(reg) ChooserBase,
21397            in("a0") node,
21398            in("a1") tags,
21399        );
21400    }
21401}
21402
21403/// libname: "chooser.gadget" (V40) (Kickstart 3.1)
21404pub unsafe fn ShowChooser(
21405    ChooserBase: *mut ::core::ffi::c_void,
21406    o: *mut Object,
21407    w: *mut Window,
21408    xpos: ULONG,
21409    ypos: ULONG,
21410) -> ULONG {
21411    let asm_ret_value: ULONG;
21412    unsafe {
21413        asm!(
21414            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21415            ".short 0x40c0",
21416            "move.l %a6, -(%sp)",
21417            "move.l {basereg}, %a6",
21418            ".short 0x4eae", // jsr -60(a6)
21419            ".short -60",
21420            "move.l (%sp)+, %a6",
21421            "movem.l (%sp)+, %d1/%a0-%a1",
21422            basereg = in(reg) ChooserBase,
21423            in("a0") o,
21424            in("a1") w,
21425            in("d0") xpos,
21426            in("d1") ypos,
21427            lateout("d0") asm_ret_value,
21428        );
21429    }
21430    asm_ret_value
21431}
21432
21433/// libname: "chooser.gadget" (V40) (Kickstart 3.1)
21434pub unsafe fn HideChooser(ChooserBase: *mut ::core::ffi::c_void, o: *mut Object, w: *mut Window) {
21435    unsafe {
21436        asm!(
21437            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21438            ".short 0xc0c0",
21439            "move.l %a6, -(%sp)",
21440            "move.l {basereg}, %a6",
21441            ".short 0x4eae", // jsr -66(a6)
21442            ".short -66",
21443            "move.l (%sp)+, %a6",
21444            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21445            basereg = in(reg) ChooserBase,
21446            in("a0") o,
21447            in("a1") w,
21448        );
21449    }
21450}
21451
21452/// libname: "ciaa.resource|ciab.resource"
21453pub unsafe fn AddICRVector(
21454    resource: *mut Library,
21455    iCRBit: LONG,
21456    interrupt: *mut Interrupt,
21457) -> *mut Interrupt {
21458    let asm_ret_value: *mut Interrupt;
21459    unsafe {
21460        asm!(
21461            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21462            ".short 0x40c0",
21463            "move.l %a6, -(%sp)",
21464            "move.l {basereg}, %a6",
21465            ".short 0x4eae", // jsr -6(a6)
21466            ".short -6",
21467            "move.l (%sp)+, %a6",
21468            "movem.l (%sp)+, %d1/%a0-%a1",
21469            basereg = in(reg) resource,
21470            in("d0") iCRBit,
21471            in("a1") interrupt,
21472            lateout("d0") asm_ret_value,
21473        );
21474    }
21475    asm_ret_value
21476}
21477
21478/// libname: "ciaa.resource|ciab.resource"
21479pub unsafe fn RemICRVector(resource: *mut Library, iCRBit: LONG, interrupt: *mut Interrupt) {
21480    unsafe {
21481        asm!(
21482            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21483            ".short 0xc0c0",
21484            "move.l %a6, -(%sp)",
21485            "move.l {basereg}, %a6",
21486            ".short 0x4eae", // jsr -12(a6)
21487            ".short -12",
21488            "move.l (%sp)+, %a6",
21489            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21490            basereg = in(reg) resource,
21491            in("d0") iCRBit,
21492            in("a1") interrupt,
21493        );
21494    }
21495}
21496
21497/// libname: "ciaa.resource|ciab.resource"
21498pub unsafe fn AbleICR(resource: *mut Library, mask: LONG) -> WORD {
21499    let asm_ret_value: WORD;
21500    unsafe {
21501        asm!(
21502            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21503            ".short 0x40c0",
21504            "move.l %a6, -(%sp)",
21505            "move.l {basereg}, %a6",
21506            ".short 0x4eae", // jsr -18(a6)
21507            ".short -18",
21508            "move.l (%sp)+, %a6",
21509            "movem.l (%sp)+, %d1/%a0-%a1",
21510            basereg = in(reg) resource,
21511            in("d0") mask,
21512            lateout("d0") asm_ret_value,
21513        );
21514    }
21515    asm_ret_value
21516}
21517
21518/// libname: "ciaa.resource|ciab.resource"
21519pub unsafe fn SetICR(resource: *mut Library, mask: LONG) -> WORD {
21520    let asm_ret_value: WORD;
21521    unsafe {
21522        asm!(
21523            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21524            ".short 0x40c0",
21525            "move.l %a6, -(%sp)",
21526            "move.l {basereg}, %a6",
21527            ".short 0x4eae", // jsr -24(a6)
21528            ".short -24",
21529            "move.l (%sp)+, %a6",
21530            "movem.l (%sp)+, %d1/%a0-%a1",
21531            basereg = in(reg) resource,
21532            in("d0") mask,
21533            lateout("d0") asm_ret_value,
21534        );
21535    }
21536    asm_ret_value
21537}
21538
21539/// libname: "clicktab.gadget" (V40) (Kickstart 3.1)
21540pub unsafe fn CLICKTAB_GetClass(ClickTabBase: *mut ::core::ffi::c_void) -> *mut Class {
21541    let asm_ret_value: *mut Class;
21542    unsafe {
21543        asm!(
21544            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21545            ".short 0x40c0",
21546            "move.l %a6, -(%sp)",
21547            "move.l {basereg}, %a6",
21548            ".short 0x4eae", // jsr -30(a6)
21549            ".short -30",
21550            "move.l (%sp)+, %a6",
21551            "movem.l (%sp)+, %d1/%a0-%a1",
21552            basereg = in(reg) ClickTabBase,
21553            out("d0") asm_ret_value,
21554        );
21555    }
21556    asm_ret_value
21557}
21558
21559/// libname: "clicktab.gadget" (V40) (Kickstart 3.1)
21560pub unsafe fn AllocClickTabNodeA(
21561    ClickTabBase: *mut ::core::ffi::c_void,
21562    tags: *mut TagItem,
21563) -> *mut Node {
21564    let asm_ret_value: *mut Node;
21565    unsafe {
21566        asm!(
21567            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21568            ".short 0x40c0",
21569            "move.l %a6, -(%sp)",
21570            "move.l {basereg}, %a6",
21571            ".short 0x4eae", // jsr -36(a6)
21572            ".short -36",
21573            "move.l (%sp)+, %a6",
21574            "movem.l (%sp)+, %d1/%a0-%a1",
21575            basereg = in(reg) ClickTabBase,
21576            in("a0") tags,
21577            out("d0") asm_ret_value,
21578        );
21579    }
21580    asm_ret_value
21581}
21582
21583/// libname: "clicktab.gadget" (V40) (Kickstart 3.1)
21584pub unsafe fn FreeClickTabNode(ClickTabBase: *mut ::core::ffi::c_void, node: *mut Node) {
21585    unsafe {
21586        asm!(
21587            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21588            ".short 0xc0c0",
21589            "move.l %a6, -(%sp)",
21590            "move.l {basereg}, %a6",
21591            ".short 0x4eae", // jsr -42(a6)
21592            ".short -42",
21593            "move.l (%sp)+, %a6",
21594            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21595            basereg = in(reg) ClickTabBase,
21596            in("a0") node,
21597        );
21598    }
21599}
21600
21601/// libname: "clicktab.gadget" (V40) (Kickstart 3.1)
21602pub unsafe fn SetClickTabNodeAttrsA(
21603    ClickTabBase: *mut ::core::ffi::c_void,
21604    node: *mut Node,
21605    tags: *mut TagItem,
21606) {
21607    unsafe {
21608        asm!(
21609            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21610            ".short 0xc0c0",
21611            "move.l %a6, -(%sp)",
21612            "move.l {basereg}, %a6",
21613            ".short 0x4eae", // jsr -48(a6)
21614            ".short -48",
21615            "move.l (%sp)+, %a6",
21616            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21617            basereg = in(reg) ClickTabBase,
21618            in("a0") node,
21619            in("a1") tags,
21620        );
21621    }
21622}
21623
21624/// libname: "clicktab.gadget" (V40) (Kickstart 3.1)
21625pub unsafe fn GetClickTabNodeAttrsA(
21626    ClickTabBase: *mut ::core::ffi::c_void,
21627    node: *mut Node,
21628    tags: *mut TagItem,
21629) {
21630    unsafe {
21631        asm!(
21632            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21633            ".short 0xc0c0",
21634            "move.l %a6, -(%sp)",
21635            "move.l {basereg}, %a6",
21636            ".short 0x4eae", // jsr -54(a6)
21637            ".short -54",
21638            "move.l (%sp)+, %a6",
21639            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21640            basereg = in(reg) ClickTabBase,
21641            in("a0") node,
21642            in("a1") tags,
21643        );
21644    }
21645}
21646
21647/// libname: "colorwheel.gadget" (V39) (Kickstart 3.0)
21648pub unsafe fn ConvertHSBToRGB(
21649    ColorWheelBase: *mut ::core::ffi::c_void,
21650    hsb: *const ColorWheelHSB,
21651    rgb: *mut ColorWheelRGB,
21652) {
21653    unsafe {
21654        asm!(
21655            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21656            ".short 0xc0c0",
21657            "move.l %a6, -(%sp)",
21658            "move.l {basereg}, %a6",
21659            ".short 0x4eae", // jsr -30(a6)
21660            ".short -30",
21661            "move.l (%sp)+, %a6",
21662            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21663            basereg = in(reg) ColorWheelBase,
21664            in("a0") hsb,
21665            in("a1") rgb,
21666        );
21667    }
21668}
21669
21670/// libname: "colorwheel.gadget" (V39) (Kickstart 3.0)
21671pub unsafe fn ConvertRGBToHSB(
21672    ColorWheelBase: *mut ::core::ffi::c_void,
21673    rgb: *const ColorWheelRGB,
21674    hsb: *mut ColorWheelHSB,
21675) {
21676    unsafe {
21677        asm!(
21678            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21679            ".short 0xc0c0",
21680            "move.l %a6, -(%sp)",
21681            "move.l {basereg}, %a6",
21682            ".short 0x4eae", // jsr -36(a6)
21683            ".short -36",
21684            "move.l (%sp)+, %a6",
21685            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21686            basereg = in(reg) ColorWheelBase,
21687            in("a0") rgb,
21688            in("a1") hsb,
21689        );
21690    }
21691}
21692
21693/// libname: "commodities.library" (V36) (Kickstart 2.0)
21694pub unsafe fn CreateCxObj(
21695    CxBase: *mut Library,
21696    type_: ULONG,
21697    arg1: LONG,
21698    arg2: LONG,
21699) -> *mut CxObj {
21700    let asm_ret_value: *mut CxObj;
21701    unsafe {
21702        asm!(
21703            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21704            ".short 0x40c0",
21705            "move.l %a6, -(%sp)",
21706            "move.l {basereg}, %a6",
21707            ".short 0x4eae", // jsr -30(a6)
21708            ".short -30",
21709            "move.l (%sp)+, %a6",
21710            "movem.l (%sp)+, %d1/%a0-%a1",
21711            basereg = in(reg) CxBase,
21712            in("d0") type_,
21713            in("a0") arg1,
21714            in("a1") arg2,
21715            lateout("d0") asm_ret_value,
21716        );
21717    }
21718    asm_ret_value
21719}
21720
21721/// libname: "commodities.library" (V36) (Kickstart 2.0)
21722pub unsafe fn CxBroker(CxBase: *mut Library, nb: *const NewBroker, error: *mut LONG) -> *mut CxObj {
21723    let asm_ret_value: *mut CxObj;
21724    unsafe {
21725        asm!(
21726            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21727            ".short 0x40c0",
21728            "move.l %a6, -(%sp)",
21729            "move.l {basereg}, %a6",
21730            ".short 0x4eae", // jsr -36(a6)
21731            ".short -36",
21732            "move.l (%sp)+, %a6",
21733            "movem.l (%sp)+, %d1/%a0-%a1",
21734            basereg = in(reg) CxBase,
21735            in("a0") nb,
21736            in("d0") error,
21737            lateout("d0") asm_ret_value,
21738        );
21739    }
21740    asm_ret_value
21741}
21742
21743/// libname: "commodities.library" (V36) (Kickstart 2.0)
21744pub unsafe fn ActivateCxObj(CxBase: *mut Library, co: *mut CxObj, flag: LONG) -> LONG {
21745    let asm_ret_value: LONG;
21746    unsafe {
21747        asm!(
21748            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21749            ".short 0x40c0",
21750            "move.l %a6, -(%sp)",
21751            "move.l {basereg}, %a6",
21752            ".short 0x4eae", // jsr -42(a6)
21753            ".short -42",
21754            "move.l (%sp)+, %a6",
21755            "movem.l (%sp)+, %d1/%a0-%a1",
21756            basereg = in(reg) CxBase,
21757            in("a0") co,
21758            in("d0") flag,
21759            lateout("d0") asm_ret_value,
21760        );
21761    }
21762    asm_ret_value
21763}
21764
21765/// libname: "commodities.library" (V36) (Kickstart 2.0)
21766pub unsafe fn DeleteCxObj(CxBase: *mut Library, co: *mut CxObj) {
21767    unsafe {
21768        asm!(
21769            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21770            ".short 0xc0c0",
21771            "move.l %a6, -(%sp)",
21772            "move.l {basereg}, %a6",
21773            ".short 0x4eae", // jsr -48(a6)
21774            ".short -48",
21775            "move.l (%sp)+, %a6",
21776            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21777            basereg = in(reg) CxBase,
21778            in("a0") co,
21779        );
21780    }
21781}
21782
21783/// libname: "commodities.library" (V36) (Kickstart 2.0)
21784pub unsafe fn DeleteCxObjAll(CxBase: *mut Library, co: *mut CxObj) {
21785    unsafe {
21786        asm!(
21787            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21788            ".short 0xc0c0",
21789            "move.l %a6, -(%sp)",
21790            "move.l {basereg}, %a6",
21791            ".short 0x4eae", // jsr -54(a6)
21792            ".short -54",
21793            "move.l (%sp)+, %a6",
21794            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21795            basereg = in(reg) CxBase,
21796            in("a0") co,
21797        );
21798    }
21799}
21800
21801/// libname: "commodities.library" (V36) (Kickstart 2.0)
21802pub unsafe fn CxObjType(CxBase: *mut Library, co: *const CxObj) -> ULONG {
21803    let asm_ret_value: ULONG;
21804    unsafe {
21805        asm!(
21806            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21807            ".short 0x40c0",
21808            "move.l %a6, -(%sp)",
21809            "move.l {basereg}, %a6",
21810            ".short 0x4eae", // jsr -60(a6)
21811            ".short -60",
21812            "move.l (%sp)+, %a6",
21813            "movem.l (%sp)+, %d1/%a0-%a1",
21814            basereg = in(reg) CxBase,
21815            in("a0") co,
21816            out("d0") asm_ret_value,
21817        );
21818    }
21819    asm_ret_value
21820}
21821
21822/// libname: "commodities.library" (V36) (Kickstart 2.0)
21823pub unsafe fn CxObjError(CxBase: *mut Library, co: *const CxObj) -> LONG {
21824    let asm_ret_value: LONG;
21825    unsafe {
21826        asm!(
21827            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21828            ".short 0x40c0",
21829            "move.l %a6, -(%sp)",
21830            "move.l {basereg}, %a6",
21831            ".short 0x4eae", // jsr -66(a6)
21832            ".short -66",
21833            "move.l (%sp)+, %a6",
21834            "movem.l (%sp)+, %d1/%a0-%a1",
21835            basereg = in(reg) CxBase,
21836            in("a0") co,
21837            out("d0") asm_ret_value,
21838        );
21839    }
21840    asm_ret_value
21841}
21842
21843/// libname: "commodities.library" (V36) (Kickstart 2.0)
21844pub unsafe fn ClearCxObjError(CxBase: *mut Library, co: *mut CxObj) {
21845    unsafe {
21846        asm!(
21847            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21848            ".short 0xc0c0",
21849            "move.l %a6, -(%sp)",
21850            "move.l {basereg}, %a6",
21851            ".short 0x4eae", // jsr -72(a6)
21852            ".short -72",
21853            "move.l (%sp)+, %a6",
21854            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21855            basereg = in(reg) CxBase,
21856            in("a0") co,
21857        );
21858    }
21859}
21860
21861/// libname: "commodities.library" (V36) (Kickstart 2.0)
21862pub unsafe fn SetCxObjPri(CxBase: *mut Library, co: *mut CxObj, pri: LONG) -> LONG {
21863    let asm_ret_value: LONG;
21864    unsafe {
21865        asm!(
21866            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
21867            ".short 0x40c0",
21868            "move.l %a6, -(%sp)",
21869            "move.l {basereg}, %a6",
21870            ".short 0x4eae", // jsr -78(a6)
21871            ".short -78",
21872            "move.l (%sp)+, %a6",
21873            "movem.l (%sp)+, %d1/%a0-%a1",
21874            basereg = in(reg) CxBase,
21875            in("a0") co,
21876            in("d0") pri,
21877            lateout("d0") asm_ret_value,
21878        );
21879    }
21880    asm_ret_value
21881}
21882
21883/// libname: "commodities.library" (V36) (Kickstart 2.0)
21884pub unsafe fn AttachCxObj(CxBase: *mut Library, headObj: *mut CxObj, co: *mut CxObj) {
21885    unsafe {
21886        asm!(
21887            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21888            ".short 0xc0c0",
21889            "move.l %a6, -(%sp)",
21890            "move.l {basereg}, %a6",
21891            ".short 0x4eae", // jsr -84(a6)
21892            ".short -84",
21893            "move.l (%sp)+, %a6",
21894            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21895            basereg = in(reg) CxBase,
21896            in("a0") headObj,
21897            in("a1") co,
21898        );
21899    }
21900}
21901
21902/// libname: "commodities.library" (V36) (Kickstart 2.0)
21903pub unsafe fn EnqueueCxObj(CxBase: *mut Library, headObj: *mut CxObj, co: *mut CxObj) {
21904    unsafe {
21905        asm!(
21906            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21907            ".short 0xc0c0",
21908            "move.l %a6, -(%sp)",
21909            "move.l {basereg}, %a6",
21910            ".short 0x4eae", // jsr -90(a6)
21911            ".short -90",
21912            "move.l (%sp)+, %a6",
21913            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21914            basereg = in(reg) CxBase,
21915            in("a0") headObj,
21916            in("a1") co,
21917        );
21918    }
21919}
21920
21921/// libname: "commodities.library" (V36) (Kickstart 2.0)
21922pub unsafe fn InsertCxObj(
21923    CxBase: *mut Library,
21924    headObj: *mut CxObj,
21925    co: *mut CxObj,
21926    pred: *mut CxObj,
21927) {
21928    unsafe {
21929        asm!(
21930            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21931            ".short 0xc0c0",
21932            "move.l %a6, -(%sp)",
21933            "move.l {basereg}, %a6",
21934            ".short 0x4eae", // jsr -96(a6)
21935            ".short -96",
21936            "move.l (%sp)+, %a6",
21937            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21938            basereg = in(reg) CxBase,
21939            in("a0") headObj,
21940            in("a1") co,
21941            in("a2") pred,
21942        );
21943    }
21944}
21945
21946/// libname: "commodities.library" (V36) (Kickstart 2.0)
21947pub unsafe fn RemoveCxObj(CxBase: *mut Library, co: *mut CxObj) {
21948    unsafe {
21949        asm!(
21950            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21951            ".short 0xc0c0",
21952            "move.l %a6, -(%sp)",
21953            "move.l {basereg}, %a6",
21954            ".short 0x4eae", // jsr -102(a6)
21955            ".short -102",
21956            "move.l (%sp)+, %a6",
21957            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21958            basereg = in(reg) CxBase,
21959            in("a0") co,
21960        );
21961    }
21962}
21963
21964/// libname: "commodities.library" (V36) (Kickstart 2.0)
21965pub unsafe fn SetTranslate(CxBase: *mut Library, translator: *mut CxObj, events: *mut InputEvent) {
21966    unsafe {
21967        asm!(
21968            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21969            ".short 0xc0c0",
21970            "move.l %a6, -(%sp)",
21971            "move.l {basereg}, %a6",
21972            ".short 0x4eae", // jsr -114(a6)
21973            ".short -114",
21974            "move.l (%sp)+, %a6",
21975            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21976            basereg = in(reg) CxBase,
21977            in("a0") translator,
21978            in("a1") events,
21979        );
21980    }
21981}
21982
21983/// libname: "commodities.library" (V36) (Kickstart 2.0)
21984pub unsafe fn SetFilter(CxBase: *mut Library, filter: *mut CxObj, text: CONST_STRPTR) {
21985    unsafe {
21986        asm!(
21987            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
21988            ".short 0xc0c0",
21989            "move.l %a6, -(%sp)",
21990            "move.l {basereg}, %a6",
21991            ".short 0x4eae", // jsr -120(a6)
21992            ".short -120",
21993            "move.l (%sp)+, %a6",
21994            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
21995            basereg = in(reg) CxBase,
21996            in("a0") filter,
21997            in("a1") text,
21998        );
21999    }
22000}
22001
22002/// libname: "commodities.library" (V36) (Kickstart 2.0)
22003pub unsafe fn SetFilterIX(CxBase: *mut Library, filter: *mut CxObj, ix: *const IX) {
22004    unsafe {
22005        asm!(
22006            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
22007            ".short 0xc0c0",
22008            "move.l %a6, -(%sp)",
22009            "move.l {basereg}, %a6",
22010            ".short 0x4eae", // jsr -126(a6)
22011            ".short -126",
22012            "move.l (%sp)+, %a6",
22013            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
22014            basereg = in(reg) CxBase,
22015            in("a0") filter,
22016            in("a1") ix,
22017        );
22018    }
22019}
22020
22021/// libname: "commodities.library" (V36) (Kickstart 2.0)
22022pub unsafe fn ParseIX(CxBase: *mut Library, description: CONST_STRPTR, ix: *mut IX) -> LONG {
22023    let asm_ret_value: LONG;
22024    unsafe {
22025        asm!(
22026            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22027            ".short 0x40c0",
22028            "move.l %a6, -(%sp)",
22029            "move.l {basereg}, %a6",
22030            ".short 0x4eae", // jsr -132(a6)
22031            ".short -132",
22032            "move.l (%sp)+, %a6",
22033            "movem.l (%sp)+, %d1/%a0-%a1",
22034            basereg = in(reg) CxBase,
22035            in("a0") description,
22036            in("a1") ix,
22037            out("d0") asm_ret_value,
22038        );
22039    }
22040    asm_ret_value
22041}
22042
22043/// libname: "commodities.library" (V36) (Kickstart 2.0)
22044pub unsafe fn CxMsgType(CxBase: *mut Library, cxm: *const CxMsg) -> ULONG {
22045    let asm_ret_value: ULONG;
22046    unsafe {
22047        asm!(
22048            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22049            ".short 0x40c0",
22050            "move.l %a6, -(%sp)",
22051            "move.l {basereg}, %a6",
22052            ".short 0x4eae", // jsr -138(a6)
22053            ".short -138",
22054            "move.l (%sp)+, %a6",
22055            "movem.l (%sp)+, %d1/%a0-%a1",
22056            basereg = in(reg) CxBase,
22057            in("a0") cxm,
22058            out("d0") asm_ret_value,
22059        );
22060    }
22061    asm_ret_value
22062}
22063
22064/// libname: "commodities.library" (V36) (Kickstart 2.0)
22065pub unsafe fn CxMsgData(CxBase: *mut Library, cxm: *const CxMsg) -> APTR {
22066    let asm_ret_value: APTR;
22067    unsafe {
22068        asm!(
22069            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22070            ".short 0x40c0",
22071            "move.l %a6, -(%sp)",
22072            "move.l {basereg}, %a6",
22073            ".short 0x4eae", // jsr -144(a6)
22074            ".short -144",
22075            "move.l (%sp)+, %a6",
22076            "movem.l (%sp)+, %d1/%a0-%a1",
22077            basereg = in(reg) CxBase,
22078            in("a0") cxm,
22079            out("d0") asm_ret_value,
22080        );
22081    }
22082    asm_ret_value
22083}
22084
22085/// libname: "commodities.library" (V36) (Kickstart 2.0)
22086pub unsafe fn CxMsgID(CxBase: *mut Library, cxm: *const CxMsg) -> LONG {
22087    let asm_ret_value: LONG;
22088    unsafe {
22089        asm!(
22090            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22091            ".short 0x40c0",
22092            "move.l %a6, -(%sp)",
22093            "move.l {basereg}, %a6",
22094            ".short 0x4eae", // jsr -150(a6)
22095            ".short -150",
22096            "move.l (%sp)+, %a6",
22097            "movem.l (%sp)+, %d1/%a0-%a1",
22098            basereg = in(reg) CxBase,
22099            in("a0") cxm,
22100            out("d0") asm_ret_value,
22101        );
22102    }
22103    asm_ret_value
22104}
22105
22106/// libname: "commodities.library" (V36) (Kickstart 2.0)
22107pub unsafe fn DivertCxMsg(
22108    CxBase: *mut Library,
22109    cxm: *mut CxMsg,
22110    headObj: *mut CxObj,
22111    returnObj: *mut CxObj,
22112) {
22113    unsafe {
22114        asm!(
22115            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
22116            ".short 0xc0c0",
22117            "move.l %a6, -(%sp)",
22118            "move.l {basereg}, %a6",
22119            ".short 0x4eae", // jsr -156(a6)
22120            ".short -156",
22121            "move.l (%sp)+, %a6",
22122            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
22123            basereg = in(reg) CxBase,
22124            in("a0") cxm,
22125            in("a1") headObj,
22126            in("a2") returnObj,
22127        );
22128    }
22129}
22130
22131/// libname: "commodities.library" (V36) (Kickstart 2.0)
22132pub unsafe fn RouteCxMsg(CxBase: *mut Library, cxm: *mut CxMsg, co: *mut CxObj) {
22133    unsafe {
22134        asm!(
22135            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
22136            ".short 0xc0c0",
22137            "move.l %a6, -(%sp)",
22138            "move.l {basereg}, %a6",
22139            ".short 0x4eae", // jsr -162(a6)
22140            ".short -162",
22141            "move.l (%sp)+, %a6",
22142            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
22143            basereg = in(reg) CxBase,
22144            in("a0") cxm,
22145            in("a1") co,
22146        );
22147    }
22148}
22149
22150/// libname: "commodities.library" (V36) (Kickstart 2.0)
22151pub unsafe fn DisposeCxMsg(CxBase: *mut Library, cxm: *mut CxMsg) {
22152    unsafe {
22153        asm!(
22154            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
22155            ".short 0xc0c0",
22156            "move.l %a6, -(%sp)",
22157            "move.l {basereg}, %a6",
22158            ".short 0x4eae", // jsr -168(a6)
22159            ".short -168",
22160            "move.l (%sp)+, %a6",
22161            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
22162            basereg = in(reg) CxBase,
22163            in("a0") cxm,
22164        );
22165    }
22166}
22167
22168/// libname: "commodities.library" (V36) (Kickstart 2.0)
22169pub unsafe fn InvertKeyMap(
22170    CxBase: *mut Library,
22171    ansiCode: ULONG,
22172    event: *mut InputEvent,
22173    km: *const KeyMap,
22174) -> BOOL {
22175    let asm_ret_value: BOOL;
22176    unsafe {
22177        asm!(
22178            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22179            ".short 0x40c0",
22180            "move.l %a6, -(%sp)",
22181            "move.l {basereg}, %a6",
22182            ".short 0x4eae", // jsr -174(a6)
22183            ".short -174",
22184            "move.l (%sp)+, %a6",
22185            "movem.l (%sp)+, %d1/%a0-%a1",
22186            basereg = in(reg) CxBase,
22187            in("d0") ansiCode,
22188            in("a0") event,
22189            in("a1") km,
22190            lateout("d0") asm_ret_value,
22191        );
22192    }
22193    asm_ret_value
22194}
22195
22196/// libname: "commodities.library" (V36) (Kickstart 2.0)
22197pub unsafe fn AddIEvents(CxBase: *mut Library, events: *mut InputEvent) {
22198    unsafe {
22199        asm!(
22200            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
22201            ".short 0xc0c0",
22202            "move.l %a6, -(%sp)",
22203            "move.l {basereg}, %a6",
22204            ".short 0x4eae", // jsr -180(a6)
22205            ".short -180",
22206            "move.l (%sp)+, %a6",
22207            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
22208            basereg = in(reg) CxBase,
22209            in("a0") events,
22210        );
22211    }
22212}
22213
22214/// libname: "commodities.library" (V38) (Kickstart 2.1)
22215pub unsafe fn MatchIX(CxBase: *mut Library, event: *const InputEvent, ix: *const IX) -> BOOL {
22216    let asm_ret_value: BOOL;
22217    unsafe {
22218        asm!(
22219            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22220            ".short 0x40c0",
22221            "move.l %a6, -(%sp)",
22222            "move.l {basereg}, %a6",
22223            ".short 0x4eae", // jsr -204(a6)
22224            ".short -204",
22225            "move.l (%sp)+, %a6",
22226            "movem.l (%sp)+, %d1/%a0-%a1",
22227            basereg = in(reg) CxBase,
22228            in("a0") event,
22229            in("a1") ix,
22230            out("d0") asm_ret_value,
22231        );
22232    }
22233    asm_ret_value
22234}
22235
22236/// libname: "console.device"
22237pub unsafe fn CDInputHandler(
22238    ConsoleDevice: *mut ::core::ffi::c_void,
22239    events: *const InputEvent,
22240    consoleDevice: *mut Library,
22241) -> *mut InputEvent {
22242    let asm_ret_value: *mut InputEvent;
22243    unsafe {
22244        asm!(
22245            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22246            ".short 0x40c0",
22247            "move.l %a6, -(%sp)",
22248            "move.l {basereg}, %a6",
22249            ".short 0x4eae", // jsr -42(a6)
22250            ".short -42",
22251            "move.l (%sp)+, %a6",
22252            "movem.l (%sp)+, %d1/%a0-%a1",
22253            basereg = in(reg) ConsoleDevice,
22254            in("a0") events,
22255            in("a1") consoleDevice,
22256            out("d0") asm_ret_value,
22257        );
22258    }
22259    asm_ret_value
22260}
22261
22262/// libname: "console.device"
22263pub unsafe fn RawKeyConvert(
22264    ConsoleDevice: *mut ::core::ffi::c_void,
22265    events: *const InputEvent,
22266    buffer: STRPTR,
22267    length: LONG,
22268    keyMap: *const KeyMap,
22269) -> LONG {
22270    let asm_ret_value: LONG;
22271    unsafe {
22272        asm!(
22273            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22274            ".short 0x40c0",
22275            "move.l %a6, -(%sp)",
22276            "move.l {basereg}, %a6",
22277            ".short 0x4eae", // jsr -48(a6)
22278            ".short -48",
22279            "move.l (%sp)+, %a6",
22280            "movem.l (%sp)+, %d1/%a0-%a1",
22281            basereg = in(reg) ConsoleDevice,
22282            in("a0") events,
22283            in("a1") buffer,
22284            in("d1") length,
22285            in("a2") keyMap,
22286            out("d0") asm_ret_value,
22287        );
22288    }
22289    asm_ret_value
22290}
22291
22292/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22293pub unsafe fn ObtainDataTypeA(
22294    DataTypesBase: *mut Library,
22295    type_: ULONG,
22296    handle: APTR,
22297    attrs: *const TagItem,
22298) -> *mut DataType {
22299    let asm_ret_value: *mut DataType;
22300    unsafe {
22301        asm!(
22302            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22303            ".short 0x40c0",
22304            "move.l %a6, -(%sp)",
22305            "move.l {basereg}, %a6",
22306            ".short 0x4eae", // jsr -36(a6)
22307            ".short -36",
22308            "move.l (%sp)+, %a6",
22309            "movem.l (%sp)+, %d1/%a0-%a1",
22310            basereg = in(reg) DataTypesBase,
22311            in("d0") type_,
22312            in("a0") handle,
22313            in("a1") attrs,
22314            lateout("d0") asm_ret_value,
22315        );
22316    }
22317    asm_ret_value
22318}
22319
22320/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22321pub unsafe fn ReleaseDataType(DataTypesBase: *mut Library, dt: *mut DataType) {
22322    unsafe {
22323        asm!(
22324            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
22325            ".short 0xc0c0",
22326            "move.l %a6, -(%sp)",
22327            "move.l {basereg}, %a6",
22328            ".short 0x4eae", // jsr -42(a6)
22329            ".short -42",
22330            "move.l (%sp)+, %a6",
22331            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
22332            basereg = in(reg) DataTypesBase,
22333            in("a0") dt,
22334        );
22335    }
22336}
22337
22338/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22339pub unsafe fn NewDTObjectA(
22340    DataTypesBase: *mut Library,
22341    name: CONST_STRPTR,
22342    attrs: *const TagItem,
22343) -> *mut Object {
22344    let asm_ret_value: *mut Object;
22345    unsafe {
22346        asm!(
22347            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22348            ".short 0x40c0",
22349            "move.l %a6, -(%sp)",
22350            "move.l {basereg}, %a6",
22351            ".short 0x4eae", // jsr -48(a6)
22352            ".short -48",
22353            "move.l (%sp)+, %a6",
22354            "movem.l (%sp)+, %d1/%a0-%a1",
22355            basereg = in(reg) DataTypesBase,
22356            in("d0") name,
22357            in("a0") attrs,
22358            lateout("d0") asm_ret_value,
22359        );
22360    }
22361    asm_ret_value
22362}
22363
22364/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22365pub unsafe fn DisposeDTObject(DataTypesBase: *mut Library, o: *mut Object) {
22366    unsafe {
22367        asm!(
22368            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
22369            ".short 0xc0c0",
22370            "move.l %a6, -(%sp)",
22371            "move.l {basereg}, %a6",
22372            ".short 0x4eae", // jsr -54(a6)
22373            ".short -54",
22374            "move.l (%sp)+, %a6",
22375            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
22376            basereg = in(reg) DataTypesBase,
22377            in("a0") o,
22378        );
22379    }
22380}
22381
22382/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22383pub unsafe fn SetDTAttrsA(
22384    DataTypesBase: *mut Library,
22385    o: *mut Object,
22386    win: *mut Window,
22387    req: *mut Requester,
22388    attrs: *const TagItem,
22389) -> ULONG {
22390    let asm_ret_value: ULONG;
22391    unsafe {
22392        asm!(
22393            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22394            ".short 0x40c0",
22395            "move.l %a6, -(%sp)",
22396            "move.l {basereg}, %a6",
22397            ".short 0x4eae", // jsr -60(a6)
22398            ".short -60",
22399            "move.l (%sp)+, %a6",
22400            "movem.l (%sp)+, %d1/%a0-%a1",
22401            basereg = in(reg) DataTypesBase,
22402            in("a0") o,
22403            in("a1") win,
22404            in("a2") req,
22405            in("a3") attrs,
22406            out("d0") asm_ret_value,
22407        );
22408    }
22409    asm_ret_value
22410}
22411
22412/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22413pub unsafe fn GetDTAttrsA(
22414    DataTypesBase: *mut Library,
22415    o: *mut Object,
22416    attrs: *const TagItem,
22417) -> ULONG {
22418    let asm_ret_value: ULONG;
22419    unsafe {
22420        asm!(
22421            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22422            ".short 0x40c0",
22423            "move.l %a6, -(%sp)",
22424            "move.l {basereg}, %a6",
22425            ".short 0x4eae", // jsr -66(a6)
22426            ".short -66",
22427            "move.l (%sp)+, %a6",
22428            "movem.l (%sp)+, %d1/%a0-%a1",
22429            basereg = in(reg) DataTypesBase,
22430            in("a0") o,
22431            in("a2") attrs,
22432            out("d0") asm_ret_value,
22433        );
22434    }
22435    asm_ret_value
22436}
22437
22438/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22439pub unsafe fn AddDTObject(
22440    DataTypesBase: *mut Library,
22441    win: *mut Window,
22442    req: *mut Requester,
22443    o: *mut Object,
22444    pos: LONG,
22445) -> LONG {
22446    let asm_ret_value: LONG;
22447    unsafe {
22448        asm!(
22449            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22450            ".short 0x40c0",
22451            "move.l %a6, -(%sp)",
22452            "move.l {basereg}, %a6",
22453            ".short 0x4eae", // jsr -72(a6)
22454            ".short -72",
22455            "move.l (%sp)+, %a6",
22456            "movem.l (%sp)+, %d1/%a0-%a1",
22457            basereg = in(reg) DataTypesBase,
22458            in("a0") win,
22459            in("a1") req,
22460            in("a2") o,
22461            in("d0") pos,
22462            lateout("d0") asm_ret_value,
22463        );
22464    }
22465    asm_ret_value
22466}
22467
22468/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22469pub unsafe fn RefreshDTObjectA(
22470    DataTypesBase: *mut Library,
22471    o: *mut Object,
22472    win: *mut Window,
22473    req: *mut Requester,
22474    attrs: *const TagItem,
22475) {
22476    unsafe {
22477        asm!(
22478            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
22479            ".short 0xc0c0",
22480            "move.l %a6, -(%sp)",
22481            "move.l {basereg}, %a6",
22482            ".short 0x4eae", // jsr -78(a6)
22483            ".short -78",
22484            "move.l (%sp)+, %a6",
22485            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
22486            basereg = in(reg) DataTypesBase,
22487            in("a0") o,
22488            in("a1") win,
22489            in("a2") req,
22490            in("a3") attrs,
22491        );
22492    }
22493}
22494
22495/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22496pub unsafe fn DoAsyncLayout(
22497    DataTypesBase: *mut Library,
22498    o: *mut Object,
22499    gpl: *mut gpLayout,
22500) -> ULONG {
22501    let asm_ret_value: ULONG;
22502    unsafe {
22503        asm!(
22504            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22505            ".short 0x40c0",
22506            "move.l %a6, -(%sp)",
22507            "move.l {basereg}, %a6",
22508            ".short 0x4eae", // jsr -84(a6)
22509            ".short -84",
22510            "move.l (%sp)+, %a6",
22511            "movem.l (%sp)+, %d1/%a0-%a1",
22512            basereg = in(reg) DataTypesBase,
22513            in("a0") o,
22514            in("a1") gpl,
22515            out("d0") asm_ret_value,
22516        );
22517    }
22518    asm_ret_value
22519}
22520
22521/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22522pub unsafe fn DoDTMethodA(
22523    DataTypesBase: *mut Library,
22524    o: *mut Object,
22525    win: *mut Window,
22526    req: *mut Requester,
22527    msg: Msg,
22528) -> ULONG {
22529    let asm_ret_value: ULONG;
22530    unsafe {
22531        asm!(
22532            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22533            ".short 0x40c0",
22534            "move.l %a6, -(%sp)",
22535            "move.l {basereg}, %a6",
22536            ".short 0x4eae", // jsr -90(a6)
22537            ".short -90",
22538            "move.l (%sp)+, %a6",
22539            "movem.l (%sp)+, %d1/%a0-%a1",
22540            basereg = in(reg) DataTypesBase,
22541            in("a0") o,
22542            in("a1") win,
22543            in("a2") req,
22544            in("a3") msg,
22545            out("d0") asm_ret_value,
22546        );
22547    }
22548    asm_ret_value
22549}
22550
22551/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22552pub unsafe fn RemoveDTObject(
22553    DataTypesBase: *mut Library,
22554    win: *mut Window,
22555    o: *mut Object,
22556) -> LONG {
22557    let asm_ret_value: LONG;
22558    unsafe {
22559        asm!(
22560            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22561            ".short 0x40c0",
22562            "move.l %a6, -(%sp)",
22563            "move.l {basereg}, %a6",
22564            ".short 0x4eae", // jsr -96(a6)
22565            ".short -96",
22566            "move.l (%sp)+, %a6",
22567            "movem.l (%sp)+, %d1/%a0-%a1",
22568            basereg = in(reg) DataTypesBase,
22569            in("a0") win,
22570            in("a1") o,
22571            out("d0") asm_ret_value,
22572        );
22573    }
22574    asm_ret_value
22575}
22576
22577/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22578pub unsafe fn GetDTMethods(DataTypesBase: *mut Library, object: *const Object) -> *mut ULONG {
22579    let asm_ret_value: *mut ULONG;
22580    unsafe {
22581        asm!(
22582            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22583            ".short 0x40c0",
22584            "move.l %a6, -(%sp)",
22585            "move.l {basereg}, %a6",
22586            ".short 0x4eae", // jsr -102(a6)
22587            ".short -102",
22588            "move.l (%sp)+, %a6",
22589            "movem.l (%sp)+, %d1/%a0-%a1",
22590            basereg = in(reg) DataTypesBase,
22591            in("a0") object,
22592            out("d0") asm_ret_value,
22593        );
22594    }
22595    asm_ret_value
22596}
22597
22598/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22599pub unsafe fn GetDTTriggerMethods(
22600    DataTypesBase: *mut Library,
22601    object: *mut Object,
22602) -> *mut DTMethod {
22603    let asm_ret_value: *mut DTMethod;
22604    unsafe {
22605        asm!(
22606            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22607            ".short 0x40c0",
22608            "move.l %a6, -(%sp)",
22609            "move.l {basereg}, %a6",
22610            ".short 0x4eae", // jsr -108(a6)
22611            ".short -108",
22612            "move.l (%sp)+, %a6",
22613            "movem.l (%sp)+, %d1/%a0-%a1",
22614            basereg = in(reg) DataTypesBase,
22615            in("a0") object,
22616            out("d0") asm_ret_value,
22617        );
22618    }
22619    asm_ret_value
22620}
22621
22622/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22623pub unsafe fn PrintDTObjectA(
22624    DataTypesBase: *mut Library,
22625    o: *mut Object,
22626    w: *mut Window,
22627    r: *mut Requester,
22628    msg: *mut dtPrint,
22629) -> ULONG {
22630    let asm_ret_value: ULONG;
22631    unsafe {
22632        asm!(
22633            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22634            ".short 0x40c0",
22635            "move.l %a6, -(%sp)",
22636            "move.l {basereg}, %a6",
22637            ".short 0x4eae", // jsr -114(a6)
22638            ".short -114",
22639            "move.l (%sp)+, %a6",
22640            "movem.l (%sp)+, %d1/%a0-%a1",
22641            basereg = in(reg) DataTypesBase,
22642            in("a0") o,
22643            in("a1") w,
22644            in("a2") r,
22645            in("a3") msg,
22646            out("d0") asm_ret_value,
22647        );
22648    }
22649    asm_ret_value
22650}
22651
22652/// libname: "datatypes.library" (V40) (Kickstart 3.1)
22653pub unsafe fn GetDTString(DataTypesBase: *mut Library, id: ULONG) -> STRPTR {
22654    let asm_ret_value: STRPTR;
22655    unsafe {
22656        asm!(
22657            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22658            ".short 0x40c0",
22659            "move.l %a6, -(%sp)",
22660            "move.l {basereg}, %a6",
22661            ".short 0x4eae", // jsr -138(a6)
22662            ".short -138",
22663            "move.l (%sp)+, %a6",
22664            "movem.l (%sp)+, %d1/%a0-%a1",
22665            basereg = in(reg) DataTypesBase,
22666            in("d0") id,
22667            lateout("d0") asm_ret_value,
22668        );
22669    }
22670    asm_ret_value
22671}
22672
22673/// libname: "datatypes.library" (V47) (Kickstart 3.2 / 2020)
22674pub unsafe fn FindMethod(
22675    DataTypesBase: *mut Library,
22676    methods: *const ULONG,
22677    searchmethodid: ULONG,
22678) -> *mut ULONG {
22679    let asm_ret_value: *mut ULONG;
22680    unsafe {
22681        asm!(
22682            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22683            ".short 0x40c0",
22684            "move.l %a6, -(%sp)",
22685            "move.l {basereg}, %a6",
22686            ".short 0x4eae", // jsr -258(a6)
22687            ".short -258",
22688            "move.l (%sp)+, %a6",
22689            "movem.l (%sp)+, %d1/%a0-%a1",
22690            basereg = in(reg) DataTypesBase,
22691            in("a0") methods,
22692            in("a1") searchmethodid,
22693            out("d0") asm_ret_value,
22694        );
22695    }
22696    asm_ret_value
22697}
22698
22699/// libname: "datatypes.library" (V47) (Kickstart 3.2 / 2020)
22700pub unsafe fn FindTriggerMethod(
22701    DataTypesBase: *mut Library,
22702    dtm: *const DTMethod,
22703    command: CONST_STRPTR,
22704    method: ULONG,
22705) -> *mut DTMethod {
22706    let asm_ret_value: *mut DTMethod;
22707    unsafe {
22708        asm!(
22709            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22710            ".short 0x40c0",
22711            "move.l %a6, -(%sp)",
22712            "move.l {basereg}, %a6",
22713            ".short 0x4eae", // jsr -264(a6)
22714            ".short -264",
22715            "move.l (%sp)+, %a6",
22716            "movem.l (%sp)+, %d1/%a0-%a1",
22717            basereg = in(reg) DataTypesBase,
22718            in("a0") dtm,
22719            in("a1") command,
22720            in("d0") method,
22721            lateout("d0") asm_ret_value,
22722        );
22723    }
22724    asm_ret_value
22725}
22726
22727/// libname: "datatypes.library" (V47) (Kickstart 3.2 / 2020)
22728pub unsafe fn CopyDTMethods(
22729    DataTypesBase: *mut Library,
22730    methods: *const ULONG,
22731    include: *const ULONG,
22732    exclude: *const ULONG,
22733) -> *mut ULONG {
22734    let asm_ret_value: *mut ULONG;
22735    unsafe {
22736        asm!(
22737            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22738            ".short 0x40c0",
22739            "move.l %a6, -(%sp)",
22740            "move.l {basereg}, %a6",
22741            ".short 0x4eae", // jsr -270(a6)
22742            ".short -270",
22743            "move.l (%sp)+, %a6",
22744            "movem.l (%sp)+, %d1/%a0-%a1",
22745            basereg = in(reg) DataTypesBase,
22746            in("a0") methods,
22747            in("a1") include,
22748            in("a2") exclude,
22749            out("d0") asm_ret_value,
22750        );
22751    }
22752    asm_ret_value
22753}
22754
22755/// libname: "datatypes.library" (V47) (Kickstart 3.2 / 2020)
22756pub unsafe fn CopyDTTriggerMethods(
22757    DataTypesBase: *mut Library,
22758    methods: *const DTMethod,
22759    include: *const DTMethod,
22760    exclude: *const DTMethod,
22761) -> *mut DTMethod {
22762    let asm_ret_value: *mut DTMethod;
22763    unsafe {
22764        asm!(
22765            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22766            ".short 0x40c0",
22767            "move.l %a6, -(%sp)",
22768            "move.l {basereg}, %a6",
22769            ".short 0x4eae", // jsr -276(a6)
22770            ".short -276",
22771            "move.l (%sp)+, %a6",
22772            "movem.l (%sp)+, %d1/%a0-%a1",
22773            basereg = in(reg) DataTypesBase,
22774            in("a0") methods,
22775            in("a1") include,
22776            in("a2") exclude,
22777            out("d0") asm_ret_value,
22778        );
22779    }
22780    asm_ret_value
22781}
22782
22783/// libname: "datatypes.library" (V47) (Kickstart 3.2 / 2020)
22784pub unsafe fn FreeDTMethods(
22785    DataTypesBase: *mut Library,
22786    methods: APTR,
22787) -> *mut ::core::ffi::c_void {
22788    let asm_ret_value: *mut ::core::ffi::c_void;
22789    unsafe {
22790        asm!(
22791            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22792            ".short 0x40c0",
22793            "move.l %a6, -(%sp)",
22794            "move.l {basereg}, %a6",
22795            ".short 0x4eae", // jsr -282(a6)
22796            ".short -282",
22797            "move.l (%sp)+, %a6",
22798            "movem.l (%sp)+, %d1/%a0-%a1",
22799            basereg = in(reg) DataTypesBase,
22800            in("a0") methods,
22801            out("d0") asm_ret_value,
22802        );
22803    }
22804    asm_ret_value
22805}
22806
22807/// libname: "datatypes.library" (V47) (Kickstart 3.2 / 2020)
22808pub unsafe fn GetDTTriggerMethodDataFlags(
22809    DataTypesBase: *mut Library,
22810    triggermethod: ULONG,
22811) -> ULONG {
22812    let asm_ret_value: ULONG;
22813    unsafe {
22814        asm!(
22815            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22816            ".short 0x40c0",
22817            "move.l %a6, -(%sp)",
22818            "move.l {basereg}, %a6",
22819            ".short 0x4eae", // jsr -288(a6)
22820            ".short -288",
22821            "move.l (%sp)+, %a6",
22822            "movem.l (%sp)+, %d1/%a0-%a1",
22823            basereg = in(reg) DataTypesBase,
22824            in("d0") triggermethod,
22825            lateout("d0") asm_ret_value,
22826        );
22827    }
22828    asm_ret_value
22829}
22830
22831/// libname: "datatypes.library" (V47) (Kickstart 3.2 / 2020)
22832pub unsafe fn SaveDTObjectA(
22833    DataTypesBase: *mut Library,
22834    o: *mut Object,
22835    win: *mut Window,
22836    req: *mut Requester,
22837    file: CONST_STRPTR,
22838    mode: ULONG,
22839    saveicon: LONG,
22840    attrs: *mut TagItem,
22841) -> ULONG {
22842    let asm_ret_value: ULONG;
22843    unsafe {
22844        asm!(
22845            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22846            ".short 0x40c0",
22847            "move.l %a6, -(%sp)",
22848            "move.l %a4, -(%sp)",
22849            "move.l {basereg}, %a6",
22850            "move.l {a4reg}, %a4",
22851            ".short 0x4eae", // jsr -294(a6)
22852            ".short -294",
22853            "move.l (%sp)+, %a4",
22854            "move.l (%sp)+, %a6",
22855            "movem.l (%sp)+, %d1/%a0-%a1",
22856            basereg = in(reg) DataTypesBase,
22857            in("a0") o,
22858            in("a1") win,
22859            in("a2") req,
22860            in("a3") file,
22861            in("d0") mode,
22862            in("d1") saveicon,
22863            a4reg = in(reg) attrs,
22864            lateout("d0") asm_ret_value,
22865        );
22866    }
22867    asm_ret_value
22868}
22869
22870/// libname: "datatypes.library" (V47) (Kickstart 3.2 / 2020)
22871pub unsafe fn StartDragSelect(DataTypesBase: *mut Library, o: *mut Object) -> ULONG {
22872    let asm_ret_value: ULONG;
22873    unsafe {
22874        asm!(
22875            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22876            ".short 0x40c0",
22877            "move.l %a6, -(%sp)",
22878            "move.l {basereg}, %a6",
22879            ".short 0x4eae", // jsr -300(a6)
22880            ".short -300",
22881            "move.l (%sp)+, %a6",
22882            "movem.l (%sp)+, %d1/%a0-%a1",
22883            basereg = in(reg) DataTypesBase,
22884            in("a0") o,
22885            out("d0") asm_ret_value,
22886        );
22887    }
22888    asm_ret_value
22889}
22890
22891/// libname: "datebrowser.gadget" (V40) (Kickstart 3.1)
22892pub unsafe fn DATEBROWSER_GetClass(DateBrowserBase: *mut ::core::ffi::c_void) -> *mut Class {
22893    let asm_ret_value: *mut Class;
22894    unsafe {
22895        asm!(
22896            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22897            ".short 0x40c0",
22898            "move.l %a6, -(%sp)",
22899            "move.l {basereg}, %a6",
22900            ".short 0x4eae", // jsr -30(a6)
22901            ".short -30",
22902            "move.l (%sp)+, %a6",
22903            "movem.l (%sp)+, %d1/%a0-%a1",
22904            basereg = in(reg) DateBrowserBase,
22905            out("d0") asm_ret_value,
22906        );
22907    }
22908    asm_ret_value
22909}
22910
22911/// libname: "datebrowser.gadget" (V40) (Kickstart 3.1)
22912pub unsafe fn JulianWeekDay(
22913    DateBrowserBase: *mut ::core::ffi::c_void,
22914    day: ULONG,
22915    month: ULONG,
22916    year: LONG,
22917) -> UWORD {
22918    let asm_ret_value: UWORD;
22919    unsafe {
22920        asm!(
22921            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22922            ".short 0x40c0",
22923            "move.l %a6, -(%sp)",
22924            "move.l {basereg}, %a6",
22925            ".short 0x4eae", // jsr -36(a6)
22926            ".short -36",
22927            "move.l (%sp)+, %a6",
22928            "movem.l (%sp)+, %d1/%a0-%a1",
22929            basereg = in(reg) DateBrowserBase,
22930            in("d0") day,
22931            in("d1") month,
22932            in("d2") year,
22933            lateout("d0") asm_ret_value,
22934        );
22935    }
22936    asm_ret_value
22937}
22938
22939/// libname: "datebrowser.gadget" (V40) (Kickstart 3.1)
22940pub unsafe fn JulianMonthDays(
22941    DateBrowserBase: *mut ::core::ffi::c_void,
22942    month: ULONG,
22943    year: LONG,
22944) -> UWORD {
22945    let asm_ret_value: UWORD;
22946    unsafe {
22947        asm!(
22948            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22949            ".short 0x40c0",
22950            "move.l %a6, -(%sp)",
22951            "move.l {basereg}, %a6",
22952            ".short 0x4eae", // jsr -42(a6)
22953            ".short -42",
22954            "move.l (%sp)+, %a6",
22955            "movem.l (%sp)+, %d1/%a0-%a1",
22956            basereg = in(reg) DateBrowserBase,
22957            in("d0") month,
22958            in("d1") year,
22959            lateout("d0") asm_ret_value,
22960        );
22961    }
22962    asm_ret_value
22963}
22964
22965/// libname: "datebrowser.gadget" (V40) (Kickstart 3.1)
22966pub unsafe fn JulianLeapYear(DateBrowserBase: *mut ::core::ffi::c_void, year: LONG) -> BOOL {
22967    let asm_ret_value: BOOL;
22968    unsafe {
22969        asm!(
22970            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22971            ".short 0x40c0",
22972            "move.l %a6, -(%sp)",
22973            "move.l {basereg}, %a6",
22974            ".short 0x4eae", // jsr -48(a6)
22975            ".short -48",
22976            "move.l (%sp)+, %a6",
22977            "movem.l (%sp)+, %d1/%a0-%a1",
22978            basereg = in(reg) DateBrowserBase,
22979            in("d0") year,
22980            lateout("d0") asm_ret_value,
22981        );
22982    }
22983    asm_ret_value
22984}
22985
22986/// libname: "disk.resource"
22987pub unsafe fn AllocUnit(DiskBase: *mut ::core::ffi::c_void, unitNum: LONG) -> BOOL {
22988    let asm_ret_value: BOOL;
22989    unsafe {
22990        asm!(
22991            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
22992            ".short 0x40c0",
22993            "move.l %a6, -(%sp)",
22994            "move.l {basereg}, %a6",
22995            ".short 0x4eae", // jsr -6(a6)
22996            ".short -6",
22997            "move.l (%sp)+, %a6",
22998            "movem.l (%sp)+, %d1/%a0-%a1",
22999            basereg = in(reg) DiskBase,
23000            in("d0") unitNum,
23001            lateout("d0") asm_ret_value,
23002        );
23003    }
23004    asm_ret_value
23005}
23006
23007/// libname: "disk.resource"
23008pub unsafe fn FreeUnit(DiskBase: *mut ::core::ffi::c_void, unitNum: LONG) {
23009    unsafe {
23010        asm!(
23011            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
23012            ".short 0xc0c0",
23013            "move.l %a6, -(%sp)",
23014            "move.l {basereg}, %a6",
23015            ".short 0x4eae", // jsr -12(a6)
23016            ".short -12",
23017            "move.l (%sp)+, %a6",
23018            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
23019            basereg = in(reg) DiskBase,
23020            in("d0") unitNum,
23021        );
23022    }
23023}
23024
23025/// libname: "disk.resource"
23026pub unsafe fn GetUnit(
23027    DiskBase: *mut ::core::ffi::c_void,
23028    unitPointer: *mut DiscResourceUnit,
23029) -> *mut DiscResourceUnit {
23030    let asm_ret_value: *mut DiscResourceUnit;
23031    unsafe {
23032        asm!(
23033            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23034            ".short 0x40c0",
23035            "move.l %a6, -(%sp)",
23036            "move.l {basereg}, %a6",
23037            ".short 0x4eae", // jsr -18(a6)
23038            ".short -18",
23039            "move.l (%sp)+, %a6",
23040            "movem.l (%sp)+, %d1/%a0-%a1",
23041            basereg = in(reg) DiskBase,
23042            in("a1") unitPointer,
23043            out("d0") asm_ret_value,
23044        );
23045    }
23046    asm_ret_value
23047}
23048
23049/// libname: "disk.resource"
23050pub unsafe fn GiveUnit(DiskBase: *mut ::core::ffi::c_void) {
23051    unsafe {
23052        asm!(
23053            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
23054            ".short 0xc0c0",
23055            "move.l %a6, -(%sp)",
23056            "move.l {basereg}, %a6",
23057            ".short 0x4eae", // jsr -24(a6)
23058            ".short -24",
23059            "move.l (%sp)+, %a6",
23060            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
23061            basereg = in(reg) DiskBase,
23062        );
23063    }
23064}
23065
23066/// libname: "disk.resource"
23067pub unsafe fn GetUnitID(DiskBase: *mut ::core::ffi::c_void, unitNum: LONG) -> LONG {
23068    let asm_ret_value: LONG;
23069    unsafe {
23070        asm!(
23071            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23072            ".short 0x40c0",
23073            "move.l %a6, -(%sp)",
23074            "move.l {basereg}, %a6",
23075            ".short 0x4eae", // jsr -30(a6)
23076            ".short -30",
23077            "move.l (%sp)+, %a6",
23078            "movem.l (%sp)+, %d1/%a0-%a1",
23079            basereg = in(reg) DiskBase,
23080            in("d0") unitNum,
23081            lateout("d0") asm_ret_value,
23082        );
23083    }
23084    asm_ret_value
23085}
23086
23087/// libname: "disk.resource" (V37) (Kickstart 2.04)
23088pub unsafe fn ReadUnitID(DiskBase: *mut ::core::ffi::c_void, unitNum: LONG) -> LONG {
23089    let asm_ret_value: LONG;
23090    unsafe {
23091        asm!(
23092            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23093            ".short 0x40c0",
23094            "move.l %a6, -(%sp)",
23095            "move.l {basereg}, %a6",
23096            ".short 0x4eae", // jsr -36(a6)
23097            ".short -36",
23098            "move.l (%sp)+, %a6",
23099            "movem.l (%sp)+, %d1/%a0-%a1",
23100            basereg = in(reg) DiskBase,
23101            in("d0") unitNum,
23102            lateout("d0") asm_ret_value,
23103        );
23104    }
23105    asm_ret_value
23106}
23107
23108/// libname: "diskfont.library"
23109pub unsafe fn OpenDiskFont(DiskfontBase: *mut Library, textAttr: *mut TextAttr) -> *mut TextFont {
23110    let asm_ret_value: *mut TextFont;
23111    unsafe {
23112        asm!(
23113            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23114            ".short 0x40c0",
23115            "move.l %a6, -(%sp)",
23116            "move.l {basereg}, %a6",
23117            ".short 0x4eae", // jsr -30(a6)
23118            ".short -30",
23119            "move.l (%sp)+, %a6",
23120            "movem.l (%sp)+, %d1/%a0-%a1",
23121            basereg = in(reg) DiskfontBase,
23122            in("a0") textAttr,
23123            out("d0") asm_ret_value,
23124        );
23125    }
23126    asm_ret_value
23127}
23128
23129/// libname: "diskfont.library"
23130pub unsafe fn AvailFonts(
23131    DiskfontBase: *mut Library,
23132    buffer: *mut AvailFontsHeader,
23133    bufBytes: LONG,
23134    flags: ULONG,
23135) -> LONG {
23136    let asm_ret_value: LONG;
23137    unsafe {
23138        asm!(
23139            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23140            ".short 0x40c0",
23141            "move.l %a6, -(%sp)",
23142            "move.l {basereg}, %a6",
23143            ".short 0x4eae", // jsr -36(a6)
23144            ".short -36",
23145            "move.l (%sp)+, %a6",
23146            "movem.l (%sp)+, %d1/%a0-%a1",
23147            basereg = in(reg) DiskfontBase,
23148            in("a0") buffer,
23149            in("d0") bufBytes,
23150            in("d1") flags,
23151            lateout("d0") asm_ret_value,
23152        );
23153    }
23154    asm_ret_value
23155}
23156
23157/// libname: "diskfont.library" (V34) (Kickstart 1.3)
23158pub unsafe fn NewFontContents(
23159    DiskfontBase: *mut Library,
23160    fontsLock: BPTR,
23161    fontName: CONST_STRPTR,
23162) -> *mut FontContentsHeader {
23163    let asm_ret_value: *mut FontContentsHeader;
23164    unsafe {
23165        asm!(
23166            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23167            ".short 0x40c0",
23168            "move.l %a6, -(%sp)",
23169            "move.l {basereg}, %a6",
23170            ".short 0x4eae", // jsr -42(a6)
23171            ".short -42",
23172            "move.l (%sp)+, %a6",
23173            "movem.l (%sp)+, %d1/%a0-%a1",
23174            basereg = in(reg) DiskfontBase,
23175            in("a0") fontsLock,
23176            in("a1") fontName,
23177            out("d0") asm_ret_value,
23178        );
23179    }
23180    asm_ret_value
23181}
23182
23183/// libname: "diskfont.library" (V34) (Kickstart 1.3)
23184pub unsafe fn DisposeFontContents(
23185    DiskfontBase: *mut Library,
23186    fontContentsHeader: *mut FontContentsHeader,
23187) {
23188    unsafe {
23189        asm!(
23190            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
23191            ".short 0xc0c0",
23192            "move.l %a6, -(%sp)",
23193            "move.l {basereg}, %a6",
23194            ".short 0x4eae", // jsr -48(a6)
23195            ".short -48",
23196            "move.l (%sp)+, %a6",
23197            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
23198            basereg = in(reg) DiskfontBase,
23199            in("a1") fontContentsHeader,
23200        );
23201    }
23202}
23203
23204/// libname: "diskfont.library" (V36) (Kickstart 2.0)
23205pub unsafe fn NewScaledDiskFont(
23206    DiskfontBase: *mut Library,
23207    sourceFont: *mut TextFont,
23208    destTextAttr: *mut TextAttr,
23209) -> *mut DiskFontHeader {
23210    let asm_ret_value: *mut DiskFontHeader;
23211    unsafe {
23212        asm!(
23213            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23214            ".short 0x40c0",
23215            "move.l %a6, -(%sp)",
23216            "move.l {basereg}, %a6",
23217            ".short 0x4eae", // jsr -54(a6)
23218            ".short -54",
23219            "move.l (%sp)+, %a6",
23220            "movem.l (%sp)+, %d1/%a0-%a1",
23221            basereg = in(reg) DiskfontBase,
23222            in("a0") sourceFont,
23223            in("a1") destTextAttr,
23224            out("d0") asm_ret_value,
23225        );
23226    }
23227    asm_ret_value
23228}
23229
23230/// libname: "diskfont.library" (V45) (Kickstart 3.9 / 2000)
23231pub unsafe fn GetDiskFontCtrl(DiskfontBase: *mut Library, tagid: LONG) -> LONG {
23232    let asm_ret_value: LONG;
23233    unsafe {
23234        asm!(
23235            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23236            ".short 0x40c0",
23237            "move.l %a6, -(%sp)",
23238            "move.l {basereg}, %a6",
23239            ".short 0x4eae", // jsr -60(a6)
23240            ".short -60",
23241            "move.l (%sp)+, %a6",
23242            "movem.l (%sp)+, %d1/%a0-%a1",
23243            basereg = in(reg) DiskfontBase,
23244            in("d0") tagid,
23245            lateout("d0") asm_ret_value,
23246        );
23247    }
23248    asm_ret_value
23249}
23250
23251/// libname: "diskfont.library" (V45) (Kickstart 3.9 / 2000)
23252pub unsafe fn SetDiskFontCtrlA(DiskfontBase: *mut Library, taglist: *const TagItem) {
23253    unsafe {
23254        asm!(
23255            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
23256            ".short 0xc0c0",
23257            "move.l %a6, -(%sp)",
23258            "move.l {basereg}, %a6",
23259            ".short 0x4eae", // jsr -66(a6)
23260            ".short -66",
23261            "move.l (%sp)+, %a6",
23262            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
23263            basereg = in(reg) DiskfontBase,
23264            in("a0") taglist,
23265        );
23266    }
23267}
23268
23269/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23270pub unsafe fn EOpenEngine(DiskfontBase: *mut Library, eEngine: *mut EGlyphEngine) -> LONG {
23271    let asm_ret_value: LONG;
23272    unsafe {
23273        asm!(
23274            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23275            ".short 0x40c0",
23276            "move.l %a6, -(%sp)",
23277            "move.l {basereg}, %a6",
23278            ".short 0x4eae", // jsr -72(a6)
23279            ".short -72",
23280            "move.l (%sp)+, %a6",
23281            "movem.l (%sp)+, %d1/%a0-%a1",
23282            basereg = in(reg) DiskfontBase,
23283            in("a0") eEngine,
23284            out("d0") asm_ret_value,
23285        );
23286    }
23287    asm_ret_value
23288}
23289
23290/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23291pub unsafe fn ECloseEngine(DiskfontBase: *mut Library, eEngine: *mut EGlyphEngine) {
23292    unsafe {
23293        asm!(
23294            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
23295            ".short 0xc0c0",
23296            "move.l %a6, -(%sp)",
23297            "move.l {basereg}, %a6",
23298            ".short 0x4eae", // jsr -78(a6)
23299            ".short -78",
23300            "move.l (%sp)+, %a6",
23301            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
23302            basereg = in(reg) DiskfontBase,
23303            in("a0") eEngine,
23304        );
23305    }
23306}
23307
23308/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23309pub unsafe fn ESetInfoA(
23310    DiskfontBase: *mut Library,
23311    eEngine: *mut EGlyphEngine,
23312    taglist: *const TagItem,
23313) -> ULONG {
23314    let asm_ret_value: ULONG;
23315    unsafe {
23316        asm!(
23317            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23318            ".short 0x40c0",
23319            "move.l %a6, -(%sp)",
23320            "move.l {basereg}, %a6",
23321            ".short 0x4eae", // jsr -84(a6)
23322            ".short -84",
23323            "move.l (%sp)+, %a6",
23324            "movem.l (%sp)+, %d1/%a0-%a1",
23325            basereg = in(reg) DiskfontBase,
23326            in("a0") eEngine,
23327            in("a1") taglist,
23328            out("d0") asm_ret_value,
23329        );
23330    }
23331    asm_ret_value
23332}
23333
23334/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23335pub unsafe fn EObtainInfoA(
23336    DiskfontBase: *mut Library,
23337    eEngine: *mut EGlyphEngine,
23338    taglist: *const TagItem,
23339) -> ULONG {
23340    let asm_ret_value: ULONG;
23341    unsafe {
23342        asm!(
23343            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23344            ".short 0x40c0",
23345            "move.l %a6, -(%sp)",
23346            "move.l {basereg}, %a6",
23347            ".short 0x4eae", // jsr -90(a6)
23348            ".short -90",
23349            "move.l (%sp)+, %a6",
23350            "movem.l (%sp)+, %d1/%a0-%a1",
23351            basereg = in(reg) DiskfontBase,
23352            in("a0") eEngine,
23353            in("a1") taglist,
23354            out("d0") asm_ret_value,
23355        );
23356    }
23357    asm_ret_value
23358}
23359
23360/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23361pub unsafe fn EReleaseInfoA(
23362    DiskfontBase: *mut Library,
23363    eEngine: *mut EGlyphEngine,
23364    taglist: *const TagItem,
23365) -> ULONG {
23366    let asm_ret_value: ULONG;
23367    unsafe {
23368        asm!(
23369            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23370            ".short 0x40c0",
23371            "move.l %a6, -(%sp)",
23372            "move.l {basereg}, %a6",
23373            ".short 0x4eae", // jsr -96(a6)
23374            ".short -96",
23375            "move.l (%sp)+, %a6",
23376            "movem.l (%sp)+, %d1/%a0-%a1",
23377            basereg = in(reg) DiskfontBase,
23378            in("a0") eEngine,
23379            in("a1") taglist,
23380            out("d0") asm_ret_value,
23381        );
23382    }
23383    asm_ret_value
23384}
23385
23386/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23387pub unsafe fn OpenOutlineFont(
23388    DiskfontBase: *mut Library,
23389    name: CONST_STRPTR,
23390    list: *mut List,
23391    flags: ULONG,
23392) -> *mut OutlineFont {
23393    let asm_ret_value: *mut OutlineFont;
23394    unsafe {
23395        asm!(
23396            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23397            ".short 0x40c0",
23398            "move.l %a6, -(%sp)",
23399            "move.l {basereg}, %a6",
23400            ".short 0x4eae", // jsr -102(a6)
23401            ".short -102",
23402            "move.l (%sp)+, %a6",
23403            "movem.l (%sp)+, %d1/%a0-%a1",
23404            basereg = in(reg) DiskfontBase,
23405            in("a0") name,
23406            in("a1") list,
23407            in("d0") flags,
23408            lateout("d0") asm_ret_value,
23409        );
23410    }
23411    asm_ret_value
23412}
23413
23414/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23415pub unsafe fn CloseOutlineFont(DiskfontBase: *mut Library, olf: *mut OutlineFont, list: *mut List) {
23416    unsafe {
23417        asm!(
23418            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
23419            ".short 0xc0c0",
23420            "move.l %a6, -(%sp)",
23421            "move.l {basereg}, %a6",
23422            ".short 0x4eae", // jsr -108(a6)
23423            ".short -108",
23424            "move.l (%sp)+, %a6",
23425            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
23426            basereg = in(reg) DiskfontBase,
23427            in("a0") olf,
23428            in("a1") list,
23429        );
23430    }
23431}
23432
23433/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23434pub unsafe fn WriteFontContents(
23435    DiskfontBase: *mut Library,
23436    fontsLock: BPTR,
23437    fontName: CONST_STRPTR,
23438    fontContentsHeader: *const FontContentsHeader,
23439) -> LONG {
23440    let asm_ret_value: LONG;
23441    unsafe {
23442        asm!(
23443            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23444            ".short 0x40c0",
23445            "move.l %a6, -(%sp)",
23446            "move.l {basereg}, %a6",
23447            ".short 0x4eae", // jsr -114(a6)
23448            ".short -114",
23449            "move.l (%sp)+, %a6",
23450            "movem.l (%sp)+, %d1/%a0-%a1",
23451            basereg = in(reg) DiskfontBase,
23452            in("a0") fontsLock,
23453            in("a1") fontName,
23454            in("a2") fontContentsHeader,
23455            out("d0") asm_ret_value,
23456        );
23457    }
23458    asm_ret_value
23459}
23460
23461/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23462pub unsafe fn WriteDiskFontHeaderA(
23463    DiskfontBase: *mut Library,
23464    font: *const TextFont,
23465    fileName: CONST_STRPTR,
23466    tagList: *const TagItem,
23467) -> LONG {
23468    let asm_ret_value: LONG;
23469    unsafe {
23470        asm!(
23471            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23472            ".short 0x40c0",
23473            "move.l %a6, -(%sp)",
23474            "move.l {basereg}, %a6",
23475            ".short 0x4eae", // jsr -120(a6)
23476            ".short -120",
23477            "move.l (%sp)+, %a6",
23478            "movem.l (%sp)+, %d1/%a0-%a1",
23479            basereg = in(reg) DiskfontBase,
23480            in("a0") font,
23481            in("a1") fileName,
23482            in("a2") tagList,
23483            out("d0") asm_ret_value,
23484        );
23485    }
23486    asm_ret_value
23487}
23488
23489/// libname: "diskfont.library" (V47) (Kickstart 3.2 / 2020)
23490pub unsafe fn ObtainCharsetInfo(
23491    DiskfontBase: *mut Library,
23492    knownTag: ULONG,
23493    knownValue: ULONG,
23494    wantedTag: ULONG,
23495) -> ULONG {
23496    let asm_ret_value: ULONG;
23497    unsafe {
23498        asm!(
23499            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23500            ".short 0x40c0",
23501            "move.l %a6, -(%sp)",
23502            "move.l {basereg}, %a6",
23503            ".short 0x4eae", // jsr -126(a6)
23504            ".short -126",
23505            "move.l (%sp)+, %a6",
23506            "movem.l (%sp)+, %d1/%a0-%a1",
23507            basereg = in(reg) DiskfontBase,
23508            in("d0") knownTag,
23509            in("d1") knownValue,
23510            in("d2") wantedTag,
23511            lateout("d0") asm_ret_value,
23512        );
23513    }
23514    asm_ret_value
23515}
23516
23517/// libname: "dos.library"
23518pub unsafe fn Open(DOSBase: *mut Library, name: CONST_STRPTR, accessMode: LONG) -> BPTR {
23519    let asm_ret_value: BPTR;
23520    unsafe {
23521        asm!(
23522            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23523            ".short 0x40c0",
23524            "move.l %a6, -(%sp)",
23525            "move.l {basereg}, %a6",
23526            ".short 0x4eae", // jsr -30(a6)
23527            ".short -30",
23528            "move.l (%sp)+, %a6",
23529            "movem.l (%sp)+, %d1/%a0-%a1",
23530            basereg = in(reg) DOSBase,
23531            in("d1") name,
23532            in("d2") accessMode,
23533            out("d0") asm_ret_value,
23534        );
23535    }
23536    asm_ret_value
23537}
23538
23539/// libname: "dos.library"
23540pub unsafe fn Close(DOSBase: *mut Library, file: BPTR) -> LONG {
23541    let asm_ret_value: LONG;
23542    unsafe {
23543        asm!(
23544            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23545            ".short 0x40c0",
23546            "move.l %a6, -(%sp)",
23547            "move.l {basereg}, %a6",
23548            ".short 0x4eae", // jsr -36(a6)
23549            ".short -36",
23550            "move.l (%sp)+, %a6",
23551            "movem.l (%sp)+, %d1/%a0-%a1",
23552            basereg = in(reg) DOSBase,
23553            in("d1") file,
23554            out("d0") asm_ret_value,
23555        );
23556    }
23557    asm_ret_value
23558}
23559
23560/// libname: "dos.library"
23561pub unsafe fn Read(DOSBase: *mut Library, file: BPTR, buffer: APTR, length: LONG) -> LONG {
23562    let asm_ret_value: LONG;
23563    unsafe {
23564        asm!(
23565            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23566            ".short 0x40c0",
23567            "move.l %a6, -(%sp)",
23568            "move.l {basereg}, %a6",
23569            ".short 0x4eae", // jsr -42(a6)
23570            ".short -42",
23571            "move.l (%sp)+, %a6",
23572            "movem.l (%sp)+, %d1/%a0-%a1",
23573            basereg = in(reg) DOSBase,
23574            in("d1") file,
23575            in("d2") buffer,
23576            in("d3") length,
23577            out("d0") asm_ret_value,
23578        );
23579    }
23580    asm_ret_value
23581}
23582
23583/// libname: "dos.library"
23584pub unsafe fn Write(DOSBase: *mut Library, file: BPTR, buffer: CONST_APTR, length: LONG) -> LONG {
23585    let asm_ret_value: LONG;
23586    unsafe {
23587        asm!(
23588            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23589            ".short 0x40c0",
23590            "move.l %a6, -(%sp)",
23591            "move.l {basereg}, %a6",
23592            ".short 0x4eae", // jsr -48(a6)
23593            ".short -48",
23594            "move.l (%sp)+, %a6",
23595            "movem.l (%sp)+, %d1/%a0-%a1",
23596            basereg = in(reg) DOSBase,
23597            in("d1") file,
23598            in("d2") buffer,
23599            in("d3") length,
23600            out("d0") asm_ret_value,
23601        );
23602    }
23603    asm_ret_value
23604}
23605
23606/// libname: "dos.library"
23607pub unsafe fn Input(DOSBase: *mut Library) -> BPTR {
23608    let asm_ret_value: BPTR;
23609    unsafe {
23610        asm!(
23611            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23612            ".short 0x40c0",
23613            "move.l %a6, -(%sp)",
23614            "move.l {basereg}, %a6",
23615            ".short 0x4eae", // jsr -54(a6)
23616            ".short -54",
23617            "move.l (%sp)+, %a6",
23618            "movem.l (%sp)+, %d1/%a0-%a1",
23619            basereg = in(reg) DOSBase,
23620            out("d0") asm_ret_value,
23621        );
23622    }
23623    asm_ret_value
23624}
23625
23626/// libname: "dos.library"
23627pub unsafe fn Output(DOSBase: *mut Library) -> BPTR {
23628    let asm_ret_value: BPTR;
23629    unsafe {
23630        asm!(
23631            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23632            ".short 0x40c0",
23633            "move.l %a6, -(%sp)",
23634            "move.l {basereg}, %a6",
23635            ".short 0x4eae", // jsr -60(a6)
23636            ".short -60",
23637            "move.l (%sp)+, %a6",
23638            "movem.l (%sp)+, %d1/%a0-%a1",
23639            basereg = in(reg) DOSBase,
23640            out("d0") asm_ret_value,
23641        );
23642    }
23643    asm_ret_value
23644}
23645
23646/// libname: "dos.library"
23647pub unsafe fn Seek(DOSBase: *mut Library, file: BPTR, position: LONG, offset: LONG) -> LONG {
23648    let asm_ret_value: LONG;
23649    unsafe {
23650        asm!(
23651            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23652            ".short 0x40c0",
23653            "move.l %a6, -(%sp)",
23654            "move.l {basereg}, %a6",
23655            ".short 0x4eae", // jsr -66(a6)
23656            ".short -66",
23657            "move.l (%sp)+, %a6",
23658            "movem.l (%sp)+, %d1/%a0-%a1",
23659            basereg = in(reg) DOSBase,
23660            in("d1") file,
23661            in("d2") position,
23662            in("d3") offset,
23663            out("d0") asm_ret_value,
23664        );
23665    }
23666    asm_ret_value
23667}
23668
23669/// libname: "dos.library"
23670pub unsafe fn DeleteFile(DOSBase: *mut Library, name: CONST_STRPTR) -> LONG {
23671    let asm_ret_value: LONG;
23672    unsafe {
23673        asm!(
23674            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23675            ".short 0x40c0",
23676            "move.l %a6, -(%sp)",
23677            "move.l {basereg}, %a6",
23678            ".short 0x4eae", // jsr -72(a6)
23679            ".short -72",
23680            "move.l (%sp)+, %a6",
23681            "movem.l (%sp)+, %d1/%a0-%a1",
23682            basereg = in(reg) DOSBase,
23683            in("d1") name,
23684            out("d0") asm_ret_value,
23685        );
23686    }
23687    asm_ret_value
23688}
23689
23690/// libname: "dos.library"
23691pub unsafe fn Rename(DOSBase: *mut Library, oldName: CONST_STRPTR, newName: CONST_STRPTR) -> LONG {
23692    let asm_ret_value: LONG;
23693    unsafe {
23694        asm!(
23695            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23696            ".short 0x40c0",
23697            "move.l %a6, -(%sp)",
23698            "move.l {basereg}, %a6",
23699            ".short 0x4eae", // jsr -78(a6)
23700            ".short -78",
23701            "move.l (%sp)+, %a6",
23702            "movem.l (%sp)+, %d1/%a0-%a1",
23703            basereg = in(reg) DOSBase,
23704            in("d1") oldName,
23705            in("d2") newName,
23706            out("d0") asm_ret_value,
23707        );
23708    }
23709    asm_ret_value
23710}
23711
23712/// libname: "dos.library"
23713pub unsafe fn Lock(DOSBase: *mut Library, name: CONST_STRPTR, type_: LONG) -> BPTR {
23714    let asm_ret_value: BPTR;
23715    unsafe {
23716        asm!(
23717            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23718            ".short 0x40c0",
23719            "move.l %a6, -(%sp)",
23720            "move.l {basereg}, %a6",
23721            ".short 0x4eae", // jsr -84(a6)
23722            ".short -84",
23723            "move.l (%sp)+, %a6",
23724            "movem.l (%sp)+, %d1/%a0-%a1",
23725            basereg = in(reg) DOSBase,
23726            in("d1") name,
23727            in("d2") type_,
23728            out("d0") asm_ret_value,
23729        );
23730    }
23731    asm_ret_value
23732}
23733
23734/// libname: "dos.library"
23735pub unsafe fn UnLock(DOSBase: *mut Library, lock: BPTR) {
23736    unsafe {
23737        asm!(
23738            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
23739            ".short 0xc0c0",
23740            "move.l %a6, -(%sp)",
23741            "move.l {basereg}, %a6",
23742            ".short 0x4eae", // jsr -90(a6)
23743            ".short -90",
23744            "move.l (%sp)+, %a6",
23745            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
23746            basereg = in(reg) DOSBase,
23747            in("d1") lock,
23748        );
23749    }
23750}
23751
23752/// libname: "dos.library"
23753pub unsafe fn DupLock(DOSBase: *mut Library, lock: BPTR) -> BPTR {
23754    let asm_ret_value: BPTR;
23755    unsafe {
23756        asm!(
23757            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23758            ".short 0x40c0",
23759            "move.l %a6, -(%sp)",
23760            "move.l {basereg}, %a6",
23761            ".short 0x4eae", // jsr -96(a6)
23762            ".short -96",
23763            "move.l (%sp)+, %a6",
23764            "movem.l (%sp)+, %d1/%a0-%a1",
23765            basereg = in(reg) DOSBase,
23766            in("d1") lock,
23767            out("d0") asm_ret_value,
23768        );
23769    }
23770    asm_ret_value
23771}
23772
23773/// libname: "dos.library"
23774pub unsafe fn Examine(
23775    DOSBase: *mut Library,
23776    lock: BPTR,
23777    fileInfoBlock: *mut FileInfoBlock,
23778) -> LONG {
23779    let asm_ret_value: LONG;
23780    unsafe {
23781        asm!(
23782            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23783            ".short 0x40c0",
23784            "move.l %a6, -(%sp)",
23785            "move.l {basereg}, %a6",
23786            ".short 0x4eae", // jsr -102(a6)
23787            ".short -102",
23788            "move.l (%sp)+, %a6",
23789            "movem.l (%sp)+, %d1/%a0-%a1",
23790            basereg = in(reg) DOSBase,
23791            in("d1") lock,
23792            in("d2") fileInfoBlock,
23793            out("d0") asm_ret_value,
23794        );
23795    }
23796    asm_ret_value
23797}
23798
23799/// libname: "dos.library"
23800pub unsafe fn ExNext(DOSBase: *mut Library, lock: BPTR, fileInfoBlock: *mut FileInfoBlock) -> LONG {
23801    let asm_ret_value: LONG;
23802    unsafe {
23803        asm!(
23804            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23805            ".short 0x40c0",
23806            "move.l %a6, -(%sp)",
23807            "move.l {basereg}, %a6",
23808            ".short 0x4eae", // jsr -108(a6)
23809            ".short -108",
23810            "move.l (%sp)+, %a6",
23811            "movem.l (%sp)+, %d1/%a0-%a1",
23812            basereg = in(reg) DOSBase,
23813            in("d1") lock,
23814            in("d2") fileInfoBlock,
23815            out("d0") asm_ret_value,
23816        );
23817    }
23818    asm_ret_value
23819}
23820
23821/// libname: "dos.library"
23822pub unsafe fn Info(DOSBase: *mut Library, lock: BPTR, parameterBlock: *mut InfoData) -> LONG {
23823    let asm_ret_value: LONG;
23824    unsafe {
23825        asm!(
23826            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23827            ".short 0x40c0",
23828            "move.l %a6, -(%sp)",
23829            "move.l {basereg}, %a6",
23830            ".short 0x4eae", // jsr -114(a6)
23831            ".short -114",
23832            "move.l (%sp)+, %a6",
23833            "movem.l (%sp)+, %d1/%a0-%a1",
23834            basereg = in(reg) DOSBase,
23835            in("d1") lock,
23836            in("d2") parameterBlock,
23837            out("d0") asm_ret_value,
23838        );
23839    }
23840    asm_ret_value
23841}
23842
23843/// libname: "dos.library"
23844pub unsafe fn CreateDir(DOSBase: *mut Library, name: CONST_STRPTR) -> BPTR {
23845    let asm_ret_value: BPTR;
23846    unsafe {
23847        asm!(
23848            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23849            ".short 0x40c0",
23850            "move.l %a6, -(%sp)",
23851            "move.l {basereg}, %a6",
23852            ".short 0x4eae", // jsr -120(a6)
23853            ".short -120",
23854            "move.l (%sp)+, %a6",
23855            "movem.l (%sp)+, %d1/%a0-%a1",
23856            basereg = in(reg) DOSBase,
23857            in("d1") name,
23858            out("d0") asm_ret_value,
23859        );
23860    }
23861    asm_ret_value
23862}
23863
23864/// libname: "dos.library"
23865pub unsafe fn CurrentDir(DOSBase: *mut Library, lock: BPTR) -> BPTR {
23866    let asm_ret_value: BPTR;
23867    unsafe {
23868        asm!(
23869            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23870            ".short 0x40c0",
23871            "move.l %a6, -(%sp)",
23872            "move.l {basereg}, %a6",
23873            ".short 0x4eae", // jsr -126(a6)
23874            ".short -126",
23875            "move.l (%sp)+, %a6",
23876            "movem.l (%sp)+, %d1/%a0-%a1",
23877            basereg = in(reg) DOSBase,
23878            in("d1") lock,
23879            out("d0") asm_ret_value,
23880        );
23881    }
23882    asm_ret_value
23883}
23884
23885/// libname: "dos.library"
23886pub unsafe fn IoErr(DOSBase: *mut Library) -> LONG {
23887    let asm_ret_value: LONG;
23888    unsafe {
23889        asm!(
23890            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23891            ".short 0x40c0",
23892            "move.l %a6, -(%sp)",
23893            "move.l {basereg}, %a6",
23894            ".short 0x4eae", // jsr -132(a6)
23895            ".short -132",
23896            "move.l (%sp)+, %a6",
23897            "movem.l (%sp)+, %d1/%a0-%a1",
23898            basereg = in(reg) DOSBase,
23899            out("d0") asm_ret_value,
23900        );
23901    }
23902    asm_ret_value
23903}
23904
23905/// libname: "dos.library"
23906pub unsafe fn CreateProc(
23907    DOSBase: *mut Library,
23908    name: CONST_STRPTR,
23909    pri: LONG,
23910    segList: BPTR,
23911    stackSize: LONG,
23912) -> *mut MsgPort {
23913    let asm_ret_value: *mut MsgPort;
23914    unsafe {
23915        asm!(
23916            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23917            ".short 0x40c0",
23918            "move.l %a6, -(%sp)",
23919            "move.l {basereg}, %a6",
23920            ".short 0x4eae", // jsr -138(a6)
23921            ".short -138",
23922            "move.l (%sp)+, %a6",
23923            "movem.l (%sp)+, %d1/%a0-%a1",
23924            basereg = in(reg) DOSBase,
23925            in("d1") name,
23926            in("d2") pri,
23927            in("d3") segList,
23928            in("d4") stackSize,
23929            out("d0") asm_ret_value,
23930        );
23931    }
23932    asm_ret_value
23933}
23934
23935/// libname: "dos.library"
23936pub unsafe fn Exit(DOSBase: *mut Library, returnCode: LONG) {
23937    unsafe {
23938        asm!(
23939            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
23940            ".short 0xc0c0",
23941            "move.l %a6, -(%sp)",
23942            "move.l {basereg}, %a6",
23943            ".short 0x4eae", // jsr -144(a6)
23944            ".short -144",
23945            "move.l (%sp)+, %a6",
23946            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
23947            basereg = in(reg) DOSBase,
23948            in("d1") returnCode,
23949        );
23950    }
23951}
23952
23953/// libname: "dos.library"
23954pub unsafe fn LoadSeg(DOSBase: *mut Library, name: CONST_STRPTR) -> BPTR {
23955    let asm_ret_value: BPTR;
23956    unsafe {
23957        asm!(
23958            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23959            ".short 0x40c0",
23960            "move.l %a6, -(%sp)",
23961            "move.l {basereg}, %a6",
23962            ".short 0x4eae", // jsr -150(a6)
23963            ".short -150",
23964            "move.l (%sp)+, %a6",
23965            "movem.l (%sp)+, %d1/%a0-%a1",
23966            basereg = in(reg) DOSBase,
23967            in("d1") name,
23968            out("d0") asm_ret_value,
23969        );
23970    }
23971    asm_ret_value
23972}
23973
23974/// libname: "dos.library"
23975pub unsafe fn UnLoadSeg(DOSBase: *mut Library, seglist: BPTR) {
23976    unsafe {
23977        asm!(
23978            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
23979            ".short 0xc0c0",
23980            "move.l %a6, -(%sp)",
23981            "move.l {basereg}, %a6",
23982            ".short 0x4eae", // jsr -156(a6)
23983            ".short -156",
23984            "move.l (%sp)+, %a6",
23985            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
23986            basereg = in(reg) DOSBase,
23987            in("d1") seglist,
23988        );
23989    }
23990}
23991
23992/// libname: "dos.library"
23993pub unsafe fn DeviceProc(DOSBase: *mut Library, name: CONST_STRPTR) -> *mut MsgPort {
23994    let asm_ret_value: *mut MsgPort;
23995    unsafe {
23996        asm!(
23997            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
23998            ".short 0x40c0",
23999            "move.l %a6, -(%sp)",
24000            "move.l {basereg}, %a6",
24001            ".short 0x4eae", // jsr -174(a6)
24002            ".short -174",
24003            "move.l (%sp)+, %a6",
24004            "movem.l (%sp)+, %d1/%a0-%a1",
24005            basereg = in(reg) DOSBase,
24006            in("d1") name,
24007            out("d0") asm_ret_value,
24008        );
24009    }
24010    asm_ret_value
24011}
24012
24013/// libname: "dos.library"
24014pub unsafe fn SetComment(DOSBase: *mut Library, name: CONST_STRPTR, comment: CONST_STRPTR) -> LONG {
24015    let asm_ret_value: LONG;
24016    unsafe {
24017        asm!(
24018            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24019            ".short 0x40c0",
24020            "move.l %a6, -(%sp)",
24021            "move.l {basereg}, %a6",
24022            ".short 0x4eae", // jsr -180(a6)
24023            ".short -180",
24024            "move.l (%sp)+, %a6",
24025            "movem.l (%sp)+, %d1/%a0-%a1",
24026            basereg = in(reg) DOSBase,
24027            in("d1") name,
24028            in("d2") comment,
24029            out("d0") asm_ret_value,
24030        );
24031    }
24032    asm_ret_value
24033}
24034
24035/// libname: "dos.library"
24036pub unsafe fn SetProtection(DOSBase: *mut Library, name: CONST_STRPTR, protect: LONG) -> LONG {
24037    let asm_ret_value: LONG;
24038    unsafe {
24039        asm!(
24040            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24041            ".short 0x40c0",
24042            "move.l %a6, -(%sp)",
24043            "move.l {basereg}, %a6",
24044            ".short 0x4eae", // jsr -186(a6)
24045            ".short -186",
24046            "move.l (%sp)+, %a6",
24047            "movem.l (%sp)+, %d1/%a0-%a1",
24048            basereg = in(reg) DOSBase,
24049            in("d1") name,
24050            in("d2") protect,
24051            out("d0") asm_ret_value,
24052        );
24053    }
24054    asm_ret_value
24055}
24056
24057/// libname: "dos.library"
24058pub unsafe fn DateStamp(DOSBase: *mut Library, date: *mut DateStamp) -> *mut DateStamp {
24059    let asm_ret_value: *mut DateStamp;
24060    unsafe {
24061        asm!(
24062            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24063            ".short 0x40c0",
24064            "move.l %a6, -(%sp)",
24065            "move.l {basereg}, %a6",
24066            ".short 0x4eae", // jsr -192(a6)
24067            ".short -192",
24068            "move.l (%sp)+, %a6",
24069            "movem.l (%sp)+, %d1/%a0-%a1",
24070            basereg = in(reg) DOSBase,
24071            in("d1") date,
24072            out("d0") asm_ret_value,
24073        );
24074    }
24075    asm_ret_value
24076}
24077
24078/// libname: "dos.library"
24079pub unsafe fn Delay(DOSBase: *mut Library, timeout: LONG) {
24080    unsafe {
24081        asm!(
24082            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
24083            ".short 0xc0c0",
24084            "move.l %a6, -(%sp)",
24085            "move.l {basereg}, %a6",
24086            ".short 0x4eae", // jsr -198(a6)
24087            ".short -198",
24088            "move.l (%sp)+, %a6",
24089            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
24090            basereg = in(reg) DOSBase,
24091            in("d1") timeout,
24092        );
24093    }
24094}
24095
24096/// libname: "dos.library"
24097pub unsafe fn WaitForChar(DOSBase: *mut Library, file: BPTR, timeout: LONG) -> LONG {
24098    let asm_ret_value: LONG;
24099    unsafe {
24100        asm!(
24101            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24102            ".short 0x40c0",
24103            "move.l %a6, -(%sp)",
24104            "move.l {basereg}, %a6",
24105            ".short 0x4eae", // jsr -204(a6)
24106            ".short -204",
24107            "move.l (%sp)+, %a6",
24108            "movem.l (%sp)+, %d1/%a0-%a1",
24109            basereg = in(reg) DOSBase,
24110            in("d1") file,
24111            in("d2") timeout,
24112            out("d0") asm_ret_value,
24113        );
24114    }
24115    asm_ret_value
24116}
24117
24118/// libname: "dos.library"
24119pub unsafe fn ParentDir(DOSBase: *mut Library, lock: BPTR) -> BPTR {
24120    let asm_ret_value: BPTR;
24121    unsafe {
24122        asm!(
24123            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24124            ".short 0x40c0",
24125            "move.l %a6, -(%sp)",
24126            "move.l {basereg}, %a6",
24127            ".short 0x4eae", // jsr -210(a6)
24128            ".short -210",
24129            "move.l (%sp)+, %a6",
24130            "movem.l (%sp)+, %d1/%a0-%a1",
24131            basereg = in(reg) DOSBase,
24132            in("d1") lock,
24133            out("d0") asm_ret_value,
24134        );
24135    }
24136    asm_ret_value
24137}
24138
24139/// libname: "dos.library"
24140pub unsafe fn IsInteractive(DOSBase: *mut Library, file: BPTR) -> LONG {
24141    let asm_ret_value: LONG;
24142    unsafe {
24143        asm!(
24144            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24145            ".short 0x40c0",
24146            "move.l %a6, -(%sp)",
24147            "move.l {basereg}, %a6",
24148            ".short 0x4eae", // jsr -216(a6)
24149            ".short -216",
24150            "move.l (%sp)+, %a6",
24151            "movem.l (%sp)+, %d1/%a0-%a1",
24152            basereg = in(reg) DOSBase,
24153            in("d1") file,
24154            out("d0") asm_ret_value,
24155        );
24156    }
24157    asm_ret_value
24158}
24159
24160/// libname: "dos.library"
24161pub unsafe fn Execute(
24162    DOSBase: *mut Library,
24163    string: CONST_STRPTR,
24164    file: BPTR,
24165    file2: BPTR,
24166) -> LONG {
24167    let asm_ret_value: LONG;
24168    unsafe {
24169        asm!(
24170            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24171            ".short 0x40c0",
24172            "move.l %a6, -(%sp)",
24173            "move.l {basereg}, %a6",
24174            ".short 0x4eae", // jsr -222(a6)
24175            ".short -222",
24176            "move.l (%sp)+, %a6",
24177            "movem.l (%sp)+, %d1/%a0-%a1",
24178            basereg = in(reg) DOSBase,
24179            in("d1") string,
24180            in("d2") file,
24181            in("d3") file2,
24182            out("d0") asm_ret_value,
24183        );
24184    }
24185    asm_ret_value
24186}
24187
24188/// libname: "dos.library" (V36) (Kickstart 2.0)
24189pub unsafe fn AllocDosObject(DOSBase: *mut Library, type_: ULONG, tags: *const TagItem) -> APTR {
24190    let asm_ret_value: APTR;
24191    unsafe {
24192        asm!(
24193            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24194            ".short 0x40c0",
24195            "move.l %a6, -(%sp)",
24196            "move.l {basereg}, %a6",
24197            ".short 0x4eae", // jsr -228(a6)
24198            ".short -228",
24199            "move.l (%sp)+, %a6",
24200            "movem.l (%sp)+, %d1/%a0-%a1",
24201            basereg = in(reg) DOSBase,
24202            in("d1") type_,
24203            in("d2") tags,
24204            out("d0") asm_ret_value,
24205        );
24206    }
24207    asm_ret_value
24208}
24209
24210/// libname: "dos.library" (V36) (Kickstart 2.0)
24211pub unsafe fn AllocDosObjectTagList(
24212    DOSBase: *mut Library,
24213    type_: ULONG,
24214    tags: *const TagItem,
24215) -> APTR {
24216    let asm_ret_value: APTR;
24217    unsafe {
24218        asm!(
24219            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24220            ".short 0x40c0",
24221            "move.l %a6, -(%sp)",
24222            "move.l {basereg}, %a6",
24223            ".short 0x4eae", // jsr -228(a6)
24224            ".short -228",
24225            "move.l (%sp)+, %a6",
24226            "movem.l (%sp)+, %d1/%a0-%a1",
24227            basereg = in(reg) DOSBase,
24228            in("d1") type_,
24229            in("d2") tags,
24230            out("d0") asm_ret_value,
24231        );
24232    }
24233    asm_ret_value
24234}
24235
24236/// libname: "dos.library" (V36) (Kickstart 2.0)
24237pub unsafe fn FreeDosObject(DOSBase: *mut Library, type_: ULONG, ptr: APTR) {
24238    unsafe {
24239        asm!(
24240            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
24241            ".short 0xc0c0",
24242            "move.l %a6, -(%sp)",
24243            "move.l {basereg}, %a6",
24244            ".short 0x4eae", // jsr -234(a6)
24245            ".short -234",
24246            "move.l (%sp)+, %a6",
24247            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
24248            basereg = in(reg) DOSBase,
24249            in("d1") type_,
24250            in("d2") ptr,
24251        );
24252    }
24253}
24254
24255/// libname: "dos.library" (V36) (Kickstart 2.0)
24256pub unsafe fn DoPkt(
24257    DOSBase: *mut Library,
24258    port: *mut MsgPort,
24259    action: LONG,
24260    arg1: LONG,
24261    arg2: LONG,
24262    arg3: LONG,
24263    arg4: LONG,
24264    arg5: LONG,
24265) -> LONG {
24266    let asm_ret_value: LONG;
24267    unsafe {
24268        asm!(
24269            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24270            ".short 0x40c0",
24271            "move.l %a6, -(%sp)",
24272            "move.l {basereg}, %a6",
24273            ".short 0x4eae", // jsr -240(a6)
24274            ".short -240",
24275            "move.l (%sp)+, %a6",
24276            "movem.l (%sp)+, %d1/%a0-%a1",
24277            basereg = in(reg) DOSBase,
24278            in("d1") port,
24279            in("d2") action,
24280            in("d3") arg1,
24281            in("d4") arg2,
24282            in("d5") arg3,
24283            in("d6") arg4,
24284            in("d7") arg5,
24285            out("d0") asm_ret_value,
24286        );
24287    }
24288    asm_ret_value
24289}
24290
24291/// libname: "dos.library" (V36) (Kickstart 2.0)
24292pub unsafe fn DoPkt0(DOSBase: *mut Library, port: *mut MsgPort, action: LONG) -> LONG {
24293    let asm_ret_value: LONG;
24294    unsafe {
24295        asm!(
24296            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24297            ".short 0x40c0",
24298            "move.l %a6, -(%sp)",
24299            "move.l {basereg}, %a6",
24300            ".short 0x4eae", // jsr -240(a6)
24301            ".short -240",
24302            "move.l (%sp)+, %a6",
24303            "movem.l (%sp)+, %d1/%a0-%a1",
24304            basereg = in(reg) DOSBase,
24305            in("d1") port,
24306            in("d2") action,
24307            out("d0") asm_ret_value,
24308        );
24309    }
24310    asm_ret_value
24311}
24312
24313/// libname: "dos.library" (V36) (Kickstart 2.0)
24314pub unsafe fn DoPkt1(DOSBase: *mut Library, port: *mut MsgPort, action: LONG, arg1: LONG) -> LONG {
24315    let asm_ret_value: LONG;
24316    unsafe {
24317        asm!(
24318            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24319            ".short 0x40c0",
24320            "move.l %a6, -(%sp)",
24321            "move.l {basereg}, %a6",
24322            ".short 0x4eae", // jsr -240(a6)
24323            ".short -240",
24324            "move.l (%sp)+, %a6",
24325            "movem.l (%sp)+, %d1/%a0-%a1",
24326            basereg = in(reg) DOSBase,
24327            in("d1") port,
24328            in("d2") action,
24329            in("d3") arg1,
24330            out("d0") asm_ret_value,
24331        );
24332    }
24333    asm_ret_value
24334}
24335
24336/// libname: "dos.library" (V36) (Kickstart 2.0)
24337pub unsafe fn DoPkt2(
24338    DOSBase: *mut Library,
24339    port: *mut MsgPort,
24340    action: LONG,
24341    arg1: LONG,
24342    arg2: LONG,
24343) -> LONG {
24344    let asm_ret_value: LONG;
24345    unsafe {
24346        asm!(
24347            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24348            ".short 0x40c0",
24349            "move.l %a6, -(%sp)",
24350            "move.l {basereg}, %a6",
24351            ".short 0x4eae", // jsr -240(a6)
24352            ".short -240",
24353            "move.l (%sp)+, %a6",
24354            "movem.l (%sp)+, %d1/%a0-%a1",
24355            basereg = in(reg) DOSBase,
24356            in("d1") port,
24357            in("d2") action,
24358            in("d3") arg1,
24359            in("d4") arg2,
24360            out("d0") asm_ret_value,
24361        );
24362    }
24363    asm_ret_value
24364}
24365
24366/// libname: "dos.library" (V36) (Kickstart 2.0)
24367pub unsafe fn DoPkt3(
24368    DOSBase: *mut Library,
24369    port: *mut MsgPort,
24370    action: LONG,
24371    arg1: LONG,
24372    arg2: LONG,
24373    arg3: LONG,
24374) -> LONG {
24375    let asm_ret_value: LONG;
24376    unsafe {
24377        asm!(
24378            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24379            ".short 0x40c0",
24380            "move.l %a6, -(%sp)",
24381            "move.l {basereg}, %a6",
24382            ".short 0x4eae", // jsr -240(a6)
24383            ".short -240",
24384            "move.l (%sp)+, %a6",
24385            "movem.l (%sp)+, %d1/%a0-%a1",
24386            basereg = in(reg) DOSBase,
24387            in("d1") port,
24388            in("d2") action,
24389            in("d3") arg1,
24390            in("d4") arg2,
24391            in("d5") arg3,
24392            out("d0") asm_ret_value,
24393        );
24394    }
24395    asm_ret_value
24396}
24397
24398/// libname: "dos.library" (V36) (Kickstart 2.0)
24399pub unsafe fn DoPkt4(
24400    DOSBase: *mut Library,
24401    port: *mut MsgPort,
24402    action: LONG,
24403    arg1: LONG,
24404    arg2: LONG,
24405    arg3: LONG,
24406    arg4: LONG,
24407) -> LONG {
24408    let asm_ret_value: LONG;
24409    unsafe {
24410        asm!(
24411            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24412            ".short 0x40c0",
24413            "move.l %a6, -(%sp)",
24414            "move.l {basereg}, %a6",
24415            ".short 0x4eae", // jsr -240(a6)
24416            ".short -240",
24417            "move.l (%sp)+, %a6",
24418            "movem.l (%sp)+, %d1/%a0-%a1",
24419            basereg = in(reg) DOSBase,
24420            in("d1") port,
24421            in("d2") action,
24422            in("d3") arg1,
24423            in("d4") arg2,
24424            in("d5") arg3,
24425            in("d6") arg4,
24426            out("d0") asm_ret_value,
24427        );
24428    }
24429    asm_ret_value
24430}
24431
24432/// libname: "dos.library" (V36) (Kickstart 2.0)
24433pub unsafe fn SendPkt(
24434    DOSBase: *mut Library,
24435    dp: *mut DosPacket,
24436    port: *mut MsgPort,
24437    replyport: *mut MsgPort,
24438) {
24439    unsafe {
24440        asm!(
24441            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
24442            ".short 0xc0c0",
24443            "move.l %a6, -(%sp)",
24444            "move.l {basereg}, %a6",
24445            ".short 0x4eae", // jsr -246(a6)
24446            ".short -246",
24447            "move.l (%sp)+, %a6",
24448            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
24449            basereg = in(reg) DOSBase,
24450            in("d1") dp,
24451            in("d2") port,
24452            in("d3") replyport,
24453        );
24454    }
24455}
24456
24457/// libname: "dos.library" (V36) (Kickstart 2.0)
24458pub unsafe fn WaitPkt(DOSBase: *mut Library) -> *mut DosPacket {
24459    let asm_ret_value: *mut DosPacket;
24460    unsafe {
24461        asm!(
24462            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24463            ".short 0x40c0",
24464            "move.l %a6, -(%sp)",
24465            "move.l {basereg}, %a6",
24466            ".short 0x4eae", // jsr -252(a6)
24467            ".short -252",
24468            "move.l (%sp)+, %a6",
24469            "movem.l (%sp)+, %d1/%a0-%a1",
24470            basereg = in(reg) DOSBase,
24471            out("d0") asm_ret_value,
24472        );
24473    }
24474    asm_ret_value
24475}
24476
24477/// libname: "dos.library" (V36) (Kickstart 2.0)
24478pub unsafe fn ReplyPkt(DOSBase: *mut Library, dp: *mut DosPacket, res1: LONG, res2: LONG) {
24479    unsafe {
24480        asm!(
24481            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
24482            ".short 0xc0c0",
24483            "move.l %a6, -(%sp)",
24484            "move.l {basereg}, %a6",
24485            ".short 0x4eae", // jsr -258(a6)
24486            ".short -258",
24487            "move.l (%sp)+, %a6",
24488            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
24489            basereg = in(reg) DOSBase,
24490            in("d1") dp,
24491            in("d2") res1,
24492            in("d3") res2,
24493        );
24494    }
24495}
24496
24497/// libname: "dos.library" (V36) (Kickstart 2.0)
24498pub unsafe fn AbortPkt(DOSBase: *mut Library, port: *mut MsgPort, pkt: *mut DosPacket) {
24499    unsafe {
24500        asm!(
24501            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
24502            ".short 0xc0c0",
24503            "move.l %a6, -(%sp)",
24504            "move.l {basereg}, %a6",
24505            ".short 0x4eae", // jsr -264(a6)
24506            ".short -264",
24507            "move.l (%sp)+, %a6",
24508            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
24509            basereg = in(reg) DOSBase,
24510            in("d1") port,
24511            in("d2") pkt,
24512        );
24513    }
24514}
24515
24516/// libname: "dos.library" (V36) (Kickstart 2.0)
24517pub unsafe fn LockRecord(
24518    DOSBase: *mut Library,
24519    fh: BPTR,
24520    offset: ULONG,
24521    length: ULONG,
24522    mode: ULONG,
24523    timeout: ULONG,
24524) -> BOOL {
24525    let asm_ret_value: BOOL;
24526    unsafe {
24527        asm!(
24528            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24529            ".short 0x40c0",
24530            "move.l %a6, -(%sp)",
24531            "move.l {basereg}, %a6",
24532            ".short 0x4eae", // jsr -270(a6)
24533            ".short -270",
24534            "move.l (%sp)+, %a6",
24535            "movem.l (%sp)+, %d1/%a0-%a1",
24536            basereg = in(reg) DOSBase,
24537            in("d1") fh,
24538            in("d2") offset,
24539            in("d3") length,
24540            in("d4") mode,
24541            in("d5") timeout,
24542            out("d0") asm_ret_value,
24543        );
24544    }
24545    asm_ret_value
24546}
24547
24548/// libname: "dos.library" (V36) (Kickstart 2.0)
24549pub unsafe fn LockRecords(
24550    DOSBase: *mut Library,
24551    recArray: *const RecordLock,
24552    timeout: ULONG,
24553) -> BOOL {
24554    let asm_ret_value: BOOL;
24555    unsafe {
24556        asm!(
24557            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24558            ".short 0x40c0",
24559            "move.l %a6, -(%sp)",
24560            "move.l {basereg}, %a6",
24561            ".short 0x4eae", // jsr -276(a6)
24562            ".short -276",
24563            "move.l (%sp)+, %a6",
24564            "movem.l (%sp)+, %d1/%a0-%a1",
24565            basereg = in(reg) DOSBase,
24566            in("d1") recArray,
24567            in("d2") timeout,
24568            out("d0") asm_ret_value,
24569        );
24570    }
24571    asm_ret_value
24572}
24573
24574/// libname: "dos.library" (V36) (Kickstart 2.0)
24575pub unsafe fn UnLockRecord(DOSBase: *mut Library, fh: BPTR, offset: ULONG, length: ULONG) -> BOOL {
24576    let asm_ret_value: BOOL;
24577    unsafe {
24578        asm!(
24579            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24580            ".short 0x40c0",
24581            "move.l %a6, -(%sp)",
24582            "move.l {basereg}, %a6",
24583            ".short 0x4eae", // jsr -282(a6)
24584            ".short -282",
24585            "move.l (%sp)+, %a6",
24586            "movem.l (%sp)+, %d1/%a0-%a1",
24587            basereg = in(reg) DOSBase,
24588            in("d1") fh,
24589            in("d2") offset,
24590            in("d3") length,
24591            out("d0") asm_ret_value,
24592        );
24593    }
24594    asm_ret_value
24595}
24596
24597/// libname: "dos.library" (V36) (Kickstart 2.0)
24598pub unsafe fn UnLockRecords(DOSBase: *mut Library, recArray: *const RecordLock) -> BOOL {
24599    let asm_ret_value: BOOL;
24600    unsafe {
24601        asm!(
24602            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24603            ".short 0x40c0",
24604            "move.l %a6, -(%sp)",
24605            "move.l {basereg}, %a6",
24606            ".short 0x4eae", // jsr -288(a6)
24607            ".short -288",
24608            "move.l (%sp)+, %a6",
24609            "movem.l (%sp)+, %d1/%a0-%a1",
24610            basereg = in(reg) DOSBase,
24611            in("d1") recArray,
24612            out("d0") asm_ret_value,
24613        );
24614    }
24615    asm_ret_value
24616}
24617
24618/// libname: "dos.library" (V36) (Kickstart 2.0)
24619pub unsafe fn SelectInput(DOSBase: *mut Library, fh: BPTR) -> BPTR {
24620    let asm_ret_value: BPTR;
24621    unsafe {
24622        asm!(
24623            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24624            ".short 0x40c0",
24625            "move.l %a6, -(%sp)",
24626            "move.l {basereg}, %a6",
24627            ".short 0x4eae", // jsr -294(a6)
24628            ".short -294",
24629            "move.l (%sp)+, %a6",
24630            "movem.l (%sp)+, %d1/%a0-%a1",
24631            basereg = in(reg) DOSBase,
24632            in("d1") fh,
24633            out("d0") asm_ret_value,
24634        );
24635    }
24636    asm_ret_value
24637}
24638
24639/// libname: "dos.library" (V36) (Kickstart 2.0)
24640pub unsafe fn SelectOutput(DOSBase: *mut Library, fh: BPTR) -> BPTR {
24641    let asm_ret_value: BPTR;
24642    unsafe {
24643        asm!(
24644            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24645            ".short 0x40c0",
24646            "move.l %a6, -(%sp)",
24647            "move.l {basereg}, %a6",
24648            ".short 0x4eae", // jsr -300(a6)
24649            ".short -300",
24650            "move.l (%sp)+, %a6",
24651            "movem.l (%sp)+, %d1/%a0-%a1",
24652            basereg = in(reg) DOSBase,
24653            in("d1") fh,
24654            out("d0") asm_ret_value,
24655        );
24656    }
24657    asm_ret_value
24658}
24659
24660/// libname: "dos.library" (V36) (Kickstart 2.0)
24661pub unsafe fn FGetC(DOSBase: *mut Library, fh: BPTR) -> LONG {
24662    let asm_ret_value: LONG;
24663    unsafe {
24664        asm!(
24665            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24666            ".short 0x40c0",
24667            "move.l %a6, -(%sp)",
24668            "move.l {basereg}, %a6",
24669            ".short 0x4eae", // jsr -306(a6)
24670            ".short -306",
24671            "move.l (%sp)+, %a6",
24672            "movem.l (%sp)+, %d1/%a0-%a1",
24673            basereg = in(reg) DOSBase,
24674            in("d1") fh,
24675            out("d0") asm_ret_value,
24676        );
24677    }
24678    asm_ret_value
24679}
24680
24681/// libname: "dos.library" (V36) (Kickstart 2.0)
24682pub unsafe fn FPutC(DOSBase: *mut Library, fh: BPTR, ch: LONG) -> LONG {
24683    let asm_ret_value: LONG;
24684    unsafe {
24685        asm!(
24686            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24687            ".short 0x40c0",
24688            "move.l %a6, -(%sp)",
24689            "move.l {basereg}, %a6",
24690            ".short 0x4eae", // jsr -312(a6)
24691            ".short -312",
24692            "move.l (%sp)+, %a6",
24693            "movem.l (%sp)+, %d1/%a0-%a1",
24694            basereg = in(reg) DOSBase,
24695            in("d1") fh,
24696            in("d2") ch,
24697            out("d0") asm_ret_value,
24698        );
24699    }
24700    asm_ret_value
24701}
24702
24703/// libname: "dos.library" (V36) (Kickstart 2.0)
24704pub unsafe fn UnGetC(DOSBase: *mut Library, fh: BPTR, character: LONG) -> LONG {
24705    let asm_ret_value: LONG;
24706    unsafe {
24707        asm!(
24708            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24709            ".short 0x40c0",
24710            "move.l %a6, -(%sp)",
24711            "move.l {basereg}, %a6",
24712            ".short 0x4eae", // jsr -318(a6)
24713            ".short -318",
24714            "move.l (%sp)+, %a6",
24715            "movem.l (%sp)+, %d1/%a0-%a1",
24716            basereg = in(reg) DOSBase,
24717            in("d1") fh,
24718            in("d2") character,
24719            out("d0") asm_ret_value,
24720        );
24721    }
24722    asm_ret_value
24723}
24724
24725/// libname: "dos.library" (V36) (Kickstart 2.0)
24726pub unsafe fn FRead(
24727    DOSBase: *mut Library,
24728    fh: BPTR,
24729    block: APTR,
24730    blocklen: ULONG,
24731    number: ULONG,
24732) -> LONG {
24733    let asm_ret_value: LONG;
24734    unsafe {
24735        asm!(
24736            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24737            ".short 0x40c0",
24738            "move.l %a6, -(%sp)",
24739            "move.l {basereg}, %a6",
24740            ".short 0x4eae", // jsr -324(a6)
24741            ".short -324",
24742            "move.l (%sp)+, %a6",
24743            "movem.l (%sp)+, %d1/%a0-%a1",
24744            basereg = in(reg) DOSBase,
24745            in("d1") fh,
24746            in("d2") block,
24747            in("d3") blocklen,
24748            in("d4") number,
24749            out("d0") asm_ret_value,
24750        );
24751    }
24752    asm_ret_value
24753}
24754
24755/// libname: "dos.library" (V36) (Kickstart 2.0)
24756pub unsafe fn FWrite(
24757    DOSBase: *mut Library,
24758    fh: BPTR,
24759    block: CONST_APTR,
24760    blocklen: ULONG,
24761    number: ULONG,
24762) -> LONG {
24763    let asm_ret_value: LONG;
24764    unsafe {
24765        asm!(
24766            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24767            ".short 0x40c0",
24768            "move.l %a6, -(%sp)",
24769            "move.l {basereg}, %a6",
24770            ".short 0x4eae", // jsr -330(a6)
24771            ".short -330",
24772            "move.l (%sp)+, %a6",
24773            "movem.l (%sp)+, %d1/%a0-%a1",
24774            basereg = in(reg) DOSBase,
24775            in("d1") fh,
24776            in("d2") block,
24777            in("d3") blocklen,
24778            in("d4") number,
24779            out("d0") asm_ret_value,
24780        );
24781    }
24782    asm_ret_value
24783}
24784
24785/// libname: "dos.library" (V36) (Kickstart 2.0)
24786pub unsafe fn FGets(DOSBase: *mut Library, fh: BPTR, buf: STRPTR, buflen: ULONG) -> STRPTR {
24787    let asm_ret_value: STRPTR;
24788    unsafe {
24789        asm!(
24790            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24791            ".short 0x40c0",
24792            "move.l %a6, -(%sp)",
24793            "move.l {basereg}, %a6",
24794            ".short 0x4eae", // jsr -336(a6)
24795            ".short -336",
24796            "move.l (%sp)+, %a6",
24797            "movem.l (%sp)+, %d1/%a0-%a1",
24798            basereg = in(reg) DOSBase,
24799            in("d1") fh,
24800            in("d2") buf,
24801            in("d3") buflen,
24802            out("d0") asm_ret_value,
24803        );
24804    }
24805    asm_ret_value
24806}
24807
24808/// libname: "dos.library" (V36) (Kickstart 2.0)
24809pub unsafe fn FPuts(DOSBase: *mut Library, fh: BPTR, str_: CONST_STRPTR) -> LONG {
24810    let asm_ret_value: LONG;
24811    unsafe {
24812        asm!(
24813            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24814            ".short 0x40c0",
24815            "move.l %a6, -(%sp)",
24816            "move.l {basereg}, %a6",
24817            ".short 0x4eae", // jsr -342(a6)
24818            ".short -342",
24819            "move.l (%sp)+, %a6",
24820            "movem.l (%sp)+, %d1/%a0-%a1",
24821            basereg = in(reg) DOSBase,
24822            in("d1") fh,
24823            in("d2") str_,
24824            out("d0") asm_ret_value,
24825        );
24826    }
24827    asm_ret_value
24828}
24829
24830/// libname: "dos.library" (V36) (Kickstart 2.0)
24831pub unsafe fn VFWritef(
24832    DOSBase: *mut Library,
24833    fh: BPTR,
24834    format: CONST_STRPTR,
24835    argarray: *const LONG,
24836) {
24837    unsafe {
24838        asm!(
24839            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
24840            ".short 0xc0c0",
24841            "move.l %a6, -(%sp)",
24842            "move.l {basereg}, %a6",
24843            ".short 0x4eae", // jsr -348(a6)
24844            ".short -348",
24845            "move.l (%sp)+, %a6",
24846            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
24847            basereg = in(reg) DOSBase,
24848            in("d1") fh,
24849            in("d2") format,
24850            in("d3") argarray,
24851        );
24852    }
24853}
24854
24855/// libname: "dos.library" (V36) (Kickstart 2.0)
24856pub unsafe fn VFPrintf(
24857    DOSBase: *mut Library,
24858    fh: BPTR,
24859    format: CONST_STRPTR,
24860    argarray: CONST_APTR,
24861) -> LONG {
24862    let asm_ret_value: LONG;
24863    unsafe {
24864        asm!(
24865            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24866            ".short 0x40c0",
24867            "move.l %a6, -(%sp)",
24868            "move.l {basereg}, %a6",
24869            ".short 0x4eae", // jsr -354(a6)
24870            ".short -354",
24871            "move.l (%sp)+, %a6",
24872            "movem.l (%sp)+, %d1/%a0-%a1",
24873            basereg = in(reg) DOSBase,
24874            in("d1") fh,
24875            in("d2") format,
24876            in("d3") argarray,
24877            out("d0") asm_ret_value,
24878        );
24879    }
24880    asm_ret_value
24881}
24882
24883/// libname: "dos.library" (V36) (Kickstart 2.0)
24884pub unsafe fn Flush(DOSBase: *mut Library, fh: BPTR) -> LONG {
24885    let asm_ret_value: LONG;
24886    unsafe {
24887        asm!(
24888            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24889            ".short 0x40c0",
24890            "move.l %a6, -(%sp)",
24891            "move.l {basereg}, %a6",
24892            ".short 0x4eae", // jsr -360(a6)
24893            ".short -360",
24894            "move.l (%sp)+, %a6",
24895            "movem.l (%sp)+, %d1/%a0-%a1",
24896            basereg = in(reg) DOSBase,
24897            in("d1") fh,
24898            out("d0") asm_ret_value,
24899        );
24900    }
24901    asm_ret_value
24902}
24903
24904/// libname: "dos.library" (V36) (Kickstart 2.0)
24905pub unsafe fn SetVBuf(
24906    DOSBase: *mut Library,
24907    fh: BPTR,
24908    buff: STRPTR,
24909    type_: LONG,
24910    size: LONG,
24911) -> LONG {
24912    let asm_ret_value: LONG;
24913    unsafe {
24914        asm!(
24915            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24916            ".short 0x40c0",
24917            "move.l %a6, -(%sp)",
24918            "move.l {basereg}, %a6",
24919            ".short 0x4eae", // jsr -366(a6)
24920            ".short -366",
24921            "move.l (%sp)+, %a6",
24922            "movem.l (%sp)+, %d1/%a0-%a1",
24923            basereg = in(reg) DOSBase,
24924            in("d1") fh,
24925            in("d2") buff,
24926            in("d3") type_,
24927            in("d4") size,
24928            out("d0") asm_ret_value,
24929        );
24930    }
24931    asm_ret_value
24932}
24933
24934/// libname: "dos.library" (V36) (Kickstart 2.0)
24935pub unsafe fn DupLockFromFH(DOSBase: *mut Library, fh: BPTR) -> BPTR {
24936    let asm_ret_value: BPTR;
24937    unsafe {
24938        asm!(
24939            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24940            ".short 0x40c0",
24941            "move.l %a6, -(%sp)",
24942            "move.l {basereg}, %a6",
24943            ".short 0x4eae", // jsr -372(a6)
24944            ".short -372",
24945            "move.l (%sp)+, %a6",
24946            "movem.l (%sp)+, %d1/%a0-%a1",
24947            basereg = in(reg) DOSBase,
24948            in("d1") fh,
24949            out("d0") asm_ret_value,
24950        );
24951    }
24952    asm_ret_value
24953}
24954
24955/// libname: "dos.library" (V36) (Kickstart 2.0)
24956pub unsafe fn OpenFromLock(DOSBase: *mut Library, lock: BPTR) -> BPTR {
24957    let asm_ret_value: BPTR;
24958    unsafe {
24959        asm!(
24960            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24961            ".short 0x40c0",
24962            "move.l %a6, -(%sp)",
24963            "move.l {basereg}, %a6",
24964            ".short 0x4eae", // jsr -378(a6)
24965            ".short -378",
24966            "move.l (%sp)+, %a6",
24967            "movem.l (%sp)+, %d1/%a0-%a1",
24968            basereg = in(reg) DOSBase,
24969            in("d1") lock,
24970            out("d0") asm_ret_value,
24971        );
24972    }
24973    asm_ret_value
24974}
24975
24976/// libname: "dos.library" (V36) (Kickstart 2.0)
24977pub unsafe fn ParentOfFH(DOSBase: *mut Library, fh: BPTR) -> BPTR {
24978    let asm_ret_value: BPTR;
24979    unsafe {
24980        asm!(
24981            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
24982            ".short 0x40c0",
24983            "move.l %a6, -(%sp)",
24984            "move.l {basereg}, %a6",
24985            ".short 0x4eae", // jsr -384(a6)
24986            ".short -384",
24987            "move.l (%sp)+, %a6",
24988            "movem.l (%sp)+, %d1/%a0-%a1",
24989            basereg = in(reg) DOSBase,
24990            in("d1") fh,
24991            out("d0") asm_ret_value,
24992        );
24993    }
24994    asm_ret_value
24995}
24996
24997/// libname: "dos.library" (V36) (Kickstart 2.0)
24998pub unsafe fn ExamineFH(DOSBase: *mut Library, fh: BPTR, fib: *mut FileInfoBlock) -> BOOL {
24999    let asm_ret_value: BOOL;
25000    unsafe {
25001        asm!(
25002            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25003            ".short 0x40c0",
25004            "move.l %a6, -(%sp)",
25005            "move.l {basereg}, %a6",
25006            ".short 0x4eae", // jsr -390(a6)
25007            ".short -390",
25008            "move.l (%sp)+, %a6",
25009            "movem.l (%sp)+, %d1/%a0-%a1",
25010            basereg = in(reg) DOSBase,
25011            in("d1") fh,
25012            in("d2") fib,
25013            out("d0") asm_ret_value,
25014        );
25015    }
25016    asm_ret_value
25017}
25018
25019/// libname: "dos.library" (V36) (Kickstart 2.0)
25020pub unsafe fn SetFileDate(
25021    DOSBase: *mut Library,
25022    name: CONST_STRPTR,
25023    date: *const DateStamp,
25024) -> LONG {
25025    let asm_ret_value: LONG;
25026    unsafe {
25027        asm!(
25028            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25029            ".short 0x40c0",
25030            "move.l %a6, -(%sp)",
25031            "move.l {basereg}, %a6",
25032            ".short 0x4eae", // jsr -396(a6)
25033            ".short -396",
25034            "move.l (%sp)+, %a6",
25035            "movem.l (%sp)+, %d1/%a0-%a1",
25036            basereg = in(reg) DOSBase,
25037            in("d1") name,
25038            in("d2") date,
25039            out("d0") asm_ret_value,
25040        );
25041    }
25042    asm_ret_value
25043}
25044
25045/// libname: "dos.library" (V36) (Kickstart 2.0)
25046pub unsafe fn NameFromLock(DOSBase: *mut Library, lock: BPTR, buffer: STRPTR, len: LONG) -> LONG {
25047    let asm_ret_value: LONG;
25048    unsafe {
25049        asm!(
25050            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25051            ".short 0x40c0",
25052            "move.l %a6, -(%sp)",
25053            "move.l {basereg}, %a6",
25054            ".short 0x4eae", // jsr -402(a6)
25055            ".short -402",
25056            "move.l (%sp)+, %a6",
25057            "movem.l (%sp)+, %d1/%a0-%a1",
25058            basereg = in(reg) DOSBase,
25059            in("d1") lock,
25060            in("d2") buffer,
25061            in("d3") len,
25062            out("d0") asm_ret_value,
25063        );
25064    }
25065    asm_ret_value
25066}
25067
25068/// libname: "dos.library" (V36) (Kickstart 2.0)
25069pub unsafe fn NameFromFH(DOSBase: *mut Library, fh: BPTR, buffer: STRPTR, len: LONG) -> LONG {
25070    let asm_ret_value: LONG;
25071    unsafe {
25072        asm!(
25073            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25074            ".short 0x40c0",
25075            "move.l %a6, -(%sp)",
25076            "move.l {basereg}, %a6",
25077            ".short 0x4eae", // jsr -408(a6)
25078            ".short -408",
25079            "move.l (%sp)+, %a6",
25080            "movem.l (%sp)+, %d1/%a0-%a1",
25081            basereg = in(reg) DOSBase,
25082            in("d1") fh,
25083            in("d2") buffer,
25084            in("d3") len,
25085            out("d0") asm_ret_value,
25086        );
25087    }
25088    asm_ret_value
25089}
25090
25091/// libname: "dos.library" (V36) (Kickstart 2.0)
25092pub unsafe fn SplitName(
25093    DOSBase: *mut Library,
25094    name: CONST_STRPTR,
25095    separator: ULONG,
25096    buf: STRPTR,
25097    oldpos: LONG,
25098    size: LONG,
25099) -> WORD {
25100    let asm_ret_value: WORD;
25101    unsafe {
25102        asm!(
25103            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25104            ".short 0x40c0",
25105            "move.l %a6, -(%sp)",
25106            "move.l {basereg}, %a6",
25107            ".short 0x4eae", // jsr -414(a6)
25108            ".short -414",
25109            "move.l (%sp)+, %a6",
25110            "movem.l (%sp)+, %d1/%a0-%a1",
25111            basereg = in(reg) DOSBase,
25112            in("d1") name,
25113            in("d2") separator,
25114            in("d3") buf,
25115            in("d4") oldpos,
25116            in("d5") size,
25117            out("d0") asm_ret_value,
25118        );
25119    }
25120    asm_ret_value
25121}
25122
25123/// libname: "dos.library" (V36) (Kickstart 2.0)
25124pub unsafe fn SameLock(DOSBase: *mut Library, lock1: BPTR, lock2: BPTR) -> LONG {
25125    let asm_ret_value: LONG;
25126    unsafe {
25127        asm!(
25128            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25129            ".short 0x40c0",
25130            "move.l %a6, -(%sp)",
25131            "move.l {basereg}, %a6",
25132            ".short 0x4eae", // jsr -420(a6)
25133            ".short -420",
25134            "move.l (%sp)+, %a6",
25135            "movem.l (%sp)+, %d1/%a0-%a1",
25136            basereg = in(reg) DOSBase,
25137            in("d1") lock1,
25138            in("d2") lock2,
25139            out("d0") asm_ret_value,
25140        );
25141    }
25142    asm_ret_value
25143}
25144
25145/// libname: "dos.library" (V36) (Kickstart 2.0)
25146pub unsafe fn SetMode(DOSBase: *mut Library, fh: BPTR, mode: LONG) -> LONG {
25147    let asm_ret_value: LONG;
25148    unsafe {
25149        asm!(
25150            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25151            ".short 0x40c0",
25152            "move.l %a6, -(%sp)",
25153            "move.l {basereg}, %a6",
25154            ".short 0x4eae", // jsr -426(a6)
25155            ".short -426",
25156            "move.l (%sp)+, %a6",
25157            "movem.l (%sp)+, %d1/%a0-%a1",
25158            basereg = in(reg) DOSBase,
25159            in("d1") fh,
25160            in("d2") mode,
25161            out("d0") asm_ret_value,
25162        );
25163    }
25164    asm_ret_value
25165}
25166
25167/// libname: "dos.library" (V36) (Kickstart 2.0)
25168pub unsafe fn ExAll(
25169    DOSBase: *mut Library,
25170    lock: BPTR,
25171    buffer: *mut ExAllData,
25172    size: LONG,
25173    data: LONG,
25174    control: *mut ExAllControl,
25175) -> LONG {
25176    let asm_ret_value: LONG;
25177    unsafe {
25178        asm!(
25179            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25180            ".short 0x40c0",
25181            "move.l %a6, -(%sp)",
25182            "move.l {basereg}, %a6",
25183            ".short 0x4eae", // jsr -432(a6)
25184            ".short -432",
25185            "move.l (%sp)+, %a6",
25186            "movem.l (%sp)+, %d1/%a0-%a1",
25187            basereg = in(reg) DOSBase,
25188            in("d1") lock,
25189            in("d2") buffer,
25190            in("d3") size,
25191            in("d4") data,
25192            in("d5") control,
25193            out("d0") asm_ret_value,
25194        );
25195    }
25196    asm_ret_value
25197}
25198
25199/// libname: "dos.library" (V36) (Kickstart 2.0)
25200pub unsafe fn ReadLink(
25201    DOSBase: *mut Library,
25202    port: *mut MsgPort,
25203    lock: BPTR,
25204    path: CONST_STRPTR,
25205    buffer: STRPTR,
25206    size: ULONG,
25207) -> LONG {
25208    let asm_ret_value: LONG;
25209    unsafe {
25210        asm!(
25211            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25212            ".short 0x40c0",
25213            "move.l %a6, -(%sp)",
25214            "move.l {basereg}, %a6",
25215            ".short 0x4eae", // jsr -438(a6)
25216            ".short -438",
25217            "move.l (%sp)+, %a6",
25218            "movem.l (%sp)+, %d1/%a0-%a1",
25219            basereg = in(reg) DOSBase,
25220            in("d1") port,
25221            in("d2") lock,
25222            in("d3") path,
25223            in("d4") buffer,
25224            in("d5") size,
25225            out("d0") asm_ret_value,
25226        );
25227    }
25228    asm_ret_value
25229}
25230
25231/// libname: "dos.library" (V36) (Kickstart 2.0)
25232pub unsafe fn MakeLink(DOSBase: *mut Library, name: CONST_STRPTR, dest: LONG, soft: LONG) -> LONG {
25233    let asm_ret_value: LONG;
25234    unsafe {
25235        asm!(
25236            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25237            ".short 0x40c0",
25238            "move.l %a6, -(%sp)",
25239            "move.l {basereg}, %a6",
25240            ".short 0x4eae", // jsr -444(a6)
25241            ".short -444",
25242            "move.l (%sp)+, %a6",
25243            "movem.l (%sp)+, %d1/%a0-%a1",
25244            basereg = in(reg) DOSBase,
25245            in("d1") name,
25246            in("d2") dest,
25247            in("d3") soft,
25248            out("d0") asm_ret_value,
25249        );
25250    }
25251    asm_ret_value
25252}
25253
25254/// libname: "dos.library" (V36) (Kickstart 2.0)
25255pub unsafe fn ChangeMode(DOSBase: *mut Library, type_: LONG, fh: BPTR, newmode: LONG) -> LONG {
25256    let asm_ret_value: LONG;
25257    unsafe {
25258        asm!(
25259            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25260            ".short 0x40c0",
25261            "move.l %a6, -(%sp)",
25262            "move.l {basereg}, %a6",
25263            ".short 0x4eae", // jsr -450(a6)
25264            ".short -450",
25265            "move.l (%sp)+, %a6",
25266            "movem.l (%sp)+, %d1/%a0-%a1",
25267            basereg = in(reg) DOSBase,
25268            in("d1") type_,
25269            in("d2") fh,
25270            in("d3") newmode,
25271            out("d0") asm_ret_value,
25272        );
25273    }
25274    asm_ret_value
25275}
25276
25277/// libname: "dos.library" (V36) (Kickstart 2.0)
25278pub unsafe fn SetFileSize(DOSBase: *mut Library, fh: BPTR, pos: LONG, mode: LONG) -> LONG {
25279    let asm_ret_value: LONG;
25280    unsafe {
25281        asm!(
25282            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25283            ".short 0x40c0",
25284            "move.l %a6, -(%sp)",
25285            "move.l {basereg}, %a6",
25286            ".short 0x4eae", // jsr -456(a6)
25287            ".short -456",
25288            "move.l (%sp)+, %a6",
25289            "movem.l (%sp)+, %d1/%a0-%a1",
25290            basereg = in(reg) DOSBase,
25291            in("d1") fh,
25292            in("d2") pos,
25293            in("d3") mode,
25294            out("d0") asm_ret_value,
25295        );
25296    }
25297    asm_ret_value
25298}
25299
25300/// libname: "dos.library" (V36) (Kickstart 2.0)
25301pub unsafe fn SetIoErr(DOSBase: *mut Library, result: LONG) -> LONG {
25302    let asm_ret_value: LONG;
25303    unsafe {
25304        asm!(
25305            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25306            ".short 0x40c0",
25307            "move.l %a6, -(%sp)",
25308            "move.l {basereg}, %a6",
25309            ".short 0x4eae", // jsr -462(a6)
25310            ".short -462",
25311            "move.l (%sp)+, %a6",
25312            "movem.l (%sp)+, %d1/%a0-%a1",
25313            basereg = in(reg) DOSBase,
25314            in("d1") result,
25315            out("d0") asm_ret_value,
25316        );
25317    }
25318    asm_ret_value
25319}
25320
25321/// libname: "dos.library" (V36) (Kickstart 2.0)
25322pub unsafe fn Fault(
25323    DOSBase: *mut Library,
25324    code: LONG,
25325    header: CONST_STRPTR,
25326    buffer: STRPTR,
25327    len: LONG,
25328) -> BOOL {
25329    let asm_ret_value: BOOL;
25330    unsafe {
25331        asm!(
25332            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25333            ".short 0x40c0",
25334            "move.l %a6, -(%sp)",
25335            "move.l {basereg}, %a6",
25336            ".short 0x4eae", // jsr -468(a6)
25337            ".short -468",
25338            "move.l (%sp)+, %a6",
25339            "movem.l (%sp)+, %d1/%a0-%a1",
25340            basereg = in(reg) DOSBase,
25341            in("d1") code,
25342            in("d2") header,
25343            in("d3") buffer,
25344            in("d4") len,
25345            out("d0") asm_ret_value,
25346        );
25347    }
25348    asm_ret_value
25349}
25350
25351/// libname: "dos.library" (V36) (Kickstart 2.0)
25352pub unsafe fn PrintFault(DOSBase: *mut Library, code: LONG, header: CONST_STRPTR) -> BOOL {
25353    let asm_ret_value: BOOL;
25354    unsafe {
25355        asm!(
25356            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25357            ".short 0x40c0",
25358            "move.l %a6, -(%sp)",
25359            "move.l {basereg}, %a6",
25360            ".short 0x4eae", // jsr -474(a6)
25361            ".short -474",
25362            "move.l (%sp)+, %a6",
25363            "movem.l (%sp)+, %d1/%a0-%a1",
25364            basereg = in(reg) DOSBase,
25365            in("d1") code,
25366            in("d2") header,
25367            out("d0") asm_ret_value,
25368        );
25369    }
25370    asm_ret_value
25371}
25372
25373/// libname: "dos.library" (V36) (Kickstart 2.0)
25374pub unsafe fn ErrorReport(
25375    DOSBase: *mut Library,
25376    code: LONG,
25377    type_: LONG,
25378    arg1: ULONG,
25379    device: *mut MsgPort,
25380) -> LONG {
25381    let asm_ret_value: LONG;
25382    unsafe {
25383        asm!(
25384            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25385            ".short 0x40c0",
25386            "move.l %a6, -(%sp)",
25387            "move.l {basereg}, %a6",
25388            ".short 0x4eae", // jsr -480(a6)
25389            ".short -480",
25390            "move.l (%sp)+, %a6",
25391            "movem.l (%sp)+, %d1/%a0-%a1",
25392            basereg = in(reg) DOSBase,
25393            in("d1") code,
25394            in("d2") type_,
25395            in("d3") arg1,
25396            in("d4") device,
25397            out("d0") asm_ret_value,
25398        );
25399    }
25400    asm_ret_value
25401}
25402
25403/// libname: "dos.library" (V36) (Kickstart 2.0)
25404pub unsafe fn Cli(DOSBase: *mut Library) -> *mut CommandLineInterface {
25405    let asm_ret_value: *mut CommandLineInterface;
25406    unsafe {
25407        asm!(
25408            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25409            ".short 0x40c0",
25410            "move.l %a6, -(%sp)",
25411            "move.l {basereg}, %a6",
25412            ".short 0x4eae", // jsr -492(a6)
25413            ".short -492",
25414            "move.l (%sp)+, %a6",
25415            "movem.l (%sp)+, %d1/%a0-%a1",
25416            basereg = in(reg) DOSBase,
25417            out("d0") asm_ret_value,
25418        );
25419    }
25420    asm_ret_value
25421}
25422
25423/// libname: "dos.library" (V36) (Kickstart 2.0)
25424pub unsafe fn CreateNewProc(DOSBase: *mut Library, tags: *const TagItem) -> *mut Process {
25425    let asm_ret_value: *mut Process;
25426    unsafe {
25427        asm!(
25428            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25429            ".short 0x40c0",
25430            "move.l %a6, -(%sp)",
25431            "move.l {basereg}, %a6",
25432            ".short 0x4eae", // jsr -498(a6)
25433            ".short -498",
25434            "move.l (%sp)+, %a6",
25435            "movem.l (%sp)+, %d1/%a0-%a1",
25436            basereg = in(reg) DOSBase,
25437            in("d1") tags,
25438            out("d0") asm_ret_value,
25439        );
25440    }
25441    asm_ret_value
25442}
25443
25444/// libname: "dos.library" (V36) (Kickstart 2.0)
25445pub unsafe fn CreateNewProcTagList(DOSBase: *mut Library, tags: *const TagItem) -> *mut Process {
25446    let asm_ret_value: *mut Process;
25447    unsafe {
25448        asm!(
25449            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25450            ".short 0x40c0",
25451            "move.l %a6, -(%sp)",
25452            "move.l {basereg}, %a6",
25453            ".short 0x4eae", // jsr -498(a6)
25454            ".short -498",
25455            "move.l (%sp)+, %a6",
25456            "movem.l (%sp)+, %d1/%a0-%a1",
25457            basereg = in(reg) DOSBase,
25458            in("d1") tags,
25459            out("d0") asm_ret_value,
25460        );
25461    }
25462    asm_ret_value
25463}
25464
25465/// libname: "dos.library" (V36) (Kickstart 2.0)
25466pub unsafe fn RunCommand(
25467    DOSBase: *mut Library,
25468    seg: BPTR,
25469    stack: LONG,
25470    paramptr: CONST_STRPTR,
25471    paramlen: LONG,
25472) -> LONG {
25473    let asm_ret_value: LONG;
25474    unsafe {
25475        asm!(
25476            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25477            ".short 0x40c0",
25478            "move.l %a6, -(%sp)",
25479            "move.l {basereg}, %a6",
25480            ".short 0x4eae", // jsr -504(a6)
25481            ".short -504",
25482            "move.l (%sp)+, %a6",
25483            "movem.l (%sp)+, %d1/%a0-%a1",
25484            basereg = in(reg) DOSBase,
25485            in("d1") seg,
25486            in("d2") stack,
25487            in("d3") paramptr,
25488            in("d4") paramlen,
25489            out("d0") asm_ret_value,
25490        );
25491    }
25492    asm_ret_value
25493}
25494
25495/// libname: "dos.library" (V36) (Kickstart 2.0)
25496pub unsafe fn GetConsoleTask(DOSBase: *mut Library) -> *mut MsgPort {
25497    let asm_ret_value: *mut MsgPort;
25498    unsafe {
25499        asm!(
25500            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25501            ".short 0x40c0",
25502            "move.l %a6, -(%sp)",
25503            "move.l {basereg}, %a6",
25504            ".short 0x4eae", // jsr -510(a6)
25505            ".short -510",
25506            "move.l (%sp)+, %a6",
25507            "movem.l (%sp)+, %d1/%a0-%a1",
25508            basereg = in(reg) DOSBase,
25509            out("d0") asm_ret_value,
25510        );
25511    }
25512    asm_ret_value
25513}
25514
25515/// libname: "dos.library" (V36) (Kickstart 2.0)
25516pub unsafe fn SetConsoleTask(DOSBase: *mut Library, task: *mut MsgPort) -> *mut MsgPort {
25517    let asm_ret_value: *mut MsgPort;
25518    unsafe {
25519        asm!(
25520            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25521            ".short 0x40c0",
25522            "move.l %a6, -(%sp)",
25523            "move.l {basereg}, %a6",
25524            ".short 0x4eae", // jsr -516(a6)
25525            ".short -516",
25526            "move.l (%sp)+, %a6",
25527            "movem.l (%sp)+, %d1/%a0-%a1",
25528            basereg = in(reg) DOSBase,
25529            in("d1") task,
25530            out("d0") asm_ret_value,
25531        );
25532    }
25533    asm_ret_value
25534}
25535
25536/// libname: "dos.library" (V36) (Kickstart 2.0)
25537pub unsafe fn GetFileSysTask(DOSBase: *mut Library) -> *mut MsgPort {
25538    let asm_ret_value: *mut MsgPort;
25539    unsafe {
25540        asm!(
25541            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25542            ".short 0x40c0",
25543            "move.l %a6, -(%sp)",
25544            "move.l {basereg}, %a6",
25545            ".short 0x4eae", // jsr -522(a6)
25546            ".short -522",
25547            "move.l (%sp)+, %a6",
25548            "movem.l (%sp)+, %d1/%a0-%a1",
25549            basereg = in(reg) DOSBase,
25550            out("d0") asm_ret_value,
25551        );
25552    }
25553    asm_ret_value
25554}
25555
25556/// libname: "dos.library" (V36) (Kickstart 2.0)
25557pub unsafe fn SetFileSysTask(DOSBase: *mut Library, task: *mut MsgPort) -> *mut MsgPort {
25558    let asm_ret_value: *mut MsgPort;
25559    unsafe {
25560        asm!(
25561            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25562            ".short 0x40c0",
25563            "move.l %a6, -(%sp)",
25564            "move.l {basereg}, %a6",
25565            ".short 0x4eae", // jsr -528(a6)
25566            ".short -528",
25567            "move.l (%sp)+, %a6",
25568            "movem.l (%sp)+, %d1/%a0-%a1",
25569            basereg = in(reg) DOSBase,
25570            in("d1") task,
25571            out("d0") asm_ret_value,
25572        );
25573    }
25574    asm_ret_value
25575}
25576
25577/// libname: "dos.library" (V36) (Kickstart 2.0)
25578pub unsafe fn GetArgStr(DOSBase: *mut Library) -> STRPTR {
25579    let asm_ret_value: STRPTR;
25580    unsafe {
25581        asm!(
25582            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25583            ".short 0x40c0",
25584            "move.l %a6, -(%sp)",
25585            "move.l {basereg}, %a6",
25586            ".short 0x4eae", // jsr -534(a6)
25587            ".short -534",
25588            "move.l (%sp)+, %a6",
25589            "movem.l (%sp)+, %d1/%a0-%a1",
25590            basereg = in(reg) DOSBase,
25591            out("d0") asm_ret_value,
25592        );
25593    }
25594    asm_ret_value
25595}
25596
25597/// libname: "dos.library" (V36) (Kickstart 2.0)
25598pub unsafe fn SetArgStr(DOSBase: *mut Library, string: STRPTR) -> STRPTR {
25599    let asm_ret_value: STRPTR;
25600    unsafe {
25601        asm!(
25602            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25603            ".short 0x40c0",
25604            "move.l %a6, -(%sp)",
25605            "move.l {basereg}, %a6",
25606            ".short 0x4eae", // jsr -540(a6)
25607            ".short -540",
25608            "move.l (%sp)+, %a6",
25609            "movem.l (%sp)+, %d1/%a0-%a1",
25610            basereg = in(reg) DOSBase,
25611            in("d1") string,
25612            out("d0") asm_ret_value,
25613        );
25614    }
25615    asm_ret_value
25616}
25617
25618/// libname: "dos.library" (V36) (Kickstart 2.0)
25619pub unsafe fn FindCliProc(DOSBase: *mut Library, num: ULONG) -> *mut Process {
25620    let asm_ret_value: *mut Process;
25621    unsafe {
25622        asm!(
25623            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25624            ".short 0x40c0",
25625            "move.l %a6, -(%sp)",
25626            "move.l {basereg}, %a6",
25627            ".short 0x4eae", // jsr -546(a6)
25628            ".short -546",
25629            "move.l (%sp)+, %a6",
25630            "movem.l (%sp)+, %d1/%a0-%a1",
25631            basereg = in(reg) DOSBase,
25632            in("d1") num,
25633            out("d0") asm_ret_value,
25634        );
25635    }
25636    asm_ret_value
25637}
25638
25639/// libname: "dos.library" (V36) (Kickstart 2.0)
25640pub unsafe fn MaxCli(DOSBase: *mut Library) -> ULONG {
25641    let asm_ret_value: ULONG;
25642    unsafe {
25643        asm!(
25644            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25645            ".short 0x40c0",
25646            "move.l %a6, -(%sp)",
25647            "move.l {basereg}, %a6",
25648            ".short 0x4eae", // jsr -552(a6)
25649            ".short -552",
25650            "move.l (%sp)+, %a6",
25651            "movem.l (%sp)+, %d1/%a0-%a1",
25652            basereg = in(reg) DOSBase,
25653            out("d0") asm_ret_value,
25654        );
25655    }
25656    asm_ret_value
25657}
25658
25659/// libname: "dos.library" (V36) (Kickstart 2.0)
25660pub unsafe fn SetCurrentDirName(DOSBase: *mut Library, name: CONST_STRPTR) -> BOOL {
25661    let asm_ret_value: BOOL;
25662    unsafe {
25663        asm!(
25664            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25665            ".short 0x40c0",
25666            "move.l %a6, -(%sp)",
25667            "move.l {basereg}, %a6",
25668            ".short 0x4eae", // jsr -558(a6)
25669            ".short -558",
25670            "move.l (%sp)+, %a6",
25671            "movem.l (%sp)+, %d1/%a0-%a1",
25672            basereg = in(reg) DOSBase,
25673            in("d1") name,
25674            out("d0") asm_ret_value,
25675        );
25676    }
25677    asm_ret_value
25678}
25679
25680/// libname: "dos.library" (V36) (Kickstart 2.0)
25681pub unsafe fn GetCurrentDirName(DOSBase: *mut Library, buf: STRPTR, len: LONG) -> BOOL {
25682    let asm_ret_value: BOOL;
25683    unsafe {
25684        asm!(
25685            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25686            ".short 0x40c0",
25687            "move.l %a6, -(%sp)",
25688            "move.l {basereg}, %a6",
25689            ".short 0x4eae", // jsr -564(a6)
25690            ".short -564",
25691            "move.l (%sp)+, %a6",
25692            "movem.l (%sp)+, %d1/%a0-%a1",
25693            basereg = in(reg) DOSBase,
25694            in("d1") buf,
25695            in("d2") len,
25696            out("d0") asm_ret_value,
25697        );
25698    }
25699    asm_ret_value
25700}
25701
25702/// libname: "dos.library" (V36) (Kickstart 2.0)
25703pub unsafe fn SetProgramName(DOSBase: *mut Library, name: CONST_STRPTR) -> BOOL {
25704    let asm_ret_value: BOOL;
25705    unsafe {
25706        asm!(
25707            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25708            ".short 0x40c0",
25709            "move.l %a6, -(%sp)",
25710            "move.l {basereg}, %a6",
25711            ".short 0x4eae", // jsr -570(a6)
25712            ".short -570",
25713            "move.l (%sp)+, %a6",
25714            "movem.l (%sp)+, %d1/%a0-%a1",
25715            basereg = in(reg) DOSBase,
25716            in("d1") name,
25717            out("d0") asm_ret_value,
25718        );
25719    }
25720    asm_ret_value
25721}
25722
25723/// libname: "dos.library" (V36) (Kickstart 2.0)
25724pub unsafe fn GetProgramName(DOSBase: *mut Library, buf: STRPTR, len: LONG) -> BOOL {
25725    let asm_ret_value: BOOL;
25726    unsafe {
25727        asm!(
25728            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25729            ".short 0x40c0",
25730            "move.l %a6, -(%sp)",
25731            "move.l {basereg}, %a6",
25732            ".short 0x4eae", // jsr -576(a6)
25733            ".short -576",
25734            "move.l (%sp)+, %a6",
25735            "movem.l (%sp)+, %d1/%a0-%a1",
25736            basereg = in(reg) DOSBase,
25737            in("d1") buf,
25738            in("d2") len,
25739            out("d0") asm_ret_value,
25740        );
25741    }
25742    asm_ret_value
25743}
25744
25745/// libname: "dos.library" (V36) (Kickstart 2.0)
25746pub unsafe fn SetPrompt(DOSBase: *mut Library, name: CONST_STRPTR) -> BOOL {
25747    let asm_ret_value: BOOL;
25748    unsafe {
25749        asm!(
25750            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25751            ".short 0x40c0",
25752            "move.l %a6, -(%sp)",
25753            "move.l {basereg}, %a6",
25754            ".short 0x4eae", // jsr -582(a6)
25755            ".short -582",
25756            "move.l (%sp)+, %a6",
25757            "movem.l (%sp)+, %d1/%a0-%a1",
25758            basereg = in(reg) DOSBase,
25759            in("d1") name,
25760            out("d0") asm_ret_value,
25761        );
25762    }
25763    asm_ret_value
25764}
25765
25766/// libname: "dos.library" (V36) (Kickstart 2.0)
25767pub unsafe fn GetPrompt(DOSBase: *mut Library, buf: STRPTR, len: LONG) -> BOOL {
25768    let asm_ret_value: BOOL;
25769    unsafe {
25770        asm!(
25771            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25772            ".short 0x40c0",
25773            "move.l %a6, -(%sp)",
25774            "move.l {basereg}, %a6",
25775            ".short 0x4eae", // jsr -588(a6)
25776            ".short -588",
25777            "move.l (%sp)+, %a6",
25778            "movem.l (%sp)+, %d1/%a0-%a1",
25779            basereg = in(reg) DOSBase,
25780            in("d1") buf,
25781            in("d2") len,
25782            out("d0") asm_ret_value,
25783        );
25784    }
25785    asm_ret_value
25786}
25787
25788/// libname: "dos.library" (V36) (Kickstart 2.0)
25789pub unsafe fn SetProgramDir(DOSBase: *mut Library, lock: BPTR) -> BPTR {
25790    let asm_ret_value: BPTR;
25791    unsafe {
25792        asm!(
25793            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25794            ".short 0x40c0",
25795            "move.l %a6, -(%sp)",
25796            "move.l {basereg}, %a6",
25797            ".short 0x4eae", // jsr -594(a6)
25798            ".short -594",
25799            "move.l (%sp)+, %a6",
25800            "movem.l (%sp)+, %d1/%a0-%a1",
25801            basereg = in(reg) DOSBase,
25802            in("d1") lock,
25803            out("d0") asm_ret_value,
25804        );
25805    }
25806    asm_ret_value
25807}
25808
25809/// libname: "dos.library" (V36) (Kickstart 2.0)
25810pub unsafe fn GetProgramDir(DOSBase: *mut Library) -> BPTR {
25811    let asm_ret_value: BPTR;
25812    unsafe {
25813        asm!(
25814            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25815            ".short 0x40c0",
25816            "move.l %a6, -(%sp)",
25817            "move.l {basereg}, %a6",
25818            ".short 0x4eae", // jsr -600(a6)
25819            ".short -600",
25820            "move.l (%sp)+, %a6",
25821            "movem.l (%sp)+, %d1/%a0-%a1",
25822            basereg = in(reg) DOSBase,
25823            out("d0") asm_ret_value,
25824        );
25825    }
25826    asm_ret_value
25827}
25828
25829/// libname: "dos.library" (V36) (Kickstart 2.0)
25830pub unsafe fn SystemTagList(
25831    DOSBase: *mut Library,
25832    command: CONST_STRPTR,
25833    tags: *const TagItem,
25834) -> LONG {
25835    let asm_ret_value: LONG;
25836    unsafe {
25837        asm!(
25838            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25839            ".short 0x40c0",
25840            "move.l %a6, -(%sp)",
25841            "move.l {basereg}, %a6",
25842            ".short 0x4eae", // jsr -606(a6)
25843            ".short -606",
25844            "move.l (%sp)+, %a6",
25845            "movem.l (%sp)+, %d1/%a0-%a1",
25846            basereg = in(reg) DOSBase,
25847            in("d1") command,
25848            in("d2") tags,
25849            out("d0") asm_ret_value,
25850        );
25851    }
25852    asm_ret_value
25853}
25854
25855/// libname: "dos.library" (V36) (Kickstart 2.0)
25856pub unsafe fn System(DOSBase: *mut Library, command: CONST_STRPTR, tags: *const TagItem) -> LONG {
25857    let asm_ret_value: LONG;
25858    unsafe {
25859        asm!(
25860            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25861            ".short 0x40c0",
25862            "move.l %a6, -(%sp)",
25863            "move.l {basereg}, %a6",
25864            ".short 0x4eae", // jsr -606(a6)
25865            ".short -606",
25866            "move.l (%sp)+, %a6",
25867            "movem.l (%sp)+, %d1/%a0-%a1",
25868            basereg = in(reg) DOSBase,
25869            in("d1") command,
25870            in("d2") tags,
25871            out("d0") asm_ret_value,
25872        );
25873    }
25874    asm_ret_value
25875}
25876
25877/// libname: "dos.library" (V36) (Kickstart 2.0)
25878pub unsafe fn AssignLock(DOSBase: *mut Library, name: CONST_STRPTR, lock: BPTR) -> LONG {
25879    let asm_ret_value: LONG;
25880    unsafe {
25881        asm!(
25882            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25883            ".short 0x40c0",
25884            "move.l %a6, -(%sp)",
25885            "move.l {basereg}, %a6",
25886            ".short 0x4eae", // jsr -612(a6)
25887            ".short -612",
25888            "move.l (%sp)+, %a6",
25889            "movem.l (%sp)+, %d1/%a0-%a1",
25890            basereg = in(reg) DOSBase,
25891            in("d1") name,
25892            in("d2") lock,
25893            out("d0") asm_ret_value,
25894        );
25895    }
25896    asm_ret_value
25897}
25898
25899/// libname: "dos.library" (V36) (Kickstart 2.0)
25900pub unsafe fn AssignLate(DOSBase: *mut Library, name: CONST_STRPTR, path: CONST_STRPTR) -> BOOL {
25901    let asm_ret_value: BOOL;
25902    unsafe {
25903        asm!(
25904            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25905            ".short 0x40c0",
25906            "move.l %a6, -(%sp)",
25907            "move.l {basereg}, %a6",
25908            ".short 0x4eae", // jsr -618(a6)
25909            ".short -618",
25910            "move.l (%sp)+, %a6",
25911            "movem.l (%sp)+, %d1/%a0-%a1",
25912            basereg = in(reg) DOSBase,
25913            in("d1") name,
25914            in("d2") path,
25915            out("d0") asm_ret_value,
25916        );
25917    }
25918    asm_ret_value
25919}
25920
25921/// libname: "dos.library" (V36) (Kickstart 2.0)
25922pub unsafe fn AssignPath(DOSBase: *mut Library, name: CONST_STRPTR, path: CONST_STRPTR) -> BOOL {
25923    let asm_ret_value: BOOL;
25924    unsafe {
25925        asm!(
25926            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25927            ".short 0x40c0",
25928            "move.l %a6, -(%sp)",
25929            "move.l {basereg}, %a6",
25930            ".short 0x4eae", // jsr -624(a6)
25931            ".short -624",
25932            "move.l (%sp)+, %a6",
25933            "movem.l (%sp)+, %d1/%a0-%a1",
25934            basereg = in(reg) DOSBase,
25935            in("d1") name,
25936            in("d2") path,
25937            out("d0") asm_ret_value,
25938        );
25939    }
25940    asm_ret_value
25941}
25942
25943/// libname: "dos.library" (V36) (Kickstart 2.0)
25944pub unsafe fn AssignAdd(DOSBase: *mut Library, name: CONST_STRPTR, lock: BPTR) -> BOOL {
25945    let asm_ret_value: BOOL;
25946    unsafe {
25947        asm!(
25948            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25949            ".short 0x40c0",
25950            "move.l %a6, -(%sp)",
25951            "move.l {basereg}, %a6",
25952            ".short 0x4eae", // jsr -630(a6)
25953            ".short -630",
25954            "move.l (%sp)+, %a6",
25955            "movem.l (%sp)+, %d1/%a0-%a1",
25956            basereg = in(reg) DOSBase,
25957            in("d1") name,
25958            in("d2") lock,
25959            out("d0") asm_ret_value,
25960        );
25961    }
25962    asm_ret_value
25963}
25964
25965/// libname: "dos.library" (V36) (Kickstart 2.0)
25966pub unsafe fn RemAssignList(DOSBase: *mut Library, name: CONST_STRPTR, lock: BPTR) -> LONG {
25967    let asm_ret_value: LONG;
25968    unsafe {
25969        asm!(
25970            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25971            ".short 0x40c0",
25972            "move.l %a6, -(%sp)",
25973            "move.l {basereg}, %a6",
25974            ".short 0x4eae", // jsr -636(a6)
25975            ".short -636",
25976            "move.l (%sp)+, %a6",
25977            "movem.l (%sp)+, %d1/%a0-%a1",
25978            basereg = in(reg) DOSBase,
25979            in("d1") name,
25980            in("d2") lock,
25981            out("d0") asm_ret_value,
25982        );
25983    }
25984    asm_ret_value
25985}
25986
25987/// libname: "dos.library" (V36) (Kickstart 2.0)
25988pub unsafe fn GetDeviceProc(
25989    DOSBase: *mut Library,
25990    name: CONST_STRPTR,
25991    dp: *mut DevProc,
25992) -> *mut DevProc {
25993    let asm_ret_value: *mut DevProc;
25994    unsafe {
25995        asm!(
25996            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
25997            ".short 0x40c0",
25998            "move.l %a6, -(%sp)",
25999            "move.l {basereg}, %a6",
26000            ".short 0x4eae", // jsr -642(a6)
26001            ".short -642",
26002            "move.l (%sp)+, %a6",
26003            "movem.l (%sp)+, %d1/%a0-%a1",
26004            basereg = in(reg) DOSBase,
26005            in("d1") name,
26006            in("d2") dp,
26007            out("d0") asm_ret_value,
26008        );
26009    }
26010    asm_ret_value
26011}
26012
26013/// libname: "dos.library" (V36) (Kickstart 2.0)
26014pub unsafe fn FreeDeviceProc(DOSBase: *mut Library, dp: *mut DevProc) {
26015    unsafe {
26016        asm!(
26017            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
26018            ".short 0xc0c0",
26019            "move.l %a6, -(%sp)",
26020            "move.l {basereg}, %a6",
26021            ".short 0x4eae", // jsr -648(a6)
26022            ".short -648",
26023            "move.l (%sp)+, %a6",
26024            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
26025            basereg = in(reg) DOSBase,
26026            in("d1") dp,
26027        );
26028    }
26029}
26030
26031/// libname: "dos.library" (V36) (Kickstart 2.0)
26032pub unsafe fn LockDosList(DOSBase: *mut Library, flags: ULONG) -> *mut DosList {
26033    let asm_ret_value: *mut DosList;
26034    unsafe {
26035        asm!(
26036            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26037            ".short 0x40c0",
26038            "move.l %a6, -(%sp)",
26039            "move.l {basereg}, %a6",
26040            ".short 0x4eae", // jsr -654(a6)
26041            ".short -654",
26042            "move.l (%sp)+, %a6",
26043            "movem.l (%sp)+, %d1/%a0-%a1",
26044            basereg = in(reg) DOSBase,
26045            in("d1") flags,
26046            out("d0") asm_ret_value,
26047        );
26048    }
26049    asm_ret_value
26050}
26051
26052/// libname: "dos.library" (V36) (Kickstart 2.0)
26053pub unsafe fn UnLockDosList(DOSBase: *mut Library, flags: ULONG) {
26054    unsafe {
26055        asm!(
26056            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
26057            ".short 0xc0c0",
26058            "move.l %a6, -(%sp)",
26059            "move.l {basereg}, %a6",
26060            ".short 0x4eae", // jsr -660(a6)
26061            ".short -660",
26062            "move.l (%sp)+, %a6",
26063            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
26064            basereg = in(reg) DOSBase,
26065            in("d1") flags,
26066        );
26067    }
26068}
26069
26070/// libname: "dos.library" (V36) (Kickstart 2.0)
26071pub unsafe fn AttemptLockDosList(DOSBase: *mut Library, flags: ULONG) -> *mut DosList {
26072    let asm_ret_value: *mut DosList;
26073    unsafe {
26074        asm!(
26075            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26076            ".short 0x40c0",
26077            "move.l %a6, -(%sp)",
26078            "move.l {basereg}, %a6",
26079            ".short 0x4eae", // jsr -666(a6)
26080            ".short -666",
26081            "move.l (%sp)+, %a6",
26082            "movem.l (%sp)+, %d1/%a0-%a1",
26083            basereg = in(reg) DOSBase,
26084            in("d1") flags,
26085            out("d0") asm_ret_value,
26086        );
26087    }
26088    asm_ret_value
26089}
26090
26091/// libname: "dos.library" (V36) (Kickstart 2.0)
26092pub unsafe fn RemDosEntry(DOSBase: *mut Library, dlist: *mut DosList) -> BOOL {
26093    let asm_ret_value: BOOL;
26094    unsafe {
26095        asm!(
26096            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26097            ".short 0x40c0",
26098            "move.l %a6, -(%sp)",
26099            "move.l {basereg}, %a6",
26100            ".short 0x4eae", // jsr -672(a6)
26101            ".short -672",
26102            "move.l (%sp)+, %a6",
26103            "movem.l (%sp)+, %d1/%a0-%a1",
26104            basereg = in(reg) DOSBase,
26105            in("d1") dlist,
26106            out("d0") asm_ret_value,
26107        );
26108    }
26109    asm_ret_value
26110}
26111
26112/// libname: "dos.library" (V36) (Kickstart 2.0)
26113pub unsafe fn AddDosEntry(DOSBase: *mut Library, dlist: *mut DosList) -> LONG {
26114    let asm_ret_value: LONG;
26115    unsafe {
26116        asm!(
26117            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26118            ".short 0x40c0",
26119            "move.l %a6, -(%sp)",
26120            "move.l {basereg}, %a6",
26121            ".short 0x4eae", // jsr -678(a6)
26122            ".short -678",
26123            "move.l (%sp)+, %a6",
26124            "movem.l (%sp)+, %d1/%a0-%a1",
26125            basereg = in(reg) DOSBase,
26126            in("d1") dlist,
26127            out("d0") asm_ret_value,
26128        );
26129    }
26130    asm_ret_value
26131}
26132
26133/// libname: "dos.library" (V36) (Kickstart 2.0)
26134pub unsafe fn FindDosEntry(
26135    DOSBase: *mut Library,
26136    dlist: *const DosList,
26137    name: CONST_STRPTR,
26138    flags: ULONG,
26139) -> *mut DosList {
26140    let asm_ret_value: *mut DosList;
26141    unsafe {
26142        asm!(
26143            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26144            ".short 0x40c0",
26145            "move.l %a6, -(%sp)",
26146            "move.l {basereg}, %a6",
26147            ".short 0x4eae", // jsr -684(a6)
26148            ".short -684",
26149            "move.l (%sp)+, %a6",
26150            "movem.l (%sp)+, %d1/%a0-%a1",
26151            basereg = in(reg) DOSBase,
26152            in("d1") dlist,
26153            in("d2") name,
26154            in("d3") flags,
26155            out("d0") asm_ret_value,
26156        );
26157    }
26158    asm_ret_value
26159}
26160
26161/// libname: "dos.library" (V36) (Kickstart 2.0)
26162pub unsafe fn NextDosEntry(
26163    DOSBase: *mut Library,
26164    dlist: *const DosList,
26165    flags: ULONG,
26166) -> *mut DosList {
26167    let asm_ret_value: *mut DosList;
26168    unsafe {
26169        asm!(
26170            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26171            ".short 0x40c0",
26172            "move.l %a6, -(%sp)",
26173            "move.l {basereg}, %a6",
26174            ".short 0x4eae", // jsr -690(a6)
26175            ".short -690",
26176            "move.l (%sp)+, %a6",
26177            "movem.l (%sp)+, %d1/%a0-%a1",
26178            basereg = in(reg) DOSBase,
26179            in("d1") dlist,
26180            in("d2") flags,
26181            out("d0") asm_ret_value,
26182        );
26183    }
26184    asm_ret_value
26185}
26186
26187/// libname: "dos.library" (V36) (Kickstart 2.0)
26188pub unsafe fn MakeDosEntry(DOSBase: *mut Library, name: CONST_STRPTR, type_: LONG) -> *mut DosList {
26189    let asm_ret_value: *mut DosList;
26190    unsafe {
26191        asm!(
26192            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26193            ".short 0x40c0",
26194            "move.l %a6, -(%sp)",
26195            "move.l {basereg}, %a6",
26196            ".short 0x4eae", // jsr -696(a6)
26197            ".short -696",
26198            "move.l (%sp)+, %a6",
26199            "movem.l (%sp)+, %d1/%a0-%a1",
26200            basereg = in(reg) DOSBase,
26201            in("d1") name,
26202            in("d2") type_,
26203            out("d0") asm_ret_value,
26204        );
26205    }
26206    asm_ret_value
26207}
26208
26209/// libname: "dos.library" (V36) (Kickstart 2.0)
26210pub unsafe fn FreeDosEntry(DOSBase: *mut Library, dlist: *mut DosList) {
26211    unsafe {
26212        asm!(
26213            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
26214            ".short 0xc0c0",
26215            "move.l %a6, -(%sp)",
26216            "move.l {basereg}, %a6",
26217            ".short 0x4eae", // jsr -702(a6)
26218            ".short -702",
26219            "move.l (%sp)+, %a6",
26220            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
26221            basereg = in(reg) DOSBase,
26222            in("d1") dlist,
26223        );
26224    }
26225}
26226
26227/// libname: "dos.library" (V36) (Kickstart 2.0)
26228pub unsafe fn IsFileSystem(DOSBase: *mut Library, name: CONST_STRPTR) -> BOOL {
26229    let asm_ret_value: BOOL;
26230    unsafe {
26231        asm!(
26232            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26233            ".short 0x40c0",
26234            "move.l %a6, -(%sp)",
26235            "move.l {basereg}, %a6",
26236            ".short 0x4eae", // jsr -708(a6)
26237            ".short -708",
26238            "move.l (%sp)+, %a6",
26239            "movem.l (%sp)+, %d1/%a0-%a1",
26240            basereg = in(reg) DOSBase,
26241            in("d1") name,
26242            out("d0") asm_ret_value,
26243        );
26244    }
26245    asm_ret_value
26246}
26247
26248/// libname: "dos.library" (V36) (Kickstart 2.0)
26249pub unsafe fn Format(
26250    DOSBase: *mut Library,
26251    filesystem: CONST_STRPTR,
26252    volumename: CONST_STRPTR,
26253    dostype: ULONG,
26254) -> BOOL {
26255    let asm_ret_value: BOOL;
26256    unsafe {
26257        asm!(
26258            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26259            ".short 0x40c0",
26260            "move.l %a6, -(%sp)",
26261            "move.l {basereg}, %a6",
26262            ".short 0x4eae", // jsr -714(a6)
26263            ".short -714",
26264            "move.l (%sp)+, %a6",
26265            "movem.l (%sp)+, %d1/%a0-%a1",
26266            basereg = in(reg) DOSBase,
26267            in("d1") filesystem,
26268            in("d2") volumename,
26269            in("d3") dostype,
26270            out("d0") asm_ret_value,
26271        );
26272    }
26273    asm_ret_value
26274}
26275
26276/// libname: "dos.library" (V36) (Kickstart 2.0)
26277pub unsafe fn Relabel(DOSBase: *mut Library, drive: CONST_STRPTR, newname: CONST_STRPTR) -> LONG {
26278    let asm_ret_value: LONG;
26279    unsafe {
26280        asm!(
26281            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26282            ".short 0x40c0",
26283            "move.l %a6, -(%sp)",
26284            "move.l {basereg}, %a6",
26285            ".short 0x4eae", // jsr -720(a6)
26286            ".short -720",
26287            "move.l (%sp)+, %a6",
26288            "movem.l (%sp)+, %d1/%a0-%a1",
26289            basereg = in(reg) DOSBase,
26290            in("d1") drive,
26291            in("d2") newname,
26292            out("d0") asm_ret_value,
26293        );
26294    }
26295    asm_ret_value
26296}
26297
26298/// libname: "dos.library" (V36) (Kickstart 2.0)
26299pub unsafe fn Inhibit(DOSBase: *mut Library, name: CONST_STRPTR, onoff: LONG) -> LONG {
26300    let asm_ret_value: LONG;
26301    unsafe {
26302        asm!(
26303            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26304            ".short 0x40c0",
26305            "move.l %a6, -(%sp)",
26306            "move.l {basereg}, %a6",
26307            ".short 0x4eae", // jsr -726(a6)
26308            ".short -726",
26309            "move.l (%sp)+, %a6",
26310            "movem.l (%sp)+, %d1/%a0-%a1",
26311            basereg = in(reg) DOSBase,
26312            in("d1") name,
26313            in("d2") onoff,
26314            out("d0") asm_ret_value,
26315        );
26316    }
26317    asm_ret_value
26318}
26319
26320/// libname: "dos.library" (V36) (Kickstart 2.0)
26321pub unsafe fn AddBuffers(DOSBase: *mut Library, name: CONST_STRPTR, number: LONG) -> LONG {
26322    let asm_ret_value: LONG;
26323    unsafe {
26324        asm!(
26325            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26326            ".short 0x40c0",
26327            "move.l %a6, -(%sp)",
26328            "move.l {basereg}, %a6",
26329            ".short 0x4eae", // jsr -732(a6)
26330            ".short -732",
26331            "move.l (%sp)+, %a6",
26332            "movem.l (%sp)+, %d1/%a0-%a1",
26333            basereg = in(reg) DOSBase,
26334            in("d1") name,
26335            in("d2") number,
26336            out("d0") asm_ret_value,
26337        );
26338    }
26339    asm_ret_value
26340}
26341
26342/// libname: "dos.library" (V36) (Kickstart 2.0)
26343pub unsafe fn CompareDates(
26344    DOSBase: *mut Library,
26345    date1: *const DateStamp,
26346    date2: *const DateStamp,
26347) -> LONG {
26348    let asm_ret_value: LONG;
26349    unsafe {
26350        asm!(
26351            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26352            ".short 0x40c0",
26353            "move.l %a6, -(%sp)",
26354            "move.l {basereg}, %a6",
26355            ".short 0x4eae", // jsr -738(a6)
26356            ".short -738",
26357            "move.l (%sp)+, %a6",
26358            "movem.l (%sp)+, %d1/%a0-%a1",
26359            basereg = in(reg) DOSBase,
26360            in("d1") date1,
26361            in("d2") date2,
26362            out("d0") asm_ret_value,
26363        );
26364    }
26365    asm_ret_value
26366}
26367
26368/// libname: "dos.library" (V36) (Kickstart 2.0)
26369pub unsafe fn DateToStr(DOSBase: *mut Library, datetime: *mut DateTime) -> LONG {
26370    let asm_ret_value: LONG;
26371    unsafe {
26372        asm!(
26373            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26374            ".short 0x40c0",
26375            "move.l %a6, -(%sp)",
26376            "move.l {basereg}, %a6",
26377            ".short 0x4eae", // jsr -744(a6)
26378            ".short -744",
26379            "move.l (%sp)+, %a6",
26380            "movem.l (%sp)+, %d1/%a0-%a1",
26381            basereg = in(reg) DOSBase,
26382            in("d1") datetime,
26383            out("d0") asm_ret_value,
26384        );
26385    }
26386    asm_ret_value
26387}
26388
26389/// libname: "dos.library" (V36) (Kickstart 2.0)
26390pub unsafe fn StrToDate(DOSBase: *mut Library, datetime: *mut DateTime) -> LONG {
26391    let asm_ret_value: LONG;
26392    unsafe {
26393        asm!(
26394            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26395            ".short 0x40c0",
26396            "move.l %a6, -(%sp)",
26397            "move.l {basereg}, %a6",
26398            ".short 0x4eae", // jsr -750(a6)
26399            ".short -750",
26400            "move.l (%sp)+, %a6",
26401            "movem.l (%sp)+, %d1/%a0-%a1",
26402            basereg = in(reg) DOSBase,
26403            in("d1") datetime,
26404            out("d0") asm_ret_value,
26405        );
26406    }
26407    asm_ret_value
26408}
26409
26410/// libname: "dos.library" (V36) (Kickstart 2.0)
26411pub unsafe fn InternalLoadSeg(
26412    DOSBase: *mut Library,
26413    fh: BPTR,
26414    table: BPTR,
26415    funcarray: *const LONG,
26416    stack: *mut LONG,
26417) -> BPTR {
26418    let asm_ret_value: BPTR;
26419    unsafe {
26420        asm!(
26421            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26422            ".short 0x40c0",
26423            "move.l %a6, -(%sp)",
26424            "move.l {basereg}, %a6",
26425            ".short 0x4eae", // jsr -756(a6)
26426            ".short -756",
26427            "move.l (%sp)+, %a6",
26428            "movem.l (%sp)+, %d1/%a0-%a1",
26429            basereg = in(reg) DOSBase,
26430            in("d0") fh,
26431            in("a0") table,
26432            in("a1") funcarray,
26433            in("a2") stack,
26434            lateout("d0") asm_ret_value,
26435        );
26436    }
26437    asm_ret_value
26438}
26439
26440/// libname: "dos.library" (V36) (Kickstart 2.0)
26441pub unsafe fn InternalUnLoadSeg(DOSBase: *mut Library, seglist: BPTR, freefunc: FPTR) -> BOOL {
26442    let asm_ret_value: BOOL;
26443    unsafe {
26444        asm!(
26445            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26446            ".short 0x40c0",
26447            "move.l %a6, -(%sp)",
26448            "move.l {basereg}, %a6",
26449            ".short 0x4eae", // jsr -762(a6)
26450            ".short -762",
26451            "move.l (%sp)+, %a6",
26452            "movem.l (%sp)+, %d1/%a0-%a1",
26453            basereg = in(reg) DOSBase,
26454            in("d1") seglist,
26455            in("a1") freefunc,
26456            out("d0") asm_ret_value,
26457        );
26458    }
26459    asm_ret_value
26460}
26461
26462/// libname: "dos.library" (V36) (Kickstart 2.0)
26463pub unsafe fn NewLoadSeg(DOSBase: *mut Library, file: CONST_STRPTR, tags: *const TagItem) -> BPTR {
26464    let asm_ret_value: BPTR;
26465    unsafe {
26466        asm!(
26467            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26468            ".short 0x40c0",
26469            "move.l %a6, -(%sp)",
26470            "move.l {basereg}, %a6",
26471            ".short 0x4eae", // jsr -768(a6)
26472            ".short -768",
26473            "move.l (%sp)+, %a6",
26474            "movem.l (%sp)+, %d1/%a0-%a1",
26475            basereg = in(reg) DOSBase,
26476            in("d1") file,
26477            in("d2") tags,
26478            out("d0") asm_ret_value,
26479        );
26480    }
26481    asm_ret_value
26482}
26483
26484/// libname: "dos.library" (V36) (Kickstart 2.0)
26485pub unsafe fn NewLoadSegTagList(
26486    DOSBase: *mut Library,
26487    file: CONST_STRPTR,
26488    tags: *const TagItem,
26489) -> BPTR {
26490    let asm_ret_value: BPTR;
26491    unsafe {
26492        asm!(
26493            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26494            ".short 0x40c0",
26495            "move.l %a6, -(%sp)",
26496            "move.l {basereg}, %a6",
26497            ".short 0x4eae", // jsr -768(a6)
26498            ".short -768",
26499            "move.l (%sp)+, %a6",
26500            "movem.l (%sp)+, %d1/%a0-%a1",
26501            basereg = in(reg) DOSBase,
26502            in("d1") file,
26503            in("d2") tags,
26504            out("d0") asm_ret_value,
26505        );
26506    }
26507    asm_ret_value
26508}
26509
26510/// libname: "dos.library" (V36) (Kickstart 2.0)
26511pub unsafe fn AddSegment(
26512    DOSBase: *mut Library,
26513    name: CONST_STRPTR,
26514    seg: BPTR,
26515    system: LONG,
26516) -> LONG {
26517    let asm_ret_value: LONG;
26518    unsafe {
26519        asm!(
26520            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26521            ".short 0x40c0",
26522            "move.l %a6, -(%sp)",
26523            "move.l {basereg}, %a6",
26524            ".short 0x4eae", // jsr -774(a6)
26525            ".short -774",
26526            "move.l (%sp)+, %a6",
26527            "movem.l (%sp)+, %d1/%a0-%a1",
26528            basereg = in(reg) DOSBase,
26529            in("d1") name,
26530            in("d2") seg,
26531            in("d3") system,
26532            out("d0") asm_ret_value,
26533        );
26534    }
26535    asm_ret_value
26536}
26537
26538/// libname: "dos.library" (V36) (Kickstart 2.0)
26539pub unsafe fn FindSegment(
26540    DOSBase: *mut Library,
26541    name: CONST_STRPTR,
26542    seg: *const Segment,
26543    system: LONG,
26544) -> *mut Segment {
26545    let asm_ret_value: *mut Segment;
26546    unsafe {
26547        asm!(
26548            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26549            ".short 0x40c0",
26550            "move.l %a6, -(%sp)",
26551            "move.l {basereg}, %a6",
26552            ".short 0x4eae", // jsr -780(a6)
26553            ".short -780",
26554            "move.l (%sp)+, %a6",
26555            "movem.l (%sp)+, %d1/%a0-%a1",
26556            basereg = in(reg) DOSBase,
26557            in("d1") name,
26558            in("d2") seg,
26559            in("d3") system,
26560            out("d0") asm_ret_value,
26561        );
26562    }
26563    asm_ret_value
26564}
26565
26566/// libname: "dos.library" (V36) (Kickstart 2.0)
26567pub unsafe fn RemSegment(DOSBase: *mut Library, seg: *mut Segment) -> LONG {
26568    let asm_ret_value: LONG;
26569    unsafe {
26570        asm!(
26571            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26572            ".short 0x40c0",
26573            "move.l %a6, -(%sp)",
26574            "move.l {basereg}, %a6",
26575            ".short 0x4eae", // jsr -786(a6)
26576            ".short -786",
26577            "move.l (%sp)+, %a6",
26578            "movem.l (%sp)+, %d1/%a0-%a1",
26579            basereg = in(reg) DOSBase,
26580            in("d1") seg,
26581            out("d0") asm_ret_value,
26582        );
26583    }
26584    asm_ret_value
26585}
26586
26587/// libname: "dos.library" (V36) (Kickstart 2.0)
26588pub unsafe fn CheckSignal(DOSBase: *mut Library, mask: LONG) -> LONG {
26589    let asm_ret_value: LONG;
26590    unsafe {
26591        asm!(
26592            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26593            ".short 0x40c0",
26594            "move.l %a6, -(%sp)",
26595            "move.l {basereg}, %a6",
26596            ".short 0x4eae", // jsr -792(a6)
26597            ".short -792",
26598            "move.l (%sp)+, %a6",
26599            "movem.l (%sp)+, %d1/%a0-%a1",
26600            basereg = in(reg) DOSBase,
26601            in("d1") mask,
26602            out("d0") asm_ret_value,
26603        );
26604    }
26605    asm_ret_value
26606}
26607
26608/// libname: "dos.library" (V36) (Kickstart 2.0)
26609pub unsafe fn ReadArgs(
26610    DOSBase: *mut Library,
26611    arg_template: CONST_STRPTR,
26612    array: *mut LONG,
26613    args: *mut RDArgs,
26614) -> *mut RDArgs {
26615    let asm_ret_value: *mut RDArgs;
26616    unsafe {
26617        asm!(
26618            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26619            ".short 0x40c0",
26620            "move.l %a6, -(%sp)",
26621            "move.l {basereg}, %a6",
26622            ".short 0x4eae", // jsr -798(a6)
26623            ".short -798",
26624            "move.l (%sp)+, %a6",
26625            "movem.l (%sp)+, %d1/%a0-%a1",
26626            basereg = in(reg) DOSBase,
26627            in("d1") arg_template,
26628            in("d2") array,
26629            in("d3") args,
26630            out("d0") asm_ret_value,
26631        );
26632    }
26633    asm_ret_value
26634}
26635
26636/// libname: "dos.library" (V36) (Kickstart 2.0)
26637pub unsafe fn FindArg(
26638    DOSBase: *mut Library,
26639    keyword: CONST_STRPTR,
26640    arg_template: CONST_STRPTR,
26641) -> LONG {
26642    let asm_ret_value: LONG;
26643    unsafe {
26644        asm!(
26645            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26646            ".short 0x40c0",
26647            "move.l %a6, -(%sp)",
26648            "move.l {basereg}, %a6",
26649            ".short 0x4eae", // jsr -804(a6)
26650            ".short -804",
26651            "move.l (%sp)+, %a6",
26652            "movem.l (%sp)+, %d1/%a0-%a1",
26653            basereg = in(reg) DOSBase,
26654            in("d1") keyword,
26655            in("d2") arg_template,
26656            out("d0") asm_ret_value,
26657        );
26658    }
26659    asm_ret_value
26660}
26661
26662/// libname: "dos.library" (V36) (Kickstart 2.0)
26663pub unsafe fn ReadItem(
26664    DOSBase: *mut Library,
26665    name: CONST_STRPTR,
26666    maxchars: LONG,
26667    cSource: *mut CSource,
26668) -> LONG {
26669    let asm_ret_value: LONG;
26670    unsafe {
26671        asm!(
26672            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26673            ".short 0x40c0",
26674            "move.l %a6, -(%sp)",
26675            "move.l {basereg}, %a6",
26676            ".short 0x4eae", // jsr -810(a6)
26677            ".short -810",
26678            "move.l (%sp)+, %a6",
26679            "movem.l (%sp)+, %d1/%a0-%a1",
26680            basereg = in(reg) DOSBase,
26681            in("d1") name,
26682            in("d2") maxchars,
26683            in("d3") cSource,
26684            out("d0") asm_ret_value,
26685        );
26686    }
26687    asm_ret_value
26688}
26689
26690/// libname: "dos.library" (V36) (Kickstart 2.0)
26691pub unsafe fn StrToLong(DOSBase: *mut Library, string: CONST_STRPTR, value: *mut LONG) -> LONG {
26692    let asm_ret_value: LONG;
26693    unsafe {
26694        asm!(
26695            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26696            ".short 0x40c0",
26697            "move.l %a6, -(%sp)",
26698            "move.l {basereg}, %a6",
26699            ".short 0x4eae", // jsr -816(a6)
26700            ".short -816",
26701            "move.l (%sp)+, %a6",
26702            "movem.l (%sp)+, %d1/%a0-%a1",
26703            basereg = in(reg) DOSBase,
26704            in("d1") string,
26705            in("d2") value,
26706            out("d0") asm_ret_value,
26707        );
26708    }
26709    asm_ret_value
26710}
26711
26712/// libname: "dos.library" (V36) (Kickstart 2.0)
26713pub unsafe fn MatchFirst(
26714    DOSBase: *mut Library,
26715    pat: CONST_STRPTR,
26716    anchor: *mut AnchorPath,
26717) -> LONG {
26718    let asm_ret_value: LONG;
26719    unsafe {
26720        asm!(
26721            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26722            ".short 0x40c0",
26723            "move.l %a6, -(%sp)",
26724            "move.l {basereg}, %a6",
26725            ".short 0x4eae", // jsr -822(a6)
26726            ".short -822",
26727            "move.l (%sp)+, %a6",
26728            "movem.l (%sp)+, %d1/%a0-%a1",
26729            basereg = in(reg) DOSBase,
26730            in("d1") pat,
26731            in("d2") anchor,
26732            out("d0") asm_ret_value,
26733        );
26734    }
26735    asm_ret_value
26736}
26737
26738/// libname: "dos.library" (V36) (Kickstart 2.0)
26739pub unsafe fn MatchNext(DOSBase: *mut Library, anchor: *mut AnchorPath) -> LONG {
26740    let asm_ret_value: LONG;
26741    unsafe {
26742        asm!(
26743            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26744            ".short 0x40c0",
26745            "move.l %a6, -(%sp)",
26746            "move.l {basereg}, %a6",
26747            ".short 0x4eae", // jsr -828(a6)
26748            ".short -828",
26749            "move.l (%sp)+, %a6",
26750            "movem.l (%sp)+, %d1/%a0-%a1",
26751            basereg = in(reg) DOSBase,
26752            in("d1") anchor,
26753            out("d0") asm_ret_value,
26754        );
26755    }
26756    asm_ret_value
26757}
26758
26759/// libname: "dos.library" (V36) (Kickstart 2.0)
26760pub unsafe fn MatchEnd(DOSBase: *mut Library, anchor: *mut AnchorPath) {
26761    unsafe {
26762        asm!(
26763            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
26764            ".short 0xc0c0",
26765            "move.l %a6, -(%sp)",
26766            "move.l {basereg}, %a6",
26767            ".short 0x4eae", // jsr -834(a6)
26768            ".short -834",
26769            "move.l (%sp)+, %a6",
26770            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
26771            basereg = in(reg) DOSBase,
26772            in("d1") anchor,
26773        );
26774    }
26775}
26776
26777/// libname: "dos.library" (V36) (Kickstart 2.0)
26778pub unsafe fn ParsePattern(
26779    DOSBase: *mut Library,
26780    pat: CONST_STRPTR,
26781    patbuf: *mut UBYTE,
26782    patbuflen: LONG,
26783) -> LONG {
26784    let asm_ret_value: LONG;
26785    unsafe {
26786        asm!(
26787            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26788            ".short 0x40c0",
26789            "move.l %a6, -(%sp)",
26790            "move.l {basereg}, %a6",
26791            ".short 0x4eae", // jsr -840(a6)
26792            ".short -840",
26793            "move.l (%sp)+, %a6",
26794            "movem.l (%sp)+, %d1/%a0-%a1",
26795            basereg = in(reg) DOSBase,
26796            in("d1") pat,
26797            in("d2") patbuf,
26798            in("d3") patbuflen,
26799            out("d0") asm_ret_value,
26800        );
26801    }
26802    asm_ret_value
26803}
26804
26805/// libname: "dos.library" (V36) (Kickstart 2.0)
26806pub unsafe fn MatchPattern(
26807    DOSBase: *mut Library,
26808    patbuf: *const UBYTE,
26809    str_: CONST_STRPTR,
26810) -> BOOL {
26811    let asm_ret_value: BOOL;
26812    unsafe {
26813        asm!(
26814            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26815            ".short 0x40c0",
26816            "move.l %a6, -(%sp)",
26817            "move.l {basereg}, %a6",
26818            ".short 0x4eae", // jsr -846(a6)
26819            ".short -846",
26820            "move.l (%sp)+, %a6",
26821            "movem.l (%sp)+, %d1/%a0-%a1",
26822            basereg = in(reg) DOSBase,
26823            in("d1") patbuf,
26824            in("d2") str_,
26825            out("d0") asm_ret_value,
26826        );
26827    }
26828    asm_ret_value
26829}
26830
26831/// libname: "dos.library" (V36) (Kickstart 2.0)
26832pub unsafe fn FreeArgs(DOSBase: *mut Library, args: *mut RDArgs) {
26833    unsafe {
26834        asm!(
26835            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
26836            ".short 0xc0c0",
26837            "move.l %a6, -(%sp)",
26838            "move.l {basereg}, %a6",
26839            ".short 0x4eae", // jsr -858(a6)
26840            ".short -858",
26841            "move.l (%sp)+, %a6",
26842            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
26843            basereg = in(reg) DOSBase,
26844            in("d1") args,
26845        );
26846    }
26847}
26848
26849/// libname: "dos.library" (V36) (Kickstart 2.0)
26850pub unsafe fn FilePart(DOSBase: *mut Library, path: CONST_STRPTR) -> STRPTR {
26851    let asm_ret_value: STRPTR;
26852    unsafe {
26853        asm!(
26854            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26855            ".short 0x40c0",
26856            "move.l %a6, -(%sp)",
26857            "move.l {basereg}, %a6",
26858            ".short 0x4eae", // jsr -870(a6)
26859            ".short -870",
26860            "move.l (%sp)+, %a6",
26861            "movem.l (%sp)+, %d1/%a0-%a1",
26862            basereg = in(reg) DOSBase,
26863            in("d1") path,
26864            out("d0") asm_ret_value,
26865        );
26866    }
26867    asm_ret_value
26868}
26869
26870/// libname: "dos.library" (V36) (Kickstart 2.0)
26871pub unsafe fn PathPart(DOSBase: *mut Library, path: CONST_STRPTR) -> STRPTR {
26872    let asm_ret_value: STRPTR;
26873    unsafe {
26874        asm!(
26875            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26876            ".short 0x40c0",
26877            "move.l %a6, -(%sp)",
26878            "move.l {basereg}, %a6",
26879            ".short 0x4eae", // jsr -876(a6)
26880            ".short -876",
26881            "move.l (%sp)+, %a6",
26882            "movem.l (%sp)+, %d1/%a0-%a1",
26883            basereg = in(reg) DOSBase,
26884            in("d1") path,
26885            out("d0") asm_ret_value,
26886        );
26887    }
26888    asm_ret_value
26889}
26890
26891/// libname: "dos.library" (V36) (Kickstart 2.0)
26892pub unsafe fn AddPart(
26893    DOSBase: *mut Library,
26894    dirname: STRPTR,
26895    filename: CONST_STRPTR,
26896    size: ULONG,
26897) -> BOOL {
26898    let asm_ret_value: BOOL;
26899    unsafe {
26900        asm!(
26901            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26902            ".short 0x40c0",
26903            "move.l %a6, -(%sp)",
26904            "move.l {basereg}, %a6",
26905            ".short 0x4eae", // jsr -882(a6)
26906            ".short -882",
26907            "move.l (%sp)+, %a6",
26908            "movem.l (%sp)+, %d1/%a0-%a1",
26909            basereg = in(reg) DOSBase,
26910            in("d1") dirname,
26911            in("d2") filename,
26912            in("d3") size,
26913            out("d0") asm_ret_value,
26914        );
26915    }
26916    asm_ret_value
26917}
26918
26919/// libname: "dos.library" (V36) (Kickstart 2.0)
26920pub unsafe fn StartNotify(DOSBase: *mut Library, notify: *mut NotifyRequest) -> BOOL {
26921    let asm_ret_value: BOOL;
26922    unsafe {
26923        asm!(
26924            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26925            ".short 0x40c0",
26926            "move.l %a6, -(%sp)",
26927            "move.l {basereg}, %a6",
26928            ".short 0x4eae", // jsr -888(a6)
26929            ".short -888",
26930            "move.l (%sp)+, %a6",
26931            "movem.l (%sp)+, %d1/%a0-%a1",
26932            basereg = in(reg) DOSBase,
26933            in("d1") notify,
26934            out("d0") asm_ret_value,
26935        );
26936    }
26937    asm_ret_value
26938}
26939
26940/// libname: "dos.library" (V36) (Kickstart 2.0)
26941pub unsafe fn EndNotify(DOSBase: *mut Library, notify: *mut NotifyRequest) {
26942    unsafe {
26943        asm!(
26944            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
26945            ".short 0xc0c0",
26946            "move.l %a6, -(%sp)",
26947            "move.l {basereg}, %a6",
26948            ".short 0x4eae", // jsr -894(a6)
26949            ".short -894",
26950            "move.l (%sp)+, %a6",
26951            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
26952            basereg = in(reg) DOSBase,
26953            in("d1") notify,
26954        );
26955    }
26956}
26957
26958/// libname: "dos.library" (V36) (Kickstart 2.0)
26959pub unsafe fn SetVar(
26960    DOSBase: *mut Library,
26961    name: CONST_STRPTR,
26962    buffer: CONST_STRPTR,
26963    size: LONG,
26964    flags: LONG,
26965) -> BOOL {
26966    let asm_ret_value: BOOL;
26967    unsafe {
26968        asm!(
26969            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
26970            ".short 0x40c0",
26971            "move.l %a6, -(%sp)",
26972            "move.l {basereg}, %a6",
26973            ".short 0x4eae", // jsr -900(a6)
26974            ".short -900",
26975            "move.l (%sp)+, %a6",
26976            "movem.l (%sp)+, %d1/%a0-%a1",
26977            basereg = in(reg) DOSBase,
26978            in("d1") name,
26979            in("d2") buffer,
26980            in("d3") size,
26981            in("d4") flags,
26982            out("d0") asm_ret_value,
26983        );
26984    }
26985    asm_ret_value
26986}
26987
26988/// libname: "dos.library" (V36) (Kickstart 2.0)
26989pub unsafe fn GetVar(
26990    DOSBase: *mut Library,
26991    name: CONST_STRPTR,
26992    buffer: STRPTR,
26993    size: LONG,
26994    flags: LONG,
26995) -> LONG {
26996    let asm_ret_value: LONG;
26997    unsafe {
26998        asm!(
26999            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27000            ".short 0x40c0",
27001            "move.l %a6, -(%sp)",
27002            "move.l {basereg}, %a6",
27003            ".short 0x4eae", // jsr -906(a6)
27004            ".short -906",
27005            "move.l (%sp)+, %a6",
27006            "movem.l (%sp)+, %d1/%a0-%a1",
27007            basereg = in(reg) DOSBase,
27008            in("d1") name,
27009            in("d2") buffer,
27010            in("d3") size,
27011            in("d4") flags,
27012            out("d0") asm_ret_value,
27013        );
27014    }
27015    asm_ret_value
27016}
27017
27018/// libname: "dos.library" (V36) (Kickstart 2.0)
27019pub unsafe fn DeleteVar(DOSBase: *mut Library, name: CONST_STRPTR, flags: ULONG) -> LONG {
27020    let asm_ret_value: LONG;
27021    unsafe {
27022        asm!(
27023            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27024            ".short 0x40c0",
27025            "move.l %a6, -(%sp)",
27026            "move.l {basereg}, %a6",
27027            ".short 0x4eae", // jsr -912(a6)
27028            ".short -912",
27029            "move.l (%sp)+, %a6",
27030            "movem.l (%sp)+, %d1/%a0-%a1",
27031            basereg = in(reg) DOSBase,
27032            in("d1") name,
27033            in("d2") flags,
27034            out("d0") asm_ret_value,
27035        );
27036    }
27037    asm_ret_value
27038}
27039
27040/// libname: "dos.library" (V36) (Kickstart 2.0)
27041pub unsafe fn FindVar(DOSBase: *mut Library, name: CONST_STRPTR, type_: ULONG) -> *mut LocalVar {
27042    let asm_ret_value: *mut LocalVar;
27043    unsafe {
27044        asm!(
27045            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27046            ".short 0x40c0",
27047            "move.l %a6, -(%sp)",
27048            "move.l {basereg}, %a6",
27049            ".short 0x4eae", // jsr -918(a6)
27050            ".short -918",
27051            "move.l (%sp)+, %a6",
27052            "movem.l (%sp)+, %d1/%a0-%a1",
27053            basereg = in(reg) DOSBase,
27054            in("d1") name,
27055            in("d2") type_,
27056            out("d0") asm_ret_value,
27057        );
27058    }
27059    asm_ret_value
27060}
27061
27062/// libname: "dos.library" (V36) (Kickstart 2.0)
27063pub unsafe fn CliInitNewcli(DOSBase: *mut Library, dp: *mut DosPacket) -> LONG {
27064    let asm_ret_value: LONG;
27065    unsafe {
27066        asm!(
27067            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27068            ".short 0x40c0",
27069            "move.l %a6, -(%sp)",
27070            "move.l {basereg}, %a6",
27071            ".short 0x4eae", // jsr -930(a6)
27072            ".short -930",
27073            "move.l (%sp)+, %a6",
27074            "movem.l (%sp)+, %d1/%a0-%a1",
27075            basereg = in(reg) DOSBase,
27076            in("a0") dp,
27077            out("d0") asm_ret_value,
27078        );
27079    }
27080    asm_ret_value
27081}
27082
27083/// libname: "dos.library" (V36) (Kickstart 2.0)
27084pub unsafe fn CliInitRun(DOSBase: *mut Library, dp: *mut DosPacket) -> LONG {
27085    let asm_ret_value: LONG;
27086    unsafe {
27087        asm!(
27088            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27089            ".short 0x40c0",
27090            "move.l %a6, -(%sp)",
27091            "move.l {basereg}, %a6",
27092            ".short 0x4eae", // jsr -936(a6)
27093            ".short -936",
27094            "move.l (%sp)+, %a6",
27095            "movem.l (%sp)+, %d1/%a0-%a1",
27096            basereg = in(reg) DOSBase,
27097            in("a0") dp,
27098            out("d0") asm_ret_value,
27099        );
27100    }
27101    asm_ret_value
27102}
27103
27104/// libname: "dos.library" (V36) (Kickstart 2.0)
27105pub unsafe fn WriteChars(DOSBase: *mut Library, buf: CONST_STRPTR, buflen: ULONG) -> LONG {
27106    let asm_ret_value: LONG;
27107    unsafe {
27108        asm!(
27109            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27110            ".short 0x40c0",
27111            "move.l %a6, -(%sp)",
27112            "move.l {basereg}, %a6",
27113            ".short 0x4eae", // jsr -942(a6)
27114            ".short -942",
27115            "move.l (%sp)+, %a6",
27116            "movem.l (%sp)+, %d1/%a0-%a1",
27117            basereg = in(reg) DOSBase,
27118            in("d1") buf,
27119            in("d2") buflen,
27120            out("d0") asm_ret_value,
27121        );
27122    }
27123    asm_ret_value
27124}
27125
27126/// libname: "dos.library" (V36) (Kickstart 2.0)
27127pub unsafe fn PutStr(DOSBase: *mut Library, str_: CONST_STRPTR) -> LONG {
27128    let asm_ret_value: LONG;
27129    unsafe {
27130        asm!(
27131            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27132            ".short 0x40c0",
27133            "move.l %a6, -(%sp)",
27134            "move.l {basereg}, %a6",
27135            ".short 0x4eae", // jsr -948(a6)
27136            ".short -948",
27137            "move.l (%sp)+, %a6",
27138            "movem.l (%sp)+, %d1/%a0-%a1",
27139            basereg = in(reg) DOSBase,
27140            in("d1") str_,
27141            out("d0") asm_ret_value,
27142        );
27143    }
27144    asm_ret_value
27145}
27146
27147/// libname: "dos.library" (V36) (Kickstart 2.0)
27148pub unsafe fn VPrintf(DOSBase: *mut Library, format: CONST_STRPTR, argarray: CONST_APTR) -> LONG {
27149    let asm_ret_value: LONG;
27150    unsafe {
27151        asm!(
27152            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27153            ".short 0x40c0",
27154            "move.l %a6, -(%sp)",
27155            "move.l {basereg}, %a6",
27156            ".short 0x4eae", // jsr -954(a6)
27157            ".short -954",
27158            "move.l (%sp)+, %a6",
27159            "movem.l (%sp)+, %d1/%a0-%a1",
27160            basereg = in(reg) DOSBase,
27161            in("d1") format,
27162            in("d2") argarray,
27163            out("d0") asm_ret_value,
27164        );
27165    }
27166    asm_ret_value
27167}
27168
27169/// libname: "dos.library" (V37) (Kickstart 2.04)
27170pub unsafe fn ParsePatternNoCase(
27171    DOSBase: *mut Library,
27172    pat: CONST_STRPTR,
27173    patbuf: *mut UBYTE,
27174    patbuflen: LONG,
27175) -> LONG {
27176    let asm_ret_value: LONG;
27177    unsafe {
27178        asm!(
27179            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27180            ".short 0x40c0",
27181            "move.l %a6, -(%sp)",
27182            "move.l {basereg}, %a6",
27183            ".short 0x4eae", // jsr -966(a6)
27184            ".short -966",
27185            "move.l (%sp)+, %a6",
27186            "movem.l (%sp)+, %d1/%a0-%a1",
27187            basereg = in(reg) DOSBase,
27188            in("d1") pat,
27189            in("d2") patbuf,
27190            in("d3") patbuflen,
27191            out("d0") asm_ret_value,
27192        );
27193    }
27194    asm_ret_value
27195}
27196
27197/// libname: "dos.library" (V37) (Kickstart 2.04)
27198pub unsafe fn MatchPatternNoCase(
27199    DOSBase: *mut Library,
27200    patbuf: *const UBYTE,
27201    str_: CONST_STRPTR,
27202) -> BOOL {
27203    let asm_ret_value: BOOL;
27204    unsafe {
27205        asm!(
27206            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27207            ".short 0x40c0",
27208            "move.l %a6, -(%sp)",
27209            "move.l {basereg}, %a6",
27210            ".short 0x4eae", // jsr -972(a6)
27211            ".short -972",
27212            "move.l (%sp)+, %a6",
27213            "movem.l (%sp)+, %d1/%a0-%a1",
27214            basereg = in(reg) DOSBase,
27215            in("d1") patbuf,
27216            in("d2") str_,
27217            out("d0") asm_ret_value,
27218        );
27219    }
27220    asm_ret_value
27221}
27222
27223/// libname: "dos.library" (V37) (Kickstart 2.04)
27224pub unsafe fn SameDevice(DOSBase: *mut Library, lock1: BPTR, lock2: BPTR) -> BOOL {
27225    let asm_ret_value: BOOL;
27226    unsafe {
27227        asm!(
27228            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27229            ".short 0x40c0",
27230            "move.l %a6, -(%sp)",
27231            "move.l {basereg}, %a6",
27232            ".short 0x4eae", // jsr -984(a6)
27233            ".short -984",
27234            "move.l (%sp)+, %a6",
27235            "movem.l (%sp)+, %d1/%a0-%a1",
27236            basereg = in(reg) DOSBase,
27237            in("d1") lock1,
27238            in("d2") lock2,
27239            out("d0") asm_ret_value,
27240        );
27241    }
27242    asm_ret_value
27243}
27244
27245/// libname: "dos.library" (V39) (Kickstart 3.0)
27246pub unsafe fn ExAllEnd(
27247    DOSBase: *mut Library,
27248    lock: BPTR,
27249    buffer: *mut ExAllData,
27250    size: LONG,
27251    data: LONG,
27252    control: *mut ExAllControl,
27253) {
27254    unsafe {
27255        asm!(
27256            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27257            ".short 0xc0c0",
27258            "move.l %a6, -(%sp)",
27259            "move.l {basereg}, %a6",
27260            ".short 0x4eae", // jsr -990(a6)
27261            ".short -990",
27262            "move.l (%sp)+, %a6",
27263            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27264            basereg = in(reg) DOSBase,
27265            in("d1") lock,
27266            in("d2") buffer,
27267            in("d3") size,
27268            in("d4") data,
27269            in("d5") control,
27270        );
27271    }
27272}
27273
27274/// libname: "dos.library" (V39) (Kickstart 3.0)
27275pub unsafe fn SetOwner(DOSBase: *mut Library, name: CONST_STRPTR, owner_info: LONG) -> BOOL {
27276    let asm_ret_value: BOOL;
27277    unsafe {
27278        asm!(
27279            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27280            ".short 0x40c0",
27281            "move.l %a6, -(%sp)",
27282            "move.l {basereg}, %a6",
27283            ".short 0x4eae", // jsr -996(a6)
27284            ".short -996",
27285            "move.l (%sp)+, %a6",
27286            "movem.l (%sp)+, %d1/%a0-%a1",
27287            basereg = in(reg) DOSBase,
27288            in("d1") name,
27289            in("d2") owner_info,
27290            out("d0") asm_ret_value,
27291        );
27292    }
27293    asm_ret_value
27294}
27295
27296/// libname: "dos.library" (V47) (Kickstart 3.2 / 2020)
27297pub unsafe fn VolumeRequestHook(DOSBase: *mut Library, vol: CONST_STRPTR) -> LONG {
27298    let asm_ret_value: LONG;
27299    unsafe {
27300        asm!(
27301            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27302            ".short 0x40c0",
27303            "move.l %a6, -(%sp)",
27304            "move.l {basereg}, %a6",
27305            ".short 0x4eae", // jsr -1014(a6)
27306            ".short -1014",
27307            "move.l (%sp)+, %a6",
27308            "movem.l (%sp)+, %d1/%a0-%a1",
27309            basereg = in(reg) DOSBase,
27310            in("d1") vol,
27311            out("d0") asm_ret_value,
27312        );
27313    }
27314    asm_ret_value
27315}
27316
27317/// libname: "dos.library" (V47) (Kickstart 3.2 / 2020)
27318pub unsafe fn GetCurrentDir(DOSBase: *mut Library) -> BPTR {
27319    let asm_ret_value: BPTR;
27320    unsafe {
27321        asm!(
27322            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27323            ".short 0x40c0",
27324            "move.l %a6, -(%sp)",
27325            "move.l {basereg}, %a6",
27326            ".short 0x4eae", // jsr -1026(a6)
27327            ".short -1026",
27328            "move.l (%sp)+, %a6",
27329            "movem.l (%sp)+, %d1/%a0-%a1",
27330            basereg = in(reg) DOSBase,
27331            out("d0") asm_ret_value,
27332        );
27333    }
27334    asm_ret_value
27335}
27336
27337/// libname: "dos.library" (V47) (Kickstart 3.2 / 2020)
27338pub unsafe fn PutErrStr(DOSBase: *mut Library, str_: CONST_STRPTR) -> LONG {
27339    let asm_ret_value: LONG;
27340    unsafe {
27341        asm!(
27342            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27343            ".short 0x40c0",
27344            "move.l %a6, -(%sp)",
27345            "move.l {basereg}, %a6",
27346            ".short 0x4eae", // jsr -1128(a6)
27347            ".short -1128",
27348            "move.l (%sp)+, %a6",
27349            "movem.l (%sp)+, %d1/%a0-%a1",
27350            basereg = in(reg) DOSBase,
27351            in("d1") str_,
27352            out("d0") asm_ret_value,
27353        );
27354    }
27355    asm_ret_value
27356}
27357
27358/// libname: "dos.library" (V47) (Kickstart 3.2 / 2020)
27359pub unsafe fn ErrorOutput(DOSBase: *mut Library) -> LONG {
27360    let asm_ret_value: LONG;
27361    unsafe {
27362        asm!(
27363            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27364            ".short 0x40c0",
27365            "move.l %a6, -(%sp)",
27366            "move.l {basereg}, %a6",
27367            ".short 0x4eae", // jsr -1134(a6)
27368            ".short -1134",
27369            "move.l (%sp)+, %a6",
27370            "movem.l (%sp)+, %d1/%a0-%a1",
27371            basereg = in(reg) DOSBase,
27372            out("d0") asm_ret_value,
27373        );
27374    }
27375    asm_ret_value
27376}
27377
27378/// libname: "dos.library" (V47) (Kickstart 3.2 / 2020)
27379pub unsafe fn SelectError(DOSBase: *mut Library, fh: BPTR) -> LONG {
27380    let asm_ret_value: LONG;
27381    unsafe {
27382        asm!(
27383            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27384            ".short 0x40c0",
27385            "move.l %a6, -(%sp)",
27386            "move.l {basereg}, %a6",
27387            ".short 0x4eae", // jsr -1140(a6)
27388            ".short -1140",
27389            "move.l (%sp)+, %a6",
27390            "movem.l (%sp)+, %d1/%a0-%a1",
27391            basereg = in(reg) DOSBase,
27392            in("d1") fh,
27393            out("d0") asm_ret_value,
27394        );
27395    }
27396    asm_ret_value
27397}
27398
27399/// libname: "dos.library" (V47) (Kickstart 3.2 / 2020)
27400pub unsafe fn DoShellMethodTagList(
27401    DOSBase: *mut Library,
27402    method: ULONG,
27403    tags: *const TagItem,
27404) -> APTR {
27405    let asm_ret_value: APTR;
27406    unsafe {
27407        asm!(
27408            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27409            ".short 0x40c0",
27410            "move.l %a6, -(%sp)",
27411            "move.l {basereg}, %a6",
27412            ".short 0x4eae", // jsr -1152(a6)
27413            ".short -1152",
27414            "move.l (%sp)+, %a6",
27415            "movem.l (%sp)+, %d1/%a0-%a1",
27416            basereg = in(reg) DOSBase,
27417            in("d0") method,
27418            in("a0") tags,
27419            lateout("d0") asm_ret_value,
27420        );
27421    }
27422    asm_ret_value
27423}
27424
27425/// libname: "dos.library" (V47) (Kickstart 3.2 / 2020)
27426pub unsafe fn ScanStackToken(DOSBase: *mut Library, seg: BPTR, defaultstack: LONG) -> LONG {
27427    let asm_ret_value: LONG;
27428    unsafe {
27429        asm!(
27430            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27431            ".short 0x40c0",
27432            "move.l %a6, -(%sp)",
27433            "move.l {basereg}, %a6",
27434            ".short 0x4eae", // jsr -1158(a6)
27435            ".short -1158",
27436            "move.l (%sp)+, %a6",
27437            "movem.l (%sp)+, %d1/%a0-%a1",
27438            basereg = in(reg) DOSBase,
27439            in("d1") seg,
27440            in("d2") defaultstack,
27441            out("d0") asm_ret_value,
27442        );
27443    }
27444    asm_ret_value
27445}
27446
27447/// libname: "drawlist.image" (V40) (Kickstart 3.1)
27448pub unsafe fn DRAWLIST_GetClass(DrawListBase: *mut ::core::ffi::c_void) -> *mut Class {
27449    let asm_ret_value: *mut Class;
27450    unsafe {
27451        asm!(
27452            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27453            ".short 0x40c0",
27454            "move.l %a6, -(%sp)",
27455            "move.l {basereg}, %a6",
27456            ".short 0x4eae", // jsr -30(a6)
27457            ".short -30",
27458            "move.l (%sp)+, %a6",
27459            "movem.l (%sp)+, %d1/%a0-%a1",
27460            basereg = in(reg) DrawListBase,
27461            out("d0") asm_ret_value,
27462        );
27463    }
27464    asm_ret_value
27465}
27466
27467/// libname: "exec.library"
27468pub unsafe fn Supervisor(SysBase: *mut Library, userFunction: FPTR) -> ULONG {
27469    let asm_ret_value: ULONG;
27470    unsafe {
27471        asm!(
27472            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27473            ".short 0x40c0",
27474            "move.l %a6, -(%sp)",
27475            "move.l %a5, -(%sp)",
27476            "move.l {basereg}, %a6",
27477            "move.l {a5reg}, %a5",
27478            ".short 0x4eae", // jsr -30(a6)
27479            ".short -30",
27480            "move.l (%sp)+, %a5",
27481            "move.l (%sp)+, %a6",
27482            "movem.l (%sp)+, %d1/%a0-%a1",
27483            basereg = in(reg) SysBase,
27484            a5reg = in(reg) userFunction,
27485            out("d0") asm_ret_value,
27486        );
27487    }
27488    asm_ret_value
27489}
27490
27491/// libname: "exec.library"
27492pub unsafe fn InitCode(SysBase: *mut Library, startClass: ULONG, version: ULONG) {
27493    unsafe {
27494        asm!(
27495            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27496            ".short 0xc0c0",
27497            "move.l %a6, -(%sp)",
27498            "move.l {basereg}, %a6",
27499            ".short 0x4eae", // jsr -72(a6)
27500            ".short -72",
27501            "move.l (%sp)+, %a6",
27502            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27503            basereg = in(reg) SysBase,
27504            in("d0") startClass,
27505            in("d1") version,
27506        );
27507    }
27508}
27509
27510/// libname: "exec.library"
27511pub unsafe fn InitStruct(SysBase: *mut Library, initTable: CONST_APTR, memory: APTR, size: ULONG) {
27512    unsafe {
27513        asm!(
27514            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27515            ".short 0xc0c0",
27516            "move.l %a6, -(%sp)",
27517            "move.l {basereg}, %a6",
27518            ".short 0x4eae", // jsr -78(a6)
27519            ".short -78",
27520            "move.l (%sp)+, %a6",
27521            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27522            basereg = in(reg) SysBase,
27523            in("a1") initTable,
27524            in("a2") memory,
27525            in("d0") size,
27526        );
27527    }
27528}
27529
27530/// libname: "exec.library"
27531pub unsafe fn MakeLibrary(
27532    SysBase: *mut Library,
27533    funcInit: CONST_APTR,
27534    structInit: CONST_APTR,
27535    libInit: FPTR,
27536    dataSize: ULONG,
27537    segList: ULONG,
27538) -> *mut Library {
27539    let asm_ret_value: *mut Library;
27540    unsafe {
27541        asm!(
27542            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27543            ".short 0x40c0",
27544            "move.l %a6, -(%sp)",
27545            "move.l {basereg}, %a6",
27546            ".short 0x4eae", // jsr -84(a6)
27547            ".short -84",
27548            "move.l (%sp)+, %a6",
27549            "movem.l (%sp)+, %d1/%a0-%a1",
27550            basereg = in(reg) SysBase,
27551            in("a0") funcInit,
27552            in("a1") structInit,
27553            in("a2") libInit,
27554            in("d0") dataSize,
27555            in("d1") segList,
27556            lateout("d0") asm_ret_value,
27557        );
27558    }
27559    asm_ret_value
27560}
27561
27562/// libname: "exec.library"
27563pub unsafe fn MakeFunctions(
27564    SysBase: *mut Library,
27565    target: APTR,
27566    functionArray: CONST_APTR,
27567    funcDispBase: ULONG,
27568) {
27569    unsafe {
27570        asm!(
27571            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27572            ".short 0xc0c0",
27573            "move.l %a6, -(%sp)",
27574            "move.l {basereg}, %a6",
27575            ".short 0x4eae", // jsr -90(a6)
27576            ".short -90",
27577            "move.l (%sp)+, %a6",
27578            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27579            basereg = in(reg) SysBase,
27580            in("a0") target,
27581            in("a1") functionArray,
27582            in("a2") funcDispBase,
27583        );
27584    }
27585}
27586
27587/// libname: "exec.library"
27588pub unsafe fn FindResident(SysBase: *mut Library, name: CONST_STRPTR) -> *mut Resident {
27589    let asm_ret_value: *mut Resident;
27590    unsafe {
27591        asm!(
27592            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27593            ".short 0x40c0",
27594            "move.l %a6, -(%sp)",
27595            "move.l {basereg}, %a6",
27596            ".short 0x4eae", // jsr -96(a6)
27597            ".short -96",
27598            "move.l (%sp)+, %a6",
27599            "movem.l (%sp)+, %d1/%a0-%a1",
27600            basereg = in(reg) SysBase,
27601            in("a1") name,
27602            out("d0") asm_ret_value,
27603        );
27604    }
27605    asm_ret_value
27606}
27607
27608/// libname: "exec.library"
27609pub unsafe fn InitResident(
27610    SysBase: *mut Library,
27611    resident: *const Resident,
27612    segList: ULONG,
27613) -> APTR {
27614    let asm_ret_value: APTR;
27615    unsafe {
27616        asm!(
27617            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27618            ".short 0x40c0",
27619            "move.l %a6, -(%sp)",
27620            "move.l {basereg}, %a6",
27621            ".short 0x4eae", // jsr -102(a6)
27622            ".short -102",
27623            "move.l (%sp)+, %a6",
27624            "movem.l (%sp)+, %d1/%a0-%a1",
27625            basereg = in(reg) SysBase,
27626            in("a1") resident,
27627            in("d1") segList,
27628            out("d0") asm_ret_value,
27629        );
27630    }
27631    asm_ret_value
27632}
27633
27634/// libname: "exec.library"
27635pub unsafe fn Alert(SysBase: *mut Library, alertNum: ULONG) {
27636    unsafe {
27637        asm!(
27638            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27639            ".short 0xc0c0",
27640            "move.l %a6, -(%sp)",
27641            "move.l {basereg}, %a6",
27642            ".short 0x4eae", // jsr -108(a6)
27643            ".short -108",
27644            "move.l (%sp)+, %a6",
27645            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27646            basereg = in(reg) SysBase,
27647            in("d7") alertNum,
27648        );
27649    }
27650}
27651
27652/// libname: "exec.library"
27653pub unsafe fn Debug(SysBase: *mut Library, flags: ULONG) {
27654    unsafe {
27655        asm!(
27656            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27657            ".short 0xc0c0",
27658            "move.l %a6, -(%sp)",
27659            "move.l {basereg}, %a6",
27660            ".short 0x4eae", // jsr -114(a6)
27661            ".short -114",
27662            "move.l (%sp)+, %a6",
27663            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27664            basereg = in(reg) SysBase,
27665            in("d0") flags,
27666        );
27667    }
27668}
27669
27670/// libname: "exec.library"
27671pub unsafe fn Disable(SysBase: *mut Library) {
27672    unsafe {
27673        asm!(
27674            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27675            ".short 0xc0c0",
27676            "move.l %a6, -(%sp)",
27677            "move.l {basereg}, %a6",
27678            ".short 0x4eae", // jsr -120(a6)
27679            ".short -120",
27680            "move.l (%sp)+, %a6",
27681            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27682            basereg = in(reg) SysBase,
27683        );
27684    }
27685}
27686
27687/// libname: "exec.library"
27688pub unsafe fn Enable(SysBase: *mut Library) {
27689    unsafe {
27690        asm!(
27691            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27692            ".short 0xc0c0",
27693            "move.l %a6, -(%sp)",
27694            "move.l {basereg}, %a6",
27695            ".short 0x4eae", // jsr -126(a6)
27696            ".short -126",
27697            "move.l (%sp)+, %a6",
27698            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27699            basereg = in(reg) SysBase,
27700        );
27701    }
27702}
27703
27704/// libname: "exec.library"
27705pub unsafe fn Forbid(SysBase: *mut Library) {
27706    unsafe {
27707        asm!(
27708            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27709            ".short 0xc0c0",
27710            "move.l %a6, -(%sp)",
27711            "move.l {basereg}, %a6",
27712            ".short 0x4eae", // jsr -132(a6)
27713            ".short -132",
27714            "move.l (%sp)+, %a6",
27715            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27716            basereg = in(reg) SysBase,
27717        );
27718    }
27719}
27720
27721/// libname: "exec.library"
27722pub unsafe fn Permit(SysBase: *mut Library) {
27723    unsafe {
27724        asm!(
27725            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27726            ".short 0xc0c0",
27727            "move.l %a6, -(%sp)",
27728            "move.l {basereg}, %a6",
27729            ".short 0x4eae", // jsr -138(a6)
27730            ".short -138",
27731            "move.l (%sp)+, %a6",
27732            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27733            basereg = in(reg) SysBase,
27734        );
27735    }
27736}
27737
27738/// libname: "exec.library"
27739pub unsafe fn SetSR(SysBase: *mut Library, newSR: ULONG, mask: ULONG) -> ULONG {
27740    let asm_ret_value: ULONG;
27741    unsafe {
27742        asm!(
27743            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27744            ".short 0x40c0",
27745            "move.l %a6, -(%sp)",
27746            "move.l {basereg}, %a6",
27747            ".short 0x4eae", // jsr -144(a6)
27748            ".short -144",
27749            "move.l (%sp)+, %a6",
27750            "movem.l (%sp)+, %d1/%a0-%a1",
27751            basereg = in(reg) SysBase,
27752            in("d0") newSR,
27753            in("d1") mask,
27754            lateout("d0") asm_ret_value,
27755        );
27756    }
27757    asm_ret_value
27758}
27759
27760/// libname: "exec.library"
27761pub unsafe fn SuperState(SysBase: *mut Library) -> APTR {
27762    let asm_ret_value: APTR;
27763    unsafe {
27764        asm!(
27765            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27766            ".short 0x40c0",
27767            "move.l %a6, -(%sp)",
27768            "move.l {basereg}, %a6",
27769            ".short 0x4eae", // jsr -150(a6)
27770            ".short -150",
27771            "move.l (%sp)+, %a6",
27772            "movem.l (%sp)+, %d1/%a0-%a1",
27773            basereg = in(reg) SysBase,
27774            out("d0") asm_ret_value,
27775        );
27776    }
27777    asm_ret_value
27778}
27779
27780/// libname: "exec.library"
27781pub unsafe fn UserState(SysBase: *mut Library, sysStack: APTR) {
27782    unsafe {
27783        asm!(
27784            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27785            ".short 0xc0c0",
27786            "move.l %a6, -(%sp)",
27787            "move.l {basereg}, %a6",
27788            ".short 0x4eae", // jsr -156(a6)
27789            ".short -156",
27790            "move.l (%sp)+, %a6",
27791            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27792            basereg = in(reg) SysBase,
27793            in("d0") sysStack,
27794        );
27795    }
27796}
27797
27798/// libname: "exec.library"
27799pub unsafe fn SetIntVector(
27800    SysBase: *mut Library,
27801    intNumber: LONG,
27802    interrupt: *mut Interrupt,
27803) -> *mut Interrupt {
27804    let asm_ret_value: *mut Interrupt;
27805    unsafe {
27806        asm!(
27807            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27808            ".short 0x40c0",
27809            "move.l %a6, -(%sp)",
27810            "move.l {basereg}, %a6",
27811            ".short 0x4eae", // jsr -162(a6)
27812            ".short -162",
27813            "move.l (%sp)+, %a6",
27814            "movem.l (%sp)+, %d1/%a0-%a1",
27815            basereg = in(reg) SysBase,
27816            in("d0") intNumber,
27817            in("a1") interrupt,
27818            lateout("d0") asm_ret_value,
27819        );
27820    }
27821    asm_ret_value
27822}
27823
27824/// libname: "exec.library"
27825pub unsafe fn AddIntServer(SysBase: *mut Library, intNumber: LONG, interrupt: *mut Interrupt) {
27826    unsafe {
27827        asm!(
27828            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27829            ".short 0xc0c0",
27830            "move.l %a6, -(%sp)",
27831            "move.l {basereg}, %a6",
27832            ".short 0x4eae", // jsr -168(a6)
27833            ".short -168",
27834            "move.l (%sp)+, %a6",
27835            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27836            basereg = in(reg) SysBase,
27837            in("d0") intNumber,
27838            in("a1") interrupt,
27839        );
27840    }
27841}
27842
27843/// libname: "exec.library"
27844pub unsafe fn RemIntServer(SysBase: *mut Library, intNumber: LONG, interrupt: *mut Interrupt) {
27845    unsafe {
27846        asm!(
27847            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27848            ".short 0xc0c0",
27849            "move.l %a6, -(%sp)",
27850            "move.l {basereg}, %a6",
27851            ".short 0x4eae", // jsr -174(a6)
27852            ".short -174",
27853            "move.l (%sp)+, %a6",
27854            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27855            basereg = in(reg) SysBase,
27856            in("d0") intNumber,
27857            in("a1") interrupt,
27858        );
27859    }
27860}
27861
27862/// libname: "exec.library"
27863pub unsafe fn Cause(SysBase: *mut Library, interrupt: *const Interrupt) {
27864    unsafe {
27865        asm!(
27866            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27867            ".short 0xc0c0",
27868            "move.l %a6, -(%sp)",
27869            "move.l {basereg}, %a6",
27870            ".short 0x4eae", // jsr -180(a6)
27871            ".short -180",
27872            "move.l (%sp)+, %a6",
27873            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27874            basereg = in(reg) SysBase,
27875            in("a1") interrupt,
27876        );
27877    }
27878}
27879
27880/// libname: "exec.library"
27881pub unsafe fn Allocate(SysBase: *mut Library, freeList: *mut MemHeader, byteSize: ULONG) -> APTR {
27882    let asm_ret_value: APTR;
27883    unsafe {
27884        asm!(
27885            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27886            ".short 0x40c0",
27887            "move.l %a6, -(%sp)",
27888            "move.l {basereg}, %a6",
27889            ".short 0x4eae", // jsr -186(a6)
27890            ".short -186",
27891            "move.l (%sp)+, %a6",
27892            "movem.l (%sp)+, %d1/%a0-%a1",
27893            basereg = in(reg) SysBase,
27894            in("a0") freeList,
27895            in("d0") byteSize,
27896            lateout("d0") asm_ret_value,
27897        );
27898    }
27899    asm_ret_value
27900}
27901
27902/// libname: "exec.library"
27903pub unsafe fn Deallocate(
27904    SysBase: *mut Library,
27905    freeList: *mut MemHeader,
27906    memoryBlock: APTR,
27907    byteSize: ULONG,
27908) {
27909    unsafe {
27910        asm!(
27911            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27912            ".short 0xc0c0",
27913            "move.l %a6, -(%sp)",
27914            "move.l {basereg}, %a6",
27915            ".short 0x4eae", // jsr -192(a6)
27916            ".short -192",
27917            "move.l (%sp)+, %a6",
27918            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27919            basereg = in(reg) SysBase,
27920            in("a0") freeList,
27921            in("a1") memoryBlock,
27922            in("d0") byteSize,
27923        );
27924    }
27925}
27926
27927/// libname: "exec.library"
27928pub unsafe fn AllocMem(SysBase: *mut Library, byteSize: ULONG, requirements: ULONG) -> APTR {
27929    let asm_ret_value: APTR;
27930    unsafe {
27931        asm!(
27932            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27933            ".short 0x40c0",
27934            "move.l %a6, -(%sp)",
27935            "move.l {basereg}, %a6",
27936            ".short 0x4eae", // jsr -198(a6)
27937            ".short -198",
27938            "move.l (%sp)+, %a6",
27939            "movem.l (%sp)+, %d1/%a0-%a1",
27940            basereg = in(reg) SysBase,
27941            in("d0") byteSize,
27942            in("d1") requirements,
27943            lateout("d0") asm_ret_value,
27944        );
27945    }
27946    asm_ret_value
27947}
27948
27949/// libname: "exec.library"
27950pub unsafe fn AllocAbs(SysBase: *mut Library, byteSize: ULONG, location: APTR) -> APTR {
27951    let asm_ret_value: APTR;
27952    unsafe {
27953        asm!(
27954            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27955            ".short 0x40c0",
27956            "move.l %a6, -(%sp)",
27957            "move.l {basereg}, %a6",
27958            ".short 0x4eae", // jsr -204(a6)
27959            ".short -204",
27960            "move.l (%sp)+, %a6",
27961            "movem.l (%sp)+, %d1/%a0-%a1",
27962            basereg = in(reg) SysBase,
27963            in("d0") byteSize,
27964            in("a1") location,
27965            lateout("d0") asm_ret_value,
27966        );
27967    }
27968    asm_ret_value
27969}
27970
27971/// libname: "exec.library"
27972pub unsafe fn FreeMem(SysBase: *mut Library, memoryBlock: APTR, byteSize: ULONG) {
27973    unsafe {
27974        asm!(
27975            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
27976            ".short 0xc0c0",
27977            "move.l %a6, -(%sp)",
27978            "move.l {basereg}, %a6",
27979            ".short 0x4eae", // jsr -210(a6)
27980            ".short -210",
27981            "move.l (%sp)+, %a6",
27982            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
27983            basereg = in(reg) SysBase,
27984            in("a1") memoryBlock,
27985            in("d0") byteSize,
27986        );
27987    }
27988}
27989
27990/// libname: "exec.library"
27991pub unsafe fn AvailMem(SysBase: *mut Library, requirements: ULONG) -> ULONG {
27992    let asm_ret_value: ULONG;
27993    unsafe {
27994        asm!(
27995            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
27996            ".short 0x40c0",
27997            "move.l %a6, -(%sp)",
27998            "move.l {basereg}, %a6",
27999            ".short 0x4eae", // jsr -216(a6)
28000            ".short -216",
28001            "move.l (%sp)+, %a6",
28002            "movem.l (%sp)+, %d1/%a0-%a1",
28003            basereg = in(reg) SysBase,
28004            in("d1") requirements,
28005            out("d0") asm_ret_value,
28006        );
28007    }
28008    asm_ret_value
28009}
28010
28011/// libname: "exec.library"
28012pub unsafe fn AllocEntry(SysBase: *mut Library, entry: *const MemList) -> *mut MemList {
28013    let asm_ret_value: *mut MemList;
28014    unsafe {
28015        asm!(
28016            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28017            ".short 0x40c0",
28018            "move.l %a6, -(%sp)",
28019            "move.l {basereg}, %a6",
28020            ".short 0x4eae", // jsr -222(a6)
28021            ".short -222",
28022            "move.l (%sp)+, %a6",
28023            "movem.l (%sp)+, %d1/%a0-%a1",
28024            basereg = in(reg) SysBase,
28025            in("a0") entry,
28026            out("d0") asm_ret_value,
28027        );
28028    }
28029    asm_ret_value
28030}
28031
28032/// libname: "exec.library"
28033pub unsafe fn FreeEntry(SysBase: *mut Library, entry: *mut MemList) {
28034    unsafe {
28035        asm!(
28036            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28037            ".short 0xc0c0",
28038            "move.l %a6, -(%sp)",
28039            "move.l {basereg}, %a6",
28040            ".short 0x4eae", // jsr -228(a6)
28041            ".short -228",
28042            "move.l (%sp)+, %a6",
28043            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28044            basereg = in(reg) SysBase,
28045            in("a0") entry,
28046        );
28047    }
28048}
28049
28050/// libname: "exec.library"
28051pub unsafe fn Insert(SysBase: *mut Library, list: *mut List, node: *mut Node, pred: *mut Node) {
28052    unsafe {
28053        asm!(
28054            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28055            ".short 0xc0c0",
28056            "move.l %a6, -(%sp)",
28057            "move.l {basereg}, %a6",
28058            ".short 0x4eae", // jsr -234(a6)
28059            ".short -234",
28060            "move.l (%sp)+, %a6",
28061            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28062            basereg = in(reg) SysBase,
28063            in("a0") list,
28064            in("a1") node,
28065            in("a2") pred,
28066        );
28067    }
28068}
28069
28070/// libname: "exec.library" (V47) (Kickstart 3.2 / 2020)
28071pub unsafe fn InsertMinNode(
28072    SysBase: *mut Library,
28073    minlist: *mut MinList,
28074    minnode: *mut MinNode,
28075    minpred: *mut MinNode,
28076) {
28077    unsafe {
28078        asm!(
28079            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28080            ".short 0xc0c0",
28081            "move.l %a6, -(%sp)",
28082            "move.l {basereg}, %a6",
28083            ".short 0x4eae", // jsr -234(a6)
28084            ".short -234",
28085            "move.l (%sp)+, %a6",
28086            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28087            basereg = in(reg) SysBase,
28088            in("a0") minlist,
28089            in("a1") minnode,
28090            in("a2") minpred,
28091        );
28092    }
28093}
28094
28095/// libname: "exec.library"
28096pub unsafe fn AddHead(SysBase: *mut Library, list: *mut List, node: *mut Node) {
28097    unsafe {
28098        asm!(
28099            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28100            ".short 0xc0c0",
28101            "move.l %a6, -(%sp)",
28102            "move.l {basereg}, %a6",
28103            ".short 0x4eae", // jsr -240(a6)
28104            ".short -240",
28105            "move.l (%sp)+, %a6",
28106            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28107            basereg = in(reg) SysBase,
28108            in("a0") list,
28109            in("a1") node,
28110        );
28111    }
28112}
28113
28114/// libname: "exec.library" (V47) (Kickstart 3.2 / 2020)
28115pub unsafe fn AddHeadMinList(SysBase: *mut Library, minlist: *mut MinList, minnode: *mut MinNode) {
28116    unsafe {
28117        asm!(
28118            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28119            ".short 0xc0c0",
28120            "move.l %a6, -(%sp)",
28121            "move.l {basereg}, %a6",
28122            ".short 0x4eae", // jsr -240(a6)
28123            ".short -240",
28124            "move.l (%sp)+, %a6",
28125            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28126            basereg = in(reg) SysBase,
28127            in("a0") minlist,
28128            in("a1") minnode,
28129        );
28130    }
28131}
28132
28133/// libname: "exec.library"
28134pub unsafe fn AddTail(SysBase: *mut Library, list: *mut List, node: *mut Node) {
28135    unsafe {
28136        asm!(
28137            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28138            ".short 0xc0c0",
28139            "move.l %a6, -(%sp)",
28140            "move.l {basereg}, %a6",
28141            ".short 0x4eae", // jsr -246(a6)
28142            ".short -246",
28143            "move.l (%sp)+, %a6",
28144            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28145            basereg = in(reg) SysBase,
28146            in("a0") list,
28147            in("a1") node,
28148        );
28149    }
28150}
28151
28152/// libname: "exec.library" (V47) (Kickstart 3.2 / 2020)
28153pub unsafe fn AddTailMinList(SysBase: *mut Library, minlist: *mut MinList, minnode: *mut MinNode) {
28154    unsafe {
28155        asm!(
28156            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28157            ".short 0xc0c0",
28158            "move.l %a6, -(%sp)",
28159            "move.l {basereg}, %a6",
28160            ".short 0x4eae", // jsr -246(a6)
28161            ".short -246",
28162            "move.l (%sp)+, %a6",
28163            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28164            basereg = in(reg) SysBase,
28165            in("a0") minlist,
28166            in("a1") minnode,
28167        );
28168    }
28169}
28170
28171/// libname: "exec.library"
28172pub unsafe fn Remove(SysBase: *mut Library, node: *mut Node) {
28173    unsafe {
28174        asm!(
28175            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28176            ".short 0xc0c0",
28177            "move.l %a6, -(%sp)",
28178            "move.l {basereg}, %a6",
28179            ".short 0x4eae", // jsr -252(a6)
28180            ".short -252",
28181            "move.l (%sp)+, %a6",
28182            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28183            basereg = in(reg) SysBase,
28184            in("a1") node,
28185        );
28186    }
28187}
28188
28189/// libname: "exec.library" (V47) (Kickstart 3.2 / 2020)
28190pub unsafe fn RemoveMinNode(SysBase: *mut Library, minnode: *mut MinNode) {
28191    unsafe {
28192        asm!(
28193            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28194            ".short 0xc0c0",
28195            "move.l %a6, -(%sp)",
28196            "move.l {basereg}, %a6",
28197            ".short 0x4eae", // jsr -252(a6)
28198            ".short -252",
28199            "move.l (%sp)+, %a6",
28200            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28201            basereg = in(reg) SysBase,
28202            in("a1") minnode,
28203        );
28204    }
28205}
28206
28207/// libname: "exec.library"
28208pub unsafe fn RemHead(SysBase: *mut Library, list: *mut List) -> *mut Node {
28209    let asm_ret_value: *mut Node;
28210    unsafe {
28211        asm!(
28212            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28213            ".short 0x40c0",
28214            "move.l %a6, -(%sp)",
28215            "move.l {basereg}, %a6",
28216            ".short 0x4eae", // jsr -258(a6)
28217            ".short -258",
28218            "move.l (%sp)+, %a6",
28219            "movem.l (%sp)+, %d1/%a0-%a1",
28220            basereg = in(reg) SysBase,
28221            in("a0") list,
28222            out("d0") asm_ret_value,
28223        );
28224    }
28225    asm_ret_value
28226}
28227
28228/// libname: "exec.library" (V47) (Kickstart 3.2 / 2020)
28229pub unsafe fn RemHeadMinList(SysBase: *mut Library, minlist: *mut MinList) -> *mut MinNode {
28230    let asm_ret_value: *mut MinNode;
28231    unsafe {
28232        asm!(
28233            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28234            ".short 0x40c0",
28235            "move.l %a6, -(%sp)",
28236            "move.l {basereg}, %a6",
28237            ".short 0x4eae", // jsr -258(a6)
28238            ".short -258",
28239            "move.l (%sp)+, %a6",
28240            "movem.l (%sp)+, %d1/%a0-%a1",
28241            basereg = in(reg) SysBase,
28242            in("a0") minlist,
28243            out("d0") asm_ret_value,
28244        );
28245    }
28246    asm_ret_value
28247}
28248
28249/// libname: "exec.library"
28250pub unsafe fn RemTail(SysBase: *mut Library, list: *mut List) -> *mut Node {
28251    let asm_ret_value: *mut Node;
28252    unsafe {
28253        asm!(
28254            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28255            ".short 0x40c0",
28256            "move.l %a6, -(%sp)",
28257            "move.l {basereg}, %a6",
28258            ".short 0x4eae", // jsr -264(a6)
28259            ".short -264",
28260            "move.l (%sp)+, %a6",
28261            "movem.l (%sp)+, %d1/%a0-%a1",
28262            basereg = in(reg) SysBase,
28263            in("a0") list,
28264            out("d0") asm_ret_value,
28265        );
28266    }
28267    asm_ret_value
28268}
28269
28270/// libname: "exec.library" (V47) (Kickstart 3.2 / 2020)
28271pub unsafe fn RemTailMinList(SysBase: *mut Library, minlist: *mut MinList) -> *mut MinNode {
28272    let asm_ret_value: *mut MinNode;
28273    unsafe {
28274        asm!(
28275            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28276            ".short 0x40c0",
28277            "move.l %a6, -(%sp)",
28278            "move.l {basereg}, %a6",
28279            ".short 0x4eae", // jsr -264(a6)
28280            ".short -264",
28281            "move.l (%sp)+, %a6",
28282            "movem.l (%sp)+, %d1/%a0-%a1",
28283            basereg = in(reg) SysBase,
28284            in("a0") minlist,
28285            out("d0") asm_ret_value,
28286        );
28287    }
28288    asm_ret_value
28289}
28290
28291/// libname: "exec.library"
28292pub unsafe fn Enqueue(SysBase: *mut Library, list: *mut List, node: *mut Node) {
28293    unsafe {
28294        asm!(
28295            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28296            ".short 0xc0c0",
28297            "move.l %a6, -(%sp)",
28298            "move.l {basereg}, %a6",
28299            ".short 0x4eae", // jsr -270(a6)
28300            ".short -270",
28301            "move.l (%sp)+, %a6",
28302            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28303            basereg = in(reg) SysBase,
28304            in("a0") list,
28305            in("a1") node,
28306        );
28307    }
28308}
28309
28310/// libname: "exec.library"
28311pub unsafe fn FindName(SysBase: *mut Library, list: *mut List, name: CONST_STRPTR) -> *mut Node {
28312    let asm_ret_value: *mut Node;
28313    unsafe {
28314        asm!(
28315            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28316            ".short 0x40c0",
28317            "move.l %a6, -(%sp)",
28318            "move.l {basereg}, %a6",
28319            ".short 0x4eae", // jsr -276(a6)
28320            ".short -276",
28321            "move.l (%sp)+, %a6",
28322            "movem.l (%sp)+, %d1/%a0-%a1",
28323            basereg = in(reg) SysBase,
28324            in("a0") list,
28325            in("a1") name,
28326            out("d0") asm_ret_value,
28327        );
28328    }
28329    asm_ret_value
28330}
28331
28332/// libname: "exec.library"
28333pub unsafe fn AddTask(SysBase: *mut Library, task: *mut Task, initPC: APTR, finalPC: APTR) -> APTR {
28334    let asm_ret_value: APTR;
28335    unsafe {
28336        asm!(
28337            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28338            ".short 0x40c0",
28339            "move.l %a6, -(%sp)",
28340            "move.l {basereg}, %a6",
28341            ".short 0x4eae", // jsr -282(a6)
28342            ".short -282",
28343            "move.l (%sp)+, %a6",
28344            "movem.l (%sp)+, %d1/%a0-%a1",
28345            basereg = in(reg) SysBase,
28346            in("a1") task,
28347            in("a2") initPC,
28348            in("a3") finalPC,
28349            out("d0") asm_ret_value,
28350        );
28351    }
28352    asm_ret_value
28353}
28354
28355/// libname: "exec.library"
28356pub unsafe fn RemTask(SysBase: *mut Library, task: *mut Task) {
28357    unsafe {
28358        asm!(
28359            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28360            ".short 0xc0c0",
28361            "move.l %a6, -(%sp)",
28362            "move.l {basereg}, %a6",
28363            ".short 0x4eae", // jsr -288(a6)
28364            ".short -288",
28365            "move.l (%sp)+, %a6",
28366            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28367            basereg = in(reg) SysBase,
28368            in("a1") task,
28369        );
28370    }
28371}
28372
28373/// libname: "exec.library"
28374pub unsafe fn FindTask(SysBase: *mut Library, name: CONST_STRPTR) -> *mut Task {
28375    let asm_ret_value: *mut Task;
28376    unsafe {
28377        asm!(
28378            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28379            ".short 0x40c0",
28380            "move.l %a6, -(%sp)",
28381            "move.l {basereg}, %a6",
28382            ".short 0x4eae", // jsr -294(a6)
28383            ".short -294",
28384            "move.l (%sp)+, %a6",
28385            "movem.l (%sp)+, %d1/%a0-%a1",
28386            basereg = in(reg) SysBase,
28387            in("a1") name,
28388            out("d0") asm_ret_value,
28389        );
28390    }
28391    asm_ret_value
28392}
28393
28394/// libname: "exec.library"
28395pub unsafe fn SetTaskPri(SysBase: *mut Library, task: *mut Task, priority: LONG) -> BYTE {
28396    let asm_ret_value: i16;
28397    unsafe {
28398        asm!(
28399            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28400            ".short 0x40c0",
28401            "move.l %a6, -(%sp)",
28402            "move.l {basereg}, %a6",
28403            ".short 0x4eae", // jsr -300(a6)
28404            ".short -300",
28405            "ext.w %d0",
28406            "move.l (%sp)+, %a6",
28407            "movem.l (%sp)+, %d1/%a0-%a1",
28408            basereg = in(reg) SysBase,
28409            in("a1") task,
28410            in("d0") priority,
28411            lateout("d0") asm_ret_value,
28412        );
28413    }
28414    asm_ret_value as i8
28415}
28416
28417/// libname: "exec.library"
28418pub unsafe fn SetSignal(SysBase: *mut Library, newSignals: ULONG, signalSet: ULONG) -> ULONG {
28419    let asm_ret_value: ULONG;
28420    unsafe {
28421        asm!(
28422            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28423            ".short 0x40c0",
28424            "move.l %a6, -(%sp)",
28425            "move.l {basereg}, %a6",
28426            ".short 0x4eae", // jsr -306(a6)
28427            ".short -306",
28428            "move.l (%sp)+, %a6",
28429            "movem.l (%sp)+, %d1/%a0-%a1",
28430            basereg = in(reg) SysBase,
28431            in("d0") newSignals,
28432            in("d1") signalSet,
28433            lateout("d0") asm_ret_value,
28434        );
28435    }
28436    asm_ret_value
28437}
28438
28439/// libname: "exec.library"
28440pub unsafe fn SetExcept(SysBase: *mut Library, newSignals: ULONG, signalSet: ULONG) -> ULONG {
28441    let asm_ret_value: ULONG;
28442    unsafe {
28443        asm!(
28444            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28445            ".short 0x40c0",
28446            "move.l %a6, -(%sp)",
28447            "move.l {basereg}, %a6",
28448            ".short 0x4eae", // jsr -312(a6)
28449            ".short -312",
28450            "move.l (%sp)+, %a6",
28451            "movem.l (%sp)+, %d1/%a0-%a1",
28452            basereg = in(reg) SysBase,
28453            in("d0") newSignals,
28454            in("d1") signalSet,
28455            lateout("d0") asm_ret_value,
28456        );
28457    }
28458    asm_ret_value
28459}
28460
28461/// libname: "exec.library"
28462pub unsafe fn Wait(SysBase: *mut Library, signalSet: ULONG) -> ULONG {
28463    let asm_ret_value: ULONG;
28464    unsafe {
28465        asm!(
28466            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28467            ".short 0x40c0",
28468            "move.l %a6, -(%sp)",
28469            "move.l {basereg}, %a6",
28470            ".short 0x4eae", // jsr -318(a6)
28471            ".short -318",
28472            "move.l (%sp)+, %a6",
28473            "movem.l (%sp)+, %d1/%a0-%a1",
28474            basereg = in(reg) SysBase,
28475            in("d0") signalSet,
28476            lateout("d0") asm_ret_value,
28477        );
28478    }
28479    asm_ret_value
28480}
28481
28482/// libname: "exec.library"
28483pub unsafe fn Signal(SysBase: *mut Library, task: *mut Task, signalSet: ULONG) {
28484    unsafe {
28485        asm!(
28486            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28487            ".short 0xc0c0",
28488            "move.l %a6, -(%sp)",
28489            "move.l {basereg}, %a6",
28490            ".short 0x4eae", // jsr -324(a6)
28491            ".short -324",
28492            "move.l (%sp)+, %a6",
28493            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28494            basereg = in(reg) SysBase,
28495            in("a1") task,
28496            in("d0") signalSet,
28497        );
28498    }
28499}
28500
28501/// libname: "exec.library"
28502pub unsafe fn AllocSignal(SysBase: *mut Library, signalNum: LONG) -> BYTE {
28503    let asm_ret_value: i16;
28504    unsafe {
28505        asm!(
28506            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28507            ".short 0x40c0",
28508            "move.l %a6, -(%sp)",
28509            "move.l {basereg}, %a6",
28510            ".short 0x4eae", // jsr -330(a6)
28511            ".short -330",
28512            "ext.w %d0",
28513            "move.l (%sp)+, %a6",
28514            "movem.l (%sp)+, %d1/%a0-%a1",
28515            basereg = in(reg) SysBase,
28516            in("d0") signalNum,
28517            lateout("d0") asm_ret_value,
28518        );
28519    }
28520    asm_ret_value as i8
28521}
28522
28523/// libname: "exec.library"
28524pub unsafe fn FreeSignal(SysBase: *mut Library, signalNum: LONG) {
28525    unsafe {
28526        asm!(
28527            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28528            ".short 0xc0c0",
28529            "move.l %a6, -(%sp)",
28530            "move.l {basereg}, %a6",
28531            ".short 0x4eae", // jsr -336(a6)
28532            ".short -336",
28533            "move.l (%sp)+, %a6",
28534            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28535            basereg = in(reg) SysBase,
28536            in("d0") signalNum,
28537        );
28538    }
28539}
28540
28541/// libname: "exec.library"
28542pub unsafe fn AllocTrap(SysBase: *mut Library, trapNum: LONG) -> LONG {
28543    let asm_ret_value: LONG;
28544    unsafe {
28545        asm!(
28546            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28547            ".short 0x40c0",
28548            "move.l %a6, -(%sp)",
28549            "move.l {basereg}, %a6",
28550            ".short 0x4eae", // jsr -342(a6)
28551            ".short -342",
28552            "move.l (%sp)+, %a6",
28553            "movem.l (%sp)+, %d1/%a0-%a1",
28554            basereg = in(reg) SysBase,
28555            in("d0") trapNum,
28556            lateout("d0") asm_ret_value,
28557        );
28558    }
28559    asm_ret_value
28560}
28561
28562/// libname: "exec.library"
28563pub unsafe fn FreeTrap(SysBase: *mut Library, trapNum: LONG) {
28564    unsafe {
28565        asm!(
28566            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28567            ".short 0xc0c0",
28568            "move.l %a6, -(%sp)",
28569            "move.l {basereg}, %a6",
28570            ".short 0x4eae", // jsr -348(a6)
28571            ".short -348",
28572            "move.l (%sp)+, %a6",
28573            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28574            basereg = in(reg) SysBase,
28575            in("d0") trapNum,
28576        );
28577    }
28578}
28579
28580/// libname: "exec.library"
28581pub unsafe fn AddPort(SysBase: *mut Library, port: *mut MsgPort) {
28582    unsafe {
28583        asm!(
28584            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28585            ".short 0xc0c0",
28586            "move.l %a6, -(%sp)",
28587            "move.l {basereg}, %a6",
28588            ".short 0x4eae", // jsr -354(a6)
28589            ".short -354",
28590            "move.l (%sp)+, %a6",
28591            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28592            basereg = in(reg) SysBase,
28593            in("a1") port,
28594        );
28595    }
28596}
28597
28598/// libname: "exec.library"
28599pub unsafe fn RemPort(SysBase: *mut Library, port: *mut MsgPort) {
28600    unsafe {
28601        asm!(
28602            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28603            ".short 0xc0c0",
28604            "move.l %a6, -(%sp)",
28605            "move.l {basereg}, %a6",
28606            ".short 0x4eae", // jsr -360(a6)
28607            ".short -360",
28608            "move.l (%sp)+, %a6",
28609            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28610            basereg = in(reg) SysBase,
28611            in("a1") port,
28612        );
28613    }
28614}
28615
28616/// libname: "exec.library"
28617pub unsafe fn PutMsg(SysBase: *mut Library, port: *mut MsgPort, message: *mut Message) {
28618    unsafe {
28619        asm!(
28620            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28621            ".short 0xc0c0",
28622            "move.l %a6, -(%sp)",
28623            "move.l {basereg}, %a6",
28624            ".short 0x4eae", // jsr -366(a6)
28625            ".short -366",
28626            "move.l (%sp)+, %a6",
28627            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28628            basereg = in(reg) SysBase,
28629            in("a0") port,
28630            in("a1") message,
28631        );
28632    }
28633}
28634
28635/// libname: "exec.library"
28636pub unsafe fn GetMsg(SysBase: *mut Library, port: *mut MsgPort) -> *mut Message {
28637    let asm_ret_value: *mut Message;
28638    unsafe {
28639        asm!(
28640            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28641            ".short 0x40c0",
28642            "move.l %a6, -(%sp)",
28643            "move.l {basereg}, %a6",
28644            ".short 0x4eae", // jsr -372(a6)
28645            ".short -372",
28646            "move.l (%sp)+, %a6",
28647            "movem.l (%sp)+, %d1/%a0-%a1",
28648            basereg = in(reg) SysBase,
28649            in("a0") port,
28650            out("d0") asm_ret_value,
28651        );
28652    }
28653    asm_ret_value
28654}
28655
28656/// libname: "exec.library"
28657pub unsafe fn ReplyMsg(SysBase: *mut Library, message: *mut Message) {
28658    unsafe {
28659        asm!(
28660            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28661            ".short 0xc0c0",
28662            "move.l %a6, -(%sp)",
28663            "move.l {basereg}, %a6",
28664            ".short 0x4eae", // jsr -378(a6)
28665            ".short -378",
28666            "move.l (%sp)+, %a6",
28667            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28668            basereg = in(reg) SysBase,
28669            in("a1") message,
28670        );
28671    }
28672}
28673
28674/// libname: "exec.library"
28675pub unsafe fn WaitPort(SysBase: *mut Library, port: *mut MsgPort) -> *mut Message {
28676    let asm_ret_value: *mut Message;
28677    unsafe {
28678        asm!(
28679            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28680            ".short 0x40c0",
28681            "move.l %a6, -(%sp)",
28682            "move.l {basereg}, %a6",
28683            ".short 0x4eae", // jsr -384(a6)
28684            ".short -384",
28685            "move.l (%sp)+, %a6",
28686            "movem.l (%sp)+, %d1/%a0-%a1",
28687            basereg = in(reg) SysBase,
28688            in("a0") port,
28689            out("d0") asm_ret_value,
28690        );
28691    }
28692    asm_ret_value
28693}
28694
28695/// libname: "exec.library"
28696pub unsafe fn FindPort(SysBase: *mut Library, name: CONST_STRPTR) -> *mut MsgPort {
28697    let asm_ret_value: *mut MsgPort;
28698    unsafe {
28699        asm!(
28700            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28701            ".short 0x40c0",
28702            "move.l %a6, -(%sp)",
28703            "move.l {basereg}, %a6",
28704            ".short 0x4eae", // jsr -390(a6)
28705            ".short -390",
28706            "move.l (%sp)+, %a6",
28707            "movem.l (%sp)+, %d1/%a0-%a1",
28708            basereg = in(reg) SysBase,
28709            in("a1") name,
28710            out("d0") asm_ret_value,
28711        );
28712    }
28713    asm_ret_value
28714}
28715
28716/// libname: "exec.library"
28717pub unsafe fn AddLibrary(SysBase: *mut Library, library: *mut Library) {
28718    unsafe {
28719        asm!(
28720            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28721            ".short 0xc0c0",
28722            "move.l %a6, -(%sp)",
28723            "move.l {basereg}, %a6",
28724            ".short 0x4eae", // jsr -396(a6)
28725            ".short -396",
28726            "move.l (%sp)+, %a6",
28727            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28728            basereg = in(reg) SysBase,
28729            in("a1") library,
28730        );
28731    }
28732}
28733
28734/// libname: "exec.library"
28735pub unsafe fn RemLibrary(SysBase: *mut Library, library: *mut Library) {
28736    unsafe {
28737        asm!(
28738            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28739            ".short 0xc0c0",
28740            "move.l %a6, -(%sp)",
28741            "move.l {basereg}, %a6",
28742            ".short 0x4eae", // jsr -402(a6)
28743            ".short -402",
28744            "move.l (%sp)+, %a6",
28745            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28746            basereg = in(reg) SysBase,
28747            in("a1") library,
28748        );
28749    }
28750}
28751
28752/// libname: "exec.library"
28753pub unsafe fn OldOpenLibrary(SysBase: *mut Library, libName: CONST_STRPTR) -> *mut Library {
28754    let asm_ret_value: *mut Library;
28755    unsafe {
28756        asm!(
28757            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28758            ".short 0x40c0",
28759            "move.l %a6, -(%sp)",
28760            "move.l {basereg}, %a6",
28761            ".short 0x4eae", // jsr -408(a6)
28762            ".short -408",
28763            "move.l (%sp)+, %a6",
28764            "movem.l (%sp)+, %d1/%a0-%a1",
28765            basereg = in(reg) SysBase,
28766            in("a1") libName,
28767            out("d0") asm_ret_value,
28768        );
28769    }
28770    asm_ret_value
28771}
28772
28773/// libname: "exec.library"
28774pub unsafe fn CloseLibrary(SysBase: *mut Library, library: *mut Library) {
28775    unsafe {
28776        asm!(
28777            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28778            ".short 0xc0c0",
28779            "move.l %a6, -(%sp)",
28780            "move.l {basereg}, %a6",
28781            ".short 0x4eae", // jsr -414(a6)
28782            ".short -414",
28783            "move.l (%sp)+, %a6",
28784            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28785            basereg = in(reg) SysBase,
28786            in("a1") library,
28787        );
28788    }
28789}
28790
28791/// libname: "exec.library"
28792pub unsafe fn SetFunction(
28793    SysBase: *mut Library,
28794    library: *mut Library,
28795    funcOffset: LONG,
28796    newFunction: FPTR,
28797) -> APTR {
28798    let asm_ret_value: APTR;
28799    unsafe {
28800        asm!(
28801            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28802            ".short 0x40c0",
28803            "move.l %a6, -(%sp)",
28804            "move.l {basereg}, %a6",
28805            ".short 0x4eae", // jsr -420(a6)
28806            ".short -420",
28807            "move.l (%sp)+, %a6",
28808            "movem.l (%sp)+, %d1/%a0-%a1",
28809            basereg = in(reg) SysBase,
28810            in("a1") library,
28811            in("a0") funcOffset,
28812            in("d0") newFunction,
28813            lateout("d0") asm_ret_value,
28814        );
28815    }
28816    asm_ret_value
28817}
28818
28819/// libname: "exec.library"
28820pub unsafe fn SumLibrary(SysBase: *mut Library, library: *mut Library) {
28821    unsafe {
28822        asm!(
28823            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28824            ".short 0xc0c0",
28825            "move.l %a6, -(%sp)",
28826            "move.l {basereg}, %a6",
28827            ".short 0x4eae", // jsr -426(a6)
28828            ".short -426",
28829            "move.l (%sp)+, %a6",
28830            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28831            basereg = in(reg) SysBase,
28832            in("a1") library,
28833        );
28834    }
28835}
28836
28837/// libname: "exec.library"
28838pub unsafe fn AddDevice(SysBase: *mut Library, device: *mut Device) {
28839    unsafe {
28840        asm!(
28841            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28842            ".short 0xc0c0",
28843            "move.l %a6, -(%sp)",
28844            "move.l {basereg}, %a6",
28845            ".short 0x4eae", // jsr -432(a6)
28846            ".short -432",
28847            "move.l (%sp)+, %a6",
28848            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28849            basereg = in(reg) SysBase,
28850            in("a1") device,
28851        );
28852    }
28853}
28854
28855/// libname: "exec.library"
28856pub unsafe fn RemDevice(SysBase: *mut Library, device: *mut Device) {
28857    unsafe {
28858        asm!(
28859            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28860            ".short 0xc0c0",
28861            "move.l %a6, -(%sp)",
28862            "move.l {basereg}, %a6",
28863            ".short 0x4eae", // jsr -438(a6)
28864            ".short -438",
28865            "move.l (%sp)+, %a6",
28866            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28867            basereg = in(reg) SysBase,
28868            in("a1") device,
28869        );
28870    }
28871}
28872
28873/// libname: "exec.library"
28874pub unsafe fn OpenDevice(
28875    SysBase: *mut Library,
28876    devName: CONST_STRPTR,
28877    unit: ULONG,
28878    ioRequest: *mut IORequest,
28879    flags: ULONG,
28880) -> BYTE {
28881    let asm_ret_value: i16;
28882    unsafe {
28883        asm!(
28884            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28885            ".short 0x40c0",
28886            "move.l %a6, -(%sp)",
28887            "move.l {basereg}, %a6",
28888            ".short 0x4eae", // jsr -444(a6)
28889            ".short -444",
28890            "ext.w %d0",
28891            "move.l (%sp)+, %a6",
28892            "movem.l (%sp)+, %d1/%a0-%a1",
28893            basereg = in(reg) SysBase,
28894            in("a0") devName,
28895            in("d0") unit,
28896            in("a1") ioRequest,
28897            in("d1") flags,
28898            lateout("d0") asm_ret_value,
28899        );
28900    }
28901    asm_ret_value as i8
28902}
28903
28904/// libname: "exec.library"
28905pub unsafe fn CloseDevice(SysBase: *mut Library, ioRequest: *mut IORequest) {
28906    unsafe {
28907        asm!(
28908            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28909            ".short 0xc0c0",
28910            "move.l %a6, -(%sp)",
28911            "move.l {basereg}, %a6",
28912            ".short 0x4eae", // jsr -450(a6)
28913            ".short -450",
28914            "move.l (%sp)+, %a6",
28915            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28916            basereg = in(reg) SysBase,
28917            in("a1") ioRequest,
28918        );
28919    }
28920}
28921
28922/// libname: "exec.library"
28923pub unsafe fn DoIO(SysBase: *mut Library, ioRequest: *mut IORequest) -> BYTE {
28924    let asm_ret_value: i16;
28925    unsafe {
28926        asm!(
28927            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28928            ".short 0x40c0",
28929            "move.l %a6, -(%sp)",
28930            "move.l {basereg}, %a6",
28931            ".short 0x4eae", // jsr -456(a6)
28932            ".short -456",
28933            "ext.w %d0",
28934            "move.l (%sp)+, %a6",
28935            "movem.l (%sp)+, %d1/%a0-%a1",
28936            basereg = in(reg) SysBase,
28937            in("a1") ioRequest,
28938            out("d0") asm_ret_value,
28939        );
28940    }
28941    asm_ret_value as i8
28942}
28943
28944/// libname: "exec.library"
28945pub unsafe fn SendIO(SysBase: *mut Library, ioRequest: *mut IORequest) {
28946    unsafe {
28947        asm!(
28948            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
28949            ".short 0xc0c0",
28950            "move.l %a6, -(%sp)",
28951            "move.l {basereg}, %a6",
28952            ".short 0x4eae", // jsr -462(a6)
28953            ".short -462",
28954            "move.l (%sp)+, %a6",
28955            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
28956            basereg = in(reg) SysBase,
28957            in("a1") ioRequest,
28958        );
28959    }
28960}
28961
28962/// libname: "exec.library"
28963pub unsafe fn CheckIO(SysBase: *mut Library, ioRequest: *const IORequest) -> *mut IORequest {
28964    let asm_ret_value: *mut IORequest;
28965    unsafe {
28966        asm!(
28967            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28968            ".short 0x40c0",
28969            "move.l %a6, -(%sp)",
28970            "move.l {basereg}, %a6",
28971            ".short 0x4eae", // jsr -468(a6)
28972            ".short -468",
28973            "move.l (%sp)+, %a6",
28974            "movem.l (%sp)+, %d1/%a0-%a1",
28975            basereg = in(reg) SysBase,
28976            in("a1") ioRequest,
28977            out("d0") asm_ret_value,
28978        );
28979    }
28980    asm_ret_value
28981}
28982
28983/// libname: "exec.library"
28984pub unsafe fn WaitIO(SysBase: *mut Library, ioRequest: *mut IORequest) -> BYTE {
28985    let asm_ret_value: i16;
28986    unsafe {
28987        asm!(
28988            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
28989            ".short 0x40c0",
28990            "move.l %a6, -(%sp)",
28991            "move.l {basereg}, %a6",
28992            ".short 0x4eae", // jsr -474(a6)
28993            ".short -474",
28994            "ext.w %d0",
28995            "move.l (%sp)+, %a6",
28996            "movem.l (%sp)+, %d1/%a0-%a1",
28997            basereg = in(reg) SysBase,
28998            in("a1") ioRequest,
28999            out("d0") asm_ret_value,
29000        );
29001    }
29002    asm_ret_value as i8
29003}
29004
29005/// libname: "exec.library"
29006pub unsafe fn AbortIO(SysBase: *mut Library, ioRequest: *mut IORequest) {
29007    unsafe {
29008        asm!(
29009            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29010            ".short 0xc0c0",
29011            "move.l %a6, -(%sp)",
29012            "move.l {basereg}, %a6",
29013            ".short 0x4eae", // jsr -480(a6)
29014            ".short -480",
29015            "move.l (%sp)+, %a6",
29016            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29017            basereg = in(reg) SysBase,
29018            in("a1") ioRequest,
29019        );
29020    }
29021}
29022
29023/// libname: "exec.library"
29024pub unsafe fn AddResource(SysBase: *mut Library, resource: APTR) {
29025    unsafe {
29026        asm!(
29027            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29028            ".short 0xc0c0",
29029            "move.l %a6, -(%sp)",
29030            "move.l {basereg}, %a6",
29031            ".short 0x4eae", // jsr -486(a6)
29032            ".short -486",
29033            "move.l (%sp)+, %a6",
29034            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29035            basereg = in(reg) SysBase,
29036            in("a1") resource,
29037        );
29038    }
29039}
29040
29041/// libname: "exec.library"
29042pub unsafe fn RemResource(SysBase: *mut Library, resource: APTR) {
29043    unsafe {
29044        asm!(
29045            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29046            ".short 0xc0c0",
29047            "move.l %a6, -(%sp)",
29048            "move.l {basereg}, %a6",
29049            ".short 0x4eae", // jsr -492(a6)
29050            ".short -492",
29051            "move.l (%sp)+, %a6",
29052            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29053            basereg = in(reg) SysBase,
29054            in("a1") resource,
29055        );
29056    }
29057}
29058
29059/// libname: "exec.library"
29060pub unsafe fn OpenResource(SysBase: *mut Library, resName: CONST_STRPTR) -> APTR {
29061    let asm_ret_value: APTR;
29062    unsafe {
29063        asm!(
29064            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29065            ".short 0x40c0",
29066            "move.l %a6, -(%sp)",
29067            "move.l {basereg}, %a6",
29068            ".short 0x4eae", // jsr -498(a6)
29069            ".short -498",
29070            "move.l (%sp)+, %a6",
29071            "movem.l (%sp)+, %d1/%a0-%a1",
29072            basereg = in(reg) SysBase,
29073            in("a1") resName,
29074            out("d0") asm_ret_value,
29075        );
29076    }
29077    asm_ret_value
29078}
29079
29080/// libname: "exec.library"
29081pub unsafe fn RawDoFmt(
29082    SysBase: *mut Library,
29083    formatString: CONST_STRPTR,
29084    dataStream: APTR,
29085    putChProc: FPTR,
29086    putChData: APTR,
29087) -> APTR {
29088    let asm_ret_value: APTR;
29089    unsafe {
29090        asm!(
29091            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29092            ".short 0x40c0",
29093            "move.l %a6, -(%sp)",
29094            "move.l {basereg}, %a6",
29095            ".short 0x4eae", // jsr -522(a6)
29096            ".short -522",
29097            "move.l (%sp)+, %a6",
29098            "movem.l (%sp)+, %d1/%a0-%a1",
29099            basereg = in(reg) SysBase,
29100            in("a0") formatString,
29101            in("a1") dataStream,
29102            in("a2") putChProc,
29103            in("a3") putChData,
29104            out("d0") asm_ret_value,
29105        );
29106    }
29107    asm_ret_value
29108}
29109
29110/// libname: "exec.library"
29111pub unsafe fn GetCC(SysBase: *mut Library) -> ULONG {
29112    let asm_ret_value: ULONG;
29113    unsafe {
29114        asm!(
29115            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29116            ".short 0x40c0",
29117            "move.l %a6, -(%sp)",
29118            "move.l {basereg}, %a6",
29119            ".short 0x4eae", // jsr -528(a6)
29120            ".short -528",
29121            "move.l (%sp)+, %a6",
29122            "movem.l (%sp)+, %d1/%a0-%a1",
29123            basereg = in(reg) SysBase,
29124            out("d0") asm_ret_value,
29125        );
29126    }
29127    asm_ret_value
29128}
29129
29130/// libname: "exec.library"
29131pub unsafe fn TypeOfMem(SysBase: *mut Library, address: CONST_APTR) -> ULONG {
29132    let asm_ret_value: ULONG;
29133    unsafe {
29134        asm!(
29135            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29136            ".short 0x40c0",
29137            "move.l %a6, -(%sp)",
29138            "move.l {basereg}, %a6",
29139            ".short 0x4eae", // jsr -534(a6)
29140            ".short -534",
29141            "move.l (%sp)+, %a6",
29142            "movem.l (%sp)+, %d1/%a0-%a1",
29143            basereg = in(reg) SysBase,
29144            in("a1") address,
29145            out("d0") asm_ret_value,
29146        );
29147    }
29148    asm_ret_value
29149}
29150
29151/// libname: "exec.library"
29152pub unsafe fn Procure(
29153    SysBase: *mut Library,
29154    sigSem: *mut SignalSemaphore,
29155    bidMsg: *mut SemaphoreMessage,
29156) -> ULONG {
29157    let asm_ret_value: ULONG;
29158    unsafe {
29159        asm!(
29160            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29161            ".short 0x40c0",
29162            "move.l %a6, -(%sp)",
29163            "move.l {basereg}, %a6",
29164            ".short 0x4eae", // jsr -540(a6)
29165            ".short -540",
29166            "move.l (%sp)+, %a6",
29167            "movem.l (%sp)+, %d1/%a0-%a1",
29168            basereg = in(reg) SysBase,
29169            in("a0") sigSem,
29170            in("a1") bidMsg,
29171            out("d0") asm_ret_value,
29172        );
29173    }
29174    asm_ret_value
29175}
29176
29177/// libname: "exec.library"
29178pub unsafe fn Vacate(
29179    SysBase: *mut Library,
29180    sigSem: *mut SignalSemaphore,
29181    bidMsg: *mut SemaphoreMessage,
29182) {
29183    unsafe {
29184        asm!(
29185            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29186            ".short 0xc0c0",
29187            "move.l %a6, -(%sp)",
29188            "move.l {basereg}, %a6",
29189            ".short 0x4eae", // jsr -546(a6)
29190            ".short -546",
29191            "move.l (%sp)+, %a6",
29192            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29193            basereg = in(reg) SysBase,
29194            in("a0") sigSem,
29195            in("a1") bidMsg,
29196        );
29197    }
29198}
29199
29200/// libname: "exec.library"
29201pub unsafe fn OpenLibrary(
29202    SysBase: *mut Library,
29203    libName: CONST_STRPTR,
29204    version: ULONG,
29205) -> *mut Library {
29206    let asm_ret_value: *mut Library;
29207    unsafe {
29208        asm!(
29209            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29210            ".short 0x40c0",
29211            "move.l %a6, -(%sp)",
29212            "move.l {basereg}, %a6",
29213            ".short 0x4eae", // jsr -552(a6)
29214            ".short -552",
29215            "move.l (%sp)+, %a6",
29216            "movem.l (%sp)+, %d1/%a0-%a1",
29217            basereg = in(reg) SysBase,
29218            in("a1") libName,
29219            in("d0") version,
29220            lateout("d0") asm_ret_value,
29221        );
29222    }
29223    asm_ret_value
29224}
29225
29226/// libname: "exec.library" (V33) (Kickstart 1.2)
29227pub unsafe fn InitSemaphore(SysBase: *mut Library, sigSem: *mut SignalSemaphore) {
29228    unsafe {
29229        asm!(
29230            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29231            ".short 0xc0c0",
29232            "move.l %a6, -(%sp)",
29233            "move.l {basereg}, %a6",
29234            ".short 0x4eae", // jsr -558(a6)
29235            ".short -558",
29236            "move.l (%sp)+, %a6",
29237            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29238            basereg = in(reg) SysBase,
29239            in("a0") sigSem,
29240        );
29241    }
29242}
29243
29244/// libname: "exec.library" (V33) (Kickstart 1.2)
29245pub unsafe fn ObtainSemaphore(SysBase: *mut Library, sigSem: *mut SignalSemaphore) {
29246    unsafe {
29247        asm!(
29248            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29249            ".short 0xc0c0",
29250            "move.l %a6, -(%sp)",
29251            "move.l {basereg}, %a6",
29252            ".short 0x4eae", // jsr -564(a6)
29253            ".short -564",
29254            "move.l (%sp)+, %a6",
29255            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29256            basereg = in(reg) SysBase,
29257            in("a0") sigSem,
29258        );
29259    }
29260}
29261
29262/// libname: "exec.library" (V33) (Kickstart 1.2)
29263pub unsafe fn ReleaseSemaphore(SysBase: *mut Library, sigSem: *mut SignalSemaphore) {
29264    unsafe {
29265        asm!(
29266            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29267            ".short 0xc0c0",
29268            "move.l %a6, -(%sp)",
29269            "move.l {basereg}, %a6",
29270            ".short 0x4eae", // jsr -570(a6)
29271            ".short -570",
29272            "move.l (%sp)+, %a6",
29273            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29274            basereg = in(reg) SysBase,
29275            in("a0") sigSem,
29276        );
29277    }
29278}
29279
29280/// libname: "exec.library" (V33) (Kickstart 1.2)
29281pub unsafe fn AttemptSemaphore(SysBase: *mut Library, sigSem: *mut SignalSemaphore) -> ULONG {
29282    let asm_ret_value: ULONG;
29283    unsafe {
29284        asm!(
29285            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29286            ".short 0x40c0",
29287            "move.l %a6, -(%sp)",
29288            "move.l {basereg}, %a6",
29289            ".short 0x4eae", // jsr -576(a6)
29290            ".short -576",
29291            "move.l (%sp)+, %a6",
29292            "movem.l (%sp)+, %d1/%a0-%a1",
29293            basereg = in(reg) SysBase,
29294            in("a0") sigSem,
29295            out("d0") asm_ret_value,
29296        );
29297    }
29298    asm_ret_value
29299}
29300
29301/// libname: "exec.library" (V33) (Kickstart 1.2)
29302pub unsafe fn ObtainSemaphoreList(SysBase: *mut Library, sigSem: *mut List) {
29303    unsafe {
29304        asm!(
29305            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29306            ".short 0xc0c0",
29307            "move.l %a6, -(%sp)",
29308            "move.l {basereg}, %a6",
29309            ".short 0x4eae", // jsr -582(a6)
29310            ".short -582",
29311            "move.l (%sp)+, %a6",
29312            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29313            basereg = in(reg) SysBase,
29314            in("a0") sigSem,
29315        );
29316    }
29317}
29318
29319/// libname: "exec.library" (V33) (Kickstart 1.2)
29320pub unsafe fn ReleaseSemaphoreList(SysBase: *mut Library, sigSem: *mut List) {
29321    unsafe {
29322        asm!(
29323            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29324            ".short 0xc0c0",
29325            "move.l %a6, -(%sp)",
29326            "move.l {basereg}, %a6",
29327            ".short 0x4eae", // jsr -588(a6)
29328            ".short -588",
29329            "move.l (%sp)+, %a6",
29330            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29331            basereg = in(reg) SysBase,
29332            in("a0") sigSem,
29333        );
29334    }
29335}
29336
29337/// libname: "exec.library" (V33) (Kickstart 1.2)
29338pub unsafe fn FindSemaphore(SysBase: *mut Library, name: CONST_STRPTR) -> *mut SignalSemaphore {
29339    let asm_ret_value: *mut SignalSemaphore;
29340    unsafe {
29341        asm!(
29342            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29343            ".short 0x40c0",
29344            "move.l %a6, -(%sp)",
29345            "move.l {basereg}, %a6",
29346            ".short 0x4eae", // jsr -594(a6)
29347            ".short -594",
29348            "move.l (%sp)+, %a6",
29349            "movem.l (%sp)+, %d1/%a0-%a1",
29350            basereg = in(reg) SysBase,
29351            in("a1") name,
29352            out("d0") asm_ret_value,
29353        );
29354    }
29355    asm_ret_value
29356}
29357
29358/// libname: "exec.library" (V33) (Kickstart 1.2)
29359pub unsafe fn AddSemaphore(SysBase: *mut Library, sigSem: *mut SignalSemaphore) {
29360    unsafe {
29361        asm!(
29362            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29363            ".short 0xc0c0",
29364            "move.l %a6, -(%sp)",
29365            "move.l {basereg}, %a6",
29366            ".short 0x4eae", // jsr -600(a6)
29367            ".short -600",
29368            "move.l (%sp)+, %a6",
29369            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29370            basereg = in(reg) SysBase,
29371            in("a1") sigSem,
29372        );
29373    }
29374}
29375
29376/// libname: "exec.library" (V33) (Kickstart 1.2)
29377pub unsafe fn RemSemaphore(SysBase: *mut Library, sigSem: *mut SignalSemaphore) {
29378    unsafe {
29379        asm!(
29380            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29381            ".short 0xc0c0",
29382            "move.l %a6, -(%sp)",
29383            "move.l {basereg}, %a6",
29384            ".short 0x4eae", // jsr -606(a6)
29385            ".short -606",
29386            "move.l (%sp)+, %a6",
29387            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29388            basereg = in(reg) SysBase,
29389            in("a1") sigSem,
29390        );
29391    }
29392}
29393
29394/// libname: "exec.library" (V33) (Kickstart 1.2)
29395pub unsafe fn SumKickData(SysBase: *mut Library) -> ULONG {
29396    let asm_ret_value: ULONG;
29397    unsafe {
29398        asm!(
29399            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29400            ".short 0x40c0",
29401            "move.l %a6, -(%sp)",
29402            "move.l {basereg}, %a6",
29403            ".short 0x4eae", // jsr -612(a6)
29404            ".short -612",
29405            "move.l (%sp)+, %a6",
29406            "movem.l (%sp)+, %d1/%a0-%a1",
29407            basereg = in(reg) SysBase,
29408            out("d0") asm_ret_value,
29409        );
29410    }
29411    asm_ret_value
29412}
29413
29414/// libname: "exec.library" (V33) (Kickstart 1.2)
29415pub unsafe fn AddMemList(
29416    SysBase: *mut Library,
29417    size: ULONG,
29418    attributes: ULONG,
29419    pri: LONG,
29420    base: APTR,
29421    name: STRPTR,
29422) {
29423    unsafe {
29424        asm!(
29425            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29426            ".short 0xc0c0",
29427            "move.l %a6, -(%sp)",
29428            "move.l {basereg}, %a6",
29429            ".short 0x4eae", // jsr -618(a6)
29430            ".short -618",
29431            "move.l (%sp)+, %a6",
29432            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29433            basereg = in(reg) SysBase,
29434            in("d0") size,
29435            in("d1") attributes,
29436            in("d2") pri,
29437            in("a0") base,
29438            in("a1") name,
29439        );
29440    }
29441}
29442
29443/// libname: "exec.library" (V33) (Kickstart 1.2)
29444pub unsafe fn CopyMem(SysBase: *mut Library, source: CONST_APTR, dest: APTR, size: ULONG) {
29445    unsafe {
29446        asm!(
29447            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29448            ".short 0xc0c0",
29449            "move.l %a6, -(%sp)",
29450            "move.l {basereg}, %a6",
29451            ".short 0x4eae", // jsr -624(a6)
29452            ".short -624",
29453            "move.l (%sp)+, %a6",
29454            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29455            basereg = in(reg) SysBase,
29456            in("a0") source,
29457            in("a1") dest,
29458            in("d0") size,
29459        );
29460    }
29461}
29462
29463/// libname: "exec.library" (V33) (Kickstart 1.2)
29464pub unsafe fn CopyMemQuick(SysBase: *mut Library, source: CONST_APTR, dest: APTR, size: ULONG) {
29465    unsafe {
29466        asm!(
29467            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29468            ".short 0xc0c0",
29469            "move.l %a6, -(%sp)",
29470            "move.l {basereg}, %a6",
29471            ".short 0x4eae", // jsr -630(a6)
29472            ".short -630",
29473            "move.l (%sp)+, %a6",
29474            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29475            basereg = in(reg) SysBase,
29476            in("a0") source,
29477            in("a1") dest,
29478            in("d0") size,
29479        );
29480    }
29481}
29482
29483/// libname: "exec.library" (V36) (Kickstart 2.0)
29484pub unsafe fn CacheClearU(SysBase: *mut Library) {
29485    unsafe {
29486        asm!(
29487            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29488            ".short 0xc0c0",
29489            "move.l %a6, -(%sp)",
29490            "move.l {basereg}, %a6",
29491            ".short 0x4eae", // jsr -636(a6)
29492            ".short -636",
29493            "move.l (%sp)+, %a6",
29494            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29495            basereg = in(reg) SysBase,
29496        );
29497    }
29498}
29499
29500/// libname: "exec.library" (V36) (Kickstart 2.0)
29501pub unsafe fn CacheClearE(SysBase: *mut Library, address: APTR, length: ULONG, caches: ULONG) {
29502    unsafe {
29503        asm!(
29504            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29505            ".short 0xc0c0",
29506            "move.l %a6, -(%sp)",
29507            "move.l {basereg}, %a6",
29508            ".short 0x4eae", // jsr -642(a6)
29509            ".short -642",
29510            "move.l (%sp)+, %a6",
29511            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29512            basereg = in(reg) SysBase,
29513            in("a0") address,
29514            in("d0") length,
29515            in("d1") caches,
29516        );
29517    }
29518}
29519
29520/// libname: "exec.library" (V36) (Kickstart 2.0)
29521pub unsafe fn CacheControl(SysBase: *mut Library, cacheBits: ULONG, cacheMask: ULONG) -> ULONG {
29522    let asm_ret_value: ULONG;
29523    unsafe {
29524        asm!(
29525            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29526            ".short 0x40c0",
29527            "move.l %a6, -(%sp)",
29528            "move.l {basereg}, %a6",
29529            ".short 0x4eae", // jsr -648(a6)
29530            ".short -648",
29531            "move.l (%sp)+, %a6",
29532            "movem.l (%sp)+, %d1/%a0-%a1",
29533            basereg = in(reg) SysBase,
29534            in("d0") cacheBits,
29535            in("d1") cacheMask,
29536            lateout("d0") asm_ret_value,
29537        );
29538    }
29539    asm_ret_value
29540}
29541
29542/// libname: "exec.library" (V36) (Kickstart 2.0)
29543pub unsafe fn CreateIORequest(SysBase: *mut Library, port: *mut MsgPort, size: ULONG) -> APTR {
29544    let asm_ret_value: APTR;
29545    unsafe {
29546        asm!(
29547            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29548            ".short 0x40c0",
29549            "move.l %a6, -(%sp)",
29550            "move.l {basereg}, %a6",
29551            ".short 0x4eae", // jsr -654(a6)
29552            ".short -654",
29553            "move.l (%sp)+, %a6",
29554            "movem.l (%sp)+, %d1/%a0-%a1",
29555            basereg = in(reg) SysBase,
29556            in("a0") port,
29557            in("d0") size,
29558            lateout("d0") asm_ret_value,
29559        );
29560    }
29561    asm_ret_value
29562}
29563
29564/// libname: "exec.library" (V36) (Kickstart 2.0)
29565pub unsafe fn DeleteIORequest(SysBase: *mut Library, iorequest: APTR) {
29566    unsafe {
29567        asm!(
29568            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29569            ".short 0xc0c0",
29570            "move.l %a6, -(%sp)",
29571            "move.l {basereg}, %a6",
29572            ".short 0x4eae", // jsr -660(a6)
29573            ".short -660",
29574            "move.l (%sp)+, %a6",
29575            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29576            basereg = in(reg) SysBase,
29577            in("a0") iorequest,
29578        );
29579    }
29580}
29581
29582/// libname: "exec.library" (V36) (Kickstart 2.0)
29583pub unsafe fn CreateMsgPort(SysBase: *mut Library) -> *mut MsgPort {
29584    let asm_ret_value: *mut MsgPort;
29585    unsafe {
29586        asm!(
29587            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29588            ".short 0x40c0",
29589            "move.l %a6, -(%sp)",
29590            "move.l {basereg}, %a6",
29591            ".short 0x4eae", // jsr -666(a6)
29592            ".short -666",
29593            "move.l (%sp)+, %a6",
29594            "movem.l (%sp)+, %d1/%a0-%a1",
29595            basereg = in(reg) SysBase,
29596            out("d0") asm_ret_value,
29597        );
29598    }
29599    asm_ret_value
29600}
29601
29602/// libname: "exec.library" (V36) (Kickstart 2.0)
29603pub unsafe fn DeleteMsgPort(SysBase: *mut Library, port: *mut MsgPort) {
29604    unsafe {
29605        asm!(
29606            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29607            ".short 0xc0c0",
29608            "move.l %a6, -(%sp)",
29609            "move.l {basereg}, %a6",
29610            ".short 0x4eae", // jsr -672(a6)
29611            ".short -672",
29612            "move.l (%sp)+, %a6",
29613            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29614            basereg = in(reg) SysBase,
29615            in("a0") port,
29616        );
29617    }
29618}
29619
29620/// libname: "exec.library" (V36) (Kickstart 2.0)
29621pub unsafe fn ObtainSemaphoreShared(SysBase: *mut Library, sigSem: *mut SignalSemaphore) {
29622    unsafe {
29623        asm!(
29624            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29625            ".short 0xc0c0",
29626            "move.l %a6, -(%sp)",
29627            "move.l {basereg}, %a6",
29628            ".short 0x4eae", // jsr -678(a6)
29629            ".short -678",
29630            "move.l (%sp)+, %a6",
29631            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29632            basereg = in(reg) SysBase,
29633            in("a0") sigSem,
29634        );
29635    }
29636}
29637
29638/// libname: "exec.library" (V36) (Kickstart 2.0)
29639pub unsafe fn AllocVec(SysBase: *mut Library, byteSize: ULONG, requirements: ULONG) -> APTR {
29640    let asm_ret_value: APTR;
29641    unsafe {
29642        asm!(
29643            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29644            ".short 0x40c0",
29645            "move.l %a6, -(%sp)",
29646            "move.l {basereg}, %a6",
29647            ".short 0x4eae", // jsr -684(a6)
29648            ".short -684",
29649            "move.l (%sp)+, %a6",
29650            "movem.l (%sp)+, %d1/%a0-%a1",
29651            basereg = in(reg) SysBase,
29652            in("d0") byteSize,
29653            in("d1") requirements,
29654            lateout("d0") asm_ret_value,
29655        );
29656    }
29657    asm_ret_value
29658}
29659
29660/// libname: "exec.library" (V36) (Kickstart 2.0)
29661pub unsafe fn FreeVec(SysBase: *mut Library, memoryBlock: APTR) {
29662    unsafe {
29663        asm!(
29664            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29665            ".short 0xc0c0",
29666            "move.l %a6, -(%sp)",
29667            "move.l {basereg}, %a6",
29668            ".short 0x4eae", // jsr -690(a6)
29669            ".short -690",
29670            "move.l (%sp)+, %a6",
29671            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29672            basereg = in(reg) SysBase,
29673            in("a1") memoryBlock,
29674        );
29675    }
29676}
29677
29678/// libname: "exec.library" (V39) (Kickstart 3.0)
29679pub unsafe fn CreatePool(
29680    SysBase: *mut Library,
29681    requirements: ULONG,
29682    puddleSize: ULONG,
29683    threshSize: ULONG,
29684) -> APTR {
29685    let asm_ret_value: APTR;
29686    unsafe {
29687        asm!(
29688            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29689            ".short 0x40c0",
29690            "move.l %a6, -(%sp)",
29691            "move.l {basereg}, %a6",
29692            ".short 0x4eae", // jsr -696(a6)
29693            ".short -696",
29694            "move.l (%sp)+, %a6",
29695            "movem.l (%sp)+, %d1/%a0-%a1",
29696            basereg = in(reg) SysBase,
29697            in("d0") requirements,
29698            in("d1") puddleSize,
29699            in("d2") threshSize,
29700            lateout("d0") asm_ret_value,
29701        );
29702    }
29703    asm_ret_value
29704}
29705
29706/// libname: "exec.library" (V39) (Kickstart 3.0)
29707pub unsafe fn DeletePool(SysBase: *mut Library, poolHeader: APTR) {
29708    unsafe {
29709        asm!(
29710            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29711            ".short 0xc0c0",
29712            "move.l %a6, -(%sp)",
29713            "move.l {basereg}, %a6",
29714            ".short 0x4eae", // jsr -702(a6)
29715            ".short -702",
29716            "move.l (%sp)+, %a6",
29717            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29718            basereg = in(reg) SysBase,
29719            in("a0") poolHeader,
29720        );
29721    }
29722}
29723
29724/// libname: "exec.library" (V39) (Kickstart 3.0)
29725pub unsafe fn AllocPooled(SysBase: *mut Library, poolHeader: APTR, memSize: ULONG) -> APTR {
29726    let asm_ret_value: APTR;
29727    unsafe {
29728        asm!(
29729            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29730            ".short 0x40c0",
29731            "move.l %a6, -(%sp)",
29732            "move.l {basereg}, %a6",
29733            ".short 0x4eae", // jsr -708(a6)
29734            ".short -708",
29735            "move.l (%sp)+, %a6",
29736            "movem.l (%sp)+, %d1/%a0-%a1",
29737            basereg = in(reg) SysBase,
29738            in("a0") poolHeader,
29739            in("d0") memSize,
29740            lateout("d0") asm_ret_value,
29741        );
29742    }
29743    asm_ret_value
29744}
29745
29746/// libname: "exec.library" (V39) (Kickstart 3.0)
29747pub unsafe fn FreePooled(SysBase: *mut Library, poolHeader: APTR, memory: APTR, memSize: ULONG) {
29748    unsafe {
29749        asm!(
29750            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29751            ".short 0xc0c0",
29752            "move.l %a6, -(%sp)",
29753            "move.l {basereg}, %a6",
29754            ".short 0x4eae", // jsr -714(a6)
29755            ".short -714",
29756            "move.l (%sp)+, %a6",
29757            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29758            basereg = in(reg) SysBase,
29759            in("a0") poolHeader,
29760            in("a1") memory,
29761            in("d0") memSize,
29762        );
29763    }
29764}
29765
29766/// libname: "exec.library" (V36) (Kickstart 2.0)
29767pub unsafe fn AttemptSemaphoreShared(SysBase: *mut Library, sigSem: *mut SignalSemaphore) -> ULONG {
29768    let asm_ret_value: ULONG;
29769    unsafe {
29770        asm!(
29771            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29772            ".short 0x40c0",
29773            "move.l %a6, -(%sp)",
29774            "move.l {basereg}, %a6",
29775            ".short 0x4eae", // jsr -720(a6)
29776            ".short -720",
29777            "move.l (%sp)+, %a6",
29778            "movem.l (%sp)+, %d1/%a0-%a1",
29779            basereg = in(reg) SysBase,
29780            in("a0") sigSem,
29781            out("d0") asm_ret_value,
29782        );
29783    }
29784    asm_ret_value
29785}
29786
29787/// libname: "exec.library" (V36) (Kickstart 2.0)
29788pub unsafe fn ColdReboot(SysBase: *mut Library) {
29789    unsafe {
29790        asm!(
29791            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29792            ".short 0xc0c0",
29793            "move.l %a6, -(%sp)",
29794            "move.l {basereg}, %a6",
29795            ".short 0x4eae", // jsr -726(a6)
29796            ".short -726",
29797            "move.l (%sp)+, %a6",
29798            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29799            basereg = in(reg) SysBase,
29800        );
29801    }
29802}
29803
29804/// libname: "exec.library" (V36) (Kickstart 2.0)
29805pub unsafe fn StackSwap(SysBase: *mut Library, newStack: *mut StackSwapStruct) {
29806    unsafe {
29807        asm!(
29808            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29809            ".short 0xc0c0",
29810            "move.l %a6, -(%sp)",
29811            "move.l {basereg}, %a6",
29812            ".short 0x4eae", // jsr -732(a6)
29813            ".short -732",
29814            "move.l (%sp)+, %a6",
29815            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29816            basereg = in(reg) SysBase,
29817            in("a0") newStack,
29818        );
29819    }
29820}
29821
29822/// libname: "exec.library" (V36) (Kickstart 2.0)
29823pub unsafe fn CachePreDMA(
29824    SysBase: *mut Library,
29825    address: CONST_APTR,
29826    length: *mut ULONG,
29827    flags: ULONG,
29828) -> APTR {
29829    let asm_ret_value: APTR;
29830    unsafe {
29831        asm!(
29832            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29833            ".short 0x40c0",
29834            "move.l %a6, -(%sp)",
29835            "move.l {basereg}, %a6",
29836            ".short 0x4eae", // jsr -762(a6)
29837            ".short -762",
29838            "move.l (%sp)+, %a6",
29839            "movem.l (%sp)+, %d1/%a0-%a1",
29840            basereg = in(reg) SysBase,
29841            in("a0") address,
29842            in("a1") length,
29843            in("d0") flags,
29844            lateout("d0") asm_ret_value,
29845        );
29846    }
29847    asm_ret_value
29848}
29849
29850/// libname: "exec.library" (V36) (Kickstart 2.0)
29851pub unsafe fn CachePostDMA(
29852    SysBase: *mut Library,
29853    address: CONST_APTR,
29854    length: *mut ULONG,
29855    flags: ULONG,
29856) {
29857    unsafe {
29858        asm!(
29859            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29860            ".short 0xc0c0",
29861            "move.l %a6, -(%sp)",
29862            "move.l {basereg}, %a6",
29863            ".short 0x4eae", // jsr -768(a6)
29864            ".short -768",
29865            "move.l (%sp)+, %a6",
29866            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29867            basereg = in(reg) SysBase,
29868            in("a0") address,
29869            in("a1") length,
29870            in("d0") flags,
29871        );
29872    }
29873}
29874
29875/// libname: "exec.library" (V39) (Kickstart 3.0)
29876pub unsafe fn AddMemHandler(SysBase: *mut Library, memhand: *mut Interrupt) {
29877    unsafe {
29878        asm!(
29879            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29880            ".short 0xc0c0",
29881            "move.l %a6, -(%sp)",
29882            "move.l {basereg}, %a6",
29883            ".short 0x4eae", // jsr -774(a6)
29884            ".short -774",
29885            "move.l (%sp)+, %a6",
29886            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29887            basereg = in(reg) SysBase,
29888            in("a1") memhand,
29889        );
29890    }
29891}
29892
29893/// libname: "exec.library" (V39) (Kickstart 3.0)
29894pub unsafe fn RemMemHandler(SysBase: *mut Library, memhand: *mut Interrupt) {
29895    unsafe {
29896        asm!(
29897            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29898            ".short 0xc0c0",
29899            "move.l %a6, -(%sp)",
29900            "move.l {basereg}, %a6",
29901            ".short 0x4eae", // jsr -780(a6)
29902            ".short -780",
29903            "move.l (%sp)+, %a6",
29904            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29905            basereg = in(reg) SysBase,
29906            in("a1") memhand,
29907        );
29908    }
29909}
29910
29911/// libname: "exec.library" (V39) (Kickstart 3.0)
29912pub unsafe fn ObtainQuickVector(SysBase: *mut Library, interruptCode: APTR) -> ULONG {
29913    let asm_ret_value: ULONG;
29914    unsafe {
29915        asm!(
29916            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29917            ".short 0x40c0",
29918            "move.l %a6, -(%sp)",
29919            "move.l {basereg}, %a6",
29920            ".short 0x4eae", // jsr -786(a6)
29921            ".short -786",
29922            "move.l (%sp)+, %a6",
29923            "movem.l (%sp)+, %d1/%a0-%a1",
29924            basereg = in(reg) SysBase,
29925            in("a0") interruptCode,
29926            out("d0") asm_ret_value,
29927        );
29928    }
29929    asm_ret_value
29930}
29931
29932/// libname: "exec.library" (V45) (Kickstart 3.9 / 2000)
29933pub unsafe fn NewMinList(SysBase: *mut Library, minlist: *mut MinList) {
29934    unsafe {
29935        asm!(
29936            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29937            ".short 0xc0c0",
29938            "move.l %a6, -(%sp)",
29939            "move.l {basereg}, %a6",
29940            ".short 0x4eae", // jsr -828(a6)
29941            ".short -828",
29942            "move.l (%sp)+, %a6",
29943            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29944            basereg = in(reg) SysBase,
29945            in("a0") minlist,
29946        );
29947    }
29948}
29949
29950/// libname: "expansion.library" (V33) (Kickstart 1.2)
29951pub unsafe fn AddConfigDev(ExpansionBase: *mut Library, configDev: *mut ConfigDev) {
29952    unsafe {
29953        asm!(
29954            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
29955            ".short 0xc0c0",
29956            "move.l %a6, -(%sp)",
29957            "move.l {basereg}, %a6",
29958            ".short 0x4eae", // jsr -30(a6)
29959            ".short -30",
29960            "move.l (%sp)+, %a6",
29961            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
29962            basereg = in(reg) ExpansionBase,
29963            in("a0") configDev,
29964        );
29965    }
29966}
29967
29968/// libname: "expansion.library" (V36) (Kickstart 2.0)
29969pub unsafe fn AddBootNode(
29970    ExpansionBase: *mut Library,
29971    bootPri: LONG,
29972    flags: ULONG,
29973    deviceNode: *mut DeviceNode,
29974    configDev: *mut ConfigDev,
29975) -> BOOL {
29976    let asm_ret_value: BOOL;
29977    unsafe {
29978        asm!(
29979            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
29980            ".short 0x40c0",
29981            "move.l %a6, -(%sp)",
29982            "move.l {basereg}, %a6",
29983            ".short 0x4eae", // jsr -36(a6)
29984            ".short -36",
29985            "move.l (%sp)+, %a6",
29986            "movem.l (%sp)+, %d1/%a0-%a1",
29987            basereg = in(reg) ExpansionBase,
29988            in("d0") bootPri,
29989            in("d1") flags,
29990            in("a0") deviceNode,
29991            in("a1") configDev,
29992            lateout("d0") asm_ret_value,
29993        );
29994    }
29995    asm_ret_value
29996}
29997
29998/// libname: "expansion.library" (V33) (Kickstart 1.2)
29999pub unsafe fn AllocBoardMem(ExpansionBase: *mut Library, slotSpec: ULONG) {
30000    unsafe {
30001        asm!(
30002            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30003            ".short 0xc0c0",
30004            "move.l %a6, -(%sp)",
30005            "move.l {basereg}, %a6",
30006            ".short 0x4eae", // jsr -42(a6)
30007            ".short -42",
30008            "move.l (%sp)+, %a6",
30009            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30010            basereg = in(reg) ExpansionBase,
30011            in("d0") slotSpec,
30012        );
30013    }
30014}
30015
30016/// libname: "expansion.library" (V33) (Kickstart 1.2)
30017pub unsafe fn AllocConfigDev(ExpansionBase: *mut Library) -> *mut ConfigDev {
30018    let asm_ret_value: *mut ConfigDev;
30019    unsafe {
30020        asm!(
30021            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30022            ".short 0x40c0",
30023            "move.l %a6, -(%sp)",
30024            "move.l {basereg}, %a6",
30025            ".short 0x4eae", // jsr -48(a6)
30026            ".short -48",
30027            "move.l (%sp)+, %a6",
30028            "movem.l (%sp)+, %d1/%a0-%a1",
30029            basereg = in(reg) ExpansionBase,
30030            out("d0") asm_ret_value,
30031        );
30032    }
30033    asm_ret_value
30034}
30035
30036/// libname: "expansion.library" (V33) (Kickstart 1.2)
30037pub unsafe fn AllocExpansionMem(
30038    ExpansionBase: *mut Library,
30039    numSlots: ULONG,
30040    slotAlign: ULONG,
30041) -> APTR {
30042    let asm_ret_value: APTR;
30043    unsafe {
30044        asm!(
30045            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30046            ".short 0x40c0",
30047            "move.l %a6, -(%sp)",
30048            "move.l {basereg}, %a6",
30049            ".short 0x4eae", // jsr -54(a6)
30050            ".short -54",
30051            "move.l (%sp)+, %a6",
30052            "movem.l (%sp)+, %d1/%a0-%a1",
30053            basereg = in(reg) ExpansionBase,
30054            in("d0") numSlots,
30055            in("d1") slotAlign,
30056            lateout("d0") asm_ret_value,
30057        );
30058    }
30059    asm_ret_value
30060}
30061
30062/// libname: "expansion.library" (V33) (Kickstart 1.2)
30063pub unsafe fn ConfigBoard(ExpansionBase: *mut Library, board: APTR, configDev: *mut ConfigDev) {
30064    unsafe {
30065        asm!(
30066            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30067            ".short 0xc0c0",
30068            "move.l %a6, -(%sp)",
30069            "move.l {basereg}, %a6",
30070            ".short 0x4eae", // jsr -60(a6)
30071            ".short -60",
30072            "move.l (%sp)+, %a6",
30073            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30074            basereg = in(reg) ExpansionBase,
30075            in("a0") board,
30076            in("a1") configDev,
30077        );
30078    }
30079}
30080
30081/// libname: "expansion.library" (V33) (Kickstart 1.2)
30082pub unsafe fn ConfigChain(ExpansionBase: *mut Library, baseAddr: APTR) {
30083    unsafe {
30084        asm!(
30085            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30086            ".short 0xc0c0",
30087            "move.l %a6, -(%sp)",
30088            "move.l {basereg}, %a6",
30089            ".short 0x4eae", // jsr -66(a6)
30090            ".short -66",
30091            "move.l (%sp)+, %a6",
30092            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30093            basereg = in(reg) ExpansionBase,
30094            in("a0") baseAddr,
30095        );
30096    }
30097}
30098
30099/// libname: "expansion.library" (V33) (Kickstart 1.2)
30100pub unsafe fn FindConfigDev(
30101    ExpansionBase: *mut Library,
30102    oldConfigDev: *const ConfigDev,
30103    manufacturer: LONG,
30104    product: LONG,
30105) -> *mut ConfigDev {
30106    let asm_ret_value: *mut ConfigDev;
30107    unsafe {
30108        asm!(
30109            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30110            ".short 0x40c0",
30111            "move.l %a6, -(%sp)",
30112            "move.l {basereg}, %a6",
30113            ".short 0x4eae", // jsr -72(a6)
30114            ".short -72",
30115            "move.l (%sp)+, %a6",
30116            "movem.l (%sp)+, %d1/%a0-%a1",
30117            basereg = in(reg) ExpansionBase,
30118            in("a0") oldConfigDev,
30119            in("d0") manufacturer,
30120            in("d1") product,
30121            lateout("d0") asm_ret_value,
30122        );
30123    }
30124    asm_ret_value
30125}
30126
30127/// libname: "expansion.library" (V33) (Kickstart 1.2)
30128pub unsafe fn FreeBoardMem(ExpansionBase: *mut Library, startSlot: ULONG, slotSpec: ULONG) {
30129    unsafe {
30130        asm!(
30131            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30132            ".short 0xc0c0",
30133            "move.l %a6, -(%sp)",
30134            "move.l {basereg}, %a6",
30135            ".short 0x4eae", // jsr -78(a6)
30136            ".short -78",
30137            "move.l (%sp)+, %a6",
30138            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30139            basereg = in(reg) ExpansionBase,
30140            in("d0") startSlot,
30141            in("d1") slotSpec,
30142        );
30143    }
30144}
30145
30146/// libname: "expansion.library" (V33) (Kickstart 1.2)
30147pub unsafe fn FreeConfigDev(ExpansionBase: *mut Library, configDev: *mut ConfigDev) {
30148    unsafe {
30149        asm!(
30150            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30151            ".short 0xc0c0",
30152            "move.l %a6, -(%sp)",
30153            "move.l {basereg}, %a6",
30154            ".short 0x4eae", // jsr -84(a6)
30155            ".short -84",
30156            "move.l (%sp)+, %a6",
30157            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30158            basereg = in(reg) ExpansionBase,
30159            in("a0") configDev,
30160        );
30161    }
30162}
30163
30164/// libname: "expansion.library" (V33) (Kickstart 1.2)
30165pub unsafe fn FreeExpansionMem(ExpansionBase: *mut Library, startSlot: ULONG, numSlots: ULONG) {
30166    unsafe {
30167        asm!(
30168            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30169            ".short 0xc0c0",
30170            "move.l %a6, -(%sp)",
30171            "move.l {basereg}, %a6",
30172            ".short 0x4eae", // jsr -90(a6)
30173            ".short -90",
30174            "move.l (%sp)+, %a6",
30175            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30176            basereg = in(reg) ExpansionBase,
30177            in("d0") startSlot,
30178            in("d1") numSlots,
30179        );
30180    }
30181}
30182
30183/// libname: "expansion.library" (V33) (Kickstart 1.2)
30184pub unsafe fn ReadExpansionByte(
30185    ExpansionBase: *mut Library,
30186    board: CONST_APTR,
30187    offset: ULONG,
30188) -> UBYTE {
30189    let asm_ret_value: i16;
30190    unsafe {
30191        asm!(
30192            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30193            ".short 0x40c0",
30194            "move.l %a6, -(%sp)",
30195            "move.l {basereg}, %a6",
30196            ".short 0x4eae", // jsr -96(a6)
30197            ".short -96",
30198            "and.w #0x00ff, %d0",
30199            "move.l (%sp)+, %a6",
30200            "movem.l (%sp)+, %d1/%a0-%a1",
30201            basereg = in(reg) ExpansionBase,
30202            in("a0") board,
30203            in("d0") offset,
30204            lateout("d0") asm_ret_value,
30205        );
30206    }
30207    asm_ret_value as u8
30208}
30209
30210/// libname: "expansion.library" (V33) (Kickstart 1.2)
30211pub unsafe fn ReadExpansionRom(
30212    ExpansionBase: *mut Library,
30213    board: CONST_APTR,
30214    configDev: *mut ConfigDev,
30215) {
30216    unsafe {
30217        asm!(
30218            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30219            ".short 0xc0c0",
30220            "move.l %a6, -(%sp)",
30221            "move.l {basereg}, %a6",
30222            ".short 0x4eae", // jsr -102(a6)
30223            ".short -102",
30224            "move.l (%sp)+, %a6",
30225            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30226            basereg = in(reg) ExpansionBase,
30227            in("a0") board,
30228            in("a1") configDev,
30229        );
30230    }
30231}
30232
30233/// libname: "expansion.library" (V33) (Kickstart 1.2)
30234pub unsafe fn RemConfigDev(ExpansionBase: *mut Library, configDev: *mut ConfigDev) {
30235    unsafe {
30236        asm!(
30237            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30238            ".short 0xc0c0",
30239            "move.l %a6, -(%sp)",
30240            "move.l {basereg}, %a6",
30241            ".short 0x4eae", // jsr -108(a6)
30242            ".short -108",
30243            "move.l (%sp)+, %a6",
30244            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30245            basereg = in(reg) ExpansionBase,
30246            in("a0") configDev,
30247        );
30248    }
30249}
30250
30251/// libname: "expansion.library" (V33) (Kickstart 1.2)
30252pub unsafe fn WriteExpansionByte(
30253    ExpansionBase: *mut Library,
30254    board: APTR,
30255    offset: ULONG,
30256    byte: ULONG,
30257) {
30258    unsafe {
30259        asm!(
30260            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30261            ".short 0xc0c0",
30262            "move.l %a6, -(%sp)",
30263            "move.l {basereg}, %a6",
30264            ".short 0x4eae", // jsr -114(a6)
30265            ".short -114",
30266            "move.l (%sp)+, %a6",
30267            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30268            basereg = in(reg) ExpansionBase,
30269            in("a0") board,
30270            in("d0") offset,
30271            in("d1") byte,
30272        );
30273    }
30274}
30275
30276/// libname: "expansion.library" (V33) (Kickstart 1.2)
30277pub unsafe fn ObtainConfigBinding(ExpansionBase: *mut Library) {
30278    unsafe {
30279        asm!(
30280            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30281            ".short 0xc0c0",
30282            "move.l %a6, -(%sp)",
30283            "move.l {basereg}, %a6",
30284            ".short 0x4eae", // jsr -120(a6)
30285            ".short -120",
30286            "move.l (%sp)+, %a6",
30287            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30288            basereg = in(reg) ExpansionBase,
30289        );
30290    }
30291}
30292
30293/// libname: "expansion.library" (V33) (Kickstart 1.2)
30294pub unsafe fn ReleaseConfigBinding(ExpansionBase: *mut Library) {
30295    unsafe {
30296        asm!(
30297            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30298            ".short 0xc0c0",
30299            "move.l %a6, -(%sp)",
30300            "move.l {basereg}, %a6",
30301            ".short 0x4eae", // jsr -126(a6)
30302            ".short -126",
30303            "move.l (%sp)+, %a6",
30304            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30305            basereg = in(reg) ExpansionBase,
30306        );
30307    }
30308}
30309
30310/// libname: "expansion.library" (V33) (Kickstart 1.2)
30311pub unsafe fn SetCurrentBinding(
30312    ExpansionBase: *mut Library,
30313    currentBinding: *mut CurrentBinding,
30314    bindingSize: ULONG,
30315) {
30316    unsafe {
30317        asm!(
30318            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30319            ".short 0xc0c0",
30320            "move.l %a6, -(%sp)",
30321            "move.l {basereg}, %a6",
30322            ".short 0x4eae", // jsr -132(a6)
30323            ".short -132",
30324            "move.l (%sp)+, %a6",
30325            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30326            basereg = in(reg) ExpansionBase,
30327            in("a0") currentBinding,
30328            in("d0") bindingSize,
30329        );
30330    }
30331}
30332
30333/// libname: "expansion.library" (V33) (Kickstart 1.2)
30334pub unsafe fn GetCurrentBinding(
30335    ExpansionBase: *mut Library,
30336    currentBinding: *const CurrentBinding,
30337    bindingSize: ULONG,
30338) -> ULONG {
30339    let asm_ret_value: ULONG;
30340    unsafe {
30341        asm!(
30342            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30343            ".short 0x40c0",
30344            "move.l %a6, -(%sp)",
30345            "move.l {basereg}, %a6",
30346            ".short 0x4eae", // jsr -138(a6)
30347            ".short -138",
30348            "move.l (%sp)+, %a6",
30349            "movem.l (%sp)+, %d1/%a0-%a1",
30350            basereg = in(reg) ExpansionBase,
30351            in("a0") currentBinding,
30352            in("d0") bindingSize,
30353            lateout("d0") asm_ret_value,
30354        );
30355    }
30356    asm_ret_value
30357}
30358
30359/// libname: "expansion.library" (V33) (Kickstart 1.2)
30360pub unsafe fn MakeDosNode(ExpansionBase: *mut Library, parmPacket: CONST_APTR) -> *mut DeviceNode {
30361    let asm_ret_value: *mut DeviceNode;
30362    unsafe {
30363        asm!(
30364            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30365            ".short 0x40c0",
30366            "move.l %a6, -(%sp)",
30367            "move.l {basereg}, %a6",
30368            ".short 0x4eae", // jsr -144(a6)
30369            ".short -144",
30370            "move.l (%sp)+, %a6",
30371            "movem.l (%sp)+, %d1/%a0-%a1",
30372            basereg = in(reg) ExpansionBase,
30373            in("a0") parmPacket,
30374            out("d0") asm_ret_value,
30375        );
30376    }
30377    asm_ret_value
30378}
30379
30380/// libname: "expansion.library" (V33) (Kickstart 1.2)
30381pub unsafe fn AddDosNode(
30382    ExpansionBase: *mut Library,
30383    bootPri: LONG,
30384    flags: ULONG,
30385    deviceNode: *mut DeviceNode,
30386) -> BOOL {
30387    let asm_ret_value: BOOL;
30388    unsafe {
30389        asm!(
30390            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30391            ".short 0x40c0",
30392            "move.l %a6, -(%sp)",
30393            "move.l {basereg}, %a6",
30394            ".short 0x4eae", // jsr -150(a6)
30395            ".short -150",
30396            "move.l (%sp)+, %a6",
30397            "movem.l (%sp)+, %d1/%a0-%a1",
30398            basereg = in(reg) ExpansionBase,
30399            in("d0") bootPri,
30400            in("d1") flags,
30401            in("a0") deviceNode,
30402            lateout("d0") asm_ret_value,
30403        );
30404    }
30405    asm_ret_value
30406}
30407
30408/// libname: "fuelgauge.gadget" (V40) (Kickstart 3.1)
30409pub unsafe fn FUELGAUGE_GetClass(FuelGaugeBase: *mut ::core::ffi::c_void) -> *mut Class {
30410    let asm_ret_value: *mut Class;
30411    unsafe {
30412        asm!(
30413            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30414            ".short 0x40c0",
30415            "move.l %a6, -(%sp)",
30416            "move.l {basereg}, %a6",
30417            ".short 0x4eae", // jsr -30(a6)
30418            ".short -30",
30419            "move.l (%sp)+, %a6",
30420            "movem.l (%sp)+, %d1/%a0-%a1",
30421            basereg = in(reg) FuelGaugeBase,
30422            out("d0") asm_ret_value,
30423        );
30424    }
30425    asm_ret_value
30426}
30427
30428/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30429pub unsafe fn CreateGadgetA(
30430    GadToolsBase: *mut Library,
30431    kind: ULONG,
30432    gad: *mut Gadget,
30433    ng: *mut NewGadget,
30434    taglist: *const TagItem,
30435) -> *mut Gadget {
30436    let asm_ret_value: *mut Gadget;
30437    unsafe {
30438        asm!(
30439            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30440            ".short 0x40c0",
30441            "move.l %a6, -(%sp)",
30442            "move.l {basereg}, %a6",
30443            ".short 0x4eae", // jsr -30(a6)
30444            ".short -30",
30445            "move.l (%sp)+, %a6",
30446            "movem.l (%sp)+, %d1/%a0-%a1",
30447            basereg = in(reg) GadToolsBase,
30448            in("d0") kind,
30449            in("a0") gad,
30450            in("a1") ng,
30451            in("a2") taglist,
30452            lateout("d0") asm_ret_value,
30453        );
30454    }
30455    asm_ret_value
30456}
30457
30458/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30459pub unsafe fn FreeGadgets(GadToolsBase: *mut Library, gad: *mut Gadget) {
30460    unsafe {
30461        asm!(
30462            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30463            ".short 0xc0c0",
30464            "move.l %a6, -(%sp)",
30465            "move.l {basereg}, %a6",
30466            ".short 0x4eae", // jsr -36(a6)
30467            ".short -36",
30468            "move.l (%sp)+, %a6",
30469            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30470            basereg = in(reg) GadToolsBase,
30471            in("a0") gad,
30472        );
30473    }
30474}
30475
30476/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30477pub unsafe fn GT_SetGadgetAttrsA(
30478    GadToolsBase: *mut Library,
30479    gad: *mut Gadget,
30480    win: *mut Window,
30481    req: *mut Requester,
30482    taglist: *const TagItem,
30483) {
30484    unsafe {
30485        asm!(
30486            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30487            ".short 0xc0c0",
30488            "move.l %a6, -(%sp)",
30489            "move.l {basereg}, %a6",
30490            ".short 0x4eae", // jsr -42(a6)
30491            ".short -42",
30492            "move.l (%sp)+, %a6",
30493            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30494            basereg = in(reg) GadToolsBase,
30495            in("a0") gad,
30496            in("a1") win,
30497            in("a2") req,
30498            in("a3") taglist,
30499        );
30500    }
30501}
30502
30503/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30504pub unsafe fn CreateMenusA(
30505    GadToolsBase: *mut Library,
30506    newmenu: *const NewMenu,
30507    taglist: *mut TagItem,
30508) -> *mut Menu {
30509    let asm_ret_value: *mut Menu;
30510    unsafe {
30511        asm!(
30512            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30513            ".short 0x40c0",
30514            "move.l %a6, -(%sp)",
30515            "move.l {basereg}, %a6",
30516            ".short 0x4eae", // jsr -48(a6)
30517            ".short -48",
30518            "move.l (%sp)+, %a6",
30519            "movem.l (%sp)+, %d1/%a0-%a1",
30520            basereg = in(reg) GadToolsBase,
30521            in("a0") newmenu,
30522            in("a1") taglist,
30523            out("d0") asm_ret_value,
30524        );
30525    }
30526    asm_ret_value
30527}
30528
30529/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30530pub unsafe fn FreeMenus(GadToolsBase: *mut Library, menu: *mut Menu) {
30531    unsafe {
30532        asm!(
30533            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30534            ".short 0xc0c0",
30535            "move.l %a6, -(%sp)",
30536            "move.l {basereg}, %a6",
30537            ".short 0x4eae", // jsr -54(a6)
30538            ".short -54",
30539            "move.l (%sp)+, %a6",
30540            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30541            basereg = in(reg) GadToolsBase,
30542            in("a0") menu,
30543        );
30544    }
30545}
30546
30547/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30548pub unsafe fn LayoutMenuItemsA(
30549    GadToolsBase: *mut Library,
30550    firstitem: *mut MenuItem,
30551    vi: APTR,
30552    taglist: *const TagItem,
30553) -> BOOL {
30554    let asm_ret_value: BOOL;
30555    unsafe {
30556        asm!(
30557            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30558            ".short 0x40c0",
30559            "move.l %a6, -(%sp)",
30560            "move.l {basereg}, %a6",
30561            ".short 0x4eae", // jsr -60(a6)
30562            ".short -60",
30563            "move.l (%sp)+, %a6",
30564            "movem.l (%sp)+, %d1/%a0-%a1",
30565            basereg = in(reg) GadToolsBase,
30566            in("a0") firstitem,
30567            in("a1") vi,
30568            in("a2") taglist,
30569            out("d0") asm_ret_value,
30570        );
30571    }
30572    asm_ret_value
30573}
30574
30575/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30576pub unsafe fn LayoutMenusA(
30577    GadToolsBase: *mut Library,
30578    firstmenu: *mut Menu,
30579    vi: APTR,
30580    taglist: *const TagItem,
30581) -> BOOL {
30582    let asm_ret_value: BOOL;
30583    unsafe {
30584        asm!(
30585            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30586            ".short 0x40c0",
30587            "move.l %a6, -(%sp)",
30588            "move.l {basereg}, %a6",
30589            ".short 0x4eae", // jsr -66(a6)
30590            ".short -66",
30591            "move.l (%sp)+, %a6",
30592            "movem.l (%sp)+, %d1/%a0-%a1",
30593            basereg = in(reg) GadToolsBase,
30594            in("a0") firstmenu,
30595            in("a1") vi,
30596            in("a2") taglist,
30597            out("d0") asm_ret_value,
30598        );
30599    }
30600    asm_ret_value
30601}
30602
30603/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30604pub unsafe fn GT_GetIMsg(GadToolsBase: *mut Library, iport: *mut MsgPort) -> *mut IntuiMessage {
30605    let asm_ret_value: *mut IntuiMessage;
30606    unsafe {
30607        asm!(
30608            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30609            ".short 0x40c0",
30610            "move.l %a6, -(%sp)",
30611            "move.l {basereg}, %a6",
30612            ".short 0x4eae", // jsr -72(a6)
30613            ".short -72",
30614            "move.l (%sp)+, %a6",
30615            "movem.l (%sp)+, %d1/%a0-%a1",
30616            basereg = in(reg) GadToolsBase,
30617            in("a0") iport,
30618            out("d0") asm_ret_value,
30619        );
30620    }
30621    asm_ret_value
30622}
30623
30624/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30625pub unsafe fn GT_ReplyIMsg(GadToolsBase: *mut Library, imsg: *mut IntuiMessage) {
30626    unsafe {
30627        asm!(
30628            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30629            ".short 0xc0c0",
30630            "move.l %a6, -(%sp)",
30631            "move.l {basereg}, %a6",
30632            ".short 0x4eae", // jsr -78(a6)
30633            ".short -78",
30634            "move.l (%sp)+, %a6",
30635            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30636            basereg = in(reg) GadToolsBase,
30637            in("a1") imsg,
30638        );
30639    }
30640}
30641
30642/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30643pub unsafe fn GT_RefreshWindow(GadToolsBase: *mut Library, win: *mut Window, req: *mut Requester) {
30644    unsafe {
30645        asm!(
30646            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30647            ".short 0xc0c0",
30648            "move.l %a6, -(%sp)",
30649            "move.l {basereg}, %a6",
30650            ".short 0x4eae", // jsr -84(a6)
30651            ".short -84",
30652            "move.l (%sp)+, %a6",
30653            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30654            basereg = in(reg) GadToolsBase,
30655            in("a0") win,
30656            in("a1") req,
30657        );
30658    }
30659}
30660
30661/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30662pub unsafe fn GT_BeginRefresh(GadToolsBase: *mut Library, win: *mut Window) {
30663    unsafe {
30664        asm!(
30665            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30666            ".short 0xc0c0",
30667            "move.l %a6, -(%sp)",
30668            "move.l {basereg}, %a6",
30669            ".short 0x4eae", // jsr -90(a6)
30670            ".short -90",
30671            "move.l (%sp)+, %a6",
30672            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30673            basereg = in(reg) GadToolsBase,
30674            in("a0") win,
30675        );
30676    }
30677}
30678
30679/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30680pub unsafe fn GT_EndRefresh(GadToolsBase: *mut Library, win: *mut Window, complete: LONG) {
30681    unsafe {
30682        asm!(
30683            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30684            ".short 0xc0c0",
30685            "move.l %a6, -(%sp)",
30686            "move.l {basereg}, %a6",
30687            ".short 0x4eae", // jsr -96(a6)
30688            ".short -96",
30689            "move.l (%sp)+, %a6",
30690            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30691            basereg = in(reg) GadToolsBase,
30692            in("a0") win,
30693            in("d0") complete,
30694        );
30695    }
30696}
30697
30698/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30699pub unsafe fn GT_FilterIMsg(
30700    GadToolsBase: *mut Library,
30701    imsg: *const IntuiMessage,
30702) -> *mut IntuiMessage {
30703    let asm_ret_value: *mut IntuiMessage;
30704    unsafe {
30705        asm!(
30706            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30707            ".short 0x40c0",
30708            "move.l %a6, -(%sp)",
30709            "move.l {basereg}, %a6",
30710            ".short 0x4eae", // jsr -102(a6)
30711            ".short -102",
30712            "move.l (%sp)+, %a6",
30713            "movem.l (%sp)+, %d1/%a0-%a1",
30714            basereg = in(reg) GadToolsBase,
30715            in("a1") imsg,
30716            out("d0") asm_ret_value,
30717        );
30718    }
30719    asm_ret_value
30720}
30721
30722/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30723pub unsafe fn GT_PostFilterIMsg(
30724    GadToolsBase: *mut Library,
30725    imsg: *mut IntuiMessage,
30726) -> *mut IntuiMessage {
30727    let asm_ret_value: *mut IntuiMessage;
30728    unsafe {
30729        asm!(
30730            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30731            ".short 0x40c0",
30732            "move.l %a6, -(%sp)",
30733            "move.l {basereg}, %a6",
30734            ".short 0x4eae", // jsr -108(a6)
30735            ".short -108",
30736            "move.l (%sp)+, %a6",
30737            "movem.l (%sp)+, %d1/%a0-%a1",
30738            basereg = in(reg) GadToolsBase,
30739            in("a1") imsg,
30740            out("d0") asm_ret_value,
30741        );
30742    }
30743    asm_ret_value
30744}
30745
30746/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30747pub unsafe fn CreateContext(GadToolsBase: *mut Library, glistptr: *mut *mut Gadget) -> *mut Gadget {
30748    let asm_ret_value: *mut Gadget;
30749    unsafe {
30750        asm!(
30751            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30752            ".short 0x40c0",
30753            "move.l %a6, -(%sp)",
30754            "move.l {basereg}, %a6",
30755            ".short 0x4eae", // jsr -114(a6)
30756            ".short -114",
30757            "move.l (%sp)+, %a6",
30758            "movem.l (%sp)+, %d1/%a0-%a1",
30759            basereg = in(reg) GadToolsBase,
30760            in("a0") glistptr,
30761            out("d0") asm_ret_value,
30762        );
30763    }
30764    asm_ret_value
30765}
30766
30767/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30768pub unsafe fn DrawBevelBoxA(
30769    GadToolsBase: *mut Library,
30770    rport: *mut RastPort,
30771    left: LONG,
30772    top: LONG,
30773    width: LONG,
30774    height: LONG,
30775    taglist: *const TagItem,
30776) {
30777    unsafe {
30778        asm!(
30779            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30780            ".short 0xc0c0",
30781            "move.l %a6, -(%sp)",
30782            "move.l {basereg}, %a6",
30783            ".short 0x4eae", // jsr -120(a6)
30784            ".short -120",
30785            "move.l (%sp)+, %a6",
30786            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30787            basereg = in(reg) GadToolsBase,
30788            in("a0") rport,
30789            in("d0") left,
30790            in("d1") top,
30791            in("d2") width,
30792            in("d3") height,
30793            in("a1") taglist,
30794        );
30795    }
30796}
30797
30798/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30799pub unsafe fn GetVisualInfoA(
30800    GadToolsBase: *mut Library,
30801    screen: *mut Screen,
30802    taglist: *const TagItem,
30803) -> APTR {
30804    let asm_ret_value: APTR;
30805    unsafe {
30806        asm!(
30807            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30808            ".short 0x40c0",
30809            "move.l %a6, -(%sp)",
30810            "move.l {basereg}, %a6",
30811            ".short 0x4eae", // jsr -126(a6)
30812            ".short -126",
30813            "move.l (%sp)+, %a6",
30814            "movem.l (%sp)+, %d1/%a0-%a1",
30815            basereg = in(reg) GadToolsBase,
30816            in("a0") screen,
30817            in("a1") taglist,
30818            out("d0") asm_ret_value,
30819        );
30820    }
30821    asm_ret_value
30822}
30823
30824/// libname: "gadtools.library" (V36) (Kickstart 2.0)
30825pub unsafe fn FreeVisualInfo(GadToolsBase: *mut Library, vi: APTR) {
30826    unsafe {
30827        asm!(
30828            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
30829            ".short 0xc0c0",
30830            "move.l %a6, -(%sp)",
30831            "move.l {basereg}, %a6",
30832            ".short 0x4eae", // jsr -132(a6)
30833            ".short -132",
30834            "move.l (%sp)+, %a6",
30835            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
30836            basereg = in(reg) GadToolsBase,
30837            in("a0") vi,
30838        );
30839    }
30840}
30841
30842/// libname: "gadtools.library" (V47) (Kickstart 3.2 / 2020)
30843pub unsafe fn SetDesignFontA(
30844    GadToolsBase: *mut Library,
30845    vi: APTR,
30846    tattr: *mut TextAttr,
30847    tags: *const TagItem,
30848) -> LONG {
30849    let asm_ret_value: LONG;
30850    unsafe {
30851        asm!(
30852            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30853            ".short 0x40c0",
30854            "move.l %a6, -(%sp)",
30855            "move.l {basereg}, %a6",
30856            ".short 0x4eae", // jsr -138(a6)
30857            ".short -138",
30858            "move.l (%sp)+, %a6",
30859            "movem.l (%sp)+, %d1/%a0-%a1",
30860            basereg = in(reg) GadToolsBase,
30861            in("a0") vi,
30862            in("a1") tattr,
30863            in("a2") tags,
30864            out("d0") asm_ret_value,
30865        );
30866    }
30867    asm_ret_value
30868}
30869
30870/// libname: "gadtools.library" (V47) (Kickstart 3.2 / 2020)
30871pub unsafe fn ScaleGadgetRectA(
30872    GadToolsBase: *mut Library,
30873    ng: *mut NewGadget,
30874    tags: *const TagItem,
30875) -> LONG {
30876    let asm_ret_value: LONG;
30877    unsafe {
30878        asm!(
30879            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30880            ".short 0x40c0",
30881            "move.l %a6, -(%sp)",
30882            "move.l {basereg}, %a6",
30883            ".short 0x4eae", // jsr -144(a6)
30884            ".short -144",
30885            "move.l (%sp)+, %a6",
30886            "movem.l (%sp)+, %d1/%a0-%a1",
30887            basereg = in(reg) GadToolsBase,
30888            in("a0") ng,
30889            in("a1") tags,
30890            out("d0") asm_ret_value,
30891        );
30892    }
30893    asm_ret_value
30894}
30895
30896/// libname: "gadtools.library" (V39) (Kickstart 3.0)
30897pub unsafe fn GT_GetGadgetAttrsA(
30898    GadToolsBase: *mut Library,
30899    gad: *mut Gadget,
30900    win: *mut Window,
30901    req: *mut Requester,
30902    taglist: *const TagItem,
30903) -> LONG {
30904    let asm_ret_value: LONG;
30905    unsafe {
30906        asm!(
30907            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30908            ".short 0x40c0",
30909            "move.l %a6, -(%sp)",
30910            "move.l {basereg}, %a6",
30911            ".short 0x4eae", // jsr -174(a6)
30912            ".short -174",
30913            "move.l (%sp)+, %a6",
30914            "movem.l (%sp)+, %d1/%a0-%a1",
30915            basereg = in(reg) GadToolsBase,
30916            in("a0") gad,
30917            in("a1") win,
30918            in("a2") req,
30919            in("a3") taglist,
30920            out("d0") asm_ret_value,
30921        );
30922    }
30923    asm_ret_value
30924}
30925
30926/// libname: "getcolor.gadget" (V40) (Kickstart 3.1)
30927pub unsafe fn GETCOLOR_GetClass(GetColorBase: *mut ::core::ffi::c_void) -> *mut Class {
30928    let asm_ret_value: *mut Class;
30929    unsafe {
30930        asm!(
30931            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30932            ".short 0x40c0",
30933            "move.l %a6, -(%sp)",
30934            "move.l {basereg}, %a6",
30935            ".short 0x4eae", // jsr -30(a6)
30936            ".short -30",
30937            "move.l (%sp)+, %a6",
30938            "movem.l (%sp)+, %d1/%a0-%a1",
30939            basereg = in(reg) GetColorBase,
30940            out("d0") asm_ret_value,
30941        );
30942    }
30943    asm_ret_value
30944}
30945
30946/// libname: "getfile.gadget" (V40) (Kickstart 3.1)
30947pub unsafe fn GETFILE_GetClass(GetFileBase: *mut ::core::ffi::c_void) -> *mut Class {
30948    let asm_ret_value: *mut Class;
30949    unsafe {
30950        asm!(
30951            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30952            ".short 0x40c0",
30953            "move.l %a6, -(%sp)",
30954            "move.l {basereg}, %a6",
30955            ".short 0x4eae", // jsr -30(a6)
30956            ".short -30",
30957            "move.l (%sp)+, %a6",
30958            "movem.l (%sp)+, %d1/%a0-%a1",
30959            basereg = in(reg) GetFileBase,
30960            out("d0") asm_ret_value,
30961        );
30962    }
30963    asm_ret_value
30964}
30965
30966/// libname: "getfont.gadget" (V40) (Kickstart 3.1)
30967pub unsafe fn GETFONT_GetClass(GetFontBase: *mut ::core::ffi::c_void) -> *mut Class {
30968    let asm_ret_value: *mut Class;
30969    unsafe {
30970        asm!(
30971            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30972            ".short 0x40c0",
30973            "move.l %a6, -(%sp)",
30974            "move.l {basereg}, %a6",
30975            ".short 0x4eae", // jsr -30(a6)
30976            ".short -30",
30977            "move.l (%sp)+, %a6",
30978            "movem.l (%sp)+, %d1/%a0-%a1",
30979            basereg = in(reg) GetFontBase,
30980            out("d0") asm_ret_value,
30981        );
30982    }
30983    asm_ret_value
30984}
30985
30986/// libname: "getscreenmode.gadget" (V40) (Kickstart 3.1)
30987pub unsafe fn GETSCREENMODE_GetClass(GetScreenModeBase: *mut ::core::ffi::c_void) -> *mut Class {
30988    let asm_ret_value: *mut Class;
30989    unsafe {
30990        asm!(
30991            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
30992            ".short 0x40c0",
30993            "move.l %a6, -(%sp)",
30994            "move.l {basereg}, %a6",
30995            ".short 0x4eae", // jsr -30(a6)
30996            ".short -30",
30997            "move.l (%sp)+, %a6",
30998            "movem.l (%sp)+, %d1/%a0-%a1",
30999            basereg = in(reg) GetScreenModeBase,
31000            out("d0") asm_ret_value,
31001        );
31002    }
31003    asm_ret_value
31004}
31005
31006/// libname: "glyph.image" (V40) (Kickstart 3.1)
31007pub unsafe fn GLYPH_GetClass(GlyphBase: *mut ::core::ffi::c_void) -> *mut Class {
31008    let asm_ret_value: *mut Class;
31009    unsafe {
31010        asm!(
31011            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31012            ".short 0x40c0",
31013            "move.l %a6, -(%sp)",
31014            "move.l {basereg}, %a6",
31015            ".short 0x4eae", // jsr -30(a6)
31016            ".short -30",
31017            "move.l (%sp)+, %a6",
31018            "movem.l (%sp)+, %d1/%a0-%a1",
31019            basereg = in(reg) GlyphBase,
31020            out("d0") asm_ret_value,
31021        );
31022    }
31023    asm_ret_value
31024}
31025
31026/// libname: "graphics.library"
31027pub unsafe fn BltBitMap(
31028    GfxBase: *mut Library,
31029    srcBitMap: *const BitMap,
31030    xSrc: LONG,
31031    ySrc: LONG,
31032    destBitMap: *mut BitMap,
31033    xDest: LONG,
31034    yDest: LONG,
31035    xSize: LONG,
31036    ySize: LONG,
31037    minterm: ULONG,
31038    mask: ULONG,
31039    tempA: PLANEPTR,
31040) -> LONG {
31041    let asm_ret_value: LONG;
31042    unsafe {
31043        asm!(
31044            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31045            ".short 0x40c0",
31046            "move.l %a6, -(%sp)",
31047            "move.l {basereg}, %a6",
31048            ".short 0x4eae", // jsr -30(a6)
31049            ".short -30",
31050            "move.l (%sp)+, %a6",
31051            "movem.l (%sp)+, %d1/%a0-%a1",
31052            basereg = in(reg) GfxBase,
31053            in("a0") srcBitMap,
31054            in("d0") xSrc,
31055            in("d1") ySrc,
31056            in("a1") destBitMap,
31057            in("d2") xDest,
31058            in("d3") yDest,
31059            in("d4") xSize,
31060            in("d5") ySize,
31061            in("d6") minterm,
31062            in("d7") mask,
31063            in("a2") tempA,
31064            lateout("d0") asm_ret_value,
31065        );
31066    }
31067    asm_ret_value
31068}
31069
31070/// libname: "graphics.library"
31071pub unsafe fn BltTemplate(
31072    GfxBase: *mut Library,
31073    source: PLANEPTR,
31074    xSrc: LONG,
31075    srcMod: LONG,
31076    destRP: *mut RastPort,
31077    xDest: LONG,
31078    yDest: LONG,
31079    xSize: LONG,
31080    ySize: LONG,
31081) {
31082    unsafe {
31083        asm!(
31084            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31085            ".short 0xc0c0",
31086            "move.l %a6, -(%sp)",
31087            "move.l {basereg}, %a6",
31088            ".short 0x4eae", // jsr -36(a6)
31089            ".short -36",
31090            "move.l (%sp)+, %a6",
31091            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31092            basereg = in(reg) GfxBase,
31093            in("a0") source,
31094            in("d0") xSrc,
31095            in("d1") srcMod,
31096            in("a1") destRP,
31097            in("d2") xDest,
31098            in("d3") yDest,
31099            in("d4") xSize,
31100            in("d5") ySize,
31101        );
31102    }
31103}
31104
31105/// libname: "graphics.library"
31106pub unsafe fn ClearEOL(GfxBase: *mut Library, rp: *mut RastPort) {
31107    unsafe {
31108        asm!(
31109            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31110            ".short 0xc0c0",
31111            "move.l %a6, -(%sp)",
31112            "move.l {basereg}, %a6",
31113            ".short 0x4eae", // jsr -42(a6)
31114            ".short -42",
31115            "move.l (%sp)+, %a6",
31116            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31117            basereg = in(reg) GfxBase,
31118            in("a1") rp,
31119        );
31120    }
31121}
31122
31123/// libname: "graphics.library"
31124pub unsafe fn ClearScreen(GfxBase: *mut Library, rp: *mut RastPort) {
31125    unsafe {
31126        asm!(
31127            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31128            ".short 0xc0c0",
31129            "move.l %a6, -(%sp)",
31130            "move.l {basereg}, %a6",
31131            ".short 0x4eae", // jsr -48(a6)
31132            ".short -48",
31133            "move.l (%sp)+, %a6",
31134            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31135            basereg = in(reg) GfxBase,
31136            in("a1") rp,
31137        );
31138    }
31139}
31140
31141/// libname: "graphics.library"
31142pub unsafe fn TextLength(
31143    GfxBase: *mut Library,
31144    rp: *mut RastPort,
31145    string: CONST_STRPTR,
31146    count: ULONG,
31147) -> WORD {
31148    let asm_ret_value: WORD;
31149    unsafe {
31150        asm!(
31151            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31152            ".short 0x40c0",
31153            "move.l %a6, -(%sp)",
31154            "move.l {basereg}, %a6",
31155            ".short 0x4eae", // jsr -54(a6)
31156            ".short -54",
31157            "move.l (%sp)+, %a6",
31158            "movem.l (%sp)+, %d1/%a0-%a1",
31159            basereg = in(reg) GfxBase,
31160            in("a1") rp,
31161            in("a0") string,
31162            in("d0") count,
31163            lateout("d0") asm_ret_value,
31164        );
31165    }
31166    asm_ret_value
31167}
31168
31169/// libname: "graphics.library"
31170pub unsafe fn Text(
31171    GfxBase: *mut Library,
31172    rp: *mut RastPort,
31173    string: CONST_STRPTR,
31174    count: ULONG,
31175) -> LONG {
31176    let asm_ret_value: LONG;
31177    unsafe {
31178        asm!(
31179            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31180            ".short 0x40c0",
31181            "move.l %a6, -(%sp)",
31182            "move.l {basereg}, %a6",
31183            ".short 0x4eae", // jsr -60(a6)
31184            ".short -60",
31185            "move.l (%sp)+, %a6",
31186            "movem.l (%sp)+, %d1/%a0-%a1",
31187            basereg = in(reg) GfxBase,
31188            in("a1") rp,
31189            in("a0") string,
31190            in("d0") count,
31191            lateout("d0") asm_ret_value,
31192        );
31193    }
31194    asm_ret_value
31195}
31196
31197/// libname: "graphics.library"
31198pub unsafe fn SetFont(GfxBase: *mut Library, rp: *mut RastPort, textFont: *mut TextFont) -> LONG {
31199    let asm_ret_value: LONG;
31200    unsafe {
31201        asm!(
31202            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31203            ".short 0x40c0",
31204            "move.l %a6, -(%sp)",
31205            "move.l {basereg}, %a6",
31206            ".short 0x4eae", // jsr -66(a6)
31207            ".short -66",
31208            "move.l (%sp)+, %a6",
31209            "movem.l (%sp)+, %d1/%a0-%a1",
31210            basereg = in(reg) GfxBase,
31211            in("a1") rp,
31212            in("a0") textFont,
31213            out("d0") asm_ret_value,
31214        );
31215    }
31216    asm_ret_value
31217}
31218
31219/// libname: "graphics.library"
31220pub unsafe fn OpenFont(GfxBase: *mut Library, textAttr: *const TextAttr) -> *mut TextFont {
31221    let asm_ret_value: *mut TextFont;
31222    unsafe {
31223        asm!(
31224            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31225            ".short 0x40c0",
31226            "move.l %a6, -(%sp)",
31227            "move.l {basereg}, %a6",
31228            ".short 0x4eae", // jsr -72(a6)
31229            ".short -72",
31230            "move.l (%sp)+, %a6",
31231            "movem.l (%sp)+, %d1/%a0-%a1",
31232            basereg = in(reg) GfxBase,
31233            in("a0") textAttr,
31234            out("d0") asm_ret_value,
31235        );
31236    }
31237    asm_ret_value
31238}
31239
31240/// libname: "graphics.library"
31241pub unsafe fn CloseFont(GfxBase: *mut Library, textFont: *mut TextFont) {
31242    unsafe {
31243        asm!(
31244            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31245            ".short 0xc0c0",
31246            "move.l %a6, -(%sp)",
31247            "move.l {basereg}, %a6",
31248            ".short 0x4eae", // jsr -78(a6)
31249            ".short -78",
31250            "move.l (%sp)+, %a6",
31251            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31252            basereg = in(reg) GfxBase,
31253            in("a1") textFont,
31254        );
31255    }
31256}
31257
31258/// libname: "graphics.library"
31259pub unsafe fn AskSoftStyle(GfxBase: *mut Library, rp: *mut RastPort) -> ULONG {
31260    let asm_ret_value: ULONG;
31261    unsafe {
31262        asm!(
31263            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31264            ".short 0x40c0",
31265            "move.l %a6, -(%sp)",
31266            "move.l {basereg}, %a6",
31267            ".short 0x4eae", // jsr -84(a6)
31268            ".short -84",
31269            "move.l (%sp)+, %a6",
31270            "movem.l (%sp)+, %d1/%a0-%a1",
31271            basereg = in(reg) GfxBase,
31272            in("a1") rp,
31273            out("d0") asm_ret_value,
31274        );
31275    }
31276    asm_ret_value
31277}
31278
31279/// libname: "graphics.library"
31280pub unsafe fn SetSoftStyle(
31281    GfxBase: *mut Library,
31282    rp: *mut RastPort,
31283    style: ULONG,
31284    enable: ULONG,
31285) -> ULONG {
31286    let asm_ret_value: ULONG;
31287    unsafe {
31288        asm!(
31289            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31290            ".short 0x40c0",
31291            "move.l %a6, -(%sp)",
31292            "move.l {basereg}, %a6",
31293            ".short 0x4eae", // jsr -90(a6)
31294            ".short -90",
31295            "move.l (%sp)+, %a6",
31296            "movem.l (%sp)+, %d1/%a0-%a1",
31297            basereg = in(reg) GfxBase,
31298            in("a1") rp,
31299            in("d0") style,
31300            in("d1") enable,
31301            lateout("d0") asm_ret_value,
31302        );
31303    }
31304    asm_ret_value
31305}
31306
31307/// libname: "graphics.library"
31308pub unsafe fn AddBob(GfxBase: *mut Library, bob: *mut Bob, rp: *mut RastPort) {
31309    unsafe {
31310        asm!(
31311            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31312            ".short 0xc0c0",
31313            "move.l %a6, -(%sp)",
31314            "move.l {basereg}, %a6",
31315            ".short 0x4eae", // jsr -96(a6)
31316            ".short -96",
31317            "move.l (%sp)+, %a6",
31318            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31319            basereg = in(reg) GfxBase,
31320            in("a0") bob,
31321            in("a1") rp,
31322        );
31323    }
31324}
31325
31326/// libname: "graphics.library"
31327pub unsafe fn AddVSprite(GfxBase: *mut Library, vSprite: *mut VSprite, rp: *mut RastPort) {
31328    unsafe {
31329        asm!(
31330            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31331            ".short 0xc0c0",
31332            "move.l %a6, -(%sp)",
31333            "move.l {basereg}, %a6",
31334            ".short 0x4eae", // jsr -102(a6)
31335            ".short -102",
31336            "move.l (%sp)+, %a6",
31337            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31338            basereg = in(reg) GfxBase,
31339            in("a0") vSprite,
31340            in("a1") rp,
31341        );
31342    }
31343}
31344
31345/// libname: "graphics.library"
31346pub unsafe fn DoCollision(GfxBase: *mut Library, rp: *mut RastPort) {
31347    unsafe {
31348        asm!(
31349            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31350            ".short 0xc0c0",
31351            "move.l %a6, -(%sp)",
31352            "move.l {basereg}, %a6",
31353            ".short 0x4eae", // jsr -108(a6)
31354            ".short -108",
31355            "move.l (%sp)+, %a6",
31356            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31357            basereg = in(reg) GfxBase,
31358            in("a1") rp,
31359        );
31360    }
31361}
31362
31363/// libname: "graphics.library"
31364pub unsafe fn DrawGList(GfxBase: *mut Library, rp: *mut RastPort, vp: *mut ViewPort) {
31365    unsafe {
31366        asm!(
31367            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31368            ".short 0xc0c0",
31369            "move.l %a6, -(%sp)",
31370            "move.l {basereg}, %a6",
31371            ".short 0x4eae", // jsr -114(a6)
31372            ".short -114",
31373            "move.l (%sp)+, %a6",
31374            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31375            basereg = in(reg) GfxBase,
31376            in("a1") rp,
31377            in("a0") vp,
31378        );
31379    }
31380}
31381
31382/// libname: "graphics.library"
31383pub unsafe fn InitGels(
31384    GfxBase: *mut Library,
31385    head: *mut VSprite,
31386    tail: *mut VSprite,
31387    gelsInfo: *mut GelsInfo,
31388) {
31389    unsafe {
31390        asm!(
31391            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31392            ".short 0xc0c0",
31393            "move.l %a6, -(%sp)",
31394            "move.l {basereg}, %a6",
31395            ".short 0x4eae", // jsr -120(a6)
31396            ".short -120",
31397            "move.l (%sp)+, %a6",
31398            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31399            basereg = in(reg) GfxBase,
31400            in("a0") head,
31401            in("a1") tail,
31402            in("a2") gelsInfo,
31403        );
31404    }
31405}
31406
31407/// libname: "graphics.library"
31408pub unsafe fn InitMasks(GfxBase: *mut Library, vSprite: *mut VSprite) {
31409    unsafe {
31410        asm!(
31411            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31412            ".short 0xc0c0",
31413            "move.l %a6, -(%sp)",
31414            "move.l {basereg}, %a6",
31415            ".short 0x4eae", // jsr -126(a6)
31416            ".short -126",
31417            "move.l (%sp)+, %a6",
31418            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31419            basereg = in(reg) GfxBase,
31420            in("a0") vSprite,
31421        );
31422    }
31423}
31424
31425/// libname: "graphics.library"
31426pub unsafe fn RemIBob(GfxBase: *mut Library, bob: *mut Bob, rp: *mut RastPort, vp: *mut ViewPort) {
31427    unsafe {
31428        asm!(
31429            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31430            ".short 0xc0c0",
31431            "move.l %a6, -(%sp)",
31432            "move.l {basereg}, %a6",
31433            ".short 0x4eae", // jsr -132(a6)
31434            ".short -132",
31435            "move.l (%sp)+, %a6",
31436            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31437            basereg = in(reg) GfxBase,
31438            in("a0") bob,
31439            in("a1") rp,
31440            in("a2") vp,
31441        );
31442    }
31443}
31444
31445/// libname: "graphics.library"
31446pub unsafe fn RemVSprite(GfxBase: *mut Library, vSprite: *mut VSprite) {
31447    unsafe {
31448        asm!(
31449            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31450            ".short 0xc0c0",
31451            "move.l %a6, -(%sp)",
31452            "move.l {basereg}, %a6",
31453            ".short 0x4eae", // jsr -138(a6)
31454            ".short -138",
31455            "move.l (%sp)+, %a6",
31456            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31457            basereg = in(reg) GfxBase,
31458            in("a0") vSprite,
31459        );
31460    }
31461}
31462
31463/// libname: "graphics.library"
31464pub unsafe fn SetCollision(
31465    GfxBase: *mut Library,
31466    num: ULONG,
31467    routine: FPTR,
31468    gelsInfo: *mut GelsInfo,
31469) {
31470    unsafe {
31471        asm!(
31472            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31473            ".short 0xc0c0",
31474            "move.l %a6, -(%sp)",
31475            "move.l {basereg}, %a6",
31476            ".short 0x4eae", // jsr -144(a6)
31477            ".short -144",
31478            "move.l (%sp)+, %a6",
31479            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31480            basereg = in(reg) GfxBase,
31481            in("d0") num,
31482            in("a0") routine,
31483            in("a1") gelsInfo,
31484        );
31485    }
31486}
31487
31488/// libname: "graphics.library"
31489pub unsafe fn SortGList(GfxBase: *mut Library, rp: *mut RastPort) {
31490    unsafe {
31491        asm!(
31492            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31493            ".short 0xc0c0",
31494            "move.l %a6, -(%sp)",
31495            "move.l {basereg}, %a6",
31496            ".short 0x4eae", // jsr -150(a6)
31497            ".short -150",
31498            "move.l (%sp)+, %a6",
31499            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31500            basereg = in(reg) GfxBase,
31501            in("a1") rp,
31502        );
31503    }
31504}
31505
31506/// libname: "graphics.library"
31507pub unsafe fn AddAnimOb(
31508    GfxBase: *mut Library,
31509    anOb: *mut AnimOb,
31510    anKey: *mut *mut AnimOb,
31511    rp: *mut RastPort,
31512) {
31513    unsafe {
31514        asm!(
31515            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31516            ".short 0xc0c0",
31517            "move.l %a6, -(%sp)",
31518            "move.l {basereg}, %a6",
31519            ".short 0x4eae", // jsr -156(a6)
31520            ".short -156",
31521            "move.l (%sp)+, %a6",
31522            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31523            basereg = in(reg) GfxBase,
31524            in("a0") anOb,
31525            in("a1") anKey,
31526            in("a2") rp,
31527        );
31528    }
31529}
31530
31531/// libname: "graphics.library"
31532pub unsafe fn Animate(GfxBase: *mut Library, anKey: *mut *mut AnimOb, rp: *mut RastPort) {
31533    unsafe {
31534        asm!(
31535            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31536            ".short 0xc0c0",
31537            "move.l %a6, -(%sp)",
31538            "move.l {basereg}, %a6",
31539            ".short 0x4eae", // jsr -162(a6)
31540            ".short -162",
31541            "move.l (%sp)+, %a6",
31542            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31543            basereg = in(reg) GfxBase,
31544            in("a0") anKey,
31545            in("a1") rp,
31546        );
31547    }
31548}
31549
31550/// libname: "graphics.library"
31551pub unsafe fn GetGBuffers(
31552    GfxBase: *mut Library,
31553    anOb: *mut AnimOb,
31554    rp: *mut RastPort,
31555    flag: LONG,
31556) -> BOOL {
31557    let asm_ret_value: BOOL;
31558    unsafe {
31559        asm!(
31560            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31561            ".short 0x40c0",
31562            "move.l %a6, -(%sp)",
31563            "move.l {basereg}, %a6",
31564            ".short 0x4eae", // jsr -168(a6)
31565            ".short -168",
31566            "move.l (%sp)+, %a6",
31567            "movem.l (%sp)+, %d1/%a0-%a1",
31568            basereg = in(reg) GfxBase,
31569            in("a0") anOb,
31570            in("a1") rp,
31571            in("d0") flag,
31572            lateout("d0") asm_ret_value,
31573        );
31574    }
31575    asm_ret_value
31576}
31577
31578/// libname: "graphics.library"
31579pub unsafe fn InitGMasks(GfxBase: *mut Library, anOb: *mut AnimOb) {
31580    unsafe {
31581        asm!(
31582            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31583            ".short 0xc0c0",
31584            "move.l %a6, -(%sp)",
31585            "move.l {basereg}, %a6",
31586            ".short 0x4eae", // jsr -174(a6)
31587            ".short -174",
31588            "move.l (%sp)+, %a6",
31589            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31590            basereg = in(reg) GfxBase,
31591            in("a0") anOb,
31592        );
31593    }
31594}
31595
31596/// libname: "graphics.library"
31597pub unsafe fn DrawEllipse(
31598    GfxBase: *mut Library,
31599    rp: *mut RastPort,
31600    xCenter: LONG,
31601    yCenter: LONG,
31602    a: LONG,
31603    b: LONG,
31604) {
31605    unsafe {
31606        asm!(
31607            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31608            ".short 0xc0c0",
31609            "move.l %a6, -(%sp)",
31610            "move.l {basereg}, %a6",
31611            ".short 0x4eae", // jsr -180(a6)
31612            ".short -180",
31613            "move.l (%sp)+, %a6",
31614            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31615            basereg = in(reg) GfxBase,
31616            in("a1") rp,
31617            in("d0") xCenter,
31618            in("d1") yCenter,
31619            in("d2") a,
31620            in("d3") b,
31621        );
31622    }
31623}
31624
31625/// libname: "graphics.library"
31626pub unsafe fn AreaEllipse(
31627    GfxBase: *mut Library,
31628    rp: *mut RastPort,
31629    xCenter: LONG,
31630    yCenter: LONG,
31631    a: LONG,
31632    b: LONG,
31633) -> LONG {
31634    let asm_ret_value: LONG;
31635    unsafe {
31636        asm!(
31637            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31638            ".short 0x40c0",
31639            "move.l %a6, -(%sp)",
31640            "move.l {basereg}, %a6",
31641            ".short 0x4eae", // jsr -186(a6)
31642            ".short -186",
31643            "move.l (%sp)+, %a6",
31644            "movem.l (%sp)+, %d1/%a0-%a1",
31645            basereg = in(reg) GfxBase,
31646            in("a1") rp,
31647            in("d0") xCenter,
31648            in("d1") yCenter,
31649            in("d2") a,
31650            in("d3") b,
31651            lateout("d0") asm_ret_value,
31652        );
31653    }
31654    asm_ret_value
31655}
31656
31657/// libname: "graphics.library"
31658pub unsafe fn LoadRGB4(
31659    GfxBase: *mut Library,
31660    vp: *mut ViewPort,
31661    colors: *const UWORD,
31662    count: LONG,
31663) {
31664    unsafe {
31665        asm!(
31666            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31667            ".short 0xc0c0",
31668            "move.l %a6, -(%sp)",
31669            "move.l {basereg}, %a6",
31670            ".short 0x4eae", // jsr -192(a6)
31671            ".short -192",
31672            "move.l (%sp)+, %a6",
31673            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31674            basereg = in(reg) GfxBase,
31675            in("a0") vp,
31676            in("a1") colors,
31677            in("d0") count,
31678        );
31679    }
31680}
31681
31682/// libname: "graphics.library"
31683pub unsafe fn InitRastPort(GfxBase: *mut Library, rp: *mut RastPort) {
31684    unsafe {
31685        asm!(
31686            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31687            ".short 0xc0c0",
31688            "move.l %a6, -(%sp)",
31689            "move.l {basereg}, %a6",
31690            ".short 0x4eae", // jsr -198(a6)
31691            ".short -198",
31692            "move.l (%sp)+, %a6",
31693            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31694            basereg = in(reg) GfxBase,
31695            in("a1") rp,
31696        );
31697    }
31698}
31699
31700/// libname: "graphics.library"
31701pub unsafe fn InitVPort(GfxBase: *mut Library, vp: *mut ViewPort) {
31702    unsafe {
31703        asm!(
31704            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31705            ".short 0xc0c0",
31706            "move.l %a6, -(%sp)",
31707            "move.l {basereg}, %a6",
31708            ".short 0x4eae", // jsr -204(a6)
31709            ".short -204",
31710            "move.l (%sp)+, %a6",
31711            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31712            basereg = in(reg) GfxBase,
31713            in("a0") vp,
31714        );
31715    }
31716}
31717
31718/// libname: "graphics.library"
31719pub unsafe fn MrgCop(GfxBase: *mut Library, view: *mut View) -> ULONG {
31720    let asm_ret_value: ULONG;
31721    unsafe {
31722        asm!(
31723            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31724            ".short 0x40c0",
31725            "move.l %a6, -(%sp)",
31726            "move.l {basereg}, %a6",
31727            ".short 0x4eae", // jsr -210(a6)
31728            ".short -210",
31729            "move.l (%sp)+, %a6",
31730            "movem.l (%sp)+, %d1/%a0-%a1",
31731            basereg = in(reg) GfxBase,
31732            in("a1") view,
31733            out("d0") asm_ret_value,
31734        );
31735    }
31736    asm_ret_value
31737}
31738
31739/// libname: "graphics.library"
31740pub unsafe fn MakeVPort(GfxBase: *mut Library, view: *mut View, vp: *mut ViewPort) -> ULONG {
31741    let asm_ret_value: ULONG;
31742    unsafe {
31743        asm!(
31744            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31745            ".short 0x40c0",
31746            "move.l %a6, -(%sp)",
31747            "move.l {basereg}, %a6",
31748            ".short 0x4eae", // jsr -216(a6)
31749            ".short -216",
31750            "move.l (%sp)+, %a6",
31751            "movem.l (%sp)+, %d1/%a0-%a1",
31752            basereg = in(reg) GfxBase,
31753            in("a0") view,
31754            in("a1") vp,
31755            out("d0") asm_ret_value,
31756        );
31757    }
31758    asm_ret_value
31759}
31760
31761/// libname: "graphics.library"
31762pub unsafe fn LoadView(GfxBase: *mut Library, view: *mut View) {
31763    unsafe {
31764        asm!(
31765            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31766            ".short 0xc0c0",
31767            "move.l %a6, -(%sp)",
31768            "move.l {basereg}, %a6",
31769            ".short 0x4eae", // jsr -222(a6)
31770            ".short -222",
31771            "move.l (%sp)+, %a6",
31772            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31773            basereg = in(reg) GfxBase,
31774            in("a1") view,
31775        );
31776    }
31777}
31778
31779/// libname: "graphics.library"
31780pub unsafe fn WaitBlit(GfxBase: *mut Library) {
31781    unsafe {
31782        asm!(
31783            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31784            ".short 0xc0c0",
31785            "move.l %a6, -(%sp)",
31786            "move.l {basereg}, %a6",
31787            ".short 0x4eae", // jsr -228(a6)
31788            ".short -228",
31789            "move.l (%sp)+, %a6",
31790            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31791            basereg = in(reg) GfxBase,
31792        );
31793    }
31794}
31795
31796/// libname: "graphics.library"
31797pub unsafe fn SetRast(GfxBase: *mut Library, rp: *mut RastPort, pen: ULONG) {
31798    unsafe {
31799        asm!(
31800            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31801            ".short 0xc0c0",
31802            "move.l %a6, -(%sp)",
31803            "move.l {basereg}, %a6",
31804            ".short 0x4eae", // jsr -234(a6)
31805            ".short -234",
31806            "move.l (%sp)+, %a6",
31807            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31808            basereg = in(reg) GfxBase,
31809            in("a1") rp,
31810            in("d0") pen,
31811        );
31812    }
31813}
31814
31815/// libname: "graphics.library"
31816pub unsafe fn Move(GfxBase: *mut Library, rp: *mut RastPort, x: LONG, y: LONG) {
31817    unsafe {
31818        asm!(
31819            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31820            ".short 0xc0c0",
31821            "move.l %a6, -(%sp)",
31822            "move.l {basereg}, %a6",
31823            ".short 0x4eae", // jsr -240(a6)
31824            ".short -240",
31825            "move.l (%sp)+, %a6",
31826            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31827            basereg = in(reg) GfxBase,
31828            in("a1") rp,
31829            in("d0") x,
31830            in("d1") y,
31831        );
31832    }
31833}
31834
31835/// libname: "graphics.library"
31836pub unsafe fn Draw(GfxBase: *mut Library, rp: *mut RastPort, x: LONG, y: LONG) {
31837    unsafe {
31838        asm!(
31839            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31840            ".short 0xc0c0",
31841            "move.l %a6, -(%sp)",
31842            "move.l {basereg}, %a6",
31843            ".short 0x4eae", // jsr -246(a6)
31844            ".short -246",
31845            "move.l (%sp)+, %a6",
31846            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31847            basereg = in(reg) GfxBase,
31848            in("a1") rp,
31849            in("d0") x,
31850            in("d1") y,
31851        );
31852    }
31853}
31854
31855/// libname: "graphics.library"
31856pub unsafe fn AreaMove(GfxBase: *mut Library, rp: *mut RastPort, x: LONG, y: LONG) -> LONG {
31857    let asm_ret_value: LONG;
31858    unsafe {
31859        asm!(
31860            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31861            ".short 0x40c0",
31862            "move.l %a6, -(%sp)",
31863            "move.l {basereg}, %a6",
31864            ".short 0x4eae", // jsr -252(a6)
31865            ".short -252",
31866            "move.l (%sp)+, %a6",
31867            "movem.l (%sp)+, %d1/%a0-%a1",
31868            basereg = in(reg) GfxBase,
31869            in("a1") rp,
31870            in("d0") x,
31871            in("d1") y,
31872            lateout("d0") asm_ret_value,
31873        );
31874    }
31875    asm_ret_value
31876}
31877
31878/// libname: "graphics.library"
31879pub unsafe fn AreaDraw(GfxBase: *mut Library, rp: *mut RastPort, x: LONG, y: LONG) -> LONG {
31880    let asm_ret_value: LONG;
31881    unsafe {
31882        asm!(
31883            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31884            ".short 0x40c0",
31885            "move.l %a6, -(%sp)",
31886            "move.l {basereg}, %a6",
31887            ".short 0x4eae", // jsr -258(a6)
31888            ".short -258",
31889            "move.l (%sp)+, %a6",
31890            "movem.l (%sp)+, %d1/%a0-%a1",
31891            basereg = in(reg) GfxBase,
31892            in("a1") rp,
31893            in("d0") x,
31894            in("d1") y,
31895            lateout("d0") asm_ret_value,
31896        );
31897    }
31898    asm_ret_value
31899}
31900
31901/// libname: "graphics.library"
31902pub unsafe fn AreaEnd(GfxBase: *mut Library, rp: *mut RastPort) -> LONG {
31903    let asm_ret_value: LONG;
31904    unsafe {
31905        asm!(
31906            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
31907            ".short 0x40c0",
31908            "move.l %a6, -(%sp)",
31909            "move.l {basereg}, %a6",
31910            ".short 0x4eae", // jsr -264(a6)
31911            ".short -264",
31912            "move.l (%sp)+, %a6",
31913            "movem.l (%sp)+, %d1/%a0-%a1",
31914            basereg = in(reg) GfxBase,
31915            in("a1") rp,
31916            out("d0") asm_ret_value,
31917        );
31918    }
31919    asm_ret_value
31920}
31921
31922/// libname: "graphics.library"
31923pub unsafe fn WaitTOF(GfxBase: *mut Library) {
31924    unsafe {
31925        asm!(
31926            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31927            ".short 0xc0c0",
31928            "move.l %a6, -(%sp)",
31929            "move.l {basereg}, %a6",
31930            ".short 0x4eae", // jsr -270(a6)
31931            ".short -270",
31932            "move.l (%sp)+, %a6",
31933            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31934            basereg = in(reg) GfxBase,
31935        );
31936    }
31937}
31938
31939/// libname: "graphics.library"
31940pub unsafe fn QBlit(GfxBase: *mut Library, blit: *mut bltnode) {
31941    unsafe {
31942        asm!(
31943            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31944            ".short 0xc0c0",
31945            "move.l %a6, -(%sp)",
31946            "move.l {basereg}, %a6",
31947            ".short 0x4eae", // jsr -276(a6)
31948            ".short -276",
31949            "move.l (%sp)+, %a6",
31950            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31951            basereg = in(reg) GfxBase,
31952            in("a1") blit,
31953        );
31954    }
31955}
31956
31957/// libname: "graphics.library"
31958pub unsafe fn InitArea(
31959    GfxBase: *mut Library,
31960    areaInfo: *mut AreaInfo,
31961    vectorBuffer: APTR,
31962    maxVectors: LONG,
31963) {
31964    unsafe {
31965        asm!(
31966            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31967            ".short 0xc0c0",
31968            "move.l %a6, -(%sp)",
31969            "move.l {basereg}, %a6",
31970            ".short 0x4eae", // jsr -282(a6)
31971            ".short -282",
31972            "move.l (%sp)+, %a6",
31973            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
31974            basereg = in(reg) GfxBase,
31975            in("a0") areaInfo,
31976            in("a1") vectorBuffer,
31977            in("d0") maxVectors,
31978        );
31979    }
31980}
31981
31982/// libname: "graphics.library"
31983pub unsafe fn SetRGB4(
31984    GfxBase: *mut Library,
31985    vp: *mut ViewPort,
31986    index: LONG,
31987    red: ULONG,
31988    green: ULONG,
31989    blue: ULONG,
31990) {
31991    unsafe {
31992        asm!(
31993            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
31994            ".short 0xc0c0",
31995            "move.l %a6, -(%sp)",
31996            "move.l {basereg}, %a6",
31997            ".short 0x4eae", // jsr -288(a6)
31998            ".short -288",
31999            "move.l (%sp)+, %a6",
32000            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32001            basereg = in(reg) GfxBase,
32002            in("a0") vp,
32003            in("d0") index,
32004            in("d1") red,
32005            in("d2") green,
32006            in("d3") blue,
32007        );
32008    }
32009}
32010
32011/// libname: "graphics.library"
32012pub unsafe fn QBSBlit(GfxBase: *mut Library, blit: *mut bltnode) {
32013    unsafe {
32014        asm!(
32015            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32016            ".short 0xc0c0",
32017            "move.l %a6, -(%sp)",
32018            "move.l {basereg}, %a6",
32019            ".short 0x4eae", // jsr -294(a6)
32020            ".short -294",
32021            "move.l (%sp)+, %a6",
32022            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32023            basereg = in(reg) GfxBase,
32024            in("a1") blit,
32025        );
32026    }
32027}
32028
32029/// libname: "graphics.library"
32030pub unsafe fn BltClear(GfxBase: *mut Library, memBlock: PLANEPTR, byteCount: ULONG, flags: ULONG) {
32031    unsafe {
32032        asm!(
32033            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32034            ".short 0xc0c0",
32035            "move.l %a6, -(%sp)",
32036            "move.l {basereg}, %a6",
32037            ".short 0x4eae", // jsr -300(a6)
32038            ".short -300",
32039            "move.l (%sp)+, %a6",
32040            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32041            basereg = in(reg) GfxBase,
32042            in("a1") memBlock,
32043            in("d0") byteCount,
32044            in("d1") flags,
32045        );
32046    }
32047}
32048
32049/// libname: "graphics.library"
32050pub unsafe fn RectFill(
32051    GfxBase: *mut Library,
32052    rp: *mut RastPort,
32053    xMin: LONG,
32054    yMin: LONG,
32055    xMax: LONG,
32056    yMax: LONG,
32057) {
32058    unsafe {
32059        asm!(
32060            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32061            ".short 0xc0c0",
32062            "move.l %a6, -(%sp)",
32063            "move.l {basereg}, %a6",
32064            ".short 0x4eae", // jsr -306(a6)
32065            ".short -306",
32066            "move.l (%sp)+, %a6",
32067            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32068            basereg = in(reg) GfxBase,
32069            in("a1") rp,
32070            in("d0") xMin,
32071            in("d1") yMin,
32072            in("d2") xMax,
32073            in("d3") yMax,
32074        );
32075    }
32076}
32077
32078/// libname: "graphics.library"
32079pub unsafe fn BltPattern(
32080    GfxBase: *mut Library,
32081    rp: *mut RastPort,
32082    mask: PLANEPTR,
32083    xMin: LONG,
32084    yMin: LONG,
32085    xMax: LONG,
32086    yMax: LONG,
32087    maskBPR: ULONG,
32088) {
32089    unsafe {
32090        asm!(
32091            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32092            ".short 0xc0c0",
32093            "move.l %a6, -(%sp)",
32094            "move.l {basereg}, %a6",
32095            ".short 0x4eae", // jsr -312(a6)
32096            ".short -312",
32097            "move.l (%sp)+, %a6",
32098            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32099            basereg = in(reg) GfxBase,
32100            in("a1") rp,
32101            in("a0") mask,
32102            in("d0") xMin,
32103            in("d1") yMin,
32104            in("d2") xMax,
32105            in("d3") yMax,
32106            in("d4") maskBPR,
32107        );
32108    }
32109}
32110
32111/// libname: "graphics.library"
32112pub unsafe fn ReadPixel(GfxBase: *mut Library, rp: *mut RastPort, x: LONG, y: LONG) -> ULONG {
32113    let asm_ret_value: ULONG;
32114    unsafe {
32115        asm!(
32116            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32117            ".short 0x40c0",
32118            "move.l %a6, -(%sp)",
32119            "move.l {basereg}, %a6",
32120            ".short 0x4eae", // jsr -318(a6)
32121            ".short -318",
32122            "move.l (%sp)+, %a6",
32123            "movem.l (%sp)+, %d1/%a0-%a1",
32124            basereg = in(reg) GfxBase,
32125            in("a1") rp,
32126            in("d0") x,
32127            in("d1") y,
32128            lateout("d0") asm_ret_value,
32129        );
32130    }
32131    asm_ret_value
32132}
32133
32134/// libname: "graphics.library"
32135pub unsafe fn WritePixel(GfxBase: *mut Library, rp: *mut RastPort, x: LONG, y: LONG) -> LONG {
32136    let asm_ret_value: LONG;
32137    unsafe {
32138        asm!(
32139            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32140            ".short 0x40c0",
32141            "move.l %a6, -(%sp)",
32142            "move.l {basereg}, %a6",
32143            ".short 0x4eae", // jsr -324(a6)
32144            ".short -324",
32145            "move.l (%sp)+, %a6",
32146            "movem.l (%sp)+, %d1/%a0-%a1",
32147            basereg = in(reg) GfxBase,
32148            in("a1") rp,
32149            in("d0") x,
32150            in("d1") y,
32151            lateout("d0") asm_ret_value,
32152        );
32153    }
32154    asm_ret_value
32155}
32156
32157/// libname: "graphics.library"
32158pub unsafe fn Flood(
32159    GfxBase: *mut Library,
32160    rp: *mut RastPort,
32161    mode: ULONG,
32162    x: LONG,
32163    y: LONG,
32164) -> BOOL {
32165    let asm_ret_value: BOOL;
32166    unsafe {
32167        asm!(
32168            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32169            ".short 0x40c0",
32170            "move.l %a6, -(%sp)",
32171            "move.l {basereg}, %a6",
32172            ".short 0x4eae", // jsr -330(a6)
32173            ".short -330",
32174            "move.l (%sp)+, %a6",
32175            "movem.l (%sp)+, %d1/%a0-%a1",
32176            basereg = in(reg) GfxBase,
32177            in("a1") rp,
32178            in("d2") mode,
32179            in("d0") x,
32180            in("d1") y,
32181            lateout("d0") asm_ret_value,
32182        );
32183    }
32184    asm_ret_value
32185}
32186
32187/// libname: "graphics.library"
32188pub unsafe fn PolyDraw(
32189    GfxBase: *mut Library,
32190    rp: *mut RastPort,
32191    count: LONG,
32192    polyTable: *const WORD,
32193) {
32194    unsafe {
32195        asm!(
32196            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32197            ".short 0xc0c0",
32198            "move.l %a6, -(%sp)",
32199            "move.l {basereg}, %a6",
32200            ".short 0x4eae", // jsr -336(a6)
32201            ".short -336",
32202            "move.l (%sp)+, %a6",
32203            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32204            basereg = in(reg) GfxBase,
32205            in("a1") rp,
32206            in("d0") count,
32207            in("a0") polyTable,
32208        );
32209    }
32210}
32211
32212/// libname: "graphics.library"
32213pub unsafe fn SetAPen(GfxBase: *mut Library, rp: *mut RastPort, pen: ULONG) {
32214    unsafe {
32215        asm!(
32216            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32217            ".short 0xc0c0",
32218            "move.l %a6, -(%sp)",
32219            "move.l {basereg}, %a6",
32220            ".short 0x4eae", // jsr -342(a6)
32221            ".short -342",
32222            "move.l (%sp)+, %a6",
32223            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32224            basereg = in(reg) GfxBase,
32225            in("a1") rp,
32226            in("d0") pen,
32227        );
32228    }
32229}
32230
32231/// libname: "graphics.library"
32232pub unsafe fn SetBPen(GfxBase: *mut Library, rp: *mut RastPort, pen: ULONG) {
32233    unsafe {
32234        asm!(
32235            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32236            ".short 0xc0c0",
32237            "move.l %a6, -(%sp)",
32238            "move.l {basereg}, %a6",
32239            ".short 0x4eae", // jsr -348(a6)
32240            ".short -348",
32241            "move.l (%sp)+, %a6",
32242            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32243            basereg = in(reg) GfxBase,
32244            in("a1") rp,
32245            in("d0") pen,
32246        );
32247    }
32248}
32249
32250/// libname: "graphics.library"
32251pub unsafe fn SetDrMd(GfxBase: *mut Library, rp: *mut RastPort, drawMode: ULONG) {
32252    unsafe {
32253        asm!(
32254            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32255            ".short 0xc0c0",
32256            "move.l %a6, -(%sp)",
32257            "move.l {basereg}, %a6",
32258            ".short 0x4eae", // jsr -354(a6)
32259            ".short -354",
32260            "move.l (%sp)+, %a6",
32261            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32262            basereg = in(reg) GfxBase,
32263            in("a1") rp,
32264            in("d0") drawMode,
32265        );
32266    }
32267}
32268
32269/// libname: "graphics.library"
32270pub unsafe fn InitView(GfxBase: *mut Library, view: *mut View) {
32271    unsafe {
32272        asm!(
32273            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32274            ".short 0xc0c0",
32275            "move.l %a6, -(%sp)",
32276            "move.l {basereg}, %a6",
32277            ".short 0x4eae", // jsr -360(a6)
32278            ".short -360",
32279            "move.l (%sp)+, %a6",
32280            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32281            basereg = in(reg) GfxBase,
32282            in("a1") view,
32283        );
32284    }
32285}
32286
32287/// libname: "graphics.library"
32288pub unsafe fn CBump(GfxBase: *mut Library, copList: *mut UCopList) {
32289    unsafe {
32290        asm!(
32291            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32292            ".short 0xc0c0",
32293            "move.l %a6, -(%sp)",
32294            "move.l {basereg}, %a6",
32295            ".short 0x4eae", // jsr -366(a6)
32296            ".short -366",
32297            "move.l (%sp)+, %a6",
32298            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32299            basereg = in(reg) GfxBase,
32300            in("a1") copList,
32301        );
32302    }
32303}
32304
32305/// libname: "graphics.library"
32306pub unsafe fn CMove(
32307    GfxBase: *mut Library,
32308    copList: *mut UCopList,
32309    destination: APTR,
32310    data: LONG,
32311) -> LONG {
32312    let asm_ret_value: LONG;
32313    unsafe {
32314        asm!(
32315            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32316            ".short 0x40c0",
32317            "move.l %a6, -(%sp)",
32318            "move.l {basereg}, %a6",
32319            ".short 0x4eae", // jsr -372(a6)
32320            ".short -372",
32321            "move.l (%sp)+, %a6",
32322            "movem.l (%sp)+, %d1/%a0-%a1",
32323            basereg = in(reg) GfxBase,
32324            in("a1") copList,
32325            in("d0") destination,
32326            in("d1") data,
32327            lateout("d0") asm_ret_value,
32328        );
32329    }
32330    asm_ret_value
32331}
32332
32333/// libname: "graphics.library"
32334pub unsafe fn CWait(GfxBase: *mut Library, copList: *mut UCopList, v: LONG, h: LONG) -> LONG {
32335    let asm_ret_value: LONG;
32336    unsafe {
32337        asm!(
32338            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32339            ".short 0x40c0",
32340            "move.l %a6, -(%sp)",
32341            "move.l {basereg}, %a6",
32342            ".short 0x4eae", // jsr -378(a6)
32343            ".short -378",
32344            "move.l (%sp)+, %a6",
32345            "movem.l (%sp)+, %d1/%a0-%a1",
32346            basereg = in(reg) GfxBase,
32347            in("a1") copList,
32348            in("d0") v,
32349            in("d1") h,
32350            lateout("d0") asm_ret_value,
32351        );
32352    }
32353    asm_ret_value
32354}
32355
32356/// libname: "graphics.library"
32357pub unsafe fn VBeamPos(GfxBase: *mut Library) -> LONG {
32358    let asm_ret_value: LONG;
32359    unsafe {
32360        asm!(
32361            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32362            ".short 0x40c0",
32363            "move.l %a6, -(%sp)",
32364            "move.l {basereg}, %a6",
32365            ".short 0x4eae", // jsr -384(a6)
32366            ".short -384",
32367            "move.l (%sp)+, %a6",
32368            "movem.l (%sp)+, %d1/%a0-%a1",
32369            basereg = in(reg) GfxBase,
32370            out("d0") asm_ret_value,
32371        );
32372    }
32373    asm_ret_value
32374}
32375
32376/// libname: "graphics.library"
32377pub unsafe fn InitBitMap(
32378    GfxBase: *mut Library,
32379    bitMap: *mut BitMap,
32380    depth: LONG,
32381    width: LONG,
32382    height: LONG,
32383) {
32384    unsafe {
32385        asm!(
32386            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32387            ".short 0xc0c0",
32388            "move.l %a6, -(%sp)",
32389            "move.l {basereg}, %a6",
32390            ".short 0x4eae", // jsr -390(a6)
32391            ".short -390",
32392            "move.l (%sp)+, %a6",
32393            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32394            basereg = in(reg) GfxBase,
32395            in("a0") bitMap,
32396            in("d0") depth,
32397            in("d1") width,
32398            in("d2") height,
32399        );
32400    }
32401}
32402
32403/// libname: "graphics.library"
32404pub unsafe fn ScrollRaster(
32405    GfxBase: *mut Library,
32406    rp: *mut RastPort,
32407    dx: LONG,
32408    dy: LONG,
32409    xMin: LONG,
32410    yMin: LONG,
32411    xMax: LONG,
32412    yMax: LONG,
32413) {
32414    unsafe {
32415        asm!(
32416            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32417            ".short 0xc0c0",
32418            "move.l %a6, -(%sp)",
32419            "move.l {basereg}, %a6",
32420            ".short 0x4eae", // jsr -396(a6)
32421            ".short -396",
32422            "move.l (%sp)+, %a6",
32423            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32424            basereg = in(reg) GfxBase,
32425            in("a1") rp,
32426            in("d0") dx,
32427            in("d1") dy,
32428            in("d2") xMin,
32429            in("d3") yMin,
32430            in("d4") xMax,
32431            in("d5") yMax,
32432        );
32433    }
32434}
32435
32436/// libname: "graphics.library"
32437pub unsafe fn WaitBOVP(GfxBase: *mut Library, vp: *mut ViewPort) {
32438    unsafe {
32439        asm!(
32440            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32441            ".short 0xc0c0",
32442            "move.l %a6, -(%sp)",
32443            "move.l {basereg}, %a6",
32444            ".short 0x4eae", // jsr -402(a6)
32445            ".short -402",
32446            "move.l (%sp)+, %a6",
32447            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32448            basereg = in(reg) GfxBase,
32449            in("a0") vp,
32450        );
32451    }
32452}
32453
32454/// libname: "graphics.library"
32455pub unsafe fn GetSprite(GfxBase: *mut Library, sprite: *mut SimpleSprite, num: LONG) -> WORD {
32456    let asm_ret_value: WORD;
32457    unsafe {
32458        asm!(
32459            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32460            ".short 0x40c0",
32461            "move.l %a6, -(%sp)",
32462            "move.l {basereg}, %a6",
32463            ".short 0x4eae", // jsr -408(a6)
32464            ".short -408",
32465            "move.l (%sp)+, %a6",
32466            "movem.l (%sp)+, %d1/%a0-%a1",
32467            basereg = in(reg) GfxBase,
32468            in("a0") sprite,
32469            in("d0") num,
32470            lateout("d0") asm_ret_value,
32471        );
32472    }
32473    asm_ret_value
32474}
32475
32476/// libname: "graphics.library"
32477pub unsafe fn FreeSprite(GfxBase: *mut Library, num: LONG) {
32478    unsafe {
32479        asm!(
32480            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32481            ".short 0xc0c0",
32482            "move.l %a6, -(%sp)",
32483            "move.l {basereg}, %a6",
32484            ".short 0x4eae", // jsr -414(a6)
32485            ".short -414",
32486            "move.l (%sp)+, %a6",
32487            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32488            basereg = in(reg) GfxBase,
32489            in("d0") num,
32490        );
32491    }
32492}
32493
32494/// libname: "graphics.library"
32495pub unsafe fn ChangeSprite(
32496    GfxBase: *mut Library,
32497    vp: *mut ViewPort,
32498    sprite: *mut SimpleSprite,
32499    newData: *mut UWORD,
32500) {
32501    unsafe {
32502        asm!(
32503            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32504            ".short 0xc0c0",
32505            "move.l %a6, -(%sp)",
32506            "move.l {basereg}, %a6",
32507            ".short 0x4eae", // jsr -420(a6)
32508            ".short -420",
32509            "move.l (%sp)+, %a6",
32510            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32511            basereg = in(reg) GfxBase,
32512            in("a0") vp,
32513            in("a1") sprite,
32514            in("a2") newData,
32515        );
32516    }
32517}
32518
32519/// libname: "graphics.library"
32520pub unsafe fn MoveSprite(
32521    GfxBase: *mut Library,
32522    vp: *mut ViewPort,
32523    sprite: *mut SimpleSprite,
32524    x: LONG,
32525    y: LONG,
32526) {
32527    unsafe {
32528        asm!(
32529            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32530            ".short 0xc0c0",
32531            "move.l %a6, -(%sp)",
32532            "move.l {basereg}, %a6",
32533            ".short 0x4eae", // jsr -426(a6)
32534            ".short -426",
32535            "move.l (%sp)+, %a6",
32536            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32537            basereg = in(reg) GfxBase,
32538            in("a0") vp,
32539            in("a1") sprite,
32540            in("d0") x,
32541            in("d1") y,
32542        );
32543    }
32544}
32545
32546/// libname: "graphics.library"
32547pub unsafe fn LockLayerRom(GfxBase: *mut Library, layer: *mut Layer) {
32548    unsafe {
32549        asm!(
32550            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32551            ".short 0xc0c0",
32552            "move.l %a6, -(%sp)",
32553            "move.l %a5, -(%sp)",
32554            "move.l {basereg}, %a6",
32555            "move.l {a5reg}, %a5",
32556            ".short 0x4eae", // jsr -432(a6)
32557            ".short -432",
32558            "move.l (%sp)+, %a5",
32559            "move.l (%sp)+, %a6",
32560            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32561            basereg = in(reg) GfxBase,
32562            a5reg = in(reg) layer,
32563        );
32564    }
32565}
32566
32567/// libname: "graphics.library"
32568pub unsafe fn UnlockLayerRom(GfxBase: *mut Library, layer: *mut Layer) {
32569    unsafe {
32570        asm!(
32571            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32572            ".short 0xc0c0",
32573            "move.l %a6, -(%sp)",
32574            "move.l %a5, -(%sp)",
32575            "move.l {basereg}, %a6",
32576            "move.l {a5reg}, %a5",
32577            ".short 0x4eae", // jsr -438(a6)
32578            ".short -438",
32579            "move.l (%sp)+, %a5",
32580            "move.l (%sp)+, %a6",
32581            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32582            basereg = in(reg) GfxBase,
32583            a5reg = in(reg) layer,
32584        );
32585    }
32586}
32587
32588/// libname: "graphics.library"
32589pub unsafe fn SyncSBitMap(GfxBase: *mut Library, layer: *mut Layer) {
32590    unsafe {
32591        asm!(
32592            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32593            ".short 0xc0c0",
32594            "move.l %a6, -(%sp)",
32595            "move.l {basereg}, %a6",
32596            ".short 0x4eae", // jsr -444(a6)
32597            ".short -444",
32598            "move.l (%sp)+, %a6",
32599            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32600            basereg = in(reg) GfxBase,
32601            in("a0") layer,
32602        );
32603    }
32604}
32605
32606/// libname: "graphics.library"
32607pub unsafe fn CopySBitMap(GfxBase: *mut Library, layer: *mut Layer) {
32608    unsafe {
32609        asm!(
32610            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32611            ".short 0xc0c0",
32612            "move.l %a6, -(%sp)",
32613            "move.l {basereg}, %a6",
32614            ".short 0x4eae", // jsr -450(a6)
32615            ".short -450",
32616            "move.l (%sp)+, %a6",
32617            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32618            basereg = in(reg) GfxBase,
32619            in("a0") layer,
32620        );
32621    }
32622}
32623
32624/// libname: "graphics.library"
32625pub unsafe fn OwnBlitter(GfxBase: *mut Library) {
32626    unsafe {
32627        asm!(
32628            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32629            ".short 0xc0c0",
32630            "move.l %a6, -(%sp)",
32631            "move.l {basereg}, %a6",
32632            ".short 0x4eae", // jsr -456(a6)
32633            ".short -456",
32634            "move.l (%sp)+, %a6",
32635            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32636            basereg = in(reg) GfxBase,
32637        );
32638    }
32639}
32640
32641/// libname: "graphics.library"
32642pub unsafe fn DisownBlitter(GfxBase: *mut Library) {
32643    unsafe {
32644        asm!(
32645            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32646            ".short 0xc0c0",
32647            "move.l %a6, -(%sp)",
32648            "move.l {basereg}, %a6",
32649            ".short 0x4eae", // jsr -462(a6)
32650            ".short -462",
32651            "move.l (%sp)+, %a6",
32652            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32653            basereg = in(reg) GfxBase,
32654        );
32655    }
32656}
32657
32658/// libname: "graphics.library"
32659pub unsafe fn InitTmpRas(
32660    GfxBase: *mut Library,
32661    tmpRas: *mut TmpRas,
32662    buffer: PLANEPTR,
32663    size: LONG,
32664) -> *mut TmpRas {
32665    let asm_ret_value: *mut TmpRas;
32666    unsafe {
32667        asm!(
32668            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32669            ".short 0x40c0",
32670            "move.l %a6, -(%sp)",
32671            "move.l {basereg}, %a6",
32672            ".short 0x4eae", // jsr -468(a6)
32673            ".short -468",
32674            "move.l (%sp)+, %a6",
32675            "movem.l (%sp)+, %d1/%a0-%a1",
32676            basereg = in(reg) GfxBase,
32677            in("a0") tmpRas,
32678            in("a1") buffer,
32679            in("d0") size,
32680            lateout("d0") asm_ret_value,
32681        );
32682    }
32683    asm_ret_value
32684}
32685
32686/// libname: "graphics.library"
32687pub unsafe fn AskFont(GfxBase: *mut Library, rp: *mut RastPort, textAttr: *mut TextAttr) {
32688    unsafe {
32689        asm!(
32690            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32691            ".short 0xc0c0",
32692            "move.l %a6, -(%sp)",
32693            "move.l {basereg}, %a6",
32694            ".short 0x4eae", // jsr -474(a6)
32695            ".short -474",
32696            "move.l (%sp)+, %a6",
32697            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32698            basereg = in(reg) GfxBase,
32699            in("a1") rp,
32700            in("a0") textAttr,
32701        );
32702    }
32703}
32704
32705/// libname: "graphics.library"
32706pub unsafe fn AddFont(GfxBase: *mut Library, textFont: *mut TextFont) {
32707    unsafe {
32708        asm!(
32709            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32710            ".short 0xc0c0",
32711            "move.l %a6, -(%sp)",
32712            "move.l {basereg}, %a6",
32713            ".short 0x4eae", // jsr -480(a6)
32714            ".short -480",
32715            "move.l (%sp)+, %a6",
32716            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32717            basereg = in(reg) GfxBase,
32718            in("a1") textFont,
32719        );
32720    }
32721}
32722
32723/// libname: "graphics.library"
32724pub unsafe fn RemFont(GfxBase: *mut Library, textFont: *mut TextFont) {
32725    unsafe {
32726        asm!(
32727            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32728            ".short 0xc0c0",
32729            "move.l %a6, -(%sp)",
32730            "move.l {basereg}, %a6",
32731            ".short 0x4eae", // jsr -486(a6)
32732            ".short -486",
32733            "move.l (%sp)+, %a6",
32734            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32735            basereg = in(reg) GfxBase,
32736            in("a1") textFont,
32737        );
32738    }
32739}
32740
32741/// libname: "graphics.library"
32742pub unsafe fn AllocRaster(GfxBase: *mut Library, width: ULONG, height: ULONG) -> PLANEPTR {
32743    let asm_ret_value: PLANEPTR;
32744    unsafe {
32745        asm!(
32746            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32747            ".short 0x40c0",
32748            "move.l %a6, -(%sp)",
32749            "move.l {basereg}, %a6",
32750            ".short 0x4eae", // jsr -492(a6)
32751            ".short -492",
32752            "move.l (%sp)+, %a6",
32753            "movem.l (%sp)+, %d1/%a0-%a1",
32754            basereg = in(reg) GfxBase,
32755            in("d0") width,
32756            in("d1") height,
32757            lateout("d0") asm_ret_value,
32758        );
32759    }
32760    asm_ret_value
32761}
32762
32763/// libname: "graphics.library"
32764pub unsafe fn FreeRaster(GfxBase: *mut Library, p: PLANEPTR, width: ULONG, height: ULONG) {
32765    unsafe {
32766        asm!(
32767            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32768            ".short 0xc0c0",
32769            "move.l %a6, -(%sp)",
32770            "move.l {basereg}, %a6",
32771            ".short 0x4eae", // jsr -498(a6)
32772            ".short -498",
32773            "move.l (%sp)+, %a6",
32774            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32775            basereg = in(reg) GfxBase,
32776            in("a0") p,
32777            in("d0") width,
32778            in("d1") height,
32779        );
32780    }
32781}
32782
32783/// libname: "graphics.library"
32784pub unsafe fn AndRectRegion(
32785    GfxBase: *mut Library,
32786    region: *mut Region,
32787    rectangle: *const Rectangle,
32788) {
32789    unsafe {
32790        asm!(
32791            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32792            ".short 0xc0c0",
32793            "move.l %a6, -(%sp)",
32794            "move.l {basereg}, %a6",
32795            ".short 0x4eae", // jsr -504(a6)
32796            ".short -504",
32797            "move.l (%sp)+, %a6",
32798            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32799            basereg = in(reg) GfxBase,
32800            in("a0") region,
32801            in("a1") rectangle,
32802        );
32803    }
32804}
32805
32806/// libname: "graphics.library"
32807pub unsafe fn OrRectRegion(
32808    GfxBase: *mut Library,
32809    region: *mut Region,
32810    rectangle: *const Rectangle,
32811) -> BOOL {
32812    let asm_ret_value: BOOL;
32813    unsafe {
32814        asm!(
32815            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32816            ".short 0x40c0",
32817            "move.l %a6, -(%sp)",
32818            "move.l {basereg}, %a6",
32819            ".short 0x4eae", // jsr -510(a6)
32820            ".short -510",
32821            "move.l (%sp)+, %a6",
32822            "movem.l (%sp)+, %d1/%a0-%a1",
32823            basereg = in(reg) GfxBase,
32824            in("a0") region,
32825            in("a1") rectangle,
32826            out("d0") asm_ret_value,
32827        );
32828    }
32829    asm_ret_value
32830}
32831
32832/// libname: "graphics.library"
32833pub unsafe fn NewRegion(GfxBase: *mut Library) -> *mut Region {
32834    let asm_ret_value: *mut Region;
32835    unsafe {
32836        asm!(
32837            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32838            ".short 0x40c0",
32839            "move.l %a6, -(%sp)",
32840            "move.l {basereg}, %a6",
32841            ".short 0x4eae", // jsr -516(a6)
32842            ".short -516",
32843            "move.l (%sp)+, %a6",
32844            "movem.l (%sp)+, %d1/%a0-%a1",
32845            basereg = in(reg) GfxBase,
32846            out("d0") asm_ret_value,
32847        );
32848    }
32849    asm_ret_value
32850}
32851
32852/// libname: "graphics.library"
32853pub unsafe fn ClearRectRegion(
32854    GfxBase: *mut Library,
32855    region: *mut Region,
32856    rectangle: *const Rectangle,
32857) -> BOOL {
32858    let asm_ret_value: BOOL;
32859    unsafe {
32860        asm!(
32861            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32862            ".short 0x40c0",
32863            "move.l %a6, -(%sp)",
32864            "move.l {basereg}, %a6",
32865            ".short 0x4eae", // jsr -522(a6)
32866            ".short -522",
32867            "move.l (%sp)+, %a6",
32868            "movem.l (%sp)+, %d1/%a0-%a1",
32869            basereg = in(reg) GfxBase,
32870            in("a0") region,
32871            in("a1") rectangle,
32872            out("d0") asm_ret_value,
32873        );
32874    }
32875    asm_ret_value
32876}
32877
32878/// libname: "graphics.library"
32879pub unsafe fn ClearRegion(GfxBase: *mut Library, region: *mut Region) {
32880    unsafe {
32881        asm!(
32882            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32883            ".short 0xc0c0",
32884            "move.l %a6, -(%sp)",
32885            "move.l {basereg}, %a6",
32886            ".short 0x4eae", // jsr -528(a6)
32887            ".short -528",
32888            "move.l (%sp)+, %a6",
32889            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32890            basereg = in(reg) GfxBase,
32891            in("a0") region,
32892        );
32893    }
32894}
32895
32896/// libname: "graphics.library"
32897pub unsafe fn DisposeRegion(GfxBase: *mut Library, region: *mut Region) {
32898    unsafe {
32899        asm!(
32900            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32901            ".short 0xc0c0",
32902            "move.l %a6, -(%sp)",
32903            "move.l {basereg}, %a6",
32904            ".short 0x4eae", // jsr -534(a6)
32905            ".short -534",
32906            "move.l (%sp)+, %a6",
32907            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32908            basereg = in(reg) GfxBase,
32909            in("a0") region,
32910        );
32911    }
32912}
32913
32914/// libname: "graphics.library"
32915pub unsafe fn FreeVPortCopLists(GfxBase: *mut Library, vp: *mut ViewPort) {
32916    unsafe {
32917        asm!(
32918            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32919            ".short 0xc0c0",
32920            "move.l %a6, -(%sp)",
32921            "move.l {basereg}, %a6",
32922            ".short 0x4eae", // jsr -540(a6)
32923            ".short -540",
32924            "move.l (%sp)+, %a6",
32925            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32926            basereg = in(reg) GfxBase,
32927            in("a0") vp,
32928        );
32929    }
32930}
32931
32932/// libname: "graphics.library"
32933pub unsafe fn FreeCopList(GfxBase: *mut Library, copList: *mut CopList) {
32934    unsafe {
32935        asm!(
32936            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32937            ".short 0xc0c0",
32938            "move.l %a6, -(%sp)",
32939            "move.l {basereg}, %a6",
32940            ".short 0x4eae", // jsr -546(a6)
32941            ".short -546",
32942            "move.l (%sp)+, %a6",
32943            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32944            basereg = in(reg) GfxBase,
32945            in("a0") copList,
32946        );
32947    }
32948}
32949
32950/// libname: "graphics.library"
32951pub unsafe fn ClipBlit(
32952    GfxBase: *mut Library,
32953    srcRP: *mut RastPort,
32954    xSrc: LONG,
32955    ySrc: LONG,
32956    destRP: *mut RastPort,
32957    xDest: LONG,
32958    yDest: LONG,
32959    xSize: LONG,
32960    ySize: LONG,
32961    minterm: ULONG,
32962) {
32963    unsafe {
32964        asm!(
32965            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
32966            ".short 0xc0c0",
32967            "move.l %a6, -(%sp)",
32968            "move.l {basereg}, %a6",
32969            ".short 0x4eae", // jsr -552(a6)
32970            ".short -552",
32971            "move.l (%sp)+, %a6",
32972            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
32973            basereg = in(reg) GfxBase,
32974            in("a0") srcRP,
32975            in("d0") xSrc,
32976            in("d1") ySrc,
32977            in("a1") destRP,
32978            in("d2") xDest,
32979            in("d3") yDest,
32980            in("d4") xSize,
32981            in("d5") ySize,
32982            in("d6") minterm,
32983        );
32984    }
32985}
32986
32987/// libname: "graphics.library"
32988pub unsafe fn XorRectRegion(
32989    GfxBase: *mut Library,
32990    region: *mut Region,
32991    rectangle: *const Rectangle,
32992) -> BOOL {
32993    let asm_ret_value: BOOL;
32994    unsafe {
32995        asm!(
32996            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
32997            ".short 0x40c0",
32998            "move.l %a6, -(%sp)",
32999            "move.l {basereg}, %a6",
33000            ".short 0x4eae", // jsr -558(a6)
33001            ".short -558",
33002            "move.l (%sp)+, %a6",
33003            "movem.l (%sp)+, %d1/%a0-%a1",
33004            basereg = in(reg) GfxBase,
33005            in("a0") region,
33006            in("a1") rectangle,
33007            out("d0") asm_ret_value,
33008        );
33009    }
33010    asm_ret_value
33011}
33012
33013/// libname: "graphics.library"
33014pub unsafe fn FreeCprList(GfxBase: *mut Library, cprList: *mut cprlist) {
33015    unsafe {
33016        asm!(
33017            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33018            ".short 0xc0c0",
33019            "move.l %a6, -(%sp)",
33020            "move.l {basereg}, %a6",
33021            ".short 0x4eae", // jsr -564(a6)
33022            ".short -564",
33023            "move.l (%sp)+, %a6",
33024            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33025            basereg = in(reg) GfxBase,
33026            in("a0") cprList,
33027        );
33028    }
33029}
33030
33031/// libname: "graphics.library"
33032pub unsafe fn GetColorMap(GfxBase: *mut Library, entries: LONG) -> *mut ColorMap {
33033    let asm_ret_value: *mut ColorMap;
33034    unsafe {
33035        asm!(
33036            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33037            ".short 0x40c0",
33038            "move.l %a6, -(%sp)",
33039            "move.l {basereg}, %a6",
33040            ".short 0x4eae", // jsr -570(a6)
33041            ".short -570",
33042            "move.l (%sp)+, %a6",
33043            "movem.l (%sp)+, %d1/%a0-%a1",
33044            basereg = in(reg) GfxBase,
33045            in("d0") entries,
33046            lateout("d0") asm_ret_value,
33047        );
33048    }
33049    asm_ret_value
33050}
33051
33052/// libname: "graphics.library"
33053pub unsafe fn FreeColorMap(GfxBase: *mut Library, colorMap: *mut ColorMap) {
33054    unsafe {
33055        asm!(
33056            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33057            ".short 0xc0c0",
33058            "move.l %a6, -(%sp)",
33059            "move.l {basereg}, %a6",
33060            ".short 0x4eae", // jsr -576(a6)
33061            ".short -576",
33062            "move.l (%sp)+, %a6",
33063            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33064            basereg = in(reg) GfxBase,
33065            in("a0") colorMap,
33066        );
33067    }
33068}
33069
33070/// libname: "graphics.library"
33071pub unsafe fn GetRGB4(GfxBase: *mut Library, colorMap: *mut ColorMap, entry: LONG) -> ULONG {
33072    let asm_ret_value: ULONG;
33073    unsafe {
33074        asm!(
33075            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33076            ".short 0x40c0",
33077            "move.l %a6, -(%sp)",
33078            "move.l {basereg}, %a6",
33079            ".short 0x4eae", // jsr -582(a6)
33080            ".short -582",
33081            "move.l (%sp)+, %a6",
33082            "movem.l (%sp)+, %d1/%a0-%a1",
33083            basereg = in(reg) GfxBase,
33084            in("a0") colorMap,
33085            in("d0") entry,
33086            lateout("d0") asm_ret_value,
33087        );
33088    }
33089    asm_ret_value
33090}
33091
33092/// libname: "graphics.library"
33093pub unsafe fn ScrollVPort(GfxBase: *mut Library, vp: *mut ViewPort) {
33094    unsafe {
33095        asm!(
33096            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33097            ".short 0xc0c0",
33098            "move.l %a6, -(%sp)",
33099            "move.l {basereg}, %a6",
33100            ".short 0x4eae", // jsr -588(a6)
33101            ".short -588",
33102            "move.l (%sp)+, %a6",
33103            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33104            basereg = in(reg) GfxBase,
33105            in("a0") vp,
33106        );
33107    }
33108}
33109
33110/// libname: "graphics.library"
33111pub unsafe fn UCopperListInit(
33112    GfxBase: *mut Library,
33113    uCopList: *mut UCopList,
33114    n: LONG,
33115) -> *mut CopList {
33116    let asm_ret_value: *mut CopList;
33117    unsafe {
33118        asm!(
33119            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33120            ".short 0x40c0",
33121            "move.l %a6, -(%sp)",
33122            "move.l {basereg}, %a6",
33123            ".short 0x4eae", // jsr -594(a6)
33124            ".short -594",
33125            "move.l (%sp)+, %a6",
33126            "movem.l (%sp)+, %d1/%a0-%a1",
33127            basereg = in(reg) GfxBase,
33128            in("a0") uCopList,
33129            in("d0") n,
33130            lateout("d0") asm_ret_value,
33131        );
33132    }
33133    asm_ret_value
33134}
33135
33136/// libname: "graphics.library"
33137pub unsafe fn FreeGBuffers(
33138    GfxBase: *mut Library,
33139    anOb: *mut AnimOb,
33140    rp: *mut RastPort,
33141    flag: LONG,
33142) {
33143    unsafe {
33144        asm!(
33145            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33146            ".short 0xc0c0",
33147            "move.l %a6, -(%sp)",
33148            "move.l {basereg}, %a6",
33149            ".short 0x4eae", // jsr -600(a6)
33150            ".short -600",
33151            "move.l (%sp)+, %a6",
33152            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33153            basereg = in(reg) GfxBase,
33154            in("a0") anOb,
33155            in("a1") rp,
33156            in("d0") flag,
33157        );
33158    }
33159}
33160
33161/// libname: "graphics.library"
33162pub unsafe fn BltBitMapRastPort(
33163    GfxBase: *mut Library,
33164    srcBitMap: *const BitMap,
33165    xSrc: LONG,
33166    ySrc: LONG,
33167    destRP: *mut RastPort,
33168    xDest: LONG,
33169    yDest: LONG,
33170    xSize: LONG,
33171    ySize: LONG,
33172    minterm: ULONG,
33173) {
33174    unsafe {
33175        asm!(
33176            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33177            ".short 0xc0c0",
33178            "move.l %a6, -(%sp)",
33179            "move.l {basereg}, %a6",
33180            ".short 0x4eae", // jsr -606(a6)
33181            ".short -606",
33182            "move.l (%sp)+, %a6",
33183            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33184            basereg = in(reg) GfxBase,
33185            in("a0") srcBitMap,
33186            in("d0") xSrc,
33187            in("d1") ySrc,
33188            in("a1") destRP,
33189            in("d2") xDest,
33190            in("d3") yDest,
33191            in("d4") xSize,
33192            in("d5") ySize,
33193            in("d6") minterm,
33194        );
33195    }
33196}
33197
33198/// libname: "graphics.library"
33199pub unsafe fn OrRegionRegion(
33200    GfxBase: *mut Library,
33201    srcRegion: *const Region,
33202    destRegion: *mut Region,
33203) -> BOOL {
33204    let asm_ret_value: BOOL;
33205    unsafe {
33206        asm!(
33207            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33208            ".short 0x40c0",
33209            "move.l %a6, -(%sp)",
33210            "move.l {basereg}, %a6",
33211            ".short 0x4eae", // jsr -612(a6)
33212            ".short -612",
33213            "move.l (%sp)+, %a6",
33214            "movem.l (%sp)+, %d1/%a0-%a1",
33215            basereg = in(reg) GfxBase,
33216            in("a0") srcRegion,
33217            in("a1") destRegion,
33218            out("d0") asm_ret_value,
33219        );
33220    }
33221    asm_ret_value
33222}
33223
33224/// libname: "graphics.library"
33225pub unsafe fn XorRegionRegion(
33226    GfxBase: *mut Library,
33227    srcRegion: *const Region,
33228    destRegion: *mut Region,
33229) -> BOOL {
33230    let asm_ret_value: BOOL;
33231    unsafe {
33232        asm!(
33233            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33234            ".short 0x40c0",
33235            "move.l %a6, -(%sp)",
33236            "move.l {basereg}, %a6",
33237            ".short 0x4eae", // jsr -618(a6)
33238            ".short -618",
33239            "move.l (%sp)+, %a6",
33240            "movem.l (%sp)+, %d1/%a0-%a1",
33241            basereg = in(reg) GfxBase,
33242            in("a0") srcRegion,
33243            in("a1") destRegion,
33244            out("d0") asm_ret_value,
33245        );
33246    }
33247    asm_ret_value
33248}
33249
33250/// libname: "graphics.library"
33251pub unsafe fn AndRegionRegion(
33252    GfxBase: *mut Library,
33253    srcRegion: *const Region,
33254    destRegion: *mut Region,
33255) -> BOOL {
33256    let asm_ret_value: BOOL;
33257    unsafe {
33258        asm!(
33259            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33260            ".short 0x40c0",
33261            "move.l %a6, -(%sp)",
33262            "move.l {basereg}, %a6",
33263            ".short 0x4eae", // jsr -624(a6)
33264            ".short -624",
33265            "move.l (%sp)+, %a6",
33266            "movem.l (%sp)+, %d1/%a0-%a1",
33267            basereg = in(reg) GfxBase,
33268            in("a0") srcRegion,
33269            in("a1") destRegion,
33270            out("d0") asm_ret_value,
33271        );
33272    }
33273    asm_ret_value
33274}
33275
33276/// libname: "graphics.library"
33277pub unsafe fn SetRGB4CM(
33278    GfxBase: *mut Library,
33279    colorMap: *mut ColorMap,
33280    index: LONG,
33281    red: ULONG,
33282    green: ULONG,
33283    blue: ULONG,
33284) {
33285    unsafe {
33286        asm!(
33287            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33288            ".short 0xc0c0",
33289            "move.l %a6, -(%sp)",
33290            "move.l {basereg}, %a6",
33291            ".short 0x4eae", // jsr -630(a6)
33292            ".short -630",
33293            "move.l (%sp)+, %a6",
33294            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33295            basereg = in(reg) GfxBase,
33296            in("a0") colorMap,
33297            in("d0") index,
33298            in("d1") red,
33299            in("d2") green,
33300            in("d3") blue,
33301        );
33302    }
33303}
33304
33305/// libname: "graphics.library"
33306pub unsafe fn BltMaskBitMapRastPort(
33307    GfxBase: *mut Library,
33308    srcBitMap: *const BitMap,
33309    xSrc: LONG,
33310    ySrc: LONG,
33311    destRP: *mut RastPort,
33312    xDest: LONG,
33313    yDest: LONG,
33314    xSize: LONG,
33315    ySize: LONG,
33316    minterm: ULONG,
33317    bltMask: PLANEPTR,
33318) {
33319    unsafe {
33320        asm!(
33321            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33322            ".short 0xc0c0",
33323            "move.l %a6, -(%sp)",
33324            "move.l {basereg}, %a6",
33325            ".short 0x4eae", // jsr -636(a6)
33326            ".short -636",
33327            "move.l (%sp)+, %a6",
33328            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33329            basereg = in(reg) GfxBase,
33330            in("a0") srcBitMap,
33331            in("d0") xSrc,
33332            in("d1") ySrc,
33333            in("a1") destRP,
33334            in("d2") xDest,
33335            in("d3") yDest,
33336            in("d4") xSize,
33337            in("d5") ySize,
33338            in("d6") minterm,
33339            in("a2") bltMask,
33340        );
33341    }
33342}
33343
33344/// libname: "graphics.library"
33345pub unsafe fn AttemptLockLayerRom(GfxBase: *mut Library, layer: *mut Layer) -> BOOL {
33346    let asm_ret_value: BOOL;
33347    unsafe {
33348        asm!(
33349            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33350            ".short 0x40c0",
33351            "move.l %a6, -(%sp)",
33352            "move.l %a5, -(%sp)",
33353            "move.l {basereg}, %a6",
33354            "move.l {a5reg}, %a5",
33355            ".short 0x4eae", // jsr -654(a6)
33356            ".short -654",
33357            "move.l (%sp)+, %a5",
33358            "move.l (%sp)+, %a6",
33359            "movem.l (%sp)+, %d1/%a0-%a1",
33360            basereg = in(reg) GfxBase,
33361            a5reg = in(reg) layer,
33362            out("d0") asm_ret_value,
33363        );
33364    }
33365    asm_ret_value
33366}
33367
33368/// libname: "graphics.library" (V36) (Kickstart 2.0)
33369pub unsafe fn GfxNew(GfxBase: *mut Library, gfxNodeType: ULONG) -> APTR {
33370    let asm_ret_value: APTR;
33371    unsafe {
33372        asm!(
33373            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33374            ".short 0x40c0",
33375            "move.l %a6, -(%sp)",
33376            "move.l {basereg}, %a6",
33377            ".short 0x4eae", // jsr -660(a6)
33378            ".short -660",
33379            "move.l (%sp)+, %a6",
33380            "movem.l (%sp)+, %d1/%a0-%a1",
33381            basereg = in(reg) GfxBase,
33382            in("d0") gfxNodeType,
33383            lateout("d0") asm_ret_value,
33384        );
33385    }
33386    asm_ret_value
33387}
33388
33389/// libname: "graphics.library" (V36) (Kickstart 2.0)
33390pub unsafe fn GfxFree(GfxBase: *mut Library, gfxNodePtr: APTR) {
33391    unsafe {
33392        asm!(
33393            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33394            ".short 0xc0c0",
33395            "move.l %a6, -(%sp)",
33396            "move.l {basereg}, %a6",
33397            ".short 0x4eae", // jsr -666(a6)
33398            ".short -666",
33399            "move.l (%sp)+, %a6",
33400            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33401            basereg = in(reg) GfxBase,
33402            in("a0") gfxNodePtr,
33403        );
33404    }
33405}
33406
33407/// libname: "graphics.library" (V36) (Kickstart 2.0)
33408pub unsafe fn GfxAssociate(GfxBase: *mut Library, associateNode: APTR, gfxNodePtr: APTR) {
33409    unsafe {
33410        asm!(
33411            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33412            ".short 0xc0c0",
33413            "move.l %a6, -(%sp)",
33414            "move.l {basereg}, %a6",
33415            ".short 0x4eae", // jsr -672(a6)
33416            ".short -672",
33417            "move.l (%sp)+, %a6",
33418            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33419            basereg = in(reg) GfxBase,
33420            in("a0") associateNode,
33421            in("a1") gfxNodePtr,
33422        );
33423    }
33424}
33425
33426/// libname: "graphics.library" (V36) (Kickstart 2.0)
33427pub unsafe fn BitMapScale(GfxBase: *mut Library, bitScaleArgs: *mut BitScaleArgs) {
33428    unsafe {
33429        asm!(
33430            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33431            ".short 0xc0c0",
33432            "move.l %a6, -(%sp)",
33433            "move.l {basereg}, %a6",
33434            ".short 0x4eae", // jsr -678(a6)
33435            ".short -678",
33436            "move.l (%sp)+, %a6",
33437            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33438            basereg = in(reg) GfxBase,
33439            in("a0") bitScaleArgs,
33440        );
33441    }
33442}
33443
33444/// libname: "graphics.library" (V36) (Kickstart 2.0)
33445pub unsafe fn ScalerDiv(
33446    GfxBase: *mut Library,
33447    factor: ULONG,
33448    numerator: ULONG,
33449    denominator: ULONG,
33450) -> UWORD {
33451    let asm_ret_value: UWORD;
33452    unsafe {
33453        asm!(
33454            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33455            ".short 0x40c0",
33456            "move.l %a6, -(%sp)",
33457            "move.l {basereg}, %a6",
33458            ".short 0x4eae", // jsr -684(a6)
33459            ".short -684",
33460            "move.l (%sp)+, %a6",
33461            "movem.l (%sp)+, %d1/%a0-%a1",
33462            basereg = in(reg) GfxBase,
33463            in("d0") factor,
33464            in("d1") numerator,
33465            in("d2") denominator,
33466            lateout("d0") asm_ret_value,
33467        );
33468    }
33469    asm_ret_value
33470}
33471
33472/// libname: "graphics.library" (V36) (Kickstart 2.0)
33473pub unsafe fn TextExtent(
33474    GfxBase: *mut Library,
33475    rp: *mut RastPort,
33476    string: CONST_STRPTR,
33477    count: LONG,
33478    textExtent: *mut TextExtent,
33479) -> WORD {
33480    let asm_ret_value: WORD;
33481    unsafe {
33482        asm!(
33483            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33484            ".short 0x40c0",
33485            "move.l %a6, -(%sp)",
33486            "move.l {basereg}, %a6",
33487            ".short 0x4eae", // jsr -690(a6)
33488            ".short -690",
33489            "move.l (%sp)+, %a6",
33490            "movem.l (%sp)+, %d1/%a0-%a1",
33491            basereg = in(reg) GfxBase,
33492            in("a1") rp,
33493            in("a0") string,
33494            in("d0") count,
33495            in("a2") textExtent,
33496            lateout("d0") asm_ret_value,
33497        );
33498    }
33499    asm_ret_value
33500}
33501
33502/// libname: "graphics.library" (V36) (Kickstart 2.0)
33503pub unsafe fn TextFit(
33504    GfxBase: *mut Library,
33505    rp: *mut RastPort,
33506    string: CONST_STRPTR,
33507    strLen: ULONG,
33508    textExtent: *const TextExtent,
33509    constrainingExtent: *const TextExtent,
33510    strDirection: LONG,
33511    constrainingBitWidth: ULONG,
33512    constrainingBitHeight: ULONG,
33513) -> ULONG {
33514    let asm_ret_value: ULONG;
33515    unsafe {
33516        asm!(
33517            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33518            ".short 0x40c0",
33519            "move.l %a6, -(%sp)",
33520            "move.l {basereg}, %a6",
33521            ".short 0x4eae", // jsr -696(a6)
33522            ".short -696",
33523            "move.l (%sp)+, %a6",
33524            "movem.l (%sp)+, %d1/%a0-%a1",
33525            basereg = in(reg) GfxBase,
33526            in("a1") rp,
33527            in("a0") string,
33528            in("d0") strLen,
33529            in("a2") textExtent,
33530            in("a3") constrainingExtent,
33531            in("d1") strDirection,
33532            in("d2") constrainingBitWidth,
33533            in("d3") constrainingBitHeight,
33534            lateout("d0") asm_ret_value,
33535        );
33536    }
33537    asm_ret_value
33538}
33539
33540/// libname: "graphics.library" (V36) (Kickstart 2.0)
33541pub unsafe fn GfxLookUp(GfxBase: *mut Library, associateNode: CONST_APTR) -> APTR {
33542    let asm_ret_value: APTR;
33543    unsafe {
33544        asm!(
33545            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33546            ".short 0x40c0",
33547            "move.l %a6, -(%sp)",
33548            "move.l {basereg}, %a6",
33549            ".short 0x4eae", // jsr -702(a6)
33550            ".short -702",
33551            "move.l (%sp)+, %a6",
33552            "movem.l (%sp)+, %d1/%a0-%a1",
33553            basereg = in(reg) GfxBase,
33554            in("a0") associateNode,
33555            out("d0") asm_ret_value,
33556        );
33557    }
33558    asm_ret_value
33559}
33560
33561/// libname: "graphics.library" (V36) (Kickstart 2.0)
33562pub unsafe fn VideoControl(
33563    GfxBase: *mut Library,
33564    colorMap: *mut ColorMap,
33565    tagarray: *mut TagItem,
33566) -> BOOL {
33567    let asm_ret_value: BOOL;
33568    unsafe {
33569        asm!(
33570            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33571            ".short 0x40c0",
33572            "move.l %a6, -(%sp)",
33573            "move.l {basereg}, %a6",
33574            ".short 0x4eae", // jsr -708(a6)
33575            ".short -708",
33576            "move.l (%sp)+, %a6",
33577            "movem.l (%sp)+, %d1/%a0-%a1",
33578            basereg = in(reg) GfxBase,
33579            in("a0") colorMap,
33580            in("a1") tagarray,
33581            out("d0") asm_ret_value,
33582        );
33583    }
33584    asm_ret_value
33585}
33586
33587/// libname: "graphics.library" (V36) (Kickstart 2.0)
33588pub unsafe fn OpenMonitor(
33589    GfxBase: *mut Library,
33590    monitorName: CONST_STRPTR,
33591    displayID: ULONG,
33592) -> *mut MonitorSpec {
33593    let asm_ret_value: *mut MonitorSpec;
33594    unsafe {
33595        asm!(
33596            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33597            ".short 0x40c0",
33598            "move.l %a6, -(%sp)",
33599            "move.l {basereg}, %a6",
33600            ".short 0x4eae", // jsr -714(a6)
33601            ".short -714",
33602            "move.l (%sp)+, %a6",
33603            "movem.l (%sp)+, %d1/%a0-%a1",
33604            basereg = in(reg) GfxBase,
33605            in("a1") monitorName,
33606            in("d0") displayID,
33607            lateout("d0") asm_ret_value,
33608        );
33609    }
33610    asm_ret_value
33611}
33612
33613/// libname: "graphics.library" (V36) (Kickstart 2.0)
33614pub unsafe fn CloseMonitor(GfxBase: *mut Library, monitorSpec: *mut MonitorSpec) -> BOOL {
33615    let asm_ret_value: BOOL;
33616    unsafe {
33617        asm!(
33618            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33619            ".short 0x40c0",
33620            "move.l %a6, -(%sp)",
33621            "move.l {basereg}, %a6",
33622            ".short 0x4eae", // jsr -720(a6)
33623            ".short -720",
33624            "move.l (%sp)+, %a6",
33625            "movem.l (%sp)+, %d1/%a0-%a1",
33626            basereg = in(reg) GfxBase,
33627            in("a0") monitorSpec,
33628            out("d0") asm_ret_value,
33629        );
33630    }
33631    asm_ret_value
33632}
33633
33634/// libname: "graphics.library" (V36) (Kickstart 2.0)
33635pub unsafe fn FindDisplayInfo(GfxBase: *mut Library, displayID: ULONG) -> DisplayInfoHandle {
33636    let asm_ret_value: DisplayInfoHandle;
33637    unsafe {
33638        asm!(
33639            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33640            ".short 0x40c0",
33641            "move.l %a6, -(%sp)",
33642            "move.l {basereg}, %a6",
33643            ".short 0x4eae", // jsr -726(a6)
33644            ".short -726",
33645            "move.l (%sp)+, %a6",
33646            "movem.l (%sp)+, %d1/%a0-%a1",
33647            basereg = in(reg) GfxBase,
33648            in("d0") displayID,
33649            lateout("d0") asm_ret_value,
33650        );
33651    }
33652    asm_ret_value
33653}
33654
33655/// libname: "graphics.library" (V36) (Kickstart 2.0)
33656pub unsafe fn NextDisplayInfo(GfxBase: *mut Library, displayID: ULONG) -> ULONG {
33657    let asm_ret_value: ULONG;
33658    unsafe {
33659        asm!(
33660            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33661            ".short 0x40c0",
33662            "move.l %a6, -(%sp)",
33663            "move.l {basereg}, %a6",
33664            ".short 0x4eae", // jsr -732(a6)
33665            ".short -732",
33666            "move.l (%sp)+, %a6",
33667            "movem.l (%sp)+, %d1/%a0-%a1",
33668            basereg = in(reg) GfxBase,
33669            in("d0") displayID,
33670            lateout("d0") asm_ret_value,
33671        );
33672    }
33673    asm_ret_value
33674}
33675
33676/// libname: "graphics.library" (V36) (Kickstart 2.0)
33677pub unsafe fn GetDisplayInfoData(
33678    GfxBase: *mut Library,
33679    handle: DisplayInfoHandle,
33680    buf: APTR,
33681    size: ULONG,
33682    tagID: ULONG,
33683    displayID: ULONG,
33684) -> ULONG {
33685    let asm_ret_value: ULONG;
33686    unsafe {
33687        asm!(
33688            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33689            ".short 0x40c0",
33690            "move.l %a6, -(%sp)",
33691            "move.l {basereg}, %a6",
33692            ".short 0x4eae", // jsr -756(a6)
33693            ".short -756",
33694            "move.l (%sp)+, %a6",
33695            "movem.l (%sp)+, %d1/%a0-%a1",
33696            basereg = in(reg) GfxBase,
33697            in("a0") handle,
33698            in("a1") buf,
33699            in("d0") size,
33700            in("d1") tagID,
33701            in("d2") displayID,
33702            lateout("d0") asm_ret_value,
33703        );
33704    }
33705    asm_ret_value
33706}
33707
33708/// libname: "graphics.library" (V36) (Kickstart 2.0)
33709pub unsafe fn FontExtent(
33710    GfxBase: *mut Library,
33711    font: *const TextFont,
33712    fontExtent: *mut TextExtent,
33713) {
33714    unsafe {
33715        asm!(
33716            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33717            ".short 0xc0c0",
33718            "move.l %a6, -(%sp)",
33719            "move.l {basereg}, %a6",
33720            ".short 0x4eae", // jsr -762(a6)
33721            ".short -762",
33722            "move.l (%sp)+, %a6",
33723            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33724            basereg = in(reg) GfxBase,
33725            in("a0") font,
33726            in("a1") fontExtent,
33727        );
33728    }
33729}
33730
33731/// libname: "graphics.library" (V36) (Kickstart 2.0)
33732pub unsafe fn ReadPixelLine8(
33733    GfxBase: *mut Library,
33734    rp: *mut RastPort,
33735    xstart: ULONG,
33736    ystart: ULONG,
33737    width: ULONG,
33738    array: *mut UBYTE,
33739    tempRP: *mut RastPort,
33740) -> LONG {
33741    let asm_ret_value: LONG;
33742    unsafe {
33743        asm!(
33744            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33745            ".short 0x40c0",
33746            "move.l %a6, -(%sp)",
33747            "move.l {basereg}, %a6",
33748            ".short 0x4eae", // jsr -768(a6)
33749            ".short -768",
33750            "move.l (%sp)+, %a6",
33751            "movem.l (%sp)+, %d1/%a0-%a1",
33752            basereg = in(reg) GfxBase,
33753            in("a0") rp,
33754            in("d0") xstart,
33755            in("d1") ystart,
33756            in("d2") width,
33757            in("a2") array,
33758            in("a1") tempRP,
33759            lateout("d0") asm_ret_value,
33760        );
33761    }
33762    asm_ret_value
33763}
33764
33765/// libname: "graphics.library" (V36) (Kickstart 2.0)
33766pub unsafe fn WritePixelLine8(
33767    GfxBase: *mut Library,
33768    rp: *mut RastPort,
33769    xstart: ULONG,
33770    ystart: ULONG,
33771    width: ULONG,
33772    array: *mut UBYTE,
33773    tempRP: *mut RastPort,
33774) -> LONG {
33775    let asm_ret_value: LONG;
33776    unsafe {
33777        asm!(
33778            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33779            ".short 0x40c0",
33780            "move.l %a6, -(%sp)",
33781            "move.l {basereg}, %a6",
33782            ".short 0x4eae", // jsr -774(a6)
33783            ".short -774",
33784            "move.l (%sp)+, %a6",
33785            "movem.l (%sp)+, %d1/%a0-%a1",
33786            basereg = in(reg) GfxBase,
33787            in("a0") rp,
33788            in("d0") xstart,
33789            in("d1") ystart,
33790            in("d2") width,
33791            in("a2") array,
33792            in("a1") tempRP,
33793            lateout("d0") asm_ret_value,
33794        );
33795    }
33796    asm_ret_value
33797}
33798
33799/// libname: "graphics.library" (V36) (Kickstart 2.0)
33800pub unsafe fn ReadPixelArray8(
33801    GfxBase: *mut Library,
33802    rp: *mut RastPort,
33803    xstart: ULONG,
33804    ystart: ULONG,
33805    xstop: ULONG,
33806    ystop: ULONG,
33807    array: *mut UBYTE,
33808    temprp: *mut RastPort,
33809) -> LONG {
33810    let asm_ret_value: LONG;
33811    unsafe {
33812        asm!(
33813            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33814            ".short 0x40c0",
33815            "move.l %a6, -(%sp)",
33816            "move.l {basereg}, %a6",
33817            ".short 0x4eae", // jsr -780(a6)
33818            ".short -780",
33819            "move.l (%sp)+, %a6",
33820            "movem.l (%sp)+, %d1/%a0-%a1",
33821            basereg = in(reg) GfxBase,
33822            in("a0") rp,
33823            in("d0") xstart,
33824            in("d1") ystart,
33825            in("d2") xstop,
33826            in("d3") ystop,
33827            in("a2") array,
33828            in("a1") temprp,
33829            lateout("d0") asm_ret_value,
33830        );
33831    }
33832    asm_ret_value
33833}
33834
33835/// libname: "graphics.library" (V36) (Kickstart 2.0)
33836pub unsafe fn WritePixelArray8(
33837    GfxBase: *mut Library,
33838    rp: *mut RastPort,
33839    xstart: ULONG,
33840    ystart: ULONG,
33841    xstop: ULONG,
33842    ystop: ULONG,
33843    array: *mut UBYTE,
33844    temprp: *mut RastPort,
33845) -> LONG {
33846    let asm_ret_value: LONG;
33847    unsafe {
33848        asm!(
33849            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33850            ".short 0x40c0",
33851            "move.l %a6, -(%sp)",
33852            "move.l {basereg}, %a6",
33853            ".short 0x4eae", // jsr -786(a6)
33854            ".short -786",
33855            "move.l (%sp)+, %a6",
33856            "movem.l (%sp)+, %d1/%a0-%a1",
33857            basereg = in(reg) GfxBase,
33858            in("a0") rp,
33859            in("d0") xstart,
33860            in("d1") ystart,
33861            in("d2") xstop,
33862            in("d3") ystop,
33863            in("a2") array,
33864            in("a1") temprp,
33865            lateout("d0") asm_ret_value,
33866        );
33867    }
33868    asm_ret_value
33869}
33870
33871/// libname: "graphics.library" (V36) (Kickstart 2.0)
33872pub unsafe fn GetVPModeID(GfxBase: *mut Library, vp: *const ViewPort) -> LONG {
33873    let asm_ret_value: LONG;
33874    unsafe {
33875        asm!(
33876            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33877            ".short 0x40c0",
33878            "move.l %a6, -(%sp)",
33879            "move.l {basereg}, %a6",
33880            ".short 0x4eae", // jsr -792(a6)
33881            ".short -792",
33882            "move.l (%sp)+, %a6",
33883            "movem.l (%sp)+, %d1/%a0-%a1",
33884            basereg = in(reg) GfxBase,
33885            in("a0") vp,
33886            out("d0") asm_ret_value,
33887        );
33888    }
33889    asm_ret_value
33890}
33891
33892/// libname: "graphics.library" (V36) (Kickstart 2.0)
33893pub unsafe fn ModeNotAvailable(GfxBase: *mut Library, modeID: ULONG) -> LONG {
33894    let asm_ret_value: LONG;
33895    unsafe {
33896        asm!(
33897            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33898            ".short 0x40c0",
33899            "move.l %a6, -(%sp)",
33900            "move.l {basereg}, %a6",
33901            ".short 0x4eae", // jsr -798(a6)
33902            ".short -798",
33903            "move.l (%sp)+, %a6",
33904            "movem.l (%sp)+, %d1/%a0-%a1",
33905            basereg = in(reg) GfxBase,
33906            in("d0") modeID,
33907            lateout("d0") asm_ret_value,
33908        );
33909    }
33910    asm_ret_value
33911}
33912
33913/// libname: "graphics.library" (V36) (Kickstart 2.0)
33914pub unsafe fn WeighTAMatch(
33915    GfxBase: *mut Library,
33916    reqTextAttr: *const TextAttr,
33917    targetTextAttr: *const TextAttr,
33918    targetTags: *const TagItem,
33919) -> WORD {
33920    let asm_ret_value: WORD;
33921    unsafe {
33922        asm!(
33923            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33924            ".short 0x40c0",
33925            "move.l %a6, -(%sp)",
33926            "move.l {basereg}, %a6",
33927            ".short 0x4eae", // jsr -804(a6)
33928            ".short -804",
33929            "move.l (%sp)+, %a6",
33930            "movem.l (%sp)+, %d1/%a0-%a1",
33931            basereg = in(reg) GfxBase,
33932            in("a0") reqTextAttr,
33933            in("a1") targetTextAttr,
33934            in("a2") targetTags,
33935            out("d0") asm_ret_value,
33936        );
33937    }
33938    asm_ret_value
33939}
33940
33941/// libname: "graphics.library" (V36) (Kickstart 2.0)
33942pub unsafe fn EraseRect(
33943    GfxBase: *mut Library,
33944    rp: *mut RastPort,
33945    xMin: LONG,
33946    yMin: LONG,
33947    xMax: LONG,
33948    yMax: LONG,
33949) {
33950    unsafe {
33951        asm!(
33952            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
33953            ".short 0xc0c0",
33954            "move.l %a6, -(%sp)",
33955            "move.l {basereg}, %a6",
33956            ".short 0x4eae", // jsr -810(a6)
33957            ".short -810",
33958            "move.l (%sp)+, %a6",
33959            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
33960            basereg = in(reg) GfxBase,
33961            in("a1") rp,
33962            in("d0") xMin,
33963            in("d1") yMin,
33964            in("d2") xMax,
33965            in("d3") yMax,
33966        );
33967    }
33968}
33969
33970/// libname: "graphics.library" (V36) (Kickstart 2.0)
33971pub unsafe fn ExtendFont(
33972    GfxBase: *mut Library,
33973    font: *mut TextFont,
33974    fontTags: *const TagItem,
33975) -> ULONG {
33976    let asm_ret_value: ULONG;
33977    unsafe {
33978        asm!(
33979            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
33980            ".short 0x40c0",
33981            "move.l %a6, -(%sp)",
33982            "move.l {basereg}, %a6",
33983            ".short 0x4eae", // jsr -816(a6)
33984            ".short -816",
33985            "move.l (%sp)+, %a6",
33986            "movem.l (%sp)+, %d1/%a0-%a1",
33987            basereg = in(reg) GfxBase,
33988            in("a0") font,
33989            in("a1") fontTags,
33990            out("d0") asm_ret_value,
33991        );
33992    }
33993    asm_ret_value
33994}
33995
33996/// libname: "graphics.library" (V36) (Kickstart 2.0)
33997pub unsafe fn StripFont(GfxBase: *mut Library, font: *mut TextFont) {
33998    unsafe {
33999        asm!(
34000            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34001            ".short 0xc0c0",
34002            "move.l %a6, -(%sp)",
34003            "move.l {basereg}, %a6",
34004            ".short 0x4eae", // jsr -822(a6)
34005            ".short -822",
34006            "move.l (%sp)+, %a6",
34007            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34008            basereg = in(reg) GfxBase,
34009            in("a0") font,
34010        );
34011    }
34012}
34013
34014/// libname: "graphics.library" (V39) (Kickstart 3.0)
34015pub unsafe fn CalcIVG(GfxBase: *mut Library, v: *mut View, vp: *mut ViewPort) -> UWORD {
34016    let asm_ret_value: UWORD;
34017    unsafe {
34018        asm!(
34019            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34020            ".short 0x40c0",
34021            "move.l %a6, -(%sp)",
34022            "move.l {basereg}, %a6",
34023            ".short 0x4eae", // jsr -828(a6)
34024            ".short -828",
34025            "move.l (%sp)+, %a6",
34026            "movem.l (%sp)+, %d1/%a0-%a1",
34027            basereg = in(reg) GfxBase,
34028            in("a0") v,
34029            in("a1") vp,
34030            out("d0") asm_ret_value,
34031        );
34032    }
34033    asm_ret_value
34034}
34035
34036/// libname: "graphics.library" (V39) (Kickstart 3.0)
34037pub unsafe fn AttachPalExtra(GfxBase: *mut Library, cm: *mut ColorMap, vp: *mut ViewPort) -> LONG {
34038    let asm_ret_value: LONG;
34039    unsafe {
34040        asm!(
34041            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34042            ".short 0x40c0",
34043            "move.l %a6, -(%sp)",
34044            "move.l {basereg}, %a6",
34045            ".short 0x4eae", // jsr -834(a6)
34046            ".short -834",
34047            "move.l (%sp)+, %a6",
34048            "movem.l (%sp)+, %d1/%a0-%a1",
34049            basereg = in(reg) GfxBase,
34050            in("a0") cm,
34051            in("a1") vp,
34052            out("d0") asm_ret_value,
34053        );
34054    }
34055    asm_ret_value
34056}
34057
34058/// libname: "graphics.library" (V39) (Kickstart 3.0)
34059pub unsafe fn ObtainBestPenA(
34060    GfxBase: *mut Library,
34061    cm: *mut ColorMap,
34062    r: ULONG,
34063    g: ULONG,
34064    b: ULONG,
34065    tags: *const TagItem,
34066) -> LONG {
34067    let asm_ret_value: LONG;
34068    unsafe {
34069        asm!(
34070            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34071            ".short 0x40c0",
34072            "move.l %a6, -(%sp)",
34073            "move.l {basereg}, %a6",
34074            ".short 0x4eae", // jsr -840(a6)
34075            ".short -840",
34076            "move.l (%sp)+, %a6",
34077            "movem.l (%sp)+, %d1/%a0-%a1",
34078            basereg = in(reg) GfxBase,
34079            in("a0") cm,
34080            in("d1") r,
34081            in("d2") g,
34082            in("d3") b,
34083            in("a1") tags,
34084            out("d0") asm_ret_value,
34085        );
34086    }
34087    asm_ret_value
34088}
34089
34090/// libname: "graphics.library" (V39) (Kickstart 3.0)
34091pub unsafe fn SetRGB32(
34092    GfxBase: *mut Library,
34093    vp: *mut ViewPort,
34094    n: ULONG,
34095    r: ULONG,
34096    g: ULONG,
34097    b: ULONG,
34098) {
34099    unsafe {
34100        asm!(
34101            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34102            ".short 0xc0c0",
34103            "move.l %a6, -(%sp)",
34104            "move.l {basereg}, %a6",
34105            ".short 0x4eae", // jsr -852(a6)
34106            ".short -852",
34107            "move.l (%sp)+, %a6",
34108            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34109            basereg = in(reg) GfxBase,
34110            in("a0") vp,
34111            in("d0") n,
34112            in("d1") r,
34113            in("d2") g,
34114            in("d3") b,
34115        );
34116    }
34117}
34118
34119/// libname: "graphics.library" (V39) (Kickstart 3.0)
34120pub unsafe fn GetAPen(GfxBase: *mut Library, rp: *mut RastPort) -> ULONG {
34121    let asm_ret_value: ULONG;
34122    unsafe {
34123        asm!(
34124            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34125            ".short 0x40c0",
34126            "move.l %a6, -(%sp)",
34127            "move.l {basereg}, %a6",
34128            ".short 0x4eae", // jsr -858(a6)
34129            ".short -858",
34130            "move.l (%sp)+, %a6",
34131            "movem.l (%sp)+, %d1/%a0-%a1",
34132            basereg = in(reg) GfxBase,
34133            in("a0") rp,
34134            out("d0") asm_ret_value,
34135        );
34136    }
34137    asm_ret_value
34138}
34139
34140/// libname: "graphics.library" (V39) (Kickstart 3.0)
34141pub unsafe fn GetBPen(GfxBase: *mut Library, rp: *mut RastPort) -> ULONG {
34142    let asm_ret_value: ULONG;
34143    unsafe {
34144        asm!(
34145            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34146            ".short 0x40c0",
34147            "move.l %a6, -(%sp)",
34148            "move.l {basereg}, %a6",
34149            ".short 0x4eae", // jsr -864(a6)
34150            ".short -864",
34151            "move.l (%sp)+, %a6",
34152            "movem.l (%sp)+, %d1/%a0-%a1",
34153            basereg = in(reg) GfxBase,
34154            in("a0") rp,
34155            out("d0") asm_ret_value,
34156        );
34157    }
34158    asm_ret_value
34159}
34160
34161/// libname: "graphics.library" (V39) (Kickstart 3.0)
34162pub unsafe fn GetDrMd(GfxBase: *mut Library, rp: *mut RastPort) -> ULONG {
34163    let asm_ret_value: ULONG;
34164    unsafe {
34165        asm!(
34166            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34167            ".short 0x40c0",
34168            "move.l %a6, -(%sp)",
34169            "move.l {basereg}, %a6",
34170            ".short 0x4eae", // jsr -870(a6)
34171            ".short -870",
34172            "move.l (%sp)+, %a6",
34173            "movem.l (%sp)+, %d1/%a0-%a1",
34174            basereg = in(reg) GfxBase,
34175            in("a0") rp,
34176            out("d0") asm_ret_value,
34177        );
34178    }
34179    asm_ret_value
34180}
34181
34182/// libname: "graphics.library" (V39) (Kickstart 3.0)
34183pub unsafe fn GetOutlinePen(GfxBase: *mut Library, rp: *mut RastPort) -> ULONG {
34184    let asm_ret_value: ULONG;
34185    unsafe {
34186        asm!(
34187            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34188            ".short 0x40c0",
34189            "move.l %a6, -(%sp)",
34190            "move.l {basereg}, %a6",
34191            ".short 0x4eae", // jsr -876(a6)
34192            ".short -876",
34193            "move.l (%sp)+, %a6",
34194            "movem.l (%sp)+, %d1/%a0-%a1",
34195            basereg = in(reg) GfxBase,
34196            in("a0") rp,
34197            out("d0") asm_ret_value,
34198        );
34199    }
34200    asm_ret_value
34201}
34202
34203/// libname: "graphics.library" (V39) (Kickstart 3.0)
34204pub unsafe fn LoadRGB32(GfxBase: *mut Library, vp: *mut ViewPort, table: *const ULONG) {
34205    unsafe {
34206        asm!(
34207            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34208            ".short 0xc0c0",
34209            "move.l %a6, -(%sp)",
34210            "move.l {basereg}, %a6",
34211            ".short 0x4eae", // jsr -882(a6)
34212            ".short -882",
34213            "move.l (%sp)+, %a6",
34214            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34215            basereg = in(reg) GfxBase,
34216            in("a0") vp,
34217            in("a1") table,
34218        );
34219    }
34220}
34221
34222/// libname: "graphics.library" (V39) (Kickstart 3.0)
34223pub unsafe fn SetChipRev(GfxBase: *mut Library, want: ULONG) -> ULONG {
34224    let asm_ret_value: ULONG;
34225    unsafe {
34226        asm!(
34227            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34228            ".short 0x40c0",
34229            "move.l %a6, -(%sp)",
34230            "move.l {basereg}, %a6",
34231            ".short 0x4eae", // jsr -888(a6)
34232            ".short -888",
34233            "move.l (%sp)+, %a6",
34234            "movem.l (%sp)+, %d1/%a0-%a1",
34235            basereg = in(reg) GfxBase,
34236            in("d0") want,
34237            lateout("d0") asm_ret_value,
34238        );
34239    }
34240    asm_ret_value
34241}
34242
34243/// libname: "graphics.library" (V39) (Kickstart 3.0)
34244pub unsafe fn SetABPenDrMd(
34245    GfxBase: *mut Library,
34246    rp: *mut RastPort,
34247    apen: ULONG,
34248    bpen: ULONG,
34249    drawmode: ULONG,
34250) {
34251    unsafe {
34252        asm!(
34253            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34254            ".short 0xc0c0",
34255            "move.l %a6, -(%sp)",
34256            "move.l {basereg}, %a6",
34257            ".short 0x4eae", // jsr -894(a6)
34258            ".short -894",
34259            "move.l (%sp)+, %a6",
34260            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34261            basereg = in(reg) GfxBase,
34262            in("a1") rp,
34263            in("d0") apen,
34264            in("d1") bpen,
34265            in("d2") drawmode,
34266        );
34267    }
34268}
34269
34270/// libname: "graphics.library" (V39) (Kickstart 3.0)
34271pub unsafe fn GetRGB32(
34272    GfxBase: *mut Library,
34273    cm: *const ColorMap,
34274    firstcolor: ULONG,
34275    ncolors: ULONG,
34276    table: *mut ULONG,
34277) {
34278    unsafe {
34279        asm!(
34280            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34281            ".short 0xc0c0",
34282            "move.l %a6, -(%sp)",
34283            "move.l {basereg}, %a6",
34284            ".short 0x4eae", // jsr -900(a6)
34285            ".short -900",
34286            "move.l (%sp)+, %a6",
34287            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34288            basereg = in(reg) GfxBase,
34289            in("a0") cm,
34290            in("d0") firstcolor,
34291            in("d1") ncolors,
34292            in("a1") table,
34293        );
34294    }
34295}
34296
34297/// libname: "graphics.library" (V39) (Kickstart 3.0)
34298pub unsafe fn AllocBitMap(
34299    GfxBase: *mut Library,
34300    sizex: ULONG,
34301    sizey: ULONG,
34302    depth: ULONG,
34303    flags: ULONG,
34304    friend_bitmap: *const BitMap,
34305) -> *mut BitMap {
34306    let asm_ret_value: *mut BitMap;
34307    unsafe {
34308        asm!(
34309            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34310            ".short 0x40c0",
34311            "move.l %a6, -(%sp)",
34312            "move.l {basereg}, %a6",
34313            ".short 0x4eae", // jsr -918(a6)
34314            ".short -918",
34315            "move.l (%sp)+, %a6",
34316            "movem.l (%sp)+, %d1/%a0-%a1",
34317            basereg = in(reg) GfxBase,
34318            in("d0") sizex,
34319            in("d1") sizey,
34320            in("d2") depth,
34321            in("d3") flags,
34322            in("a0") friend_bitmap,
34323            lateout("d0") asm_ret_value,
34324        );
34325    }
34326    asm_ret_value
34327}
34328
34329/// libname: "graphics.library" (V39) (Kickstart 3.0)
34330pub unsafe fn FreeBitMap(GfxBase: *mut Library, bm: *mut BitMap) {
34331    unsafe {
34332        asm!(
34333            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34334            ".short 0xc0c0",
34335            "move.l %a6, -(%sp)",
34336            "move.l {basereg}, %a6",
34337            ".short 0x4eae", // jsr -924(a6)
34338            ".short -924",
34339            "move.l (%sp)+, %a6",
34340            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34341            basereg = in(reg) GfxBase,
34342            in("a0") bm,
34343        );
34344    }
34345}
34346
34347/// libname: "graphics.library" (V39) (Kickstart 3.0)
34348pub unsafe fn GetExtSpriteA(
34349    GfxBase: *mut Library,
34350    ss: *mut ExtSprite,
34351    tags: *const TagItem,
34352) -> LONG {
34353    let asm_ret_value: LONG;
34354    unsafe {
34355        asm!(
34356            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34357            ".short 0x40c0",
34358            "move.l %a6, -(%sp)",
34359            "move.l {basereg}, %a6",
34360            ".short 0x4eae", // jsr -930(a6)
34361            ".short -930",
34362            "move.l (%sp)+, %a6",
34363            "movem.l (%sp)+, %d1/%a0-%a1",
34364            basereg = in(reg) GfxBase,
34365            in("a2") ss,
34366            in("a1") tags,
34367            out("d0") asm_ret_value,
34368        );
34369    }
34370    asm_ret_value
34371}
34372
34373/// libname: "graphics.library" (V39) (Kickstart 3.0)
34374pub unsafe fn CoerceMode(
34375    GfxBase: *mut Library,
34376    vp: *mut ViewPort,
34377    monitorid: ULONG,
34378    flags: ULONG,
34379) -> ULONG {
34380    let asm_ret_value: ULONG;
34381    unsafe {
34382        asm!(
34383            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34384            ".short 0x40c0",
34385            "move.l %a6, -(%sp)",
34386            "move.l {basereg}, %a6",
34387            ".short 0x4eae", // jsr -936(a6)
34388            ".short -936",
34389            "move.l (%sp)+, %a6",
34390            "movem.l (%sp)+, %d1/%a0-%a1",
34391            basereg = in(reg) GfxBase,
34392            in("a0") vp,
34393            in("d0") monitorid,
34394            in("d1") flags,
34395            lateout("d0") asm_ret_value,
34396        );
34397    }
34398    asm_ret_value
34399}
34400
34401/// libname: "graphics.library" (V39) (Kickstart 3.0)
34402pub unsafe fn ChangeVPBitMap(
34403    GfxBase: *mut Library,
34404    vp: *mut ViewPort,
34405    bm: *mut BitMap,
34406    db: *mut DBufInfo,
34407) {
34408    unsafe {
34409        asm!(
34410            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34411            ".short 0xc0c0",
34412            "move.l %a6, -(%sp)",
34413            "move.l {basereg}, %a6",
34414            ".short 0x4eae", // jsr -942(a6)
34415            ".short -942",
34416            "move.l (%sp)+, %a6",
34417            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34418            basereg = in(reg) GfxBase,
34419            in("a0") vp,
34420            in("a1") bm,
34421            in("a2") db,
34422        );
34423    }
34424}
34425
34426/// libname: "graphics.library" (V39) (Kickstart 3.0)
34427pub unsafe fn ReleasePen(GfxBase: *mut Library, cm: *mut ColorMap, n: ULONG) {
34428    unsafe {
34429        asm!(
34430            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34431            ".short 0xc0c0",
34432            "move.l %a6, -(%sp)",
34433            "move.l {basereg}, %a6",
34434            ".short 0x4eae", // jsr -948(a6)
34435            ".short -948",
34436            "move.l (%sp)+, %a6",
34437            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34438            basereg = in(reg) GfxBase,
34439            in("a0") cm,
34440            in("d0") n,
34441        );
34442    }
34443}
34444
34445/// libname: "graphics.library" (V39) (Kickstart 3.0)
34446pub unsafe fn ObtainPen(
34447    GfxBase: *mut Library,
34448    cm: *mut ColorMap,
34449    n: ULONG,
34450    r: ULONG,
34451    g: ULONG,
34452    b: ULONG,
34453    f: LONG,
34454) -> ULONG {
34455    let asm_ret_value: ULONG;
34456    unsafe {
34457        asm!(
34458            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34459            ".short 0x40c0",
34460            "move.l %a6, -(%sp)",
34461            "move.l {basereg}, %a6",
34462            ".short 0x4eae", // jsr -954(a6)
34463            ".short -954",
34464            "move.l (%sp)+, %a6",
34465            "movem.l (%sp)+, %d1/%a0-%a1",
34466            basereg = in(reg) GfxBase,
34467            in("a0") cm,
34468            in("d0") n,
34469            in("d1") r,
34470            in("d2") g,
34471            in("d3") b,
34472            in("d4") f,
34473            lateout("d0") asm_ret_value,
34474        );
34475    }
34476    asm_ret_value
34477}
34478
34479/// libname: "graphics.library" (V39) (Kickstart 3.0)
34480pub unsafe fn GetBitMapAttr(GfxBase: *mut Library, bm: *const BitMap, attrnum: ULONG) -> ULONG {
34481    let asm_ret_value: ULONG;
34482    unsafe {
34483        asm!(
34484            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34485            ".short 0x40c0",
34486            "move.l %a6, -(%sp)",
34487            "move.l {basereg}, %a6",
34488            ".short 0x4eae", // jsr -960(a6)
34489            ".short -960",
34490            "move.l (%sp)+, %a6",
34491            "movem.l (%sp)+, %d1/%a0-%a1",
34492            basereg = in(reg) GfxBase,
34493            in("a0") bm,
34494            in("d1") attrnum,
34495            out("d0") asm_ret_value,
34496        );
34497    }
34498    asm_ret_value
34499}
34500
34501/// libname: "graphics.library" (V39) (Kickstart 3.0)
34502pub unsafe fn AllocDBufInfo(GfxBase: *mut Library, vp: *mut ViewPort) -> *mut DBufInfo {
34503    let asm_ret_value: *mut DBufInfo;
34504    unsafe {
34505        asm!(
34506            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34507            ".short 0x40c0",
34508            "move.l %a6, -(%sp)",
34509            "move.l {basereg}, %a6",
34510            ".short 0x4eae", // jsr -966(a6)
34511            ".short -966",
34512            "move.l (%sp)+, %a6",
34513            "movem.l (%sp)+, %d1/%a0-%a1",
34514            basereg = in(reg) GfxBase,
34515            in("a0") vp,
34516            out("d0") asm_ret_value,
34517        );
34518    }
34519    asm_ret_value
34520}
34521
34522/// libname: "graphics.library" (V39) (Kickstart 3.0)
34523pub unsafe fn FreeDBufInfo(GfxBase: *mut Library, dbi: *mut DBufInfo) {
34524    unsafe {
34525        asm!(
34526            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34527            ".short 0xc0c0",
34528            "move.l %a6, -(%sp)",
34529            "move.l {basereg}, %a6",
34530            ".short 0x4eae", // jsr -972(a6)
34531            ".short -972",
34532            "move.l (%sp)+, %a6",
34533            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34534            basereg = in(reg) GfxBase,
34535            in("a1") dbi,
34536        );
34537    }
34538}
34539
34540/// libname: "graphics.library" (V39) (Kickstart 3.0)
34541pub unsafe fn SetOutlinePen(GfxBase: *mut Library, rp: *mut RastPort, pen: ULONG) -> ULONG {
34542    let asm_ret_value: ULONG;
34543    unsafe {
34544        asm!(
34545            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34546            ".short 0x40c0",
34547            "move.l %a6, -(%sp)",
34548            "move.l {basereg}, %a6",
34549            ".short 0x4eae", // jsr -978(a6)
34550            ".short -978",
34551            "move.l (%sp)+, %a6",
34552            "movem.l (%sp)+, %d1/%a0-%a1",
34553            basereg = in(reg) GfxBase,
34554            in("a0") rp,
34555            in("d0") pen,
34556            lateout("d0") asm_ret_value,
34557        );
34558    }
34559    asm_ret_value
34560}
34561
34562/// libname: "graphics.library" (V39) (Kickstart 3.0)
34563pub unsafe fn SetWriteMask(GfxBase: *mut Library, rp: *mut RastPort, msk: ULONG) -> ULONG {
34564    let asm_ret_value: ULONG;
34565    unsafe {
34566        asm!(
34567            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34568            ".short 0x40c0",
34569            "move.l %a6, -(%sp)",
34570            "move.l {basereg}, %a6",
34571            ".short 0x4eae", // jsr -984(a6)
34572            ".short -984",
34573            "move.l (%sp)+, %a6",
34574            "movem.l (%sp)+, %d1/%a0-%a1",
34575            basereg = in(reg) GfxBase,
34576            in("a0") rp,
34577            in("d0") msk,
34578            lateout("d0") asm_ret_value,
34579        );
34580    }
34581    asm_ret_value
34582}
34583
34584/// libname: "graphics.library" (V39) (Kickstart 3.0)
34585pub unsafe fn SetMaxPen(GfxBase: *mut Library, rp: *mut RastPort, maxpen: ULONG) {
34586    unsafe {
34587        asm!(
34588            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34589            ".short 0xc0c0",
34590            "move.l %a6, -(%sp)",
34591            "move.l {basereg}, %a6",
34592            ".short 0x4eae", // jsr -990(a6)
34593            ".short -990",
34594            "move.l (%sp)+, %a6",
34595            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34596            basereg = in(reg) GfxBase,
34597            in("a0") rp,
34598            in("d0") maxpen,
34599        );
34600    }
34601}
34602
34603/// libname: "graphics.library" (V39) (Kickstart 3.0)
34604pub unsafe fn SetRGB32CM(
34605    GfxBase: *mut Library,
34606    cm: *mut ColorMap,
34607    n: ULONG,
34608    r: ULONG,
34609    g: ULONG,
34610    b: ULONG,
34611) {
34612    unsafe {
34613        asm!(
34614            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34615            ".short 0xc0c0",
34616            "move.l %a6, -(%sp)",
34617            "move.l {basereg}, %a6",
34618            ".short 0x4eae", // jsr -996(a6)
34619            ".short -996",
34620            "move.l (%sp)+, %a6",
34621            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34622            basereg = in(reg) GfxBase,
34623            in("a0") cm,
34624            in("d0") n,
34625            in("d1") r,
34626            in("d2") g,
34627            in("d3") b,
34628        );
34629    }
34630}
34631
34632/// libname: "graphics.library" (V39) (Kickstart 3.0)
34633pub unsafe fn ScrollRasterBF(
34634    GfxBase: *mut Library,
34635    rp: *mut RastPort,
34636    dx: LONG,
34637    dy: LONG,
34638    xMin: LONG,
34639    yMin: LONG,
34640    xMax: LONG,
34641    yMax: LONG,
34642) {
34643    unsafe {
34644        asm!(
34645            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34646            ".short 0xc0c0",
34647            "move.l %a6, -(%sp)",
34648            "move.l {basereg}, %a6",
34649            ".short 0x4eae", // jsr -1002(a6)
34650            ".short -1002",
34651            "move.l (%sp)+, %a6",
34652            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34653            basereg = in(reg) GfxBase,
34654            in("a1") rp,
34655            in("d0") dx,
34656            in("d1") dy,
34657            in("d2") xMin,
34658            in("d3") yMin,
34659            in("d4") xMax,
34660            in("d5") yMax,
34661        );
34662    }
34663}
34664
34665/// libname: "graphics.library" (V39) (Kickstart 3.0)
34666pub unsafe fn FindColor(
34667    GfxBase: *mut Library,
34668    cm: *mut ColorMap,
34669    r: ULONG,
34670    g: ULONG,
34671    b: ULONG,
34672    maxcolor: LONG,
34673) -> LONG {
34674    let asm_ret_value: LONG;
34675    unsafe {
34676        asm!(
34677            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34678            ".short 0x40c0",
34679            "move.l %a6, -(%sp)",
34680            "move.l {basereg}, %a6",
34681            ".short 0x4eae", // jsr -1008(a6)
34682            ".short -1008",
34683            "move.l (%sp)+, %a6",
34684            "movem.l (%sp)+, %d1/%a0-%a1",
34685            basereg = in(reg) GfxBase,
34686            in("a3") cm,
34687            in("d1") r,
34688            in("d2") g,
34689            in("d3") b,
34690            in("d4") maxcolor,
34691            out("d0") asm_ret_value,
34692        );
34693    }
34694    asm_ret_value
34695}
34696
34697/// libname: "graphics.library" (V39) (Kickstart 3.0)
34698pub unsafe fn AllocSpriteDataA(
34699    GfxBase: *mut Library,
34700    bm: *const BitMap,
34701    tags: *const TagItem,
34702) -> *mut ExtSprite {
34703    let asm_ret_value: *mut ExtSprite;
34704    unsafe {
34705        asm!(
34706            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34707            ".short 0x40c0",
34708            "move.l %a6, -(%sp)",
34709            "move.l {basereg}, %a6",
34710            ".short 0x4eae", // jsr -1020(a6)
34711            ".short -1020",
34712            "move.l (%sp)+, %a6",
34713            "movem.l (%sp)+, %d1/%a0-%a1",
34714            basereg = in(reg) GfxBase,
34715            in("a2") bm,
34716            in("a1") tags,
34717            out("d0") asm_ret_value,
34718        );
34719    }
34720    asm_ret_value
34721}
34722
34723/// libname: "graphics.library" (V39) (Kickstart 3.0)
34724pub unsafe fn ChangeExtSpriteA(
34725    GfxBase: *mut Library,
34726    vp: *mut ViewPort,
34727    oldsprite: *mut ExtSprite,
34728    newsprite: *mut ExtSprite,
34729    tags: *const TagItem,
34730) -> LONG {
34731    let asm_ret_value: LONG;
34732    unsafe {
34733        asm!(
34734            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34735            ".short 0x40c0",
34736            "move.l %a6, -(%sp)",
34737            "move.l {basereg}, %a6",
34738            ".short 0x4eae", // jsr -1026(a6)
34739            ".short -1026",
34740            "move.l (%sp)+, %a6",
34741            "movem.l (%sp)+, %d1/%a0-%a1",
34742            basereg = in(reg) GfxBase,
34743            in("a0") vp,
34744            in("a1") oldsprite,
34745            in("a2") newsprite,
34746            in("a3") tags,
34747            out("d0") asm_ret_value,
34748        );
34749    }
34750    asm_ret_value
34751}
34752
34753/// libname: "graphics.library" (V39) (Kickstart 3.0)
34754pub unsafe fn FreeSpriteData(GfxBase: *mut Library, sp: *mut ExtSprite) {
34755    unsafe {
34756        asm!(
34757            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34758            ".short 0xc0c0",
34759            "move.l %a6, -(%sp)",
34760            "move.l {basereg}, %a6",
34761            ".short 0x4eae", // jsr -1032(a6)
34762            ".short -1032",
34763            "move.l (%sp)+, %a6",
34764            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34765            basereg = in(reg) GfxBase,
34766            in("a2") sp,
34767        );
34768    }
34769}
34770
34771/// libname: "graphics.library" (V39) (Kickstart 3.0)
34772pub unsafe fn SetRPAttrsA(GfxBase: *mut Library, rp: *mut RastPort, tags: *const TagItem) {
34773    unsafe {
34774        asm!(
34775            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34776            ".short 0xc0c0",
34777            "move.l %a6, -(%sp)",
34778            "move.l {basereg}, %a6",
34779            ".short 0x4eae", // jsr -1038(a6)
34780            ".short -1038",
34781            "move.l (%sp)+, %a6",
34782            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34783            basereg = in(reg) GfxBase,
34784            in("a0") rp,
34785            in("a1") tags,
34786        );
34787    }
34788}
34789
34790/// libname: "graphics.library" (V39) (Kickstart 3.0)
34791pub unsafe fn GetRPAttrsA(GfxBase: *mut Library, rp: *mut RastPort, tags: *const TagItem) {
34792    unsafe {
34793        asm!(
34794            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34795            ".short 0xc0c0",
34796            "move.l %a6, -(%sp)",
34797            "move.l {basereg}, %a6",
34798            ".short 0x4eae", // jsr -1044(a6)
34799            ".short -1044",
34800            "move.l (%sp)+, %a6",
34801            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34802            basereg = in(reg) GfxBase,
34803            in("a0") rp,
34804            in("a1") tags,
34805        );
34806    }
34807}
34808
34809/// libname: "graphics.library" (V39) (Kickstart 3.0)
34810pub unsafe fn BestModeIDA(GfxBase: *mut Library, tags: *const TagItem) -> ULONG {
34811    let asm_ret_value: ULONG;
34812    unsafe {
34813        asm!(
34814            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34815            ".short 0x40c0",
34816            "move.l %a6, -(%sp)",
34817            "move.l {basereg}, %a6",
34818            ".short 0x4eae", // jsr -1050(a6)
34819            ".short -1050",
34820            "move.l (%sp)+, %a6",
34821            "movem.l (%sp)+, %d1/%a0-%a1",
34822            basereg = in(reg) GfxBase,
34823            in("a0") tags,
34824            out("d0") asm_ret_value,
34825        );
34826    }
34827    asm_ret_value
34828}
34829
34830/// libname: "graphics.library" (V40) (Kickstart 3.1)
34831pub unsafe fn WriteChunkyPixels(
34832    GfxBase: *mut Library,
34833    rp: *mut RastPort,
34834    xstart: ULONG,
34835    ystart: ULONG,
34836    xstop: ULONG,
34837    ystop: ULONG,
34838    array: *mut UBYTE,
34839    bytesperrow: LONG,
34840) {
34841    unsafe {
34842        asm!(
34843            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34844            ".short 0xc0c0",
34845            "move.l %a6, -(%sp)",
34846            "move.l {basereg}, %a6",
34847            ".short 0x4eae", // jsr -1056(a6)
34848            ".short -1056",
34849            "move.l (%sp)+, %a6",
34850            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34851            basereg = in(reg) GfxBase,
34852            in("a0") rp,
34853            in("d0") xstart,
34854            in("d1") ystart,
34855            in("d2") xstop,
34856            in("d3") ystop,
34857            in("a2") array,
34858            in("d4") bytesperrow,
34859        );
34860    }
34861}
34862
34863/// libname: "icon.library"
34864pub unsafe fn FreeFreeList(IconBase: *mut Library, freelist: *mut FreeList) {
34865    unsafe {
34866        asm!(
34867            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34868            ".short 0xc0c0",
34869            "move.l %a6, -(%sp)",
34870            "move.l {basereg}, %a6",
34871            ".short 0x4eae", // jsr -54(a6)
34872            ".short -54",
34873            "move.l (%sp)+, %a6",
34874            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34875            basereg = in(reg) IconBase,
34876            in("a0") freelist,
34877        );
34878    }
34879}
34880
34881/// libname: "icon.library"
34882pub unsafe fn AddFreeList(
34883    IconBase: *mut Library,
34884    freelist: *mut FreeList,
34885    mem: CONST_APTR,
34886    size: ULONG,
34887) -> BOOL {
34888    let asm_ret_value: BOOL;
34889    unsafe {
34890        asm!(
34891            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34892            ".short 0x40c0",
34893            "move.l %a6, -(%sp)",
34894            "move.l {basereg}, %a6",
34895            ".short 0x4eae", // jsr -72(a6)
34896            ".short -72",
34897            "move.l (%sp)+, %a6",
34898            "movem.l (%sp)+, %d1/%a0-%a1",
34899            basereg = in(reg) IconBase,
34900            in("a0") freelist,
34901            in("a1") mem,
34902            in("a2") size,
34903            out("d0") asm_ret_value,
34904        );
34905    }
34906    asm_ret_value
34907}
34908
34909/// libname: "icon.library"
34910pub unsafe fn GetDiskObject(IconBase: *mut Library, name: CONST_STRPTR) -> *mut DiskObject {
34911    let asm_ret_value: *mut DiskObject;
34912    unsafe {
34913        asm!(
34914            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34915            ".short 0x40c0",
34916            "move.l %a6, -(%sp)",
34917            "move.l {basereg}, %a6",
34918            ".short 0x4eae", // jsr -78(a6)
34919            ".short -78",
34920            "move.l (%sp)+, %a6",
34921            "movem.l (%sp)+, %d1/%a0-%a1",
34922            basereg = in(reg) IconBase,
34923            in("a0") name,
34924            out("d0") asm_ret_value,
34925        );
34926    }
34927    asm_ret_value
34928}
34929
34930/// libname: "icon.library"
34931pub unsafe fn PutDiskObject(
34932    IconBase: *mut Library,
34933    name: CONST_STRPTR,
34934    diskobj: *const DiskObject,
34935) -> BOOL {
34936    let asm_ret_value: BOOL;
34937    unsafe {
34938        asm!(
34939            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34940            ".short 0x40c0",
34941            "move.l %a6, -(%sp)",
34942            "move.l {basereg}, %a6",
34943            ".short 0x4eae", // jsr -84(a6)
34944            ".short -84",
34945            "move.l (%sp)+, %a6",
34946            "movem.l (%sp)+, %d1/%a0-%a1",
34947            basereg = in(reg) IconBase,
34948            in("a0") name,
34949            in("a1") diskobj,
34950            out("d0") asm_ret_value,
34951        );
34952    }
34953    asm_ret_value
34954}
34955
34956/// libname: "icon.library"
34957pub unsafe fn FreeDiskObject(IconBase: *mut Library, diskobj: *mut DiskObject) {
34958    unsafe {
34959        asm!(
34960            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
34961            ".short 0xc0c0",
34962            "move.l %a6, -(%sp)",
34963            "move.l {basereg}, %a6",
34964            ".short 0x4eae", // jsr -90(a6)
34965            ".short -90",
34966            "move.l (%sp)+, %a6",
34967            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
34968            basereg = in(reg) IconBase,
34969            in("a0") diskobj,
34970        );
34971    }
34972}
34973
34974/// libname: "icon.library"
34975pub unsafe fn FindToolType(
34976    IconBase: *mut Library,
34977    toolTypeArray: *mut CONST_STRPTR,
34978    typeName: CONST_STRPTR,
34979) -> *mut UBYTE {
34980    let asm_ret_value: *mut UBYTE;
34981    unsafe {
34982        asm!(
34983            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
34984            ".short 0x40c0",
34985            "move.l %a6, -(%sp)",
34986            "move.l {basereg}, %a6",
34987            ".short 0x4eae", // jsr -96(a6)
34988            ".short -96",
34989            "move.l (%sp)+, %a6",
34990            "movem.l (%sp)+, %d1/%a0-%a1",
34991            basereg = in(reg) IconBase,
34992            in("a0") toolTypeArray,
34993            in("a1") typeName,
34994            out("d0") asm_ret_value,
34995        );
34996    }
34997    asm_ret_value
34998}
34999
35000/// libname: "icon.library"
35001pub unsafe fn MatchToolValue(
35002    IconBase: *mut Library,
35003    typeString: CONST_STRPTR,
35004    value: CONST_STRPTR,
35005) -> BOOL {
35006    let asm_ret_value: BOOL;
35007    unsafe {
35008        asm!(
35009            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35010            ".short 0x40c0",
35011            "move.l %a6, -(%sp)",
35012            "move.l {basereg}, %a6",
35013            ".short 0x4eae", // jsr -102(a6)
35014            ".short -102",
35015            "move.l (%sp)+, %a6",
35016            "movem.l (%sp)+, %d1/%a0-%a1",
35017            basereg = in(reg) IconBase,
35018            in("a0") typeString,
35019            in("a1") value,
35020            out("d0") asm_ret_value,
35021        );
35022    }
35023    asm_ret_value
35024}
35025
35026/// libname: "icon.library"
35027pub unsafe fn BumpRevision(
35028    IconBase: *mut Library,
35029    newname: STRPTR,
35030    oldname: CONST_STRPTR,
35031) -> STRPTR {
35032    let asm_ret_value: STRPTR;
35033    unsafe {
35034        asm!(
35035            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35036            ".short 0x40c0",
35037            "move.l %a6, -(%sp)",
35038            "move.l {basereg}, %a6",
35039            ".short 0x4eae", // jsr -108(a6)
35040            ".short -108",
35041            "move.l (%sp)+, %a6",
35042            "movem.l (%sp)+, %d1/%a0-%a1",
35043            basereg = in(reg) IconBase,
35044            in("a0") newname,
35045            in("a1") oldname,
35046            out("d0") asm_ret_value,
35047        );
35048    }
35049    asm_ret_value
35050}
35051
35052/// libname: "icon.library" (V36) (Kickstart 2.0)
35053pub unsafe fn FreeAlloc(
35054    IconBase: *mut Library,
35055    free: *mut FreeList,
35056    len: ULONG,
35057    type_: ULONG,
35058) -> APTR {
35059    let asm_ret_value: APTR;
35060    unsafe {
35061        asm!(
35062            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35063            ".short 0x40c0",
35064            "move.l %a6, -(%sp)",
35065            "move.l {basereg}, %a6",
35066            ".short 0x4eae", // jsr -114(a6)
35067            ".short -114",
35068            "move.l (%sp)+, %a6",
35069            "movem.l (%sp)+, %d1/%a0-%a1",
35070            basereg = in(reg) IconBase,
35071            in("a0") free,
35072            in("a1") len,
35073            in("a2") type_,
35074            out("d0") asm_ret_value,
35075        );
35076    }
35077    asm_ret_value
35078}
35079
35080/// libname: "icon.library" (V36) (Kickstart 2.0)
35081pub unsafe fn GetDefDiskObject(IconBase: *mut Library, type_: LONG) -> *mut DiskObject {
35082    let asm_ret_value: *mut DiskObject;
35083    unsafe {
35084        asm!(
35085            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35086            ".short 0x40c0",
35087            "move.l %a6, -(%sp)",
35088            "move.l {basereg}, %a6",
35089            ".short 0x4eae", // jsr -120(a6)
35090            ".short -120",
35091            "move.l (%sp)+, %a6",
35092            "movem.l (%sp)+, %d1/%a0-%a1",
35093            basereg = in(reg) IconBase,
35094            in("d0") type_,
35095            lateout("d0") asm_ret_value,
35096        );
35097    }
35098    asm_ret_value
35099}
35100
35101/// libname: "icon.library" (V36) (Kickstart 2.0)
35102pub unsafe fn PutDefDiskObject(IconBase: *mut Library, diskObject: *const DiskObject) -> BOOL {
35103    let asm_ret_value: BOOL;
35104    unsafe {
35105        asm!(
35106            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35107            ".short 0x40c0",
35108            "move.l %a6, -(%sp)",
35109            "move.l {basereg}, %a6",
35110            ".short 0x4eae", // jsr -126(a6)
35111            ".short -126",
35112            "move.l (%sp)+, %a6",
35113            "movem.l (%sp)+, %d1/%a0-%a1",
35114            basereg = in(reg) IconBase,
35115            in("a0") diskObject,
35116            out("d0") asm_ret_value,
35117        );
35118    }
35119    asm_ret_value
35120}
35121
35122/// libname: "icon.library" (V36) (Kickstart 2.0)
35123pub unsafe fn GetDiskObjectNew(IconBase: *mut Library, name: CONST_STRPTR) -> *mut DiskObject {
35124    let asm_ret_value: *mut DiskObject;
35125    unsafe {
35126        asm!(
35127            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35128            ".short 0x40c0",
35129            "move.l %a6, -(%sp)",
35130            "move.l {basereg}, %a6",
35131            ".short 0x4eae", // jsr -132(a6)
35132            ".short -132",
35133            "move.l (%sp)+, %a6",
35134            "movem.l (%sp)+, %d1/%a0-%a1",
35135            basereg = in(reg) IconBase,
35136            in("a0") name,
35137            out("d0") asm_ret_value,
35138        );
35139    }
35140    asm_ret_value
35141}
35142
35143/// libname: "icon.library" (V37) (Kickstart 2.04)
35144pub unsafe fn DeleteDiskObject(IconBase: *mut Library, name: CONST_STRPTR) -> BOOL {
35145    let asm_ret_value: BOOL;
35146    unsafe {
35147        asm!(
35148            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35149            ".short 0x40c0",
35150            "move.l %a6, -(%sp)",
35151            "move.l {basereg}, %a6",
35152            ".short 0x4eae", // jsr -138(a6)
35153            ".short -138",
35154            "move.l (%sp)+, %a6",
35155            "movem.l (%sp)+, %d1/%a0-%a1",
35156            basereg = in(reg) IconBase,
35157            in("a0") name,
35158            out("d0") asm_ret_value,
35159        );
35160    }
35161    asm_ret_value
35162}
35163
35164/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35165pub unsafe fn FreeFree(IconBase: *mut Library, fl: *mut FreeList, address: APTR) {
35166    unsafe {
35167        asm!(
35168            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
35169            ".short 0xc0c0",
35170            "move.l %a6, -(%sp)",
35171            "move.l {basereg}, %a6",
35172            ".short 0x4eae", // jsr -144(a6)
35173            ".short -144",
35174            "move.l (%sp)+, %a6",
35175            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
35176            basereg = in(reg) IconBase,
35177            in("a0") fl,
35178            in("a1") address,
35179        );
35180    }
35181}
35182
35183/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35184pub unsafe fn DupDiskObjectA(
35185    IconBase: *mut Library,
35186    diskObject: *const DiskObject,
35187    tags: *const TagItem,
35188) -> *mut DiskObject {
35189    let asm_ret_value: *mut DiskObject;
35190    unsafe {
35191        asm!(
35192            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35193            ".short 0x40c0",
35194            "move.l %a6, -(%sp)",
35195            "move.l {basereg}, %a6",
35196            ".short 0x4eae", // jsr -150(a6)
35197            ".short -150",
35198            "move.l (%sp)+, %a6",
35199            "movem.l (%sp)+, %d1/%a0-%a1",
35200            basereg = in(reg) IconBase,
35201            in("a0") diskObject,
35202            in("a1") tags,
35203            out("d0") asm_ret_value,
35204        );
35205    }
35206    asm_ret_value
35207}
35208
35209/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35210pub unsafe fn IconControlA(
35211    IconBase: *mut Library,
35212    icon: *mut DiskObject,
35213    tags: *const TagItem,
35214) -> ULONG {
35215    let asm_ret_value: ULONG;
35216    unsafe {
35217        asm!(
35218            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35219            ".short 0x40c0",
35220            "move.l %a6, -(%sp)",
35221            "move.l {basereg}, %a6",
35222            ".short 0x4eae", // jsr -156(a6)
35223            ".short -156",
35224            "move.l (%sp)+, %a6",
35225            "movem.l (%sp)+, %d1/%a0-%a1",
35226            basereg = in(reg) IconBase,
35227            in("a0") icon,
35228            in("a1") tags,
35229            out("d0") asm_ret_value,
35230        );
35231    }
35232    asm_ret_value
35233}
35234
35235/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35236pub unsafe fn DrawIconStateA(
35237    IconBase: *mut Library,
35238    rp: *mut RastPort,
35239    icon: *const DiskObject,
35240    label: CONST_STRPTR,
35241    leftOffset: LONG,
35242    topOffset: LONG,
35243    state: ULONG,
35244    tags: *const TagItem,
35245) {
35246    unsafe {
35247        asm!(
35248            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
35249            ".short 0xc0c0",
35250            "move.l %a6, -(%sp)",
35251            "move.l {basereg}, %a6",
35252            ".short 0x4eae", // jsr -162(a6)
35253            ".short -162",
35254            "move.l (%sp)+, %a6",
35255            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
35256            basereg = in(reg) IconBase,
35257            in("a0") rp,
35258            in("a1") icon,
35259            in("a2") label,
35260            in("d0") leftOffset,
35261            in("d1") topOffset,
35262            in("d2") state,
35263            in("a3") tags,
35264        );
35265    }
35266}
35267
35268/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35269pub unsafe fn GetIconRectangleA(
35270    IconBase: *mut Library,
35271    rp: *mut RastPort,
35272    icon: *const DiskObject,
35273    label: CONST_STRPTR,
35274    rect: *mut Rectangle,
35275    tags: *const TagItem,
35276) -> BOOL {
35277    let asm_ret_value: BOOL;
35278    unsafe {
35279        asm!(
35280            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35281            ".short 0x40c0",
35282            "move.l %a6, -(%sp)",
35283            "move.l %a4, -(%sp)",
35284            "move.l {basereg}, %a6",
35285            "move.l {a4reg}, %a4",
35286            ".short 0x4eae", // jsr -168(a6)
35287            ".short -168",
35288            "move.l (%sp)+, %a4",
35289            "move.l (%sp)+, %a6",
35290            "movem.l (%sp)+, %d1/%a0-%a1",
35291            basereg = in(reg) IconBase,
35292            in("a0") rp,
35293            in("a1") icon,
35294            in("a2") label,
35295            in("a3") rect,
35296            a4reg = in(reg) tags,
35297            out("d0") asm_ret_value,
35298        );
35299    }
35300    asm_ret_value
35301}
35302
35303/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35304pub unsafe fn NewDiskObject(IconBase: *mut Library, type_: LONG) -> *mut DiskObject {
35305    let asm_ret_value: *mut DiskObject;
35306    unsafe {
35307        asm!(
35308            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35309            ".short 0x40c0",
35310            "move.l %a6, -(%sp)",
35311            "move.l {basereg}, %a6",
35312            ".short 0x4eae", // jsr -174(a6)
35313            ".short -174",
35314            "move.l (%sp)+, %a6",
35315            "movem.l (%sp)+, %d1/%a0-%a1",
35316            basereg = in(reg) IconBase,
35317            in("d0") type_,
35318            lateout("d0") asm_ret_value,
35319        );
35320    }
35321    asm_ret_value
35322}
35323
35324/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35325pub unsafe fn GetIconTagList(
35326    IconBase: *mut Library,
35327    name: CONST_STRPTR,
35328    tags: *const TagItem,
35329) -> *mut DiskObject {
35330    let asm_ret_value: *mut DiskObject;
35331    unsafe {
35332        asm!(
35333            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35334            ".short 0x40c0",
35335            "move.l %a6, -(%sp)",
35336            "move.l {basereg}, %a6",
35337            ".short 0x4eae", // jsr -180(a6)
35338            ".short -180",
35339            "move.l (%sp)+, %a6",
35340            "movem.l (%sp)+, %d1/%a0-%a1",
35341            basereg = in(reg) IconBase,
35342            in("a0") name,
35343            in("a1") tags,
35344            out("d0") asm_ret_value,
35345        );
35346    }
35347    asm_ret_value
35348}
35349
35350/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35351pub unsafe fn PutIconTagList(
35352    IconBase: *mut Library,
35353    name: CONST_STRPTR,
35354    icon: *const DiskObject,
35355    tags: *const TagItem,
35356) -> BOOL {
35357    let asm_ret_value: BOOL;
35358    unsafe {
35359        asm!(
35360            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35361            ".short 0x40c0",
35362            "move.l %a6, -(%sp)",
35363            "move.l {basereg}, %a6",
35364            ".short 0x4eae", // jsr -186(a6)
35365            ".short -186",
35366            "move.l (%sp)+, %a6",
35367            "movem.l (%sp)+, %d1/%a0-%a1",
35368            basereg = in(reg) IconBase,
35369            in("a0") name,
35370            in("a1") icon,
35371            in("a2") tags,
35372            out("d0") asm_ret_value,
35373        );
35374    }
35375    asm_ret_value
35376}
35377
35378/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35379pub unsafe fn LayoutIconA(
35380    IconBase: *mut Library,
35381    icon: *mut DiskObject,
35382    screen: *mut Screen,
35383    tags: *mut TagItem,
35384) -> BOOL {
35385    let asm_ret_value: BOOL;
35386    unsafe {
35387        asm!(
35388            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35389            ".short 0x40c0",
35390            "move.l %a6, -(%sp)",
35391            "move.l {basereg}, %a6",
35392            ".short 0x4eae", // jsr -192(a6)
35393            ".short -192",
35394            "move.l (%sp)+, %a6",
35395            "movem.l (%sp)+, %d1/%a0-%a1",
35396            basereg = in(reg) IconBase,
35397            in("a0") icon,
35398            in("a1") screen,
35399            in("a2") tags,
35400            out("d0") asm_ret_value,
35401        );
35402    }
35403    asm_ret_value
35404}
35405
35406/// libname: "icon.library" (V44) (Kickstart 3.5 / 1999)
35407pub unsafe fn ChangeToSelectedIconColor(IconBase: *mut Library, cr: *mut ColorRegister) {
35408    unsafe {
35409        asm!(
35410            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
35411            ".short 0xc0c0",
35412            "move.l %a6, -(%sp)",
35413            "move.l {basereg}, %a6",
35414            ".short 0x4eae", // jsr -198(a6)
35415            ".short -198",
35416            "move.l (%sp)+, %a6",
35417            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
35418            basereg = in(reg) IconBase,
35419            in("a0") cr,
35420        );
35421    }
35422}
35423
35424/// libname: "icon.library" (V47) (Kickstart 3.2 / 2020)
35425pub unsafe fn BumpRevisionLength(
35426    IconBase: *mut Library,
35427    newname: STRPTR,
35428    oldname: CONST_STRPTR,
35429    maxLength: ULONG,
35430) -> STRPTR {
35431    let asm_ret_value: STRPTR;
35432    unsafe {
35433        asm!(
35434            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35435            ".short 0x40c0",
35436            "move.l %a6, -(%sp)",
35437            "move.l {basereg}, %a6",
35438            ".short 0x4eae", // jsr -204(a6)
35439            ".short -204",
35440            "move.l (%sp)+, %a6",
35441            "movem.l (%sp)+, %d1/%a0-%a1",
35442            basereg = in(reg) IconBase,
35443            in("a0") newname,
35444            in("a1") oldname,
35445            in("d0") maxLength,
35446            lateout("d0") asm_ret_value,
35447        );
35448    }
35449    asm_ret_value
35450}
35451
35452/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35453pub unsafe fn AllocIFF(IFFParseBase: *mut Library) -> *mut IFFHandle {
35454    let asm_ret_value: *mut IFFHandle;
35455    unsafe {
35456        asm!(
35457            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35458            ".short 0x40c0",
35459            "move.l %a6, -(%sp)",
35460            "move.l {basereg}, %a6",
35461            ".short 0x4eae", // jsr -30(a6)
35462            ".short -30",
35463            "move.l (%sp)+, %a6",
35464            "movem.l (%sp)+, %d1/%a0-%a1",
35465            basereg = in(reg) IFFParseBase,
35466            out("d0") asm_ret_value,
35467        );
35468    }
35469    asm_ret_value
35470}
35471
35472/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35473pub unsafe fn OpenIFF(IFFParseBase: *mut Library, iff: *mut IFFHandle, rwMode: LONG) -> LONG {
35474    let asm_ret_value: LONG;
35475    unsafe {
35476        asm!(
35477            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35478            ".short 0x40c0",
35479            "move.l %a6, -(%sp)",
35480            "move.l {basereg}, %a6",
35481            ".short 0x4eae", // jsr -36(a6)
35482            ".short -36",
35483            "move.l (%sp)+, %a6",
35484            "movem.l (%sp)+, %d1/%a0-%a1",
35485            basereg = in(reg) IFFParseBase,
35486            in("a0") iff,
35487            in("d0") rwMode,
35488            lateout("d0") asm_ret_value,
35489        );
35490    }
35491    asm_ret_value
35492}
35493
35494/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35495pub unsafe fn ParseIFF(IFFParseBase: *mut Library, iff: *mut IFFHandle, control: LONG) -> LONG {
35496    let asm_ret_value: LONG;
35497    unsafe {
35498        asm!(
35499            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35500            ".short 0x40c0",
35501            "move.l %a6, -(%sp)",
35502            "move.l {basereg}, %a6",
35503            ".short 0x4eae", // jsr -42(a6)
35504            ".short -42",
35505            "move.l (%sp)+, %a6",
35506            "movem.l (%sp)+, %d1/%a0-%a1",
35507            basereg = in(reg) IFFParseBase,
35508            in("a0") iff,
35509            in("d0") control,
35510            lateout("d0") asm_ret_value,
35511        );
35512    }
35513    asm_ret_value
35514}
35515
35516/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35517pub unsafe fn CloseIFF(IFFParseBase: *mut Library, iff: *mut IFFHandle) {
35518    unsafe {
35519        asm!(
35520            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
35521            ".short 0xc0c0",
35522            "move.l %a6, -(%sp)",
35523            "move.l {basereg}, %a6",
35524            ".short 0x4eae", // jsr -48(a6)
35525            ".short -48",
35526            "move.l (%sp)+, %a6",
35527            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
35528            basereg = in(reg) IFFParseBase,
35529            in("a0") iff,
35530        );
35531    }
35532}
35533
35534/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35535pub unsafe fn FreeIFF(IFFParseBase: *mut Library, iff: *mut IFFHandle) {
35536    unsafe {
35537        asm!(
35538            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
35539            ".short 0xc0c0",
35540            "move.l %a6, -(%sp)",
35541            "move.l {basereg}, %a6",
35542            ".short 0x4eae", // jsr -54(a6)
35543            ".short -54",
35544            "move.l (%sp)+, %a6",
35545            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
35546            basereg = in(reg) IFFParseBase,
35547            in("a0") iff,
35548        );
35549    }
35550}
35551
35552/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35553pub unsafe fn ReadChunkBytes(
35554    IFFParseBase: *mut Library,
35555    iff: *mut IFFHandle,
35556    buf: APTR,
35557    numBytes: LONG,
35558) -> LONG {
35559    let asm_ret_value: LONG;
35560    unsafe {
35561        asm!(
35562            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35563            ".short 0x40c0",
35564            "move.l %a6, -(%sp)",
35565            "move.l {basereg}, %a6",
35566            ".short 0x4eae", // jsr -60(a6)
35567            ".short -60",
35568            "move.l (%sp)+, %a6",
35569            "movem.l (%sp)+, %d1/%a0-%a1",
35570            basereg = in(reg) IFFParseBase,
35571            in("a0") iff,
35572            in("a1") buf,
35573            in("d0") numBytes,
35574            lateout("d0") asm_ret_value,
35575        );
35576    }
35577    asm_ret_value
35578}
35579
35580/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35581pub unsafe fn WriteChunkBytes(
35582    IFFParseBase: *mut Library,
35583    iff: *mut IFFHandle,
35584    buf: CONST_APTR,
35585    numBytes: LONG,
35586) -> LONG {
35587    let asm_ret_value: LONG;
35588    unsafe {
35589        asm!(
35590            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35591            ".short 0x40c0",
35592            "move.l %a6, -(%sp)",
35593            "move.l {basereg}, %a6",
35594            ".short 0x4eae", // jsr -66(a6)
35595            ".short -66",
35596            "move.l (%sp)+, %a6",
35597            "movem.l (%sp)+, %d1/%a0-%a1",
35598            basereg = in(reg) IFFParseBase,
35599            in("a0") iff,
35600            in("a1") buf,
35601            in("d0") numBytes,
35602            lateout("d0") asm_ret_value,
35603        );
35604    }
35605    asm_ret_value
35606}
35607
35608/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35609pub unsafe fn ReadChunkRecords(
35610    IFFParseBase: *mut Library,
35611    iff: *mut IFFHandle,
35612    buf: APTR,
35613    bytesPerRecord: LONG,
35614    numRecords: LONG,
35615) -> LONG {
35616    let asm_ret_value: LONG;
35617    unsafe {
35618        asm!(
35619            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35620            ".short 0x40c0",
35621            "move.l %a6, -(%sp)",
35622            "move.l {basereg}, %a6",
35623            ".short 0x4eae", // jsr -72(a6)
35624            ".short -72",
35625            "move.l (%sp)+, %a6",
35626            "movem.l (%sp)+, %d1/%a0-%a1",
35627            basereg = in(reg) IFFParseBase,
35628            in("a0") iff,
35629            in("a1") buf,
35630            in("d0") bytesPerRecord,
35631            in("d1") numRecords,
35632            lateout("d0") asm_ret_value,
35633        );
35634    }
35635    asm_ret_value
35636}
35637
35638/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35639pub unsafe fn WriteChunkRecords(
35640    IFFParseBase: *mut Library,
35641    iff: *mut IFFHandle,
35642    buf: CONST_APTR,
35643    bytesPerRecord: LONG,
35644    numRecords: LONG,
35645) -> LONG {
35646    let asm_ret_value: LONG;
35647    unsafe {
35648        asm!(
35649            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35650            ".short 0x40c0",
35651            "move.l %a6, -(%sp)",
35652            "move.l {basereg}, %a6",
35653            ".short 0x4eae", // jsr -78(a6)
35654            ".short -78",
35655            "move.l (%sp)+, %a6",
35656            "movem.l (%sp)+, %d1/%a0-%a1",
35657            basereg = in(reg) IFFParseBase,
35658            in("a0") iff,
35659            in("a1") buf,
35660            in("d0") bytesPerRecord,
35661            in("d1") numRecords,
35662            lateout("d0") asm_ret_value,
35663        );
35664    }
35665    asm_ret_value
35666}
35667
35668/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35669pub unsafe fn PushChunk(
35670    IFFParseBase: *mut Library,
35671    iff: *mut IFFHandle,
35672    type_: LONG,
35673    id: LONG,
35674    size: LONG,
35675) -> LONG {
35676    let asm_ret_value: LONG;
35677    unsafe {
35678        asm!(
35679            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35680            ".short 0x40c0",
35681            "move.l %a6, -(%sp)",
35682            "move.l {basereg}, %a6",
35683            ".short 0x4eae", // jsr -84(a6)
35684            ".short -84",
35685            "move.l (%sp)+, %a6",
35686            "movem.l (%sp)+, %d1/%a0-%a1",
35687            basereg = in(reg) IFFParseBase,
35688            in("a0") iff,
35689            in("d0") type_,
35690            in("d1") id,
35691            in("d2") size,
35692            lateout("d0") asm_ret_value,
35693        );
35694    }
35695    asm_ret_value
35696}
35697
35698/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35699pub unsafe fn PopChunk(IFFParseBase: *mut Library, iff: *mut IFFHandle) -> LONG {
35700    let asm_ret_value: LONG;
35701    unsafe {
35702        asm!(
35703            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35704            ".short 0x40c0",
35705            "move.l %a6, -(%sp)",
35706            "move.l {basereg}, %a6",
35707            ".short 0x4eae", // jsr -90(a6)
35708            ".short -90",
35709            "move.l (%sp)+, %a6",
35710            "movem.l (%sp)+, %d1/%a0-%a1",
35711            basereg = in(reg) IFFParseBase,
35712            in("a0") iff,
35713            out("d0") asm_ret_value,
35714        );
35715    }
35716    asm_ret_value
35717}
35718
35719/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35720pub unsafe fn EntryHandler(
35721    IFFParseBase: *mut Library,
35722    iff: *mut IFFHandle,
35723    type_: LONG,
35724    id: LONG,
35725    position: LONG,
35726    handler: *mut Hook,
35727    object: APTR,
35728) -> LONG {
35729    let asm_ret_value: LONG;
35730    unsafe {
35731        asm!(
35732            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35733            ".short 0x40c0",
35734            "move.l %a6, -(%sp)",
35735            "move.l {basereg}, %a6",
35736            ".short 0x4eae", // jsr -102(a6)
35737            ".short -102",
35738            "move.l (%sp)+, %a6",
35739            "movem.l (%sp)+, %d1/%a0-%a1",
35740            basereg = in(reg) IFFParseBase,
35741            in("a0") iff,
35742            in("d0") type_,
35743            in("d1") id,
35744            in("d2") position,
35745            in("a1") handler,
35746            in("a2") object,
35747            lateout("d0") asm_ret_value,
35748        );
35749    }
35750    asm_ret_value
35751}
35752
35753/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35754pub unsafe fn ExitHandler(
35755    IFFParseBase: *mut Library,
35756    iff: *mut IFFHandle,
35757    type_: LONG,
35758    id: LONG,
35759    position: LONG,
35760    handler: *mut Hook,
35761    object: APTR,
35762) -> LONG {
35763    let asm_ret_value: LONG;
35764    unsafe {
35765        asm!(
35766            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35767            ".short 0x40c0",
35768            "move.l %a6, -(%sp)",
35769            "move.l {basereg}, %a6",
35770            ".short 0x4eae", // jsr -108(a6)
35771            ".short -108",
35772            "move.l (%sp)+, %a6",
35773            "movem.l (%sp)+, %d1/%a0-%a1",
35774            basereg = in(reg) IFFParseBase,
35775            in("a0") iff,
35776            in("d0") type_,
35777            in("d1") id,
35778            in("d2") position,
35779            in("a1") handler,
35780            in("a2") object,
35781            lateout("d0") asm_ret_value,
35782        );
35783    }
35784    asm_ret_value
35785}
35786
35787/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35788pub unsafe fn PropChunk(
35789    IFFParseBase: *mut Library,
35790    iff: *mut IFFHandle,
35791    type_: LONG,
35792    id: LONG,
35793) -> LONG {
35794    let asm_ret_value: LONG;
35795    unsafe {
35796        asm!(
35797            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35798            ".short 0x40c0",
35799            "move.l %a6, -(%sp)",
35800            "move.l {basereg}, %a6",
35801            ".short 0x4eae", // jsr -114(a6)
35802            ".short -114",
35803            "move.l (%sp)+, %a6",
35804            "movem.l (%sp)+, %d1/%a0-%a1",
35805            basereg = in(reg) IFFParseBase,
35806            in("a0") iff,
35807            in("d0") type_,
35808            in("d1") id,
35809            lateout("d0") asm_ret_value,
35810        );
35811    }
35812    asm_ret_value
35813}
35814
35815/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35816pub unsafe fn PropChunks(
35817    IFFParseBase: *mut Library,
35818    iff: *mut IFFHandle,
35819    propArray: *const LONG,
35820    numPairs: LONG,
35821) -> LONG {
35822    let asm_ret_value: LONG;
35823    unsafe {
35824        asm!(
35825            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35826            ".short 0x40c0",
35827            "move.l %a6, -(%sp)",
35828            "move.l {basereg}, %a6",
35829            ".short 0x4eae", // jsr -120(a6)
35830            ".short -120",
35831            "move.l (%sp)+, %a6",
35832            "movem.l (%sp)+, %d1/%a0-%a1",
35833            basereg = in(reg) IFFParseBase,
35834            in("a0") iff,
35835            in("a1") propArray,
35836            in("d0") numPairs,
35837            lateout("d0") asm_ret_value,
35838        );
35839    }
35840    asm_ret_value
35841}
35842
35843/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35844pub unsafe fn StopChunk(
35845    IFFParseBase: *mut Library,
35846    iff: *mut IFFHandle,
35847    type_: LONG,
35848    id: LONG,
35849) -> LONG {
35850    let asm_ret_value: LONG;
35851    unsafe {
35852        asm!(
35853            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35854            ".short 0x40c0",
35855            "move.l %a6, -(%sp)",
35856            "move.l {basereg}, %a6",
35857            ".short 0x4eae", // jsr -126(a6)
35858            ".short -126",
35859            "move.l (%sp)+, %a6",
35860            "movem.l (%sp)+, %d1/%a0-%a1",
35861            basereg = in(reg) IFFParseBase,
35862            in("a0") iff,
35863            in("d0") type_,
35864            in("d1") id,
35865            lateout("d0") asm_ret_value,
35866        );
35867    }
35868    asm_ret_value
35869}
35870
35871/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35872pub unsafe fn StopChunks(
35873    IFFParseBase: *mut Library,
35874    iff: *mut IFFHandle,
35875    propArray: *const LONG,
35876    numPairs: LONG,
35877) -> LONG {
35878    let asm_ret_value: LONG;
35879    unsafe {
35880        asm!(
35881            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35882            ".short 0x40c0",
35883            "move.l %a6, -(%sp)",
35884            "move.l {basereg}, %a6",
35885            ".short 0x4eae", // jsr -132(a6)
35886            ".short -132",
35887            "move.l (%sp)+, %a6",
35888            "movem.l (%sp)+, %d1/%a0-%a1",
35889            basereg = in(reg) IFFParseBase,
35890            in("a0") iff,
35891            in("a1") propArray,
35892            in("d0") numPairs,
35893            lateout("d0") asm_ret_value,
35894        );
35895    }
35896    asm_ret_value
35897}
35898
35899/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35900pub unsafe fn CollectionChunk(
35901    IFFParseBase: *mut Library,
35902    iff: *mut IFFHandle,
35903    type_: LONG,
35904    id: LONG,
35905) -> LONG {
35906    let asm_ret_value: LONG;
35907    unsafe {
35908        asm!(
35909            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35910            ".short 0x40c0",
35911            "move.l %a6, -(%sp)",
35912            "move.l {basereg}, %a6",
35913            ".short 0x4eae", // jsr -138(a6)
35914            ".short -138",
35915            "move.l (%sp)+, %a6",
35916            "movem.l (%sp)+, %d1/%a0-%a1",
35917            basereg = in(reg) IFFParseBase,
35918            in("a0") iff,
35919            in("d0") type_,
35920            in("d1") id,
35921            lateout("d0") asm_ret_value,
35922        );
35923    }
35924    asm_ret_value
35925}
35926
35927/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35928pub unsafe fn CollectionChunks(
35929    IFFParseBase: *mut Library,
35930    iff: *mut IFFHandle,
35931    propArray: *const LONG,
35932    numPairs: LONG,
35933) -> LONG {
35934    let asm_ret_value: LONG;
35935    unsafe {
35936        asm!(
35937            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35938            ".short 0x40c0",
35939            "move.l %a6, -(%sp)",
35940            "move.l {basereg}, %a6",
35941            ".short 0x4eae", // jsr -144(a6)
35942            ".short -144",
35943            "move.l (%sp)+, %a6",
35944            "movem.l (%sp)+, %d1/%a0-%a1",
35945            basereg = in(reg) IFFParseBase,
35946            in("a0") iff,
35947            in("a1") propArray,
35948            in("d0") numPairs,
35949            lateout("d0") asm_ret_value,
35950        );
35951    }
35952    asm_ret_value
35953}
35954
35955/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35956pub unsafe fn StopOnExit(
35957    IFFParseBase: *mut Library,
35958    iff: *mut IFFHandle,
35959    type_: LONG,
35960    id: LONG,
35961) -> LONG {
35962    let asm_ret_value: LONG;
35963    unsafe {
35964        asm!(
35965            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35966            ".short 0x40c0",
35967            "move.l %a6, -(%sp)",
35968            "move.l {basereg}, %a6",
35969            ".short 0x4eae", // jsr -150(a6)
35970            ".short -150",
35971            "move.l (%sp)+, %a6",
35972            "movem.l (%sp)+, %d1/%a0-%a1",
35973            basereg = in(reg) IFFParseBase,
35974            in("a0") iff,
35975            in("d0") type_,
35976            in("d1") id,
35977            lateout("d0") asm_ret_value,
35978        );
35979    }
35980    asm_ret_value
35981}
35982
35983/// libname: "iffparse.library" (V36) (Kickstart 2.0)
35984pub unsafe fn FindProp(
35985    IFFParseBase: *mut Library,
35986    iff: *mut IFFHandle,
35987    type_: LONG,
35988    id: LONG,
35989) -> *mut StoredProperty {
35990    let asm_ret_value: *mut StoredProperty;
35991    unsafe {
35992        asm!(
35993            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
35994            ".short 0x40c0",
35995            "move.l %a6, -(%sp)",
35996            "move.l {basereg}, %a6",
35997            ".short 0x4eae", // jsr -156(a6)
35998            ".short -156",
35999            "move.l (%sp)+, %a6",
36000            "movem.l (%sp)+, %d1/%a0-%a1",
36001            basereg = in(reg) IFFParseBase,
36002            in("a0") iff,
36003            in("d0") type_,
36004            in("d1") id,
36005            lateout("d0") asm_ret_value,
36006        );
36007    }
36008    asm_ret_value
36009}
36010
36011/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36012pub unsafe fn FindCollection(
36013    IFFParseBase: *mut Library,
36014    iff: *mut IFFHandle,
36015    type_: LONG,
36016    id: LONG,
36017) -> *mut CollectionItem {
36018    let asm_ret_value: *mut CollectionItem;
36019    unsafe {
36020        asm!(
36021            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36022            ".short 0x40c0",
36023            "move.l %a6, -(%sp)",
36024            "move.l {basereg}, %a6",
36025            ".short 0x4eae", // jsr -162(a6)
36026            ".short -162",
36027            "move.l (%sp)+, %a6",
36028            "movem.l (%sp)+, %d1/%a0-%a1",
36029            basereg = in(reg) IFFParseBase,
36030            in("a0") iff,
36031            in("d0") type_,
36032            in("d1") id,
36033            lateout("d0") asm_ret_value,
36034        );
36035    }
36036    asm_ret_value
36037}
36038
36039/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36040pub unsafe fn FindPropContext(IFFParseBase: *mut Library, iff: *mut IFFHandle) -> *mut ContextNode {
36041    let asm_ret_value: *mut ContextNode;
36042    unsafe {
36043        asm!(
36044            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36045            ".short 0x40c0",
36046            "move.l %a6, -(%sp)",
36047            "move.l {basereg}, %a6",
36048            ".short 0x4eae", // jsr -168(a6)
36049            ".short -168",
36050            "move.l (%sp)+, %a6",
36051            "movem.l (%sp)+, %d1/%a0-%a1",
36052            basereg = in(reg) IFFParseBase,
36053            in("a0") iff,
36054            out("d0") asm_ret_value,
36055        );
36056    }
36057    asm_ret_value
36058}
36059
36060/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36061pub unsafe fn CurrentChunk(IFFParseBase: *mut Library, iff: *mut IFFHandle) -> *mut ContextNode {
36062    let asm_ret_value: *mut ContextNode;
36063    unsafe {
36064        asm!(
36065            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36066            ".short 0x40c0",
36067            "move.l %a6, -(%sp)",
36068            "move.l {basereg}, %a6",
36069            ".short 0x4eae", // jsr -174(a6)
36070            ".short -174",
36071            "move.l (%sp)+, %a6",
36072            "movem.l (%sp)+, %d1/%a0-%a1",
36073            basereg = in(reg) IFFParseBase,
36074            in("a0") iff,
36075            out("d0") asm_ret_value,
36076        );
36077    }
36078    asm_ret_value
36079}
36080
36081/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36082pub unsafe fn ParentChunk(
36083    IFFParseBase: *mut Library,
36084    contextNode: *mut ContextNode,
36085) -> *mut ContextNode {
36086    let asm_ret_value: *mut ContextNode;
36087    unsafe {
36088        asm!(
36089            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36090            ".short 0x40c0",
36091            "move.l %a6, -(%sp)",
36092            "move.l {basereg}, %a6",
36093            ".short 0x4eae", // jsr -180(a6)
36094            ".short -180",
36095            "move.l (%sp)+, %a6",
36096            "movem.l (%sp)+, %d1/%a0-%a1",
36097            basereg = in(reg) IFFParseBase,
36098            in("a0") contextNode,
36099            out("d0") asm_ret_value,
36100        );
36101    }
36102    asm_ret_value
36103}
36104
36105/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36106pub unsafe fn AllocLocalItem(
36107    IFFParseBase: *mut Library,
36108    type_: LONG,
36109    id: LONG,
36110    ident: LONG,
36111    dataSize: LONG,
36112) -> *mut LocalContextItem {
36113    let asm_ret_value: *mut LocalContextItem;
36114    unsafe {
36115        asm!(
36116            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36117            ".short 0x40c0",
36118            "move.l %a6, -(%sp)",
36119            "move.l {basereg}, %a6",
36120            ".short 0x4eae", // jsr -186(a6)
36121            ".short -186",
36122            "move.l (%sp)+, %a6",
36123            "movem.l (%sp)+, %d1/%a0-%a1",
36124            basereg = in(reg) IFFParseBase,
36125            in("d0") type_,
36126            in("d1") id,
36127            in("d2") ident,
36128            in("d3") dataSize,
36129            lateout("d0") asm_ret_value,
36130        );
36131    }
36132    asm_ret_value
36133}
36134
36135/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36136pub unsafe fn LocalItemData(IFFParseBase: *mut Library, localItem: *mut LocalContextItem) -> APTR {
36137    let asm_ret_value: APTR;
36138    unsafe {
36139        asm!(
36140            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36141            ".short 0x40c0",
36142            "move.l %a6, -(%sp)",
36143            "move.l {basereg}, %a6",
36144            ".short 0x4eae", // jsr -192(a6)
36145            ".short -192",
36146            "move.l (%sp)+, %a6",
36147            "movem.l (%sp)+, %d1/%a0-%a1",
36148            basereg = in(reg) IFFParseBase,
36149            in("a0") localItem,
36150            out("d0") asm_ret_value,
36151        );
36152    }
36153    asm_ret_value
36154}
36155
36156/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36157pub unsafe fn SetLocalItemPurge(
36158    IFFParseBase: *mut Library,
36159    localItem: *mut LocalContextItem,
36160    purgeHook: *mut Hook,
36161) {
36162    unsafe {
36163        asm!(
36164            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36165            ".short 0xc0c0",
36166            "move.l %a6, -(%sp)",
36167            "move.l {basereg}, %a6",
36168            ".short 0x4eae", // jsr -198(a6)
36169            ".short -198",
36170            "move.l (%sp)+, %a6",
36171            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36172            basereg = in(reg) IFFParseBase,
36173            in("a0") localItem,
36174            in("a1") purgeHook,
36175        );
36176    }
36177}
36178
36179/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36180pub unsafe fn FreeLocalItem(IFFParseBase: *mut Library, localItem: *mut LocalContextItem) {
36181    unsafe {
36182        asm!(
36183            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36184            ".short 0xc0c0",
36185            "move.l %a6, -(%sp)",
36186            "move.l {basereg}, %a6",
36187            ".short 0x4eae", // jsr -204(a6)
36188            ".short -204",
36189            "move.l (%sp)+, %a6",
36190            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36191            basereg = in(reg) IFFParseBase,
36192            in("a0") localItem,
36193        );
36194    }
36195}
36196
36197/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36198pub unsafe fn FindLocalItem(
36199    IFFParseBase: *mut Library,
36200    iff: *mut IFFHandle,
36201    type_: LONG,
36202    id: LONG,
36203    ident: LONG,
36204) -> *mut LocalContextItem {
36205    let asm_ret_value: *mut LocalContextItem;
36206    unsafe {
36207        asm!(
36208            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36209            ".short 0x40c0",
36210            "move.l %a6, -(%sp)",
36211            "move.l {basereg}, %a6",
36212            ".short 0x4eae", // jsr -210(a6)
36213            ".short -210",
36214            "move.l (%sp)+, %a6",
36215            "movem.l (%sp)+, %d1/%a0-%a1",
36216            basereg = in(reg) IFFParseBase,
36217            in("a0") iff,
36218            in("d0") type_,
36219            in("d1") id,
36220            in("d2") ident,
36221            lateout("d0") asm_ret_value,
36222        );
36223    }
36224    asm_ret_value
36225}
36226
36227/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36228pub unsafe fn StoreLocalItem(
36229    IFFParseBase: *mut Library,
36230    iff: *mut IFFHandle,
36231    localItem: *mut LocalContextItem,
36232    position: LONG,
36233) -> LONG {
36234    let asm_ret_value: LONG;
36235    unsafe {
36236        asm!(
36237            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36238            ".short 0x40c0",
36239            "move.l %a6, -(%sp)",
36240            "move.l {basereg}, %a6",
36241            ".short 0x4eae", // jsr -216(a6)
36242            ".short -216",
36243            "move.l (%sp)+, %a6",
36244            "movem.l (%sp)+, %d1/%a0-%a1",
36245            basereg = in(reg) IFFParseBase,
36246            in("a0") iff,
36247            in("a1") localItem,
36248            in("d0") position,
36249            lateout("d0") asm_ret_value,
36250        );
36251    }
36252    asm_ret_value
36253}
36254
36255/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36256pub unsafe fn StoreItemInContext(
36257    IFFParseBase: *mut Library,
36258    iff: *mut IFFHandle,
36259    localItem: *mut LocalContextItem,
36260    contextNode: *mut ContextNode,
36261) {
36262    unsafe {
36263        asm!(
36264            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36265            ".short 0xc0c0",
36266            "move.l %a6, -(%sp)",
36267            "move.l {basereg}, %a6",
36268            ".short 0x4eae", // jsr -222(a6)
36269            ".short -222",
36270            "move.l (%sp)+, %a6",
36271            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36272            basereg = in(reg) IFFParseBase,
36273            in("a0") iff,
36274            in("a1") localItem,
36275            in("a2") contextNode,
36276        );
36277    }
36278}
36279
36280/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36281pub unsafe fn InitIFF(
36282    IFFParseBase: *mut Library,
36283    iff: *mut IFFHandle,
36284    flags: LONG,
36285    streamHook: *mut Hook,
36286) {
36287    unsafe {
36288        asm!(
36289            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36290            ".short 0xc0c0",
36291            "move.l %a6, -(%sp)",
36292            "move.l {basereg}, %a6",
36293            ".short 0x4eae", // jsr -228(a6)
36294            ".short -228",
36295            "move.l (%sp)+, %a6",
36296            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36297            basereg = in(reg) IFFParseBase,
36298            in("a0") iff,
36299            in("d0") flags,
36300            in("a1") streamHook,
36301        );
36302    }
36303}
36304
36305/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36306pub unsafe fn InitIFFasDOS(IFFParseBase: *mut Library, iff: *mut IFFHandle) {
36307    unsafe {
36308        asm!(
36309            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36310            ".short 0xc0c0",
36311            "move.l %a6, -(%sp)",
36312            "move.l {basereg}, %a6",
36313            ".short 0x4eae", // jsr -234(a6)
36314            ".short -234",
36315            "move.l (%sp)+, %a6",
36316            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36317            basereg = in(reg) IFFParseBase,
36318            in("a0") iff,
36319        );
36320    }
36321}
36322
36323/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36324pub unsafe fn InitIFFasClip(IFFParseBase: *mut Library, iff: *mut IFFHandle) {
36325    unsafe {
36326        asm!(
36327            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36328            ".short 0xc0c0",
36329            "move.l %a6, -(%sp)",
36330            "move.l {basereg}, %a6",
36331            ".short 0x4eae", // jsr -240(a6)
36332            ".short -240",
36333            "move.l (%sp)+, %a6",
36334            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36335            basereg = in(reg) IFFParseBase,
36336            in("a0") iff,
36337        );
36338    }
36339}
36340
36341/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36342pub unsafe fn OpenClipboard(IFFParseBase: *mut Library, unitNumber: LONG) -> *mut ClipboardHandle {
36343    let asm_ret_value: *mut ClipboardHandle;
36344    unsafe {
36345        asm!(
36346            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36347            ".short 0x40c0",
36348            "move.l %a6, -(%sp)",
36349            "move.l {basereg}, %a6",
36350            ".short 0x4eae", // jsr -246(a6)
36351            ".short -246",
36352            "move.l (%sp)+, %a6",
36353            "movem.l (%sp)+, %d1/%a0-%a1",
36354            basereg = in(reg) IFFParseBase,
36355            in("d0") unitNumber,
36356            lateout("d0") asm_ret_value,
36357        );
36358    }
36359    asm_ret_value
36360}
36361
36362/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36363pub unsafe fn CloseClipboard(IFFParseBase: *mut Library, clipHandle: *mut ClipboardHandle) {
36364    unsafe {
36365        asm!(
36366            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36367            ".short 0xc0c0",
36368            "move.l %a6, -(%sp)",
36369            "move.l {basereg}, %a6",
36370            ".short 0x4eae", // jsr -252(a6)
36371            ".short -252",
36372            "move.l (%sp)+, %a6",
36373            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36374            basereg = in(reg) IFFParseBase,
36375            in("a0") clipHandle,
36376        );
36377    }
36378}
36379
36380/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36381pub unsafe fn GoodID(IFFParseBase: *mut Library, id: LONG) -> LONG {
36382    let asm_ret_value: LONG;
36383    unsafe {
36384        asm!(
36385            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36386            ".short 0x40c0",
36387            "move.l %a6, -(%sp)",
36388            "move.l {basereg}, %a6",
36389            ".short 0x4eae", // jsr -258(a6)
36390            ".short -258",
36391            "move.l (%sp)+, %a6",
36392            "movem.l (%sp)+, %d1/%a0-%a1",
36393            basereg = in(reg) IFFParseBase,
36394            in("d0") id,
36395            lateout("d0") asm_ret_value,
36396        );
36397    }
36398    asm_ret_value
36399}
36400
36401/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36402pub unsafe fn GoodType(IFFParseBase: *mut Library, type_: LONG) -> LONG {
36403    let asm_ret_value: LONG;
36404    unsafe {
36405        asm!(
36406            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36407            ".short 0x40c0",
36408            "move.l %a6, -(%sp)",
36409            "move.l {basereg}, %a6",
36410            ".short 0x4eae", // jsr -264(a6)
36411            ".short -264",
36412            "move.l (%sp)+, %a6",
36413            "movem.l (%sp)+, %d1/%a0-%a1",
36414            basereg = in(reg) IFFParseBase,
36415            in("d0") type_,
36416            lateout("d0") asm_ret_value,
36417        );
36418    }
36419    asm_ret_value
36420}
36421
36422/// libname: "iffparse.library" (V36) (Kickstart 2.0)
36423pub unsafe fn IDtoStr(IFFParseBase: *mut Library, id: LONG, buf: STRPTR) -> STRPTR {
36424    let asm_ret_value: STRPTR;
36425    unsafe {
36426        asm!(
36427            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36428            ".short 0x40c0",
36429            "move.l %a6, -(%sp)",
36430            "move.l {basereg}, %a6",
36431            ".short 0x4eae", // jsr -270(a6)
36432            ".short -270",
36433            "move.l (%sp)+, %a6",
36434            "movem.l (%sp)+, %d1/%a0-%a1",
36435            basereg = in(reg) IFFParseBase,
36436            in("d0") id,
36437            in("a0") buf,
36438            lateout("d0") asm_ret_value,
36439        );
36440    }
36441    asm_ret_value
36442}
36443
36444/// libname: "input.device" (V36) (Kickstart 2.0)
36445pub unsafe fn PeekQualifier(InputBase: *mut ::core::ffi::c_void) -> UWORD {
36446    let asm_ret_value: UWORD;
36447    unsafe {
36448        asm!(
36449            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36450            ".short 0x40c0",
36451            "move.l %a6, -(%sp)",
36452            "move.l {basereg}, %a6",
36453            ".short 0x4eae", // jsr -42(a6)
36454            ".short -42",
36455            "move.l (%sp)+, %a6",
36456            "movem.l (%sp)+, %d1/%a0-%a1",
36457            basereg = in(reg) InputBase,
36458            out("d0") asm_ret_value,
36459        );
36460    }
36461    asm_ret_value
36462}
36463
36464/// libname: "integer.gadget" (V40) (Kickstart 3.1)
36465pub unsafe fn INTEGER_GetClass(IntegerBase: *mut ::core::ffi::c_void) -> *mut Class {
36466    let asm_ret_value: *mut Class;
36467    unsafe {
36468        asm!(
36469            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36470            ".short 0x40c0",
36471            "move.l %a6, -(%sp)",
36472            "move.l {basereg}, %a6",
36473            ".short 0x4eae", // jsr -30(a6)
36474            ".short -30",
36475            "move.l (%sp)+, %a6",
36476            "movem.l (%sp)+, %d1/%a0-%a1",
36477            basereg = in(reg) IntegerBase,
36478            out("d0") asm_ret_value,
36479        );
36480    }
36481    asm_ret_value
36482}
36483
36484/// libname: "intuition.library"
36485pub unsafe fn OpenIntuition(IntuitionBase: *mut Library) {
36486    unsafe {
36487        asm!(
36488            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36489            ".short 0xc0c0",
36490            "move.l %a6, -(%sp)",
36491            "move.l {basereg}, %a6",
36492            ".short 0x4eae", // jsr -30(a6)
36493            ".short -30",
36494            "move.l (%sp)+, %a6",
36495            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36496            basereg = in(reg) IntuitionBase,
36497        );
36498    }
36499}
36500
36501/// libname: "intuition.library"
36502pub unsafe fn Intuition(IntuitionBase: *mut Library, iEvent: *mut InputEvent) {
36503    unsafe {
36504        asm!(
36505            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36506            ".short 0xc0c0",
36507            "move.l %a6, -(%sp)",
36508            "move.l {basereg}, %a6",
36509            ".short 0x4eae", // jsr -36(a6)
36510            ".short -36",
36511            "move.l (%sp)+, %a6",
36512            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36513            basereg = in(reg) IntuitionBase,
36514            in("a0") iEvent,
36515        );
36516    }
36517}
36518
36519/// libname: "intuition.library"
36520pub unsafe fn AddGadget(
36521    IntuitionBase: *mut Library,
36522    window: *mut Window,
36523    gadget: *mut Gadget,
36524    position: ULONG,
36525) -> UWORD {
36526    let asm_ret_value: UWORD;
36527    unsafe {
36528        asm!(
36529            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36530            ".short 0x40c0",
36531            "move.l %a6, -(%sp)",
36532            "move.l {basereg}, %a6",
36533            ".short 0x4eae", // jsr -42(a6)
36534            ".short -42",
36535            "move.l (%sp)+, %a6",
36536            "movem.l (%sp)+, %d1/%a0-%a1",
36537            basereg = in(reg) IntuitionBase,
36538            in("a0") window,
36539            in("a1") gadget,
36540            in("d0") position,
36541            lateout("d0") asm_ret_value,
36542        );
36543    }
36544    asm_ret_value
36545}
36546
36547/// libname: "intuition.library"
36548pub unsafe fn ClearDMRequest(IntuitionBase: *mut Library, window: *mut Window) -> BOOL {
36549    let asm_ret_value: BOOL;
36550    unsafe {
36551        asm!(
36552            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36553            ".short 0x40c0",
36554            "move.l %a6, -(%sp)",
36555            "move.l {basereg}, %a6",
36556            ".short 0x4eae", // jsr -48(a6)
36557            ".short -48",
36558            "move.l (%sp)+, %a6",
36559            "movem.l (%sp)+, %d1/%a0-%a1",
36560            basereg = in(reg) IntuitionBase,
36561            in("a0") window,
36562            out("d0") asm_ret_value,
36563        );
36564    }
36565    asm_ret_value
36566}
36567
36568/// libname: "intuition.library"
36569pub unsafe fn ClearMenuStrip(IntuitionBase: *mut Library, window: *mut Window) {
36570    unsafe {
36571        asm!(
36572            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36573            ".short 0xc0c0",
36574            "move.l %a6, -(%sp)",
36575            "move.l {basereg}, %a6",
36576            ".short 0x4eae", // jsr -54(a6)
36577            ".short -54",
36578            "move.l (%sp)+, %a6",
36579            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36580            basereg = in(reg) IntuitionBase,
36581            in("a0") window,
36582        );
36583    }
36584}
36585
36586/// libname: "intuition.library"
36587pub unsafe fn ClearPointer(IntuitionBase: *mut Library, window: *mut Window) {
36588    unsafe {
36589        asm!(
36590            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36591            ".short 0xc0c0",
36592            "move.l %a6, -(%sp)",
36593            "move.l {basereg}, %a6",
36594            ".short 0x4eae", // jsr -60(a6)
36595            ".short -60",
36596            "move.l (%sp)+, %a6",
36597            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36598            basereg = in(reg) IntuitionBase,
36599            in("a0") window,
36600        );
36601    }
36602}
36603
36604/// libname: "intuition.library"
36605pub unsafe fn CloseScreen(IntuitionBase: *mut Library, screen: *mut Screen) -> BOOL {
36606    let asm_ret_value: BOOL;
36607    unsafe {
36608        asm!(
36609            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36610            ".short 0x40c0",
36611            "move.l %a6, -(%sp)",
36612            "move.l {basereg}, %a6",
36613            ".short 0x4eae", // jsr -66(a6)
36614            ".short -66",
36615            "move.l (%sp)+, %a6",
36616            "movem.l (%sp)+, %d1/%a0-%a1",
36617            basereg = in(reg) IntuitionBase,
36618            in("a0") screen,
36619            out("d0") asm_ret_value,
36620        );
36621    }
36622    asm_ret_value
36623}
36624
36625/// libname: "intuition.library"
36626pub unsafe fn CloseWindow(IntuitionBase: *mut Library, window: *mut Window) {
36627    unsafe {
36628        asm!(
36629            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36630            ".short 0xc0c0",
36631            "move.l %a6, -(%sp)",
36632            "move.l {basereg}, %a6",
36633            ".short 0x4eae", // jsr -72(a6)
36634            ".short -72",
36635            "move.l (%sp)+, %a6",
36636            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36637            basereg = in(reg) IntuitionBase,
36638            in("a0") window,
36639        );
36640    }
36641}
36642
36643/// libname: "intuition.library"
36644pub unsafe fn CloseWorkBench(IntuitionBase: *mut Library) -> LONG {
36645    let asm_ret_value: LONG;
36646    unsafe {
36647        asm!(
36648            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36649            ".short 0x40c0",
36650            "move.l %a6, -(%sp)",
36651            "move.l {basereg}, %a6",
36652            ".short 0x4eae", // jsr -78(a6)
36653            ".short -78",
36654            "move.l (%sp)+, %a6",
36655            "movem.l (%sp)+, %d1/%a0-%a1",
36656            basereg = in(reg) IntuitionBase,
36657            out("d0") asm_ret_value,
36658        );
36659    }
36660    asm_ret_value
36661}
36662
36663/// libname: "intuition.library"
36664pub unsafe fn CurrentTime(IntuitionBase: *mut Library, seconds: *mut ULONG, micros: *mut ULONG) {
36665    unsafe {
36666        asm!(
36667            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36668            ".short 0xc0c0",
36669            "move.l %a6, -(%sp)",
36670            "move.l {basereg}, %a6",
36671            ".short 0x4eae", // jsr -84(a6)
36672            ".short -84",
36673            "move.l (%sp)+, %a6",
36674            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36675            basereg = in(reg) IntuitionBase,
36676            in("a0") seconds,
36677            in("a1") micros,
36678        );
36679    }
36680}
36681
36682/// libname: "intuition.library"
36683pub unsafe fn DisplayAlert(
36684    IntuitionBase: *mut Library,
36685    alertNumber: ULONG,
36686    string: CONST_STRPTR,
36687    height: ULONG,
36688) -> BOOL {
36689    let asm_ret_value: BOOL;
36690    unsafe {
36691        asm!(
36692            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36693            ".short 0x40c0",
36694            "move.l %a6, -(%sp)",
36695            "move.l {basereg}, %a6",
36696            ".short 0x4eae", // jsr -90(a6)
36697            ".short -90",
36698            "move.l (%sp)+, %a6",
36699            "movem.l (%sp)+, %d1/%a0-%a1",
36700            basereg = in(reg) IntuitionBase,
36701            in("d0") alertNumber,
36702            in("a0") string,
36703            in("d1") height,
36704            lateout("d0") asm_ret_value,
36705        );
36706    }
36707    asm_ret_value
36708}
36709
36710/// libname: "intuition.library"
36711pub unsafe fn DisplayBeep(IntuitionBase: *mut Library, screen: *mut Screen) {
36712    unsafe {
36713        asm!(
36714            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36715            ".short 0xc0c0",
36716            "move.l %a6, -(%sp)",
36717            "move.l {basereg}, %a6",
36718            ".short 0x4eae", // jsr -96(a6)
36719            ".short -96",
36720            "move.l (%sp)+, %a6",
36721            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36722            basereg = in(reg) IntuitionBase,
36723            in("a0") screen,
36724        );
36725    }
36726}
36727
36728/// libname: "intuition.library"
36729pub unsafe fn DoubleClick(
36730    IntuitionBase: *mut Library,
36731    sSeconds: ULONG,
36732    sMicros: ULONG,
36733    cSeconds: ULONG,
36734    cMicros: ULONG,
36735) -> BOOL {
36736    let asm_ret_value: BOOL;
36737    unsafe {
36738        asm!(
36739            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36740            ".short 0x40c0",
36741            "move.l %a6, -(%sp)",
36742            "move.l {basereg}, %a6",
36743            ".short 0x4eae", // jsr -102(a6)
36744            ".short -102",
36745            "move.l (%sp)+, %a6",
36746            "movem.l (%sp)+, %d1/%a0-%a1",
36747            basereg = in(reg) IntuitionBase,
36748            in("d0") sSeconds,
36749            in("d1") sMicros,
36750            in("d2") cSeconds,
36751            in("d3") cMicros,
36752            lateout("d0") asm_ret_value,
36753        );
36754    }
36755    asm_ret_value
36756}
36757
36758/// libname: "intuition.library"
36759pub unsafe fn DrawBorder(
36760    IntuitionBase: *mut Library,
36761    rp: *mut RastPort,
36762    border: *const Border,
36763    leftOffset: LONG,
36764    topOffset: LONG,
36765) {
36766    unsafe {
36767        asm!(
36768            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36769            ".short 0xc0c0",
36770            "move.l %a6, -(%sp)",
36771            "move.l {basereg}, %a6",
36772            ".short 0x4eae", // jsr -108(a6)
36773            ".short -108",
36774            "move.l (%sp)+, %a6",
36775            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36776            basereg = in(reg) IntuitionBase,
36777            in("a0") rp,
36778            in("a1") border,
36779            in("d0") leftOffset,
36780            in("d1") topOffset,
36781        );
36782    }
36783}
36784
36785/// libname: "intuition.library"
36786pub unsafe fn DrawImage(
36787    IntuitionBase: *mut Library,
36788    rp: *mut RastPort,
36789    image: *const Image,
36790    leftOffset: LONG,
36791    topOffset: LONG,
36792) {
36793    unsafe {
36794        asm!(
36795            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36796            ".short 0xc0c0",
36797            "move.l %a6, -(%sp)",
36798            "move.l {basereg}, %a6",
36799            ".short 0x4eae", // jsr -114(a6)
36800            ".short -114",
36801            "move.l (%sp)+, %a6",
36802            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36803            basereg = in(reg) IntuitionBase,
36804            in("a0") rp,
36805            in("a1") image,
36806            in("d0") leftOffset,
36807            in("d1") topOffset,
36808        );
36809    }
36810}
36811
36812/// libname: "intuition.library"
36813pub unsafe fn EndRequest(
36814    IntuitionBase: *mut Library,
36815    requester: *mut Requester,
36816    window: *mut Window,
36817) {
36818    unsafe {
36819        asm!(
36820            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36821            ".short 0xc0c0",
36822            "move.l %a6, -(%sp)",
36823            "move.l {basereg}, %a6",
36824            ".short 0x4eae", // jsr -120(a6)
36825            ".short -120",
36826            "move.l (%sp)+, %a6",
36827            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36828            basereg = in(reg) IntuitionBase,
36829            in("a0") requester,
36830            in("a1") window,
36831        );
36832    }
36833}
36834
36835/// libname: "intuition.library"
36836pub unsafe fn GetDefPrefs(
36837    IntuitionBase: *mut Library,
36838    preferences: *mut Preferences,
36839    size: LONG,
36840) -> *mut Preferences {
36841    let asm_ret_value: *mut Preferences;
36842    unsafe {
36843        asm!(
36844            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36845            ".short 0x40c0",
36846            "move.l %a6, -(%sp)",
36847            "move.l {basereg}, %a6",
36848            ".short 0x4eae", // jsr -126(a6)
36849            ".short -126",
36850            "move.l (%sp)+, %a6",
36851            "movem.l (%sp)+, %d1/%a0-%a1",
36852            basereg = in(reg) IntuitionBase,
36853            in("a0") preferences,
36854            in("d0") size,
36855            lateout("d0") asm_ret_value,
36856        );
36857    }
36858    asm_ret_value
36859}
36860
36861/// libname: "intuition.library"
36862pub unsafe fn GetPrefs(
36863    IntuitionBase: *mut Library,
36864    preferences: *mut Preferences,
36865    size: LONG,
36866) -> *mut Preferences {
36867    let asm_ret_value: *mut Preferences;
36868    unsafe {
36869        asm!(
36870            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36871            ".short 0x40c0",
36872            "move.l %a6, -(%sp)",
36873            "move.l {basereg}, %a6",
36874            ".short 0x4eae", // jsr -132(a6)
36875            ".short -132",
36876            "move.l (%sp)+, %a6",
36877            "movem.l (%sp)+, %d1/%a0-%a1",
36878            basereg = in(reg) IntuitionBase,
36879            in("a0") preferences,
36880            in("d0") size,
36881            lateout("d0") asm_ret_value,
36882        );
36883    }
36884    asm_ret_value
36885}
36886
36887/// libname: "intuition.library"
36888pub unsafe fn InitRequester(IntuitionBase: *mut Library, requester: *mut Requester) {
36889    unsafe {
36890        asm!(
36891            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36892            ".short 0xc0c0",
36893            "move.l %a6, -(%sp)",
36894            "move.l {basereg}, %a6",
36895            ".short 0x4eae", // jsr -138(a6)
36896            ".short -138",
36897            "move.l (%sp)+, %a6",
36898            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36899            basereg = in(reg) IntuitionBase,
36900            in("a0") requester,
36901        );
36902    }
36903}
36904
36905/// libname: "intuition.library"
36906pub unsafe fn ItemAddress(
36907    IntuitionBase: *mut Library,
36908    menuStrip: *const Menu,
36909    menuNumber: ULONG,
36910) -> *mut MenuItem {
36911    let asm_ret_value: *mut MenuItem;
36912    unsafe {
36913        asm!(
36914            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36915            ".short 0x40c0",
36916            "move.l %a6, -(%sp)",
36917            "move.l {basereg}, %a6",
36918            ".short 0x4eae", // jsr -144(a6)
36919            ".short -144",
36920            "move.l (%sp)+, %a6",
36921            "movem.l (%sp)+, %d1/%a0-%a1",
36922            basereg = in(reg) IntuitionBase,
36923            in("a0") menuStrip,
36924            in("d0") menuNumber,
36925            lateout("d0") asm_ret_value,
36926        );
36927    }
36928    asm_ret_value
36929}
36930
36931/// libname: "intuition.library"
36932pub unsafe fn ModifyIDCMP(IntuitionBase: *mut Library, window: *mut Window, flags: ULONG) -> BOOL {
36933    let asm_ret_value: BOOL;
36934    unsafe {
36935        asm!(
36936            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
36937            ".short 0x40c0",
36938            "move.l %a6, -(%sp)",
36939            "move.l {basereg}, %a6",
36940            ".short 0x4eae", // jsr -150(a6)
36941            ".short -150",
36942            "move.l (%sp)+, %a6",
36943            "movem.l (%sp)+, %d1/%a0-%a1",
36944            basereg = in(reg) IntuitionBase,
36945            in("a0") window,
36946            in("d0") flags,
36947            lateout("d0") asm_ret_value,
36948        );
36949    }
36950    asm_ret_value
36951}
36952
36953/// libname: "intuition.library"
36954pub unsafe fn ModifyProp(
36955    IntuitionBase: *mut Library,
36956    gadget: *mut Gadget,
36957    window: *mut Window,
36958    requester: *mut Requester,
36959    flags: ULONG,
36960    horizPot: ULONG,
36961    vertPot: ULONG,
36962    horizBody: ULONG,
36963    vertBody: ULONG,
36964) {
36965    unsafe {
36966        asm!(
36967            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36968            ".short 0xc0c0",
36969            "move.l %a6, -(%sp)",
36970            "move.l {basereg}, %a6",
36971            ".short 0x4eae", // jsr -156(a6)
36972            ".short -156",
36973            "move.l (%sp)+, %a6",
36974            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
36975            basereg = in(reg) IntuitionBase,
36976            in("a0") gadget,
36977            in("a1") window,
36978            in("a2") requester,
36979            in("d0") flags,
36980            in("d1") horizPot,
36981            in("d2") vertPot,
36982            in("d3") horizBody,
36983            in("d4") vertBody,
36984        );
36985    }
36986}
36987
36988/// libname: "intuition.library"
36989pub unsafe fn MoveScreen(IntuitionBase: *mut Library, screen: *mut Screen, dx: LONG, dy: LONG) {
36990    unsafe {
36991        asm!(
36992            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
36993            ".short 0xc0c0",
36994            "move.l %a6, -(%sp)",
36995            "move.l {basereg}, %a6",
36996            ".short 0x4eae", // jsr -162(a6)
36997            ".short -162",
36998            "move.l (%sp)+, %a6",
36999            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37000            basereg = in(reg) IntuitionBase,
37001            in("a0") screen,
37002            in("d0") dx,
37003            in("d1") dy,
37004        );
37005    }
37006}
37007
37008/// libname: "intuition.library"
37009pub unsafe fn MoveWindow(IntuitionBase: *mut Library, window: *mut Window, dx: LONG, dy: LONG) {
37010    unsafe {
37011        asm!(
37012            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37013            ".short 0xc0c0",
37014            "move.l %a6, -(%sp)",
37015            "move.l {basereg}, %a6",
37016            ".short 0x4eae", // jsr -168(a6)
37017            ".short -168",
37018            "move.l (%sp)+, %a6",
37019            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37020            basereg = in(reg) IntuitionBase,
37021            in("a0") window,
37022            in("d0") dx,
37023            in("d1") dy,
37024        );
37025    }
37026}
37027
37028/// libname: "intuition.library"
37029pub unsafe fn OffGadget(
37030    IntuitionBase: *mut Library,
37031    gadget: *mut Gadget,
37032    window: *mut Window,
37033    requester: *mut Requester,
37034) {
37035    unsafe {
37036        asm!(
37037            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37038            ".short 0xc0c0",
37039            "move.l %a6, -(%sp)",
37040            "move.l {basereg}, %a6",
37041            ".short 0x4eae", // jsr -174(a6)
37042            ".short -174",
37043            "move.l (%sp)+, %a6",
37044            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37045            basereg = in(reg) IntuitionBase,
37046            in("a0") gadget,
37047            in("a1") window,
37048            in("a2") requester,
37049        );
37050    }
37051}
37052
37053/// libname: "intuition.library"
37054pub unsafe fn OffMenu(IntuitionBase: *mut Library, window: *mut Window, menuNumber: ULONG) {
37055    unsafe {
37056        asm!(
37057            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37058            ".short 0xc0c0",
37059            "move.l %a6, -(%sp)",
37060            "move.l {basereg}, %a6",
37061            ".short 0x4eae", // jsr -180(a6)
37062            ".short -180",
37063            "move.l (%sp)+, %a6",
37064            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37065            basereg = in(reg) IntuitionBase,
37066            in("a0") window,
37067            in("d0") menuNumber,
37068        );
37069    }
37070}
37071
37072/// libname: "intuition.library"
37073pub unsafe fn OnGadget(
37074    IntuitionBase: *mut Library,
37075    gadget: *mut Gadget,
37076    window: *mut Window,
37077    requester: *mut Requester,
37078) {
37079    unsafe {
37080        asm!(
37081            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37082            ".short 0xc0c0",
37083            "move.l %a6, -(%sp)",
37084            "move.l {basereg}, %a6",
37085            ".short 0x4eae", // jsr -186(a6)
37086            ".short -186",
37087            "move.l (%sp)+, %a6",
37088            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37089            basereg = in(reg) IntuitionBase,
37090            in("a0") gadget,
37091            in("a1") window,
37092            in("a2") requester,
37093        );
37094    }
37095}
37096
37097/// libname: "intuition.library"
37098pub unsafe fn OnMenu(IntuitionBase: *mut Library, window: *mut Window, menuNumber: ULONG) {
37099    unsafe {
37100        asm!(
37101            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37102            ".short 0xc0c0",
37103            "move.l %a6, -(%sp)",
37104            "move.l {basereg}, %a6",
37105            ".short 0x4eae", // jsr -192(a6)
37106            ".short -192",
37107            "move.l (%sp)+, %a6",
37108            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37109            basereg = in(reg) IntuitionBase,
37110            in("a0") window,
37111            in("d0") menuNumber,
37112        );
37113    }
37114}
37115
37116/// libname: "intuition.library"
37117pub unsafe fn OpenScreen(IntuitionBase: *mut Library, newScreen: *const NewScreen) -> *mut Screen {
37118    let asm_ret_value: *mut Screen;
37119    unsafe {
37120        asm!(
37121            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37122            ".short 0x40c0",
37123            "move.l %a6, -(%sp)",
37124            "move.l {basereg}, %a6",
37125            ".short 0x4eae", // jsr -198(a6)
37126            ".short -198",
37127            "move.l (%sp)+, %a6",
37128            "movem.l (%sp)+, %d1/%a0-%a1",
37129            basereg = in(reg) IntuitionBase,
37130            in("a0") newScreen,
37131            out("d0") asm_ret_value,
37132        );
37133    }
37134    asm_ret_value
37135}
37136
37137/// libname: "intuition.library"
37138pub unsafe fn OpenWindow(IntuitionBase: *mut Library, newWindow: *const NewWindow) -> *mut Window {
37139    let asm_ret_value: *mut Window;
37140    unsafe {
37141        asm!(
37142            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37143            ".short 0x40c0",
37144            "move.l %a6, -(%sp)",
37145            "move.l {basereg}, %a6",
37146            ".short 0x4eae", // jsr -204(a6)
37147            ".short -204",
37148            "move.l (%sp)+, %a6",
37149            "movem.l (%sp)+, %d1/%a0-%a1",
37150            basereg = in(reg) IntuitionBase,
37151            in("a0") newWindow,
37152            out("d0") asm_ret_value,
37153        );
37154    }
37155    asm_ret_value
37156}
37157
37158/// libname: "intuition.library"
37159pub unsafe fn OpenWorkBench(IntuitionBase: *mut Library) -> ULONG {
37160    let asm_ret_value: ULONG;
37161    unsafe {
37162        asm!(
37163            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37164            ".short 0x40c0",
37165            "move.l %a6, -(%sp)",
37166            "move.l {basereg}, %a6",
37167            ".short 0x4eae", // jsr -210(a6)
37168            ".short -210",
37169            "move.l (%sp)+, %a6",
37170            "movem.l (%sp)+, %d1/%a0-%a1",
37171            basereg = in(reg) IntuitionBase,
37172            out("d0") asm_ret_value,
37173        );
37174    }
37175    asm_ret_value
37176}
37177
37178/// libname: "intuition.library"
37179pub unsafe fn PrintIText(
37180    IntuitionBase: *mut Library,
37181    rp: *mut RastPort,
37182    iText: *const IntuiText,
37183    left: LONG,
37184    top: LONG,
37185) {
37186    unsafe {
37187        asm!(
37188            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37189            ".short 0xc0c0",
37190            "move.l %a6, -(%sp)",
37191            "move.l {basereg}, %a6",
37192            ".short 0x4eae", // jsr -216(a6)
37193            ".short -216",
37194            "move.l (%sp)+, %a6",
37195            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37196            basereg = in(reg) IntuitionBase,
37197            in("a0") rp,
37198            in("a1") iText,
37199            in("d0") left,
37200            in("d1") top,
37201        );
37202    }
37203}
37204
37205/// libname: "intuition.library"
37206pub unsafe fn RefreshGadgets(
37207    IntuitionBase: *mut Library,
37208    gadgets: *mut Gadget,
37209    window: *mut Window,
37210    requester: *mut Requester,
37211) {
37212    unsafe {
37213        asm!(
37214            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37215            ".short 0xc0c0",
37216            "move.l %a6, -(%sp)",
37217            "move.l {basereg}, %a6",
37218            ".short 0x4eae", // jsr -222(a6)
37219            ".short -222",
37220            "move.l (%sp)+, %a6",
37221            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37222            basereg = in(reg) IntuitionBase,
37223            in("a0") gadgets,
37224            in("a1") window,
37225            in("a2") requester,
37226        );
37227    }
37228}
37229
37230/// libname: "intuition.library"
37231pub unsafe fn RemoveGadget(
37232    IntuitionBase: *mut Library,
37233    window: *mut Window,
37234    gadget: *mut Gadget,
37235) -> UWORD {
37236    let asm_ret_value: UWORD;
37237    unsafe {
37238        asm!(
37239            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37240            ".short 0x40c0",
37241            "move.l %a6, -(%sp)",
37242            "move.l {basereg}, %a6",
37243            ".short 0x4eae", // jsr -228(a6)
37244            ".short -228",
37245            "move.l (%sp)+, %a6",
37246            "movem.l (%sp)+, %d1/%a0-%a1",
37247            basereg = in(reg) IntuitionBase,
37248            in("a0") window,
37249            in("a1") gadget,
37250            out("d0") asm_ret_value,
37251        );
37252    }
37253    asm_ret_value
37254}
37255
37256/// libname: "intuition.library"
37257pub unsafe fn ReportMouse(IntuitionBase: *mut Library, flag: LONG, window: *mut Window) {
37258    unsafe {
37259        asm!(
37260            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37261            ".short 0xc0c0",
37262            "move.l %a6, -(%sp)",
37263            "move.l {basereg}, %a6",
37264            ".short 0x4eae", // jsr -234(a6)
37265            ".short -234",
37266            "move.l (%sp)+, %a6",
37267            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37268            basereg = in(reg) IntuitionBase,
37269            in("d0") flag,
37270            in("a0") window,
37271        );
37272    }
37273}
37274
37275/// libname: "intuition.library"
37276pub unsafe fn ReportMouse1(IntuitionBase: *mut Library, window: *mut Window, flag: LONG) {
37277    unsafe {
37278        asm!(
37279            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37280            ".short 0xc0c0",
37281            "move.l %a6, -(%sp)",
37282            "move.l {basereg}, %a6",
37283            ".short 0x4eae", // jsr -234(a6)
37284            ".short -234",
37285            "move.l (%sp)+, %a6",
37286            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37287            basereg = in(reg) IntuitionBase,
37288            in("a0") window,
37289            in("d0") flag,
37290        );
37291    }
37292}
37293
37294/// libname: "intuition.library"
37295pub unsafe fn Request(
37296    IntuitionBase: *mut Library,
37297    requester: *mut Requester,
37298    window: *mut Window,
37299) -> BOOL {
37300    let asm_ret_value: BOOL;
37301    unsafe {
37302        asm!(
37303            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37304            ".short 0x40c0",
37305            "move.l %a6, -(%sp)",
37306            "move.l {basereg}, %a6",
37307            ".short 0x4eae", // jsr -240(a6)
37308            ".short -240",
37309            "move.l (%sp)+, %a6",
37310            "movem.l (%sp)+, %d1/%a0-%a1",
37311            basereg = in(reg) IntuitionBase,
37312            in("a0") requester,
37313            in("a1") window,
37314            out("d0") asm_ret_value,
37315        );
37316    }
37317    asm_ret_value
37318}
37319
37320/// libname: "intuition.library"
37321pub unsafe fn ScreenToBack(IntuitionBase: *mut Library, screen: *mut Screen) {
37322    unsafe {
37323        asm!(
37324            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37325            ".short 0xc0c0",
37326            "move.l %a6, -(%sp)",
37327            "move.l {basereg}, %a6",
37328            ".short 0x4eae", // jsr -246(a6)
37329            ".short -246",
37330            "move.l (%sp)+, %a6",
37331            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37332            basereg = in(reg) IntuitionBase,
37333            in("a0") screen,
37334        );
37335    }
37336}
37337
37338/// libname: "intuition.library"
37339pub unsafe fn ScreenToFront(IntuitionBase: *mut Library, screen: *mut Screen) {
37340    unsafe {
37341        asm!(
37342            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37343            ".short 0xc0c0",
37344            "move.l %a6, -(%sp)",
37345            "move.l {basereg}, %a6",
37346            ".short 0x4eae", // jsr -252(a6)
37347            ".short -252",
37348            "move.l (%sp)+, %a6",
37349            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37350            basereg = in(reg) IntuitionBase,
37351            in("a0") screen,
37352        );
37353    }
37354}
37355
37356/// libname: "intuition.library"
37357pub unsafe fn SetDMRequest(
37358    IntuitionBase: *mut Library,
37359    window: *mut Window,
37360    requester: *mut Requester,
37361) -> BOOL {
37362    let asm_ret_value: BOOL;
37363    unsafe {
37364        asm!(
37365            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37366            ".short 0x40c0",
37367            "move.l %a6, -(%sp)",
37368            "move.l {basereg}, %a6",
37369            ".short 0x4eae", // jsr -258(a6)
37370            ".short -258",
37371            "move.l (%sp)+, %a6",
37372            "movem.l (%sp)+, %d1/%a0-%a1",
37373            basereg = in(reg) IntuitionBase,
37374            in("a0") window,
37375            in("a1") requester,
37376            out("d0") asm_ret_value,
37377        );
37378    }
37379    asm_ret_value
37380}
37381
37382/// libname: "intuition.library"
37383pub unsafe fn SetMenuStrip(
37384    IntuitionBase: *mut Library,
37385    window: *mut Window,
37386    menu: *mut Menu,
37387) -> BOOL {
37388    let asm_ret_value: BOOL;
37389    unsafe {
37390        asm!(
37391            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37392            ".short 0x40c0",
37393            "move.l %a6, -(%sp)",
37394            "move.l {basereg}, %a6",
37395            ".short 0x4eae", // jsr -264(a6)
37396            ".short -264",
37397            "move.l (%sp)+, %a6",
37398            "movem.l (%sp)+, %d1/%a0-%a1",
37399            basereg = in(reg) IntuitionBase,
37400            in("a0") window,
37401            in("a1") menu,
37402            out("d0") asm_ret_value,
37403        );
37404    }
37405    asm_ret_value
37406}
37407
37408/// libname: "intuition.library"
37409pub unsafe fn SetPointer(
37410    IntuitionBase: *mut Library,
37411    window: *mut Window,
37412    pointer: *mut UWORD,
37413    height: LONG,
37414    width: LONG,
37415    xOffset: LONG,
37416    yOffset: LONG,
37417) {
37418    unsafe {
37419        asm!(
37420            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37421            ".short 0xc0c0",
37422            "move.l %a6, -(%sp)",
37423            "move.l {basereg}, %a6",
37424            ".short 0x4eae", // jsr -270(a6)
37425            ".short -270",
37426            "move.l (%sp)+, %a6",
37427            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37428            basereg = in(reg) IntuitionBase,
37429            in("a0") window,
37430            in("a1") pointer,
37431            in("d0") height,
37432            in("d1") width,
37433            in("d2") xOffset,
37434            in("d3") yOffset,
37435        );
37436    }
37437}
37438
37439/// libname: "intuition.library"
37440pub unsafe fn SetWindowTitles(
37441    IntuitionBase: *mut Library,
37442    window: *mut Window,
37443    windowTitle: CONST_STRPTR,
37444    screenTitle: CONST_STRPTR,
37445) {
37446    unsafe {
37447        asm!(
37448            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37449            ".short 0xc0c0",
37450            "move.l %a6, -(%sp)",
37451            "move.l {basereg}, %a6",
37452            ".short 0x4eae", // jsr -276(a6)
37453            ".short -276",
37454            "move.l (%sp)+, %a6",
37455            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37456            basereg = in(reg) IntuitionBase,
37457            in("a0") window,
37458            in("a1") windowTitle,
37459            in("a2") screenTitle,
37460        );
37461    }
37462}
37463
37464/// libname: "intuition.library"
37465pub unsafe fn ShowTitle(IntuitionBase: *mut Library, screen: *mut Screen, showIt: LONG) {
37466    unsafe {
37467        asm!(
37468            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37469            ".short 0xc0c0",
37470            "move.l %a6, -(%sp)",
37471            "move.l {basereg}, %a6",
37472            ".short 0x4eae", // jsr -282(a6)
37473            ".short -282",
37474            "move.l (%sp)+, %a6",
37475            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37476            basereg = in(reg) IntuitionBase,
37477            in("a0") screen,
37478            in("d0") showIt,
37479        );
37480    }
37481}
37482
37483/// libname: "intuition.library"
37484pub unsafe fn SizeWindow(IntuitionBase: *mut Library, window: *mut Window, dx: LONG, dy: LONG) {
37485    unsafe {
37486        asm!(
37487            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37488            ".short 0xc0c0",
37489            "move.l %a6, -(%sp)",
37490            "move.l {basereg}, %a6",
37491            ".short 0x4eae", // jsr -288(a6)
37492            ".short -288",
37493            "move.l (%sp)+, %a6",
37494            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37495            basereg = in(reg) IntuitionBase,
37496            in("a0") window,
37497            in("d0") dx,
37498            in("d1") dy,
37499        );
37500    }
37501}
37502
37503/// libname: "intuition.library"
37504pub unsafe fn ViewAddress(IntuitionBase: *mut Library) -> *mut View {
37505    let asm_ret_value: *mut View;
37506    unsafe {
37507        asm!(
37508            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37509            ".short 0x40c0",
37510            "move.l %a6, -(%sp)",
37511            "move.l {basereg}, %a6",
37512            ".short 0x4eae", // jsr -294(a6)
37513            ".short -294",
37514            "move.l (%sp)+, %a6",
37515            "movem.l (%sp)+, %d1/%a0-%a1",
37516            basereg = in(reg) IntuitionBase,
37517            out("d0") asm_ret_value,
37518        );
37519    }
37520    asm_ret_value
37521}
37522
37523/// libname: "intuition.library"
37524pub unsafe fn ViewPortAddress(IntuitionBase: *mut Library, window: *const Window) -> *mut ViewPort {
37525    let asm_ret_value: *mut ViewPort;
37526    unsafe {
37527        asm!(
37528            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37529            ".short 0x40c0",
37530            "move.l %a6, -(%sp)",
37531            "move.l {basereg}, %a6",
37532            ".short 0x4eae", // jsr -300(a6)
37533            ".short -300",
37534            "move.l (%sp)+, %a6",
37535            "movem.l (%sp)+, %d1/%a0-%a1",
37536            basereg = in(reg) IntuitionBase,
37537            in("a0") window,
37538            out("d0") asm_ret_value,
37539        );
37540    }
37541    asm_ret_value
37542}
37543
37544/// libname: "intuition.library"
37545pub unsafe fn WindowToBack(IntuitionBase: *mut Library, window: *mut Window) {
37546    unsafe {
37547        asm!(
37548            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37549            ".short 0xc0c0",
37550            "move.l %a6, -(%sp)",
37551            "move.l {basereg}, %a6",
37552            ".short 0x4eae", // jsr -306(a6)
37553            ".short -306",
37554            "move.l (%sp)+, %a6",
37555            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37556            basereg = in(reg) IntuitionBase,
37557            in("a0") window,
37558        );
37559    }
37560}
37561
37562/// libname: "intuition.library"
37563pub unsafe fn WindowToFront(IntuitionBase: *mut Library, window: *mut Window) {
37564    unsafe {
37565        asm!(
37566            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37567            ".short 0xc0c0",
37568            "move.l %a6, -(%sp)",
37569            "move.l {basereg}, %a6",
37570            ".short 0x4eae", // jsr -312(a6)
37571            ".short -312",
37572            "move.l (%sp)+, %a6",
37573            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37574            basereg = in(reg) IntuitionBase,
37575            in("a0") window,
37576        );
37577    }
37578}
37579
37580/// libname: "intuition.library"
37581pub unsafe fn WindowLimits(
37582    IntuitionBase: *mut Library,
37583    window: *mut Window,
37584    widthMin: LONG,
37585    heightMin: LONG,
37586    widthMax: ULONG,
37587    heightMax: ULONG,
37588) -> BOOL {
37589    let asm_ret_value: BOOL;
37590    unsafe {
37591        asm!(
37592            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37593            ".short 0x40c0",
37594            "move.l %a6, -(%sp)",
37595            "move.l {basereg}, %a6",
37596            ".short 0x4eae", // jsr -318(a6)
37597            ".short -318",
37598            "move.l (%sp)+, %a6",
37599            "movem.l (%sp)+, %d1/%a0-%a1",
37600            basereg = in(reg) IntuitionBase,
37601            in("a0") window,
37602            in("d0") widthMin,
37603            in("d1") heightMin,
37604            in("d2") widthMax,
37605            in("d3") heightMax,
37606            lateout("d0") asm_ret_value,
37607        );
37608    }
37609    asm_ret_value
37610}
37611
37612/// libname: "intuition.library"
37613pub unsafe fn SetPrefs(
37614    IntuitionBase: *mut Library,
37615    preferences: *const Preferences,
37616    size: LONG,
37617    inform: LONG,
37618) -> *mut Preferences {
37619    let asm_ret_value: *mut Preferences;
37620    unsafe {
37621        asm!(
37622            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37623            ".short 0x40c0",
37624            "move.l %a6, -(%sp)",
37625            "move.l {basereg}, %a6",
37626            ".short 0x4eae", // jsr -324(a6)
37627            ".short -324",
37628            "move.l (%sp)+, %a6",
37629            "movem.l (%sp)+, %d1/%a0-%a1",
37630            basereg = in(reg) IntuitionBase,
37631            in("a0") preferences,
37632            in("d0") size,
37633            in("d1") inform,
37634            lateout("d0") asm_ret_value,
37635        );
37636    }
37637    asm_ret_value
37638}
37639
37640/// libname: "intuition.library"
37641pub unsafe fn IntuiTextLength(IntuitionBase: *mut Library, iText: *const IntuiText) -> LONG {
37642    let asm_ret_value: LONG;
37643    unsafe {
37644        asm!(
37645            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37646            ".short 0x40c0",
37647            "move.l %a6, -(%sp)",
37648            "move.l {basereg}, %a6",
37649            ".short 0x4eae", // jsr -330(a6)
37650            ".short -330",
37651            "move.l (%sp)+, %a6",
37652            "movem.l (%sp)+, %d1/%a0-%a1",
37653            basereg = in(reg) IntuitionBase,
37654            in("a0") iText,
37655            out("d0") asm_ret_value,
37656        );
37657    }
37658    asm_ret_value
37659}
37660
37661/// libname: "intuition.library"
37662pub unsafe fn WBenchToBack(IntuitionBase: *mut Library) -> BOOL {
37663    let asm_ret_value: BOOL;
37664    unsafe {
37665        asm!(
37666            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37667            ".short 0x40c0",
37668            "move.l %a6, -(%sp)",
37669            "move.l {basereg}, %a6",
37670            ".short 0x4eae", // jsr -336(a6)
37671            ".short -336",
37672            "move.l (%sp)+, %a6",
37673            "movem.l (%sp)+, %d1/%a0-%a1",
37674            basereg = in(reg) IntuitionBase,
37675            out("d0") asm_ret_value,
37676        );
37677    }
37678    asm_ret_value
37679}
37680
37681/// libname: "intuition.library"
37682pub unsafe fn WBenchToFront(IntuitionBase: *mut Library) -> BOOL {
37683    let asm_ret_value: BOOL;
37684    unsafe {
37685        asm!(
37686            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37687            ".short 0x40c0",
37688            "move.l %a6, -(%sp)",
37689            "move.l {basereg}, %a6",
37690            ".short 0x4eae", // jsr -342(a6)
37691            ".short -342",
37692            "move.l (%sp)+, %a6",
37693            "movem.l (%sp)+, %d1/%a0-%a1",
37694            basereg = in(reg) IntuitionBase,
37695            out("d0") asm_ret_value,
37696        );
37697    }
37698    asm_ret_value
37699}
37700
37701/// libname: "intuition.library"
37702pub unsafe fn AutoRequest(
37703    IntuitionBase: *mut Library,
37704    window: *mut Window,
37705    body: *const IntuiText,
37706    posText: *const IntuiText,
37707    negText: *const IntuiText,
37708    pFlag: ULONG,
37709    nFlag: ULONG,
37710    width: ULONG,
37711    height: ULONG,
37712) -> BOOL {
37713    let asm_ret_value: BOOL;
37714    unsafe {
37715        asm!(
37716            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37717            ".short 0x40c0",
37718            "move.l %a6, -(%sp)",
37719            "move.l {basereg}, %a6",
37720            ".short 0x4eae", // jsr -348(a6)
37721            ".short -348",
37722            "move.l (%sp)+, %a6",
37723            "movem.l (%sp)+, %d1/%a0-%a1",
37724            basereg = in(reg) IntuitionBase,
37725            in("a0") window,
37726            in("a1") body,
37727            in("a2") posText,
37728            in("a3") negText,
37729            in("d0") pFlag,
37730            in("d1") nFlag,
37731            in("d2") width,
37732            in("d3") height,
37733            lateout("d0") asm_ret_value,
37734        );
37735    }
37736    asm_ret_value
37737}
37738
37739/// libname: "intuition.library"
37740pub unsafe fn BeginRefresh(IntuitionBase: *mut Library, window: *mut Window) {
37741    unsafe {
37742        asm!(
37743            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37744            ".short 0xc0c0",
37745            "move.l %a6, -(%sp)",
37746            "move.l {basereg}, %a6",
37747            ".short 0x4eae", // jsr -354(a6)
37748            ".short -354",
37749            "move.l (%sp)+, %a6",
37750            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37751            basereg = in(reg) IntuitionBase,
37752            in("a0") window,
37753        );
37754    }
37755}
37756
37757/// libname: "intuition.library"
37758pub unsafe fn BuildSysRequest(
37759    IntuitionBase: *mut Library,
37760    window: *mut Window,
37761    body: *const IntuiText,
37762    posText: *const IntuiText,
37763    negText: *const IntuiText,
37764    flags: ULONG,
37765    width: ULONG,
37766    height: ULONG,
37767) -> *mut Window {
37768    let asm_ret_value: *mut Window;
37769    unsafe {
37770        asm!(
37771            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37772            ".short 0x40c0",
37773            "move.l %a6, -(%sp)",
37774            "move.l {basereg}, %a6",
37775            ".short 0x4eae", // jsr -360(a6)
37776            ".short -360",
37777            "move.l (%sp)+, %a6",
37778            "movem.l (%sp)+, %d1/%a0-%a1",
37779            basereg = in(reg) IntuitionBase,
37780            in("a0") window,
37781            in("a1") body,
37782            in("a2") posText,
37783            in("a3") negText,
37784            in("d0") flags,
37785            in("d1") width,
37786            in("d2") height,
37787            lateout("d0") asm_ret_value,
37788        );
37789    }
37790    asm_ret_value
37791}
37792
37793/// libname: "intuition.library"
37794pub unsafe fn EndRefresh(IntuitionBase: *mut Library, window: *mut Window, complete: LONG) {
37795    unsafe {
37796        asm!(
37797            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37798            ".short 0xc0c0",
37799            "move.l %a6, -(%sp)",
37800            "move.l {basereg}, %a6",
37801            ".short 0x4eae", // jsr -366(a6)
37802            ".short -366",
37803            "move.l (%sp)+, %a6",
37804            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37805            basereg = in(reg) IntuitionBase,
37806            in("a0") window,
37807            in("d0") complete,
37808        );
37809    }
37810}
37811
37812/// libname: "intuition.library"
37813pub unsafe fn FreeSysRequest(IntuitionBase: *mut Library, window: *mut Window) {
37814    unsafe {
37815        asm!(
37816            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37817            ".short 0xc0c0",
37818            "move.l %a6, -(%sp)",
37819            "move.l {basereg}, %a6",
37820            ".short 0x4eae", // jsr -372(a6)
37821            ".short -372",
37822            "move.l (%sp)+, %a6",
37823            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37824            basereg = in(reg) IntuitionBase,
37825            in("a0") window,
37826        );
37827    }
37828}
37829
37830/// libname: "intuition.library"
37831pub unsafe fn MakeScreen(IntuitionBase: *mut Library, screen: *mut Screen) -> LONG {
37832    let asm_ret_value: LONG;
37833    unsafe {
37834        asm!(
37835            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37836            ".short 0x40c0",
37837            "move.l %a6, -(%sp)",
37838            "move.l {basereg}, %a6",
37839            ".short 0x4eae", // jsr -378(a6)
37840            ".short -378",
37841            "move.l (%sp)+, %a6",
37842            "movem.l (%sp)+, %d1/%a0-%a1",
37843            basereg = in(reg) IntuitionBase,
37844            in("a0") screen,
37845            out("d0") asm_ret_value,
37846        );
37847    }
37848    asm_ret_value
37849}
37850
37851/// libname: "intuition.library"
37852pub unsafe fn RemakeDisplay(IntuitionBase: *mut Library) -> LONG {
37853    let asm_ret_value: LONG;
37854    unsafe {
37855        asm!(
37856            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37857            ".short 0x40c0",
37858            "move.l %a6, -(%sp)",
37859            "move.l {basereg}, %a6",
37860            ".short 0x4eae", // jsr -384(a6)
37861            ".short -384",
37862            "move.l (%sp)+, %a6",
37863            "movem.l (%sp)+, %d1/%a0-%a1",
37864            basereg = in(reg) IntuitionBase,
37865            out("d0") asm_ret_value,
37866        );
37867    }
37868    asm_ret_value
37869}
37870
37871/// libname: "intuition.library"
37872pub unsafe fn RethinkDisplay(IntuitionBase: *mut Library) -> LONG {
37873    let asm_ret_value: LONG;
37874    unsafe {
37875        asm!(
37876            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37877            ".short 0x40c0",
37878            "move.l %a6, -(%sp)",
37879            "move.l {basereg}, %a6",
37880            ".short 0x4eae", // jsr -390(a6)
37881            ".short -390",
37882            "move.l (%sp)+, %a6",
37883            "movem.l (%sp)+, %d1/%a0-%a1",
37884            basereg = in(reg) IntuitionBase,
37885            out("d0") asm_ret_value,
37886        );
37887    }
37888    asm_ret_value
37889}
37890
37891/// libname: "intuition.library"
37892pub unsafe fn AllocRemember(
37893    IntuitionBase: *mut Library,
37894    rememberKey: *mut *mut Remember,
37895    size: ULONG,
37896    flags: ULONG,
37897) -> APTR {
37898    let asm_ret_value: APTR;
37899    unsafe {
37900        asm!(
37901            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37902            ".short 0x40c0",
37903            "move.l %a6, -(%sp)",
37904            "move.l {basereg}, %a6",
37905            ".short 0x4eae", // jsr -396(a6)
37906            ".short -396",
37907            "move.l (%sp)+, %a6",
37908            "movem.l (%sp)+, %d1/%a0-%a1",
37909            basereg = in(reg) IntuitionBase,
37910            in("a0") rememberKey,
37911            in("d0") size,
37912            in("d1") flags,
37913            lateout("d0") asm_ret_value,
37914        );
37915    }
37916    asm_ret_value
37917}
37918
37919/// libname: "intuition.library"
37920pub unsafe fn AlohaWorkbench(IntuitionBase: *mut Library, wbport: LONG) {
37921    unsafe {
37922        asm!(
37923            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37924            ".short 0xc0c0",
37925            "move.l %a6, -(%sp)",
37926            "move.l {basereg}, %a6",
37927            ".short 0x4eae", // jsr -402(a6)
37928            ".short -402",
37929            "move.l (%sp)+, %a6",
37930            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37931            basereg = in(reg) IntuitionBase,
37932            in("a0") wbport,
37933        );
37934    }
37935}
37936
37937/// libname: "intuition.library"
37938pub unsafe fn FreeRemember(
37939    IntuitionBase: *mut Library,
37940    rememberKey: *mut *mut Remember,
37941    reallyForget: LONG,
37942) {
37943    unsafe {
37944        asm!(
37945            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37946            ".short 0xc0c0",
37947            "move.l %a6, -(%sp)",
37948            "move.l {basereg}, %a6",
37949            ".short 0x4eae", // jsr -408(a6)
37950            ".short -408",
37951            "move.l (%sp)+, %a6",
37952            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37953            basereg = in(reg) IntuitionBase,
37954            in("a0") rememberKey,
37955            in("d0") reallyForget,
37956        );
37957    }
37958}
37959
37960/// libname: "intuition.library"
37961pub unsafe fn LockIBase(IntuitionBase: *mut Library, dontknow: ULONG) -> ULONG {
37962    let asm_ret_value: ULONG;
37963    unsafe {
37964        asm!(
37965            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
37966            ".short 0x40c0",
37967            "move.l %a6, -(%sp)",
37968            "move.l {basereg}, %a6",
37969            ".short 0x4eae", // jsr -414(a6)
37970            ".short -414",
37971            "move.l (%sp)+, %a6",
37972            "movem.l (%sp)+, %d1/%a0-%a1",
37973            basereg = in(reg) IntuitionBase,
37974            in("d0") dontknow,
37975            lateout("d0") asm_ret_value,
37976        );
37977    }
37978    asm_ret_value
37979}
37980
37981/// libname: "intuition.library"
37982pub unsafe fn UnlockIBase(IntuitionBase: *mut Library, ibLock: ULONG) {
37983    unsafe {
37984        asm!(
37985            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
37986            ".short 0xc0c0",
37987            "move.l %a6, -(%sp)",
37988            "move.l {basereg}, %a6",
37989            ".short 0x4eae", // jsr -420(a6)
37990            ".short -420",
37991            "move.l (%sp)+, %a6",
37992            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
37993            basereg = in(reg) IntuitionBase,
37994            in("a0") ibLock,
37995        );
37996    }
37997}
37998
37999/// libname: "intuition.library" (V33) (Kickstart 1.2)
38000pub unsafe fn GetScreenData(
38001    IntuitionBase: *mut Library,
38002    buffer: APTR,
38003    size: ULONG,
38004    type_: ULONG,
38005    screen: *const Screen,
38006) -> LONG {
38007    let asm_ret_value: LONG;
38008    unsafe {
38009        asm!(
38010            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38011            ".short 0x40c0",
38012            "move.l %a6, -(%sp)",
38013            "move.l {basereg}, %a6",
38014            ".short 0x4eae", // jsr -426(a6)
38015            ".short -426",
38016            "move.l (%sp)+, %a6",
38017            "movem.l (%sp)+, %d1/%a0-%a1",
38018            basereg = in(reg) IntuitionBase,
38019            in("a0") buffer,
38020            in("d0") size,
38021            in("d1") type_,
38022            in("a1") screen,
38023            lateout("d0") asm_ret_value,
38024        );
38025    }
38026    asm_ret_value
38027}
38028
38029/// libname: "intuition.library" (V33) (Kickstart 1.2)
38030pub unsafe fn RefreshGList(
38031    IntuitionBase: *mut Library,
38032    gadgets: *mut Gadget,
38033    window: *mut Window,
38034    requester: *mut Requester,
38035    numGad: LONG,
38036) {
38037    unsafe {
38038        asm!(
38039            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38040            ".short 0xc0c0",
38041            "move.l %a6, -(%sp)",
38042            "move.l {basereg}, %a6",
38043            ".short 0x4eae", // jsr -432(a6)
38044            ".short -432",
38045            "move.l (%sp)+, %a6",
38046            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38047            basereg = in(reg) IntuitionBase,
38048            in("a0") gadgets,
38049            in("a1") window,
38050            in("a2") requester,
38051            in("d0") numGad,
38052        );
38053    }
38054}
38055
38056/// libname: "intuition.library" (V33) (Kickstart 1.2)
38057pub unsafe fn AddGList(
38058    IntuitionBase: *mut Library,
38059    window: *mut Window,
38060    gadget: *mut Gadget,
38061    position: ULONG,
38062    numGad: LONG,
38063    requester: *mut Requester,
38064) -> UWORD {
38065    let asm_ret_value: UWORD;
38066    unsafe {
38067        asm!(
38068            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38069            ".short 0x40c0",
38070            "move.l %a6, -(%sp)",
38071            "move.l {basereg}, %a6",
38072            ".short 0x4eae", // jsr -438(a6)
38073            ".short -438",
38074            "move.l (%sp)+, %a6",
38075            "movem.l (%sp)+, %d1/%a0-%a1",
38076            basereg = in(reg) IntuitionBase,
38077            in("a0") window,
38078            in("a1") gadget,
38079            in("d0") position,
38080            in("d1") numGad,
38081            in("a2") requester,
38082            lateout("d0") asm_ret_value,
38083        );
38084    }
38085    asm_ret_value
38086}
38087
38088/// libname: "intuition.library" (V33) (Kickstart 1.2)
38089pub unsafe fn RemoveGList(
38090    IntuitionBase: *mut Library,
38091    remPtr: *mut Window,
38092    gadget: *mut Gadget,
38093    numGad: LONG,
38094) -> UWORD {
38095    let asm_ret_value: UWORD;
38096    unsafe {
38097        asm!(
38098            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38099            ".short 0x40c0",
38100            "move.l %a6, -(%sp)",
38101            "move.l {basereg}, %a6",
38102            ".short 0x4eae", // jsr -444(a6)
38103            ".short -444",
38104            "move.l (%sp)+, %a6",
38105            "movem.l (%sp)+, %d1/%a0-%a1",
38106            basereg = in(reg) IntuitionBase,
38107            in("a0") remPtr,
38108            in("a1") gadget,
38109            in("d0") numGad,
38110            lateout("d0") asm_ret_value,
38111        );
38112    }
38113    asm_ret_value
38114}
38115
38116/// libname: "intuition.library" (V33) (Kickstart 1.2)
38117pub unsafe fn ActivateWindow(IntuitionBase: *mut Library, window: *mut Window) {
38118    unsafe {
38119        asm!(
38120            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38121            ".short 0xc0c0",
38122            "move.l %a6, -(%sp)",
38123            "move.l {basereg}, %a6",
38124            ".short 0x4eae", // jsr -450(a6)
38125            ".short -450",
38126            "move.l (%sp)+, %a6",
38127            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38128            basereg = in(reg) IntuitionBase,
38129            in("a0") window,
38130        );
38131    }
38132}
38133
38134/// libname: "intuition.library" (V33) (Kickstart 1.2)
38135pub unsafe fn RefreshWindowFrame(IntuitionBase: *mut Library, window: *mut Window) {
38136    unsafe {
38137        asm!(
38138            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38139            ".short 0xc0c0",
38140            "move.l %a6, -(%sp)",
38141            "move.l {basereg}, %a6",
38142            ".short 0x4eae", // jsr -456(a6)
38143            ".short -456",
38144            "move.l (%sp)+, %a6",
38145            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38146            basereg = in(reg) IntuitionBase,
38147            in("a0") window,
38148        );
38149    }
38150}
38151
38152/// libname: "intuition.library" (V33) (Kickstart 1.2)
38153pub unsafe fn ActivateGadget(
38154    IntuitionBase: *mut Library,
38155    gadgets: *mut Gadget,
38156    window: *mut Window,
38157    requester: *mut Requester,
38158) -> BOOL {
38159    let asm_ret_value: BOOL;
38160    unsafe {
38161        asm!(
38162            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38163            ".short 0x40c0",
38164            "move.l %a6, -(%sp)",
38165            "move.l {basereg}, %a6",
38166            ".short 0x4eae", // jsr -462(a6)
38167            ".short -462",
38168            "move.l (%sp)+, %a6",
38169            "movem.l (%sp)+, %d1/%a0-%a1",
38170            basereg = in(reg) IntuitionBase,
38171            in("a0") gadgets,
38172            in("a1") window,
38173            in("a2") requester,
38174            out("d0") asm_ret_value,
38175        );
38176    }
38177    asm_ret_value
38178}
38179
38180/// libname: "intuition.library" (V33) (Kickstart 1.2)
38181pub unsafe fn NewModifyProp(
38182    IntuitionBase: *mut Library,
38183    gadget: *mut Gadget,
38184    window: *mut Window,
38185    requester: *mut Requester,
38186    flags: ULONG,
38187    horizPot: ULONG,
38188    vertPot: ULONG,
38189    horizBody: ULONG,
38190    vertBody: ULONG,
38191    numGad: LONG,
38192) {
38193    unsafe {
38194        asm!(
38195            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38196            ".short 0xc0c0",
38197            "move.l %a6, -(%sp)",
38198            "move.l {basereg}, %a6",
38199            ".short 0x4eae", // jsr -468(a6)
38200            ".short -468",
38201            "move.l (%sp)+, %a6",
38202            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38203            basereg = in(reg) IntuitionBase,
38204            in("a0") gadget,
38205            in("a1") window,
38206            in("a2") requester,
38207            in("d0") flags,
38208            in("d1") horizPot,
38209            in("d2") vertPot,
38210            in("d3") horizBody,
38211            in("d4") vertBody,
38212            in("d5") numGad,
38213        );
38214    }
38215}
38216
38217/// libname: "intuition.library" (V36) (Kickstart 2.0)
38218pub unsafe fn QueryOverscan(
38219    IntuitionBase: *mut Library,
38220    displayID: ULONG,
38221    rect: *mut Rectangle,
38222    oScanType: LONG,
38223) -> LONG {
38224    let asm_ret_value: LONG;
38225    unsafe {
38226        asm!(
38227            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38228            ".short 0x40c0",
38229            "move.l %a6, -(%sp)",
38230            "move.l {basereg}, %a6",
38231            ".short 0x4eae", // jsr -474(a6)
38232            ".short -474",
38233            "move.l (%sp)+, %a6",
38234            "movem.l (%sp)+, %d1/%a0-%a1",
38235            basereg = in(reg) IntuitionBase,
38236            in("a0") displayID,
38237            in("a1") rect,
38238            in("d0") oScanType,
38239            lateout("d0") asm_ret_value,
38240        );
38241    }
38242    asm_ret_value
38243}
38244
38245/// libname: "intuition.library" (V36) (Kickstart 2.0)
38246pub unsafe fn MoveWindowInFrontOf(
38247    IntuitionBase: *mut Library,
38248    window: *mut Window,
38249    behindWindow: *mut Window,
38250) {
38251    unsafe {
38252        asm!(
38253            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38254            ".short 0xc0c0",
38255            "move.l %a6, -(%sp)",
38256            "move.l {basereg}, %a6",
38257            ".short 0x4eae", // jsr -480(a6)
38258            ".short -480",
38259            "move.l (%sp)+, %a6",
38260            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38261            basereg = in(reg) IntuitionBase,
38262            in("a0") window,
38263            in("a1") behindWindow,
38264        );
38265    }
38266}
38267
38268/// libname: "intuition.library" (V36) (Kickstart 2.0)
38269pub unsafe fn ChangeWindowBox(
38270    IntuitionBase: *mut Library,
38271    window: *mut Window,
38272    left: LONG,
38273    top: LONG,
38274    width: LONG,
38275    height: LONG,
38276) {
38277    unsafe {
38278        asm!(
38279            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38280            ".short 0xc0c0",
38281            "move.l %a6, -(%sp)",
38282            "move.l {basereg}, %a6",
38283            ".short 0x4eae", // jsr -486(a6)
38284            ".short -486",
38285            "move.l (%sp)+, %a6",
38286            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38287            basereg = in(reg) IntuitionBase,
38288            in("a0") window,
38289            in("d0") left,
38290            in("d1") top,
38291            in("d2") width,
38292            in("d3") height,
38293        );
38294    }
38295}
38296
38297/// libname: "intuition.library" (V36) (Kickstart 2.0)
38298pub unsafe fn SetEditHook(IntuitionBase: *mut Library, hook: *mut Hook) -> *mut Hook {
38299    let asm_ret_value: *mut Hook;
38300    unsafe {
38301        asm!(
38302            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38303            ".short 0x40c0",
38304            "move.l %a6, -(%sp)",
38305            "move.l {basereg}, %a6",
38306            ".short 0x4eae", // jsr -492(a6)
38307            ".short -492",
38308            "move.l (%sp)+, %a6",
38309            "movem.l (%sp)+, %d1/%a0-%a1",
38310            basereg = in(reg) IntuitionBase,
38311            in("a0") hook,
38312            out("d0") asm_ret_value,
38313        );
38314    }
38315    asm_ret_value
38316}
38317
38318/// libname: "intuition.library" (V36) (Kickstart 2.0)
38319pub unsafe fn SetMouseQueue(
38320    IntuitionBase: *mut Library,
38321    window: *mut Window,
38322    queueLength: ULONG,
38323) -> LONG {
38324    let asm_ret_value: LONG;
38325    unsafe {
38326        asm!(
38327            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38328            ".short 0x40c0",
38329            "move.l %a6, -(%sp)",
38330            "move.l {basereg}, %a6",
38331            ".short 0x4eae", // jsr -498(a6)
38332            ".short -498",
38333            "move.l (%sp)+, %a6",
38334            "movem.l (%sp)+, %d1/%a0-%a1",
38335            basereg = in(reg) IntuitionBase,
38336            in("a0") window,
38337            in("d0") queueLength,
38338            lateout("d0") asm_ret_value,
38339        );
38340    }
38341    asm_ret_value
38342}
38343
38344/// libname: "intuition.library" (V36) (Kickstart 2.0)
38345pub unsafe fn ZipWindow(IntuitionBase: *mut Library, window: *mut Window) {
38346    unsafe {
38347        asm!(
38348            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38349            ".short 0xc0c0",
38350            "move.l %a6, -(%sp)",
38351            "move.l {basereg}, %a6",
38352            ".short 0x4eae", // jsr -504(a6)
38353            ".short -504",
38354            "move.l (%sp)+, %a6",
38355            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38356            basereg = in(reg) IntuitionBase,
38357            in("a0") window,
38358        );
38359    }
38360}
38361
38362/// libname: "intuition.library" (V36) (Kickstart 2.0)
38363pub unsafe fn LockPubScreen(IntuitionBase: *mut Library, name: CONST_STRPTR) -> *mut Screen {
38364    let asm_ret_value: *mut Screen;
38365    unsafe {
38366        asm!(
38367            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38368            ".short 0x40c0",
38369            "move.l %a6, -(%sp)",
38370            "move.l {basereg}, %a6",
38371            ".short 0x4eae", // jsr -510(a6)
38372            ".short -510",
38373            "move.l (%sp)+, %a6",
38374            "movem.l (%sp)+, %d1/%a0-%a1",
38375            basereg = in(reg) IntuitionBase,
38376            in("a0") name,
38377            out("d0") asm_ret_value,
38378        );
38379    }
38380    asm_ret_value
38381}
38382
38383/// libname: "intuition.library" (V36) (Kickstart 2.0)
38384pub unsafe fn UnlockPubScreen(
38385    IntuitionBase: *mut Library,
38386    name: CONST_STRPTR,
38387    screen: *mut Screen,
38388) {
38389    unsafe {
38390        asm!(
38391            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38392            ".short 0xc0c0",
38393            "move.l %a6, -(%sp)",
38394            "move.l {basereg}, %a6",
38395            ".short 0x4eae", // jsr -516(a6)
38396            ".short -516",
38397            "move.l (%sp)+, %a6",
38398            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38399            basereg = in(reg) IntuitionBase,
38400            in("a0") name,
38401            in("a1") screen,
38402        );
38403    }
38404}
38405
38406/// libname: "intuition.library" (V36) (Kickstart 2.0)
38407pub unsafe fn LockPubScreenList(IntuitionBase: *mut Library) -> *mut List {
38408    let asm_ret_value: *mut List;
38409    unsafe {
38410        asm!(
38411            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38412            ".short 0x40c0",
38413            "move.l %a6, -(%sp)",
38414            "move.l {basereg}, %a6",
38415            ".short 0x4eae", // jsr -522(a6)
38416            ".short -522",
38417            "move.l (%sp)+, %a6",
38418            "movem.l (%sp)+, %d1/%a0-%a1",
38419            basereg = in(reg) IntuitionBase,
38420            out("d0") asm_ret_value,
38421        );
38422    }
38423    asm_ret_value
38424}
38425
38426/// libname: "intuition.library" (V36) (Kickstart 2.0)
38427pub unsafe fn UnlockPubScreenList(IntuitionBase: *mut Library) {
38428    unsafe {
38429        asm!(
38430            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38431            ".short 0xc0c0",
38432            "move.l %a6, -(%sp)",
38433            "move.l {basereg}, %a6",
38434            ".short 0x4eae", // jsr -528(a6)
38435            ".short -528",
38436            "move.l (%sp)+, %a6",
38437            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38438            basereg = in(reg) IntuitionBase,
38439        );
38440    }
38441}
38442
38443/// libname: "intuition.library" (V36) (Kickstart 2.0)
38444pub unsafe fn NextPubScreen(
38445    IntuitionBase: *mut Library,
38446    screen: *const Screen,
38447    namebuf: STRPTR,
38448) -> STRPTR {
38449    let asm_ret_value: STRPTR;
38450    unsafe {
38451        asm!(
38452            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38453            ".short 0x40c0",
38454            "move.l %a6, -(%sp)",
38455            "move.l {basereg}, %a6",
38456            ".short 0x4eae", // jsr -534(a6)
38457            ".short -534",
38458            "move.l (%sp)+, %a6",
38459            "movem.l (%sp)+, %d1/%a0-%a1",
38460            basereg = in(reg) IntuitionBase,
38461            in("a0") screen,
38462            in("a1") namebuf,
38463            out("d0") asm_ret_value,
38464        );
38465    }
38466    asm_ret_value
38467}
38468
38469/// libname: "intuition.library" (V36) (Kickstart 2.0)
38470pub unsafe fn SetDefaultPubScreen(IntuitionBase: *mut Library, name: CONST_STRPTR) {
38471    unsafe {
38472        asm!(
38473            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38474            ".short 0xc0c0",
38475            "move.l %a6, -(%sp)",
38476            "move.l {basereg}, %a6",
38477            ".short 0x4eae", // jsr -540(a6)
38478            ".short -540",
38479            "move.l (%sp)+, %a6",
38480            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38481            basereg = in(reg) IntuitionBase,
38482            in("a0") name,
38483        );
38484    }
38485}
38486
38487/// libname: "intuition.library" (V36) (Kickstart 2.0)
38488pub unsafe fn SetPubScreenModes(IntuitionBase: *mut Library, modes: ULONG) -> UWORD {
38489    let asm_ret_value: UWORD;
38490    unsafe {
38491        asm!(
38492            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38493            ".short 0x40c0",
38494            "move.l %a6, -(%sp)",
38495            "move.l {basereg}, %a6",
38496            ".short 0x4eae", // jsr -546(a6)
38497            ".short -546",
38498            "move.l (%sp)+, %a6",
38499            "movem.l (%sp)+, %d1/%a0-%a1",
38500            basereg = in(reg) IntuitionBase,
38501            in("d0") modes,
38502            lateout("d0") asm_ret_value,
38503        );
38504    }
38505    asm_ret_value
38506}
38507
38508/// libname: "intuition.library" (V36) (Kickstart 2.0)
38509pub unsafe fn PubScreenStatus(
38510    IntuitionBase: *mut Library,
38511    screen: *mut Screen,
38512    statusFlags: ULONG,
38513) -> UWORD {
38514    let asm_ret_value: UWORD;
38515    unsafe {
38516        asm!(
38517            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38518            ".short 0x40c0",
38519            "move.l %a6, -(%sp)",
38520            "move.l {basereg}, %a6",
38521            ".short 0x4eae", // jsr -552(a6)
38522            ".short -552",
38523            "move.l (%sp)+, %a6",
38524            "movem.l (%sp)+, %d1/%a0-%a1",
38525            basereg = in(reg) IntuitionBase,
38526            in("a0") screen,
38527            in("d0") statusFlags,
38528            lateout("d0") asm_ret_value,
38529        );
38530    }
38531    asm_ret_value
38532}
38533
38534/// libname: "intuition.library" (V36) (Kickstart 2.0)
38535pub unsafe fn ObtainGIRPort(IntuitionBase: *mut Library, gInfo: *mut GadgetInfo) -> *mut RastPort {
38536    let asm_ret_value: *mut RastPort;
38537    unsafe {
38538        asm!(
38539            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38540            ".short 0x40c0",
38541            "move.l %a6, -(%sp)",
38542            "move.l {basereg}, %a6",
38543            ".short 0x4eae", // jsr -558(a6)
38544            ".short -558",
38545            "move.l (%sp)+, %a6",
38546            "movem.l (%sp)+, %d1/%a0-%a1",
38547            basereg = in(reg) IntuitionBase,
38548            in("a0") gInfo,
38549            out("d0") asm_ret_value,
38550        );
38551    }
38552    asm_ret_value
38553}
38554
38555/// libname: "intuition.library" (V36) (Kickstart 2.0)
38556pub unsafe fn ReleaseGIRPort(IntuitionBase: *mut Library, rp: *mut RastPort) {
38557    unsafe {
38558        asm!(
38559            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38560            ".short 0xc0c0",
38561            "move.l %a6, -(%sp)",
38562            "move.l {basereg}, %a6",
38563            ".short 0x4eae", // jsr -564(a6)
38564            ".short -564",
38565            "move.l (%sp)+, %a6",
38566            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38567            basereg = in(reg) IntuitionBase,
38568            in("a0") rp,
38569        );
38570    }
38571}
38572
38573/// libname: "intuition.library" (V36) (Kickstart 2.0)
38574pub unsafe fn GadgetMouse(
38575    IntuitionBase: *mut Library,
38576    gadget: *mut Gadget,
38577    gInfo: *mut GadgetInfo,
38578    mousePoint: *mut WORD,
38579) {
38580    unsafe {
38581        asm!(
38582            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38583            ".short 0xc0c0",
38584            "move.l %a6, -(%sp)",
38585            "move.l {basereg}, %a6",
38586            ".short 0x4eae", // jsr -570(a6)
38587            ".short -570",
38588            "move.l (%sp)+, %a6",
38589            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38590            basereg = in(reg) IntuitionBase,
38591            in("a0") gadget,
38592            in("a1") gInfo,
38593            in("a2") mousePoint,
38594        );
38595    }
38596}
38597
38598/// libname: "intuition.library" (V36) (Kickstart 2.0)
38599pub unsafe fn GetDefaultPubScreen(IntuitionBase: *mut Library, nameBuffer: STRPTR) {
38600    unsafe {
38601        asm!(
38602            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38603            ".short 0xc0c0",
38604            "move.l %a6, -(%sp)",
38605            "move.l {basereg}, %a6",
38606            ".short 0x4eae", // jsr -582(a6)
38607            ".short -582",
38608            "move.l (%sp)+, %a6",
38609            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38610            basereg = in(reg) IntuitionBase,
38611            in("a0") nameBuffer,
38612        );
38613    }
38614}
38615
38616/// libname: "intuition.library" (V36) (Kickstart 2.0)
38617pub unsafe fn EasyRequestArgs(
38618    IntuitionBase: *mut Library,
38619    window: *mut Window,
38620    easyStruct: *const EasyStruct,
38621    idcmpPtr: *mut ULONG,
38622    args: CONST_APTR,
38623) -> LONG {
38624    let asm_ret_value: LONG;
38625    unsafe {
38626        asm!(
38627            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38628            ".short 0x40c0",
38629            "move.l %a6, -(%sp)",
38630            "move.l {basereg}, %a6",
38631            ".short 0x4eae", // jsr -588(a6)
38632            ".short -588",
38633            "move.l (%sp)+, %a6",
38634            "movem.l (%sp)+, %d1/%a0-%a1",
38635            basereg = in(reg) IntuitionBase,
38636            in("a0") window,
38637            in("a1") easyStruct,
38638            in("a2") idcmpPtr,
38639            in("a3") args,
38640            out("d0") asm_ret_value,
38641        );
38642    }
38643    asm_ret_value
38644}
38645
38646/// libname: "intuition.library" (V36) (Kickstart 2.0)
38647pub unsafe fn BuildEasyRequestArgs(
38648    IntuitionBase: *mut Library,
38649    window: *mut Window,
38650    easyStruct: *const EasyStruct,
38651    idcmp: ULONG,
38652    args: CONST_APTR,
38653) -> *mut Window {
38654    let asm_ret_value: *mut Window;
38655    unsafe {
38656        asm!(
38657            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38658            ".short 0x40c0",
38659            "move.l %a6, -(%sp)",
38660            "move.l {basereg}, %a6",
38661            ".short 0x4eae", // jsr -594(a6)
38662            ".short -594",
38663            "move.l (%sp)+, %a6",
38664            "movem.l (%sp)+, %d1/%a0-%a1",
38665            basereg = in(reg) IntuitionBase,
38666            in("a0") window,
38667            in("a1") easyStruct,
38668            in("d0") idcmp,
38669            in("a3") args,
38670            lateout("d0") asm_ret_value,
38671        );
38672    }
38673    asm_ret_value
38674}
38675
38676/// libname: "intuition.library" (V36) (Kickstart 2.0)
38677pub unsafe fn SysReqHandler(
38678    IntuitionBase: *mut Library,
38679    window: *mut Window,
38680    idcmpPtr: *mut ULONG,
38681    waitInput: LONG,
38682) -> LONG {
38683    let asm_ret_value: LONG;
38684    unsafe {
38685        asm!(
38686            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38687            ".short 0x40c0",
38688            "move.l %a6, -(%sp)",
38689            "move.l {basereg}, %a6",
38690            ".short 0x4eae", // jsr -600(a6)
38691            ".short -600",
38692            "move.l (%sp)+, %a6",
38693            "movem.l (%sp)+, %d1/%a0-%a1",
38694            basereg = in(reg) IntuitionBase,
38695            in("a0") window,
38696            in("a1") idcmpPtr,
38697            in("d0") waitInput,
38698            lateout("d0") asm_ret_value,
38699        );
38700    }
38701    asm_ret_value
38702}
38703
38704/// libname: "intuition.library" (V36) (Kickstart 2.0)
38705pub unsafe fn OpenWindowTagList(
38706    IntuitionBase: *mut Library,
38707    newWindow: *const NewWindow,
38708    tagList: *const TagItem,
38709) -> *mut Window {
38710    let asm_ret_value: *mut Window;
38711    unsafe {
38712        asm!(
38713            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38714            ".short 0x40c0",
38715            "move.l %a6, -(%sp)",
38716            "move.l {basereg}, %a6",
38717            ".short 0x4eae", // jsr -606(a6)
38718            ".short -606",
38719            "move.l (%sp)+, %a6",
38720            "movem.l (%sp)+, %d1/%a0-%a1",
38721            basereg = in(reg) IntuitionBase,
38722            in("a0") newWindow,
38723            in("a1") tagList,
38724            out("d0") asm_ret_value,
38725        );
38726    }
38727    asm_ret_value
38728}
38729
38730/// libname: "intuition.library" (V36) (Kickstart 2.0)
38731pub unsafe fn OpenScreenTagList(
38732    IntuitionBase: *mut Library,
38733    newScreen: *const NewScreen,
38734    tagList: *const TagItem,
38735) -> *mut Screen {
38736    let asm_ret_value: *mut Screen;
38737    unsafe {
38738        asm!(
38739            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38740            ".short 0x40c0",
38741            "move.l %a6, -(%sp)",
38742            "move.l {basereg}, %a6",
38743            ".short 0x4eae", // jsr -612(a6)
38744            ".short -612",
38745            "move.l (%sp)+, %a6",
38746            "movem.l (%sp)+, %d1/%a0-%a1",
38747            basereg = in(reg) IntuitionBase,
38748            in("a0") newScreen,
38749            in("a1") tagList,
38750            out("d0") asm_ret_value,
38751        );
38752    }
38753    asm_ret_value
38754}
38755
38756/// libname: "intuition.library" (V36) (Kickstart 2.0)
38757pub unsafe fn DrawImageState(
38758    IntuitionBase: *mut Library,
38759    rp: *mut RastPort,
38760    image: *const Image,
38761    leftOffset: LONG,
38762    topOffset: LONG,
38763    state: ULONG,
38764    drawInfo: *mut DrawInfo,
38765) {
38766    unsafe {
38767        asm!(
38768            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38769            ".short 0xc0c0",
38770            "move.l %a6, -(%sp)",
38771            "move.l {basereg}, %a6",
38772            ".short 0x4eae", // jsr -618(a6)
38773            ".short -618",
38774            "move.l (%sp)+, %a6",
38775            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38776            basereg = in(reg) IntuitionBase,
38777            in("a0") rp,
38778            in("a1") image,
38779            in("d0") leftOffset,
38780            in("d1") topOffset,
38781            in("d2") state,
38782            in("a2") drawInfo,
38783        );
38784    }
38785}
38786
38787/// libname: "intuition.library" (V36) (Kickstart 2.0)
38788pub unsafe fn PointInImage(IntuitionBase: *mut Library, point: ULONG, image: *const Image) -> BOOL {
38789    let asm_ret_value: BOOL;
38790    unsafe {
38791        asm!(
38792            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38793            ".short 0x40c0",
38794            "move.l %a6, -(%sp)",
38795            "move.l {basereg}, %a6",
38796            ".short 0x4eae", // jsr -624(a6)
38797            ".short -624",
38798            "move.l (%sp)+, %a6",
38799            "movem.l (%sp)+, %d1/%a0-%a1",
38800            basereg = in(reg) IntuitionBase,
38801            in("d0") point,
38802            in("a0") image,
38803            lateout("d0") asm_ret_value,
38804        );
38805    }
38806    asm_ret_value
38807}
38808
38809/// libname: "intuition.library" (V36) (Kickstart 2.0)
38810pub unsafe fn EraseImage(
38811    IntuitionBase: *mut Library,
38812    rp: *mut RastPort,
38813    image: *const Image,
38814    leftOffset: LONG,
38815    topOffset: LONG,
38816) {
38817    unsafe {
38818        asm!(
38819            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38820            ".short 0xc0c0",
38821            "move.l %a6, -(%sp)",
38822            "move.l {basereg}, %a6",
38823            ".short 0x4eae", // jsr -630(a6)
38824            ".short -630",
38825            "move.l (%sp)+, %a6",
38826            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38827            basereg = in(reg) IntuitionBase,
38828            in("a0") rp,
38829            in("a1") image,
38830            in("d0") leftOffset,
38831            in("d1") topOffset,
38832        );
38833    }
38834}
38835
38836/// libname: "intuition.library" (V36) (Kickstart 2.0)
38837pub unsafe fn NewObjectA(
38838    IntuitionBase: *mut Library,
38839    classPtr: *mut IClass,
38840    classID: CONST_STRPTR,
38841    tagList: *const TagItem,
38842) -> APTR {
38843    let asm_ret_value: APTR;
38844    unsafe {
38845        asm!(
38846            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38847            ".short 0x40c0",
38848            "move.l %a6, -(%sp)",
38849            "move.l {basereg}, %a6",
38850            ".short 0x4eae", // jsr -636(a6)
38851            ".short -636",
38852            "move.l (%sp)+, %a6",
38853            "movem.l (%sp)+, %d1/%a0-%a1",
38854            basereg = in(reg) IntuitionBase,
38855            in("a0") classPtr,
38856            in("a1") classID,
38857            in("a2") tagList,
38858            out("d0") asm_ret_value,
38859        );
38860    }
38861    asm_ret_value
38862}
38863
38864/// libname: "intuition.library" (V36) (Kickstart 2.0)
38865pub unsafe fn DisposeObject(IntuitionBase: *mut Library, object: APTR) {
38866    unsafe {
38867        asm!(
38868            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
38869            ".short 0xc0c0",
38870            "move.l %a6, -(%sp)",
38871            "move.l {basereg}, %a6",
38872            ".short 0x4eae", // jsr -642(a6)
38873            ".short -642",
38874            "move.l (%sp)+, %a6",
38875            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
38876            basereg = in(reg) IntuitionBase,
38877            in("a0") object,
38878        );
38879    }
38880}
38881
38882/// libname: "intuition.library" (V36) (Kickstart 2.0)
38883pub unsafe fn SetAttrsA(
38884    IntuitionBase: *mut Library,
38885    object: APTR,
38886    tagList: *const TagItem,
38887) -> ULONG {
38888    let asm_ret_value: ULONG;
38889    unsafe {
38890        asm!(
38891            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38892            ".short 0x40c0",
38893            "move.l %a6, -(%sp)",
38894            "move.l {basereg}, %a6",
38895            ".short 0x4eae", // jsr -648(a6)
38896            ".short -648",
38897            "move.l (%sp)+, %a6",
38898            "movem.l (%sp)+, %d1/%a0-%a1",
38899            basereg = in(reg) IntuitionBase,
38900            in("a0") object,
38901            in("a1") tagList,
38902            out("d0") asm_ret_value,
38903        );
38904    }
38905    asm_ret_value
38906}
38907
38908/// libname: "intuition.library" (V36) (Kickstart 2.0)
38909pub unsafe fn GetAttr(
38910    IntuitionBase: *mut Library,
38911    attrID: ULONG,
38912    object: APTR,
38913    storagePtr: *mut ULONG,
38914) -> ULONG {
38915    let asm_ret_value: ULONG;
38916    unsafe {
38917        asm!(
38918            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38919            ".short 0x40c0",
38920            "move.l %a6, -(%sp)",
38921            "move.l {basereg}, %a6",
38922            ".short 0x4eae", // jsr -654(a6)
38923            ".short -654",
38924            "move.l (%sp)+, %a6",
38925            "movem.l (%sp)+, %d1/%a0-%a1",
38926            basereg = in(reg) IntuitionBase,
38927            in("d0") attrID,
38928            in("a0") object,
38929            in("a1") storagePtr,
38930            lateout("d0") asm_ret_value,
38931        );
38932    }
38933    asm_ret_value
38934}
38935
38936/// libname: "intuition.library" (V36) (Kickstart 2.0)
38937pub unsafe fn SetGadgetAttrsA(
38938    IntuitionBase: *mut Library,
38939    gadget: *mut Gadget,
38940    window: *mut Window,
38941    requester: *mut Requester,
38942    tagList: *const TagItem,
38943) -> ULONG {
38944    let asm_ret_value: ULONG;
38945    unsafe {
38946        asm!(
38947            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38948            ".short 0x40c0",
38949            "move.l %a6, -(%sp)",
38950            "move.l {basereg}, %a6",
38951            ".short 0x4eae", // jsr -660(a6)
38952            ".short -660",
38953            "move.l (%sp)+, %a6",
38954            "movem.l (%sp)+, %d1/%a0-%a1",
38955            basereg = in(reg) IntuitionBase,
38956            in("a0") gadget,
38957            in("a1") window,
38958            in("a2") requester,
38959            in("a3") tagList,
38960            out("d0") asm_ret_value,
38961        );
38962    }
38963    asm_ret_value
38964}
38965
38966/// libname: "intuition.library" (V36) (Kickstart 2.0)
38967pub unsafe fn NextObject(IntuitionBase: *mut Library, objectPtrPtr: CONST_APTR) -> APTR {
38968    let asm_ret_value: APTR;
38969    unsafe {
38970        asm!(
38971            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
38972            ".short 0x40c0",
38973            "move.l %a6, -(%sp)",
38974            "move.l {basereg}, %a6",
38975            ".short 0x4eae", // jsr -666(a6)
38976            ".short -666",
38977            "move.l (%sp)+, %a6",
38978            "movem.l (%sp)+, %d1/%a0-%a1",
38979            basereg = in(reg) IntuitionBase,
38980            in("a0") objectPtrPtr,
38981            out("d0") asm_ret_value,
38982        );
38983    }
38984    asm_ret_value
38985}
38986
38987/// libname: "intuition.library" (V36) (Kickstart 2.0)
38988pub unsafe fn MakeClass(
38989    IntuitionBase: *mut Library,
38990    classID: CONST_STRPTR,
38991    superClassID: CONST_STRPTR,
38992    superClassPtr: *const IClass,
38993    instanceSize: ULONG,
38994    flags: ULONG,
38995) -> *mut IClass {
38996    let asm_ret_value: *mut IClass;
38997    unsafe {
38998        asm!(
38999            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39000            ".short 0x40c0",
39001            "move.l %a6, -(%sp)",
39002            "move.l {basereg}, %a6",
39003            ".short 0x4eae", // jsr -678(a6)
39004            ".short -678",
39005            "move.l (%sp)+, %a6",
39006            "movem.l (%sp)+, %d1/%a0-%a1",
39007            basereg = in(reg) IntuitionBase,
39008            in("a0") classID,
39009            in("a1") superClassID,
39010            in("a2") superClassPtr,
39011            in("d0") instanceSize,
39012            in("d1") flags,
39013            lateout("d0") asm_ret_value,
39014        );
39015    }
39016    asm_ret_value
39017}
39018
39019/// libname: "intuition.library" (V36) (Kickstart 2.0)
39020pub unsafe fn AddClass(IntuitionBase: *mut Library, classPtr: *mut IClass) {
39021    unsafe {
39022        asm!(
39023            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39024            ".short 0xc0c0",
39025            "move.l %a6, -(%sp)",
39026            "move.l {basereg}, %a6",
39027            ".short 0x4eae", // jsr -684(a6)
39028            ".short -684",
39029            "move.l (%sp)+, %a6",
39030            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39031            basereg = in(reg) IntuitionBase,
39032            in("a0") classPtr,
39033        );
39034    }
39035}
39036
39037/// libname: "intuition.library" (V36) (Kickstart 2.0)
39038pub unsafe fn GetScreenDrawInfo(IntuitionBase: *mut Library, screen: *mut Screen) -> *mut DrawInfo {
39039    let asm_ret_value: *mut DrawInfo;
39040    unsafe {
39041        asm!(
39042            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39043            ".short 0x40c0",
39044            "move.l %a6, -(%sp)",
39045            "move.l {basereg}, %a6",
39046            ".short 0x4eae", // jsr -690(a6)
39047            ".short -690",
39048            "move.l (%sp)+, %a6",
39049            "movem.l (%sp)+, %d1/%a0-%a1",
39050            basereg = in(reg) IntuitionBase,
39051            in("a0") screen,
39052            out("d0") asm_ret_value,
39053        );
39054    }
39055    asm_ret_value
39056}
39057
39058/// libname: "intuition.library" (V36) (Kickstart 2.0)
39059pub unsafe fn FreeScreenDrawInfo(
39060    IntuitionBase: *mut Library,
39061    screen: *mut Screen,
39062    drawInfo: *mut DrawInfo,
39063) {
39064    unsafe {
39065        asm!(
39066            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39067            ".short 0xc0c0",
39068            "move.l %a6, -(%sp)",
39069            "move.l {basereg}, %a6",
39070            ".short 0x4eae", // jsr -696(a6)
39071            ".short -696",
39072            "move.l (%sp)+, %a6",
39073            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39074            basereg = in(reg) IntuitionBase,
39075            in("a0") screen,
39076            in("a1") drawInfo,
39077        );
39078    }
39079}
39080
39081/// libname: "intuition.library" (V36) (Kickstart 2.0)
39082pub unsafe fn ResetMenuStrip(
39083    IntuitionBase: *mut Library,
39084    window: *mut Window,
39085    menu: *mut Menu,
39086) -> BOOL {
39087    let asm_ret_value: BOOL;
39088    unsafe {
39089        asm!(
39090            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39091            ".short 0x40c0",
39092            "move.l %a6, -(%sp)",
39093            "move.l {basereg}, %a6",
39094            ".short 0x4eae", // jsr -702(a6)
39095            ".short -702",
39096            "move.l (%sp)+, %a6",
39097            "movem.l (%sp)+, %d1/%a0-%a1",
39098            basereg = in(reg) IntuitionBase,
39099            in("a0") window,
39100            in("a1") menu,
39101            out("d0") asm_ret_value,
39102        );
39103    }
39104    asm_ret_value
39105}
39106
39107/// libname: "intuition.library" (V36) (Kickstart 2.0)
39108pub unsafe fn RemoveClass(IntuitionBase: *mut Library, classPtr: *mut IClass) {
39109    unsafe {
39110        asm!(
39111            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39112            ".short 0xc0c0",
39113            "move.l %a6, -(%sp)",
39114            "move.l {basereg}, %a6",
39115            ".short 0x4eae", // jsr -708(a6)
39116            ".short -708",
39117            "move.l (%sp)+, %a6",
39118            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39119            basereg = in(reg) IntuitionBase,
39120            in("a0") classPtr,
39121        );
39122    }
39123}
39124
39125/// libname: "intuition.library" (V36) (Kickstart 2.0)
39126pub unsafe fn FreeClass(IntuitionBase: *mut Library, classPtr: *mut IClass) -> BOOL {
39127    let asm_ret_value: BOOL;
39128    unsafe {
39129        asm!(
39130            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39131            ".short 0x40c0",
39132            "move.l %a6, -(%sp)",
39133            "move.l {basereg}, %a6",
39134            ".short 0x4eae", // jsr -714(a6)
39135            ".short -714",
39136            "move.l (%sp)+, %a6",
39137            "movem.l (%sp)+, %d1/%a0-%a1",
39138            basereg = in(reg) IntuitionBase,
39139            in("a0") classPtr,
39140            out("d0") asm_ret_value,
39141        );
39142    }
39143    asm_ret_value
39144}
39145
39146/// libname: "intuition.library" (V39) (Kickstart 3.0)
39147pub unsafe fn AllocScreenBuffer(
39148    IntuitionBase: *mut Library,
39149    sc: *mut Screen,
39150    bm: *mut BitMap,
39151    flags: ULONG,
39152) -> *mut ScreenBuffer {
39153    let asm_ret_value: *mut ScreenBuffer;
39154    unsafe {
39155        asm!(
39156            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39157            ".short 0x40c0",
39158            "move.l %a6, -(%sp)",
39159            "move.l {basereg}, %a6",
39160            ".short 0x4eae", // jsr -768(a6)
39161            ".short -768",
39162            "move.l (%sp)+, %a6",
39163            "movem.l (%sp)+, %d1/%a0-%a1",
39164            basereg = in(reg) IntuitionBase,
39165            in("a0") sc,
39166            in("a1") bm,
39167            in("d0") flags,
39168            lateout("d0") asm_ret_value,
39169        );
39170    }
39171    asm_ret_value
39172}
39173
39174/// libname: "intuition.library" (V39) (Kickstart 3.0)
39175pub unsafe fn FreeScreenBuffer(
39176    IntuitionBase: *mut Library,
39177    sc: *mut Screen,
39178    sb: *mut ScreenBuffer,
39179) {
39180    unsafe {
39181        asm!(
39182            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39183            ".short 0xc0c0",
39184            "move.l %a6, -(%sp)",
39185            "move.l {basereg}, %a6",
39186            ".short 0x4eae", // jsr -774(a6)
39187            ".short -774",
39188            "move.l (%sp)+, %a6",
39189            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39190            basereg = in(reg) IntuitionBase,
39191            in("a0") sc,
39192            in("a1") sb,
39193        );
39194    }
39195}
39196
39197/// libname: "intuition.library" (V39) (Kickstart 3.0)
39198pub unsafe fn ChangeScreenBuffer(
39199    IntuitionBase: *mut Library,
39200    sc: *mut Screen,
39201    sb: *mut ScreenBuffer,
39202) -> ULONG {
39203    let asm_ret_value: ULONG;
39204    unsafe {
39205        asm!(
39206            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39207            ".short 0x40c0",
39208            "move.l %a6, -(%sp)",
39209            "move.l {basereg}, %a6",
39210            ".short 0x4eae", // jsr -780(a6)
39211            ".short -780",
39212            "move.l (%sp)+, %a6",
39213            "movem.l (%sp)+, %d1/%a0-%a1",
39214            basereg = in(reg) IntuitionBase,
39215            in("a0") sc,
39216            in("a1") sb,
39217            out("d0") asm_ret_value,
39218        );
39219    }
39220    asm_ret_value
39221}
39222
39223/// libname: "intuition.library" (V39) (Kickstart 3.0)
39224pub unsafe fn ScreenDepth(
39225    IntuitionBase: *mut Library,
39226    screen: *mut Screen,
39227    flags: ULONG,
39228    reserved: APTR,
39229) {
39230    unsafe {
39231        asm!(
39232            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39233            ".short 0xc0c0",
39234            "move.l %a6, -(%sp)",
39235            "move.l {basereg}, %a6",
39236            ".short 0x4eae", // jsr -786(a6)
39237            ".short -786",
39238            "move.l (%sp)+, %a6",
39239            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39240            basereg = in(reg) IntuitionBase,
39241            in("a0") screen,
39242            in("d0") flags,
39243            in("a1") reserved,
39244        );
39245    }
39246}
39247
39248/// libname: "intuition.library" (V39) (Kickstart 3.0)
39249pub unsafe fn ScreenPosition(
39250    IntuitionBase: *mut Library,
39251    screen: *mut Screen,
39252    flags: ULONG,
39253    x1: LONG,
39254    y1: LONG,
39255    x2: LONG,
39256    y2: LONG,
39257) {
39258    unsafe {
39259        asm!(
39260            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39261            ".short 0xc0c0",
39262            "move.l %a6, -(%sp)",
39263            "move.l {basereg}, %a6",
39264            ".short 0x4eae", // jsr -792(a6)
39265            ".short -792",
39266            "move.l (%sp)+, %a6",
39267            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39268            basereg = in(reg) IntuitionBase,
39269            in("a0") screen,
39270            in("d0") flags,
39271            in("d1") x1,
39272            in("d2") y1,
39273            in("d3") x2,
39274            in("d4") y2,
39275        );
39276    }
39277}
39278
39279/// libname: "intuition.library" (V39) (Kickstart 3.0)
39280pub unsafe fn ScrollWindowRaster(
39281    IntuitionBase: *mut Library,
39282    win: *mut Window,
39283    dx: LONG,
39284    dy: LONG,
39285    xMin: LONG,
39286    yMin: LONG,
39287    xMax: LONG,
39288    yMax: LONG,
39289) {
39290    unsafe {
39291        asm!(
39292            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39293            ".short 0xc0c0",
39294            "move.l %a6, -(%sp)",
39295            "move.l {basereg}, %a6",
39296            ".short 0x4eae", // jsr -798(a6)
39297            ".short -798",
39298            "move.l (%sp)+, %a6",
39299            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39300            basereg = in(reg) IntuitionBase,
39301            in("a1") win,
39302            in("d0") dx,
39303            in("d1") dy,
39304            in("d2") xMin,
39305            in("d3") yMin,
39306            in("d4") xMax,
39307            in("d5") yMax,
39308        );
39309    }
39310}
39311
39312/// libname: "intuition.library" (V39) (Kickstart 3.0)
39313pub unsafe fn LendMenus(
39314    IntuitionBase: *mut Library,
39315    fromwindow: *mut Window,
39316    towindow: *mut Window,
39317) {
39318    unsafe {
39319        asm!(
39320            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39321            ".short 0xc0c0",
39322            "move.l %a6, -(%sp)",
39323            "move.l {basereg}, %a6",
39324            ".short 0x4eae", // jsr -804(a6)
39325            ".short -804",
39326            "move.l (%sp)+, %a6",
39327            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39328            basereg = in(reg) IntuitionBase,
39329            in("a0") fromwindow,
39330            in("a1") towindow,
39331        );
39332    }
39333}
39334
39335/// libname: "intuition.library" (V39) (Kickstart 3.0)
39336pub unsafe fn DoGadgetMethodA(
39337    IntuitionBase: *mut Library,
39338    gad: *mut Gadget,
39339    win: *mut Window,
39340    req: *mut Requester,
39341    message: Msg,
39342) -> ULONG {
39343    let asm_ret_value: ULONG;
39344    unsafe {
39345        asm!(
39346            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39347            ".short 0x40c0",
39348            "move.l %a6, -(%sp)",
39349            "move.l {basereg}, %a6",
39350            ".short 0x4eae", // jsr -810(a6)
39351            ".short -810",
39352            "move.l (%sp)+, %a6",
39353            "movem.l (%sp)+, %d1/%a0-%a1",
39354            basereg = in(reg) IntuitionBase,
39355            in("a0") gad,
39356            in("a1") win,
39357            in("a2") req,
39358            in("a3") message,
39359            out("d0") asm_ret_value,
39360        );
39361    }
39362    asm_ret_value
39363}
39364
39365/// libname: "intuition.library" (V39) (Kickstart 3.0)
39366pub unsafe fn SetWindowPointerA(
39367    IntuitionBase: *mut Library,
39368    win: *mut Window,
39369    taglist: *const TagItem,
39370) {
39371    unsafe {
39372        asm!(
39373            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39374            ".short 0xc0c0",
39375            "move.l %a6, -(%sp)",
39376            "move.l {basereg}, %a6",
39377            ".short 0x4eae", // jsr -816(a6)
39378            ".short -816",
39379            "move.l (%sp)+, %a6",
39380            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39381            basereg = in(reg) IntuitionBase,
39382            in("a0") win,
39383            in("a1") taglist,
39384        );
39385    }
39386}
39387
39388/// libname: "intuition.library" (V39) (Kickstart 3.0)
39389pub unsafe fn TimedDisplayAlert(
39390    IntuitionBase: *mut Library,
39391    alertNumber: ULONG,
39392    string: CONST_STRPTR,
39393    height: ULONG,
39394    time: ULONG,
39395) -> BOOL {
39396    let asm_ret_value: BOOL;
39397    unsafe {
39398        asm!(
39399            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39400            ".short 0x40c0",
39401            "move.l %a6, -(%sp)",
39402            "move.l {basereg}, %a6",
39403            ".short 0x4eae", // jsr -822(a6)
39404            ".short -822",
39405            "move.l (%sp)+, %a6",
39406            "movem.l (%sp)+, %d1/%a0-%a1",
39407            basereg = in(reg) IntuitionBase,
39408            in("d0") alertNumber,
39409            in("a0") string,
39410            in("d1") height,
39411            in("a1") time,
39412            lateout("d0") asm_ret_value,
39413        );
39414    }
39415    asm_ret_value
39416}
39417
39418/// libname: "intuition.library" (V39) (Kickstart 3.0)
39419pub unsafe fn HelpControl(IntuitionBase: *mut Library, win: *mut Window, flags: ULONG) {
39420    unsafe {
39421        asm!(
39422            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39423            ".short 0xc0c0",
39424            "move.l %a6, -(%sp)",
39425            "move.l {basereg}, %a6",
39426            ".short 0x4eae", // jsr -828(a6)
39427            ".short -828",
39428            "move.l (%sp)+, %a6",
39429            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39430            basereg = in(reg) IntuitionBase,
39431            in("a0") win,
39432            in("d0") flags,
39433        );
39434    }
39435}
39436
39437/// libname: "intuition.library" (V47) (Kickstart 3.2 / 2020)
39438pub unsafe fn ShowWindow(
39439    IntuitionBase: *mut Library,
39440    window: *mut Window,
39441    other: *mut Window,
39442) -> BOOL {
39443    let asm_ret_value: BOOL;
39444    unsafe {
39445        asm!(
39446            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39447            ".short 0x40c0",
39448            "move.l %a6, -(%sp)",
39449            "move.l {basereg}, %a6",
39450            ".short 0x4eae", // jsr -834(a6)
39451            ".short -834",
39452            "move.l (%sp)+, %a6",
39453            "movem.l (%sp)+, %d1/%a0-%a1",
39454            basereg = in(reg) IntuitionBase,
39455            in("a0") window,
39456            in("a1") other,
39457            out("d0") asm_ret_value,
39458        );
39459    }
39460    asm_ret_value
39461}
39462
39463/// libname: "intuition.library" (V47) (Kickstart 3.2 / 2020)
39464pub unsafe fn HideWindow(IntuitionBase: *mut Library, window: *mut Window) -> BOOL {
39465    let asm_ret_value: BOOL;
39466    unsafe {
39467        asm!(
39468            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39469            ".short 0x40c0",
39470            "move.l %a6, -(%sp)",
39471            "move.l {basereg}, %a6",
39472            ".short 0x4eae", // jsr -840(a6)
39473            ".short -840",
39474            "move.l (%sp)+, %a6",
39475            "movem.l (%sp)+, %d1/%a0-%a1",
39476            basereg = in(reg) IntuitionBase,
39477            in("a0") window,
39478            out("d0") asm_ret_value,
39479        );
39480    }
39481    asm_ret_value
39482}
39483
39484/// libname: "intuition.library" (V47) (Kickstart 3.2 / 2020)
39485pub unsafe fn IntuitionControlA(
39486    IntuitionBase: *mut Library,
39487    object: APTR,
39488    taglist: *const TagItem,
39489) -> ULONG {
39490    let asm_ret_value: ULONG;
39491    unsafe {
39492        asm!(
39493            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39494            ".short 0x40c0",
39495            "move.l %a6, -(%sp)",
39496            "move.l {basereg}, %a6",
39497            ".short 0x4eae", // jsr -1212(a6)
39498            ".short -1212",
39499            "move.l (%sp)+, %a6",
39500            "movem.l (%sp)+, %d1/%a0-%a1",
39501            basereg = in(reg) IntuitionBase,
39502            in("a0") object,
39503            in("a1") taglist,
39504            out("d0") asm_ret_value,
39505        );
39506    }
39507    asm_ret_value
39508}
39509
39510/// libname: "keymap.library" (V36) (Kickstart 2.0)
39511pub unsafe fn SetKeyMapDefault(KeymapBase: *mut Library, keyMap: *mut KeyMap) {
39512    unsafe {
39513        asm!(
39514            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39515            ".short 0xc0c0",
39516            "move.l %a6, -(%sp)",
39517            "move.l {basereg}, %a6",
39518            ".short 0x4eae", // jsr -30(a6)
39519            ".short -30",
39520            "move.l (%sp)+, %a6",
39521            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39522            basereg = in(reg) KeymapBase,
39523            in("a0") keyMap,
39524        );
39525    }
39526}
39527
39528/// libname: "keymap.library" (V36) (Kickstart 2.0)
39529pub unsafe fn AskKeyMapDefault(KeymapBase: *mut Library) -> *mut KeyMap {
39530    let asm_ret_value: *mut KeyMap;
39531    unsafe {
39532        asm!(
39533            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39534            ".short 0x40c0",
39535            "move.l %a6, -(%sp)",
39536            "move.l {basereg}, %a6",
39537            ".short 0x4eae", // jsr -36(a6)
39538            ".short -36",
39539            "move.l (%sp)+, %a6",
39540            "movem.l (%sp)+, %d1/%a0-%a1",
39541            basereg = in(reg) KeymapBase,
39542            out("d0") asm_ret_value,
39543        );
39544    }
39545    asm_ret_value
39546}
39547
39548/// libname: "keymap.library" (V36) (Kickstart 2.0)
39549pub unsafe fn MapRawKey(
39550    KeymapBase: *mut Library,
39551    event: *const InputEvent,
39552    buffer: STRPTR,
39553    length: LONG,
39554    keyMap: *const KeyMap,
39555) -> WORD {
39556    let asm_ret_value: WORD;
39557    unsafe {
39558        asm!(
39559            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39560            ".short 0x40c0",
39561            "move.l %a6, -(%sp)",
39562            "move.l {basereg}, %a6",
39563            ".short 0x4eae", // jsr -42(a6)
39564            ".short -42",
39565            "move.l (%sp)+, %a6",
39566            "movem.l (%sp)+, %d1/%a0-%a1",
39567            basereg = in(reg) KeymapBase,
39568            in("a0") event,
39569            in("a1") buffer,
39570            in("d1") length,
39571            in("a2") keyMap,
39572            out("d0") asm_ret_value,
39573        );
39574    }
39575    asm_ret_value
39576}
39577
39578/// libname: "keymap.library" (V36) (Kickstart 2.0)
39579pub unsafe fn MapANSI(
39580    KeymapBase: *mut Library,
39581    string: CONST_STRPTR,
39582    count: LONG,
39583    buffer: STRPTR,
39584    length: LONG,
39585    keyMap: *const KeyMap,
39586) -> LONG {
39587    let asm_ret_value: LONG;
39588    unsafe {
39589        asm!(
39590            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39591            ".short 0x40c0",
39592            "move.l %a6, -(%sp)",
39593            "move.l {basereg}, %a6",
39594            ".short 0x4eae", // jsr -48(a6)
39595            ".short -48",
39596            "move.l (%sp)+, %a6",
39597            "movem.l (%sp)+, %d1/%a0-%a1",
39598            basereg = in(reg) KeymapBase,
39599            in("a0") string,
39600            in("d0") count,
39601            in("a1") buffer,
39602            in("d1") length,
39603            in("a2") keyMap,
39604            lateout("d0") asm_ret_value,
39605        );
39606    }
39607    asm_ret_value
39608}
39609
39610/// libname: "label.image" (V40) (Kickstart 3.1)
39611pub unsafe fn LABEL_GetClass(LabelBase: *mut ::core::ffi::c_void) -> *mut Class {
39612    let asm_ret_value: *mut Class;
39613    unsafe {
39614        asm!(
39615            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39616            ".short 0x40c0",
39617            "move.l %a6, -(%sp)",
39618            "move.l {basereg}, %a6",
39619            ".short 0x4eae", // jsr -30(a6)
39620            ".short -30",
39621            "move.l (%sp)+, %a6",
39622            "movem.l (%sp)+, %d1/%a0-%a1",
39623            basereg = in(reg) LabelBase,
39624            out("d0") asm_ret_value,
39625        );
39626    }
39627    asm_ret_value
39628}
39629
39630/// libname: "layers.library"
39631pub unsafe fn InitLayers(LayersBase: *mut Library, li: *mut Layer_Info) {
39632    unsafe {
39633        asm!(
39634            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39635            ".short 0xc0c0",
39636            "move.l %a6, -(%sp)",
39637            "move.l {basereg}, %a6",
39638            ".short 0x4eae", // jsr -30(a6)
39639            ".short -30",
39640            "move.l (%sp)+, %a6",
39641            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39642            basereg = in(reg) LayersBase,
39643            in("a0") li,
39644        );
39645    }
39646}
39647
39648/// libname: "layers.library"
39649pub unsafe fn CreateUpfrontLayer(
39650    LayersBase: *mut Library,
39651    li: *mut Layer_Info,
39652    bm: *mut BitMap,
39653    x0: LONG,
39654    y0: LONG,
39655    x1: LONG,
39656    y1: LONG,
39657    flags: LONG,
39658    bm2: *mut BitMap,
39659) -> *mut Layer {
39660    let asm_ret_value: *mut Layer;
39661    unsafe {
39662        asm!(
39663            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39664            ".short 0x40c0",
39665            "move.l %a6, -(%sp)",
39666            "move.l {basereg}, %a6",
39667            ".short 0x4eae", // jsr -36(a6)
39668            ".short -36",
39669            "move.l (%sp)+, %a6",
39670            "movem.l (%sp)+, %d1/%a0-%a1",
39671            basereg = in(reg) LayersBase,
39672            in("a0") li,
39673            in("a1") bm,
39674            in("d0") x0,
39675            in("d1") y0,
39676            in("d2") x1,
39677            in("d3") y1,
39678            in("d4") flags,
39679            in("a2") bm2,
39680            lateout("d0") asm_ret_value,
39681        );
39682    }
39683    asm_ret_value
39684}
39685
39686/// libname: "layers.library"
39687pub unsafe fn CreateBehindLayer(
39688    LayersBase: *mut Library,
39689    li: *mut Layer_Info,
39690    bm: *mut BitMap,
39691    x0: LONG,
39692    y0: LONG,
39693    x1: LONG,
39694    y1: LONG,
39695    flags: LONG,
39696    bm2: *mut BitMap,
39697) -> *mut Layer {
39698    let asm_ret_value: *mut Layer;
39699    unsafe {
39700        asm!(
39701            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39702            ".short 0x40c0",
39703            "move.l %a6, -(%sp)",
39704            "move.l {basereg}, %a6",
39705            ".short 0x4eae", // jsr -42(a6)
39706            ".short -42",
39707            "move.l (%sp)+, %a6",
39708            "movem.l (%sp)+, %d1/%a0-%a1",
39709            basereg = in(reg) LayersBase,
39710            in("a0") li,
39711            in("a1") bm,
39712            in("d0") x0,
39713            in("d1") y0,
39714            in("d2") x1,
39715            in("d3") y1,
39716            in("d4") flags,
39717            in("a2") bm2,
39718            lateout("d0") asm_ret_value,
39719        );
39720    }
39721    asm_ret_value
39722}
39723
39724/// libname: "layers.library"
39725pub unsafe fn UpfrontLayer(LayersBase: *mut Library, dummy: LONG, layer: *mut Layer) -> LONG {
39726    let asm_ret_value: LONG;
39727    unsafe {
39728        asm!(
39729            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39730            ".short 0x40c0",
39731            "move.l %a6, -(%sp)",
39732            "move.l {basereg}, %a6",
39733            ".short 0x4eae", // jsr -48(a6)
39734            ".short -48",
39735            "move.l (%sp)+, %a6",
39736            "movem.l (%sp)+, %d1/%a0-%a1",
39737            basereg = in(reg) LayersBase,
39738            in("a0") dummy,
39739            in("a1") layer,
39740            out("d0") asm_ret_value,
39741        );
39742    }
39743    asm_ret_value
39744}
39745
39746/// libname: "layers.library"
39747pub unsafe fn BehindLayer(LayersBase: *mut Library, dummy: LONG, layer: *mut Layer) -> LONG {
39748    let asm_ret_value: LONG;
39749    unsafe {
39750        asm!(
39751            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39752            ".short 0x40c0",
39753            "move.l %a6, -(%sp)",
39754            "move.l {basereg}, %a6",
39755            ".short 0x4eae", // jsr -54(a6)
39756            ".short -54",
39757            "move.l (%sp)+, %a6",
39758            "movem.l (%sp)+, %d1/%a0-%a1",
39759            basereg = in(reg) LayersBase,
39760            in("a0") dummy,
39761            in("a1") layer,
39762            out("d0") asm_ret_value,
39763        );
39764    }
39765    asm_ret_value
39766}
39767
39768/// libname: "layers.library"
39769pub unsafe fn MoveLayer(
39770    LayersBase: *mut Library,
39771    dummy: LONG,
39772    layer: *mut Layer,
39773    dx: LONG,
39774    dy: LONG,
39775) -> LONG {
39776    let asm_ret_value: LONG;
39777    unsafe {
39778        asm!(
39779            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39780            ".short 0x40c0",
39781            "move.l %a6, -(%sp)",
39782            "move.l {basereg}, %a6",
39783            ".short 0x4eae", // jsr -60(a6)
39784            ".short -60",
39785            "move.l (%sp)+, %a6",
39786            "movem.l (%sp)+, %d1/%a0-%a1",
39787            basereg = in(reg) LayersBase,
39788            in("a0") dummy,
39789            in("a1") layer,
39790            in("d0") dx,
39791            in("d1") dy,
39792            lateout("d0") asm_ret_value,
39793        );
39794    }
39795    asm_ret_value
39796}
39797
39798/// libname: "layers.library"
39799pub unsafe fn SizeLayer(
39800    LayersBase: *mut Library,
39801    dummy: LONG,
39802    layer: *mut Layer,
39803    dx: LONG,
39804    dy: LONG,
39805) -> LONG {
39806    let asm_ret_value: LONG;
39807    unsafe {
39808        asm!(
39809            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39810            ".short 0x40c0",
39811            "move.l %a6, -(%sp)",
39812            "move.l {basereg}, %a6",
39813            ".short 0x4eae", // jsr -66(a6)
39814            ".short -66",
39815            "move.l (%sp)+, %a6",
39816            "movem.l (%sp)+, %d1/%a0-%a1",
39817            basereg = in(reg) LayersBase,
39818            in("a0") dummy,
39819            in("a1") layer,
39820            in("d0") dx,
39821            in("d1") dy,
39822            lateout("d0") asm_ret_value,
39823        );
39824    }
39825    asm_ret_value
39826}
39827
39828/// libname: "layers.library"
39829pub unsafe fn ScrollLayer(
39830    LayersBase: *mut Library,
39831    dummy: LONG,
39832    layer: *mut Layer,
39833    dx: LONG,
39834    dy: LONG,
39835) {
39836    unsafe {
39837        asm!(
39838            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39839            ".short 0xc0c0",
39840            "move.l %a6, -(%sp)",
39841            "move.l {basereg}, %a6",
39842            ".short 0x4eae", // jsr -72(a6)
39843            ".short -72",
39844            "move.l (%sp)+, %a6",
39845            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39846            basereg = in(reg) LayersBase,
39847            in("a0") dummy,
39848            in("a1") layer,
39849            in("d0") dx,
39850            in("d1") dy,
39851        );
39852    }
39853}
39854
39855/// libname: "layers.library"
39856pub unsafe fn BeginUpdate(LayersBase: *mut Library, l: *mut Layer) -> LONG {
39857    let asm_ret_value: LONG;
39858    unsafe {
39859        asm!(
39860            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39861            ".short 0x40c0",
39862            "move.l %a6, -(%sp)",
39863            "move.l {basereg}, %a6",
39864            ".short 0x4eae", // jsr -78(a6)
39865            ".short -78",
39866            "move.l (%sp)+, %a6",
39867            "movem.l (%sp)+, %d1/%a0-%a1",
39868            basereg = in(reg) LayersBase,
39869            in("a0") l,
39870            out("d0") asm_ret_value,
39871        );
39872    }
39873    asm_ret_value
39874}
39875
39876/// libname: "layers.library"
39877pub unsafe fn EndUpdate(LayersBase: *mut Library, layer: *mut Layer, flag: ULONG) {
39878    unsafe {
39879        asm!(
39880            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39881            ".short 0xc0c0",
39882            "move.l %a6, -(%sp)",
39883            "move.l {basereg}, %a6",
39884            ".short 0x4eae", // jsr -84(a6)
39885            ".short -84",
39886            "move.l (%sp)+, %a6",
39887            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39888            basereg = in(reg) LayersBase,
39889            in("a0") layer,
39890            in("d0") flag,
39891        );
39892    }
39893}
39894
39895/// libname: "layers.library"
39896pub unsafe fn DeleteLayer(LayersBase: *mut Library, dummy: LONG, layer: *mut Layer) -> LONG {
39897    let asm_ret_value: LONG;
39898    unsafe {
39899        asm!(
39900            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
39901            ".short 0x40c0",
39902            "move.l %a6, -(%sp)",
39903            "move.l {basereg}, %a6",
39904            ".short 0x4eae", // jsr -90(a6)
39905            ".short -90",
39906            "move.l (%sp)+, %a6",
39907            "movem.l (%sp)+, %d1/%a0-%a1",
39908            basereg = in(reg) LayersBase,
39909            in("a0") dummy,
39910            in("a1") layer,
39911            out("d0") asm_ret_value,
39912        );
39913    }
39914    asm_ret_value
39915}
39916
39917/// libname: "layers.library"
39918pub unsafe fn LockLayer(LayersBase: *mut Library, dummy: LONG, layer: *mut Layer) {
39919    unsafe {
39920        asm!(
39921            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39922            ".short 0xc0c0",
39923            "move.l %a6, -(%sp)",
39924            "move.l {basereg}, %a6",
39925            ".short 0x4eae", // jsr -96(a6)
39926            ".short -96",
39927            "move.l (%sp)+, %a6",
39928            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39929            basereg = in(reg) LayersBase,
39930            in("a0") dummy,
39931            in("a1") layer,
39932        );
39933    }
39934}
39935
39936/// libname: "layers.library"
39937pub unsafe fn UnlockLayer(LayersBase: *mut Library, layer: *mut Layer) {
39938    unsafe {
39939        asm!(
39940            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39941            ".short 0xc0c0",
39942            "move.l %a6, -(%sp)",
39943            "move.l {basereg}, %a6",
39944            ".short 0x4eae", // jsr -102(a6)
39945            ".short -102",
39946            "move.l (%sp)+, %a6",
39947            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39948            basereg = in(reg) LayersBase,
39949            in("a0") layer,
39950        );
39951    }
39952}
39953
39954/// libname: "layers.library"
39955pub unsafe fn LockLayers(LayersBase: *mut Library, li: *mut Layer_Info) {
39956    unsafe {
39957        asm!(
39958            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39959            ".short 0xc0c0",
39960            "move.l %a6, -(%sp)",
39961            "move.l {basereg}, %a6",
39962            ".short 0x4eae", // jsr -108(a6)
39963            ".short -108",
39964            "move.l (%sp)+, %a6",
39965            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39966            basereg = in(reg) LayersBase,
39967            in("a0") li,
39968        );
39969    }
39970}
39971
39972/// libname: "layers.library"
39973pub unsafe fn UnlockLayers(LayersBase: *mut Library, li: *mut Layer_Info) {
39974    unsafe {
39975        asm!(
39976            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39977            ".short 0xc0c0",
39978            "move.l %a6, -(%sp)",
39979            "move.l {basereg}, %a6",
39980            ".short 0x4eae", // jsr -114(a6)
39981            ".short -114",
39982            "move.l (%sp)+, %a6",
39983            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
39984            basereg = in(reg) LayersBase,
39985            in("a0") li,
39986        );
39987    }
39988}
39989
39990/// libname: "layers.library"
39991pub unsafe fn LockLayerInfo(LayersBase: *mut Library, li: *mut Layer_Info) {
39992    unsafe {
39993        asm!(
39994            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
39995            ".short 0xc0c0",
39996            "move.l %a6, -(%sp)",
39997            "move.l {basereg}, %a6",
39998            ".short 0x4eae", // jsr -120(a6)
39999            ".short -120",
40000            "move.l (%sp)+, %a6",
40001            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40002            basereg = in(reg) LayersBase,
40003            in("a0") li,
40004        );
40005    }
40006}
40007
40008/// libname: "layers.library"
40009pub unsafe fn SwapBitsRastPortClipRect(
40010    LayersBase: *mut Library,
40011    rp: *mut RastPort,
40012    cr: *mut ClipRect,
40013) {
40014    unsafe {
40015        asm!(
40016            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40017            ".short 0xc0c0",
40018            "move.l %a6, -(%sp)",
40019            "move.l {basereg}, %a6",
40020            ".short 0x4eae", // jsr -126(a6)
40021            ".short -126",
40022            "move.l (%sp)+, %a6",
40023            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40024            basereg = in(reg) LayersBase,
40025            in("a0") rp,
40026            in("a1") cr,
40027        );
40028    }
40029}
40030
40031/// libname: "layers.library"
40032pub unsafe fn WhichLayer(
40033    LayersBase: *mut Library,
40034    li: *mut Layer_Info,
40035    x: LONG,
40036    y: LONG,
40037) -> *mut Layer {
40038    let asm_ret_value: *mut Layer;
40039    unsafe {
40040        asm!(
40041            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40042            ".short 0x40c0",
40043            "move.l %a6, -(%sp)",
40044            "move.l {basereg}, %a6",
40045            ".short 0x4eae", // jsr -132(a6)
40046            ".short -132",
40047            "move.l (%sp)+, %a6",
40048            "movem.l (%sp)+, %d1/%a0-%a1",
40049            basereg = in(reg) LayersBase,
40050            in("a0") li,
40051            in("d0") x,
40052            in("d1") y,
40053            lateout("d0") asm_ret_value,
40054        );
40055    }
40056    asm_ret_value
40057}
40058
40059/// libname: "layers.library"
40060pub unsafe fn UnlockLayerInfo(LayersBase: *mut Library, li: *mut Layer_Info) {
40061    unsafe {
40062        asm!(
40063            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40064            ".short 0xc0c0",
40065            "move.l %a6, -(%sp)",
40066            "move.l {basereg}, %a6",
40067            ".short 0x4eae", // jsr -138(a6)
40068            ".short -138",
40069            "move.l (%sp)+, %a6",
40070            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40071            basereg = in(reg) LayersBase,
40072            in("a0") li,
40073        );
40074    }
40075}
40076
40077/// libname: "layers.library"
40078pub unsafe fn NewLayerInfo(LayersBase: *mut Library) -> *mut Layer_Info {
40079    let asm_ret_value: *mut Layer_Info;
40080    unsafe {
40081        asm!(
40082            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40083            ".short 0x40c0",
40084            "move.l %a6, -(%sp)",
40085            "move.l {basereg}, %a6",
40086            ".short 0x4eae", // jsr -144(a6)
40087            ".short -144",
40088            "move.l (%sp)+, %a6",
40089            "movem.l (%sp)+, %d1/%a0-%a1",
40090            basereg = in(reg) LayersBase,
40091            out("d0") asm_ret_value,
40092        );
40093    }
40094    asm_ret_value
40095}
40096
40097/// libname: "layers.library"
40098pub unsafe fn DisposeLayerInfo(LayersBase: *mut Library, li: *mut Layer_Info) {
40099    unsafe {
40100        asm!(
40101            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40102            ".short 0xc0c0",
40103            "move.l %a6, -(%sp)",
40104            "move.l {basereg}, %a6",
40105            ".short 0x4eae", // jsr -150(a6)
40106            ".short -150",
40107            "move.l (%sp)+, %a6",
40108            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40109            basereg = in(reg) LayersBase,
40110            in("a0") li,
40111        );
40112    }
40113}
40114
40115/// libname: "layers.library"
40116pub unsafe fn FattenLayerInfo(LayersBase: *mut Library, li: *mut Layer_Info) -> LONG {
40117    let asm_ret_value: LONG;
40118    unsafe {
40119        asm!(
40120            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40121            ".short 0x40c0",
40122            "move.l %a6, -(%sp)",
40123            "move.l {basereg}, %a6",
40124            ".short 0x4eae", // jsr -156(a6)
40125            ".short -156",
40126            "move.l (%sp)+, %a6",
40127            "movem.l (%sp)+, %d1/%a0-%a1",
40128            basereg = in(reg) LayersBase,
40129            in("a0") li,
40130            out("d0") asm_ret_value,
40131        );
40132    }
40133    asm_ret_value
40134}
40135
40136/// libname: "layers.library"
40137pub unsafe fn ThinLayerInfo(LayersBase: *mut Library, li: *mut Layer_Info) {
40138    unsafe {
40139        asm!(
40140            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40141            ".short 0xc0c0",
40142            "move.l %a6, -(%sp)",
40143            "move.l {basereg}, %a6",
40144            ".short 0x4eae", // jsr -162(a6)
40145            ".short -162",
40146            "move.l (%sp)+, %a6",
40147            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40148            basereg = in(reg) LayersBase,
40149            in("a0") li,
40150        );
40151    }
40152}
40153
40154/// libname: "layers.library"
40155pub unsafe fn MoveLayerInFrontOf(
40156    LayersBase: *mut Library,
40157    layer_to_move: *mut Layer,
40158    other_layer: *mut Layer,
40159) -> LONG {
40160    let asm_ret_value: LONG;
40161    unsafe {
40162        asm!(
40163            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40164            ".short 0x40c0",
40165            "move.l %a6, -(%sp)",
40166            "move.l {basereg}, %a6",
40167            ".short 0x4eae", // jsr -168(a6)
40168            ".short -168",
40169            "move.l (%sp)+, %a6",
40170            "movem.l (%sp)+, %d1/%a0-%a1",
40171            basereg = in(reg) LayersBase,
40172            in("a0") layer_to_move,
40173            in("a1") other_layer,
40174            out("d0") asm_ret_value,
40175        );
40176    }
40177    asm_ret_value
40178}
40179
40180/// libname: "layers.library"
40181pub unsafe fn InstallClipRegion(
40182    LayersBase: *mut Library,
40183    layer: *mut Layer,
40184    region: *mut Region,
40185) -> *mut Region {
40186    let asm_ret_value: *mut Region;
40187    unsafe {
40188        asm!(
40189            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40190            ".short 0x40c0",
40191            "move.l %a6, -(%sp)",
40192            "move.l {basereg}, %a6",
40193            ".short 0x4eae", // jsr -174(a6)
40194            ".short -174",
40195            "move.l (%sp)+, %a6",
40196            "movem.l (%sp)+, %d1/%a0-%a1",
40197            basereg = in(reg) LayersBase,
40198            in("a0") layer,
40199            in("a1") region,
40200            out("d0") asm_ret_value,
40201        );
40202    }
40203    asm_ret_value
40204}
40205
40206/// libname: "layers.library" (V36) (Kickstart 2.0)
40207pub unsafe fn MoveSizeLayer(
40208    LayersBase: *mut Library,
40209    layer: *mut Layer,
40210    dx: LONG,
40211    dy: LONG,
40212    dw: LONG,
40213    dh: LONG,
40214) -> LONG {
40215    let asm_ret_value: LONG;
40216    unsafe {
40217        asm!(
40218            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40219            ".short 0x40c0",
40220            "move.l %a6, -(%sp)",
40221            "move.l {basereg}, %a6",
40222            ".short 0x4eae", // jsr -180(a6)
40223            ".short -180",
40224            "move.l (%sp)+, %a6",
40225            "movem.l (%sp)+, %d1/%a0-%a1",
40226            basereg = in(reg) LayersBase,
40227            in("a0") layer,
40228            in("d0") dx,
40229            in("d1") dy,
40230            in("d2") dw,
40231            in("d3") dh,
40232            lateout("d0") asm_ret_value,
40233        );
40234    }
40235    asm_ret_value
40236}
40237
40238/// libname: "layers.library" (V36) (Kickstart 2.0)
40239pub unsafe fn CreateUpfrontHookLayer(
40240    LayersBase: *mut Library,
40241    li: *mut Layer_Info,
40242    bm: *mut BitMap,
40243    x0: LONG,
40244    y0: LONG,
40245    x1: LONG,
40246    y1: LONG,
40247    flags: LONG,
40248    hook: *mut Hook,
40249    bm2: *mut BitMap,
40250) -> *mut Layer {
40251    let asm_ret_value: *mut Layer;
40252    unsafe {
40253        asm!(
40254            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40255            ".short 0x40c0",
40256            "move.l %a6, -(%sp)",
40257            "move.l {basereg}, %a6",
40258            ".short 0x4eae", // jsr -186(a6)
40259            ".short -186",
40260            "move.l (%sp)+, %a6",
40261            "movem.l (%sp)+, %d1/%a0-%a1",
40262            basereg = in(reg) LayersBase,
40263            in("a0") li,
40264            in("a1") bm,
40265            in("d0") x0,
40266            in("d1") y0,
40267            in("d2") x1,
40268            in("d3") y1,
40269            in("d4") flags,
40270            in("a3") hook,
40271            in("a2") bm2,
40272            lateout("d0") asm_ret_value,
40273        );
40274    }
40275    asm_ret_value
40276}
40277
40278/// libname: "layers.library" (V36) (Kickstart 2.0)
40279pub unsafe fn CreateBehindHookLayer(
40280    LayersBase: *mut Library,
40281    li: *mut Layer_Info,
40282    bm: *mut BitMap,
40283    x0: LONG,
40284    y0: LONG,
40285    x1: LONG,
40286    y1: LONG,
40287    flags: LONG,
40288    hook: *mut Hook,
40289    bm2: *mut BitMap,
40290) -> *mut Layer {
40291    let asm_ret_value: *mut Layer;
40292    unsafe {
40293        asm!(
40294            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40295            ".short 0x40c0",
40296            "move.l %a6, -(%sp)",
40297            "move.l {basereg}, %a6",
40298            ".short 0x4eae", // jsr -192(a6)
40299            ".short -192",
40300            "move.l (%sp)+, %a6",
40301            "movem.l (%sp)+, %d1/%a0-%a1",
40302            basereg = in(reg) LayersBase,
40303            in("a0") li,
40304            in("a1") bm,
40305            in("d0") x0,
40306            in("d1") y0,
40307            in("d2") x1,
40308            in("d3") y1,
40309            in("d4") flags,
40310            in("a3") hook,
40311            in("a2") bm2,
40312            lateout("d0") asm_ret_value,
40313        );
40314    }
40315    asm_ret_value
40316}
40317
40318/// libname: "layers.library" (V36) (Kickstart 2.0)
40319pub unsafe fn InstallLayerHook(
40320    LayersBase: *mut Library,
40321    layer: *mut Layer,
40322    hook: *mut Hook,
40323) -> *mut Hook {
40324    let asm_ret_value: *mut Hook;
40325    unsafe {
40326        asm!(
40327            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40328            ".short 0x40c0",
40329            "move.l %a6, -(%sp)",
40330            "move.l {basereg}, %a6",
40331            ".short 0x4eae", // jsr -198(a6)
40332            ".short -198",
40333            "move.l (%sp)+, %a6",
40334            "movem.l (%sp)+, %d1/%a0-%a1",
40335            basereg = in(reg) LayersBase,
40336            in("a0") layer,
40337            in("a1") hook,
40338            out("d0") asm_ret_value,
40339        );
40340    }
40341    asm_ret_value
40342}
40343
40344/// libname: "layers.library" (V39) (Kickstart 3.0)
40345pub unsafe fn InstallLayerInfoHook(
40346    LayersBase: *mut Library,
40347    li: *mut Layer_Info,
40348    hook: *mut Hook,
40349) -> *mut Hook {
40350    let asm_ret_value: *mut Hook;
40351    unsafe {
40352        asm!(
40353            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40354            ".short 0x40c0",
40355            "move.l %a6, -(%sp)",
40356            "move.l {basereg}, %a6",
40357            ".short 0x4eae", // jsr -204(a6)
40358            ".short -204",
40359            "move.l (%sp)+, %a6",
40360            "movem.l (%sp)+, %d1/%a0-%a1",
40361            basereg = in(reg) LayersBase,
40362            in("a0") li,
40363            in("a1") hook,
40364            out("d0") asm_ret_value,
40365        );
40366    }
40367    asm_ret_value
40368}
40369
40370/// libname: "layers.library" (V39) (Kickstart 3.0)
40371pub unsafe fn SortLayerCR(LayersBase: *mut Library, layer: *mut Layer, dx: LONG, dy: LONG) {
40372    unsafe {
40373        asm!(
40374            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40375            ".short 0xc0c0",
40376            "move.l %a6, -(%sp)",
40377            "move.l {basereg}, %a6",
40378            ".short 0x4eae", // jsr -210(a6)
40379            ".short -210",
40380            "move.l (%sp)+, %a6",
40381            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40382            basereg = in(reg) LayersBase,
40383            in("a0") layer,
40384            in("d0") dx,
40385            in("d1") dy,
40386        );
40387    }
40388}
40389
40390/// libname: "layers.library" (V39) (Kickstart 3.0)
40391pub unsafe fn DoHookClipRects(
40392    LayersBase: *mut Library,
40393    hook: *mut Hook,
40394    rport: *mut RastPort,
40395    rect: *const Rectangle,
40396) {
40397    unsafe {
40398        asm!(
40399            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40400            ".short 0xc0c0",
40401            "move.l %a6, -(%sp)",
40402            "move.l {basereg}, %a6",
40403            ".short 0x4eae", // jsr -216(a6)
40404            ".short -216",
40405            "move.l (%sp)+, %a6",
40406            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40407            basereg = in(reg) LayersBase,
40408            in("a0") hook,
40409            in("a1") rport,
40410            in("a2") rect,
40411        );
40412    }
40413}
40414
40415/// libname: "layers.library" (V47) (Kickstart 3.2 / 2020)
40416pub unsafe fn LayerOccluded(LayersBase: *mut Library, layer: *mut Layer) -> BOOL {
40417    let asm_ret_value: BOOL;
40418    unsafe {
40419        asm!(
40420            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40421            ".short 0x40c0",
40422            "move.l %a6, -(%sp)",
40423            "move.l {basereg}, %a6",
40424            ".short 0x4eae", // jsr -222(a6)
40425            ".short -222",
40426            "move.l (%sp)+, %a6",
40427            "movem.l (%sp)+, %d1/%a0-%a1",
40428            basereg = in(reg) LayersBase,
40429            in("a0") layer,
40430            out("d0") asm_ret_value,
40431        );
40432    }
40433    asm_ret_value
40434}
40435
40436/// libname: "layers.library" (V47) (Kickstart 3.2 / 2020)
40437pub unsafe fn HideLayer(LayersBase: *mut Library, layer: *mut Layer) -> LONG {
40438    let asm_ret_value: LONG;
40439    unsafe {
40440        asm!(
40441            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40442            ".short 0x40c0",
40443            "move.l %a6, -(%sp)",
40444            "move.l {basereg}, %a6",
40445            ".short 0x4eae", // jsr -228(a6)
40446            ".short -228",
40447            "move.l (%sp)+, %a6",
40448            "movem.l (%sp)+, %d1/%a0-%a1",
40449            basereg = in(reg) LayersBase,
40450            in("a0") layer,
40451            out("d0") asm_ret_value,
40452        );
40453    }
40454    asm_ret_value
40455}
40456
40457/// libname: "layers.library" (V47) (Kickstart 3.2 / 2020)
40458pub unsafe fn ShowLayer(
40459    LayersBase: *mut Library,
40460    layer: *mut Layer,
40461    in_front_of: *mut Layer,
40462) -> LONG {
40463    let asm_ret_value: LONG;
40464    unsafe {
40465        asm!(
40466            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40467            ".short 0x40c0",
40468            "move.l %a6, -(%sp)",
40469            "move.l {basereg}, %a6",
40470            ".short 0x4eae", // jsr -234(a6)
40471            ".short -234",
40472            "move.l (%sp)+, %a6",
40473            "movem.l (%sp)+, %d1/%a0-%a1",
40474            basereg = in(reg) LayersBase,
40475            in("a0") layer,
40476            in("a1") in_front_of,
40477            out("d0") asm_ret_value,
40478        );
40479    }
40480    asm_ret_value
40481}
40482
40483/// libname: "layers.library" (V47) (Kickstart 3.2 / 2020)
40484pub unsafe fn SetLayerInfoBounds(
40485    LayersBase: *mut Library,
40486    li: *mut Layer_Info,
40487    bounds: *const Rectangle,
40488) -> BOOL {
40489    let asm_ret_value: BOOL;
40490    unsafe {
40491        asm!(
40492            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40493            ".short 0x40c0",
40494            "move.l %a6, -(%sp)",
40495            "move.l {basereg}, %a6",
40496            ".short 0x4eae", // jsr -240(a6)
40497            ".short -240",
40498            "move.l (%sp)+, %a6",
40499            "movem.l (%sp)+, %d1/%a0-%a1",
40500            basereg = in(reg) LayersBase,
40501            in("a0") li,
40502            in("a1") bounds,
40503            out("d0") asm_ret_value,
40504        );
40505    }
40506    asm_ret_value
40507}
40508
40509/// libname: "layout.gadget" (V40) (Kickstart 3.1)
40510pub unsafe fn LAYOUT_GetClass(LayoutBase: *mut ::core::ffi::c_void) -> *mut Class {
40511    let asm_ret_value: *mut Class;
40512    unsafe {
40513        asm!(
40514            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40515            ".short 0x40c0",
40516            "move.l %a6, -(%sp)",
40517            "move.l {basereg}, %a6",
40518            ".short 0x4eae", // jsr -30(a6)
40519            ".short -30",
40520            "move.l (%sp)+, %a6",
40521            "movem.l (%sp)+, %d1/%a0-%a1",
40522            basereg = in(reg) LayoutBase,
40523            out("d0") asm_ret_value,
40524        );
40525    }
40526    asm_ret_value
40527}
40528
40529/// libname: "layout.gadget" (V40) (Kickstart 3.1)
40530pub unsafe fn ActivateLayoutGadget(
40531    LayoutBase: *mut ::core::ffi::c_void,
40532    gadget: *mut Gadget,
40533    window: *mut Window,
40534    requester: *mut Requester,
40535    object: ULONG,
40536) -> BOOL {
40537    let asm_ret_value: BOOL;
40538    unsafe {
40539        asm!(
40540            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40541            ".short 0x40c0",
40542            "move.l %a6, -(%sp)",
40543            "move.l {basereg}, %a6",
40544            ".short 0x4eae", // jsr -36(a6)
40545            ".short -36",
40546            "move.l (%sp)+, %a6",
40547            "movem.l (%sp)+, %d1/%a0-%a1",
40548            basereg = in(reg) LayoutBase,
40549            in("a0") gadget,
40550            in("a1") window,
40551            in("a2") requester,
40552            in("d0") object,
40553            lateout("d0") asm_ret_value,
40554        );
40555    }
40556    asm_ret_value
40557}
40558
40559/// libname: "layout.gadget" (V40) (Kickstart 3.1)
40560pub unsafe fn FlushLayoutDomainCache(LayoutBase: *mut ::core::ffi::c_void, gadget: *mut Gadget) {
40561    unsafe {
40562        asm!(
40563            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40564            ".short 0xc0c0",
40565            "move.l %a6, -(%sp)",
40566            "move.l {basereg}, %a6",
40567            ".short 0x4eae", // jsr -42(a6)
40568            ".short -42",
40569            "move.l (%sp)+, %a6",
40570            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40571            basereg = in(reg) LayoutBase,
40572            in("a0") gadget,
40573        );
40574    }
40575}
40576
40577/// libname: "layout.gadget" (V40) (Kickstart 3.1)
40578pub unsafe fn RethinkLayout(
40579    LayoutBase: *mut ::core::ffi::c_void,
40580    gadget: *mut Gadget,
40581    window: *mut Window,
40582    requester: *mut Requester,
40583    refresh: LONG,
40584) -> BOOL {
40585    let asm_ret_value: BOOL;
40586    unsafe {
40587        asm!(
40588            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40589            ".short 0x40c0",
40590            "move.l %a6, -(%sp)",
40591            "move.l {basereg}, %a6",
40592            ".short 0x4eae", // jsr -48(a6)
40593            ".short -48",
40594            "move.l (%sp)+, %a6",
40595            "movem.l (%sp)+, %d1/%a0-%a1",
40596            basereg = in(reg) LayoutBase,
40597            in("a0") gadget,
40598            in("a1") window,
40599            in("a2") requester,
40600            in("d0") refresh,
40601            lateout("d0") asm_ret_value,
40602        );
40603    }
40604    asm_ret_value
40605}
40606
40607/// libname: "layout.gadget" (V40) (Kickstart 3.1)
40608pub unsafe fn LayoutLimits(
40609    LayoutBase: *mut ::core::ffi::c_void,
40610    gadget: *mut Gadget,
40611    limits: *mut LayoutLimits,
40612    font: *mut TextFont,
40613    screen: *mut Screen,
40614) {
40615    unsafe {
40616        asm!(
40617            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40618            ".short 0xc0c0",
40619            "move.l %a6, -(%sp)",
40620            "move.l {basereg}, %a6",
40621            ".short 0x4eae", // jsr -54(a6)
40622            ".short -54",
40623            "move.l (%sp)+, %a6",
40624            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40625            basereg = in(reg) LayoutBase,
40626            in("a0") gadget,
40627            in("a1") limits,
40628            in("a2") font,
40629            in("a3") screen,
40630        );
40631    }
40632}
40633
40634/// libname: "layout.gadget" (V40) (Kickstart 3.1)
40635pub unsafe fn PAGE_GetClass(LayoutBase: *mut ::core::ffi::c_void) -> *mut Class {
40636    let asm_ret_value: *mut Class;
40637    unsafe {
40638        asm!(
40639            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40640            ".short 0x40c0",
40641            "move.l %a6, -(%sp)",
40642            "move.l {basereg}, %a6",
40643            ".short 0x4eae", // jsr -60(a6)
40644            ".short -60",
40645            "move.l (%sp)+, %a6",
40646            "movem.l (%sp)+, %d1/%a0-%a1",
40647            basereg = in(reg) LayoutBase,
40648            out("d0") asm_ret_value,
40649        );
40650    }
40651    asm_ret_value
40652}
40653
40654/// libname: "layout.gadget" (V40) (Kickstart 3.1)
40655pub unsafe fn SetPageGadgetAttrsA(
40656    LayoutBase: *mut ::core::ffi::c_void,
40657    gadget: *mut Gadget,
40658    object: *mut Object,
40659    window: *mut Window,
40660    requester: *mut Requester,
40661    tags: *mut TagItem,
40662) -> ULONG {
40663    let asm_ret_value: ULONG;
40664    unsafe {
40665        asm!(
40666            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40667            ".short 0x40c0",
40668            "move.l %a6, -(%sp)",
40669            "move.l %a4, -(%sp)",
40670            "move.l {basereg}, %a6",
40671            "move.l {a4reg}, %a4",
40672            ".short 0x4eae", // jsr -66(a6)
40673            ".short -66",
40674            "move.l (%sp)+, %a4",
40675            "move.l (%sp)+, %a6",
40676            "movem.l (%sp)+, %d1/%a0-%a1",
40677            basereg = in(reg) LayoutBase,
40678            in("a0") gadget,
40679            in("a1") object,
40680            in("a2") window,
40681            in("a3") requester,
40682            a4reg = in(reg) tags,
40683            out("d0") asm_ret_value,
40684        );
40685    }
40686    asm_ret_value
40687}
40688
40689/// libname: "layout.gadget" (V40) (Kickstart 3.1)
40690pub unsafe fn RefreshPageGadget(
40691    LayoutBase: *mut ::core::ffi::c_void,
40692    gadget: *mut Gadget,
40693    object: *mut Object,
40694    window: *mut Window,
40695    requester: *mut Requester,
40696) {
40697    unsafe {
40698        asm!(
40699            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40700            ".short 0xc0c0",
40701            "move.l %a6, -(%sp)",
40702            "move.l {basereg}, %a6",
40703            ".short 0x4eae", // jsr -72(a6)
40704            ".short -72",
40705            "move.l (%sp)+, %a6",
40706            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40707            basereg = in(reg) LayoutBase,
40708            in("a0") gadget,
40709            in("a1") object,
40710            in("a2") window,
40711            in("a3") requester,
40712        );
40713    }
40714}
40715
40716/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40717pub unsafe fn LISTBROWSER_GetClass(ListBrowserBase: *mut ::core::ffi::c_void) -> *mut Class {
40718    let asm_ret_value: *mut Class;
40719    unsafe {
40720        asm!(
40721            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40722            ".short 0x40c0",
40723            "move.l %a6, -(%sp)",
40724            "move.l {basereg}, %a6",
40725            ".short 0x4eae", // jsr -30(a6)
40726            ".short -30",
40727            "move.l (%sp)+, %a6",
40728            "movem.l (%sp)+, %d1/%a0-%a1",
40729            basereg = in(reg) ListBrowserBase,
40730            out("d0") asm_ret_value,
40731        );
40732    }
40733    asm_ret_value
40734}
40735
40736/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40737pub unsafe fn AllocListBrowserNodeA(
40738    ListBrowserBase: *mut ::core::ffi::c_void,
40739    columns: ULONG,
40740    tags: *mut TagItem,
40741) -> *mut Node {
40742    let asm_ret_value: *mut Node;
40743    unsafe {
40744        asm!(
40745            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40746            ".short 0x40c0",
40747            "move.l %a6, -(%sp)",
40748            "move.l {basereg}, %a6",
40749            ".short 0x4eae", // jsr -36(a6)
40750            ".short -36",
40751            "move.l (%sp)+, %a6",
40752            "movem.l (%sp)+, %d1/%a0-%a1",
40753            basereg = in(reg) ListBrowserBase,
40754            in("d0") columns,
40755            in("a0") tags,
40756            lateout("d0") asm_ret_value,
40757        );
40758    }
40759    asm_ret_value
40760}
40761
40762/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40763pub unsafe fn FreeListBrowserNode(ListBrowserBase: *mut ::core::ffi::c_void, node: *mut Node) {
40764    unsafe {
40765        asm!(
40766            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40767            ".short 0xc0c0",
40768            "move.l %a6, -(%sp)",
40769            "move.l {basereg}, %a6",
40770            ".short 0x4eae", // jsr -42(a6)
40771            ".short -42",
40772            "move.l (%sp)+, %a6",
40773            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40774            basereg = in(reg) ListBrowserBase,
40775            in("a0") node,
40776        );
40777    }
40778}
40779
40780/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40781pub unsafe fn SetListBrowserNodeAttrsA(
40782    ListBrowserBase: *mut ::core::ffi::c_void,
40783    node: *mut Node,
40784    tags: *mut TagItem,
40785) {
40786    unsafe {
40787        asm!(
40788            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40789            ".short 0xc0c0",
40790            "move.l %a6, -(%sp)",
40791            "move.l {basereg}, %a6",
40792            ".short 0x4eae", // jsr -48(a6)
40793            ".short -48",
40794            "move.l (%sp)+, %a6",
40795            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40796            basereg = in(reg) ListBrowserBase,
40797            in("a0") node,
40798            in("a1") tags,
40799        );
40800    }
40801}
40802
40803/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40804pub unsafe fn GetListBrowserNodeAttrsA(
40805    ListBrowserBase: *mut ::core::ffi::c_void,
40806    node: *mut Node,
40807    tags: *mut TagItem,
40808) {
40809    unsafe {
40810        asm!(
40811            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40812            ".short 0xc0c0",
40813            "move.l %a6, -(%sp)",
40814            "move.l {basereg}, %a6",
40815            ".short 0x4eae", // jsr -54(a6)
40816            ".short -54",
40817            "move.l (%sp)+, %a6",
40818            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40819            basereg = in(reg) ListBrowserBase,
40820            in("a0") node,
40821            in("a1") tags,
40822        );
40823    }
40824}
40825
40826/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40827pub unsafe fn ListBrowserSelectAll(ListBrowserBase: *mut ::core::ffi::c_void, list: *mut List) {
40828    unsafe {
40829        asm!(
40830            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40831            ".short 0xc0c0",
40832            "move.l %a6, -(%sp)",
40833            "move.l {basereg}, %a6",
40834            ".short 0x4eae", // jsr -60(a6)
40835            ".short -60",
40836            "move.l (%sp)+, %a6",
40837            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40838            basereg = in(reg) ListBrowserBase,
40839            in("a0") list,
40840        );
40841    }
40842}
40843
40844/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40845pub unsafe fn ShowListBrowserNodeChildren(
40846    ListBrowserBase: *mut ::core::ffi::c_void,
40847    node: *mut Node,
40848    depth: LONG,
40849) {
40850    unsafe {
40851        asm!(
40852            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40853            ".short 0xc0c0",
40854            "move.l %a6, -(%sp)",
40855            "move.l {basereg}, %a6",
40856            ".short 0x4eae", // jsr -66(a6)
40857            ".short -66",
40858            "move.l (%sp)+, %a6",
40859            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40860            basereg = in(reg) ListBrowserBase,
40861            in("a0") node,
40862            in("d0") depth,
40863        );
40864    }
40865}
40866
40867/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40868pub unsafe fn HideListBrowserNodeChildren(
40869    ListBrowserBase: *mut ::core::ffi::c_void,
40870    node: *mut Node,
40871) {
40872    unsafe {
40873        asm!(
40874            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40875            ".short 0xc0c0",
40876            "move.l %a6, -(%sp)",
40877            "move.l {basereg}, %a6",
40878            ".short 0x4eae", // jsr -72(a6)
40879            ".short -72",
40880            "move.l (%sp)+, %a6",
40881            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40882            basereg = in(reg) ListBrowserBase,
40883            in("a0") node,
40884        );
40885    }
40886}
40887
40888/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40889pub unsafe fn ShowAllListBrowserChildren(
40890    ListBrowserBase: *mut ::core::ffi::c_void,
40891    list: *mut List,
40892) {
40893    unsafe {
40894        asm!(
40895            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40896            ".short 0xc0c0",
40897            "move.l %a6, -(%sp)",
40898            "move.l {basereg}, %a6",
40899            ".short 0x4eae", // jsr -78(a6)
40900            ".short -78",
40901            "move.l (%sp)+, %a6",
40902            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40903            basereg = in(reg) ListBrowserBase,
40904            in("a0") list,
40905        );
40906    }
40907}
40908
40909/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40910pub unsafe fn HideAllListBrowserChildren(
40911    ListBrowserBase: *mut ::core::ffi::c_void,
40912    list: *mut List,
40913) {
40914    unsafe {
40915        asm!(
40916            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40917            ".short 0xc0c0",
40918            "move.l %a6, -(%sp)",
40919            "move.l {basereg}, %a6",
40920            ".short 0x4eae", // jsr -84(a6)
40921            ".short -84",
40922            "move.l (%sp)+, %a6",
40923            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40924            basereg = in(reg) ListBrowserBase,
40925            in("a0") list,
40926        );
40927    }
40928}
40929
40930/// libname: "listbrowser.gadget" (V40) (Kickstart 3.1)
40931pub unsafe fn FreeListBrowserList(ListBrowserBase: *mut ::core::ffi::c_void, list: *mut List) {
40932    unsafe {
40933        asm!(
40934            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
40935            ".short 0xc0c0",
40936            "move.l %a6, -(%sp)",
40937            "move.l {basereg}, %a6",
40938            ".short 0x4eae", // jsr -90(a6)
40939            ".short -90",
40940            "move.l (%sp)+, %a6",
40941            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
40942            basereg = in(reg) ListBrowserBase,
40943            in("a0") list,
40944        );
40945    }
40946}
40947
40948/// libname: "listbrowser.gadget" (V45) (Kickstart 3.9 / 2000)
40949pub unsafe fn AllocLBColumnInfoA(
40950    ListBrowserBase: *mut ::core::ffi::c_void,
40951    columns: ULONG,
40952    tags: *mut TagItem,
40953) -> *mut ColumnInfo {
40954    let asm_ret_value: *mut ColumnInfo;
40955    unsafe {
40956        asm!(
40957            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40958            ".short 0x40c0",
40959            "move.l %a6, -(%sp)",
40960            "move.l {basereg}, %a6",
40961            ".short 0x4eae", // jsr -96(a6)
40962            ".short -96",
40963            "move.l (%sp)+, %a6",
40964            "movem.l (%sp)+, %d1/%a0-%a1",
40965            basereg = in(reg) ListBrowserBase,
40966            in("d0") columns,
40967            in("a0") tags,
40968            lateout("d0") asm_ret_value,
40969        );
40970    }
40971    asm_ret_value
40972}
40973
40974/// libname: "listbrowser.gadget" (V45) (Kickstart 3.9 / 2000)
40975pub unsafe fn SetLBColumnInfoAttrsA(
40976    ListBrowserBase: *mut ::core::ffi::c_void,
40977    columninfo: *mut ColumnInfo,
40978    tags: *mut TagItem,
40979) -> LONG {
40980    let asm_ret_value: LONG;
40981    unsafe {
40982        asm!(
40983            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
40984            ".short 0x40c0",
40985            "move.l %a6, -(%sp)",
40986            "move.l {basereg}, %a6",
40987            ".short 0x4eae", // jsr -102(a6)
40988            ".short -102",
40989            "move.l (%sp)+, %a6",
40990            "movem.l (%sp)+, %d1/%a0-%a1",
40991            basereg = in(reg) ListBrowserBase,
40992            in("a1") columninfo,
40993            in("a0") tags,
40994            out("d0") asm_ret_value,
40995        );
40996    }
40997    asm_ret_value
40998}
40999
41000/// libname: "listbrowser.gadget" (V45) (Kickstart 3.9 / 2000)
41001pub unsafe fn GetLBColumnInfoAttrsA(
41002    ListBrowserBase: *mut ::core::ffi::c_void,
41003    columninfo: *mut ColumnInfo,
41004    tags: *mut TagItem,
41005) -> LONG {
41006    let asm_ret_value: LONG;
41007    unsafe {
41008        asm!(
41009            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41010            ".short 0x40c0",
41011            "move.l %a6, -(%sp)",
41012            "move.l {basereg}, %a6",
41013            ".short 0x4eae", // jsr -108(a6)
41014            ".short -108",
41015            "move.l (%sp)+, %a6",
41016            "movem.l (%sp)+, %d1/%a0-%a1",
41017            basereg = in(reg) ListBrowserBase,
41018            in("a1") columninfo,
41019            in("a0") tags,
41020            out("d0") asm_ret_value,
41021        );
41022    }
41023    asm_ret_value
41024}
41025
41026/// libname: "listbrowser.gadget" (V45) (Kickstart 3.9 / 2000)
41027pub unsafe fn FreeLBColumnInfo(
41028    ListBrowserBase: *mut ::core::ffi::c_void,
41029    columninfo: *mut ColumnInfo,
41030) {
41031    unsafe {
41032        asm!(
41033            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41034            ".short 0xc0c0",
41035            "move.l %a6, -(%sp)",
41036            "move.l {basereg}, %a6",
41037            ".short 0x4eae", // jsr -114(a6)
41038            ".short -114",
41039            "move.l (%sp)+, %a6",
41040            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41041            basereg = in(reg) ListBrowserBase,
41042            in("a0") columninfo,
41043        );
41044    }
41045}
41046
41047/// libname: "listbrowser.gadget" (V45) (Kickstart 3.9 / 2000)
41048pub unsafe fn ListBrowserClearAll(ListBrowserBase: *mut ::core::ffi::c_void, list: *mut List) {
41049    unsafe {
41050        asm!(
41051            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41052            ".short 0xc0c0",
41053            "move.l %a6, -(%sp)",
41054            "move.l {basereg}, %a6",
41055            ".short 0x4eae", // jsr -120(a6)
41056            ".short -120",
41057            "move.l (%sp)+, %a6",
41058            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41059            basereg = in(reg) ListBrowserBase,
41060            in("a0") list,
41061        );
41062    }
41063}
41064
41065/// libname: "locale.library" (V38) (Kickstart 2.1)
41066pub unsafe fn CloseCatalog(LocaleBase: *mut Library, catalog: *mut Catalog) {
41067    unsafe {
41068        asm!(
41069            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41070            ".short 0xc0c0",
41071            "move.l %a6, -(%sp)",
41072            "move.l {basereg}, %a6",
41073            ".short 0x4eae", // jsr -36(a6)
41074            ".short -36",
41075            "move.l (%sp)+, %a6",
41076            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41077            basereg = in(reg) LocaleBase,
41078            in("a0") catalog,
41079        );
41080    }
41081}
41082
41083/// libname: "locale.library" (V38) (Kickstart 2.1)
41084pub unsafe fn CloseLocale(LocaleBase: *mut Library, locale: *mut Locale) {
41085    unsafe {
41086        asm!(
41087            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41088            ".short 0xc0c0",
41089            "move.l %a6, -(%sp)",
41090            "move.l {basereg}, %a6",
41091            ".short 0x4eae", // jsr -42(a6)
41092            ".short -42",
41093            "move.l (%sp)+, %a6",
41094            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41095            basereg = in(reg) LocaleBase,
41096            in("a0") locale,
41097        );
41098    }
41099}
41100
41101/// libname: "locale.library" (V38) (Kickstart 2.1)
41102pub unsafe fn ConvToLower(
41103    LocaleBase: *mut Library,
41104    locale: *mut Locale,
41105    character: ULONG,
41106) -> ULONG {
41107    let asm_ret_value: ULONG;
41108    unsafe {
41109        asm!(
41110            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41111            ".short 0x40c0",
41112            "move.l %a6, -(%sp)",
41113            "move.l {basereg}, %a6",
41114            ".short 0x4eae", // jsr -48(a6)
41115            ".short -48",
41116            "move.l (%sp)+, %a6",
41117            "movem.l (%sp)+, %d1/%a0-%a1",
41118            basereg = in(reg) LocaleBase,
41119            in("a0") locale,
41120            in("d0") character,
41121            lateout("d0") asm_ret_value,
41122        );
41123    }
41124    asm_ret_value
41125}
41126
41127/// libname: "locale.library" (V38) (Kickstart 2.1)
41128pub unsafe fn ConvToUpper(
41129    LocaleBase: *mut Library,
41130    locale: *mut Locale,
41131    character: ULONG,
41132) -> ULONG {
41133    let asm_ret_value: ULONG;
41134    unsafe {
41135        asm!(
41136            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41137            ".short 0x40c0",
41138            "move.l %a6, -(%sp)",
41139            "move.l {basereg}, %a6",
41140            ".short 0x4eae", // jsr -54(a6)
41141            ".short -54",
41142            "move.l (%sp)+, %a6",
41143            "movem.l (%sp)+, %d1/%a0-%a1",
41144            basereg = in(reg) LocaleBase,
41145            in("a0") locale,
41146            in("d0") character,
41147            lateout("d0") asm_ret_value,
41148        );
41149    }
41150    asm_ret_value
41151}
41152
41153/// libname: "locale.library" (V38) (Kickstart 2.1)
41154pub unsafe fn FormatDate(
41155    LocaleBase: *mut Library,
41156    locale: *mut Locale,
41157    fmtTemplate: CONST_STRPTR,
41158    date: *const DateStamp,
41159    putCharFunc: *mut Hook,
41160) {
41161    unsafe {
41162        asm!(
41163            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41164            ".short 0xc0c0",
41165            "move.l %a6, -(%sp)",
41166            "move.l {basereg}, %a6",
41167            ".short 0x4eae", // jsr -60(a6)
41168            ".short -60",
41169            "move.l (%sp)+, %a6",
41170            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41171            basereg = in(reg) LocaleBase,
41172            in("a0") locale,
41173            in("a1") fmtTemplate,
41174            in("a2") date,
41175            in("a3") putCharFunc,
41176        );
41177    }
41178}
41179
41180/// libname: "locale.library" (V38) (Kickstart 2.1)
41181pub unsafe fn FormatString(
41182    LocaleBase: *mut Library,
41183    locale: *mut Locale,
41184    fmtTemplate: CONST_STRPTR,
41185    dataStream: APTR,
41186    putCharFunc: *mut Hook,
41187) -> APTR {
41188    let asm_ret_value: APTR;
41189    unsafe {
41190        asm!(
41191            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41192            ".short 0x40c0",
41193            "move.l %a6, -(%sp)",
41194            "move.l {basereg}, %a6",
41195            ".short 0x4eae", // jsr -66(a6)
41196            ".short -66",
41197            "move.l (%sp)+, %a6",
41198            "movem.l (%sp)+, %d1/%a0-%a1",
41199            basereg = in(reg) LocaleBase,
41200            in("a0") locale,
41201            in("a1") fmtTemplate,
41202            in("a2") dataStream,
41203            in("a3") putCharFunc,
41204            out("d0") asm_ret_value,
41205        );
41206    }
41207    asm_ret_value
41208}
41209
41210/// libname: "locale.library" (V38) (Kickstart 2.1)
41211pub unsafe fn GetCatalogStr(
41212    LocaleBase: *mut Library,
41213    catalog: *const Catalog,
41214    stringNum: LONG,
41215    defaultString: CONST_STRPTR,
41216) -> STRPTR {
41217    let asm_ret_value: STRPTR;
41218    unsafe {
41219        asm!(
41220            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41221            ".short 0x40c0",
41222            "move.l %a6, -(%sp)",
41223            "move.l {basereg}, %a6",
41224            ".short 0x4eae", // jsr -72(a6)
41225            ".short -72",
41226            "move.l (%sp)+, %a6",
41227            "movem.l (%sp)+, %d1/%a0-%a1",
41228            basereg = in(reg) LocaleBase,
41229            in("a0") catalog,
41230            in("d0") stringNum,
41231            in("a1") defaultString,
41232            lateout("d0") asm_ret_value,
41233        );
41234    }
41235    asm_ret_value
41236}
41237
41238/// libname: "locale.library" (V38) (Kickstart 2.1)
41239pub unsafe fn GetLocaleStr(
41240    LocaleBase: *mut Library,
41241    locale: *mut Locale,
41242    stringNum: ULONG,
41243) -> STRPTR {
41244    let asm_ret_value: STRPTR;
41245    unsafe {
41246        asm!(
41247            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41248            ".short 0x40c0",
41249            "move.l %a6, -(%sp)",
41250            "move.l {basereg}, %a6",
41251            ".short 0x4eae", // jsr -78(a6)
41252            ".short -78",
41253            "move.l (%sp)+, %a6",
41254            "movem.l (%sp)+, %d1/%a0-%a1",
41255            basereg = in(reg) LocaleBase,
41256            in("a0") locale,
41257            in("d0") stringNum,
41258            lateout("d0") asm_ret_value,
41259        );
41260    }
41261    asm_ret_value
41262}
41263
41264/// libname: "locale.library" (V38) (Kickstart 2.1)
41265pub unsafe fn IsAlNum(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41266    let asm_ret_value: BOOL;
41267    unsafe {
41268        asm!(
41269            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41270            ".short 0x40c0",
41271            "move.l %a6, -(%sp)",
41272            "move.l {basereg}, %a6",
41273            ".short 0x4eae", // jsr -84(a6)
41274            ".short -84",
41275            "move.l (%sp)+, %a6",
41276            "movem.l (%sp)+, %d1/%a0-%a1",
41277            basereg = in(reg) LocaleBase,
41278            in("a0") locale,
41279            in("d0") character,
41280            lateout("d0") asm_ret_value,
41281        );
41282    }
41283    asm_ret_value
41284}
41285
41286/// libname: "locale.library" (V38) (Kickstart 2.1)
41287pub unsafe fn IsAlpha(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41288    let asm_ret_value: BOOL;
41289    unsafe {
41290        asm!(
41291            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41292            ".short 0x40c0",
41293            "move.l %a6, -(%sp)",
41294            "move.l {basereg}, %a6",
41295            ".short 0x4eae", // jsr -90(a6)
41296            ".short -90",
41297            "move.l (%sp)+, %a6",
41298            "movem.l (%sp)+, %d1/%a0-%a1",
41299            basereg = in(reg) LocaleBase,
41300            in("a0") locale,
41301            in("d0") character,
41302            lateout("d0") asm_ret_value,
41303        );
41304    }
41305    asm_ret_value
41306}
41307
41308/// libname: "locale.library" (V38) (Kickstart 2.1)
41309pub unsafe fn IsCntrl(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41310    let asm_ret_value: BOOL;
41311    unsafe {
41312        asm!(
41313            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41314            ".short 0x40c0",
41315            "move.l %a6, -(%sp)",
41316            "move.l {basereg}, %a6",
41317            ".short 0x4eae", // jsr -96(a6)
41318            ".short -96",
41319            "move.l (%sp)+, %a6",
41320            "movem.l (%sp)+, %d1/%a0-%a1",
41321            basereg = in(reg) LocaleBase,
41322            in("a0") locale,
41323            in("d0") character,
41324            lateout("d0") asm_ret_value,
41325        );
41326    }
41327    asm_ret_value
41328}
41329
41330/// libname: "locale.library" (V38) (Kickstart 2.1)
41331pub unsafe fn IsDigit(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41332    let asm_ret_value: BOOL;
41333    unsafe {
41334        asm!(
41335            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41336            ".short 0x40c0",
41337            "move.l %a6, -(%sp)",
41338            "move.l {basereg}, %a6",
41339            ".short 0x4eae", // jsr -102(a6)
41340            ".short -102",
41341            "move.l (%sp)+, %a6",
41342            "movem.l (%sp)+, %d1/%a0-%a1",
41343            basereg = in(reg) LocaleBase,
41344            in("a0") locale,
41345            in("d0") character,
41346            lateout("d0") asm_ret_value,
41347        );
41348    }
41349    asm_ret_value
41350}
41351
41352/// libname: "locale.library" (V38) (Kickstart 2.1)
41353pub unsafe fn IsGraph(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41354    let asm_ret_value: BOOL;
41355    unsafe {
41356        asm!(
41357            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41358            ".short 0x40c0",
41359            "move.l %a6, -(%sp)",
41360            "move.l {basereg}, %a6",
41361            ".short 0x4eae", // jsr -108(a6)
41362            ".short -108",
41363            "move.l (%sp)+, %a6",
41364            "movem.l (%sp)+, %d1/%a0-%a1",
41365            basereg = in(reg) LocaleBase,
41366            in("a0") locale,
41367            in("d0") character,
41368            lateout("d0") asm_ret_value,
41369        );
41370    }
41371    asm_ret_value
41372}
41373
41374/// libname: "locale.library" (V38) (Kickstart 2.1)
41375pub unsafe fn IsLower(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41376    let asm_ret_value: BOOL;
41377    unsafe {
41378        asm!(
41379            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41380            ".short 0x40c0",
41381            "move.l %a6, -(%sp)",
41382            "move.l {basereg}, %a6",
41383            ".short 0x4eae", // jsr -114(a6)
41384            ".short -114",
41385            "move.l (%sp)+, %a6",
41386            "movem.l (%sp)+, %d1/%a0-%a1",
41387            basereg = in(reg) LocaleBase,
41388            in("a0") locale,
41389            in("d0") character,
41390            lateout("d0") asm_ret_value,
41391        );
41392    }
41393    asm_ret_value
41394}
41395
41396/// libname: "locale.library" (V38) (Kickstart 2.1)
41397pub unsafe fn IsPrint(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41398    let asm_ret_value: BOOL;
41399    unsafe {
41400        asm!(
41401            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41402            ".short 0x40c0",
41403            "move.l %a6, -(%sp)",
41404            "move.l {basereg}, %a6",
41405            ".short 0x4eae", // jsr -120(a6)
41406            ".short -120",
41407            "move.l (%sp)+, %a6",
41408            "movem.l (%sp)+, %d1/%a0-%a1",
41409            basereg = in(reg) LocaleBase,
41410            in("a0") locale,
41411            in("d0") character,
41412            lateout("d0") asm_ret_value,
41413        );
41414    }
41415    asm_ret_value
41416}
41417
41418/// libname: "locale.library" (V38) (Kickstart 2.1)
41419pub unsafe fn IsPunct(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41420    let asm_ret_value: BOOL;
41421    unsafe {
41422        asm!(
41423            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41424            ".short 0x40c0",
41425            "move.l %a6, -(%sp)",
41426            "move.l {basereg}, %a6",
41427            ".short 0x4eae", // jsr -126(a6)
41428            ".short -126",
41429            "move.l (%sp)+, %a6",
41430            "movem.l (%sp)+, %d1/%a0-%a1",
41431            basereg = in(reg) LocaleBase,
41432            in("a0") locale,
41433            in("d0") character,
41434            lateout("d0") asm_ret_value,
41435        );
41436    }
41437    asm_ret_value
41438}
41439
41440/// libname: "locale.library" (V38) (Kickstart 2.1)
41441pub unsafe fn IsSpace(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41442    let asm_ret_value: BOOL;
41443    unsafe {
41444        asm!(
41445            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41446            ".short 0x40c0",
41447            "move.l %a6, -(%sp)",
41448            "move.l {basereg}, %a6",
41449            ".short 0x4eae", // jsr -132(a6)
41450            ".short -132",
41451            "move.l (%sp)+, %a6",
41452            "movem.l (%sp)+, %d1/%a0-%a1",
41453            basereg = in(reg) LocaleBase,
41454            in("a0") locale,
41455            in("d0") character,
41456            lateout("d0") asm_ret_value,
41457        );
41458    }
41459    asm_ret_value
41460}
41461
41462/// libname: "locale.library" (V38) (Kickstart 2.1)
41463pub unsafe fn IsUpper(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41464    let asm_ret_value: BOOL;
41465    unsafe {
41466        asm!(
41467            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41468            ".short 0x40c0",
41469            "move.l %a6, -(%sp)",
41470            "move.l {basereg}, %a6",
41471            ".short 0x4eae", // jsr -138(a6)
41472            ".short -138",
41473            "move.l (%sp)+, %a6",
41474            "movem.l (%sp)+, %d1/%a0-%a1",
41475            basereg = in(reg) LocaleBase,
41476            in("a0") locale,
41477            in("d0") character,
41478            lateout("d0") asm_ret_value,
41479        );
41480    }
41481    asm_ret_value
41482}
41483
41484/// libname: "locale.library" (V38) (Kickstart 2.1)
41485pub unsafe fn IsXDigit(LocaleBase: *mut Library, locale: *mut Locale, character: ULONG) -> BOOL {
41486    let asm_ret_value: BOOL;
41487    unsafe {
41488        asm!(
41489            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41490            ".short 0x40c0",
41491            "move.l %a6, -(%sp)",
41492            "move.l {basereg}, %a6",
41493            ".short 0x4eae", // jsr -144(a6)
41494            ".short -144",
41495            "move.l (%sp)+, %a6",
41496            "movem.l (%sp)+, %d1/%a0-%a1",
41497            basereg = in(reg) LocaleBase,
41498            in("a0") locale,
41499            in("d0") character,
41500            lateout("d0") asm_ret_value,
41501        );
41502    }
41503    asm_ret_value
41504}
41505
41506/// libname: "locale.library" (V38) (Kickstart 2.1)
41507pub unsafe fn OpenCatalogA(
41508    LocaleBase: *mut Library,
41509    locale: *mut Locale,
41510    name: CONST_STRPTR,
41511    tags: *const TagItem,
41512) -> *mut Catalog {
41513    let asm_ret_value: *mut Catalog;
41514    unsafe {
41515        asm!(
41516            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41517            ".short 0x40c0",
41518            "move.l %a6, -(%sp)",
41519            "move.l {basereg}, %a6",
41520            ".short 0x4eae", // jsr -150(a6)
41521            ".short -150",
41522            "move.l (%sp)+, %a6",
41523            "movem.l (%sp)+, %d1/%a0-%a1",
41524            basereg = in(reg) LocaleBase,
41525            in("a0") locale,
41526            in("a1") name,
41527            in("a2") tags,
41528            out("d0") asm_ret_value,
41529        );
41530    }
41531    asm_ret_value
41532}
41533
41534/// libname: "locale.library" (V38) (Kickstart 2.1)
41535pub unsafe fn OpenLocale(LocaleBase: *mut Library, name: CONST_STRPTR) -> *mut Locale {
41536    let asm_ret_value: *mut Locale;
41537    unsafe {
41538        asm!(
41539            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41540            ".short 0x40c0",
41541            "move.l %a6, -(%sp)",
41542            "move.l {basereg}, %a6",
41543            ".short 0x4eae", // jsr -156(a6)
41544            ".short -156",
41545            "move.l (%sp)+, %a6",
41546            "movem.l (%sp)+, %d1/%a0-%a1",
41547            basereg = in(reg) LocaleBase,
41548            in("a0") name,
41549            out("d0") asm_ret_value,
41550        );
41551    }
41552    asm_ret_value
41553}
41554
41555/// libname: "locale.library" (V38) (Kickstart 2.1)
41556pub unsafe fn ParseDate(
41557    LocaleBase: *mut Library,
41558    locale: *const Locale,
41559    date: *mut DateStamp,
41560    fmtTemplate: CONST_STRPTR,
41561    getCharFunc: *mut Hook,
41562) -> BOOL {
41563    let asm_ret_value: BOOL;
41564    unsafe {
41565        asm!(
41566            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41567            ".short 0x40c0",
41568            "move.l %a6, -(%sp)",
41569            "move.l {basereg}, %a6",
41570            ".short 0x4eae", // jsr -162(a6)
41571            ".short -162",
41572            "move.l (%sp)+, %a6",
41573            "movem.l (%sp)+, %d1/%a0-%a1",
41574            basereg = in(reg) LocaleBase,
41575            in("a0") locale,
41576            in("a1") date,
41577            in("a2") fmtTemplate,
41578            in("a3") getCharFunc,
41579            out("d0") asm_ret_value,
41580        );
41581    }
41582    asm_ret_value
41583}
41584
41585/// libname: "locale.library" (V38) (Kickstart 2.1)
41586pub unsafe fn StrConvert(
41587    LocaleBase: *mut Library,
41588    locale: *mut Locale,
41589    string: CONST_STRPTR,
41590    buffer: APTR,
41591    bufferSize: ULONG,
41592    type_: ULONG,
41593) -> ULONG {
41594    let asm_ret_value: ULONG;
41595    unsafe {
41596        asm!(
41597            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41598            ".short 0x40c0",
41599            "move.l %a6, -(%sp)",
41600            "move.l {basereg}, %a6",
41601            ".short 0x4eae", // jsr -174(a6)
41602            ".short -174",
41603            "move.l (%sp)+, %a6",
41604            "movem.l (%sp)+, %d1/%a0-%a1",
41605            basereg = in(reg) LocaleBase,
41606            in("a0") locale,
41607            in("a1") string,
41608            in("a2") buffer,
41609            in("d0") bufferSize,
41610            in("d1") type_,
41611            lateout("d0") asm_ret_value,
41612        );
41613    }
41614    asm_ret_value
41615}
41616
41617/// libname: "locale.library" (V38) (Kickstart 2.1)
41618pub unsafe fn StrnCmp(
41619    LocaleBase: *mut Library,
41620    locale: *mut Locale,
41621    string1: CONST_STRPTR,
41622    string2: CONST_STRPTR,
41623    length: LONG,
41624    type_: ULONG,
41625) -> LONG {
41626    let asm_ret_value: LONG;
41627    unsafe {
41628        asm!(
41629            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41630            ".short 0x40c0",
41631            "move.l %a6, -(%sp)",
41632            "move.l {basereg}, %a6",
41633            ".short 0x4eae", // jsr -180(a6)
41634            ".short -180",
41635            "move.l (%sp)+, %a6",
41636            "movem.l (%sp)+, %d1/%a0-%a1",
41637            basereg = in(reg) LocaleBase,
41638            in("a0") locale,
41639            in("a1") string1,
41640            in("a2") string2,
41641            in("d0") length,
41642            in("d1") type_,
41643            lateout("d0") asm_ret_value,
41644        );
41645    }
41646    asm_ret_value
41647}
41648
41649/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41650pub unsafe fn ReadJoyPort(LowLevelBase: *mut Library, port: ULONG) -> ULONG {
41651    let asm_ret_value: ULONG;
41652    unsafe {
41653        asm!(
41654            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41655            ".short 0x40c0",
41656            "move.l %a6, -(%sp)",
41657            "move.l {basereg}, %a6",
41658            ".short 0x4eae", // jsr -30(a6)
41659            ".short -30",
41660            "move.l (%sp)+, %a6",
41661            "movem.l (%sp)+, %d1/%a0-%a1",
41662            basereg = in(reg) LowLevelBase,
41663            in("d0") port,
41664            lateout("d0") asm_ret_value,
41665        );
41666    }
41667    asm_ret_value
41668}
41669
41670/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41671pub unsafe fn GetLanguageSelection(LowLevelBase: *mut Library) -> UBYTE {
41672    let asm_ret_value: i16;
41673    unsafe {
41674        asm!(
41675            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41676            ".short 0x40c0",
41677            "move.l %a6, -(%sp)",
41678            "move.l {basereg}, %a6",
41679            ".short 0x4eae", // jsr -36(a6)
41680            ".short -36",
41681            "and.w #0x00ff, %d0",
41682            "move.l (%sp)+, %a6",
41683            "movem.l (%sp)+, %d1/%a0-%a1",
41684            basereg = in(reg) LowLevelBase,
41685            out("d0") asm_ret_value,
41686        );
41687    }
41688    asm_ret_value as u8
41689}
41690
41691/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41692pub unsafe fn GetKey(LowLevelBase: *mut Library) -> ULONG {
41693    let asm_ret_value: ULONG;
41694    unsafe {
41695        asm!(
41696            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41697            ".short 0x40c0",
41698            "move.l %a6, -(%sp)",
41699            "move.l {basereg}, %a6",
41700            ".short 0x4eae", // jsr -48(a6)
41701            ".short -48",
41702            "move.l (%sp)+, %a6",
41703            "movem.l (%sp)+, %d1/%a0-%a1",
41704            basereg = in(reg) LowLevelBase,
41705            out("d0") asm_ret_value,
41706        );
41707    }
41708    asm_ret_value
41709}
41710
41711/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41712pub unsafe fn QueryKeys(LowLevelBase: *mut Library, queryArray: *mut KeyQuery, arraySize: LONG) {
41713    unsafe {
41714        asm!(
41715            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41716            ".short 0xc0c0",
41717            "move.l %a6, -(%sp)",
41718            "move.l {basereg}, %a6",
41719            ".short 0x4eae", // jsr -54(a6)
41720            ".short -54",
41721            "move.l (%sp)+, %a6",
41722            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41723            basereg = in(reg) LowLevelBase,
41724            in("a0") queryArray,
41725            in("d1") arraySize,
41726        );
41727    }
41728}
41729
41730/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41731pub unsafe fn AddKBInt(LowLevelBase: *mut Library, intRoutine: APTR, intData: APTR) -> APTR {
41732    let asm_ret_value: APTR;
41733    unsafe {
41734        asm!(
41735            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41736            ".short 0x40c0",
41737            "move.l %a6, -(%sp)",
41738            "move.l {basereg}, %a6",
41739            ".short 0x4eae", // jsr -60(a6)
41740            ".short -60",
41741            "move.l (%sp)+, %a6",
41742            "movem.l (%sp)+, %d1/%a0-%a1",
41743            basereg = in(reg) LowLevelBase,
41744            in("a0") intRoutine,
41745            in("a1") intData,
41746            out("d0") asm_ret_value,
41747        );
41748    }
41749    asm_ret_value
41750}
41751
41752/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41753pub unsafe fn RemKBInt(LowLevelBase: *mut Library, intHandle: APTR) {
41754    unsafe {
41755        asm!(
41756            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41757            ".short 0xc0c0",
41758            "move.l %a6, -(%sp)",
41759            "move.l {basereg}, %a6",
41760            ".short 0x4eae", // jsr -66(a6)
41761            ".short -66",
41762            "move.l (%sp)+, %a6",
41763            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41764            basereg = in(reg) LowLevelBase,
41765            in("a1") intHandle,
41766        );
41767    }
41768}
41769
41770/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41771pub unsafe fn SystemControlA(LowLevelBase: *mut Library, tagList: *const TagItem) -> ULONG {
41772    let asm_ret_value: ULONG;
41773    unsafe {
41774        asm!(
41775            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41776            ".short 0x40c0",
41777            "move.l %a6, -(%sp)",
41778            "move.l {basereg}, %a6",
41779            ".short 0x4eae", // jsr -72(a6)
41780            ".short -72",
41781            "move.l (%sp)+, %a6",
41782            "movem.l (%sp)+, %d1/%a0-%a1",
41783            basereg = in(reg) LowLevelBase,
41784            in("a1") tagList,
41785            out("d0") asm_ret_value,
41786        );
41787    }
41788    asm_ret_value
41789}
41790
41791/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41792pub unsafe fn AddTimerInt(LowLevelBase: *mut Library, intRoutine: APTR, intData: APTR) -> APTR {
41793    let asm_ret_value: APTR;
41794    unsafe {
41795        asm!(
41796            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41797            ".short 0x40c0",
41798            "move.l %a6, -(%sp)",
41799            "move.l {basereg}, %a6",
41800            ".short 0x4eae", // jsr -78(a6)
41801            ".short -78",
41802            "move.l (%sp)+, %a6",
41803            "movem.l (%sp)+, %d1/%a0-%a1",
41804            basereg = in(reg) LowLevelBase,
41805            in("a0") intRoutine,
41806            in("a1") intData,
41807            out("d0") asm_ret_value,
41808        );
41809    }
41810    asm_ret_value
41811}
41812
41813/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41814pub unsafe fn RemTimerInt(LowLevelBase: *mut Library, intHandle: APTR) {
41815    unsafe {
41816        asm!(
41817            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41818            ".short 0xc0c0",
41819            "move.l %a6, -(%sp)",
41820            "move.l {basereg}, %a6",
41821            ".short 0x4eae", // jsr -84(a6)
41822            ".short -84",
41823            "move.l (%sp)+, %a6",
41824            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41825            basereg = in(reg) LowLevelBase,
41826            in("a1") intHandle,
41827        );
41828    }
41829}
41830
41831/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41832pub unsafe fn StopTimerInt(LowLevelBase: *mut Library, intHandle: APTR) {
41833    unsafe {
41834        asm!(
41835            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41836            ".short 0xc0c0",
41837            "move.l %a6, -(%sp)",
41838            "move.l {basereg}, %a6",
41839            ".short 0x4eae", // jsr -90(a6)
41840            ".short -90",
41841            "move.l (%sp)+, %a6",
41842            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41843            basereg = in(reg) LowLevelBase,
41844            in("a1") intHandle,
41845        );
41846    }
41847}
41848
41849/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41850pub unsafe fn StartTimerInt(
41851    LowLevelBase: *mut Library,
41852    intHandle: APTR,
41853    timeInterval: ULONG,
41854    continuous: LONG,
41855) {
41856    unsafe {
41857        asm!(
41858            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41859            ".short 0xc0c0",
41860            "move.l %a6, -(%sp)",
41861            "move.l {basereg}, %a6",
41862            ".short 0x4eae", // jsr -96(a6)
41863            ".short -96",
41864            "move.l (%sp)+, %a6",
41865            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41866            basereg = in(reg) LowLevelBase,
41867            in("a1") intHandle,
41868            in("d0") timeInterval,
41869            in("d1") continuous,
41870        );
41871    }
41872}
41873
41874/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41875pub unsafe fn ElapsedTime(LowLevelBase: *mut Library, context: *mut EClockVal) -> ULONG {
41876    let asm_ret_value: ULONG;
41877    unsafe {
41878        asm!(
41879            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41880            ".short 0x40c0",
41881            "move.l %a6, -(%sp)",
41882            "move.l {basereg}, %a6",
41883            ".short 0x4eae", // jsr -102(a6)
41884            ".short -102",
41885            "move.l (%sp)+, %a6",
41886            "movem.l (%sp)+, %d1/%a0-%a1",
41887            basereg = in(reg) LowLevelBase,
41888            in("a0") context,
41889            out("d0") asm_ret_value,
41890        );
41891    }
41892    asm_ret_value
41893}
41894
41895/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41896pub unsafe fn AddVBlankInt(LowLevelBase: *mut Library, intRoutine: APTR, intData: APTR) -> APTR {
41897    let asm_ret_value: APTR;
41898    unsafe {
41899        asm!(
41900            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41901            ".short 0x40c0",
41902            "move.l %a6, -(%sp)",
41903            "move.l {basereg}, %a6",
41904            ".short 0x4eae", // jsr -108(a6)
41905            ".short -108",
41906            "move.l (%sp)+, %a6",
41907            "movem.l (%sp)+, %d1/%a0-%a1",
41908            basereg = in(reg) LowLevelBase,
41909            in("a0") intRoutine,
41910            in("a1") intData,
41911            out("d0") asm_ret_value,
41912        );
41913    }
41914    asm_ret_value
41915}
41916
41917/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41918pub unsafe fn RemVBlankInt(LowLevelBase: *mut Library, intHandle: APTR) {
41919    unsafe {
41920        asm!(
41921            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
41922            ".short 0xc0c0",
41923            "move.l %a6, -(%sp)",
41924            "move.l {basereg}, %a6",
41925            ".short 0x4eae", // jsr -114(a6)
41926            ".short -114",
41927            "move.l (%sp)+, %a6",
41928            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
41929            basereg = in(reg) LowLevelBase,
41930            in("a1") intHandle,
41931        );
41932    }
41933}
41934
41935/// libname: "lowlevel.library" (V40) (Kickstart 3.1)
41936pub unsafe fn SetJoyPortAttrsA(
41937    LowLevelBase: *mut Library,
41938    portNumber: ULONG,
41939    tagList: *const TagItem,
41940) -> BOOL {
41941    let asm_ret_value: BOOL;
41942    unsafe {
41943        asm!(
41944            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41945            ".short 0x40c0",
41946            "move.l %a6, -(%sp)",
41947            "move.l {basereg}, %a6",
41948            ".short 0x4eae", // jsr -132(a6)
41949            ".short -132",
41950            "move.l (%sp)+, %a6",
41951            "movem.l (%sp)+, %d1/%a0-%a1",
41952            basereg = in(reg) LowLevelBase,
41953            in("d0") portNumber,
41954            in("a1") tagList,
41955            lateout("d0") asm_ret_value,
41956        );
41957    }
41958    asm_ret_value
41959}
41960
41961/// libname: "mathffp.library"
41962pub unsafe fn SPFix(MathBase: *mut Library, parm: FLOAT) -> LONG {
41963    let asm_ret_value: LONG;
41964    unsafe {
41965        asm!(
41966            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41967            ".short 0x40c0",
41968            "move.l %a6, -(%sp)",
41969            "move.l {basereg}, %a6",
41970            ".short 0x4eae", // jsr -30(a6)
41971            ".short -30",
41972            "move.l (%sp)+, %a6",
41973            "movem.l (%sp)+, %d1/%a0-%a1",
41974            basereg = in(reg) MathBase,
41975            in("d0") parm.to_bits(),
41976            lateout("d0") asm_ret_value,
41977        );
41978    }
41979    asm_ret_value
41980}
41981
41982/// libname: "mathffp.library"
41983pub unsafe fn SPFlt(MathBase: *mut Library, integer: LONG) -> FLOAT {
41984    let asm_ret_value: u32;
41985    unsafe {
41986        asm!(
41987            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
41988            ".short 0x40c0",
41989            "move.l %a6, -(%sp)",
41990            "move.l {basereg}, %a6",
41991            ".short 0x4eae", // jsr -36(a6)
41992            ".short -36",
41993            "move.l (%sp)+, %a6",
41994            "movem.l (%sp)+, %d1/%a0-%a1",
41995            basereg = in(reg) MathBase,
41996            in("d0") integer,
41997            lateout("d0") asm_ret_value,
41998        );
41999    }
42000    f32::from_bits(asm_ret_value)
42001}
42002
42003/// libname: "mathffp.library"
42004pub unsafe fn SPCmp(MathBase: *mut Library, leftParm: FLOAT, rightParm: FLOAT) -> LONG {
42005    let asm_ret_value: LONG;
42006    unsafe {
42007        asm!(
42008            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42009            ".short 0x40c0",
42010            "move.l %a6, -(%sp)",
42011            "move.l {basereg}, %a6",
42012            ".short 0x4eae", // jsr -42(a6)
42013            ".short -42",
42014            "move.l (%sp)+, %a6",
42015            "movem.l (%sp)+, %d1/%a0-%a1",
42016            basereg = in(reg) MathBase,
42017            in("d1") leftParm.to_bits(),
42018            in("d0") rightParm.to_bits(),
42019            lateout("d0") asm_ret_value,
42020        );
42021    }
42022    asm_ret_value
42023}
42024
42025/// libname: "mathffp.library"
42026pub unsafe fn SPTst(MathBase: *mut Library, parm: FLOAT) -> LONG {
42027    let asm_ret_value: LONG;
42028    unsafe {
42029        asm!(
42030            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42031            ".short 0x40c0",
42032            "move.l %a6, -(%sp)",
42033            "move.l {basereg}, %a6",
42034            ".short 0x4eae", // jsr -48(a6)
42035            ".short -48",
42036            "move.l (%sp)+, %a6",
42037            "movem.l (%sp)+, %d1/%a0-%a1",
42038            basereg = in(reg) MathBase,
42039            in("d1") parm.to_bits(),
42040            out("d0") asm_ret_value,
42041        );
42042    }
42043    asm_ret_value
42044}
42045
42046/// libname: "mathffp.library"
42047pub unsafe fn SPAbs(MathBase: *mut Library, parm: FLOAT) -> FLOAT {
42048    let asm_ret_value: u32;
42049    unsafe {
42050        asm!(
42051            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42052            ".short 0x40c0",
42053            "move.l %a6, -(%sp)",
42054            "move.l {basereg}, %a6",
42055            ".short 0x4eae", // jsr -54(a6)
42056            ".short -54",
42057            "move.l (%sp)+, %a6",
42058            "movem.l (%sp)+, %d1/%a0-%a1",
42059            basereg = in(reg) MathBase,
42060            in("d0") parm.to_bits(),
42061            lateout("d0") asm_ret_value,
42062        );
42063    }
42064    f32::from_bits(asm_ret_value)
42065}
42066
42067/// libname: "mathffp.library"
42068pub unsafe fn SPNeg(MathBase: *mut Library, parm: FLOAT) -> FLOAT {
42069    let asm_ret_value: u32;
42070    unsafe {
42071        asm!(
42072            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42073            ".short 0x40c0",
42074            "move.l %a6, -(%sp)",
42075            "move.l {basereg}, %a6",
42076            ".short 0x4eae", // jsr -60(a6)
42077            ".short -60",
42078            "move.l (%sp)+, %a6",
42079            "movem.l (%sp)+, %d1/%a0-%a1",
42080            basereg = in(reg) MathBase,
42081            in("d0") parm.to_bits(),
42082            lateout("d0") asm_ret_value,
42083        );
42084    }
42085    f32::from_bits(asm_ret_value)
42086}
42087
42088/// libname: "mathffp.library"
42089pub unsafe fn SPAdd(MathBase: *mut Library, leftParm: FLOAT, rightParm: FLOAT) -> FLOAT {
42090    let asm_ret_value: u32;
42091    unsafe {
42092        asm!(
42093            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42094            ".short 0x40c0",
42095            "move.l %a6, -(%sp)",
42096            "move.l {basereg}, %a6",
42097            ".short 0x4eae", // jsr -66(a6)
42098            ".short -66",
42099            "move.l (%sp)+, %a6",
42100            "movem.l (%sp)+, %d1/%a0-%a1",
42101            basereg = in(reg) MathBase,
42102            in("d1") leftParm.to_bits(),
42103            in("d0") rightParm.to_bits(),
42104            lateout("d0") asm_ret_value,
42105        );
42106    }
42107    f32::from_bits(asm_ret_value)
42108}
42109
42110/// libname: "mathffp.library"
42111pub unsafe fn SPSub(MathBase: *mut Library, leftParm: FLOAT, rightParm: FLOAT) -> FLOAT {
42112    let asm_ret_value: u32;
42113    unsafe {
42114        asm!(
42115            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42116            ".short 0x40c0",
42117            "move.l %a6, -(%sp)",
42118            "move.l {basereg}, %a6",
42119            ".short 0x4eae", // jsr -72(a6)
42120            ".short -72",
42121            "move.l (%sp)+, %a6",
42122            "movem.l (%sp)+, %d1/%a0-%a1",
42123            basereg = in(reg) MathBase,
42124            in("d1") leftParm.to_bits(),
42125            in("d0") rightParm.to_bits(),
42126            lateout("d0") asm_ret_value,
42127        );
42128    }
42129    f32::from_bits(asm_ret_value)
42130}
42131
42132/// libname: "mathffp.library"
42133pub unsafe fn SPMul(MathBase: *mut Library, leftParm: FLOAT, rightParm: FLOAT) -> FLOAT {
42134    let asm_ret_value: u32;
42135    unsafe {
42136        asm!(
42137            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42138            ".short 0x40c0",
42139            "move.l %a6, -(%sp)",
42140            "move.l {basereg}, %a6",
42141            ".short 0x4eae", // jsr -78(a6)
42142            ".short -78",
42143            "move.l (%sp)+, %a6",
42144            "movem.l (%sp)+, %d1/%a0-%a1",
42145            basereg = in(reg) MathBase,
42146            in("d1") leftParm.to_bits(),
42147            in("d0") rightParm.to_bits(),
42148            lateout("d0") asm_ret_value,
42149        );
42150    }
42151    f32::from_bits(asm_ret_value)
42152}
42153
42154/// libname: "mathffp.library"
42155pub unsafe fn SPDiv(MathBase: *mut Library, leftParm: FLOAT, rightParm: FLOAT) -> FLOAT {
42156    let asm_ret_value: u32;
42157    unsafe {
42158        asm!(
42159            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42160            ".short 0x40c0",
42161            "move.l %a6, -(%sp)",
42162            "move.l {basereg}, %a6",
42163            ".short 0x4eae", // jsr -84(a6)
42164            ".short -84",
42165            "move.l (%sp)+, %a6",
42166            "movem.l (%sp)+, %d1/%a0-%a1",
42167            basereg = in(reg) MathBase,
42168            in("d1") leftParm.to_bits(),
42169            in("d0") rightParm.to_bits(),
42170            lateout("d0") asm_ret_value,
42171        );
42172    }
42173    f32::from_bits(asm_ret_value)
42174}
42175
42176/// libname: "mathffp.library" (V33) (Kickstart 1.2)
42177pub unsafe fn SPFloor(MathBase: *mut Library, parm: FLOAT) -> FLOAT {
42178    let asm_ret_value: u32;
42179    unsafe {
42180        asm!(
42181            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42182            ".short 0x40c0",
42183            "move.l %a6, -(%sp)",
42184            "move.l {basereg}, %a6",
42185            ".short 0x4eae", // jsr -90(a6)
42186            ".short -90",
42187            "move.l (%sp)+, %a6",
42188            "movem.l (%sp)+, %d1/%a0-%a1",
42189            basereg = in(reg) MathBase,
42190            in("d0") parm.to_bits(),
42191            lateout("d0") asm_ret_value,
42192        );
42193    }
42194    f32::from_bits(asm_ret_value)
42195}
42196
42197/// libname: "mathffp.library" (V33) (Kickstart 1.2)
42198pub unsafe fn SPCeil(MathBase: *mut Library, parm: FLOAT) -> FLOAT {
42199    let asm_ret_value: u32;
42200    unsafe {
42201        asm!(
42202            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42203            ".short 0x40c0",
42204            "move.l %a6, -(%sp)",
42205            "move.l {basereg}, %a6",
42206            ".short 0x4eae", // jsr -96(a6)
42207            ".short -96",
42208            "move.l (%sp)+, %a6",
42209            "movem.l (%sp)+, %d1/%a0-%a1",
42210            basereg = in(reg) MathBase,
42211            in("d0") parm.to_bits(),
42212            lateout("d0") asm_ret_value,
42213        );
42214    }
42215    f32::from_bits(asm_ret_value)
42216}
42217
42218/// libname: "mathieeedoubbas.library"
42219pub unsafe fn IEEEDPFix(MathIeeeDoubBasBase: *mut Library, parm: DOUBLE) -> LONG {
42220    let asm_ret_value: LONG;
42221    unsafe {
42222        asm!(
42223            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42224            ".short 0x40c0",
42225            "move.l %a6, -(%sp)",
42226            "move.l {basereg}, %a6",
42227            ".short 0x4eae", // jsr -30(a6)
42228            ".short -30",
42229            "move.l (%sp)+, %a6",
42230            "movem.l (%sp)+, %d1/%a0-%a1",
42231            basereg = in(reg) MathIeeeDoubBasBase,
42232            in("d0") (parm.to_bits() >> 32) as u32,
42233            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42234            lateout("d0") asm_ret_value,
42235        );
42236    }
42237    asm_ret_value
42238}
42239
42240/// libname: "mathieeedoubbas.library"
42241pub unsafe fn IEEEDPFlt(MathIeeeDoubBasBase: *mut Library, integer: LONG) -> DOUBLE {
42242    let mut asm_ret_value: (u32, u32) = (0, 0);
42243    unsafe {
42244        asm!(
42245            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42246            ".short 0x40c0",
42247            "move.l %a6, -(%sp)",
42248            "move.l {basereg}, %a6",
42249            ".short 0x4eae", // jsr -36(a6)
42250            ".short -36",
42251            "move.l (%sp)+, %a6",
42252            "movem.l (%sp)+, %d1/%a0-%a1",
42253            basereg = in(reg) MathIeeeDoubBasBase,
42254            in("d0") integer,
42255            lateout("d0") asm_ret_value.0,
42256            lateout("d1") asm_ret_value.1,
42257        );
42258    }
42259    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42260}
42261
42262/// libname: "mathieeedoubbas.library"
42263pub unsafe fn IEEEDPCmp(
42264    MathIeeeDoubBasBase: *mut Library,
42265    leftParm: DOUBLE,
42266    rightParm: DOUBLE,
42267) -> LONG {
42268    let asm_ret_value: LONG;
42269    unsafe {
42270        asm!(
42271            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42272            ".short 0x40c0",
42273            "move.l %a6, -(%sp)",
42274            "move.l {basereg}, %a6",
42275            ".short 0x4eae", // jsr -42(a6)
42276            ".short -42",
42277            "move.l (%sp)+, %a6",
42278            "movem.l (%sp)+, %d1/%a0-%a1",
42279            basereg = in(reg) MathIeeeDoubBasBase,
42280            in("d0") (leftParm.to_bits() >> 32) as u32,
42281            in("d1") (leftParm.to_bits() & 0xffff_ffff) as u32,
42282            in("d2") (rightParm.to_bits() >> 32) as u32,
42283            in("d3") (rightParm.to_bits() & 0xffff_ffff) as u32,
42284            lateout("d0") asm_ret_value,
42285        );
42286    }
42287    asm_ret_value
42288}
42289
42290/// libname: "mathieeedoubbas.library"
42291pub unsafe fn IEEEDPTst(MathIeeeDoubBasBase: *mut Library, parm: DOUBLE) -> LONG {
42292    let asm_ret_value: LONG;
42293    unsafe {
42294        asm!(
42295            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42296            ".short 0x40c0",
42297            "move.l %a6, -(%sp)",
42298            "move.l {basereg}, %a6",
42299            ".short 0x4eae", // jsr -48(a6)
42300            ".short -48",
42301            "move.l (%sp)+, %a6",
42302            "movem.l (%sp)+, %d1/%a0-%a1",
42303            basereg = in(reg) MathIeeeDoubBasBase,
42304            in("d0") (parm.to_bits() >> 32) as u32,
42305            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42306            lateout("d0") asm_ret_value,
42307        );
42308    }
42309    asm_ret_value
42310}
42311
42312/// libname: "mathieeedoubbas.library"
42313pub unsafe fn IEEEDPAbs(MathIeeeDoubBasBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42314    let mut asm_ret_value: (u32, u32) = (0, 0);
42315    unsafe {
42316        asm!(
42317            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42318            ".short 0x40c0",
42319            "move.l %a6, -(%sp)",
42320            "move.l {basereg}, %a6",
42321            ".short 0x4eae", // jsr -54(a6)
42322            ".short -54",
42323            "move.l (%sp)+, %a6",
42324            "movem.l (%sp)+, %d1/%a0-%a1",
42325            basereg = in(reg) MathIeeeDoubBasBase,
42326            in("d0") (parm.to_bits() >> 32) as u32,
42327            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42328            lateout("d0") asm_ret_value.0,
42329            lateout("d1") asm_ret_value.1,
42330        );
42331    }
42332    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42333}
42334
42335/// libname: "mathieeedoubbas.library"
42336pub unsafe fn IEEEDPNeg(MathIeeeDoubBasBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42337    let mut asm_ret_value: (u32, u32) = (0, 0);
42338    unsafe {
42339        asm!(
42340            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42341            ".short 0x40c0",
42342            "move.l %a6, -(%sp)",
42343            "move.l {basereg}, %a6",
42344            ".short 0x4eae", // jsr -60(a6)
42345            ".short -60",
42346            "move.l (%sp)+, %a6",
42347            "movem.l (%sp)+, %d1/%a0-%a1",
42348            basereg = in(reg) MathIeeeDoubBasBase,
42349            in("d0") (parm.to_bits() >> 32) as u32,
42350            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42351            lateout("d0") asm_ret_value.0,
42352            lateout("d1") asm_ret_value.1,
42353        );
42354    }
42355    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42356}
42357
42358/// libname: "mathieeedoubbas.library"
42359pub unsafe fn IEEEDPAdd(
42360    MathIeeeDoubBasBase: *mut Library,
42361    leftParm: DOUBLE,
42362    rightParm: DOUBLE,
42363) -> DOUBLE {
42364    let mut asm_ret_value: (u32, u32) = (0, 0);
42365    unsafe {
42366        asm!(
42367            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42368            ".short 0x40c0",
42369            "move.l %a6, -(%sp)",
42370            "move.l {basereg}, %a6",
42371            ".short 0x4eae", // jsr -66(a6)
42372            ".short -66",
42373            "move.l (%sp)+, %a6",
42374            "movem.l (%sp)+, %d1/%a0-%a1",
42375            basereg = in(reg) MathIeeeDoubBasBase,
42376            in("d0") (leftParm.to_bits() >> 32) as u32,
42377            in("d1") (leftParm.to_bits() & 0xffff_ffff) as u32,
42378            in("d2") (rightParm.to_bits() >> 32) as u32,
42379            in("d3") (rightParm.to_bits() & 0xffff_ffff) as u32,
42380            lateout("d0") asm_ret_value.0,
42381            lateout("d1") asm_ret_value.1,
42382        );
42383    }
42384    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42385}
42386
42387/// libname: "mathieeedoubbas.library"
42388pub unsafe fn IEEEDPSub(
42389    MathIeeeDoubBasBase: *mut Library,
42390    leftParm: DOUBLE,
42391    rightParm: DOUBLE,
42392) -> DOUBLE {
42393    let mut asm_ret_value: (u32, u32) = (0, 0);
42394    unsafe {
42395        asm!(
42396            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42397            ".short 0x40c0",
42398            "move.l %a6, -(%sp)",
42399            "move.l {basereg}, %a6",
42400            ".short 0x4eae", // jsr -72(a6)
42401            ".short -72",
42402            "move.l (%sp)+, %a6",
42403            "movem.l (%sp)+, %d1/%a0-%a1",
42404            basereg = in(reg) MathIeeeDoubBasBase,
42405            in("d0") (leftParm.to_bits() >> 32) as u32,
42406            in("d1") (leftParm.to_bits() & 0xffff_ffff) as u32,
42407            in("d2") (rightParm.to_bits() >> 32) as u32,
42408            in("d3") (rightParm.to_bits() & 0xffff_ffff) as u32,
42409            lateout("d0") asm_ret_value.0,
42410            lateout("d1") asm_ret_value.1,
42411        );
42412    }
42413    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42414}
42415
42416/// libname: "mathieeedoubbas.library"
42417pub unsafe fn IEEEDPMul(
42418    MathIeeeDoubBasBase: *mut Library,
42419    factor1: DOUBLE,
42420    factor2: DOUBLE,
42421) -> DOUBLE {
42422    let mut asm_ret_value: (u32, u32) = (0, 0);
42423    unsafe {
42424        asm!(
42425            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42426            ".short 0x40c0",
42427            "move.l %a6, -(%sp)",
42428            "move.l {basereg}, %a6",
42429            ".short 0x4eae", // jsr -78(a6)
42430            ".short -78",
42431            "move.l (%sp)+, %a6",
42432            "movem.l (%sp)+, %d1/%a0-%a1",
42433            basereg = in(reg) MathIeeeDoubBasBase,
42434            in("d0") (factor1.to_bits() >> 32) as u32,
42435            in("d1") (factor1.to_bits() & 0xffff_ffff) as u32,
42436            in("d2") (factor2.to_bits() >> 32) as u32,
42437            in("d3") (factor2.to_bits() & 0xffff_ffff) as u32,
42438            lateout("d0") asm_ret_value.0,
42439            lateout("d1") asm_ret_value.1,
42440        );
42441    }
42442    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42443}
42444
42445/// libname: "mathieeedoubbas.library"
42446pub unsafe fn IEEEDPDiv(
42447    MathIeeeDoubBasBase: *mut Library,
42448    dividend: DOUBLE,
42449    divisor: DOUBLE,
42450) -> DOUBLE {
42451    let mut asm_ret_value: (u32, u32) = (0, 0);
42452    unsafe {
42453        asm!(
42454            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42455            ".short 0x40c0",
42456            "move.l %a6, -(%sp)",
42457            "move.l {basereg}, %a6",
42458            ".short 0x4eae", // jsr -84(a6)
42459            ".short -84",
42460            "move.l (%sp)+, %a6",
42461            "movem.l (%sp)+, %d1/%a0-%a1",
42462            basereg = in(reg) MathIeeeDoubBasBase,
42463            in("d0") (dividend.to_bits() >> 32) as u32,
42464            in("d1") (dividend.to_bits() & 0xffff_ffff) as u32,
42465            in("d2") (divisor.to_bits() >> 32) as u32,
42466            in("d3") (divisor.to_bits() & 0xffff_ffff) as u32,
42467            lateout("d0") asm_ret_value.0,
42468            lateout("d1") asm_ret_value.1,
42469        );
42470    }
42471    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42472}
42473
42474/// libname: "mathieeedoubbas.library" (V33) (Kickstart 1.2)
42475pub unsafe fn IEEEDPFloor(MathIeeeDoubBasBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42476    let mut asm_ret_value: (u32, u32) = (0, 0);
42477    unsafe {
42478        asm!(
42479            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42480            ".short 0x40c0",
42481            "move.l %a6, -(%sp)",
42482            "move.l {basereg}, %a6",
42483            ".short 0x4eae", // jsr -90(a6)
42484            ".short -90",
42485            "move.l (%sp)+, %a6",
42486            "movem.l (%sp)+, %d1/%a0-%a1",
42487            basereg = in(reg) MathIeeeDoubBasBase,
42488            in("d0") (parm.to_bits() >> 32) as u32,
42489            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42490            lateout("d0") asm_ret_value.0,
42491            lateout("d1") asm_ret_value.1,
42492        );
42493    }
42494    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42495}
42496
42497/// libname: "mathieeedoubbas.library" (V33) (Kickstart 1.2)
42498pub unsafe fn IEEEDPCeil(MathIeeeDoubBasBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42499    let mut asm_ret_value: (u32, u32) = (0, 0);
42500    unsafe {
42501        asm!(
42502            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42503            ".short 0x40c0",
42504            "move.l %a6, -(%sp)",
42505            "move.l {basereg}, %a6",
42506            ".short 0x4eae", // jsr -96(a6)
42507            ".short -96",
42508            "move.l (%sp)+, %a6",
42509            "movem.l (%sp)+, %d1/%a0-%a1",
42510            basereg = in(reg) MathIeeeDoubBasBase,
42511            in("d0") (parm.to_bits() >> 32) as u32,
42512            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42513            lateout("d0") asm_ret_value.0,
42514            lateout("d1") asm_ret_value.1,
42515        );
42516    }
42517    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42518}
42519
42520/// libname: "mathieeedoubtrans.library"
42521pub unsafe fn IEEEDPAtan(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42522    let mut asm_ret_value: (u32, u32) = (0, 0);
42523    unsafe {
42524        asm!(
42525            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42526            ".short 0x40c0",
42527            "move.l %a6, -(%sp)",
42528            "move.l {basereg}, %a6",
42529            ".short 0x4eae", // jsr -30(a6)
42530            ".short -30",
42531            "move.l (%sp)+, %a6",
42532            "movem.l (%sp)+, %d1/%a0-%a1",
42533            basereg = in(reg) MathIeeeDoubTransBase,
42534            in("d0") (parm.to_bits() >> 32) as u32,
42535            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42536            lateout("d0") asm_ret_value.0,
42537            lateout("d1") asm_ret_value.1,
42538        );
42539    }
42540    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42541}
42542
42543/// libname: "mathieeedoubtrans.library"
42544pub unsafe fn IEEEDPSin(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42545    let mut asm_ret_value: (u32, u32) = (0, 0);
42546    unsafe {
42547        asm!(
42548            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42549            ".short 0x40c0",
42550            "move.l %a6, -(%sp)",
42551            "move.l {basereg}, %a6",
42552            ".short 0x4eae", // jsr -36(a6)
42553            ".short -36",
42554            "move.l (%sp)+, %a6",
42555            "movem.l (%sp)+, %d1/%a0-%a1",
42556            basereg = in(reg) MathIeeeDoubTransBase,
42557            in("d0") (parm.to_bits() >> 32) as u32,
42558            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42559            lateout("d0") asm_ret_value.0,
42560            lateout("d1") asm_ret_value.1,
42561        );
42562    }
42563    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42564}
42565
42566/// libname: "mathieeedoubtrans.library"
42567pub unsafe fn IEEEDPCos(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42568    let mut asm_ret_value: (u32, u32) = (0, 0);
42569    unsafe {
42570        asm!(
42571            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42572            ".short 0x40c0",
42573            "move.l %a6, -(%sp)",
42574            "move.l {basereg}, %a6",
42575            ".short 0x4eae", // jsr -42(a6)
42576            ".short -42",
42577            "move.l (%sp)+, %a6",
42578            "movem.l (%sp)+, %d1/%a0-%a1",
42579            basereg = in(reg) MathIeeeDoubTransBase,
42580            in("d0") (parm.to_bits() >> 32) as u32,
42581            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42582            lateout("d0") asm_ret_value.0,
42583            lateout("d1") asm_ret_value.1,
42584        );
42585    }
42586    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42587}
42588
42589/// libname: "mathieeedoubtrans.library"
42590pub unsafe fn IEEEDPTan(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42591    let mut asm_ret_value: (u32, u32) = (0, 0);
42592    unsafe {
42593        asm!(
42594            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42595            ".short 0x40c0",
42596            "move.l %a6, -(%sp)",
42597            "move.l {basereg}, %a6",
42598            ".short 0x4eae", // jsr -48(a6)
42599            ".short -48",
42600            "move.l (%sp)+, %a6",
42601            "movem.l (%sp)+, %d1/%a0-%a1",
42602            basereg = in(reg) MathIeeeDoubTransBase,
42603            in("d0") (parm.to_bits() >> 32) as u32,
42604            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42605            lateout("d0") asm_ret_value.0,
42606            lateout("d1") asm_ret_value.1,
42607        );
42608    }
42609    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42610}
42611
42612/// libname: "mathieeedoubtrans.library"
42613pub unsafe fn IEEEDPSincos(
42614    MathIeeeDoubTransBase: *mut Library,
42615    pf2: *mut DOUBLE,
42616    parm: DOUBLE,
42617) -> DOUBLE {
42618    let mut asm_ret_value: (u32, u32) = (0, 0);
42619    unsafe {
42620        asm!(
42621            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42622            ".short 0x40c0",
42623            "move.l %a6, -(%sp)",
42624            "move.l {basereg}, %a6",
42625            ".short 0x4eae", // jsr -54(a6)
42626            ".short -54",
42627            "move.l (%sp)+, %a6",
42628            "movem.l (%sp)+, %d1/%a0-%a1",
42629            basereg = in(reg) MathIeeeDoubTransBase,
42630            in("a0") pf2,
42631            in("d0") (parm.to_bits() >> 32) as u32,
42632            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42633            lateout("d0") asm_ret_value.0,
42634            lateout("d1") asm_ret_value.1,
42635        );
42636    }
42637    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42638}
42639
42640/// libname: "mathieeedoubtrans.library"
42641pub unsafe fn IEEEDPSinh(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42642    let mut asm_ret_value: (u32, u32) = (0, 0);
42643    unsafe {
42644        asm!(
42645            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42646            ".short 0x40c0",
42647            "move.l %a6, -(%sp)",
42648            "move.l {basereg}, %a6",
42649            ".short 0x4eae", // jsr -60(a6)
42650            ".short -60",
42651            "move.l (%sp)+, %a6",
42652            "movem.l (%sp)+, %d1/%a0-%a1",
42653            basereg = in(reg) MathIeeeDoubTransBase,
42654            in("d0") (parm.to_bits() >> 32) as u32,
42655            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42656            lateout("d0") asm_ret_value.0,
42657            lateout("d1") asm_ret_value.1,
42658        );
42659    }
42660    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42661}
42662
42663/// libname: "mathieeedoubtrans.library"
42664pub unsafe fn IEEEDPCosh(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42665    let mut asm_ret_value: (u32, u32) = (0, 0);
42666    unsafe {
42667        asm!(
42668            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42669            ".short 0x40c0",
42670            "move.l %a6, -(%sp)",
42671            "move.l {basereg}, %a6",
42672            ".short 0x4eae", // jsr -66(a6)
42673            ".short -66",
42674            "move.l (%sp)+, %a6",
42675            "movem.l (%sp)+, %d1/%a0-%a1",
42676            basereg = in(reg) MathIeeeDoubTransBase,
42677            in("d0") (parm.to_bits() >> 32) as u32,
42678            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42679            lateout("d0") asm_ret_value.0,
42680            lateout("d1") asm_ret_value.1,
42681        );
42682    }
42683    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42684}
42685
42686/// libname: "mathieeedoubtrans.library"
42687pub unsafe fn IEEEDPTanh(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42688    let mut asm_ret_value: (u32, u32) = (0, 0);
42689    unsafe {
42690        asm!(
42691            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42692            ".short 0x40c0",
42693            "move.l %a6, -(%sp)",
42694            "move.l {basereg}, %a6",
42695            ".short 0x4eae", // jsr -72(a6)
42696            ".short -72",
42697            "move.l (%sp)+, %a6",
42698            "movem.l (%sp)+, %d1/%a0-%a1",
42699            basereg = in(reg) MathIeeeDoubTransBase,
42700            in("d0") (parm.to_bits() >> 32) as u32,
42701            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42702            lateout("d0") asm_ret_value.0,
42703            lateout("d1") asm_ret_value.1,
42704        );
42705    }
42706    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42707}
42708
42709/// libname: "mathieeedoubtrans.library"
42710pub unsafe fn IEEEDPExp(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42711    let mut asm_ret_value: (u32, u32) = (0, 0);
42712    unsafe {
42713        asm!(
42714            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42715            ".short 0x40c0",
42716            "move.l %a6, -(%sp)",
42717            "move.l {basereg}, %a6",
42718            ".short 0x4eae", // jsr -78(a6)
42719            ".short -78",
42720            "move.l (%sp)+, %a6",
42721            "movem.l (%sp)+, %d1/%a0-%a1",
42722            basereg = in(reg) MathIeeeDoubTransBase,
42723            in("d0") (parm.to_bits() >> 32) as u32,
42724            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42725            lateout("d0") asm_ret_value.0,
42726            lateout("d1") asm_ret_value.1,
42727        );
42728    }
42729    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42730}
42731
42732/// libname: "mathieeedoubtrans.library"
42733pub unsafe fn IEEEDPLog(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42734    let mut asm_ret_value: (u32, u32) = (0, 0);
42735    unsafe {
42736        asm!(
42737            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42738            ".short 0x40c0",
42739            "move.l %a6, -(%sp)",
42740            "move.l {basereg}, %a6",
42741            ".short 0x4eae", // jsr -84(a6)
42742            ".short -84",
42743            "move.l (%sp)+, %a6",
42744            "movem.l (%sp)+, %d1/%a0-%a1",
42745            basereg = in(reg) MathIeeeDoubTransBase,
42746            in("d0") (parm.to_bits() >> 32) as u32,
42747            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42748            lateout("d0") asm_ret_value.0,
42749            lateout("d1") asm_ret_value.1,
42750        );
42751    }
42752    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42753}
42754
42755/// libname: "mathieeedoubtrans.library"
42756pub unsafe fn IEEEDPPow(MathIeeeDoubTransBase: *mut Library, SPExp: DOUBLE, arg: DOUBLE) -> DOUBLE {
42757    let mut asm_ret_value: (u32, u32) = (0, 0);
42758    unsafe {
42759        asm!(
42760            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42761            ".short 0x40c0",
42762            "move.l %a6, -(%sp)",
42763            "move.l {basereg}, %a6",
42764            ".short 0x4eae", // jsr -90(a6)
42765            ".short -90",
42766            "move.l (%sp)+, %a6",
42767            "movem.l (%sp)+, %d1/%a0-%a1",
42768            basereg = in(reg) MathIeeeDoubTransBase,
42769            in("d2") (SPExp.to_bits() >> 32) as u32,
42770            in("d3") (SPExp.to_bits() & 0xffff_ffff) as u32,
42771            in("d0") (arg.to_bits() >> 32) as u32,
42772            in("d1") (arg.to_bits() & 0xffff_ffff) as u32,
42773            lateout("d0") asm_ret_value.0,
42774            lateout("d1") asm_ret_value.1,
42775        );
42776    }
42777    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42778}
42779
42780/// libname: "mathieeedoubtrans.library"
42781pub unsafe fn IEEEDPSqrt(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42782    let mut asm_ret_value: (u32, u32) = (0, 0);
42783    unsafe {
42784        asm!(
42785            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42786            ".short 0x40c0",
42787            "move.l %a6, -(%sp)",
42788            "move.l {basereg}, %a6",
42789            ".short 0x4eae", // jsr -96(a6)
42790            ".short -96",
42791            "move.l (%sp)+, %a6",
42792            "movem.l (%sp)+, %d1/%a0-%a1",
42793            basereg = in(reg) MathIeeeDoubTransBase,
42794            in("d0") (parm.to_bits() >> 32) as u32,
42795            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42796            lateout("d0") asm_ret_value.0,
42797            lateout("d1") asm_ret_value.1,
42798        );
42799    }
42800    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42801}
42802
42803/// libname: "mathieeedoubtrans.library"
42804pub unsafe fn IEEEDPTieee(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> FLOAT {
42805    let asm_ret_value: u32;
42806    unsafe {
42807        asm!(
42808            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42809            ".short 0x40c0",
42810            "move.l %a6, -(%sp)",
42811            "move.l {basereg}, %a6",
42812            ".short 0x4eae", // jsr -102(a6)
42813            ".short -102",
42814            "move.l (%sp)+, %a6",
42815            "movem.l (%sp)+, %d1/%a0-%a1",
42816            basereg = in(reg) MathIeeeDoubTransBase,
42817            in("d0") (parm.to_bits() >> 32) as u32,
42818            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42819            lateout("d0") asm_ret_value,
42820        );
42821    }
42822    f32::from_bits(asm_ret_value)
42823}
42824
42825/// libname: "mathieeedoubtrans.library"
42826pub unsafe fn IEEEDPFieee(MathIeeeDoubTransBase: *mut Library, single: FLOAT) -> DOUBLE {
42827    let mut asm_ret_value: (u32, u32) = (0, 0);
42828    unsafe {
42829        asm!(
42830            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42831            ".short 0x40c0",
42832            "move.l %a6, -(%sp)",
42833            "move.l {basereg}, %a6",
42834            ".short 0x4eae", // jsr -108(a6)
42835            ".short -108",
42836            "move.l (%sp)+, %a6",
42837            "movem.l (%sp)+, %d1/%a0-%a1",
42838            basereg = in(reg) MathIeeeDoubTransBase,
42839            in("d0") single.to_bits(),
42840            lateout("d0") asm_ret_value.0,
42841            lateout("d1") asm_ret_value.1,
42842        );
42843    }
42844    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42845}
42846
42847/// libname: "mathieeedoubtrans.library"
42848pub unsafe fn IEEEDPAsin(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42849    let mut asm_ret_value: (u32, u32) = (0, 0);
42850    unsafe {
42851        asm!(
42852            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42853            ".short 0x40c0",
42854            "move.l %a6, -(%sp)",
42855            "move.l {basereg}, %a6",
42856            ".short 0x4eae", // jsr -114(a6)
42857            ".short -114",
42858            "move.l (%sp)+, %a6",
42859            "movem.l (%sp)+, %d1/%a0-%a1",
42860            basereg = in(reg) MathIeeeDoubTransBase,
42861            in("d0") (parm.to_bits() >> 32) as u32,
42862            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42863            lateout("d0") asm_ret_value.0,
42864            lateout("d1") asm_ret_value.1,
42865        );
42866    }
42867    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42868}
42869
42870/// libname: "mathieeedoubtrans.library"
42871pub unsafe fn IEEEDPAcos(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42872    let mut asm_ret_value: (u32, u32) = (0, 0);
42873    unsafe {
42874        asm!(
42875            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42876            ".short 0x40c0",
42877            "move.l %a6, -(%sp)",
42878            "move.l {basereg}, %a6",
42879            ".short 0x4eae", // jsr -120(a6)
42880            ".short -120",
42881            "move.l (%sp)+, %a6",
42882            "movem.l (%sp)+, %d1/%a0-%a1",
42883            basereg = in(reg) MathIeeeDoubTransBase,
42884            in("d0") (parm.to_bits() >> 32) as u32,
42885            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42886            lateout("d0") asm_ret_value.0,
42887            lateout("d1") asm_ret_value.1,
42888        );
42889    }
42890    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42891}
42892
42893/// libname: "mathieeedoubtrans.library"
42894pub unsafe fn IEEEDPLog10(MathIeeeDoubTransBase: *mut Library, parm: DOUBLE) -> DOUBLE {
42895    let mut asm_ret_value: (u32, u32) = (0, 0);
42896    unsafe {
42897        asm!(
42898            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42899            ".short 0x40c0",
42900            "move.l %a6, -(%sp)",
42901            "move.l {basereg}, %a6",
42902            ".short 0x4eae", // jsr -126(a6)
42903            ".short -126",
42904            "move.l (%sp)+, %a6",
42905            "movem.l (%sp)+, %d1/%a0-%a1",
42906            basereg = in(reg) MathIeeeDoubTransBase,
42907            in("d0") (parm.to_bits() >> 32) as u32,
42908            in("d1") (parm.to_bits() & 0xffff_ffff) as u32,
42909            lateout("d0") asm_ret_value.0,
42910            lateout("d1") asm_ret_value.1,
42911        );
42912    }
42913    f64::from_bits(((asm_ret_value.0 as u64) << 32) | asm_ret_value.1 as u64)
42914}
42915
42916/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
42917pub unsafe fn IEEESPFix(MathIeeeSingBasBase: *mut Library, parm: FLOAT) -> LONG {
42918    let asm_ret_value: LONG;
42919    unsafe {
42920        asm!(
42921            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42922            ".short 0x40c0",
42923            "move.l %a6, -(%sp)",
42924            "move.l {basereg}, %a6",
42925            ".short 0x4eae", // jsr -30(a6)
42926            ".short -30",
42927            "move.l (%sp)+, %a6",
42928            "movem.l (%sp)+, %d1/%a0-%a1",
42929            basereg = in(reg) MathIeeeSingBasBase,
42930            in("d0") parm.to_bits(),
42931            lateout("d0") asm_ret_value,
42932        );
42933    }
42934    asm_ret_value
42935}
42936
42937/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
42938pub unsafe fn IEEESPFlt(MathIeeeSingBasBase: *mut Library, integer: LONG) -> FLOAT {
42939    let asm_ret_value: u32;
42940    unsafe {
42941        asm!(
42942            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42943            ".short 0x40c0",
42944            "move.l %a6, -(%sp)",
42945            "move.l {basereg}, %a6",
42946            ".short 0x4eae", // jsr -36(a6)
42947            ".short -36",
42948            "move.l (%sp)+, %a6",
42949            "movem.l (%sp)+, %d1/%a0-%a1",
42950            basereg = in(reg) MathIeeeSingBasBase,
42951            in("d0") integer,
42952            lateout("d0") asm_ret_value,
42953        );
42954    }
42955    f32::from_bits(asm_ret_value)
42956}
42957
42958/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
42959pub unsafe fn IEEESPCmp(
42960    MathIeeeSingBasBase: *mut Library,
42961    leftParm: FLOAT,
42962    rightParm: FLOAT,
42963) -> LONG {
42964    let asm_ret_value: LONG;
42965    unsafe {
42966        asm!(
42967            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42968            ".short 0x40c0",
42969            "move.l %a6, -(%sp)",
42970            "move.l {basereg}, %a6",
42971            ".short 0x4eae", // jsr -42(a6)
42972            ".short -42",
42973            "move.l (%sp)+, %a6",
42974            "movem.l (%sp)+, %d1/%a0-%a1",
42975            basereg = in(reg) MathIeeeSingBasBase,
42976            in("d0") leftParm.to_bits(),
42977            in("d1") rightParm.to_bits(),
42978            lateout("d0") asm_ret_value,
42979        );
42980    }
42981    asm_ret_value
42982}
42983
42984/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
42985pub unsafe fn IEEESPTst(MathIeeeSingBasBase: *mut Library, parm: FLOAT) -> LONG {
42986    let asm_ret_value: LONG;
42987    unsafe {
42988        asm!(
42989            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
42990            ".short 0x40c0",
42991            "move.l %a6, -(%sp)",
42992            "move.l {basereg}, %a6",
42993            ".short 0x4eae", // jsr -48(a6)
42994            ".short -48",
42995            "move.l (%sp)+, %a6",
42996            "movem.l (%sp)+, %d1/%a0-%a1",
42997            basereg = in(reg) MathIeeeSingBasBase,
42998            in("d0") parm.to_bits(),
42999            lateout("d0") asm_ret_value,
43000        );
43001    }
43002    asm_ret_value
43003}
43004
43005/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
43006pub unsafe fn IEEESPAbs(MathIeeeSingBasBase: *mut Library, parm: FLOAT) -> FLOAT {
43007    let asm_ret_value: u32;
43008    unsafe {
43009        asm!(
43010            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43011            ".short 0x40c0",
43012            "move.l %a6, -(%sp)",
43013            "move.l {basereg}, %a6",
43014            ".short 0x4eae", // jsr -54(a6)
43015            ".short -54",
43016            "move.l (%sp)+, %a6",
43017            "movem.l (%sp)+, %d1/%a0-%a1",
43018            basereg = in(reg) MathIeeeSingBasBase,
43019            in("d0") parm.to_bits(),
43020            lateout("d0") asm_ret_value,
43021        );
43022    }
43023    f32::from_bits(asm_ret_value)
43024}
43025
43026/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
43027pub unsafe fn IEEESPNeg(MathIeeeSingBasBase: *mut Library, parm: FLOAT) -> FLOAT {
43028    let asm_ret_value: u32;
43029    unsafe {
43030        asm!(
43031            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43032            ".short 0x40c0",
43033            "move.l %a6, -(%sp)",
43034            "move.l {basereg}, %a6",
43035            ".short 0x4eae", // jsr -60(a6)
43036            ".short -60",
43037            "move.l (%sp)+, %a6",
43038            "movem.l (%sp)+, %d1/%a0-%a1",
43039            basereg = in(reg) MathIeeeSingBasBase,
43040            in("d0") parm.to_bits(),
43041            lateout("d0") asm_ret_value,
43042        );
43043    }
43044    f32::from_bits(asm_ret_value)
43045}
43046
43047/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
43048pub unsafe fn IEEESPAdd(
43049    MathIeeeSingBasBase: *mut Library,
43050    leftParm: FLOAT,
43051    rightParm: FLOAT,
43052) -> FLOAT {
43053    let asm_ret_value: u32;
43054    unsafe {
43055        asm!(
43056            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43057            ".short 0x40c0",
43058            "move.l %a6, -(%sp)",
43059            "move.l {basereg}, %a6",
43060            ".short 0x4eae", // jsr -66(a6)
43061            ".short -66",
43062            "move.l (%sp)+, %a6",
43063            "movem.l (%sp)+, %d1/%a0-%a1",
43064            basereg = in(reg) MathIeeeSingBasBase,
43065            in("d0") leftParm.to_bits(),
43066            in("d1") rightParm.to_bits(),
43067            lateout("d0") asm_ret_value,
43068        );
43069    }
43070    f32::from_bits(asm_ret_value)
43071}
43072
43073/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
43074pub unsafe fn IEEESPSub(
43075    MathIeeeSingBasBase: *mut Library,
43076    leftParm: FLOAT,
43077    rightParm: FLOAT,
43078) -> FLOAT {
43079    let asm_ret_value: u32;
43080    unsafe {
43081        asm!(
43082            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43083            ".short 0x40c0",
43084            "move.l %a6, -(%sp)",
43085            "move.l {basereg}, %a6",
43086            ".short 0x4eae", // jsr -72(a6)
43087            ".short -72",
43088            "move.l (%sp)+, %a6",
43089            "movem.l (%sp)+, %d1/%a0-%a1",
43090            basereg = in(reg) MathIeeeSingBasBase,
43091            in("d0") leftParm.to_bits(),
43092            in("d1") rightParm.to_bits(),
43093            lateout("d0") asm_ret_value,
43094        );
43095    }
43096    f32::from_bits(asm_ret_value)
43097}
43098
43099/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
43100pub unsafe fn IEEESPMul(
43101    MathIeeeSingBasBase: *mut Library,
43102    leftParm: FLOAT,
43103    rightParm: FLOAT,
43104) -> FLOAT {
43105    let asm_ret_value: u32;
43106    unsafe {
43107        asm!(
43108            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43109            ".short 0x40c0",
43110            "move.l %a6, -(%sp)",
43111            "move.l {basereg}, %a6",
43112            ".short 0x4eae", // jsr -78(a6)
43113            ".short -78",
43114            "move.l (%sp)+, %a6",
43115            "movem.l (%sp)+, %d1/%a0-%a1",
43116            basereg = in(reg) MathIeeeSingBasBase,
43117            in("d0") leftParm.to_bits(),
43118            in("d1") rightParm.to_bits(),
43119            lateout("d0") asm_ret_value,
43120        );
43121    }
43122    f32::from_bits(asm_ret_value)
43123}
43124
43125/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
43126pub unsafe fn IEEESPDiv(
43127    MathIeeeSingBasBase: *mut Library,
43128    dividend: FLOAT,
43129    divisor: FLOAT,
43130) -> FLOAT {
43131    let asm_ret_value: u32;
43132    unsafe {
43133        asm!(
43134            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43135            ".short 0x40c0",
43136            "move.l %a6, -(%sp)",
43137            "move.l {basereg}, %a6",
43138            ".short 0x4eae", // jsr -84(a6)
43139            ".short -84",
43140            "move.l (%sp)+, %a6",
43141            "movem.l (%sp)+, %d1/%a0-%a1",
43142            basereg = in(reg) MathIeeeSingBasBase,
43143            in("d0") dividend.to_bits(),
43144            in("d1") divisor.to_bits(),
43145            lateout("d0") asm_ret_value,
43146        );
43147    }
43148    f32::from_bits(asm_ret_value)
43149}
43150
43151/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
43152pub unsafe fn IEEESPFloor(MathIeeeSingBasBase: *mut Library, parm: FLOAT) -> FLOAT {
43153    let asm_ret_value: u32;
43154    unsafe {
43155        asm!(
43156            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43157            ".short 0x40c0",
43158            "move.l %a6, -(%sp)",
43159            "move.l {basereg}, %a6",
43160            ".short 0x4eae", // jsr -90(a6)
43161            ".short -90",
43162            "move.l (%sp)+, %a6",
43163            "movem.l (%sp)+, %d1/%a0-%a1",
43164            basereg = in(reg) MathIeeeSingBasBase,
43165            in("d0") parm.to_bits(),
43166            lateout("d0") asm_ret_value,
43167        );
43168    }
43169    f32::from_bits(asm_ret_value)
43170}
43171
43172/// libname: "mathieeesingbas.library" (V36) (Kickstart 2.0)
43173pub unsafe fn IEEESPCeil(MathIeeeSingBasBase: *mut Library, parm: FLOAT) -> FLOAT {
43174    let asm_ret_value: u32;
43175    unsafe {
43176        asm!(
43177            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43178            ".short 0x40c0",
43179            "move.l %a6, -(%sp)",
43180            "move.l {basereg}, %a6",
43181            ".short 0x4eae", // jsr -96(a6)
43182            ".short -96",
43183            "move.l (%sp)+, %a6",
43184            "movem.l (%sp)+, %d1/%a0-%a1",
43185            basereg = in(reg) MathIeeeSingBasBase,
43186            in("d0") parm.to_bits(),
43187            lateout("d0") asm_ret_value,
43188        );
43189    }
43190    f32::from_bits(asm_ret_value)
43191}
43192
43193/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43194pub unsafe fn IEEESPAtan(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43195    let asm_ret_value: u32;
43196    unsafe {
43197        asm!(
43198            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43199            ".short 0x40c0",
43200            "move.l %a6, -(%sp)",
43201            "move.l {basereg}, %a6",
43202            ".short 0x4eae", // jsr -30(a6)
43203            ".short -30",
43204            "move.l (%sp)+, %a6",
43205            "movem.l (%sp)+, %d1/%a0-%a1",
43206            basereg = in(reg) MathIeeeSingTransBase,
43207            in("d0") parm.to_bits(),
43208            lateout("d0") asm_ret_value,
43209        );
43210    }
43211    f32::from_bits(asm_ret_value)
43212}
43213
43214/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43215pub unsafe fn IEEESPSin(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43216    let asm_ret_value: u32;
43217    unsafe {
43218        asm!(
43219            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43220            ".short 0x40c0",
43221            "move.l %a6, -(%sp)",
43222            "move.l {basereg}, %a6",
43223            ".short 0x4eae", // jsr -36(a6)
43224            ".short -36",
43225            "move.l (%sp)+, %a6",
43226            "movem.l (%sp)+, %d1/%a0-%a1",
43227            basereg = in(reg) MathIeeeSingTransBase,
43228            in("d0") parm.to_bits(),
43229            lateout("d0") asm_ret_value,
43230        );
43231    }
43232    f32::from_bits(asm_ret_value)
43233}
43234
43235/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43236pub unsafe fn IEEESPCos(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43237    let asm_ret_value: u32;
43238    unsafe {
43239        asm!(
43240            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43241            ".short 0x40c0",
43242            "move.l %a6, -(%sp)",
43243            "move.l {basereg}, %a6",
43244            ".short 0x4eae", // jsr -42(a6)
43245            ".short -42",
43246            "move.l (%sp)+, %a6",
43247            "movem.l (%sp)+, %d1/%a0-%a1",
43248            basereg = in(reg) MathIeeeSingTransBase,
43249            in("d0") parm.to_bits(),
43250            lateout("d0") asm_ret_value,
43251        );
43252    }
43253    f32::from_bits(asm_ret_value)
43254}
43255
43256/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43257pub unsafe fn IEEESPTan(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43258    let asm_ret_value: u32;
43259    unsafe {
43260        asm!(
43261            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43262            ".short 0x40c0",
43263            "move.l %a6, -(%sp)",
43264            "move.l {basereg}, %a6",
43265            ".short 0x4eae", // jsr -48(a6)
43266            ".short -48",
43267            "move.l (%sp)+, %a6",
43268            "movem.l (%sp)+, %d1/%a0-%a1",
43269            basereg = in(reg) MathIeeeSingTransBase,
43270            in("d0") parm.to_bits(),
43271            lateout("d0") asm_ret_value,
43272        );
43273    }
43274    f32::from_bits(asm_ret_value)
43275}
43276
43277/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43278pub unsafe fn IEEESPSincos(
43279    MathIeeeSingTransBase: *mut Library,
43280    cosptr: *mut FLOAT,
43281    parm: FLOAT,
43282) -> FLOAT {
43283    let asm_ret_value: u32;
43284    unsafe {
43285        asm!(
43286            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43287            ".short 0x40c0",
43288            "move.l %a6, -(%sp)",
43289            "move.l {basereg}, %a6",
43290            ".short 0x4eae", // jsr -54(a6)
43291            ".short -54",
43292            "move.l (%sp)+, %a6",
43293            "movem.l (%sp)+, %d1/%a0-%a1",
43294            basereg = in(reg) MathIeeeSingTransBase,
43295            in("a0") cosptr,
43296            in("d0") parm.to_bits(),
43297            lateout("d0") asm_ret_value,
43298        );
43299    }
43300    f32::from_bits(asm_ret_value)
43301}
43302
43303/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43304pub unsafe fn IEEESPSinh(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43305    let asm_ret_value: u32;
43306    unsafe {
43307        asm!(
43308            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43309            ".short 0x40c0",
43310            "move.l %a6, -(%sp)",
43311            "move.l {basereg}, %a6",
43312            ".short 0x4eae", // jsr -60(a6)
43313            ".short -60",
43314            "move.l (%sp)+, %a6",
43315            "movem.l (%sp)+, %d1/%a0-%a1",
43316            basereg = in(reg) MathIeeeSingTransBase,
43317            in("d0") parm.to_bits(),
43318            lateout("d0") asm_ret_value,
43319        );
43320    }
43321    f32::from_bits(asm_ret_value)
43322}
43323
43324/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43325pub unsafe fn IEEESPCosh(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43326    let asm_ret_value: u32;
43327    unsafe {
43328        asm!(
43329            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43330            ".short 0x40c0",
43331            "move.l %a6, -(%sp)",
43332            "move.l {basereg}, %a6",
43333            ".short 0x4eae", // jsr -66(a6)
43334            ".short -66",
43335            "move.l (%sp)+, %a6",
43336            "movem.l (%sp)+, %d1/%a0-%a1",
43337            basereg = in(reg) MathIeeeSingTransBase,
43338            in("d0") parm.to_bits(),
43339            lateout("d0") asm_ret_value,
43340        );
43341    }
43342    f32::from_bits(asm_ret_value)
43343}
43344
43345/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43346pub unsafe fn IEEESPTanh(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43347    let asm_ret_value: u32;
43348    unsafe {
43349        asm!(
43350            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43351            ".short 0x40c0",
43352            "move.l %a6, -(%sp)",
43353            "move.l {basereg}, %a6",
43354            ".short 0x4eae", // jsr -72(a6)
43355            ".short -72",
43356            "move.l (%sp)+, %a6",
43357            "movem.l (%sp)+, %d1/%a0-%a1",
43358            basereg = in(reg) MathIeeeSingTransBase,
43359            in("d0") parm.to_bits(),
43360            lateout("d0") asm_ret_value,
43361        );
43362    }
43363    f32::from_bits(asm_ret_value)
43364}
43365
43366/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43367pub unsafe fn IEEESPExp(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43368    let asm_ret_value: u32;
43369    unsafe {
43370        asm!(
43371            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43372            ".short 0x40c0",
43373            "move.l %a6, -(%sp)",
43374            "move.l {basereg}, %a6",
43375            ".short 0x4eae", // jsr -78(a6)
43376            ".short -78",
43377            "move.l (%sp)+, %a6",
43378            "movem.l (%sp)+, %d1/%a0-%a1",
43379            basereg = in(reg) MathIeeeSingTransBase,
43380            in("d0") parm.to_bits(),
43381            lateout("d0") asm_ret_value,
43382        );
43383    }
43384    f32::from_bits(asm_ret_value)
43385}
43386
43387/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43388pub unsafe fn IEEESPLog(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43389    let asm_ret_value: u32;
43390    unsafe {
43391        asm!(
43392            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43393            ".short 0x40c0",
43394            "move.l %a6, -(%sp)",
43395            "move.l {basereg}, %a6",
43396            ".short 0x4eae", // jsr -84(a6)
43397            ".short -84",
43398            "move.l (%sp)+, %a6",
43399            "movem.l (%sp)+, %d1/%a0-%a1",
43400            basereg = in(reg) MathIeeeSingTransBase,
43401            in("d0") parm.to_bits(),
43402            lateout("d0") asm_ret_value,
43403        );
43404    }
43405    f32::from_bits(asm_ret_value)
43406}
43407
43408/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43409pub unsafe fn IEEESPPow(MathIeeeSingTransBase: *mut Library, SPExp: FLOAT, arg: FLOAT) -> FLOAT {
43410    let asm_ret_value: u32;
43411    unsafe {
43412        asm!(
43413            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43414            ".short 0x40c0",
43415            "move.l %a6, -(%sp)",
43416            "move.l {basereg}, %a6",
43417            ".short 0x4eae", // jsr -90(a6)
43418            ".short -90",
43419            "move.l (%sp)+, %a6",
43420            "movem.l (%sp)+, %d1/%a0-%a1",
43421            basereg = in(reg) MathIeeeSingTransBase,
43422            in("d1") SPExp.to_bits(),
43423            in("d0") arg.to_bits(),
43424            lateout("d0") asm_ret_value,
43425        );
43426    }
43427    f32::from_bits(asm_ret_value)
43428}
43429
43430/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43431pub unsafe fn IEEESPSqrt(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43432    let asm_ret_value: u32;
43433    unsafe {
43434        asm!(
43435            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43436            ".short 0x40c0",
43437            "move.l %a6, -(%sp)",
43438            "move.l {basereg}, %a6",
43439            ".short 0x4eae", // jsr -96(a6)
43440            ".short -96",
43441            "move.l (%sp)+, %a6",
43442            "movem.l (%sp)+, %d1/%a0-%a1",
43443            basereg = in(reg) MathIeeeSingTransBase,
43444            in("d0") parm.to_bits(),
43445            lateout("d0") asm_ret_value,
43446        );
43447    }
43448    f32::from_bits(asm_ret_value)
43449}
43450
43451/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43452pub unsafe fn IEEESPTieee(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43453    let asm_ret_value: u32;
43454    unsafe {
43455        asm!(
43456            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43457            ".short 0x40c0",
43458            "move.l %a6, -(%sp)",
43459            "move.l {basereg}, %a6",
43460            ".short 0x4eae", // jsr -102(a6)
43461            ".short -102",
43462            "move.l (%sp)+, %a6",
43463            "movem.l (%sp)+, %d1/%a0-%a1",
43464            basereg = in(reg) MathIeeeSingTransBase,
43465            in("d0") parm.to_bits(),
43466            lateout("d0") asm_ret_value,
43467        );
43468    }
43469    f32::from_bits(asm_ret_value)
43470}
43471
43472/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43473pub unsafe fn IEEESPFieee(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43474    let asm_ret_value: u32;
43475    unsafe {
43476        asm!(
43477            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43478            ".short 0x40c0",
43479            "move.l %a6, -(%sp)",
43480            "move.l {basereg}, %a6",
43481            ".short 0x4eae", // jsr -108(a6)
43482            ".short -108",
43483            "move.l (%sp)+, %a6",
43484            "movem.l (%sp)+, %d1/%a0-%a1",
43485            basereg = in(reg) MathIeeeSingTransBase,
43486            in("d0") parm.to_bits(),
43487            lateout("d0") asm_ret_value,
43488        );
43489    }
43490    f32::from_bits(asm_ret_value)
43491}
43492
43493/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43494pub unsafe fn IEEESPAsin(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43495    let asm_ret_value: u32;
43496    unsafe {
43497        asm!(
43498            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43499            ".short 0x40c0",
43500            "move.l %a6, -(%sp)",
43501            "move.l {basereg}, %a6",
43502            ".short 0x4eae", // jsr -114(a6)
43503            ".short -114",
43504            "move.l (%sp)+, %a6",
43505            "movem.l (%sp)+, %d1/%a0-%a1",
43506            basereg = in(reg) MathIeeeSingTransBase,
43507            in("d0") parm.to_bits(),
43508            lateout("d0") asm_ret_value,
43509        );
43510    }
43511    f32::from_bits(asm_ret_value)
43512}
43513
43514/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43515pub unsafe fn IEEESPAcos(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43516    let asm_ret_value: u32;
43517    unsafe {
43518        asm!(
43519            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43520            ".short 0x40c0",
43521            "move.l %a6, -(%sp)",
43522            "move.l {basereg}, %a6",
43523            ".short 0x4eae", // jsr -120(a6)
43524            ".short -120",
43525            "move.l (%sp)+, %a6",
43526            "movem.l (%sp)+, %d1/%a0-%a1",
43527            basereg = in(reg) MathIeeeSingTransBase,
43528            in("d0") parm.to_bits(),
43529            lateout("d0") asm_ret_value,
43530        );
43531    }
43532    f32::from_bits(asm_ret_value)
43533}
43534
43535/// libname: "mathieeesingtrans.library" (V36) (Kickstart 2.0)
43536pub unsafe fn IEEESPLog10(MathIeeeSingTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43537    let asm_ret_value: u32;
43538    unsafe {
43539        asm!(
43540            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43541            ".short 0x40c0",
43542            "move.l %a6, -(%sp)",
43543            "move.l {basereg}, %a6",
43544            ".short 0x4eae", // jsr -126(a6)
43545            ".short -126",
43546            "move.l (%sp)+, %a6",
43547            "movem.l (%sp)+, %d1/%a0-%a1",
43548            basereg = in(reg) MathIeeeSingTransBase,
43549            in("d0") parm.to_bits(),
43550            lateout("d0") asm_ret_value,
43551        );
43552    }
43553    f32::from_bits(asm_ret_value)
43554}
43555
43556/// libname: "mathtrans.library"
43557pub unsafe fn SPAtan(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43558    let asm_ret_value: u32;
43559    unsafe {
43560        asm!(
43561            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43562            ".short 0x40c0",
43563            "move.l %a6, -(%sp)",
43564            "move.l {basereg}, %a6",
43565            ".short 0x4eae", // jsr -30(a6)
43566            ".short -30",
43567            "move.l (%sp)+, %a6",
43568            "movem.l (%sp)+, %d1/%a0-%a1",
43569            basereg = in(reg) MathTransBase,
43570            in("d0") parm.to_bits(),
43571            lateout("d0") asm_ret_value,
43572        );
43573    }
43574    f32::from_bits(asm_ret_value)
43575}
43576
43577/// libname: "mathtrans.library"
43578pub unsafe fn SPSin(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43579    let asm_ret_value: u32;
43580    unsafe {
43581        asm!(
43582            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43583            ".short 0x40c0",
43584            "move.l %a6, -(%sp)",
43585            "move.l {basereg}, %a6",
43586            ".short 0x4eae", // jsr -36(a6)
43587            ".short -36",
43588            "move.l (%sp)+, %a6",
43589            "movem.l (%sp)+, %d1/%a0-%a1",
43590            basereg = in(reg) MathTransBase,
43591            in("d0") parm.to_bits(),
43592            lateout("d0") asm_ret_value,
43593        );
43594    }
43595    f32::from_bits(asm_ret_value)
43596}
43597
43598/// libname: "mathtrans.library"
43599pub unsafe fn SPCos(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43600    let asm_ret_value: u32;
43601    unsafe {
43602        asm!(
43603            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43604            ".short 0x40c0",
43605            "move.l %a6, -(%sp)",
43606            "move.l {basereg}, %a6",
43607            ".short 0x4eae", // jsr -42(a6)
43608            ".short -42",
43609            "move.l (%sp)+, %a6",
43610            "movem.l (%sp)+, %d1/%a0-%a1",
43611            basereg = in(reg) MathTransBase,
43612            in("d0") parm.to_bits(),
43613            lateout("d0") asm_ret_value,
43614        );
43615    }
43616    f32::from_bits(asm_ret_value)
43617}
43618
43619/// libname: "mathtrans.library"
43620pub unsafe fn SPTan(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43621    let asm_ret_value: u32;
43622    unsafe {
43623        asm!(
43624            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43625            ".short 0x40c0",
43626            "move.l %a6, -(%sp)",
43627            "move.l {basereg}, %a6",
43628            ".short 0x4eae", // jsr -48(a6)
43629            ".short -48",
43630            "move.l (%sp)+, %a6",
43631            "movem.l (%sp)+, %d1/%a0-%a1",
43632            basereg = in(reg) MathTransBase,
43633            in("d0") parm.to_bits(),
43634            lateout("d0") asm_ret_value,
43635        );
43636    }
43637    f32::from_bits(asm_ret_value)
43638}
43639
43640/// libname: "mathtrans.library"
43641pub unsafe fn SPSincos(MathTransBase: *mut Library, cosResult: *mut FLOAT, parm: FLOAT) -> FLOAT {
43642    let asm_ret_value: u32;
43643    unsafe {
43644        asm!(
43645            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43646            ".short 0x40c0",
43647            "move.l %a6, -(%sp)",
43648            "move.l {basereg}, %a6",
43649            ".short 0x4eae", // jsr -54(a6)
43650            ".short -54",
43651            "move.l (%sp)+, %a6",
43652            "movem.l (%sp)+, %d1/%a0-%a1",
43653            basereg = in(reg) MathTransBase,
43654            in("d1") cosResult,
43655            in("d0") parm.to_bits(),
43656            lateout("d0") asm_ret_value,
43657        );
43658    }
43659    f32::from_bits(asm_ret_value)
43660}
43661
43662/// libname: "mathtrans.library"
43663pub unsafe fn SPSinh(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43664    let asm_ret_value: u32;
43665    unsafe {
43666        asm!(
43667            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43668            ".short 0x40c0",
43669            "move.l %a6, -(%sp)",
43670            "move.l {basereg}, %a6",
43671            ".short 0x4eae", // jsr -60(a6)
43672            ".short -60",
43673            "move.l (%sp)+, %a6",
43674            "movem.l (%sp)+, %d1/%a0-%a1",
43675            basereg = in(reg) MathTransBase,
43676            in("d0") parm.to_bits(),
43677            lateout("d0") asm_ret_value,
43678        );
43679    }
43680    f32::from_bits(asm_ret_value)
43681}
43682
43683/// libname: "mathtrans.library"
43684pub unsafe fn SPCosh(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43685    let asm_ret_value: u32;
43686    unsafe {
43687        asm!(
43688            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43689            ".short 0x40c0",
43690            "move.l %a6, -(%sp)",
43691            "move.l {basereg}, %a6",
43692            ".short 0x4eae", // jsr -66(a6)
43693            ".short -66",
43694            "move.l (%sp)+, %a6",
43695            "movem.l (%sp)+, %d1/%a0-%a1",
43696            basereg = in(reg) MathTransBase,
43697            in("d0") parm.to_bits(),
43698            lateout("d0") asm_ret_value,
43699        );
43700    }
43701    f32::from_bits(asm_ret_value)
43702}
43703
43704/// libname: "mathtrans.library"
43705pub unsafe fn SPTanh(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43706    let asm_ret_value: u32;
43707    unsafe {
43708        asm!(
43709            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43710            ".short 0x40c0",
43711            "move.l %a6, -(%sp)",
43712            "move.l {basereg}, %a6",
43713            ".short 0x4eae", // jsr -72(a6)
43714            ".short -72",
43715            "move.l (%sp)+, %a6",
43716            "movem.l (%sp)+, %d1/%a0-%a1",
43717            basereg = in(reg) MathTransBase,
43718            in("d0") parm.to_bits(),
43719            lateout("d0") asm_ret_value,
43720        );
43721    }
43722    f32::from_bits(asm_ret_value)
43723}
43724
43725/// libname: "mathtrans.library"
43726pub unsafe fn SPExp(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43727    let asm_ret_value: u32;
43728    unsafe {
43729        asm!(
43730            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43731            ".short 0x40c0",
43732            "move.l %a6, -(%sp)",
43733            "move.l {basereg}, %a6",
43734            ".short 0x4eae", // jsr -78(a6)
43735            ".short -78",
43736            "move.l (%sp)+, %a6",
43737            "movem.l (%sp)+, %d1/%a0-%a1",
43738            basereg = in(reg) MathTransBase,
43739            in("d0") parm.to_bits(),
43740            lateout("d0") asm_ret_value,
43741        );
43742    }
43743    f32::from_bits(asm_ret_value)
43744}
43745
43746/// libname: "mathtrans.library"
43747pub unsafe fn SPLog(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43748    let asm_ret_value: u32;
43749    unsafe {
43750        asm!(
43751            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43752            ".short 0x40c0",
43753            "move.l %a6, -(%sp)",
43754            "move.l {basereg}, %a6",
43755            ".short 0x4eae", // jsr -84(a6)
43756            ".short -84",
43757            "move.l (%sp)+, %a6",
43758            "movem.l (%sp)+, %d1/%a0-%a1",
43759            basereg = in(reg) MathTransBase,
43760            in("d0") parm.to_bits(),
43761            lateout("d0") asm_ret_value,
43762        );
43763    }
43764    f32::from_bits(asm_ret_value)
43765}
43766
43767/// libname: "mathtrans.library"
43768pub unsafe fn SPPow(MathTransBase: *mut Library, power: FLOAT, arg: FLOAT) -> FLOAT {
43769    let asm_ret_value: u32;
43770    unsafe {
43771        asm!(
43772            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43773            ".short 0x40c0",
43774            "move.l %a6, -(%sp)",
43775            "move.l {basereg}, %a6",
43776            ".short 0x4eae", // jsr -90(a6)
43777            ".short -90",
43778            "move.l (%sp)+, %a6",
43779            "movem.l (%sp)+, %d1/%a0-%a1",
43780            basereg = in(reg) MathTransBase,
43781            in("d1") power.to_bits(),
43782            in("d0") arg.to_bits(),
43783            lateout("d0") asm_ret_value,
43784        );
43785    }
43786    f32::from_bits(asm_ret_value)
43787}
43788
43789/// libname: "mathtrans.library"
43790pub unsafe fn SPSqrt(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43791    let asm_ret_value: u32;
43792    unsafe {
43793        asm!(
43794            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43795            ".short 0x40c0",
43796            "move.l %a6, -(%sp)",
43797            "move.l {basereg}, %a6",
43798            ".short 0x4eae", // jsr -96(a6)
43799            ".short -96",
43800            "move.l (%sp)+, %a6",
43801            "movem.l (%sp)+, %d1/%a0-%a1",
43802            basereg = in(reg) MathTransBase,
43803            in("d0") parm.to_bits(),
43804            lateout("d0") asm_ret_value,
43805        );
43806    }
43807    f32::from_bits(asm_ret_value)
43808}
43809
43810/// libname: "mathtrans.library"
43811pub unsafe fn SPTieee(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43812    let asm_ret_value: u32;
43813    unsafe {
43814        asm!(
43815            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43816            ".short 0x40c0",
43817            "move.l %a6, -(%sp)",
43818            "move.l {basereg}, %a6",
43819            ".short 0x4eae", // jsr -102(a6)
43820            ".short -102",
43821            "move.l (%sp)+, %a6",
43822            "movem.l (%sp)+, %d1/%a0-%a1",
43823            basereg = in(reg) MathTransBase,
43824            in("d0") parm.to_bits(),
43825            lateout("d0") asm_ret_value,
43826        );
43827    }
43828    f32::from_bits(asm_ret_value)
43829}
43830
43831/// libname: "mathtrans.library"
43832pub unsafe fn SPFieee(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43833    let asm_ret_value: u32;
43834    unsafe {
43835        asm!(
43836            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43837            ".short 0x40c0",
43838            "move.l %a6, -(%sp)",
43839            "move.l {basereg}, %a6",
43840            ".short 0x4eae", // jsr -108(a6)
43841            ".short -108",
43842            "move.l (%sp)+, %a6",
43843            "movem.l (%sp)+, %d1/%a0-%a1",
43844            basereg = in(reg) MathTransBase,
43845            in("d0") parm.to_bits(),
43846            lateout("d0") asm_ret_value,
43847        );
43848    }
43849    f32::from_bits(asm_ret_value)
43850}
43851
43852/// libname: "mathtrans.library" (V31) (Kickstart 1.1)
43853pub unsafe fn SPAsin(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43854    let asm_ret_value: u32;
43855    unsafe {
43856        asm!(
43857            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43858            ".short 0x40c0",
43859            "move.l %a6, -(%sp)",
43860            "move.l {basereg}, %a6",
43861            ".short 0x4eae", // jsr -114(a6)
43862            ".short -114",
43863            "move.l (%sp)+, %a6",
43864            "movem.l (%sp)+, %d1/%a0-%a1",
43865            basereg = in(reg) MathTransBase,
43866            in("d0") parm.to_bits(),
43867            lateout("d0") asm_ret_value,
43868        );
43869    }
43870    f32::from_bits(asm_ret_value)
43871}
43872
43873/// libname: "mathtrans.library" (V31) (Kickstart 1.1)
43874pub unsafe fn SPAcos(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43875    let asm_ret_value: u32;
43876    unsafe {
43877        asm!(
43878            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43879            ".short 0x40c0",
43880            "move.l %a6, -(%sp)",
43881            "move.l {basereg}, %a6",
43882            ".short 0x4eae", // jsr -120(a6)
43883            ".short -120",
43884            "move.l (%sp)+, %a6",
43885            "movem.l (%sp)+, %d1/%a0-%a1",
43886            basereg = in(reg) MathTransBase,
43887            in("d0") parm.to_bits(),
43888            lateout("d0") asm_ret_value,
43889        );
43890    }
43891    f32::from_bits(asm_ret_value)
43892}
43893
43894/// libname: "mathtrans.library" (V31) (Kickstart 1.1)
43895pub unsafe fn SPLog10(MathTransBase: *mut Library, parm: FLOAT) -> FLOAT {
43896    let asm_ret_value: u32;
43897    unsafe {
43898        asm!(
43899            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43900            ".short 0x40c0",
43901            "move.l %a6, -(%sp)",
43902            "move.l {basereg}, %a6",
43903            ".short 0x4eae", // jsr -126(a6)
43904            ".short -126",
43905            "move.l (%sp)+, %a6",
43906            "movem.l (%sp)+, %d1/%a0-%a1",
43907            basereg = in(reg) MathTransBase,
43908            in("d0") parm.to_bits(),
43909            lateout("d0") asm_ret_value,
43910        );
43911    }
43912    f32::from_bits(asm_ret_value)
43913}
43914
43915/// libname: "misc.resource"
43916pub unsafe fn AllocMiscResource(
43917    MiscBase: *mut ::core::ffi::c_void,
43918    unitNum: ULONG,
43919    name: CONST_STRPTR,
43920) -> *mut UBYTE {
43921    let asm_ret_value: *mut UBYTE;
43922    unsafe {
43923        asm!(
43924            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43925            ".short 0x40c0",
43926            "move.l %a6, -(%sp)",
43927            "move.l {basereg}, %a6",
43928            ".short 0x4eae", // jsr -6(a6)
43929            ".short -6",
43930            "move.l (%sp)+, %a6",
43931            "movem.l (%sp)+, %d1/%a0-%a1",
43932            basereg = in(reg) MiscBase,
43933            in("d0") unitNum,
43934            in("a1") name,
43935            lateout("d0") asm_ret_value,
43936        );
43937    }
43938    asm_ret_value
43939}
43940
43941/// libname: "misc.resource"
43942pub unsafe fn FreeMiscResource(MiscBase: *mut ::core::ffi::c_void, unitNum: ULONG) {
43943    unsafe {
43944        asm!(
43945            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
43946            ".short 0xc0c0",
43947            "move.l %a6, -(%sp)",
43948            "move.l {basereg}, %a6",
43949            ".short 0x4eae", // jsr -12(a6)
43950            ".short -12",
43951            "move.l (%sp)+, %a6",
43952            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
43953            basereg = in(reg) MiscBase,
43954            in("d0") unitNum,
43955        );
43956    }
43957}
43958
43959/// libname: "nonvolatile.library" (V40) (Kickstart 3.1)
43960pub unsafe fn GetCopyNV(
43961    NVBase: *mut Library,
43962    appName: CONST_STRPTR,
43963    itemName: CONST_STRPTR,
43964    killRequesters: LONG,
43965) -> APTR {
43966    let asm_ret_value: APTR;
43967    unsafe {
43968        asm!(
43969            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
43970            ".short 0x40c0",
43971            "move.l %a6, -(%sp)",
43972            "move.l {basereg}, %a6",
43973            ".short 0x4eae", // jsr -30(a6)
43974            ".short -30",
43975            "move.l (%sp)+, %a6",
43976            "movem.l (%sp)+, %d1/%a0-%a1",
43977            basereg = in(reg) NVBase,
43978            in("a0") appName,
43979            in("a1") itemName,
43980            in("d1") killRequesters,
43981            out("d0") asm_ret_value,
43982        );
43983    }
43984    asm_ret_value
43985}
43986
43987/// libname: "nonvolatile.library" (V40) (Kickstart 3.1)
43988pub unsafe fn FreeNVData(NVBase: *mut Library, data: APTR) {
43989    unsafe {
43990        asm!(
43991            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
43992            ".short 0xc0c0",
43993            "move.l %a6, -(%sp)",
43994            "move.l {basereg}, %a6",
43995            ".short 0x4eae", // jsr -36(a6)
43996            ".short -36",
43997            "move.l (%sp)+, %a6",
43998            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
43999            basereg = in(reg) NVBase,
44000            in("a0") data,
44001        );
44002    }
44003}
44004
44005/// libname: "nonvolatile.library" (V40) (Kickstart 3.1)
44006pub unsafe fn StoreNV(
44007    NVBase: *mut Library,
44008    appName: CONST_STRPTR,
44009    itemName: CONST_STRPTR,
44010    data: CONST_APTR,
44011    length: ULONG,
44012    killRequesters: LONG,
44013) -> UWORD {
44014    let asm_ret_value: UWORD;
44015    unsafe {
44016        asm!(
44017            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44018            ".short 0x40c0",
44019            "move.l %a6, -(%sp)",
44020            "move.l {basereg}, %a6",
44021            ".short 0x4eae", // jsr -42(a6)
44022            ".short -42",
44023            "move.l (%sp)+, %a6",
44024            "movem.l (%sp)+, %d1/%a0-%a1",
44025            basereg = in(reg) NVBase,
44026            in("a0") appName,
44027            in("a1") itemName,
44028            in("a2") data,
44029            in("d0") length,
44030            in("d1") killRequesters,
44031            lateout("d0") asm_ret_value,
44032        );
44033    }
44034    asm_ret_value
44035}
44036
44037/// libname: "nonvolatile.library" (V40) (Kickstart 3.1)
44038pub unsafe fn DeleteNV(
44039    NVBase: *mut Library,
44040    appName: CONST_STRPTR,
44041    itemName: CONST_STRPTR,
44042    killRequesters: LONG,
44043) -> BOOL {
44044    let asm_ret_value: BOOL;
44045    unsafe {
44046        asm!(
44047            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44048            ".short 0x40c0",
44049            "move.l %a6, -(%sp)",
44050            "move.l {basereg}, %a6",
44051            ".short 0x4eae", // jsr -48(a6)
44052            ".short -48",
44053            "move.l (%sp)+, %a6",
44054            "movem.l (%sp)+, %d1/%a0-%a1",
44055            basereg = in(reg) NVBase,
44056            in("a0") appName,
44057            in("a1") itemName,
44058            in("d1") killRequesters,
44059            out("d0") asm_ret_value,
44060        );
44061    }
44062    asm_ret_value
44063}
44064
44065/// libname: "nonvolatile.library" (V40) (Kickstart 3.1)
44066pub unsafe fn GetNVInfo(NVBase: *mut Library, killRequesters: LONG) -> *mut NVInfo {
44067    let asm_ret_value: *mut NVInfo;
44068    unsafe {
44069        asm!(
44070            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44071            ".short 0x40c0",
44072            "move.l %a6, -(%sp)",
44073            "move.l {basereg}, %a6",
44074            ".short 0x4eae", // jsr -54(a6)
44075            ".short -54",
44076            "move.l (%sp)+, %a6",
44077            "movem.l (%sp)+, %d1/%a0-%a1",
44078            basereg = in(reg) NVBase,
44079            in("d1") killRequesters,
44080            out("d0") asm_ret_value,
44081        );
44082    }
44083    asm_ret_value
44084}
44085
44086/// libname: "nonvolatile.library" (V40) (Kickstart 3.1)
44087pub unsafe fn GetNVList(
44088    NVBase: *mut Library,
44089    appName: CONST_STRPTR,
44090    killRequesters: LONG,
44091) -> *mut MinList {
44092    let asm_ret_value: *mut MinList;
44093    unsafe {
44094        asm!(
44095            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44096            ".short 0x40c0",
44097            "move.l %a6, -(%sp)",
44098            "move.l {basereg}, %a6",
44099            ".short 0x4eae", // jsr -60(a6)
44100            ".short -60",
44101            "move.l (%sp)+, %a6",
44102            "movem.l (%sp)+, %d1/%a0-%a1",
44103            basereg = in(reg) NVBase,
44104            in("a0") appName,
44105            in("d1") killRequesters,
44106            out("d0") asm_ret_value,
44107        );
44108    }
44109    asm_ret_value
44110}
44111
44112/// libname: "nonvolatile.library" (V40) (Kickstart 3.1)
44113pub unsafe fn SetNVProtection(
44114    NVBase: *mut Library,
44115    appName: CONST_STRPTR,
44116    itemName: CONST_STRPTR,
44117    mask: LONG,
44118    killRequesters: LONG,
44119) -> BOOL {
44120    let asm_ret_value: BOOL;
44121    unsafe {
44122        asm!(
44123            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44124            ".short 0x40c0",
44125            "move.l %a6, -(%sp)",
44126            "move.l {basereg}, %a6",
44127            ".short 0x4eae", // jsr -66(a6)
44128            ".short -66",
44129            "move.l (%sp)+, %a6",
44130            "movem.l (%sp)+, %d1/%a0-%a1",
44131            basereg = in(reg) NVBase,
44132            in("a0") appName,
44133            in("a1") itemName,
44134            in("d2") mask,
44135            in("d1") killRequesters,
44136            out("d0") asm_ret_value,
44137        );
44138    }
44139    asm_ret_value
44140}
44141
44142/// libname: "palette.gadget" (V40) (Kickstart 3.1)
44143pub unsafe fn PALETTE_GetClass(PaletteBase: *mut ::core::ffi::c_void) -> *mut Class {
44144    let asm_ret_value: *mut Class;
44145    unsafe {
44146        asm!(
44147            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44148            ".short 0x40c0",
44149            "move.l %a6, -(%sp)",
44150            "move.l {basereg}, %a6",
44151            ".short 0x4eae", // jsr -30(a6)
44152            ".short -30",
44153            "move.l (%sp)+, %a6",
44154            "movem.l (%sp)+, %d1/%a0-%a1",
44155            basereg = in(reg) PaletteBase,
44156            out("d0") asm_ret_value,
44157        );
44158    }
44159    asm_ret_value
44160}
44161
44162/// libname: "penmap.image" (V40) (Kickstart 3.1)
44163pub unsafe fn PENMAP_GetClass(PenMapBase: *mut ::core::ffi::c_void) -> *mut Class {
44164    let asm_ret_value: *mut Class;
44165    unsafe {
44166        asm!(
44167            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44168            ".short 0x40c0",
44169            "move.l %a6, -(%sp)",
44170            "move.l {basereg}, %a6",
44171            ".short 0x4eae", // jsr -30(a6)
44172            ".short -30",
44173            "move.l (%sp)+, %a6",
44174            "movem.l (%sp)+, %d1/%a0-%a1",
44175            basereg = in(reg) PenMapBase,
44176            out("d0") asm_ret_value,
44177        );
44178    }
44179    asm_ret_value
44180}
44181
44182/// libname: "potgo.resource"
44183pub unsafe fn AllocPotBits(PotgoBase: *mut ::core::ffi::c_void, bits: ULONG) -> UWORD {
44184    let asm_ret_value: UWORD;
44185    unsafe {
44186        asm!(
44187            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44188            ".short 0x40c0",
44189            "move.l %a6, -(%sp)",
44190            "move.l {basereg}, %a6",
44191            ".short 0x4eae", // jsr -6(a6)
44192            ".short -6",
44193            "move.l (%sp)+, %a6",
44194            "movem.l (%sp)+, %d1/%a0-%a1",
44195            basereg = in(reg) PotgoBase,
44196            in("d0") bits,
44197            lateout("d0") asm_ret_value,
44198        );
44199    }
44200    asm_ret_value
44201}
44202
44203/// libname: "potgo.resource"
44204pub unsafe fn FreePotBits(PotgoBase: *mut ::core::ffi::c_void, bits: ULONG) {
44205    unsafe {
44206        asm!(
44207            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44208            ".short 0xc0c0",
44209            "move.l %a6, -(%sp)",
44210            "move.l {basereg}, %a6",
44211            ".short 0x4eae", // jsr -12(a6)
44212            ".short -12",
44213            "move.l (%sp)+, %a6",
44214            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44215            basereg = in(reg) PotgoBase,
44216            in("d0") bits,
44217        );
44218    }
44219}
44220
44221/// libname: "potgo.resource"
44222pub unsafe fn WritePotgo(PotgoBase: *mut ::core::ffi::c_void, word: ULONG, mask: ULONG) {
44223    unsafe {
44224        asm!(
44225            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44226            ".short 0xc0c0",
44227            "move.l %a6, -(%sp)",
44228            "move.l {basereg}, %a6",
44229            ".short 0x4eae", // jsr -18(a6)
44230            ".short -18",
44231            "move.l (%sp)+, %a6",
44232            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44233            basereg = in(reg) PotgoBase,
44234            in("d0") word,
44235            in("d1") mask,
44236        );
44237    }
44238}
44239
44240/// libname: "radiobutton.gadget" (V40) (Kickstart 3.1)
44241pub unsafe fn RADIOBUTTON_GetClass(RadioButtonBase: *mut ::core::ffi::c_void) -> *mut Class {
44242    let asm_ret_value: *mut Class;
44243    unsafe {
44244        asm!(
44245            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44246            ".short 0x40c0",
44247            "move.l %a6, -(%sp)",
44248            "move.l {basereg}, %a6",
44249            ".short 0x4eae", // jsr -30(a6)
44250            ".short -30",
44251            "move.l (%sp)+, %a6",
44252            "movem.l (%sp)+, %d1/%a0-%a1",
44253            basereg = in(reg) RadioButtonBase,
44254            out("d0") asm_ret_value,
44255        );
44256    }
44257    asm_ret_value
44258}
44259
44260/// libname: "radiobutton.gadget" (V40) (Kickstart 3.1)
44261pub unsafe fn AllocRadioButtonNodeA(
44262    RadioButtonBase: *mut ::core::ffi::c_void,
44263    columns: ULONG,
44264    tags: *mut TagItem,
44265) -> *mut Node {
44266    let asm_ret_value: *mut Node;
44267    unsafe {
44268        asm!(
44269            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44270            ".short 0x40c0",
44271            "move.l %a6, -(%sp)",
44272            "move.l {basereg}, %a6",
44273            ".short 0x4eae", // jsr -36(a6)
44274            ".short -36",
44275            "move.l (%sp)+, %a6",
44276            "movem.l (%sp)+, %d1/%a0-%a1",
44277            basereg = in(reg) RadioButtonBase,
44278            in("d0") columns,
44279            in("a0") tags,
44280            lateout("d0") asm_ret_value,
44281        );
44282    }
44283    asm_ret_value
44284}
44285
44286/// libname: "radiobutton.gadget" (V40) (Kickstart 3.1)
44287pub unsafe fn FreeRadioButtonNode(RadioButtonBase: *mut ::core::ffi::c_void, node: *mut Node) {
44288    unsafe {
44289        asm!(
44290            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44291            ".short 0xc0c0",
44292            "move.l %a6, -(%sp)",
44293            "move.l {basereg}, %a6",
44294            ".short 0x4eae", // jsr -42(a6)
44295            ".short -42",
44296            "move.l (%sp)+, %a6",
44297            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44298            basereg = in(reg) RadioButtonBase,
44299            in("a0") node,
44300        );
44301    }
44302}
44303
44304/// libname: "radiobutton.gadget" (V40) (Kickstart 3.1)
44305pub unsafe fn SetRadioButtonNodeAttrsA(
44306    RadioButtonBase: *mut ::core::ffi::c_void,
44307    node: *mut Node,
44308    tags: *mut TagItem,
44309) {
44310    unsafe {
44311        asm!(
44312            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44313            ".short 0xc0c0",
44314            "move.l %a6, -(%sp)",
44315            "move.l {basereg}, %a6",
44316            ".short 0x4eae", // jsr -48(a6)
44317            ".short -48",
44318            "move.l (%sp)+, %a6",
44319            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44320            basereg = in(reg) RadioButtonBase,
44321            in("a0") node,
44322            in("a1") tags,
44323        );
44324    }
44325}
44326
44327/// libname: "radiobutton.gadget" (V40) (Kickstart 3.1)
44328pub unsafe fn GetRadioButtonNodeAttrsA(
44329    RadioButtonBase: *mut ::core::ffi::c_void,
44330    node: *mut Node,
44331    tags: *mut TagItem,
44332) {
44333    unsafe {
44334        asm!(
44335            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44336            ".short 0xc0c0",
44337            "move.l %a6, -(%sp)",
44338            "move.l {basereg}, %a6",
44339            ".short 0x4eae", // jsr -54(a6)
44340            ".short -54",
44341            "move.l (%sp)+, %a6",
44342            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44343            basereg = in(reg) RadioButtonBase,
44344            in("a0") node,
44345            in("a1") tags,
44346        );
44347    }
44348}
44349
44350/// libname: "ramdrive.device" (V34) (Kickstart 1.3)
44351pub unsafe fn KillRAD0(RamdriveDevice: *mut ::core::ffi::c_void) -> STRPTR {
44352    let asm_ret_value: STRPTR;
44353    unsafe {
44354        asm!(
44355            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44356            ".short 0x40c0",
44357            "move.l %a6, -(%sp)",
44358            "move.l {basereg}, %a6",
44359            ".short 0x4eae", // jsr -42(a6)
44360            ".short -42",
44361            "move.l (%sp)+, %a6",
44362            "movem.l (%sp)+, %d1/%a0-%a1",
44363            basereg = in(reg) RamdriveDevice,
44364            out("d0") asm_ret_value,
44365        );
44366    }
44367    asm_ret_value
44368}
44369
44370/// libname: "ramdrive.device" (V36) (Kickstart 2.0)
44371pub unsafe fn KillRAD(RamdriveDevice: *mut ::core::ffi::c_void, unit: ULONG) -> STRPTR {
44372    let asm_ret_value: STRPTR;
44373    unsafe {
44374        asm!(
44375            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44376            ".short 0x40c0",
44377            "move.l %a6, -(%sp)",
44378            "move.l {basereg}, %a6",
44379            ".short 0x4eae", // jsr -48(a6)
44380            ".short -48",
44381            "move.l (%sp)+, %a6",
44382            "movem.l (%sp)+, %d1/%a0-%a1",
44383            basereg = in(reg) RamdriveDevice,
44384            in("d0") unit,
44385            lateout("d0") asm_ret_value,
44386        );
44387    }
44388    asm_ret_value
44389}
44390
44391/// libname: "realtime.library" (V37) (Kickstart 2.04)
44392pub unsafe fn LockRealTime(RealTimeBase: *mut Library, lockType: ULONG) -> APTR {
44393    let asm_ret_value: APTR;
44394    unsafe {
44395        asm!(
44396            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44397            ".short 0x40c0",
44398            "move.l %a6, -(%sp)",
44399            "move.l {basereg}, %a6",
44400            ".short 0x4eae", // jsr -30(a6)
44401            ".short -30",
44402            "move.l (%sp)+, %a6",
44403            "movem.l (%sp)+, %d1/%a0-%a1",
44404            basereg = in(reg) RealTimeBase,
44405            in("d0") lockType,
44406            lateout("d0") asm_ret_value,
44407        );
44408    }
44409    asm_ret_value
44410}
44411
44412/// libname: "realtime.library" (V37) (Kickstart 2.04)
44413pub unsafe fn UnlockRealTime(RealTimeBase: *mut Library, lock: APTR) {
44414    unsafe {
44415        asm!(
44416            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44417            ".short 0xc0c0",
44418            "move.l %a6, -(%sp)",
44419            "move.l {basereg}, %a6",
44420            ".short 0x4eae", // jsr -36(a6)
44421            ".short -36",
44422            "move.l (%sp)+, %a6",
44423            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44424            basereg = in(reg) RealTimeBase,
44425            in("a0") lock,
44426        );
44427    }
44428}
44429
44430/// libname: "realtime.library" (V37) (Kickstart 2.04)
44431pub unsafe fn CreatePlayerA(RealTimeBase: *mut Library, tagList: *const TagItem) -> *mut Player {
44432    let asm_ret_value: *mut Player;
44433    unsafe {
44434        asm!(
44435            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44436            ".short 0x40c0",
44437            "move.l %a6, -(%sp)",
44438            "move.l {basereg}, %a6",
44439            ".short 0x4eae", // jsr -42(a6)
44440            ".short -42",
44441            "move.l (%sp)+, %a6",
44442            "movem.l (%sp)+, %d1/%a0-%a1",
44443            basereg = in(reg) RealTimeBase,
44444            in("a0") tagList,
44445            out("d0") asm_ret_value,
44446        );
44447    }
44448    asm_ret_value
44449}
44450
44451/// libname: "realtime.library" (V37) (Kickstart 2.04)
44452pub unsafe fn DeletePlayer(RealTimeBase: *mut Library, player: *mut Player) {
44453    unsafe {
44454        asm!(
44455            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44456            ".short 0xc0c0",
44457            "move.l %a6, -(%sp)",
44458            "move.l {basereg}, %a6",
44459            ".short 0x4eae", // jsr -48(a6)
44460            ".short -48",
44461            "move.l (%sp)+, %a6",
44462            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44463            basereg = in(reg) RealTimeBase,
44464            in("a0") player,
44465        );
44466    }
44467}
44468
44469/// libname: "realtime.library" (V37) (Kickstart 2.04)
44470pub unsafe fn SetPlayerAttrsA(
44471    RealTimeBase: *mut Library,
44472    player: *mut Player,
44473    tagList: *const TagItem,
44474) -> BOOL {
44475    let asm_ret_value: BOOL;
44476    unsafe {
44477        asm!(
44478            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44479            ".short 0x40c0",
44480            "move.l %a6, -(%sp)",
44481            "move.l {basereg}, %a6",
44482            ".short 0x4eae", // jsr -54(a6)
44483            ".short -54",
44484            "move.l (%sp)+, %a6",
44485            "movem.l (%sp)+, %d1/%a0-%a1",
44486            basereg = in(reg) RealTimeBase,
44487            in("a0") player,
44488            in("a1") tagList,
44489            out("d0") asm_ret_value,
44490        );
44491    }
44492    asm_ret_value
44493}
44494
44495/// libname: "realtime.library" (V37) (Kickstart 2.04)
44496pub unsafe fn SetConductorState(
44497    RealTimeBase: *mut Library,
44498    player: *mut Player,
44499    state: ULONG,
44500    time: LONG,
44501) -> LONG {
44502    let asm_ret_value: LONG;
44503    unsafe {
44504        asm!(
44505            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44506            ".short 0x40c0",
44507            "move.l %a6, -(%sp)",
44508            "move.l {basereg}, %a6",
44509            ".short 0x4eae", // jsr -60(a6)
44510            ".short -60",
44511            "move.l (%sp)+, %a6",
44512            "movem.l (%sp)+, %d1/%a0-%a1",
44513            basereg = in(reg) RealTimeBase,
44514            in("a0") player,
44515            in("d0") state,
44516            in("d1") time,
44517            lateout("d0") asm_ret_value,
44518        );
44519    }
44520    asm_ret_value
44521}
44522
44523/// libname: "realtime.library" (V37) (Kickstart 2.04)
44524pub unsafe fn ExternalSync(
44525    RealTimeBase: *mut Library,
44526    player: *mut Player,
44527    minTime: LONG,
44528    maxTime: LONG,
44529) -> BOOL {
44530    let asm_ret_value: BOOL;
44531    unsafe {
44532        asm!(
44533            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44534            ".short 0x40c0",
44535            "move.l %a6, -(%sp)",
44536            "move.l {basereg}, %a6",
44537            ".short 0x4eae", // jsr -66(a6)
44538            ".short -66",
44539            "move.l (%sp)+, %a6",
44540            "movem.l (%sp)+, %d1/%a0-%a1",
44541            basereg = in(reg) RealTimeBase,
44542            in("a0") player,
44543            in("d0") minTime,
44544            in("d1") maxTime,
44545            lateout("d0") asm_ret_value,
44546        );
44547    }
44548    asm_ret_value
44549}
44550
44551/// libname: "realtime.library" (V37) (Kickstart 2.04)
44552pub unsafe fn NextConductor(
44553    RealTimeBase: *mut Library,
44554    previousConductor: *const Conductor,
44555) -> *mut Conductor {
44556    let asm_ret_value: *mut Conductor;
44557    unsafe {
44558        asm!(
44559            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44560            ".short 0x40c0",
44561            "move.l %a6, -(%sp)",
44562            "move.l {basereg}, %a6",
44563            ".short 0x4eae", // jsr -72(a6)
44564            ".short -72",
44565            "move.l (%sp)+, %a6",
44566            "movem.l (%sp)+, %d1/%a0-%a1",
44567            basereg = in(reg) RealTimeBase,
44568            in("a0") previousConductor,
44569            out("d0") asm_ret_value,
44570        );
44571    }
44572    asm_ret_value
44573}
44574
44575/// libname: "realtime.library" (V37) (Kickstart 2.04)
44576pub unsafe fn FindConductor(RealTimeBase: *mut Library, name: CONST_STRPTR) -> *mut Conductor {
44577    let asm_ret_value: *mut Conductor;
44578    unsafe {
44579        asm!(
44580            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44581            ".short 0x40c0",
44582            "move.l %a6, -(%sp)",
44583            "move.l {basereg}, %a6",
44584            ".short 0x4eae", // jsr -78(a6)
44585            ".short -78",
44586            "move.l (%sp)+, %a6",
44587            "movem.l (%sp)+, %d1/%a0-%a1",
44588            basereg = in(reg) RealTimeBase,
44589            in("a0") name,
44590            out("d0") asm_ret_value,
44591        );
44592    }
44593    asm_ret_value
44594}
44595
44596/// libname: "realtime.library" (V37) (Kickstart 2.04)
44597pub unsafe fn GetPlayerAttrsA(
44598    RealTimeBase: *mut Library,
44599    player: *mut Player,
44600    tagList: *const TagItem,
44601) -> ULONG {
44602    let asm_ret_value: ULONG;
44603    unsafe {
44604        asm!(
44605            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44606            ".short 0x40c0",
44607            "move.l %a6, -(%sp)",
44608            "move.l {basereg}, %a6",
44609            ".short 0x4eae", // jsr -84(a6)
44610            ".short -84",
44611            "move.l (%sp)+, %a6",
44612            "movem.l (%sp)+, %d1/%a0-%a1",
44613            basereg = in(reg) RealTimeBase,
44614            in("a0") player,
44615            in("a1") tagList,
44616            out("d0") asm_ret_value,
44617        );
44618    }
44619    asm_ret_value
44620}
44621
44622/// libname: "requester.class" (V40) (Kickstart 3.1)
44623pub unsafe fn REQUESTER_GetClass(RequesterBase: *mut ::core::ffi::c_void) -> *mut Class {
44624    let asm_ret_value: *mut Class;
44625    unsafe {
44626        asm!(
44627            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44628            ".short 0x40c0",
44629            "move.l %a6, -(%sp)",
44630            "move.l {basereg}, %a6",
44631            ".short 0x4eae", // jsr -30(a6)
44632            ".short -30",
44633            "move.l (%sp)+, %a6",
44634            "movem.l (%sp)+, %d1/%a0-%a1",
44635            basereg = in(reg) RequesterBase,
44636            out("d0") asm_ret_value,
44637        );
44638    }
44639    asm_ret_value
44640}
44641
44642/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44643pub unsafe fn CreateArgstring(
44644    RexxSysBase: *mut Library,
44645    string: CONST_STRPTR,
44646    length: ULONG,
44647) -> *mut UBYTE {
44648    let asm_ret_value: *mut UBYTE;
44649    unsafe {
44650        asm!(
44651            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44652            ".short 0x40c0",
44653            "move.l %a6, -(%sp)",
44654            "move.l {basereg}, %a6",
44655            ".short 0x4eae", // jsr -126(a6)
44656            ".short -126",
44657            "move.l (%sp)+, %a6",
44658            "movem.l (%sp)+, %d1/%a0-%a1",
44659            basereg = in(reg) RexxSysBase,
44660            in("a0") string,
44661            in("d0") length,
44662            lateout("d0") asm_ret_value,
44663        );
44664    }
44665    asm_ret_value
44666}
44667
44668/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44669pub unsafe fn DeleteArgstring(RexxSysBase: *mut Library, argstring: *mut UBYTE) {
44670    unsafe {
44671        asm!(
44672            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44673            ".short 0xc0c0",
44674            "move.l %a6, -(%sp)",
44675            "move.l {basereg}, %a6",
44676            ".short 0x4eae", // jsr -132(a6)
44677            ".short -132",
44678            "move.l (%sp)+, %a6",
44679            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44680            basereg = in(reg) RexxSysBase,
44681            in("a0") argstring,
44682        );
44683    }
44684}
44685
44686/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44687pub unsafe fn LengthArgstring(RexxSysBase: *mut Library, argstring: *const UBYTE) -> ULONG {
44688    let asm_ret_value: ULONG;
44689    unsafe {
44690        asm!(
44691            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44692            ".short 0x40c0",
44693            "move.l %a6, -(%sp)",
44694            "move.l {basereg}, %a6",
44695            ".short 0x4eae", // jsr -138(a6)
44696            ".short -138",
44697            "move.l (%sp)+, %a6",
44698            "movem.l (%sp)+, %d1/%a0-%a1",
44699            basereg = in(reg) RexxSysBase,
44700            in("a0") argstring,
44701            out("d0") asm_ret_value,
44702        );
44703    }
44704    asm_ret_value
44705}
44706
44707/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44708pub unsafe fn CreateRexxMsg(
44709    RexxSysBase: *mut Library,
44710    port: *mut MsgPort,
44711    extension: CONST_STRPTR,
44712    host: CONST_STRPTR,
44713) -> *mut RexxMsg {
44714    let asm_ret_value: *mut RexxMsg;
44715    unsafe {
44716        asm!(
44717            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44718            ".short 0x40c0",
44719            "move.l %a6, -(%sp)",
44720            "move.l {basereg}, %a6",
44721            ".short 0x4eae", // jsr -144(a6)
44722            ".short -144",
44723            "move.l (%sp)+, %a6",
44724            "movem.l (%sp)+, %d1/%a0-%a1",
44725            basereg = in(reg) RexxSysBase,
44726            in("a0") port,
44727            in("a1") extension,
44728            in("d0") host,
44729            lateout("d0") asm_ret_value,
44730        );
44731    }
44732    asm_ret_value
44733}
44734
44735/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44736pub unsafe fn DeleteRexxMsg(RexxSysBase: *mut Library, packet: *mut RexxMsg) {
44737    unsafe {
44738        asm!(
44739            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44740            ".short 0xc0c0",
44741            "move.l %a6, -(%sp)",
44742            "move.l {basereg}, %a6",
44743            ".short 0x4eae", // jsr -150(a6)
44744            ".short -150",
44745            "move.l (%sp)+, %a6",
44746            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44747            basereg = in(reg) RexxSysBase,
44748            in("a0") packet,
44749        );
44750    }
44751}
44752
44753/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44754pub unsafe fn ClearRexxMsg(RexxSysBase: *mut Library, msgptr: *mut RexxMsg, count: ULONG) {
44755    unsafe {
44756        asm!(
44757            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44758            ".short 0xc0c0",
44759            "move.l %a6, -(%sp)",
44760            "move.l {basereg}, %a6",
44761            ".short 0x4eae", // jsr -156(a6)
44762            ".short -156",
44763            "move.l (%sp)+, %a6",
44764            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44765            basereg = in(reg) RexxSysBase,
44766            in("a0") msgptr,
44767            in("d0") count,
44768        );
44769    }
44770}
44771
44772/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44773pub unsafe fn FillRexxMsg(
44774    RexxSysBase: *mut Library,
44775    msgptr: *mut RexxMsg,
44776    count: ULONG,
44777    mask: ULONG,
44778) -> BOOL {
44779    let asm_ret_value: BOOL;
44780    unsafe {
44781        asm!(
44782            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44783            ".short 0x40c0",
44784            "move.l %a6, -(%sp)",
44785            "move.l {basereg}, %a6",
44786            ".short 0x4eae", // jsr -162(a6)
44787            ".short -162",
44788            "move.l (%sp)+, %a6",
44789            "movem.l (%sp)+, %d1/%a0-%a1",
44790            basereg = in(reg) RexxSysBase,
44791            in("a0") msgptr,
44792            in("d0") count,
44793            in("d1") mask,
44794            lateout("d0") asm_ret_value,
44795        );
44796    }
44797    asm_ret_value
44798}
44799
44800/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44801pub unsafe fn IsRexxMsg(RexxSysBase: *mut Library, msgptr: *const RexxMsg) -> BOOL {
44802    let asm_ret_value: BOOL;
44803    unsafe {
44804        asm!(
44805            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44806            ".short 0x40c0",
44807            "move.l %a6, -(%sp)",
44808            "move.l {basereg}, %a6",
44809            ".short 0x4eae", // jsr -168(a6)
44810            ".short -168",
44811            "move.l (%sp)+, %a6",
44812            "movem.l (%sp)+, %d1/%a0-%a1",
44813            basereg = in(reg) RexxSysBase,
44814            in("a0") msgptr,
44815            out("d0") asm_ret_value,
44816        );
44817    }
44818    asm_ret_value
44819}
44820
44821/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44822pub unsafe fn LockRexxBase(RexxSysBase: *mut Library, resource: ULONG) {
44823    unsafe {
44824        asm!(
44825            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44826            ".short 0xc0c0",
44827            "move.l %a6, -(%sp)",
44828            "move.l {basereg}, %a6",
44829            ".short 0x4eae", // jsr -450(a6)
44830            ".short -450",
44831            "move.l (%sp)+, %a6",
44832            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44833            basereg = in(reg) RexxSysBase,
44834            in("d0") resource,
44835        );
44836    }
44837}
44838
44839/// libname: "rexxsyslib.library" (V36) (Kickstart 2.0)
44840pub unsafe fn UnlockRexxBase(RexxSysBase: *mut Library, resource: ULONG) {
44841    unsafe {
44842        asm!(
44843            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44844            ".short 0xc0c0",
44845            "move.l %a6, -(%sp)",
44846            "move.l {basereg}, %a6",
44847            ".short 0x4eae", // jsr -456(a6)
44848            ".short -456",
44849            "move.l (%sp)+, %a6",
44850            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44851            basereg = in(reg) RexxSysBase,
44852            in("d0") resource,
44853        );
44854    }
44855}
44856
44857/// libname: "rexxsyslib.library" (V47) (Kickstart 3.2 / 2020)
44858pub unsafe fn CreateRexxHostPort(
44859    RexxSysBase: *mut Library,
44860    basename: CONST_STRPTR,
44861) -> *mut MsgPort {
44862    let asm_ret_value: *mut MsgPort;
44863    unsafe {
44864        asm!(
44865            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44866            ".short 0x40c0",
44867            "move.l %a6, -(%sp)",
44868            "move.l {basereg}, %a6",
44869            ".short 0x4eae", // jsr -480(a6)
44870            ".short -480",
44871            "move.l (%sp)+, %a6",
44872            "movem.l (%sp)+, %d1/%a0-%a1",
44873            basereg = in(reg) RexxSysBase,
44874            in("a0") basename,
44875            out("d0") asm_ret_value,
44876        );
44877    }
44878    asm_ret_value
44879}
44880
44881/// libname: "rexxsyslib.library" (V47) (Kickstart 3.2 / 2020)
44882pub unsafe fn DeleteRexxHostPort(RexxSysBase: *mut Library, port: *mut MsgPort) {
44883    unsafe {
44884        asm!(
44885            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44886            ".short 0xc0c0",
44887            "move.l %a6, -(%sp)",
44888            "move.l {basereg}, %a6",
44889            ".short 0x4eae", // jsr -486(a6)
44890            ".short -486",
44891            "move.l (%sp)+, %a6",
44892            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44893            basereg = in(reg) RexxSysBase,
44894            in("a0") port,
44895        );
44896    }
44897}
44898
44899/// libname: "rexxsyslib.library" (V47) (Kickstart 3.2 / 2020)
44900pub unsafe fn GetRexxVarFromMsg(
44901    RexxSysBase: *mut Library,
44902    var: CONST_STRPTR,
44903    msgptr: *const RexxMsg,
44904    value: STRPTR,
44905) -> LONG {
44906    let asm_ret_value: LONG;
44907    unsafe {
44908        asm!(
44909            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44910            ".short 0x40c0",
44911            "move.l %a6, -(%sp)",
44912            "move.l {basereg}, %a6",
44913            ".short 0x4eae", // jsr -492(a6)
44914            ".short -492",
44915            "move.l (%sp)+, %a6",
44916            "movem.l (%sp)+, %d1/%a0-%a1",
44917            basereg = in(reg) RexxSysBase,
44918            in("a0") var,
44919            in("a2") msgptr,
44920            in("a1") value,
44921            out("d0") asm_ret_value,
44922        );
44923    }
44924    asm_ret_value
44925}
44926
44927/// libname: "rexxsyslib.library" (V47) (Kickstart 3.2 / 2020)
44928pub unsafe fn SetRexxVarFromMsg(
44929    RexxSysBase: *mut Library,
44930    var: CONST_STRPTR,
44931    msgptr: *mut RexxMsg,
44932    value: CONST_STRPTR,
44933) -> LONG {
44934    let asm_ret_value: LONG;
44935    unsafe {
44936        asm!(
44937            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44938            ".short 0x40c0",
44939            "move.l %a6, -(%sp)",
44940            "move.l {basereg}, %a6",
44941            ".short 0x4eae", // jsr -498(a6)
44942            ".short -498",
44943            "move.l (%sp)+, %a6",
44944            "movem.l (%sp)+, %d1/%a0-%a1",
44945            basereg = in(reg) RexxSysBase,
44946            in("a0") var,
44947            in("a2") msgptr,
44948            in("a1") value,
44949            out("d0") asm_ret_value,
44950        );
44951    }
44952    asm_ret_value
44953}
44954
44955/// libname: "rexxsyslib.library" (V47) (Kickstart 3.2 / 2020)
44956pub unsafe fn LaunchRexxScript(
44957    RexxSysBase: *mut Library,
44958    script: CONST_STRPTR,
44959    replyport: *mut MsgPort,
44960    extension: CONST_STRPTR,
44961    input: BPTR,
44962    output: BPTR,
44963) -> *mut RexxMsg {
44964    let asm_ret_value: *mut RexxMsg;
44965    unsafe {
44966        asm!(
44967            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
44968            ".short 0x40c0",
44969            "move.l %a6, -(%sp)",
44970            "move.l {basereg}, %a6",
44971            ".short 0x4eae", // jsr -504(a6)
44972            ".short -504",
44973            "move.l (%sp)+, %a6",
44974            "movem.l (%sp)+, %d1/%a0-%a1",
44975            basereg = in(reg) RexxSysBase,
44976            in("a0") script,
44977            in("a1") replyport,
44978            in("a2") extension,
44979            in("d1") input,
44980            in("d2") output,
44981            out("d0") asm_ret_value,
44982        );
44983    }
44984    asm_ret_value
44985}
44986
44987/// libname: "rexxsyslib.library" (V47) (Kickstart 3.2 / 2020)
44988pub unsafe fn FreeRexxMsg(RexxSysBase: *mut Library, msgptr: *mut RexxMsg) {
44989    unsafe {
44990        asm!(
44991            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
44992            ".short 0xc0c0",
44993            "move.l %a6, -(%sp)",
44994            "move.l {basereg}, %a6",
44995            ".short 0x4eae", // jsr -510(a6)
44996            ".short -510",
44997            "move.l (%sp)+, %a6",
44998            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
44999            basereg = in(reg) RexxSysBase,
45000            in("a0") msgptr,
45001        );
45002    }
45003}
45004
45005/// libname: "rexxsyslib.library" (V47) (Kickstart 3.2 / 2020)
45006pub unsafe fn GetRexxBufferFromMsg(
45007    RexxSysBase: *mut Library,
45008    var: CONST_STRPTR,
45009    msgptr: *const RexxMsg,
45010    buffer: STRPTR,
45011    buffer_size: ULONG,
45012) -> LONG {
45013    let asm_ret_value: LONG;
45014    unsafe {
45015        asm!(
45016            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45017            ".short 0x40c0",
45018            "move.l %a6, -(%sp)",
45019            "move.l {basereg}, %a6",
45020            ".short 0x4eae", // jsr -516(a6)
45021            ".short -516",
45022            "move.l (%sp)+, %a6",
45023            "movem.l (%sp)+, %d1/%a0-%a1",
45024            basereg = in(reg) RexxSysBase,
45025            in("a0") var,
45026            in("a2") msgptr,
45027            in("a1") buffer,
45028            in("d0") buffer_size,
45029            lateout("d0") asm_ret_value,
45030        );
45031    }
45032    asm_ret_value
45033}
45034
45035/// libname: "scroller.gadget" (V40) (Kickstart 3.1)
45036pub unsafe fn SCROLLER_GetClass(ScrollerBase: *mut ::core::ffi::c_void) -> *mut Class {
45037    let asm_ret_value: *mut Class;
45038    unsafe {
45039        asm!(
45040            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45041            ".short 0x40c0",
45042            "move.l %a6, -(%sp)",
45043            "move.l {basereg}, %a6",
45044            ".short 0x4eae", // jsr -30(a6)
45045            ".short -30",
45046            "move.l (%sp)+, %a6",
45047            "movem.l (%sp)+, %d1/%a0-%a1",
45048            basereg = in(reg) ScrollerBase,
45049            out("d0") asm_ret_value,
45050        );
45051    }
45052    asm_ret_value
45053}
45054
45055/// libname: "sketchboard.gadget" (V40) (Kickstart 3.1)
45056pub unsafe fn SKETCHBOARD_GetClass(SketchBoardBase: *mut ::core::ffi::c_void) -> *mut Class {
45057    let asm_ret_value: *mut Class;
45058    unsafe {
45059        asm!(
45060            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45061            ".short 0x40c0",
45062            "move.l %a6, -(%sp)",
45063            "move.l {basereg}, %a6",
45064            ".short 0x4eae", // jsr -30(a6)
45065            ".short -30",
45066            "move.l (%sp)+, %a6",
45067            "movem.l (%sp)+, %d1/%a0-%a1",
45068            basereg = in(reg) SketchBoardBase,
45069            out("d0") asm_ret_value,
45070        );
45071    }
45072    asm_ret_value
45073}
45074
45075/// libname: "slider.gadget" (V40) (Kickstart 3.1)
45076pub unsafe fn SLIDER_GetClass(SliderBase: *mut ::core::ffi::c_void) -> *mut Class {
45077    let asm_ret_value: *mut Class;
45078    unsafe {
45079        asm!(
45080            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45081            ".short 0x40c0",
45082            "move.l %a6, -(%sp)",
45083            "move.l {basereg}, %a6",
45084            ".short 0x4eae", // jsr -30(a6)
45085            ".short -30",
45086            "move.l (%sp)+, %a6",
45087            "movem.l (%sp)+, %d1/%a0-%a1",
45088            basereg = in(reg) SliderBase,
45089            out("d0") asm_ret_value,
45090        );
45091    }
45092    asm_ret_value
45093}
45094
45095/// libname: "space.gadget" (V40) (Kickstart 3.1)
45096pub unsafe fn SPACE_GetClass(SpaceBase: *mut ::core::ffi::c_void) -> *mut Class {
45097    let asm_ret_value: *mut Class;
45098    unsafe {
45099        asm!(
45100            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45101            ".short 0x40c0",
45102            "move.l %a6, -(%sp)",
45103            "move.l {basereg}, %a6",
45104            ".short 0x4eae", // jsr -30(a6)
45105            ".short -30",
45106            "move.l (%sp)+, %a6",
45107            "movem.l (%sp)+, %d1/%a0-%a1",
45108            basereg = in(reg) SpaceBase,
45109            out("d0") asm_ret_value,
45110        );
45111    }
45112    asm_ret_value
45113}
45114
45115/// libname: "speedbar.gadget" (V40) (Kickstart 3.1)
45116pub unsafe fn SPEEDBAR_GetClass(SpeedBarBase: *mut ::core::ffi::c_void) -> *mut Class {
45117    let asm_ret_value: *mut Class;
45118    unsafe {
45119        asm!(
45120            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45121            ".short 0x40c0",
45122            "move.l %a6, -(%sp)",
45123            "move.l {basereg}, %a6",
45124            ".short 0x4eae", // jsr -30(a6)
45125            ".short -30",
45126            "move.l (%sp)+, %a6",
45127            "movem.l (%sp)+, %d1/%a0-%a1",
45128            basereg = in(reg) SpeedBarBase,
45129            out("d0") asm_ret_value,
45130        );
45131    }
45132    asm_ret_value
45133}
45134
45135/// libname: "speedbar.gadget" (V40) (Kickstart 3.1)
45136pub unsafe fn AllocSpeedButtonNodeA(
45137    SpeedBarBase: *mut ::core::ffi::c_void,
45138    number: ULONG,
45139    tags: *mut TagItem,
45140) -> *mut Node {
45141    let asm_ret_value: *mut Node;
45142    unsafe {
45143        asm!(
45144            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45145            ".short 0x40c0",
45146            "move.l %a6, -(%sp)",
45147            "move.l {basereg}, %a6",
45148            ".short 0x4eae", // jsr -36(a6)
45149            ".short -36",
45150            "move.l (%sp)+, %a6",
45151            "movem.l (%sp)+, %d1/%a0-%a1",
45152            basereg = in(reg) SpeedBarBase,
45153            in("d0") number,
45154            in("a0") tags,
45155            lateout("d0") asm_ret_value,
45156        );
45157    }
45158    asm_ret_value
45159}
45160
45161/// libname: "speedbar.gadget" (V40) (Kickstart 3.1)
45162pub unsafe fn FreeSpeedButtonNode(SpeedBarBase: *mut ::core::ffi::c_void, node: *mut Node) {
45163    unsafe {
45164        asm!(
45165            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45166            ".short 0xc0c0",
45167            "move.l %a6, -(%sp)",
45168            "move.l {basereg}, %a6",
45169            ".short 0x4eae", // jsr -42(a6)
45170            ".short -42",
45171            "move.l (%sp)+, %a6",
45172            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45173            basereg = in(reg) SpeedBarBase,
45174            in("a0") node,
45175        );
45176    }
45177}
45178
45179/// libname: "speedbar.gadget" (V40) (Kickstart 3.1)
45180pub unsafe fn SetSpeedButtonNodeAttrsA(
45181    SpeedBarBase: *mut ::core::ffi::c_void,
45182    node: *mut Node,
45183    tags: *mut TagItem,
45184) {
45185    unsafe {
45186        asm!(
45187            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45188            ".short 0xc0c0",
45189            "move.l %a6, -(%sp)",
45190            "move.l {basereg}, %a6",
45191            ".short 0x4eae", // jsr -48(a6)
45192            ".short -48",
45193            "move.l (%sp)+, %a6",
45194            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45195            basereg = in(reg) SpeedBarBase,
45196            in("a0") node,
45197            in("a1") tags,
45198        );
45199    }
45200}
45201
45202/// libname: "speedbar.gadget" (V40) (Kickstart 3.1)
45203pub unsafe fn GetSpeedButtonNodeAttrsA(
45204    SpeedBarBase: *mut ::core::ffi::c_void,
45205    node: *mut Node,
45206    tags: *mut TagItem,
45207) {
45208    unsafe {
45209        asm!(
45210            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45211            ".short 0xc0c0",
45212            "move.l %a6, -(%sp)",
45213            "move.l {basereg}, %a6",
45214            ".short 0x4eae", // jsr -54(a6)
45215            ".short -54",
45216            "move.l (%sp)+, %a6",
45217            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45218            basereg = in(reg) SpeedBarBase,
45219            in("a0") node,
45220            in("a1") tags,
45221        );
45222    }
45223}
45224
45225/// libname: "string.gadget" (V40) (Kickstart 3.1)
45226pub unsafe fn STRING_GetClass(StringBase: *mut ::core::ffi::c_void) -> *mut Class {
45227    let asm_ret_value: *mut Class;
45228    unsafe {
45229        asm!(
45230            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45231            ".short 0x40c0",
45232            "move.l %a6, -(%sp)",
45233            "move.l {basereg}, %a6",
45234            ".short 0x4eae", // jsr -30(a6)
45235            ".short -30",
45236            "move.l (%sp)+, %a6",
45237            "movem.l (%sp)+, %d1/%a0-%a1",
45238            basereg = in(reg) StringBase,
45239            out("d0") asm_ret_value,
45240        );
45241    }
45242    asm_ret_value
45243}
45244
45245/// libname: "texteditor.gadget" (V40) (Kickstart 3.1)
45246pub unsafe fn TEXTEDITOR_GetClass(TextFieldBase: *mut ::core::ffi::c_void) -> *mut Class {
45247    let asm_ret_value: *mut Class;
45248    unsafe {
45249        asm!(
45250            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45251            ".short 0x40c0",
45252            "move.l %a6, -(%sp)",
45253            "move.l {basereg}, %a6",
45254            ".short 0x4eae", // jsr -30(a6)
45255            ".short -30",
45256            "move.l (%sp)+, %a6",
45257            "movem.l (%sp)+, %d1/%a0-%a1",
45258            basereg = in(reg) TextFieldBase,
45259            out("d0") asm_ret_value,
45260        );
45261    }
45262    asm_ret_value
45263}
45264
45265/// libname: "texteditor.gadget" (V47) (Kickstart 3.2 / 2020)
45266pub unsafe fn HighlightSetFormat(
45267    TextFieldBase: *mut ::core::ffi::c_void,
45268    object: APTR,
45269    pos: ULONG,
45270    end: ULONG,
45271    style: ULONG,
45272) {
45273    unsafe {
45274        asm!(
45275            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45276            ".short 0xc0c0",
45277            "move.l %a6, -(%sp)",
45278            "move.l {basereg}, %a6",
45279            ".short 0x4eae", // jsr -36(a6)
45280            ".short -36",
45281            "move.l (%sp)+, %a6",
45282            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45283            basereg = in(reg) TextFieldBase,
45284            in("a0") object,
45285            in("d0") pos,
45286            in("d1") end,
45287            in("d2") style,
45288        );
45289    }
45290}
45291
45292/// libname: "timer.device"
45293pub unsafe fn AddTime(
45294    TimerBase: *mut ::core::ffi::c_void,
45295    dest: *mut TimeVal_Type,
45296    src: *const TimeVal_Type,
45297) {
45298    unsafe {
45299        asm!(
45300            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45301            ".short 0xc0c0",
45302            "move.l %a6, -(%sp)",
45303            "move.l {basereg}, %a6",
45304            ".short 0x4eae", // jsr -42(a6)
45305            ".short -42",
45306            "move.l (%sp)+, %a6",
45307            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45308            basereg = in(reg) TimerBase,
45309            in("a0") dest,
45310            in("a1") src,
45311        );
45312    }
45313}
45314
45315/// libname: "timer.device"
45316pub unsafe fn SubTime(
45317    TimerBase: *mut ::core::ffi::c_void,
45318    dest: *mut TimeVal_Type,
45319    src: *const TimeVal_Type,
45320) {
45321    unsafe {
45322        asm!(
45323            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45324            ".short 0xc0c0",
45325            "move.l %a6, -(%sp)",
45326            "move.l {basereg}, %a6",
45327            ".short 0x4eae", // jsr -48(a6)
45328            ".short -48",
45329            "move.l (%sp)+, %a6",
45330            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45331            basereg = in(reg) TimerBase,
45332            in("a0") dest,
45333            in("a1") src,
45334        );
45335    }
45336}
45337
45338/// libname: "timer.device"
45339pub unsafe fn CmpTime(
45340    TimerBase: *mut ::core::ffi::c_void,
45341    dest: *const TimeVal_Type,
45342    src: *const TimeVal_Type,
45343) -> LONG {
45344    let asm_ret_value: LONG;
45345    unsafe {
45346        asm!(
45347            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45348            ".short 0x40c0",
45349            "move.l %a6, -(%sp)",
45350            "move.l {basereg}, %a6",
45351            ".short 0x4eae", // jsr -54(a6)
45352            ".short -54",
45353            "move.l (%sp)+, %a6",
45354            "movem.l (%sp)+, %d1/%a0-%a1",
45355            basereg = in(reg) TimerBase,
45356            in("a0") dest,
45357            in("a1") src,
45358            out("d0") asm_ret_value,
45359        );
45360    }
45361    asm_ret_value
45362}
45363
45364/// libname: "timer.device" (V36) (Kickstart 2.0)
45365pub unsafe fn ReadEClock(TimerBase: *mut ::core::ffi::c_void, dest: *mut EClockVal) -> ULONG {
45366    let asm_ret_value: ULONG;
45367    unsafe {
45368        asm!(
45369            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45370            ".short 0x40c0",
45371            "move.l %a6, -(%sp)",
45372            "move.l {basereg}, %a6",
45373            ".short 0x4eae", // jsr -60(a6)
45374            ".short -60",
45375            "move.l (%sp)+, %a6",
45376            "movem.l (%sp)+, %d1/%a0-%a1",
45377            basereg = in(reg) TimerBase,
45378            in("a0") dest,
45379            out("d0") asm_ret_value,
45380        );
45381    }
45382    asm_ret_value
45383}
45384
45385/// libname: "timer.device" (V36) (Kickstart 2.0)
45386pub unsafe fn GetSysTime(TimerBase: *mut ::core::ffi::c_void, dest: *mut TimeVal_Type) {
45387    unsafe {
45388        asm!(
45389            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45390            ".short 0xc0c0",
45391            "move.l %a6, -(%sp)",
45392            "move.l {basereg}, %a6",
45393            ".short 0x4eae", // jsr -66(a6)
45394            ".short -66",
45395            "move.l (%sp)+, %a6",
45396            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45397            basereg = in(reg) TimerBase,
45398            in("a0") dest,
45399        );
45400    }
45401}
45402
45403/// libname: "trackfile.device" (V47) (Kickstart 3.2 / 2020)
45404pub unsafe fn TFStartUnitTagList(
45405    TrackFileBase: *mut ::core::ffi::c_void,
45406    which_unit: LONG,
45407    tags: *const TagItem,
45408) -> LONG {
45409    let asm_ret_value: LONG;
45410    unsafe {
45411        asm!(
45412            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45413            ".short 0x40c0",
45414            "move.l %a6, -(%sp)",
45415            "move.l {basereg}, %a6",
45416            ".short 0x4eae", // jsr -42(a6)
45417            ".short -42",
45418            "move.l (%sp)+, %a6",
45419            "movem.l (%sp)+, %d1/%a0-%a1",
45420            basereg = in(reg) TrackFileBase,
45421            in("d0") which_unit,
45422            in("a0") tags,
45423            lateout("d0") asm_ret_value,
45424        );
45425    }
45426    asm_ret_value
45427}
45428
45429/// libname: "trackfile.device" (V47) (Kickstart 3.2 / 2020)
45430pub unsafe fn TFStopUnitTagList(
45431    TrackFileBase: *mut ::core::ffi::c_void,
45432    which_unit: LONG,
45433    tags: *const TagItem,
45434) -> LONG {
45435    let asm_ret_value: LONG;
45436    unsafe {
45437        asm!(
45438            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45439            ".short 0x40c0",
45440            "move.l %a6, -(%sp)",
45441            "move.l {basereg}, %a6",
45442            ".short 0x4eae", // jsr -48(a6)
45443            ".short -48",
45444            "move.l (%sp)+, %a6",
45445            "movem.l (%sp)+, %d1/%a0-%a1",
45446            basereg = in(reg) TrackFileBase,
45447            in("d0") which_unit,
45448            in("a0") tags,
45449            lateout("d0") asm_ret_value,
45450        );
45451    }
45452    asm_ret_value
45453}
45454
45455/// libname: "trackfile.device" (V47) (Kickstart 3.2 / 2020)
45456pub unsafe fn TFInsertMediaTagList(
45457    TrackFileBase: *mut ::core::ffi::c_void,
45458    which_unit: LONG,
45459    tags: *const TagItem,
45460) -> LONG {
45461    let asm_ret_value: LONG;
45462    unsafe {
45463        asm!(
45464            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45465            ".short 0x40c0",
45466            "move.l %a6, -(%sp)",
45467            "move.l {basereg}, %a6",
45468            ".short 0x4eae", // jsr -54(a6)
45469            ".short -54",
45470            "move.l (%sp)+, %a6",
45471            "movem.l (%sp)+, %d1/%a0-%a1",
45472            basereg = in(reg) TrackFileBase,
45473            in("d0") which_unit,
45474            in("a0") tags,
45475            lateout("d0") asm_ret_value,
45476        );
45477    }
45478    asm_ret_value
45479}
45480
45481/// libname: "trackfile.device" (V47) (Kickstart 3.2 / 2020)
45482pub unsafe fn TFEjectMediaTagList(
45483    TrackFileBase: *mut ::core::ffi::c_void,
45484    which_unit: LONG,
45485    tags: *const TagItem,
45486) -> LONG {
45487    let asm_ret_value: LONG;
45488    unsafe {
45489        asm!(
45490            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45491            ".short 0x40c0",
45492            "move.l %a6, -(%sp)",
45493            "move.l {basereg}, %a6",
45494            ".short 0x4eae", // jsr -60(a6)
45495            ".short -60",
45496            "move.l (%sp)+, %a6",
45497            "movem.l (%sp)+, %d1/%a0-%a1",
45498            basereg = in(reg) TrackFileBase,
45499            in("d0") which_unit,
45500            in("a0") tags,
45501            lateout("d0") asm_ret_value,
45502        );
45503    }
45504    asm_ret_value
45505}
45506
45507/// libname: "trackfile.device" (V47) (Kickstart 3.2 / 2020)
45508pub unsafe fn TFGetUnitData(
45509    TrackFileBase: *mut ::core::ffi::c_void,
45510    which_unit: LONG,
45511) -> *mut TrackFileUnitData {
45512    let asm_ret_value: *mut TrackFileUnitData;
45513    unsafe {
45514        asm!(
45515            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45516            ".short 0x40c0",
45517            "move.l %a6, -(%sp)",
45518            "move.l {basereg}, %a6",
45519            ".short 0x4eae", // jsr -66(a6)
45520            ".short -66",
45521            "move.l (%sp)+, %a6",
45522            "movem.l (%sp)+, %d1/%a0-%a1",
45523            basereg = in(reg) TrackFileBase,
45524            in("d0") which_unit,
45525            lateout("d0") asm_ret_value,
45526        );
45527    }
45528    asm_ret_value
45529}
45530
45531/// libname: "trackfile.device" (V47) (Kickstart 3.2 / 2020)
45532pub unsafe fn TFFreeUnitData(
45533    TrackFileBase: *mut ::core::ffi::c_void,
45534    tfud: *mut TrackFileUnitData,
45535) {
45536    unsafe {
45537        asm!(
45538            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45539            ".short 0xc0c0",
45540            "move.l %a6, -(%sp)",
45541            "move.l {basereg}, %a6",
45542            ".short 0x4eae", // jsr -72(a6)
45543            ".short -72",
45544            "move.l (%sp)+, %a6",
45545            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45546            basereg = in(reg) TrackFileBase,
45547            in("a0") tfud,
45548        );
45549    }
45550}
45551
45552/// libname: "trackfile.device" (V47) (Kickstart 3.2 / 2020)
45553pub unsafe fn TFChangeUnitTagList(
45554    TrackFileBase: *mut ::core::ffi::c_void,
45555    which_unit: LONG,
45556    tags: *const TagItem,
45557) -> LONG {
45558    let asm_ret_value: LONG;
45559    unsafe {
45560        asm!(
45561            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45562            ".short 0x40c0",
45563            "move.l %a6, -(%sp)",
45564            "move.l {basereg}, %a6",
45565            ".short 0x4eae", // jsr -78(a6)
45566            ".short -78",
45567            "move.l (%sp)+, %a6",
45568            "movem.l (%sp)+, %d1/%a0-%a1",
45569            basereg = in(reg) TrackFileBase,
45570            in("d0") which_unit,
45571            in("a0") tags,
45572            lateout("d0") asm_ret_value,
45573        );
45574    }
45575    asm_ret_value
45576}
45577
45578/// libname: "trackfile.device" (V47) (Kickstart 3.2 / 2020)
45579pub unsafe fn TFExamineFileSize(TrackFileBase: *mut ::core::ffi::c_void, file_size: LONG) -> LONG {
45580    let asm_ret_value: LONG;
45581    unsafe {
45582        asm!(
45583            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45584            ".short 0x40c0",
45585            "move.l %a6, -(%sp)",
45586            "move.l {basereg}, %a6",
45587            ".short 0x4eae", // jsr -84(a6)
45588            ".short -84",
45589            "move.l (%sp)+, %a6",
45590            "movem.l (%sp)+, %d1/%a0-%a1",
45591            basereg = in(reg) TrackFileBase,
45592            in("d0") file_size,
45593            lateout("d0") asm_ret_value,
45594        );
45595    }
45596    asm_ret_value
45597}
45598
45599/// libname: "translator.library"
45600pub unsafe fn Translate(
45601    TranslatorBase: *mut Library,
45602    inputString: CONST_STRPTR,
45603    inputLength: LONG,
45604    outputBuffer: STRPTR,
45605    bufferSize: LONG,
45606) -> LONG {
45607    let asm_ret_value: LONG;
45608    unsafe {
45609        asm!(
45610            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45611            ".short 0x40c0",
45612            "move.l %a6, -(%sp)",
45613            "move.l {basereg}, %a6",
45614            ".short 0x4eae", // jsr -30(a6)
45615            ".short -30",
45616            "move.l (%sp)+, %a6",
45617            "movem.l (%sp)+, %d1/%a0-%a1",
45618            basereg = in(reg) TranslatorBase,
45619            in("a0") inputString,
45620            in("d0") inputLength,
45621            in("a1") outputBuffer,
45622            in("d1") bufferSize,
45623            lateout("d0") asm_ret_value,
45624        );
45625    }
45626    asm_ret_value
45627}
45628
45629/// libname: "utility.library" (V36) (Kickstart 2.0)
45630pub unsafe fn FindTagItem(
45631    UtilityBase: *mut Library,
45632    tagVal: Tag,
45633    tagList: *const TagItem,
45634) -> *mut TagItem {
45635    let asm_ret_value: *mut TagItem;
45636    unsafe {
45637        asm!(
45638            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45639            ".short 0x40c0",
45640            "move.l %a6, -(%sp)",
45641            "move.l {basereg}, %a6",
45642            ".short 0x4eae", // jsr -30(a6)
45643            ".short -30",
45644            "move.l (%sp)+, %a6",
45645            "movem.l (%sp)+, %d1/%a0-%a1",
45646            basereg = in(reg) UtilityBase,
45647            in("d0") tagVal,
45648            in("a0") tagList,
45649            lateout("d0") asm_ret_value,
45650        );
45651    }
45652    asm_ret_value
45653}
45654
45655/// libname: "utility.library" (V36) (Kickstart 2.0)
45656pub unsafe fn GetTagData(
45657    UtilityBase: *mut Library,
45658    tagValue: Tag,
45659    defaultVal: ULONG,
45660    tagList: *const TagItem,
45661) -> ULONG {
45662    let asm_ret_value: ULONG;
45663    unsafe {
45664        asm!(
45665            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45666            ".short 0x40c0",
45667            "move.l %a6, -(%sp)",
45668            "move.l {basereg}, %a6",
45669            ".short 0x4eae", // jsr -36(a6)
45670            ".short -36",
45671            "move.l (%sp)+, %a6",
45672            "movem.l (%sp)+, %d1/%a0-%a1",
45673            basereg = in(reg) UtilityBase,
45674            in("d0") tagValue,
45675            in("d1") defaultVal,
45676            in("a0") tagList,
45677            lateout("d0") asm_ret_value,
45678        );
45679    }
45680    asm_ret_value
45681}
45682
45683/// libname: "utility.library" (V36) (Kickstart 2.0)
45684pub unsafe fn PackBoolTags(
45685    UtilityBase: *mut Library,
45686    initialFlags: ULONG,
45687    tagList: *const TagItem,
45688    boolMap: *const TagItem,
45689) -> ULONG {
45690    let asm_ret_value: ULONG;
45691    unsafe {
45692        asm!(
45693            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45694            ".short 0x40c0",
45695            "move.l %a6, -(%sp)",
45696            "move.l {basereg}, %a6",
45697            ".short 0x4eae", // jsr -42(a6)
45698            ".short -42",
45699            "move.l (%sp)+, %a6",
45700            "movem.l (%sp)+, %d1/%a0-%a1",
45701            basereg = in(reg) UtilityBase,
45702            in("d0") initialFlags,
45703            in("a0") tagList,
45704            in("a1") boolMap,
45705            lateout("d0") asm_ret_value,
45706        );
45707    }
45708    asm_ret_value
45709}
45710
45711/// libname: "utility.library" (V36) (Kickstart 2.0)
45712pub unsafe fn NextTagItem(
45713    UtilityBase: *mut Library,
45714    tagListPtr: *mut *mut TagItem,
45715) -> *mut TagItem {
45716    let asm_ret_value: *mut TagItem;
45717    unsafe {
45718        asm!(
45719            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45720            ".short 0x40c0",
45721            "move.l %a6, -(%sp)",
45722            "move.l {basereg}, %a6",
45723            ".short 0x4eae", // jsr -48(a6)
45724            ".short -48",
45725            "move.l (%sp)+, %a6",
45726            "movem.l (%sp)+, %d1/%a0-%a1",
45727            basereg = in(reg) UtilityBase,
45728            in("a0") tagListPtr,
45729            out("d0") asm_ret_value,
45730        );
45731    }
45732    asm_ret_value
45733}
45734
45735/// libname: "utility.library" (V36) (Kickstart 2.0)
45736pub unsafe fn FilterTagChanges(
45737    UtilityBase: *mut Library,
45738    changeList: *mut TagItem,
45739    originalList: *mut TagItem,
45740    apply: ULONG,
45741) {
45742    unsafe {
45743        asm!(
45744            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45745            ".short 0xc0c0",
45746            "move.l %a6, -(%sp)",
45747            "move.l {basereg}, %a6",
45748            ".short 0x4eae", // jsr -54(a6)
45749            ".short -54",
45750            "move.l (%sp)+, %a6",
45751            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45752            basereg = in(reg) UtilityBase,
45753            in("a0") changeList,
45754            in("a1") originalList,
45755            in("d0") apply,
45756        );
45757    }
45758}
45759
45760/// libname: "utility.library" (V36) (Kickstart 2.0)
45761pub unsafe fn MapTags(
45762    UtilityBase: *mut Library,
45763    tagList: *mut TagItem,
45764    mapList: *const TagItem,
45765    mapType: ULONG,
45766) {
45767    unsafe {
45768        asm!(
45769            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45770            ".short 0xc0c0",
45771            "move.l %a6, -(%sp)",
45772            "move.l {basereg}, %a6",
45773            ".short 0x4eae", // jsr -60(a6)
45774            ".short -60",
45775            "move.l (%sp)+, %a6",
45776            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45777            basereg = in(reg) UtilityBase,
45778            in("a0") tagList,
45779            in("a1") mapList,
45780            in("d0") mapType,
45781        );
45782    }
45783}
45784
45785/// libname: "utility.library" (V36) (Kickstart 2.0)
45786pub unsafe fn AllocateTagItems(UtilityBase: *mut Library, numTags: ULONG) -> *mut TagItem {
45787    let asm_ret_value: *mut TagItem;
45788    unsafe {
45789        asm!(
45790            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45791            ".short 0x40c0",
45792            "move.l %a6, -(%sp)",
45793            "move.l {basereg}, %a6",
45794            ".short 0x4eae", // jsr -66(a6)
45795            ".short -66",
45796            "move.l (%sp)+, %a6",
45797            "movem.l (%sp)+, %d1/%a0-%a1",
45798            basereg = in(reg) UtilityBase,
45799            in("d0") numTags,
45800            lateout("d0") asm_ret_value,
45801        );
45802    }
45803    asm_ret_value
45804}
45805
45806/// libname: "utility.library" (V36) (Kickstart 2.0)
45807pub unsafe fn CloneTagItems(UtilityBase: *mut Library, tagList: *const TagItem) -> *mut TagItem {
45808    let asm_ret_value: *mut TagItem;
45809    unsafe {
45810        asm!(
45811            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45812            ".short 0x40c0",
45813            "move.l %a6, -(%sp)",
45814            "move.l {basereg}, %a6",
45815            ".short 0x4eae", // jsr -72(a6)
45816            ".short -72",
45817            "move.l (%sp)+, %a6",
45818            "movem.l (%sp)+, %d1/%a0-%a1",
45819            basereg = in(reg) UtilityBase,
45820            in("a0") tagList,
45821            out("d0") asm_ret_value,
45822        );
45823    }
45824    asm_ret_value
45825}
45826
45827/// libname: "utility.library" (V36) (Kickstart 2.0)
45828pub unsafe fn FreeTagItems(UtilityBase: *mut Library, tagList: *mut TagItem) {
45829    unsafe {
45830        asm!(
45831            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45832            ".short 0xc0c0",
45833            "move.l %a6, -(%sp)",
45834            "move.l {basereg}, %a6",
45835            ".short 0x4eae", // jsr -78(a6)
45836            ".short -78",
45837            "move.l (%sp)+, %a6",
45838            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45839            basereg = in(reg) UtilityBase,
45840            in("a0") tagList,
45841        );
45842    }
45843}
45844
45845/// libname: "utility.library" (V36) (Kickstart 2.0)
45846pub unsafe fn RefreshTagItemClones(
45847    UtilityBase: *mut Library,
45848    clone: *mut TagItem,
45849    original: *const TagItem,
45850) {
45851    unsafe {
45852        asm!(
45853            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45854            ".short 0xc0c0",
45855            "move.l %a6, -(%sp)",
45856            "move.l {basereg}, %a6",
45857            ".short 0x4eae", // jsr -84(a6)
45858            ".short -84",
45859            "move.l (%sp)+, %a6",
45860            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45861            basereg = in(reg) UtilityBase,
45862            in("a0") clone,
45863            in("a1") original,
45864        );
45865    }
45866}
45867
45868/// libname: "utility.library" (V36) (Kickstart 2.0)
45869pub unsafe fn TagInArray(UtilityBase: *mut Library, tagValue: Tag, tagArray: *const Tag) -> BOOL {
45870    let asm_ret_value: BOOL;
45871    unsafe {
45872        asm!(
45873            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45874            ".short 0x40c0",
45875            "move.l %a6, -(%sp)",
45876            "move.l {basereg}, %a6",
45877            ".short 0x4eae", // jsr -90(a6)
45878            ".short -90",
45879            "move.l (%sp)+, %a6",
45880            "movem.l (%sp)+, %d1/%a0-%a1",
45881            basereg = in(reg) UtilityBase,
45882            in("d0") tagValue,
45883            in("a0") tagArray,
45884            lateout("d0") asm_ret_value,
45885        );
45886    }
45887    asm_ret_value
45888}
45889
45890/// libname: "utility.library" (V36) (Kickstart 2.0)
45891pub unsafe fn FilterTagItems(
45892    UtilityBase: *mut Library,
45893    tagList: *mut TagItem,
45894    filterArray: *const Tag,
45895    logic: ULONG,
45896) -> ULONG {
45897    let asm_ret_value: ULONG;
45898    unsafe {
45899        asm!(
45900            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45901            ".short 0x40c0",
45902            "move.l %a6, -(%sp)",
45903            "move.l {basereg}, %a6",
45904            ".short 0x4eae", // jsr -96(a6)
45905            ".short -96",
45906            "move.l (%sp)+, %a6",
45907            "movem.l (%sp)+, %d1/%a0-%a1",
45908            basereg = in(reg) UtilityBase,
45909            in("a0") tagList,
45910            in("a1") filterArray,
45911            in("d0") logic,
45912            lateout("d0") asm_ret_value,
45913        );
45914    }
45915    asm_ret_value
45916}
45917
45918/// libname: "utility.library" (V36) (Kickstart 2.0)
45919pub unsafe fn CallHookPkt(
45920    UtilityBase: *mut Library,
45921    hook: *mut Hook,
45922    object: APTR,
45923    paramPacket: APTR,
45924) -> ULONG {
45925    let asm_ret_value: ULONG;
45926    unsafe {
45927        asm!(
45928            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45929            ".short 0x40c0",
45930            "move.l %a6, -(%sp)",
45931            "move.l {basereg}, %a6",
45932            ".short 0x4eae", // jsr -102(a6)
45933            ".short -102",
45934            "move.l (%sp)+, %a6",
45935            "movem.l (%sp)+, %d1/%a0-%a1",
45936            basereg = in(reg) UtilityBase,
45937            in("a0") hook,
45938            in("a2") object,
45939            in("a1") paramPacket,
45940            out("d0") asm_ret_value,
45941        );
45942    }
45943    asm_ret_value
45944}
45945
45946/// libname: "utility.library" (V36) (Kickstart 2.0)
45947pub unsafe fn Amiga2Date(UtilityBase: *mut Library, seconds: ULONG, result: *mut ClockData) {
45948    unsafe {
45949        asm!(
45950            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
45951            ".short 0xc0c0",
45952            "move.l %a6, -(%sp)",
45953            "move.l {basereg}, %a6",
45954            ".short 0x4eae", // jsr -120(a6)
45955            ".short -120",
45956            "move.l (%sp)+, %a6",
45957            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
45958            basereg = in(reg) UtilityBase,
45959            in("d0") seconds,
45960            in("a0") result,
45961        );
45962    }
45963}
45964
45965/// libname: "utility.library" (V36) (Kickstart 2.0)
45966pub unsafe fn Date2Amiga(UtilityBase: *mut Library, date: *const ClockData) -> ULONG {
45967    let asm_ret_value: ULONG;
45968    unsafe {
45969        asm!(
45970            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45971            ".short 0x40c0",
45972            "move.l %a6, -(%sp)",
45973            "move.l {basereg}, %a6",
45974            ".short 0x4eae", // jsr -126(a6)
45975            ".short -126",
45976            "move.l (%sp)+, %a6",
45977            "movem.l (%sp)+, %d1/%a0-%a1",
45978            basereg = in(reg) UtilityBase,
45979            in("a0") date,
45980            out("d0") asm_ret_value,
45981        );
45982    }
45983    asm_ret_value
45984}
45985
45986/// libname: "utility.library" (V36) (Kickstart 2.0)
45987pub unsafe fn CheckDate(UtilityBase: *mut Library, date: *const ClockData) -> ULONG {
45988    let asm_ret_value: ULONG;
45989    unsafe {
45990        asm!(
45991            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
45992            ".short 0x40c0",
45993            "move.l %a6, -(%sp)",
45994            "move.l {basereg}, %a6",
45995            ".short 0x4eae", // jsr -132(a6)
45996            ".short -132",
45997            "move.l (%sp)+, %a6",
45998            "movem.l (%sp)+, %d1/%a0-%a1",
45999            basereg = in(reg) UtilityBase,
46000            in("a0") date,
46001            out("d0") asm_ret_value,
46002        );
46003    }
46004    asm_ret_value
46005}
46006
46007/// libname: "utility.library" (V36) (Kickstart 2.0)
46008pub unsafe fn SMult32(UtilityBase: *mut Library, arg1: LONG, arg2: LONG) -> LONG {
46009    let asm_ret_value: LONG;
46010    unsafe {
46011        asm!(
46012            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46013            ".short 0x40c0",
46014            "move.l %a6, -(%sp)",
46015            "move.l {basereg}, %a6",
46016            ".short 0x4eae", // jsr -138(a6)
46017            ".short -138",
46018            "move.l (%sp)+, %a6",
46019            "movem.l (%sp)+, %d1/%a0-%a1",
46020            basereg = in(reg) UtilityBase,
46021            in("d0") arg1,
46022            in("d1") arg2,
46023            lateout("d0") asm_ret_value,
46024        );
46025    }
46026    asm_ret_value
46027}
46028
46029/// libname: "utility.library" (V36) (Kickstart 2.0)
46030pub unsafe fn UMult32(UtilityBase: *mut Library, arg1: ULONG, arg2: ULONG) -> ULONG {
46031    let asm_ret_value: ULONG;
46032    unsafe {
46033        asm!(
46034            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46035            ".short 0x40c0",
46036            "move.l %a6, -(%sp)",
46037            "move.l {basereg}, %a6",
46038            ".short 0x4eae", // jsr -144(a6)
46039            ".short -144",
46040            "move.l (%sp)+, %a6",
46041            "movem.l (%sp)+, %d1/%a0-%a1",
46042            basereg = in(reg) UtilityBase,
46043            in("d0") arg1,
46044            in("d1") arg2,
46045            lateout("d0") asm_ret_value,
46046        );
46047    }
46048    asm_ret_value
46049}
46050
46051/// libname: "utility.library" (V36) (Kickstart 2.0)
46052pub unsafe fn SDivMod32(UtilityBase: *mut Library, dividend: LONG, divisor: LONG) -> LONG {
46053    let asm_ret_value: LONG;
46054    unsafe {
46055        asm!(
46056            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46057            ".short 0x40c0",
46058            "move.l %a6, -(%sp)",
46059            "move.l {basereg}, %a6",
46060            ".short 0x4eae", // jsr -150(a6)
46061            ".short -150",
46062            "move.l (%sp)+, %a6",
46063            "movem.l (%sp)+, %d1/%a0-%a1",
46064            basereg = in(reg) UtilityBase,
46065            in("d0") dividend,
46066            in("d1") divisor,
46067            lateout("d0") asm_ret_value,
46068        );
46069    }
46070    asm_ret_value
46071}
46072
46073/// libname: "utility.library" (V36) (Kickstart 2.0)
46074pub unsafe fn UDivMod32(UtilityBase: *mut Library, dividend: ULONG, divisor: ULONG) -> ULONG {
46075    let asm_ret_value: ULONG;
46076    unsafe {
46077        asm!(
46078            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46079            ".short 0x40c0",
46080            "move.l %a6, -(%sp)",
46081            "move.l {basereg}, %a6",
46082            ".short 0x4eae", // jsr -156(a6)
46083            ".short -156",
46084            "move.l (%sp)+, %a6",
46085            "movem.l (%sp)+, %d1/%a0-%a1",
46086            basereg = in(reg) UtilityBase,
46087            in("d0") dividend,
46088            in("d1") divisor,
46089            lateout("d0") asm_ret_value,
46090        );
46091    }
46092    asm_ret_value
46093}
46094
46095/// libname: "utility.library" (V37) (Kickstart 2.04)
46096pub unsafe fn Stricmp(
46097    UtilityBase: *mut Library,
46098    string1: CONST_STRPTR,
46099    string2: CONST_STRPTR,
46100) -> LONG {
46101    let asm_ret_value: LONG;
46102    unsafe {
46103        asm!(
46104            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46105            ".short 0x40c0",
46106            "move.l %a6, -(%sp)",
46107            "move.l {basereg}, %a6",
46108            ".short 0x4eae", // jsr -162(a6)
46109            ".short -162",
46110            "move.l (%sp)+, %a6",
46111            "movem.l (%sp)+, %d1/%a0-%a1",
46112            basereg = in(reg) UtilityBase,
46113            in("a0") string1,
46114            in("a1") string2,
46115            out("d0") asm_ret_value,
46116        );
46117    }
46118    asm_ret_value
46119}
46120
46121/// libname: "utility.library" (V37) (Kickstart 2.04)
46122pub unsafe fn Strnicmp(
46123    UtilityBase: *mut Library,
46124    string1: CONST_STRPTR,
46125    string2: CONST_STRPTR,
46126    length: LONG,
46127) -> LONG {
46128    let asm_ret_value: LONG;
46129    unsafe {
46130        asm!(
46131            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46132            ".short 0x40c0",
46133            "move.l %a6, -(%sp)",
46134            "move.l {basereg}, %a6",
46135            ".short 0x4eae", // jsr -168(a6)
46136            ".short -168",
46137            "move.l (%sp)+, %a6",
46138            "movem.l (%sp)+, %d1/%a0-%a1",
46139            basereg = in(reg) UtilityBase,
46140            in("a0") string1,
46141            in("a1") string2,
46142            in("d0") length,
46143            lateout("d0") asm_ret_value,
46144        );
46145    }
46146    asm_ret_value
46147}
46148
46149/// libname: "utility.library" (V37) (Kickstart 2.04)
46150pub unsafe fn ToUpper(UtilityBase: *mut Library, character: ULONG) -> UBYTE {
46151    let asm_ret_value: i16;
46152    unsafe {
46153        asm!(
46154            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46155            ".short 0x40c0",
46156            "move.l %a6, -(%sp)",
46157            "move.l {basereg}, %a6",
46158            ".short 0x4eae", // jsr -174(a6)
46159            ".short -174",
46160            "and.w #0x00ff, %d0",
46161            "move.l (%sp)+, %a6",
46162            "movem.l (%sp)+, %d1/%a0-%a1",
46163            basereg = in(reg) UtilityBase,
46164            in("d0") character,
46165            lateout("d0") asm_ret_value,
46166        );
46167    }
46168    asm_ret_value as u8
46169}
46170
46171/// libname: "utility.library" (V37) (Kickstart 2.04)
46172pub unsafe fn ToLower(UtilityBase: *mut Library, character: ULONG) -> UBYTE {
46173    let asm_ret_value: i16;
46174    unsafe {
46175        asm!(
46176            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46177            ".short 0x40c0",
46178            "move.l %a6, -(%sp)",
46179            "move.l {basereg}, %a6",
46180            ".short 0x4eae", // jsr -180(a6)
46181            ".short -180",
46182            "and.w #0x00ff, %d0",
46183            "move.l (%sp)+, %a6",
46184            "movem.l (%sp)+, %d1/%a0-%a1",
46185            basereg = in(reg) UtilityBase,
46186            in("d0") character,
46187            lateout("d0") asm_ret_value,
46188        );
46189    }
46190    asm_ret_value as u8
46191}
46192
46193/// libname: "utility.library" (V39) (Kickstart 3.0)
46194pub unsafe fn ApplyTagChanges(
46195    UtilityBase: *mut Library,
46196    list: *mut TagItem,
46197    changeList: *const TagItem,
46198) {
46199    unsafe {
46200        asm!(
46201            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
46202            ".short 0xc0c0",
46203            "move.l %a6, -(%sp)",
46204            "move.l {basereg}, %a6",
46205            ".short 0x4eae", // jsr -186(a6)
46206            ".short -186",
46207            "move.l (%sp)+, %a6",
46208            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
46209            basereg = in(reg) UtilityBase,
46210            in("a0") list,
46211            in("a1") changeList,
46212        );
46213    }
46214}
46215
46216/// libname: "utility.library" (V39) (Kickstart 3.0)
46217pub unsafe fn SMult64(UtilityBase: *mut Library, arg1: LONG, arg2: LONG) -> LONG {
46218    let asm_ret_value: LONG;
46219    unsafe {
46220        asm!(
46221            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46222            ".short 0x40c0",
46223            "move.l %a6, -(%sp)",
46224            "move.l {basereg}, %a6",
46225            ".short 0x4eae", // jsr -198(a6)
46226            ".short -198",
46227            "move.l (%sp)+, %a6",
46228            "movem.l (%sp)+, %d1/%a0-%a1",
46229            basereg = in(reg) UtilityBase,
46230            in("d0") arg1,
46231            in("d1") arg2,
46232            lateout("d0") asm_ret_value,
46233        );
46234    }
46235    asm_ret_value
46236}
46237
46238/// libname: "utility.library" (V39) (Kickstart 3.0)
46239pub unsafe fn UMult64(UtilityBase: *mut Library, arg1: ULONG, arg2: ULONG) -> ULONG {
46240    let asm_ret_value: ULONG;
46241    unsafe {
46242        asm!(
46243            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46244            ".short 0x40c0",
46245            "move.l %a6, -(%sp)",
46246            "move.l {basereg}, %a6",
46247            ".short 0x4eae", // jsr -204(a6)
46248            ".short -204",
46249            "move.l (%sp)+, %a6",
46250            "movem.l (%sp)+, %d1/%a0-%a1",
46251            basereg = in(reg) UtilityBase,
46252            in("d0") arg1,
46253            in("d1") arg2,
46254            lateout("d0") asm_ret_value,
46255        );
46256    }
46257    asm_ret_value
46258}
46259
46260/// libname: "utility.library" (V39) (Kickstart 3.0)
46261pub unsafe fn PackStructureTags(
46262    UtilityBase: *mut Library,
46263    pack: APTR,
46264    packTable: *const ULONG,
46265    tagList: *const TagItem,
46266) -> ULONG {
46267    let asm_ret_value: ULONG;
46268    unsafe {
46269        asm!(
46270            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46271            ".short 0x40c0",
46272            "move.l %a6, -(%sp)",
46273            "move.l {basereg}, %a6",
46274            ".short 0x4eae", // jsr -210(a6)
46275            ".short -210",
46276            "move.l (%sp)+, %a6",
46277            "movem.l (%sp)+, %d1/%a0-%a1",
46278            basereg = in(reg) UtilityBase,
46279            in("a0") pack,
46280            in("a1") packTable,
46281            in("a2") tagList,
46282            out("d0") asm_ret_value,
46283        );
46284    }
46285    asm_ret_value
46286}
46287
46288/// libname: "utility.library" (V39) (Kickstart 3.0)
46289pub unsafe fn UnpackStructureTags(
46290    UtilityBase: *mut Library,
46291    pack: CONST_APTR,
46292    packTable: *const ULONG,
46293    tagList: *mut TagItem,
46294) -> ULONG {
46295    let asm_ret_value: ULONG;
46296    unsafe {
46297        asm!(
46298            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46299            ".short 0x40c0",
46300            "move.l %a6, -(%sp)",
46301            "move.l {basereg}, %a6",
46302            ".short 0x4eae", // jsr -216(a6)
46303            ".short -216",
46304            "move.l (%sp)+, %a6",
46305            "movem.l (%sp)+, %d1/%a0-%a1",
46306            basereg = in(reg) UtilityBase,
46307            in("a0") pack,
46308            in("a1") packTable,
46309            in("a2") tagList,
46310            out("d0") asm_ret_value,
46311        );
46312    }
46313    asm_ret_value
46314}
46315
46316/// libname: "utility.library" (V39) (Kickstart 3.0)
46317pub unsafe fn AddNamedObject(
46318    UtilityBase: *mut Library,
46319    nameSpace: *mut NamedObject,
46320    object: *mut NamedObject,
46321) -> BOOL {
46322    let asm_ret_value: BOOL;
46323    unsafe {
46324        asm!(
46325            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46326            ".short 0x40c0",
46327            "move.l %a6, -(%sp)",
46328            "move.l {basereg}, %a6",
46329            ".short 0x4eae", // jsr -222(a6)
46330            ".short -222",
46331            "move.l (%sp)+, %a6",
46332            "movem.l (%sp)+, %d1/%a0-%a1",
46333            basereg = in(reg) UtilityBase,
46334            in("a0") nameSpace,
46335            in("a1") object,
46336            out("d0") asm_ret_value,
46337        );
46338    }
46339    asm_ret_value
46340}
46341
46342/// libname: "utility.library" (V39) (Kickstart 3.0)
46343pub unsafe fn AllocNamedObjectA(
46344    UtilityBase: *mut Library,
46345    name: CONST_STRPTR,
46346    tagList: *const TagItem,
46347) -> *mut NamedObject {
46348    let asm_ret_value: *mut NamedObject;
46349    unsafe {
46350        asm!(
46351            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46352            ".short 0x40c0",
46353            "move.l %a6, -(%sp)",
46354            "move.l {basereg}, %a6",
46355            ".short 0x4eae", // jsr -228(a6)
46356            ".short -228",
46357            "move.l (%sp)+, %a6",
46358            "movem.l (%sp)+, %d1/%a0-%a1",
46359            basereg = in(reg) UtilityBase,
46360            in("a0") name,
46361            in("a1") tagList,
46362            out("d0") asm_ret_value,
46363        );
46364    }
46365    asm_ret_value
46366}
46367
46368/// libname: "utility.library" (V39) (Kickstart 3.0)
46369pub unsafe fn AttemptRemNamedObject(UtilityBase: *mut Library, object: *mut NamedObject) -> LONG {
46370    let asm_ret_value: LONG;
46371    unsafe {
46372        asm!(
46373            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46374            ".short 0x40c0",
46375            "move.l %a6, -(%sp)",
46376            "move.l {basereg}, %a6",
46377            ".short 0x4eae", // jsr -234(a6)
46378            ".short -234",
46379            "move.l (%sp)+, %a6",
46380            "movem.l (%sp)+, %d1/%a0-%a1",
46381            basereg = in(reg) UtilityBase,
46382            in("a0") object,
46383            out("d0") asm_ret_value,
46384        );
46385    }
46386    asm_ret_value
46387}
46388
46389/// libname: "utility.library" (V39) (Kickstart 3.0)
46390pub unsafe fn FindNamedObject(
46391    UtilityBase: *mut Library,
46392    nameSpace: *mut NamedObject,
46393    name: CONST_STRPTR,
46394    lastObject: *const NamedObject,
46395) -> *mut NamedObject {
46396    let asm_ret_value: *mut NamedObject;
46397    unsafe {
46398        asm!(
46399            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46400            ".short 0x40c0",
46401            "move.l %a6, -(%sp)",
46402            "move.l {basereg}, %a6",
46403            ".short 0x4eae", // jsr -240(a6)
46404            ".short -240",
46405            "move.l (%sp)+, %a6",
46406            "movem.l (%sp)+, %d1/%a0-%a1",
46407            basereg = in(reg) UtilityBase,
46408            in("a0") nameSpace,
46409            in("a1") name,
46410            in("a2") lastObject,
46411            out("d0") asm_ret_value,
46412        );
46413    }
46414    asm_ret_value
46415}
46416
46417/// libname: "utility.library" (V39) (Kickstart 3.0)
46418pub unsafe fn FreeNamedObject(UtilityBase: *mut Library, object: *mut NamedObject) {
46419    unsafe {
46420        asm!(
46421            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
46422            ".short 0xc0c0",
46423            "move.l %a6, -(%sp)",
46424            "move.l {basereg}, %a6",
46425            ".short 0x4eae", // jsr -246(a6)
46426            ".short -246",
46427            "move.l (%sp)+, %a6",
46428            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
46429            basereg = in(reg) UtilityBase,
46430            in("a0") object,
46431        );
46432    }
46433}
46434
46435/// libname: "utility.library" (V39) (Kickstart 3.0)
46436pub unsafe fn NamedObjectName(UtilityBase: *mut Library, object: *mut NamedObject) -> STRPTR {
46437    let asm_ret_value: STRPTR;
46438    unsafe {
46439        asm!(
46440            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46441            ".short 0x40c0",
46442            "move.l %a6, -(%sp)",
46443            "move.l {basereg}, %a6",
46444            ".short 0x4eae", // jsr -252(a6)
46445            ".short -252",
46446            "move.l (%sp)+, %a6",
46447            "movem.l (%sp)+, %d1/%a0-%a1",
46448            basereg = in(reg) UtilityBase,
46449            in("a0") object,
46450            out("d0") asm_ret_value,
46451        );
46452    }
46453    asm_ret_value
46454}
46455
46456/// libname: "utility.library" (V39) (Kickstart 3.0)
46457pub unsafe fn ReleaseNamedObject(UtilityBase: *mut Library, object: *mut NamedObject) {
46458    unsafe {
46459        asm!(
46460            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
46461            ".short 0xc0c0",
46462            "move.l %a6, -(%sp)",
46463            "move.l {basereg}, %a6",
46464            ".short 0x4eae", // jsr -258(a6)
46465            ".short -258",
46466            "move.l (%sp)+, %a6",
46467            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
46468            basereg = in(reg) UtilityBase,
46469            in("a0") object,
46470        );
46471    }
46472}
46473
46474/// libname: "utility.library" (V39) (Kickstart 3.0)
46475pub unsafe fn RemNamedObject(
46476    UtilityBase: *mut Library,
46477    object: *mut NamedObject,
46478    message: *mut Message,
46479) {
46480    unsafe {
46481        asm!(
46482            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
46483            ".short 0xc0c0",
46484            "move.l %a6, -(%sp)",
46485            "move.l {basereg}, %a6",
46486            ".short 0x4eae", // jsr -264(a6)
46487            ".short -264",
46488            "move.l (%sp)+, %a6",
46489            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
46490            basereg = in(reg) UtilityBase,
46491            in("a0") object,
46492            in("a1") message,
46493        );
46494    }
46495}
46496
46497/// libname: "utility.library" (V39) (Kickstart 3.0)
46498pub unsafe fn GetUniqueID(UtilityBase: *mut Library) -> ULONG {
46499    let asm_ret_value: ULONG;
46500    unsafe {
46501        asm!(
46502            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46503            ".short 0x40c0",
46504            "move.l %a6, -(%sp)",
46505            "move.l {basereg}, %a6",
46506            ".short 0x4eae", // jsr -270(a6)
46507            ".short -270",
46508            "move.l (%sp)+, %a6",
46509            "movem.l (%sp)+, %d1/%a0-%a1",
46510            basereg = in(reg) UtilityBase,
46511            out("d0") asm_ret_value,
46512        );
46513    }
46514    asm_ret_value
46515}
46516
46517/// libname: "utility.library" (V47) (Kickstart 3.2 / 2020)
46518pub unsafe fn VSNPrintf(
46519    UtilityBase: *mut Library,
46520    buffer: STRPTR,
46521    bufsize: ULONG,
46522    fmt: CONST_STRPTR,
46523    data: CONST_APTR,
46524) -> LONG {
46525    let asm_ret_value: LONG;
46526    unsafe {
46527        asm!(
46528            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46529            ".short 0x40c0",
46530            "move.l %a6, -(%sp)",
46531            "move.l {basereg}, %a6",
46532            ".short 0x4eae", // jsr -312(a6)
46533            ".short -312",
46534            "move.l (%sp)+, %a6",
46535            "movem.l (%sp)+, %d1/%a0-%a1",
46536            basereg = in(reg) UtilityBase,
46537            in("a0") buffer,
46538            in("d0") bufsize,
46539            in("a1") fmt,
46540            in("a2") data,
46541            lateout("d0") asm_ret_value,
46542        );
46543    }
46544    asm_ret_value
46545}
46546
46547/// libname: "utility.library" (V47) (Kickstart 3.2 / 2020)
46548pub unsafe fn Strncpy(
46549    UtilityBase: *mut Library,
46550    dst: STRPTR,
46551    src: CONST_STRPTR,
46552    size: ULONG,
46553) -> STRPTR {
46554    let asm_ret_value: STRPTR;
46555    unsafe {
46556        asm!(
46557            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46558            ".short 0x40c0",
46559            "move.l %a6, -(%sp)",
46560            "move.l {basereg}, %a6",
46561            ".short 0x4eae", // jsr -438(a6)
46562            ".short -438",
46563            "move.l (%sp)+, %a6",
46564            "movem.l (%sp)+, %d1/%a0-%a1",
46565            basereg = in(reg) UtilityBase,
46566            in("a1") dst,
46567            in("a0") src,
46568            in("d0") size,
46569            lateout("d0") asm_ret_value,
46570        );
46571    }
46572    asm_ret_value
46573}
46574
46575/// libname: "utility.library" (V47) (Kickstart 3.2 / 2020)
46576pub unsafe fn Strncat(
46577    UtilityBase: *mut Library,
46578    dst: STRPTR,
46579    src: CONST_STRPTR,
46580    size: ULONG,
46581) -> STRPTR {
46582    let asm_ret_value: STRPTR;
46583    unsafe {
46584        asm!(
46585            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46586            ".short 0x40c0",
46587            "move.l %a6, -(%sp)",
46588            "move.l {basereg}, %a6",
46589            ".short 0x4eae", // jsr -444(a6)
46590            ".short -444",
46591            "move.l (%sp)+, %a6",
46592            "movem.l (%sp)+, %d1/%a0-%a1",
46593            basereg = in(reg) UtilityBase,
46594            in("a1") dst,
46595            in("a0") src,
46596            in("d0") size,
46597            lateout("d0") asm_ret_value,
46598        );
46599    }
46600    asm_ret_value
46601}
46602
46603/// libname: "utility.library" (V47) (Kickstart 3.2 / 2020)
46604pub unsafe fn SDivMod64(UtilityBase: *mut Library, hi: LONG, lo: LONG, divisor: LONG) -> LONG {
46605    let asm_ret_value: LONG;
46606    unsafe {
46607        asm!(
46608            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46609            ".short 0x40c0",
46610            "move.l %a6, -(%sp)",
46611            "move.l {basereg}, %a6",
46612            ".short 0x4eae", // jsr -450(a6)
46613            ".short -450",
46614            "move.l (%sp)+, %a6",
46615            "movem.l (%sp)+, %d1/%a0-%a1",
46616            basereg = in(reg) UtilityBase,
46617            in("d1") hi,
46618            in("d0") lo,
46619            in("d2") divisor,
46620            lateout("d0") asm_ret_value,
46621        );
46622    }
46623    asm_ret_value
46624}
46625
46626/// libname: "utility.library" (V47) (Kickstart 3.2 / 2020)
46627pub unsafe fn UDivMod64(UtilityBase: *mut Library, hi: ULONG, lo: ULONG, divisor: ULONG) -> ULONG {
46628    let asm_ret_value: ULONG;
46629    unsafe {
46630        asm!(
46631            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46632            ".short 0x40c0",
46633            "move.l %a6, -(%sp)",
46634            "move.l {basereg}, %a6",
46635            ".short 0x4eae", // jsr -456(a6)
46636            ".short -456",
46637            "move.l (%sp)+, %a6",
46638            "movem.l (%sp)+, %d1/%a0-%a1",
46639            basereg = in(reg) UtilityBase,
46640            in("d1") hi,
46641            in("d0") lo,
46642            in("d2") divisor,
46643            lateout("d0") asm_ret_value,
46644        );
46645    }
46646    asm_ret_value
46647}
46648
46649/// libname: "virtual.gadget" (V40) (Kickstart 3.1)
46650pub unsafe fn VIRTUAL_GetClass(VirtualBase: *mut ::core::ffi::c_void) -> *mut Class {
46651    let asm_ret_value: *mut Class;
46652    unsafe {
46653        asm!(
46654            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46655            ".short 0x40c0",
46656            "move.l %a6, -(%sp)",
46657            "move.l {basereg}, %a6",
46658            ".short 0x4eae", // jsr -30(a6)
46659            ".short -30",
46660            "move.l (%sp)+, %a6",
46661            "movem.l (%sp)+, %d1/%a0-%a1",
46662            basereg = in(reg) VirtualBase,
46663            out("d0") asm_ret_value,
46664        );
46665    }
46666    asm_ret_value
46667}
46668
46669/// libname: "virtual.gadget" (V40) (Kickstart 3.1)
46670pub unsafe fn RefreshVirtualGadget(
46671    VirtualBase: *mut ::core::ffi::c_void,
46672    gadget: *mut Gadget,
46673    obj: *mut Object,
46674    window: *mut Window,
46675    requester: *mut Requester,
46676) {
46677    unsafe {
46678        asm!(
46679            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
46680            ".short 0xc0c0",
46681            "move.l %a6, -(%sp)",
46682            "move.l {basereg}, %a6",
46683            ".short 0x4eae", // jsr -36(a6)
46684            ".short -36",
46685            "move.l (%sp)+, %a6",
46686            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
46687            basereg = in(reg) VirtualBase,
46688            in("a0") gadget,
46689            in("a1") obj,
46690            in("a2") window,
46691            in("a3") requester,
46692        );
46693    }
46694}
46695
46696/// libname: "virtual.gadget" (V40) (Kickstart 3.1)
46697pub unsafe fn RethinkVirtualSize(
46698    VirtualBase: *mut ::core::ffi::c_void,
46699    virt_obj: *mut Object,
46700    rootlayout: *mut Object,
46701    font: *mut TextFont,
46702    screen: *mut Screen,
46703    layoutlimits: *mut LayoutLimits,
46704) -> BOOL {
46705    let asm_ret_value: BOOL;
46706    unsafe {
46707        asm!(
46708            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46709            ".short 0x40c0",
46710            "move.l %a6, -(%sp)",
46711            "move.l {basereg}, %a6",
46712            ".short 0x4eae", // jsr -42(a6)
46713            ".short -42",
46714            "move.l (%sp)+, %a6",
46715            "movem.l (%sp)+, %d1/%a0-%a1",
46716            basereg = in(reg) VirtualBase,
46717            in("a0") virt_obj,
46718            in("a1") rootlayout,
46719            in("a2") font,
46720            in("a3") screen,
46721            in("d0") layoutlimits,
46722            lateout("d0") asm_ret_value,
46723        );
46724    }
46725    asm_ret_value
46726}
46727
46728/// libname: "workbench.library" (V36) (Kickstart 2.0)
46729pub unsafe fn UpdateWorkbench(
46730    WorkbenchBase: *mut Library,
46731    name: CONST_STRPTR,
46732    lock: BPTR,
46733    action: LONG,
46734) {
46735    unsafe {
46736        asm!(
46737            ".short 0x48e7", // movem.l %d0-%d1/%a0-%a1, -(%sp)
46738            ".short 0xc0c0",
46739            "move.l %a6, -(%sp)",
46740            "move.l {basereg}, %a6",
46741            ".short 0x4eae", // jsr -30(a6)
46742            ".short -30",
46743            "move.l (%sp)+, %a6",
46744            "movem.l (%sp)+, %d0-%d1/%a0-%a1",
46745            basereg = in(reg) WorkbenchBase,
46746            in("a0") name,
46747            in("a1") lock,
46748            in("d0") action,
46749        );
46750    }
46751}
46752
46753/// libname: "workbench.library" (V36) (Kickstart 2.0)
46754pub unsafe fn AddAppWindowA(
46755    WorkbenchBase: *mut Library,
46756    id: ULONG,
46757    userdata: ULONG,
46758    window: *mut Window,
46759    msgport: *mut MsgPort,
46760    taglist: *const TagItem,
46761) -> *mut AppWindow {
46762    let asm_ret_value: *mut AppWindow;
46763    unsafe {
46764        asm!(
46765            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46766            ".short 0x40c0",
46767            "move.l %a6, -(%sp)",
46768            "move.l {basereg}, %a6",
46769            ".short 0x4eae", // jsr -48(a6)
46770            ".short -48",
46771            "move.l (%sp)+, %a6",
46772            "movem.l (%sp)+, %d1/%a0-%a1",
46773            basereg = in(reg) WorkbenchBase,
46774            in("d0") id,
46775            in("d1") userdata,
46776            in("a0") window,
46777            in("a1") msgport,
46778            in("a2") taglist,
46779            lateout("d0") asm_ret_value,
46780        );
46781    }
46782    asm_ret_value
46783}
46784
46785/// libname: "workbench.library" (V36) (Kickstart 2.0)
46786pub unsafe fn RemoveAppWindow(WorkbenchBase: *mut Library, appWindow: *mut AppWindow) -> BOOL {
46787    let asm_ret_value: BOOL;
46788    unsafe {
46789        asm!(
46790            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46791            ".short 0x40c0",
46792            "move.l %a6, -(%sp)",
46793            "move.l {basereg}, %a6",
46794            ".short 0x4eae", // jsr -54(a6)
46795            ".short -54",
46796            "move.l (%sp)+, %a6",
46797            "movem.l (%sp)+, %d1/%a0-%a1",
46798            basereg = in(reg) WorkbenchBase,
46799            in("a0") appWindow,
46800            out("d0") asm_ret_value,
46801        );
46802    }
46803    asm_ret_value
46804}
46805
46806/// libname: "workbench.library" (V36) (Kickstart 2.0)
46807pub unsafe fn AddAppIconA(
46808    WorkbenchBase: *mut Library,
46809    id: ULONG,
46810    userdata: ULONG,
46811    text: CONST_STRPTR,
46812    msgport: *mut MsgPort,
46813    lock: BPTR,
46814    diskobj: *mut DiskObject,
46815    taglist: *const TagItem,
46816) -> *mut AppIcon {
46817    let asm_ret_value: *mut AppIcon;
46818    unsafe {
46819        asm!(
46820            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46821            ".short 0x40c0",
46822            "move.l %a6, -(%sp)",
46823            "move.l %a4, -(%sp)",
46824            "move.l {basereg}, %a6",
46825            "move.l {a4reg}, %a4",
46826            ".short 0x4eae", // jsr -60(a6)
46827            ".short -60",
46828            "move.l (%sp)+, %a4",
46829            "move.l (%sp)+, %a6",
46830            "movem.l (%sp)+, %d1/%a0-%a1",
46831            basereg = in(reg) WorkbenchBase,
46832            in("d0") id,
46833            in("d1") userdata,
46834            in("a0") text,
46835            in("a1") msgport,
46836            in("a2") lock,
46837            in("a3") diskobj,
46838            a4reg = in(reg) taglist,
46839            lateout("d0") asm_ret_value,
46840        );
46841    }
46842    asm_ret_value
46843}
46844
46845/// libname: "workbench.library" (V36) (Kickstart 2.0)
46846pub unsafe fn RemoveAppIcon(WorkbenchBase: *mut Library, appIcon: *mut AppIcon) -> BOOL {
46847    let asm_ret_value: BOOL;
46848    unsafe {
46849        asm!(
46850            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46851            ".short 0x40c0",
46852            "move.l %a6, -(%sp)",
46853            "move.l {basereg}, %a6",
46854            ".short 0x4eae", // jsr -66(a6)
46855            ".short -66",
46856            "move.l (%sp)+, %a6",
46857            "movem.l (%sp)+, %d1/%a0-%a1",
46858            basereg = in(reg) WorkbenchBase,
46859            in("a0") appIcon,
46860            out("d0") asm_ret_value,
46861        );
46862    }
46863    asm_ret_value
46864}
46865
46866/// libname: "workbench.library" (V36) (Kickstart 2.0)
46867pub unsafe fn AddAppMenuItemA(
46868    WorkbenchBase: *mut Library,
46869    id: ULONG,
46870    userdata: ULONG,
46871    text: CONST_STRPTR,
46872    msgport: *mut MsgPort,
46873    taglist: *const TagItem,
46874) -> *mut AppMenuItem {
46875    let asm_ret_value: *mut AppMenuItem;
46876    unsafe {
46877        asm!(
46878            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46879            ".short 0x40c0",
46880            "move.l %a6, -(%sp)",
46881            "move.l {basereg}, %a6",
46882            ".short 0x4eae", // jsr -72(a6)
46883            ".short -72",
46884            "move.l (%sp)+, %a6",
46885            "movem.l (%sp)+, %d1/%a0-%a1",
46886            basereg = in(reg) WorkbenchBase,
46887            in("d0") id,
46888            in("d1") userdata,
46889            in("a0") text,
46890            in("a1") msgport,
46891            in("a2") taglist,
46892            lateout("d0") asm_ret_value,
46893        );
46894    }
46895    asm_ret_value
46896}
46897
46898/// libname: "workbench.library" (V36) (Kickstart 2.0)
46899pub unsafe fn RemoveAppMenuItem(
46900    WorkbenchBase: *mut Library,
46901    appMenuItem: *mut AppMenuItem,
46902) -> BOOL {
46903    let asm_ret_value: BOOL;
46904    unsafe {
46905        asm!(
46906            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46907            ".short 0x40c0",
46908            "move.l %a6, -(%sp)",
46909            "move.l {basereg}, %a6",
46910            ".short 0x4eae", // jsr -78(a6)
46911            ".short -78",
46912            "move.l (%sp)+, %a6",
46913            "movem.l (%sp)+, %d1/%a0-%a1",
46914            basereg = in(reg) WorkbenchBase,
46915            in("a0") appMenuItem,
46916            out("d0") asm_ret_value,
46917        );
46918    }
46919    asm_ret_value
46920}
46921
46922/// libname: "workbench.library" (V39) (Kickstart 3.0)
46923pub unsafe fn WBInfo(
46924    WorkbenchBase: *mut Library,
46925    lock: BPTR,
46926    name: CONST_STRPTR,
46927    screen: *mut Screen,
46928) -> ULONG {
46929    let asm_ret_value: ULONG;
46930    unsafe {
46931        asm!(
46932            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46933            ".short 0x40c0",
46934            "move.l %a6, -(%sp)",
46935            "move.l {basereg}, %a6",
46936            ".short 0x4eae", // jsr -90(a6)
46937            ".short -90",
46938            "move.l (%sp)+, %a6",
46939            "movem.l (%sp)+, %d1/%a0-%a1",
46940            basereg = in(reg) WorkbenchBase,
46941            in("a0") lock,
46942            in("a1") name,
46943            in("a2") screen,
46944            out("d0") asm_ret_value,
46945        );
46946    }
46947    asm_ret_value
46948}
46949
46950/// libname: "workbench.library" (V44) (Kickstart 3.5 / 1999)
46951pub unsafe fn OpenWorkbenchObjectA(
46952    WorkbenchBase: *mut Library,
46953    name: CONST_STRPTR,
46954    tags: *const TagItem,
46955) -> BOOL {
46956    let asm_ret_value: BOOL;
46957    unsafe {
46958        asm!(
46959            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46960            ".short 0x40c0",
46961            "move.l %a6, -(%sp)",
46962            "move.l {basereg}, %a6",
46963            ".short 0x4eae", // jsr -96(a6)
46964            ".short -96",
46965            "move.l (%sp)+, %a6",
46966            "movem.l (%sp)+, %d1/%a0-%a1",
46967            basereg = in(reg) WorkbenchBase,
46968            in("a0") name,
46969            in("a1") tags,
46970            out("d0") asm_ret_value,
46971        );
46972    }
46973    asm_ret_value
46974}
46975
46976/// libname: "workbench.library" (V44) (Kickstart 3.5 / 1999)
46977pub unsafe fn CloseWorkbenchObjectA(
46978    WorkbenchBase: *mut Library,
46979    name: CONST_STRPTR,
46980    tags: *const TagItem,
46981) -> BOOL {
46982    let asm_ret_value: BOOL;
46983    unsafe {
46984        asm!(
46985            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
46986            ".short 0x40c0",
46987            "move.l %a6, -(%sp)",
46988            "move.l {basereg}, %a6",
46989            ".short 0x4eae", // jsr -102(a6)
46990            ".short -102",
46991            "move.l (%sp)+, %a6",
46992            "movem.l (%sp)+, %d1/%a0-%a1",
46993            basereg = in(reg) WorkbenchBase,
46994            in("a0") name,
46995            in("a1") tags,
46996            out("d0") asm_ret_value,
46997        );
46998    }
46999    asm_ret_value
47000}
47001
47002/// libname: "workbench.library" (V44) (Kickstart 3.5 / 1999)
47003pub unsafe fn WorkbenchControlA(
47004    WorkbenchBase: *mut Library,
47005    name: CONST_STRPTR,
47006    tags: *const TagItem,
47007) -> BOOL {
47008    let asm_ret_value: BOOL;
47009    unsafe {
47010        asm!(
47011            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
47012            ".short 0x40c0",
47013            "move.l %a6, -(%sp)",
47014            "move.l {basereg}, %a6",
47015            ".short 0x4eae", // jsr -108(a6)
47016            ".short -108",
47017            "move.l (%sp)+, %a6",
47018            "movem.l (%sp)+, %d1/%a0-%a1",
47019            basereg = in(reg) WorkbenchBase,
47020            in("a0") name,
47021            in("a1") tags,
47022            out("d0") asm_ret_value,
47023        );
47024    }
47025    asm_ret_value
47026}
47027
47028/// libname: "workbench.library" (V44) (Kickstart 3.5 / 1999)
47029pub unsafe fn AddAppWindowDropZoneA(
47030    WorkbenchBase: *mut Library,
47031    aw: *mut AppWindow,
47032    id: ULONG,
47033    userdata: ULONG,
47034    tags: *const TagItem,
47035) -> *mut AppWindowDropZone {
47036    let asm_ret_value: *mut AppWindowDropZone;
47037    unsafe {
47038        asm!(
47039            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
47040            ".short 0x40c0",
47041            "move.l %a6, -(%sp)",
47042            "move.l {basereg}, %a6",
47043            ".short 0x4eae", // jsr -114(a6)
47044            ".short -114",
47045            "move.l (%sp)+, %a6",
47046            "movem.l (%sp)+, %d1/%a0-%a1",
47047            basereg = in(reg) WorkbenchBase,
47048            in("a0") aw,
47049            in("d0") id,
47050            in("d1") userdata,
47051            in("a1") tags,
47052            lateout("d0") asm_ret_value,
47053        );
47054    }
47055    asm_ret_value
47056}
47057
47058/// libname: "workbench.library" (V44) (Kickstart 3.5 / 1999)
47059pub unsafe fn RemoveAppWindowDropZone(
47060    WorkbenchBase: *mut Library,
47061    aw: *mut AppWindow,
47062    dropZone: *mut AppWindowDropZone,
47063) -> BOOL {
47064    let asm_ret_value: BOOL;
47065    unsafe {
47066        asm!(
47067            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
47068            ".short 0x40c0",
47069            "move.l %a6, -(%sp)",
47070            "move.l {basereg}, %a6",
47071            ".short 0x4eae", // jsr -120(a6)
47072            ".short -120",
47073            "move.l (%sp)+, %a6",
47074            "movem.l (%sp)+, %d1/%a0-%a1",
47075            basereg = in(reg) WorkbenchBase,
47076            in("a0") aw,
47077            in("a1") dropZone,
47078            out("d0") asm_ret_value,
47079        );
47080    }
47081    asm_ret_value
47082}
47083
47084/// libname: "workbench.library" (V44) (Kickstart 3.5 / 1999)
47085pub unsafe fn ChangeWorkbenchSelectionA(
47086    WorkbenchBase: *mut Library,
47087    name: CONST_STRPTR,
47088    hook: *mut Hook,
47089    tags: *const TagItem,
47090) -> BOOL {
47091    let asm_ret_value: BOOL;
47092    unsafe {
47093        asm!(
47094            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
47095            ".short 0x40c0",
47096            "move.l %a6, -(%sp)",
47097            "move.l {basereg}, %a6",
47098            ".short 0x4eae", // jsr -126(a6)
47099            ".short -126",
47100            "move.l (%sp)+, %a6",
47101            "movem.l (%sp)+, %d1/%a0-%a1",
47102            basereg = in(reg) WorkbenchBase,
47103            in("a0") name,
47104            in("a1") hook,
47105            in("a2") tags,
47106            out("d0") asm_ret_value,
47107        );
47108    }
47109    asm_ret_value
47110}
47111
47112/// libname: "workbench.library" (V44) (Kickstart 3.5 / 1999)
47113pub unsafe fn MakeWorkbenchObjectVisibleA(
47114    WorkbenchBase: *mut Library,
47115    name: CONST_STRPTR,
47116    tags: *const TagItem,
47117) -> BOOL {
47118    let asm_ret_value: BOOL;
47119    unsafe {
47120        asm!(
47121            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
47122            ".short 0x40c0",
47123            "move.l %a6, -(%sp)",
47124            "move.l {basereg}, %a6",
47125            ".short 0x4eae", // jsr -132(a6)
47126            ".short -132",
47127            "move.l (%sp)+, %a6",
47128            "movem.l (%sp)+, %d1/%a0-%a1",
47129            basereg = in(reg) WorkbenchBase,
47130            in("a0") name,
47131            in("a1") tags,
47132            out("d0") asm_ret_value,
47133        );
47134    }
47135    asm_ret_value
47136}
47137
47138/// libname: "workbench.library" (V47) (Kickstart 3.2 / 2020)
47139pub unsafe fn WhichWorkbenchObjectA(
47140    WorkbenchBase: *mut Library,
47141    window: *mut Window,
47142    x: LONG,
47143    y: LONG,
47144    tags: *const TagItem,
47145) -> ULONG {
47146    let asm_ret_value: ULONG;
47147    unsafe {
47148        asm!(
47149            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
47150            ".short 0x40c0",
47151            "move.l %a6, -(%sp)",
47152            "move.l {basereg}, %a6",
47153            ".short 0x4eae", // jsr -138(a6)
47154            ".short -138",
47155            "move.l (%sp)+, %a6",
47156            "movem.l (%sp)+, %d1/%a0-%a1",
47157            basereg = in(reg) WorkbenchBase,
47158            in("a0") window,
47159            in("d0") x,
47160            in("d1") y,
47161            in("a1") tags,
47162            lateout("d0") asm_ret_value,
47163        );
47164    }
47165    asm_ret_value
47166}
47167
47168/// libname: "window.class" (V40) (Kickstart 3.1)
47169pub unsafe fn WINDOW_GetClass(WindowBase: *mut ::core::ffi::c_void) -> *mut Class {
47170    let asm_ret_value: *mut Class;
47171    unsafe {
47172        asm!(
47173            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
47174            ".short 0x40c0",
47175            "move.l %a6, -(%sp)",
47176            "move.l {basereg}, %a6",
47177            ".short 0x4eae", // jsr -30(a6)
47178            ".short -30",
47179            "move.l (%sp)+, %a6",
47180            "movem.l (%sp)+, %d1/%a0-%a1",
47181            basereg = in(reg) WindowBase,
47182            out("d0") asm_ret_value,
47183        );
47184    }
47185    asm_ret_value
47186}
47187
47188/// libname: "listview.gadget" (V40) (Kickstart 3.1)
47189pub unsafe fn LISTVIEW_GetClass(ListViewBase: *mut ::core::ffi::c_void) -> *mut Class {
47190    let asm_ret_value: *mut Class;
47191    unsafe {
47192        asm!(
47193            ".short 0x48e7", // movem.l %d1/%a0-%a1, -(%sp)
47194            ".short 0x40c0",
47195            "move.l %a6, -(%sp)",
47196            "move.l {basereg}, %a6",
47197            ".short 0x4eae", // jsr -30(a6)
47198            ".short -30",
47199            "move.l (%sp)+, %a6",
47200            "movem.l (%sp)+, %d1/%a0-%a1",
47201            basereg = in(reg) ListViewBase,
47202            out("d0") asm_ret_value,
47203        );
47204    }
47205    asm_ret_value
47206}
47207
47208#[repr(C)]
47209#[derive(Debug, Copy, Clone)]
47210pub struct PrinterUnit {
47211    pub _address: u8,
47212}
47213#[repr(C)]
47214#[derive(Debug, Copy, Clone)]
47215pub struct DocFile {
47216    pub _address: u8,
47217}