Port the SB128 code to AROS.
[AROS.git] / rom / kernel / setsystemattr.c
blob92bb5d563739bdd1df63e255e22f8b4735de8f5d
1 #include <kernel_base.h>
3 /*****************************************************************************
5 NAME */
6 #include <proto/kernel.h>
8 AROS_LH2(int, KrnSetSystemAttr,
10 /* SYNOPSIS */
11 AROS_LHA(uint32_t, id, D0),
12 AROS_LHA(intptr_t, val, D1),
14 /* LOCATION */
15 struct KernelBase *, KernelBase, 30, Kernel)
17 /* FUNCTION
18 Set values of internal system attributes
20 INPUTS
21 id - ID of the attribute to set. See KrnGetAttr() description for the
22 list of attributes and their meaning.
23 val - New value of the attribute
25 RESULT
26 Zero for success and nonzero for failure (unknown or read-only attribute or
27 bad value).
29 NOTES
30 Kernel attributes control various aspects of kernel's low-level functions.
31 The exact semantics of each attribute may vary from system to system.
32 Not all systems support all attributes.
34 Please do not alter these attributes from within user software, this will
35 not do any good things. This function is provided mainly for use by
36 other system components which exactly know what they do.
38 EXAMPLE
40 BUGS
42 SEE ALSO
43 KrnGetSystemAttr()
45 INTERNALS
47 ******************************************************************************/
49 AROS_LIBFUNC_INIT
51 switch (id)
53 #ifndef NO_VBLANK_EMU
54 case KATTR_VBlankEnable:
55 KernelBase->kb_VBlankEnable = val;
56 break;
57 #endif
59 default:
60 return -1;
63 return 0;
65 AROS_LIBFUNC_EXIT