Syscalls: Difference between revisions

From EX-word
Jump to navigation Jump to search
(Added parameter and return value details.)
(Added sub LCD system calls to the list.)
 
(6 intermediate revisions by the same user not shown)
Line 66: Line 66:
|[[Syscall:23]]||int x, int y, int w, int h, int amount||||Scrolls a rectangular region of VRAM vertically.
|[[Syscall:23]]||int x, int y, int w, int h, int amount||||Scrolls a rectangular region of VRAM vertically.
|-
|-
|[[Syscall:24]]||int x, int y, int length||||Draws a dotted horizontal line.
|[[Syscall:24]]||int x, int y, int length||||Draws a dotted horizontal line to VRAM.
|-
|[[Syscall:42]]||input *buf||||Resets a text input buffer and disables handwriting input.
|-
|[[Syscall:43]]||input *buf||||Draws a text input field to VRAM.
|-
|[[Syscall:44]]||input *buf, int *main, int ?||int error||Processes incoming keyboard or handwriting input and updates the text input buffer.
|-
|[[Syscall:45]]||input *buf||||Requests text input.
|-
|[[Syscall:4F]]||int x, int y, int index, int mode, image_xy **imgs||||Draws an image from an image list to VRAM at a specified (x, y) coordinate.
|-
|[[Syscall:50]]||int x, int y, int index, image_xy **imgs||||Clears an image in an image list from VRAM at a specified (x, y) coordinate.
|-
|[[Syscall:51]]||int x, int y, int index, image_xy **imgs||||Copies an image in an image list from VRAM to the LCD at a specified (x, y) coordinate.
|-
|[[Syscall:52]]||int index, int mode, image_xy **imgs||||Draws an image from an image list to VRAM.
|-
|[[Syscall:53]]||int index, image_xy **imgs||||Clears an image in an image list from VRAM.
|-
|[[Syscall:54]]||int index, image_xy **imgs||||Copies an image in an image list from VRAM to the LCD.
|-
|[[Syscall:55]]||int list||image_xy **imgs||Returns one of the system image lists.
|-
|[[Syscall:56]]||int alert, int mode||||Displays a system alert message.
|-
|[[Syscall:66]]||char *a, char *b||int index||Compares two strings and returns the index of the first different character.
|-
|[[Syscall:67]]||char *str||int length||Returns the length of a string in bytes.
|-
|[[Syscall:68]]||char *a, char *b||int difference||Compares two strings and returns 0 if they are the same, -1 if a<b or +1 if a>b.
|-
|[[Syscall:69]]||char *a, char *b||int difference||Compares string a and the reversed version of string b.
|-
|[[Syscall:6A]]||int file, int index, int bytes||int offset||Gets an offset from an offset file based on its index and number of bytes per offset.
|-
|[[Syscall:80]]||int show||||Shows or hides the ヒストリー ("history") icon.
|-
|[[Syscall:82]]||char *path||||Sets the path for the グイド ("guide") button's HTML file.
|-
|[[Syscall:8A]]||wchar *str||||Simplifies a hiragana string by removing dakuten and handakuten, enlargement of sokuon or yoon, replacing chooonpu with repeated vowels.
|-
|[[Syscall:98]]||wchar *chr||int changed||Converts a full-width hiragana character to half-width.
|-
|[[Syscall:99]]||wchar *chr||int changed||Converts a half-width hiragana character to full-width.
|-
|[[Syscall:9A]]||wchar *chr||int changed||Converts a single-byte half-width katakana character to its double-byte equivalent.
|-
|[[Syscall:9B]]||wchar *chr||int changed||Converts a full-width katakana character to half-width.
|-
|[[Syscall:9C]]||wchar *chr||int changed||Converts a half-width katakana character to full-width.
|-
|[[Syscall:9D]]||wchar *chr||int changed||Converts a full-width Greek character to half-width.
|-
|[[Syscall:9E]]||wchar *chr||int changed||Converts a half-width Greek character to full-width.
|-
|[[Syscall:9F]]||wchar *chr, int ?||int changed||Converts full width punctuation characters to half-width.
|-
|[[Syscall:A0]]||wchar chr||int result||Checks if a character is Greek.
|-
|[[Syscall:A1]]||wchar chr, int single||int result||Checks if a character is katakana.
|-
|[[Syscall:A2]]||wchar chr||int result||Checks if a character is hiragana.
|-
|[[Syscall:A3]]||wchar chr, int fullwidth||int result||Checks if a character is alphabetic.
|-
|[[Syscall:A4]]||wchar chr, int fullwidth||int result||Checks if a character is a digit.
|-
|[[Syscall:A5]]||wchar *chr, int fullwidth||int changed||Converts a single-byte digit to its double-byte equivalent.
|-
|[[Syscall:A6]]||wchar *chr, int fullwidth||int changed||Converts an alphabetic character to lowercase.
|-
|[[Syscall:A9]]||char *str||||Converts a multibyte string from hiragana to katakana.
|-
|[[Syscall:AA]]||char *str||||Converts a multibyte string from katakana to hiragana.
|-
|[[Syscall:B4]]||byte value, int maximum||||Displays a progress dialog box.
|-
|[[Syscall:BC]]||wchar *str||||Replaces chooonpu in a hiragana string with repeated vowels.
|-
|[[Syscall:C1]]||||||Draws the split-screen search banner.
|-
|[[Syscall:114]]||char *src, char *dest, int ?||int length||Removes accents from a multibyte string.
|-
|[[Syscall:115]]||handwriting *buf||||Resets a handwriting buffer and selects it as the current one.
|-
|[[Syscall:116]]||handwriting *buf||||Selects a handwriting buffer, updates the current handwriting script and displays the appropriate icons on the screen.
|-
|[[Syscall:117]]||int script||int error||Sets the current handwriting script.
|-
|[[Syscall:118]]||||int script||Gets the current handwriting script.
|-
|[[Syscall:119]]||||||Draws the icons for the current handwriting script on the screen.
|-
|[[Syscall:11A]]||||||Preserves the area of VRAM where the icons for the current handwriting script would be drawn.
|-
|[[Syscall:11B]]||||||Restores the area of VRAM where the icons for the current handwriting script were drawn.
|-
|[[Syscall:11C]]||handwriting *buf, int hiragana||||Switches the handwriting buffer to either hiragana or accented alphabetic input, selects it as the current buffer and displays the appropriate icons on the screen.
|-
|[[Syscall:11E]]||handwriting *buf||||Resets a handwriting buffer but does not select it as the current one.
|-
|[[Syscall:124]]||int x, int y, font *c||int w||Prints a single character to sub LCD VRAM.
|-
|[[Syscall:125]]||int x, int y, char *s, font *f||int w||Prints a string to sub LCD VRAM.
|-
|[[Syscall:126]]||||||Clears the sub LCD VRAM.
|-
|[[Syscall:127]]||||||Copies all of VRAM to the sub LCD.
|-
|[[Syscall:128]]||int x1, int y1, int x2, int y2||||Draws a line on the sub LCD's VRAM.
|-
|[[Syscall:129]]||int x, int y, int w, int h||||Copies a rectangular region of VRAM to the sub LCD.
|-
|[[Syscall:12A]]||int x, int y, int w, int h||||Clears a rectangular region of sub LCD VRAM.
|-
|[[Syscall:12B]]||int x, int y, int w, int h||||Inverts a rectangular region of sub LCD VRAM.
|-
|[[Syscall:12C]]||int x, int y, int w, int h||||Fades a rectangular region of sub LCD VRAM.
|-
|[[Syscall:12D]]||int x, int y, image *img||||Draws an image at a specified (x, y) coordinate to sub LCD VRAM.
|-
|[[Syscall:12E]]||int x, int y, int index, image_xy **imgs||||Copies an image in an image list from VRAM to the sub LCD at a specified (x, y) coordinate.
|-
|[[Syscall:12F]]||void (*)(), ushort *||||Registers a callback to update the sub LCD and defines a list of touch regions on the sub LCD.
|-
|[[Syscall:130]]||short *x, short *y, short held||int zone||Gets the last touch event from the sub LCD.
|-
|[[Syscall:131]]||short zone, short x, short y||int inside||Determines if a particular (x, y) coordinate is still inside a particular sub LCD touch region.
|-
|[[Syscall:133]]||||||Enables the sub LCD.
|-
|[[Syscall:134]]||||||Disables the sub LCD.
|-
|-
|}
|}

Latest revision as of 05:21, 14 May 2024

Syscall Parameters Returns Summary
Syscall:0 Copies all of VRAM to the LCD.
Syscall:1 int x, int y, int w, int h Copies a rectangular region of VRAM to the LCD.
Syscall:2 int x, int y, int w, int h, byte ? Draws a line.
Syscall:3 int x, int y, int w, int h Draws a line.
Syscall:4 int x, int y, int w, int h Draws a line.
Syscall:5 int x, int y, int w, int h Draws a line.
Syscall:6 int x1, int y1, int x2, int y2, byte ? Draws a line.
Syscall:7 Clears VRAM.
Syscall:8 int x, int y, int w, int h Inverts a rectangular region of VRAM.
Syscall:9 int x, int y, int w, int h Fades a rectangular region of VRAM.
Syscall:A int x, int y, int w, int h Clears a rectangular region of VRAM.
Syscall:B int x, int y, int w, int h, byte *dest Copies a region of VRAM to main memory.
Syscall:C int x, int y, int w, int h, byte border Inverts a rectangular region of the screen then clears an inner portion.
Syscall:D int x, int y, image *img Draws an image at a specified (x, y) coordinate to VRAM.
Syscall:E int x, int y, image *img, int mode Draws an image at a specified (x, y) coordinate to VRAM with special operations.
Syscall:F int x, int y, image *img Draws a faded image at a specified (x, y) coordinate to VRAM.
Syscall:10 int x, int y, int w, int h int success Preserves then clears a rectangular region of VRAM.
Syscall:11 Restores the previously-preserved rectangular region of VRAM.
Syscall:12 int delay Delays for a short while.
Syscall:13 void (*)() callback Registers a callback function to run when switching out of the add-on.
Syscall:14 char *path, char *? Gets the current application's path.
Syscall:15 char *id, char *? Gets the current application's ID.
Syscall:1A int x, int y, font *c int w Prints a single character to VRAM.
Syscall:1B int x, int y, char *s, font *f int w Prints a string to VRAM.
Syscall:1C int *w, int *h, font *c int error Measures a single character.
Syscall:1D int x, int y, image *img, int mode, int background Draws an image at a specified (x, y) coordinate to VRAM with plotting mode and background options.
Syscall:1E int icon, int mode Draws a system icon to VRAM.
Syscall:1F int icon Clears a system icon from VRAM.
Syscall:20 int x, int y, int icon, int mode Draws a system icon at a specified (x, y) coordinate to VRAM.
Syscall:21 int icon Copies a system icon's region of VRAM to the LCD.
Syscall:22 int icon, int x, int y Copies a system icon's region of VRAM to the LCD at a specified (x, y) coordinate.
Syscall:23 int x, int y, int w, int h, int amount Scrolls a rectangular region of VRAM vertically.
Syscall:24 int x, int y, int length Draws a dotted horizontal line to VRAM.
Syscall:42 input *buf Resets a text input buffer and disables handwriting input.
Syscall:43 input *buf Draws a text input field to VRAM.
Syscall:44 input *buf, int *main, int ? int error Processes incoming keyboard or handwriting input and updates the text input buffer.
Syscall:45 input *buf Requests text input.
Syscall:4F int x, int y, int index, int mode, image_xy **imgs Draws an image from an image list to VRAM at a specified (x, y) coordinate.
Syscall:50 int x, int y, int index, image_xy **imgs Clears an image in an image list from VRAM at a specified (x, y) coordinate.
Syscall:51 int x, int y, int index, image_xy **imgs Copies an image in an image list from VRAM to the LCD at a specified (x, y) coordinate.
Syscall:52 int index, int mode, image_xy **imgs Draws an image from an image list to VRAM.
Syscall:53 int index, image_xy **imgs Clears an image in an image list from VRAM.
Syscall:54 int index, image_xy **imgs Copies an image in an image list from VRAM to the LCD.
Syscall:55 int list image_xy **imgs Returns one of the system image lists.
Syscall:56 int alert, int mode Displays a system alert message.
Syscall:66 char *a, char *b int index Compares two strings and returns the index of the first different character.
Syscall:67 char *str int length Returns the length of a string in bytes.
Syscall:68 char *a, char *b int difference Compares two strings and returns 0 if they are the same, -1 if a<b or +1 if a>b.
Syscall:69 char *a, char *b int difference Compares string a and the reversed version of string b.
Syscall:6A int file, int index, int bytes int offset Gets an offset from an offset file based on its index and number of bytes per offset.
Syscall:80 int show Shows or hides the ヒストリー ("history") icon.
Syscall:82 char *path Sets the path for the グイド ("guide") button's HTML file.
Syscall:8A wchar *str Simplifies a hiragana string by removing dakuten and handakuten, enlargement of sokuon or yoon, replacing chooonpu with repeated vowels.
Syscall:98 wchar *chr int changed Converts a full-width hiragana character to half-width.
Syscall:99 wchar *chr int changed Converts a half-width hiragana character to full-width.
Syscall:9A wchar *chr int changed Converts a single-byte half-width katakana character to its double-byte equivalent.
Syscall:9B wchar *chr int changed Converts a full-width katakana character to half-width.
Syscall:9C wchar *chr int changed Converts a half-width katakana character to full-width.
Syscall:9D wchar *chr int changed Converts a full-width Greek character to half-width.
Syscall:9E wchar *chr int changed Converts a half-width Greek character to full-width.
Syscall:9F wchar *chr, int ? int changed Converts full width punctuation characters to half-width.
Syscall:A0 wchar chr int result Checks if a character is Greek.
Syscall:A1 wchar chr, int single int result Checks if a character is katakana.
Syscall:A2 wchar chr int result Checks if a character is hiragana.
Syscall:A3 wchar chr, int fullwidth int result Checks if a character is alphabetic.
Syscall:A4 wchar chr, int fullwidth int result Checks if a character is a digit.
Syscall:A5 wchar *chr, int fullwidth int changed Converts a single-byte digit to its double-byte equivalent.
Syscall:A6 wchar *chr, int fullwidth int changed Converts an alphabetic character to lowercase.
Syscall:A9 char *str Converts a multibyte string from hiragana to katakana.
Syscall:AA char *str Converts a multibyte string from katakana to hiragana.
Syscall:B4 byte value, int maximum Displays a progress dialog box.
Syscall:BC wchar *str Replaces chooonpu in a hiragana string with repeated vowels.
Syscall:C1 Draws the split-screen search banner.
Syscall:114 char *src, char *dest, int ? int length Removes accents from a multibyte string.
Syscall:115 handwriting *buf Resets a handwriting buffer and selects it as the current one.
Syscall:116 handwriting *buf Selects a handwriting buffer, updates the current handwriting script and displays the appropriate icons on the screen.
Syscall:117 int script int error Sets the current handwriting script.
Syscall:118 int script Gets the current handwriting script.
Syscall:119 Draws the icons for the current handwriting script on the screen.
Syscall:11A Preserves the area of VRAM where the icons for the current handwriting script would be drawn.
Syscall:11B Restores the area of VRAM where the icons for the current handwriting script were drawn.
Syscall:11C handwriting *buf, int hiragana Switches the handwriting buffer to either hiragana or accented alphabetic input, selects it as the current buffer and displays the appropriate icons on the screen.
Syscall:11E handwriting *buf Resets a handwriting buffer but does not select it as the current one.
Syscall:124 int x, int y, font *c int w Prints a single character to sub LCD VRAM.
Syscall:125 int x, int y, char *s, font *f int w Prints a string to sub LCD VRAM.
Syscall:126 Clears the sub LCD VRAM.
Syscall:127 Copies all of VRAM to the sub LCD.
Syscall:128 int x1, int y1, int x2, int y2 Draws a line on the sub LCD's VRAM.
Syscall:129 int x, int y, int w, int h Copies a rectangular region of VRAM to the sub LCD.
Syscall:12A int x, int y, int w, int h Clears a rectangular region of sub LCD VRAM.
Syscall:12B int x, int y, int w, int h Inverts a rectangular region of sub LCD VRAM.
Syscall:12C int x, int y, int w, int h Fades a rectangular region of sub LCD VRAM.
Syscall:12D int x, int y, image *img Draws an image at a specified (x, y) coordinate to sub LCD VRAM.
Syscall:12E int x, int y, int index, image_xy **imgs Copies an image in an image list from VRAM to the sub LCD at a specified (x, y) coordinate.
Syscall:12F void (*)(), ushort * Registers a callback to update the sub LCD and defines a list of touch regions on the sub LCD.
Syscall:130 short *x, short *y, short held int zone Gets the last touch event from the sub LCD.
Syscall:131 short zone, short x, short y int inside Determines if a particular (x, y) coordinate is still inside a particular sub LCD touch region.
Syscall:133 Enables the sub LCD.
Syscall:134 Disables the sub LCD.