Difference between revisions of "Template:Syscall"

From WikiPrizm
Jump to navigationJump to search
Line 18: Line 18:
 
| signature = void FakeSyscall(void)
 
| signature = void FakeSyscall(void)
 
| header = syscall_example.h
 
| header = syscall_example.h
| parameters = None!
+
| comments = This syscall does '''nothing'''.
|
 
 
}}</nowiki>
 
}}</nowiki>
This will fill in the template contents when you save the page.
+
Will render as follows:
 +
<div style="border:1px solid black; padding:0 1em">
 +
{{syscall
 +
| name = FakeSyscall
 +
| index = 0x0000
 +
| signature = void FakeSyscall(void)
 +
| header = syscall_example.h
 +
| comments = This syscall does '''nothing'''.
 +
}}
 +
</div>
  
 
Further information on template usage can be found in the [https://en.wikibooks.org/wiki/MediaWiki_User_Guide/Templates MediaWiki User Guide].
 
Further information on template usage can be found in the [https://en.wikibooks.org/wiki/MediaWiki_User_Guide/Templates MediaWiki User Guide].
Line 32: Line 40:
 
We can see that the index of this one is 0x25F, then.
 
We can see that the index of this one is 0x25F, then.
 
</noinclude>
 
</noinclude>
{{DISPLAYTITLE:{{{name}}}}}
+
<includeonly>{{DISPLAYTITLE:{{{name}}}}}== Synopsis ==
== Synopsis ==
 
 
'''Header:''' {{{header|}}}
 
'''Header:''' {{{header|}}}
 
 
'''Syscall index:''' {{{index|[[Template:Syscall#Finding_information|Unknown]]}}}
 
'''Syscall index:''' {{{index|[[Template:Syscall#Finding_information|Unknown]]}}}
 
 
'''Function signature:''' {{{signature|[[Template:Syscall#Finding_information|Unknown]]}}}
 
'''Function signature:''' {{{signature|[[Template:Syscall#Finding_information|Unknown]]}}}
  
Line 64: Line 69:
 
| }}
 
| }}
  
<includeonly>[[Category:Syscalls|{{{1}}}]]</includeonly>
+
[[Category:Syscalls|{{{1}}}]]</includeonly>

Revision as of 16:30, 14 May 2012

Usage notes

This template takes a number of arguments. The following should be included for all routines:

  • Name
  • Index (the number of the call)
  • Function signature
  • Header containing the prototype (in libfxcg)

The remaining arguments will be used to form the contents of sections of the same name, which will not be shown if not provided:

  • Parameters
  • Returns
  • Comments
  • Example

You'll probably want to do a straight-up inclusion of the template into pages for ease of editing. For example:

{{syscall
| name = FakeSyscall
| index = 0x0000
| signature = void FakeSyscall(void)
| header = syscall_example.h
| comments = This syscall does '''nothing'''.
}}

Will render as follows:

Synopsis

Header: syscall_example.h Syscall index: 0x0000 Function signature: void FakeSyscall(void)



Comments

This syscall does nothing.

Further information on template usage can be found in the MediaWiki User Guide.

Finding information

If you're documenting syscalls that are already in libfxcg but don't know the index, you can find it by looking at the source. Each call is in its own file. For example, the definition for Bdisp_PutDisp_DD is in libfxcg/syscalls/Bdisp_PutDisp_DD.S, which looks like this:

#include <asm.h>

SYSCALL(_Bdisp_PutDisp_DD, 0x025F)

We can see that the index of this one is 0x25F, then.