gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS homebrew announcements > BLARGH Text Editor

#153968 - anomalous_underdog - Tue Apr 08, 2008 7:17 pm

Hi. If any of you own a Nintendo DS, I made an on-screen keyboard using hex-shaped keys instead of rectangular ones. It uses the QUONG layout made by http://www.strout.net/info/ideas/hexinput.html

If you're familiar with the FUNADY keyboard layout for the palm PDA, its kinda like that.

from the hexinput article:

  1. You can input a letter by tapping it, or by dragging to it from a neighboring letter.
  2. Letters are arranged in a hexagonal grid so that every one has six neighbors, and all neighbors are equally easy to reach.
  3. Letters are arranged to optimize text input in a particular language (English, in this case).



[Images not permitted - Click here to view it]

[Images not permitted - Click here to view it]



http://anomalousunderdog.blogspot.com/search/label/QuongKeyboard

project page: http://sharesource.org/project/blarghtexteditor/


ok, as for the limitations:

  • its only a demo, you won't be able to save/load the typed text (although I will use this program to make an actual text editor)
  • the text cursor doesn't blink yet
  • the upper screen is currently used for debug. in the future, that area will be used as non-monospaced text display too
  • cut, copy, paste of text not yet implemented
  • no unicode support yet
  • the other buttons in the gui do not do anything yet; they are conceptual
  • no word-wrap yet



if any of you experience any crashes, tell me.


current release: revision 103

http://dl.sharesource.org/blarghtexteditor/blarghtexteditor.r103.zip
http://www.zshare.net/download/11528400d5b3077e/

the source code is also available (licensed in GPL v3):

http://dl.sharesource.org/blarghtexteditor/blarghtexteditor.src.r103.zip


since I'm lazy I'll just paste the SVN logs that I've put since the last release
Quote:

Revision: 103
Author: anomalous_underdog
Date: 2008-May-04 22.25.16
Message:
Added placeholder values for cut, copy, paste, home, end, undo, redo, and search.

----
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/HexGrid.cpp
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/HexGrid.h
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/TextBox.cpp
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/TextBox.h


Revision: 102
Author: anomalous_underdog
Date: 2008-May-04 22.17.34
Message:
Added unit tests for the bugs in textbox concerning word-wrapped lines.

----
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Tests/TestTextBox.cpp


Revision: 101
Author: anomalous_underdog
Date: 2008-May-04 01.48.29
Message:
Bugfix: When backspacing the topleft-most character, the text should scroll upwards.

Also updated todo file.

----
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/TaskCoachFile.tsk
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/TextBox.cpp


Revision: 100
Author: anomalous_underdog
Date: 2008-May-04 00.31.11
Message:
Bugfix: When inserting a newline while in a word-wrapped line, and the cursor is at the beginning of a display line, the graphical cursor should not move anywhere.

Also updated todo file.

----
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/TaskCoachFile.tsk
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/TextBox.cpp


Revision: 99
Author: anomalous_underdog
Date: 2008-May-04 00.17.37
Message:
Bugfix: TextBox::mLineData would have elements more than the available display lines.

Bugfix: Graphical cursor would move up when inserting new chars when they shouldn't have.

Bugfix: Made sure graphical cursor doesn't get stuck to a position somewhere beyond what is possible (when backspacing at the end of a word-wrapped line wherein the backspacing made the line not word-wrapped anymore). (I simply brought back the code removed in r98).

Bugfix: Now TextBox::clearLeftOverSpace() is always called on every call to TextBox::refreshTextDisplay(). This is to ensure display lines that should be cleared are cleared.

Refactoring: Added private function TextBox::whichDisplayLineCursorIsIn()

----
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/TextBox.cpp
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/TextBox.h


Revision: 98
Author: anomalous_underdog
Date: 2008-May-03 19.45.23
Message:
Bugfix: When inserting a char at the end of text, and the line became word-wrapped because of that newly inserted char, the cursor was not getting updated properly. Additionaly, if that caused a vertical scroll down, the line wouldn't get cleared.

Bugfix: When inserting a new char at the beggining of a display line, but that display line is part of word-wrapped line: if the char to insert was thin enough, it would be displayed at the line above, so the cursor should go upwards too, instead it stayed where it was.

Bugfix: The first TextLine was not getting the proper offset value if vertical scrolling had occured.

Refactoring: TextBox::isCursorInAWordWrappedLine() now uses TextLine data

Refactoring: TextBox::moveTextCursorToEndOfPrevLine() has a new override function, one that uses TextLine data. TextBox::moveTextCursorLeft(const s16) makes use of this.

TextLine::length now no longer includes the newline in its value

----
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/TextBox.cpp
Modified : /branches/BLARGHTextEditor-UsingLineData/BLARGHTextEditor/source/Underdog/Gui/TextBox.h



Last edited by anomalous_underdog on Sun May 04, 2008 7:57 pm; edited 7 times in total

#153975 - pas - Tue Apr 08, 2008 9:13 pm

Good job ! I'll try it out soon, hope it includes a easy to use interface, but I'm almost sure from looking at the screenshot.


BTW: This was said to get implemented in DSOrganize too... until DM quit the thing :(.

Maybe you could .... ?
_________________
Starcraft DS ?

#154004 - anomalous_underdog - Wed Apr 09, 2008 9:05 am

pas wrote:
Good job ! I'll try it out soon, hope it includes a easy to use interface, but I'm almost sure from looking at the screenshot.


BTW: This was said to get implemented in DSOrganize too... until DM quit the thing :(.

Maybe you could .... ?


Yeah, actually lack of DSOrganize's hexinput support was what made me do this in the first place. I can make a patch and upload a modified DSOrganize 3.2 somewhere, I'll try it in the weekend.

I can't guarantee that it'll get integrated in the official release though. I've read how Shaun Taylor reacts to suggestions. He can get.. haughty. He's said it himself that he doesn't like other people touching his source code.

#154016 - pas - Wed Apr 09, 2008 1:02 pm

you could also release a plugin for older DSO releases since 3.2 was the most unstable of all anyway.
_________________
Starcraft DS ?

#154019 - anomalous_underdog - Wed Apr 09, 2008 3:09 pm

pas wrote:
you could also release a plugin for older DSO releases since 3.2 was the most unstable of all anyway.


which specific version do you want me to look into? I don't know which one is considered most stable

the only problem I had with 3.2 is that the shift and caps don't get toggled properly often. since I'm there already I might try making a quick fix for that.


Last edited by anomalous_underdog on Wed Apr 09, 2008 6:34 pm; edited 2 times in total

#154022 - Dudu.exe - Wed Apr 09, 2008 4:47 pm

fantastic keyboard!
_________________
http://flickr.com/photos/stuffbox

#154028 - anomalous_underdog - Wed Apr 09, 2008 6:31 pm

Dudu.exe wrote:
fantastic keyboard!


you have Joe Strout to thank for that!

#154037 - jetboy - Wed Apr 09, 2008 9:20 pm

WOW!
I like the concept of hexagonal keyboard!
_________________
Colors! gallery -> http://colors.collectingsmiles.com
Any questions? Try http://colors.collectingsmiles.com/faq.php first, or official forums http://forum.brombra.net

#154041 - Falafel - Wed Apr 09, 2008 11:05 pm

anomalous_underdog wrote:
pas wrote:
you could also release a plugin for older DSO releases since 3.2 was the most unstable of all anyway.


which specific version do you want me to look into? I don't know which one is considered most stable

the only problem I had with 3.2 is that the shift and caps don't get toggled properly often. since I'm there already I might try making a quick fix for that.


I would love to have that keyboard in dso, but also in version 3.112 (or something like that anyway) because I get guru-meditation faults all the time when I run DSO 3.2.

#154085 - pas - Thu Apr 10, 2008 8:06 pm

anomalous_underdog wrote:
pas wrote:
you could also release a plugin for older DSO releases since 3.2 was the most unstable of all anyway.


which specific version do you want me to look into? I don't know which one is considered most stable

the only problem I had with 3.2 is that the shift and caps don't get toggled properly often. since I'm there already I might try making a quick fix for that.


I'd suggest you modify the source of 3.1129 (Birthday release, although my number memory my be wrong I'm 100% sure the Birthday release was the last stable one.

I'll try this now.
_________________
Starcraft DS ?

#154110 - Cid2Mizard - Fri Apr 11, 2008 7:51 am

Link dead for the last revision :(
_________________
www.nintendomax.com 100% Hack 0% Warez

#154139 - pas - Fri Apr 11, 2008 9:57 pm

Mirror: http://www.fileden.com/files/2007/12/14/1643883/BLARGHTextEditor.nds
_________________
Starcraft DS ?

#154309 - anomalous_underdog - Mon Apr 14, 2008 4:18 pm

Cid2Mizard wrote:
Link dead for the last revision :(


which one? the source code or the .nds file? I tried it out now, its working. Probably the sharesource server was down for a while or something.

#154312 - pas - Mon Apr 14, 2008 4:31 pm

BTW: Did you look into DSO's Source ? Hard or easy to get along ?
_________________
Starcraft DS ?

#154315 - anomalous_underdog - Mon Apr 14, 2008 5:31 pm

pas wrote:
BTW: Did you look into DSO's Source ? Hard or easy to get along ?


Hard. I'm no coding guru.

I'm sorry to those who were expecting me to add hexinput on DSOrganize.

I took a look. While its possible, the source code is so convoluted, I might as well start from scratch (I have distant plans for that). I really have better ideas on how to waste my time. Its no wonder dragonminded himself gave up on adding hexinput back then.

However, the BLARGH Text Editor I'm working on and DSOrganize are both licensed in GPL, so anyone willing enough is free to have a look at my source code and somehow put it in DSOrganize.

#154317 - anomalous_underdog - Mon Apr 14, 2008 5:38 pm

BLARGH Text Editor rev81 released:
- shift and caps lock now works
- vertical scrolling of text now works (but still has bugs)

http://dl.sharesource.org/blarghtexteditor/blarghtexteditor.r81.zip
http://dl.sharesource.org/blarghtexteditor/blarghtexteditor.src.r82.zip

#154318 - pas - Mon Apr 14, 2008 6:34 pm

nice I will try it every minute !

And, I think this project can stay as a texteditor and as long as you keep the source released everything will be fine ^^.
_________________
Starcraft DS ?

#154512 - Alphanoob - Thu Apr 17, 2008 3:38 am

This program looks like it has awesome potential. I was playin around with it for a while, and I found a glitch that seemed kinda major. It may get solved when you clean up scrolling, but here is what happened. I wasnt sure if it had scrolling or not, and decided to fill up a page by writing random letters. When I was done with this and it didnt scroll at all, I tried to erase it all. It ended up creating white space where there was no text to delete (as in the top section of the keyboard where it says the filename). When it made it up to the text it began erasing in a spot that was multiple characters behind where the cursor was. I am unsure if you were aware of this or not, but I figured you might wanna know. hope this helps =).

-Alphanoob

#154534 - anomalous_underdog - Thu Apr 17, 2008 5:44 pm

Alphanoob wrote:
This program looks like it has awesome potential. I was playin around with it for a while, and I found a glitch that seemed kinda major. It may get solved when you clean up scrolling, but here is what happened. I wasnt sure if it had scrolling or not, and decided to fill up a page by writing random letters. When I was done with this and it didnt scroll at all, I tried to erase it all. It ended up creating white space where there was no text to delete (as in the top section of the keyboard where it says the filename). When it made it up to the text it began erasing in a spot that was multiple characters behind where the cursor was. I am unsure if you were aware of this or not, but I figured you might wanna know. hope this helps =).

-Alphanoob


yes, lolz! I'm really sorry I didn't bother to mention that, but yeah, it has that bug. I realize it'll be sooner or later that someone else will point it out. what happens is it tries to clear lines out of its display range.


Alphanoob wrote:
When it made it up to the text it began erasing in a spot that was multiple characters behind where the cursor was.

Sorry, you lost me there. Did you mean you were pressing backspace but the letters getting removed were far from where the text cursor is? Its most likely a misalignment between where the "text cursor" really is (in terms of the data in memory) and where the text cursor (the one that you see on the screen) is. what happened is the vertical scrolling currently doesn't take word-wrapped lines into account yet, so the text cursor got misaligned (i'm going to fix that too)


thanks for trying it out btw!

#154567 - Alphanoob - Fri Apr 18, 2008 4:42 am

dude, thank you for making something like this. I am psyched to see how this turns out. Once you get saving and stuff in, I bet that you could edit code and then re-send it to ur PC for compilation l8er... in any case, this looks awesome!

#154574 - anomalous_underdog - Fri Apr 18, 2008 11:09 am

Alphanoob wrote:
dude, thank you for making something like this. I am psyched to see how this turns out. Once you get saving and stuff in, I bet that you could edit code and then re-send it to ur PC for compilation l8er... in any case, this looks awesome!


well, honestly I'm more comfortable coding in a desktop pc, but, yeah, you could do that.

I want to use this text editor mainly for taking notes. In the future I'm gonna make it a wiki editor, something like tiddlywiki

one of the things I want to experiment in is being able to save/load the text file to/from your pc via wifi. something like a hotsync in palm pda. I'm looking at uftp. just an experiment though, I'm not sure if I'll really add it.

#154595 - Alphanoob - Fri Apr 18, 2008 8:59 pm

that would own... like... what was it called, midiwifi? I think that there are programs out there that use something like that... that would kick! Be like having all of your text files on your gameboy without having to use up all the memory. Also save a lot of time transferring. Sweet idea, I can't wait to see how this works out.

#155342 - anomalous_underdog - Mon Apr 28, 2008 4:14 pm

Alphanoob wrote:
that would own... like... what was it called, midiwifi?


I've checked it out, dsmidiwifi is used for controlling midi devices. its not at all related to transferring arbitrary data to/from ds to a pc.

the closest I saw was dsftp. it turns your ds into a ftp server. I tried it out, but it couldn't pick up my wifi router's signal.

there's also dsup, but I couldn't compile the program that would be running on the pc. there was some missing header file "arpa/inet.h" or something. I'll have to look into it more.


Last edited by anomalous_underdog on Mon Apr 28, 2008 6:32 pm; edited 1 time in total

#155343 - anomalous_underdog - Mon Apr 28, 2008 5:17 pm

revision 97 released!

nds file:
http://dl.sharesource.org/blarghtexteditor/blarghtexteditor.nds.r97.zip

source code:
http://dl.sharesource.org/blarghtexteditor/blarghtexteditor.src.r97.zip

notes:

  • a few bugfixes, although there are still a handful of bugs
  • after typing an amount of text, press the bottom-left hex. it'll print some info about the lines of text currently displayed. those are the line data. I'm about to refactor some of the text editing code to make use of that data

#155410 - Cid2Mizard - Tue Apr 29, 2008 9:10 am

link dead
_________________
www.nintendomax.com 100% Hack 0% Warez

#155414 - anomalous_underdog - Tue Apr 29, 2008 11:54 am

Cid2Mizard wrote:
link dead


I tested it just now. try it again. if it still doesn't work, tell me, and I'll upload it somewhere else

#155419 - Cid2Mizard - Tue Apr 29, 2008 1:28 pm

Not Found

The requested URL /blarghtexteditor/blarghtexteditor.nds.r97.zip was not found on this server.
_________________
www.nintendomax.com 100% Hack 0% Warez

#155420 - anomalous_underdog - Tue Apr 29, 2008 1:37 pm

Cid2Mizard wrote:
Not Found

The requested URL /blarghtexteditor/blarghtexteditor.nds.r97.zip was not found on this server.


must be something wrong with sharesource's servers.

I uploaded it in zshare, here:
http://www.zshare.net/download/112595990ff0b4ab/

#155425 - Cid2Mizard - Tue Apr 29, 2008 2:00 pm

Good Thank You ;)
_________________
www.nintendomax.com 100% Hack 0% Warez

#155723 - KillerMapper - Sat May 03, 2008 10:27 am

This is good, maybe the keypad, I have to search the letters cause it's ont like on a classic keypad.
To load/save a file, it's for when?

#155829 - anomalous_underdog - Sun May 04, 2008 7:30 pm

revision 103 released!

nds file:
http://dl.sharesource.org/blarghtexteditor/blarghtexteditor.r103.zip
http://www.zshare.net/download/11528400d5b3077e/

source code:
http://dl.sharesource.org/blarghtexteditor/blarghtexteditor.src.r103.zip

notes:

  • bugfixes. text editing should have no bugs now
  • i'm currently working on implementing proper word-wrapping, its incomplete, so I didn't include it in the release


Last edited by anomalous_underdog on Sun May 04, 2008 8:00 pm; edited 1 time in total

#155837 - anomalous_underdog - Sun May 04, 2008 7:53 pm

KillerMapper wrote:
This is good, maybe the keypad, I have to search the letters cause it's ont like on a classic keypad.


sorry, you lost me there


KillerMapper wrote:
To load/save a file, it's for when?


I'm focusing on making the text editing features working properly first, then I'll add a load/save file dialog.

#155843 - tepples - Sun May 04, 2008 8:22 pm

anomalous_underdog wrote:
KillerMapper wrote:
This is good, maybe the keypad, I have to search the letters cause it's ont like on a classic keypad.

sorry, you lost me there

I'll try to translate:
In more standard English, KillerMapper wrote:
This is good; maybe the keyboard needs attention, I have to search for the letters cause it's not like on a classic keyboard.

KillerMapper is pretty much saying that the hunt and peck has a lot more hunting than with the more familiar QWERTY layout in DSOrganize. Adding Dvorak and QWERTY support in addition to QUONG might help reduce complaints.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#155846 - anomalous_underdog - Sun May 04, 2008 8:47 pm

tepples wrote:

I'll try to translate:
In more standard English, KillerMapper wrote:
This is good; maybe the keyboard needs attention, I have to search for the letters cause it's not like on a classic keyboard.

KillerMapper is pretty much saying that the hunt and peck has a lot more hunting than with the more familiar QWERTY layout in DSOrganize. Adding Dvorak and QWERTY support in addition to QUONG might help reduce complaints.


Well, its only natural, one would find it difficult to use something he's not used to.

I haven't talked about it in this thread but I'm actually planning on adding OPTI, Quikwrite, and QWERTY I guess.

I really encourage you to try out alternative keyboard layouts though. Having used a PDA for 4 years I can say QWERTY only encumbers text input in stylus-based devices. It works good for two hand typing though.