SwKbd 3DS: Difference between revisions

From GameBrew
m (Text replacement - "| licence" to "| license")
m (Text replacement - "Category:Homebrew utility applications on 3DS" to "")
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox 3DS Homebrews
{{Infobox 3DS Homebrews
| title = SwKbd
|title=SwKbd
| image = swkbd.png|250px
|image=swkbd.png
| type = Utilities
|description=3DS Custom Software Keyboard Module
| version = 2014
|author=nop90
| lastupdated = 2014/12/19
|lastupdated=2014/12/19
| license = Mixed
|type=Utilities
| author = nop90
|version=2014
| website = https://github.com/nop90/SwKbd
|license=Mixed
| download = https://dlhb.gamebrew.org/3dshomebrew/SwKbd.7z
|download=https://dlhb.gamebrew.org/3dshomebrews/swkbd.7z
| source = https://github.com/nop90/SwKbd
|website=https://github.com/nop90/SwKbd
|source=https://github.com/nop90/SwKbd
}}
}}
==SwKbd==
SwKbd is a 3DS Custom Software Keyboard Module coded in 3DS file manager project SDiSS, created by nop90.
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 demo of the module that shows most of the functionalities and also able to load a custom layout image.
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.
==Installation==
===Installing===
Demo app is available in 3DSX and CIA format.


==Commands==
===Building===
* A: ends input
The module is composed of 4 files:
* B: delete a char (backspace)
* swkbd.c (main code).
* X: clear buffer
* swkbd.h (header).
* Left and Right arrows: move cursor
* kbd_default.h (embedded default bmp with a basic keyboard layout).
* Touchpad: use the keyboard
* swkbfont.h (embedded font).


==Sources==
The others source file are for the demo app.
 
You can try the compiled file with an emulator aslo (tested with 3DMoo, but the touchpad is not well emulated yet).
 
===Dependancies===
The module includes only standard C libs and ctrulib. Compile the sources with devkit pro and the last version of ctrulib.


the module is composed of 4 files
The code has an embedded font (fixed size 12x16 pixel) and an embedded image of a basic keyboard layout.


* swkbd.c (main code)
==User guide==
* swkbd.h (header)
The module has an embedded image with a basic kbd layout in black and white, but it's possible to load a custom layout image.
* kbd_default.h (embedded default bmp with a basic keyboard layout)
* swkbfont.h (embedded font)


The others source file are for the demo app.
You can use keyboard.bmp as a template for your custom layout.
 
Put it in the 3DS sd root to test it in the demo app. Put in the same place MarioBG.bmp file for a top screen background.


==How to use==
'''Note:''' The calling app has to initialize 3DS services and the swkbd module.
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.
==Controls==
A - End input


You can try the compiled file with an emulator too. I use 3DMoo, but the touchpad is not well emulated yet.
B - Delete a char (backspace)


I tested on a real 3DS only the CIA file with a CFW enviroment.
X - Clear buffer


'''Note:''' The calling app has to initialize 3DS services and the swkbd module.
Left/Right - Move cursor


==Dependancies==
Touchpad - Use the keyboard
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.
==Compatibility==
Tested by the author with a CFW enviroment on a real 3DS (CIA) and on 3DMoo (ELF).


==ToDo (very low priority)==
==Known issues==
* option to disable a list of keys (i.e. for invalid chars when getting the input for renaming a file)
On 3DMoo the touch pad doesn't work well, 25% of the pad (right side) doesn't get the input and when you release the mouse button the pad state is not cleared, so to release a keypress on the swkbd you have to click outside the keyboard area.
* adding sounds on key press


[[Category:3DS homebrew applications]]
==External links==
[[Category:Homebrew utility applications on 3DS]]
* GitHub - https://github.com/nop90/SwKbd
* GBAtemp - https://gbatemp.net/threads/homebrew-nop90-swkbd-custom-software-keyboard-module.376502
* GBAtemp - https://gbatemp.net/threads/swkbd-software-keyboard-research-thread.413263

Latest revision as of 05:46, 6 May 2024

SwKbd
Swkbd.png
General
Authornop90
TypeUtilities
Version2014
LicenseMixed
Last Updated2014/12/19
Links
Download
Website
Source

SwKbd is a 3DS Custom Software Keyboard Module coded in 3DS file manager project SDiSS, created by nop90.

This is a demo of the module that shows most of the functionalities and also able to load a custom layout image.

Installation

Installing

Demo app is available in 3DSX and CIA format.

Building

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.

You can try the compiled file with an emulator aslo (tested with 3DMoo, but the touchpad is not well emulated yet).

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.

User guide

The module has an embedded image with a basic kbd layout in black and white, but it's possible to load a custom layout image.

You can use keyboard.bmp as a template for your custom layout.

Put it in the 3DS sd root to test it in the demo app. Put in the same place MarioBG.bmp file for a top screen background.

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

Controls

A - End input

B - Delete a char (backspace)

X - Clear buffer

Left/Right - Move cursor

Touchpad - Use the keyboard

Compatibility

Tested by the author with a CFW enviroment on a real 3DS (CIA) and on 3DMoo (ELF).

Known issues

On 3DMoo the touch pad doesn't work well, 25% of the pad (right side) doesn't get the input and when you release the mouse button the pad state is not cleared, so to release a keypress on the swkbd you have to click outside the keyboard area.

External links

Advertising: