SwKbd 3DS: Difference between revisions

From GameBrew
(Created page with "{{Infobox-3DS-Homebrews | title = SwKbd | image = https://dlhb.gamebrew.org/3dshomebrew/SwKbd-3DS.jpg|250px | type = Utilities | version = 2014 | lastupdated = 2014/12/19 | li...")
 
No edit summary
Line 1: Line 1:
{{Infobox-3DS-Homebrews
{{Infobox-3DS-Homebrews
| title = SwKbd
| title = SwKbd
| image = https://dlhb.gamebrew.org/3dshomebrew/SwKbd-3DS.jpg|250px
| image = https://dlhb.gamebrew.org/3dshomebrew/swkbd.png|250px
| type = Utilities
| type = Utilities
| version = 2014
| version = 2014
Line 8: Line 8:
| author = nop90
| author = nop90
| website = https://github.com/nop90/SwKbd
| website = https://github.com/nop90/SwKbd
| download = https://dlhb.gamebrew.org/3dshomebrew/SwKbd-3DS.rar
| download = https://dlhb.gamebrew.org/3dshomebrew/SwKbd.7z
| source = https://github.com/nop90/SwKbd
| source = https://github.com/nop90/SwKbd
}}
}}
<youtube></youtube>
<youtube></youtube>


SwKbd
==SwKbd==
=====
3DS Custom Software Keyboard Module - by NOP90 - 2014.
3DS Custom Software Keyboard Module - by NOP90 - 2014
 
This is a custom software keyboard I coded in my 3DS file manager project SDiSS.
This is a custom software keyboard I coded in my 3DS file manager project SDiSS.
3DS has a standard swkbd module, but using it is still problematic, so I wrote my own.
3DS has a standard swkbd module, but using it is still problematic, so I wrote my own.
The advantage of this module is that it's skinnable.
The advantage of this module is that it's skinnable.
Commands
 
=====
==Commands==
- A: ends input
* A: ends input
- B: delete a char (backspace)
* B: delete a char (backspace)
- X: clear buffer
* X: clear buffer
- Left and Right arrows: move cursor
* Left and Right arrows: move cursor
- Touchpad: use the keyboard
* Touchpad: use the keyboard
Sources
 
=====
==Sources==
 
the module is composed of 4 files
the module is composed of 4 files
- swkbd.c (main code)
 
- swkbd.h (header)
* swkbd.c (main code)
- kbd_default.h (embedded default bmp with a basic keyboard layout)
* swkbd.h (header)
- swkbfont.h (embedded font)
* kbd_default.h (embedded default bmp with a basic keyboard layout)
* swkbfont.h (embedded font)


The others source file are for the demo app.
The others source file are for the demo app.
How to use
 
=====
==How to use==
the code is provided with a very simple application that shows most of the functionalities. There are no comments, but I think that usage is self explanatory. If not, contact Nop90 on gbatemp.net
The code is provided with a very simple application that shows most of the functionalities. There are no comments, but I think that usage is self explanatory. If not, contact Nop90 on gbatemp.net.
 
To try the demo app, put in the 3DS SD root keyboard.bmp and MarioBG.BMP provided in the sdmc dir, otherwise default kbd layout and plain black background for top screen will be displayed.
To try the demo app, put in the 3DS SD root keyboard.bmp and MarioBG.BMP provided in the sdmc dir, otherwise default kbd layout and plain black background for top screen will be displayed.
You can try the compiled file with an emulator too. I use 3DMoo, but the touchpad is not well emulated yet.
You can try the compiled file with an emulator too. I use 3DMoo, but the touchpad is not well emulated yet.
I tested on a real 3DS only the CIA file with a CFW enviroment.
I tested on a real 3DS only the CIA file with a CFW enviroment.
Note:
 
The calling app has to initialize 3DS services and the swkbd module.
'''Note:''' The calling app has to initialize 3DS services and the swkbd module.
Dependancies
 
=====
==Dependancies==
The module includes only standard C libs and ctrulib. Compile the sources with devkit pro and the last version of ctrulib.
The module includes only standard C libs and ctrulib. Compile the sources with devkit pro and the last version of ctrulib.
The code has an embedded font (fixed size 12x16 pixel) and an embedded image of a basic keyboard layout.
The code has an embedded font (fixed size 12x16 pixel) and an embedded image of a basic keyboard layout.
ToDo (very low priority)
 
=====
==ToDo (very low priority)==
- option to disable a list of keys (i.e. for invalid chars when getting the input for renaming a file)
* option to disable a list of keys (i.e. for invalid chars when getting the input for renaming a file)
- adding sounds on key press
* adding sounds on key press


[[Category:3DS homebrew applications]]
[[Category:3DS homebrew applications]]
[[Category:Homebrew utility applications on 3DS]]
[[Category:Homebrew utility applications on 3DS]]

Revision as of 11:07, 28 September 2021

Template:Infobox-3DS-Homebrews '"`UNIQ--youtube-00000000-QINU`"'

SwKbd

3DS Custom Software Keyboard Module - by NOP90 - 2014.

This is a custom software keyboard I coded in my 3DS file manager project SDiSS. 3DS has a standard swkbd module, but using it is still problematic, so I wrote my own.

The advantage of this module is that it's skinnable.

Commands

  • A: ends input
  • B: delete a char (backspace)
  • X: clear buffer
  • Left and Right arrows: move cursor
  • Touchpad: use the keyboard

Sources

the module is composed of 4 files

  • swkbd.c (main code)
  • swkbd.h (header)
  • kbd_default.h (embedded default bmp with a basic keyboard layout)
  • swkbfont.h (embedded font)

The others source file are for the demo app.

How to use

The code is provided with a very simple application that shows most of the functionalities. There are no comments, but I think that usage is self explanatory. If not, contact Nop90 on gbatemp.net.

To try the demo app, put in the 3DS SD root keyboard.bmp and MarioBG.BMP provided in the sdmc dir, otherwise default kbd layout and plain black background for top screen will be displayed.

You can try the compiled file with an emulator too. I use 3DMoo, but the touchpad is not well emulated yet.

I tested on a real 3DS only the CIA file with a CFW enviroment.

Note: The calling app has to initialize 3DS services and the swkbd module.

Dependancies

The module includes only standard C libs and ctrulib. Compile the sources with devkit pro and the last version of ctrulib.

The code has an embedded font (fixed size 12x16 pixel) and an embedded image of a basic keyboard layout.

ToDo (very low priority)

  • option to disable a list of keys (i.e. for invalid chars when getting the input for renaming a file)
  • adding sounds on key press

Advertising: