Disclaimer: This information is for reference purposes
only. This stuff may have worked for me, but I don't take any responsibility
if it screws up your
770.
Since most or all of my files are not packaged, you will need
to copy them to /usr/bin or some other location in your PATH environment variable
so
they
can be run. They will not work if you try to execute them from the RS-MMC
memory card because it is probably formated in FAT32. If you have it formated
in Linux
format, that should work, but then you probably have trouble copying files
to it from a Windows OS. If you try to run from the memory card,
you will get the error: /bin/sh: ./{application_name}: Permission denied.
Mandatory software:
MAME is playable on the Nokia 770, but if you want to play games, the GP2X is designed for playing games. It has a dual-processor, and is much faster. Check Youtube for videos of the GP2X playing MAME and other ported games. I'm not trying to bash the 77o, but it was designed to be an "Internet tablet", not a game machine.
xMAME for Maemo 2.0 package
http://mame770.mysticserver.com/fastMAME/
http://mame770.mysticserver.com/
MAME GTK interface - Maeme: https://garage.maemo.org/projects/xmame/
xMAME
website: http://x.mame.net/
Source download: http://x.mame.net/historic.html
Port for Nokia 770: http://mame770.mysticserver.com/
Mame for GP2X - http://gp2x.org/gp2x/mame/
Download source for xmame-0.58.1 from above website.
Download my patch for xmame-0.58.1.
Download my compiled version of xmame-0.58.1 for the Nokia 770. Needs to be
moved to some place like /usr/bin and run as root.
> cd src > tar -jxf xmame-0.58.1.tar.bz2 > mv xmame-0.58.1 xmame-0.58.1-orig > tar -jxf xmame-0.58.1.tar.bz2 > patch -p0 < xmame-0.58.1.patch
diff from MAME applies to xmame-0.106
I applied it, uncommented SDL for joy and SOUND
Switch to ARMEL environment per tutorial.
# copy MAME source to /scratchbox/packages/
$ mkdir src $ cd src $ tar jxf /scratchbox/packages/xmame-0.58.1.tar.bz2 $ make -f makefile.unix
SUCCESS - it is compiling!
Got following error when running xmame.SDL
error: compiled byte ordering doesn't match machine byte ordering
are you sure you choose the right arch?
compiled for msb-first, are you sure you choose the right cpu in makefile.unix
Try recompile with Sound = ELSA instead of SDL.
> file rott rott: ELF 32-bit LSB executable, ARM, version 1 (SYSV), for GNU/Lunix 2.4.17, dynamically linked (uses shared libs), not stripped > file Frodo Frodo: ELF 32-bit LSB executable, ARM, version 1 (SYSV), for GNU/Lunix 2.4.17, dynamically linked (uses shared libs), not stripped > file xmame.SDL xmame.SDL: ELF 32-bit LSB executable, ARM, version 1 (SYSV), for GNU/Lunix 2.4.17, dynamically linked (uses shared libs), not stripped
Try compiling without sound.
CFLAGS = -march=armv5
-Os - Optimize for size
-mapcs -
fstrict-aliasing
ffast-math -
Wall - Show all warnings
Tried compiling with -mcpu=arm926ej-s instead of -march=
Tried switching -Os to -O2 failed
Tried compiling without -O2 failed
Tried compiling with -fno-strict-aliasing instead of
Tried -O2 -mbig-endian -Wall ( fails on compile)
Tried -O2 -mlittle-endian -Wall
Still failing with compiled byte ordering error message. Geekdoc is sending me
his Makefile
Tried -"mcpu=arm926ej-s" -mapcs -fstrict-aliasing -ffast-math -Wall
Set
MY_CPU = arm
Added following to src/unix/unix.mak
CFLAGS.arm = -DALIGN_INTS -DALIGN_SHORTS
-DLSB_FIRST
Finally, it is working! No more compiled byte ordering error message.
Try strip to pull out symbols
strip xmame.SDL -o xmame.SDL.strip
Changes size less than 1%.
TODO -----------------
ln -s /media/mmc1/games/xmame/roms/ /usr/local/lib/xmame
Usage:
# xmame -fullscreen - ror -scale 2 # xmame -rompath /media/mmc1/roms -fullscreen -scale 2 -ror dkong
The version of xmame at the Garage is faster than the version I compiled. Use that version if you want speed. Use my info if you want to hack around with it.
Homepage: http://www.mess.org/
Source files: http://x.mame.net/historic.html
My xmess patch for xmame-0.65.1. Mame and Mess are compiled with the same source, you just need to change the target in the makefile. I would have used the 0.58.1 for compiling, but it oddly was lacking some of the MESS-specific files.
Download my compiled version of xmess-0.65.1 for the Nokia 770. Needs to be moved to some place like /usr/bin and run as root.
> make clean -f makefile.unix > make -f makefile.unix
Failed on sound compile.
switched -march=armv5te in makefile.unix
Error
Compiling src/sound/ym2151.c
Error: bad immediate value for offset (4100)
renamed ym2151.c to .bak
got error ym2151.o needed by xmess.obj/libsound.a
changing CFLAGS from -0s to -02 works around the error. Apparently, there
is a bug with the GCC compiler. [Bug target/25190]
Got same error message for src/sound/ym2413.c
After switching back to -0s, it was fine.
[OSDEPEND] Compiling src/unix/main.c
src/unix/main.c:18: error: conflicting types for 'osd_init'
src/unix/main.c:27: error: two few arguments to function 'add_exit_callback'
Try compiling xmame-0.65.1
Error: bad immediate value for offset (4100)
Use fix above.
Switching to -02 seems to run for the rest.
Should try compiling the whole thing with -02, or just that one file.
Getting same error message "error: compiled byte ordering doesn't match machine
byte ordering" that I get with xMAME. Since they are from the same source code,
this is understandable.
Fix unix.mak like in Xmame to get it working:
Added following to src/unix/unix.mak
CFLAGS.arm = -DALIGN_INTS -DALIGN_SHORTS -DLSB_FIRST
Success! Xmame should now work.
Use above patch to patch Xmess and see what changes I made to get it to compile.
Xmess setup
# cd /usr/local/lib # ln -s /media/mmc1/Games/xmess/bios xmess # ln -s /media/mmc1/games/xmess/roms/ /usr/local/lib/xmess # mkdir -p /usr/local/lib/xmess # mkdir -p /usr/local/share/xmess/It is cool to see the Commodore 64 running in full screen on the Nokia 770.
# ln -s /media/mmc1/games/xmess/bios /usr/local/share/xmess/bios
# mkdir ~/.xmess
# xmess -showconfig > /root/.xmess/xmessrc
# set fullscreen in xmessrc
# set scale 2
Usage:
# xmess -biospath /media/mmc1/Games/xmess/bios -softwarepath /media/mmc1/Games/commodore64/ c128 # xmess -biospath /media/mmc1/Games/xmess/bios/ -softwarepath /media/mmc1/Games/mess/ - fullscreen -scale 2 coleco # xmess -showconfig > ~/.mess/messrc
http://maemo.org/platform/docs/tutorials/Maemo_tutorial.html#settingup
dpkg --install <package name>
Scratchbox install
install libs before core because of dependancy
core install - select ubuntu as user to use Scratchbox
this creates group sbox and adds ubuntu to that group
Skip steps 3 and 4 if installing from deb packages
$ sudo /scratchbox/sbin/sbox_ctl start $ /scratchbox/login
To run Xephyr, needed to sudo su and run xhost +, leaving that window open to allow Xephyr to open its window on the display.
# sudo su password: ubuntu # xhost +
Since I am used to vi, I added the following to ~/.bash_profile. I also added
it to ~/.bashrc in the Ubuntu environment
set -o vi
The Nokia 770 is powered by a Texas Instruments OMAP 1710 CPU running
at 250 MHz, which combines the ARM architecture of the ARM926TEJ core
subsystem with a TMS320C55x digital signal processor. The display has a
resolution of 800 by 480 pixels at 225 pixels per inch. It is
accessible via WLAN (802.11b/g), Bluetooth 1.2, dial-up access, USB
(both user-mode, and non powered host-mode), and RS-MMC (both RS-MMC
and DV-RS-MMC cards are supported). The device contains a speaker and a
microphone. It comes with 64MB of DDR RAM, and 128MB of internal FLASH
memory, of which about 64MB should be available to the user.
Source: http://en.wikipedia.org/wiki/Nokia_770
Gcc
-mcpu=name
This specifies the name of the target ARM processor.
GCC uses this name to determine what kind of instructions it can emit
when generating assembly code. Permissible names are: `arm2', `arm250',
`arm3', `arm6', `arm60', `arm600', `arm610', `arm620', `arm7', `arm7m',
`arm7d', `arm7dm', `arm7di', `arm7dmi', `arm70', `arm700', `arm700i',
`arm710', `arm710c', `arm7100', `arm7500', `arm7500fe', `arm7tdmi',
`arm7tdmi-s', `arm8', `strongarm', `strongarm110', `strongarm1100',
`arm8', `arm810', `arm9', `arm9e', `arm920', `arm920t', `arm922t',
`arm946e-s', `arm966e-s', `arm968e-s', `arm926ej-s', `arm940t',
`arm9tdmi', `arm10tdmi', `arm1020t', `arm1026ej-s', `arm10e',
`arm1020e', `arm1022e', `arm1136j-s', `arm1136jf-s', `mpcore',
`mpcorenovfp', `arm1176jz-s', `arm1176jzf-s', `xscale', `iwmmxt',
`ep9312'.
-march=name
This specifies the name of the target ARM
architecture. GCC uses this name to determine what kind of instructions
it can emit when generating assembly code. This option can be used in
conjunction with or instead of the -mcpu= option. Permissible names
are: `armv2', `armv2a', `armv3', `armv3m', `armv4', `armv4t', `armv5',
`armv5t', `armv5te', `armv6', `armv6j', `iwmmxt', `ep9312'.
Source: http://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html
Use -mcpu="arm1026ej-s" -march=armv5te for compiling for the Nokia
770
iriverter
http://iriverter.sourceforge.net/
Download: http://iriverter.sourceforge.net/download.shtml
Options > Device > Nokia 770
Video size - 320x240
New DVD
Refresh My Computer
Select DVD Drive: D:\
Program will gather information about DVD - about 20 minutes
Select output Desktop\matrix.avi
Jobs menu > Convert - about 3.5 hours on a 2 GHz Celeron
Plays fine using Mplayer. Use the <ESC> button (below the cursor pad) to exit
the movie. The menu button will lock up the 770 and you will have to reboot
to
get it
working
again.
Has a somewhat slow framerate, and the sound is a bit low, but watchable.
Kingston 2GB MultiMedia mobile (MMC mobile) Flash Media Model MMCM/2GB
The MMC mobile is a replacement for the discontinued RS-MMC.
"MMCmobile cards support lower voltage applications to reduce power consumption
in cell phones. Kingston has discontinued the older MMC and MMC-RS 3.x cards and
only offers the newer, backward-compatible MMCplus and MMCmobile cards."
Source: http://www.kingston.com/products/pdf_files/dmtechguide.pdf
I bought the Kingston 2GB MultiMedia mobile (MMC mobile) Flash Media Model
MMCM/2GB from Newegg for
$45.99 plus $4.99 shipping. I got it working by using the standard kernel
flash procedure.
Note: Do NOT use VMware to flash!!! You may be able to get it to work, but because
you are sharing the USB between Windows and Linux, there is contention. If Windows
decides to grab control of the USB while you are flashing, you will have a dead
(a.k.a bricked)
Nokia 770. It is much easier to download a Knoppix Live CD and use that to flash.
Trust me, you are going to have major headaches if you try to use VMware to flash
the 770. Trust me, Knoppix is much easier, even if you don't use Linux.
Screenshot:
Source: http://www.tmcnet.com/tmcnet/articles/2005/nokia-770-sip-voip-movial-linux.htm
Movial Corp. developed VoIP Connect - a third-party, Session
Initiation Protocol (SIP)-compliant application designed to run on the
770's Linux environment.
Minimo for Nokia 770
http://home.ufam.edu.br/~agan/minimo/
http://home.ufam.edu.br/~agan/minimo/binary-arm/
http://tonikitoo.blogspot.com/
Minimo source
http://lxr.mozilla.org/mozilla/source/minimo
Minimo WinCE build instructions
http://www.mozilla.org/projects/minimo/WinCE/build.html
Needs to be ported to OS 2006
the PSP has a 4.3" screen, the Nokia 770 has a 4.13" screen, so the Hori screen
protector should work.
Ebay Express $1 plus $6.99 shipping = $8
Cut to screen size and applied. You only have to trim off about 3/8" on one edge. It seems to be decent. Can
still see screen easily through protective coating. Will reduce
scratches to screen. There was one piece of dust that got under
screen, so it distorts that area, and the protective screen doesn't sit
flat around the edges, so there is a continuous edge "bubble".
Even though I cleaned the screen very thoroughly, I still ended up with
a couple of pieces of dust underneath the screen protector.
The coating is easy to see through and not noticable when the screen is
powered on. You can see the bubbles and other imperfections when
the screen is dark (like playing MAME), or when the 770 is turned off.
Opened Connection Mananger from top tab and tried to connect to my
wireless WPA encrypted network. The phrase must have been typed
wrong. Instead of letting me fix it, it got stuck in a loop of
trying to connect, but not being able to because the key was wrong.
The only options were to try again or cancel. I did a
Google search and found that you can fix the settings through the
Control Panel > Connectivity.
Once I got that working, I was browsing the Internet.
Next, make sure that I am running the 2006 Internet Tablet OS.
Current version is found in Control panel > Device > About product. I
am currently running 3.2005.51-13. In other words, OS2005.
Had to install MS .NET 2.0 on Windows 2000 in order to install the
Nokia Internet Tablet Software Update Wizard - OS 2006 edition.
Installing OS 2006 edition.
Run Setup.exe select all the defaults, and launch the flasher utility. NOTE: THIS WILL ERASE EVERYTHING IN MEMORY, so make a backup if
there is anything that you want to save. The memory card will not
be erased. It indicates that it is going to upgrade From: OS
Edition 2005 to 2006SE_1.2006.26-8 (latest). This can be change
if you need to run a different version.
FlasherGui.exe starts downloading: C:\Documents and
Settings\{username}\Local Settings\Application Data\fiasco.bin from
a72-246-46-240.deploy.akamaitechnologies.com:https
For flashing using Linux instead of Windows, follow this guide: http://www.maemo.org/maemowiki/HOWTO_FlashLatestNokiaImageWithLinux
While you are flashing, you might as well flash the kernel as listed in the next section.
Plug USB cable into Nokia 770.
Follow Procedure
for adding 2GB rs-mmc support to IT2006 using Linux , but don't perform step
d) they way they listed. Instead, hold the house button and turn the power on
to the Nokia 770 without connecting the power supply. Make sure that the battery
is fully charged before you perform this step! You don't want to lose power mid-flash.
The Home + "Power on" seems to be more reliable at bringing up the USB icon than
the method they describe in the thread.
Run flasher-2.0
./flasher-2.0 -f -k zImage-su-18-200627"
d) Make sure the battery is full charged before you do this. Hold
the home (house) key on the Nokia 770 and power up the unit. This
will put the unit in flash mode. The flashing will only take a
few seconds. Wait until it says: "Flashing kernel... done."
Why use a Bluetooth keyboard instead of USB? To use USB, you have to
put the
Nokia into USB host mode. This renders the memory card unusable. That
is a significant compromise.
If you have a ThinkOutside Stowaway Universal bluetooth (not Infrared) keyboard
(Mfr. Part# XTBTUE), do the following:
Couldn't get to work because I bought the ThinkOutside Stowaway Shasta
keyboard for
Blackberry. Part number# STWBBBT. It is not HID Bluetooth
compliant. It uses Serial Port Profile (SPP) instead of HID.
The booklet says the passkey is 0000, and to select the keyboard
type BT-Foldable KB.
This page has some additional bluetooth links.
Need to use the Kbdd (IT2006) driver instead. The prerequisite for this
driver is running in root mode.
kbdd for Nokia N770 (IT2006)
prerequisites: root mode, osso-xterm
Get logged in as root
$ sudo gainroot
Copy kbdd folder from /media/mmc1 to /usr/local/
All executables must be on a Linux filesystem, or they won't be able to run.
* See note at the top of this document.
# cd /media/mmc1 # mv kbdd /usr/local/ # cd /usr/local/kbdd
Check to see what your BDADDR is by running
./btkbd scan
My address is: 00:0F:6F:00:A5:80 BT-FoldableKB
# echo >btkbd.conf 'BDADDR="yo:ur:bd:ad:dd:rr"'
# echo >>btkbd.conf 'KBTYPE=btfoldable'
# echo >>btkbd.conf 'PORTNUM=2'
Start the program
./btkbd
This pops up a dialog box. You need to enter the pin of 0000
I had to switch to the kbdd that is compiled for the Freedom Keyboard
(US layout). The one that comes with the kbdd package does not
work with the Shasta.
This works, but is very glitchy. Sometimes notepad won't
open. Sometimes in Xterm, the Enter key will act like the center
button and cause the on-screen keyboard to pop up, other times, it will
work correctly. The driver will sometimes glitch out and a
certain key will just keep repeating across the screen. In Opera,
the driver appeared to hang and caused the network connection to be
lost. It can sometimes take several retries of starting and
stopping the driver before it starts working. Sometimes starting
and stopping can not get it working, and you have to reboot. I
think SPP is an older technology than HID, and is based off a serial
port intercept, it is prone to slow speed and buggyness. If you
are looking for stability, then stay away from the Shasta.
However, for the brief times the driver is working, the keys seem
to be mapped well and it is usable. My recommendation is to stay
away from the ThinkOutside Stowaway Shasta and get the
ThinkOutside Stowaway Universal bluetooth (not Infrared) keyboard (Mfr.
Part# XTBTUE) instead. That keyboard is HID compliant and
slightly more expensive, but the extra $10 or $20 should be worth the
stability.
Bought a Macintosh keyboard
For whatever reason, the Bluetooth Plugin version 0.5.0 does not work from the GUI. It only works from the command line.
The driver should detect the name of the keyboard.
It will pop up a passcode. Enter the passcode on the numeric keypad (NOT using the top row of numbers) and hit <return>
This should pair the keyboard with the Nokia 770.
Pairing failed. # hcitool scan # hidd -n --search # hidd - # hciconfig -a
http://klausler.com/msbtkb-linux.html
http://www.dillernet.com/apple/2006/01/11/place-holding/
http://www.lancode.de/stowaway-de/
http://maemo.org/maemowiki/HowTo_SetupKeyboard
Compiled bluez-utils 3.7 for Nokia 770. The bluez-utils 2.25 come with OS
2006. These utilities include hidd and hcitool.
download: http://www.bluez.org/download.html
Try backing up and replacing hcitool and hidd to see if the new version correct the key repeat problem I am getting with the Apple keyboard.
Use xev to determine what keycodes your keyboard is sending
http://770.fs-security.com/maemo-bt-plugin/
hidd --connect 00:0A:95:42:A8:EE
Enter 1234 on number pad and hit <return>
Can't get device information: Too many links
The enter passcode will pop up on the Nokia 770. Enter 1234 and hit OK. It should pop up "Device connected."
Once device is paired once, it should automatically connect again, even after a reboot.
Rebooted 770, turned on keyboard, and ran:
hidd --connect 00:0A:95:42:A8:EE
Got the "Device connected" dialog box.
Key mapping differences
Kbd Symbol | Keyboard | Displayed on Nokia 770 | Keycode | Name | Shift | Shift Name |
- | u with umlaut | 20 | udiaeresis | |||
y | z | 29 | z | |||
z | y | 52 | y | |||
` | ^ | 49 | asciicircum | |||
= | German esset | 21 | ssharp | |||
[ | + | 34 | plus | |||
] | similar to ' symbol, but leaning forward | 35 | acute | |||
\ | _ | 51 | underscore | |||
; | o with umlaut | 47 | odiaeresis | |||
' | a with umlaut | 48 | adiaeresis | |||
? | - | 61 | minus | |||
: | shift + ; | O with umlaut | 47 | Odiaeresis | ||
" | shift + ' | A with umlaut | 48 | Adiaeresis | ||
{ | shift + [ | * | 34 | asterisk | ||
} | shift + ] | ` | 35 | grave | ||
@ | shift + 2 | " | 11 | quotedbl | ||
# | shift + 3 | paragraph symbol | 12 | section | ||
^ | shift + 6 | & | 15 | ampersand | ||
& | shift + 7 | / | 16 | slash | ||
* | shift + 8 | ( | 17 | parenleft | ||
( | shift + 9 | ) | 18 | parenright | ||
shift + 0 | = | 19 | equal | |||
_ | shift + - | ~\ | 20 | Udiaeresis | ||
+ | shift + = | ? | 21 | question | ||
F4 | Opens dropdown menu | |||||
F5 | Goes to main menu of 770 | |||||
F6 | Toggles beween full-screen and normal screen | |||||
F7 | Increases text size | |||||
F8 | Decreases text size | |||||
F9 | ~ | |||||
F10 | ~ | |||||
F11 | ~ | |||||
F12 | ~ | |||||
F13 | nothing | |||||
F14 | nothing | |||||
F15 | nothing | |||||
F16 | nothing | |||||
help | nothing | |||||
2nd delete below help key | nothing | |||||
Up arrow with line underneath above * on numeric keypad | ~ | |||||
Low sound | nothing | |||||
High sound | nothing | |||||
No sound | nothing | |||||
esc | ||||||
The bluetooth plugin maps are under this folder:
cd /usr/share/kb-maps/
downloaded xmodmap from http://butterfeet.org/maemo/keyboard/
/home/user/.xmodmap
xset770 -r <key> <value>
from Nokia
xmodmap -pke > xmodmap.770
copy to PC.
Change return into an Enter key. ctrl doesn't work
clear control
add control = Control_L
keycode 36 = KP_Enter
Keycode 36 , Return
keycode 104, KP_Enter
Ideal keyboard: Small bt kbd w/o num pad, lightweight, HID
Keyboard Comparisons
Mfr product# | Manufacturer | Name | Price | Where? | Protocols | Key Spacing | |
XTBTUE | Think Outside | Stowaway Bluetooth | $83.92 | Amazon | HID/SPP | 18 mm | |
FREEDOM-UNIVERSAL | Freedom Input | Freedom universal Keyboard | $111.95 | mobileplanet | HID/SPP | ||
Eleksen Group | Roll-up Fabric Bluetooth Keyboard | ||||||
967562 | Logitech | Logitech 967562 diNovo Bluetooth Media Laser Desktop | |||||
HP iPaq Bluetooth Keyboard | |||||||
Nokia Bluetooth Keyboard | |||||||
SnapNType | |||||||
# hcitool scan
00:0A:95:42:A8:EE Jessie J Hsiao...s Keyboard
hidd -n --search
hidd --connect 00:0A:95:42:A8:EE
hidd --connect 00:03:C9:EA:51:E7
hcitool inq
Inquiring ...
00:0A:95:42:A8:EE clock offset: 0x4469 class: 0x002540
l2ping 00:0A:95:42:A8:EE
# cd /usr/bin
# mv hcitool hcitool.orig
cp /usr/local/bluez-utils/hcitool .
mv hidd hidd.orig
cp /usr/local/bluez-utils/hidd .
rfcomm
-rwxr-xr-x 1 root root 19836 May 26 06:05 pand
-rwsr-xr-x 1 root root 26916 May 26 06:05 hidd
-rwxr-xr-x 1 root root 35996 May 26 06:05 hcitool.orig
-rwxr-xr-x 1 root root 20056 May 26 06:05 dund
-rwxr-xr-x 1 root root 50376 May 26 06:05 sdptool
-rwxr-xr-x 1 root root 10136 May 26 06:05 l2ping
xev
Prerequisites: vim
Dropbear: https://www.komputika.net/maemo/index.php?search=dropbear&dir=&searchMode=f
Install Dropbear SSH to get yourself to the root prompt
dbclient root@127.1 password: rootme #
Fix /usr/sbin/gainroot to not check for R&D mode
# cd /usr/sbin/ # cp -p gainroot gainroot.orig # vi gainroot
Change this line:
MODE=`/usr/sbin/chroot /mnt/initfs cal-tool --get-rd-mode`To this:
MODE=enabled #`/usr/sbin/chroot /mnt/initfs cal-tool --get-rd-mode`
In VIM, Use the Cancel/Close button to send an Esc key.
Exit vim by typing colon, write, quit.
:wq
Exit the SSH session.
# exit
Log back in using the gainroot script to see that everything works.
$ sudo gainroot #
http://maemo-hackers.org/wiki/OssoXterm
http://770.fs-security.com/xterm/
Vice for GP2X: http://gp2x.org/gp2x/vice/
VICE version 1.20
./configure --prefix=/usr/
detects as arm-unknown-linux
backup Makefile
build = arm-unknown-linux
build_cpu = arm
host = arm-unknown-linux
host_cpu = arm
Try changing to : --host=armv5te
Try tweaking other compile options
make x64
Couldn't fix Xaw libs in scratchbox.
-------------
Try Frodo since it is SDL-based instead.
Website:
http://frodo.cebix.net/
Version 4.1b
Source: http://frodo.cebix.net/downloads/FrodoV4_1b.Src.tar.gz
Frodo for GP2X: http://gp2x.org/gp2x/frodo/
Download my compiled version of Frodo 4.1b for Nokia 770. Needs to be copied to /usr/bin and run as root.
> cd src > ./configure
NOTE: May want to try configuring some options for armv5te processor here.
added -march=armv5te to Makefile CFLAGS line
> make > cp Frodo /usr/bin > Frodo
Extract above source and copy contents minus Docs and Src to the Nokia 770
Move them to the correct location
> mkdir -p /usr/local/lib > cp Frodo /usr/local/lib/frodo > vi ~/.frodorc
Example settings are in Prefs.cpp source file.
Launch the application
Needs to be launched from the directory that contains the Basic Rom
# FrodoWorks!
site: http://www.bleb.org/software/770/
Synchronisation and backup using rsync & make
Install Dropbear and rsync on Nokia 770 for SSH capability
Host computer:
Nokia770:
From the host computer run make.
Sylpheed source:
http://sylpheed.good-day.net/en/download.html
Download my compile of Sylpheed 2.2.0rc for Nokia 770. Move to /usr/bin and run as root.
> tar zxf sylpheed-2.2.0.tar.gz
Patch to version 2.2.0rc
> gunzip sylpheed-2.2.0rc.2.2.0.patch.gz > cat sylpheed-2.2.0rc-2.2.0.patch | patch -p0 -R
Apply Nokia 770 Sylpheed Maemo patch
http://www.bleb.org/software/770/#sylpheed
tar zxf sylpheed-2.2.0rc-patch.tar.gz
or
> cat sylpheed-2.2.0rc-maemo.patch | patch -p0 > ./configure > ./autogen.sh
Make may also work instead of autogen.sh
> make
At this point, the sylpheed executable will run on the Nokia 770. It would be nicer to have it Hildonized and in a deb package. The following section deals with that.
> dpkg-buildpackage -rfakeroot
The .deb package won't install, but the slypheed executable will run on OS
2006.
Install with the Hildon patch
Tried applying the patch, but had one failure
Hunk #2 FAILED at 184.
1 out of 4 hunks FAILED -- saving rejects to file slypheed-2.20rc-orig/src/main.c.rej
main.c 54:53 hildon-lgpl/hildon-widgets/hildon-app.h: No such file or directory
main.c 55:57 hildon-lgpl/hildon-widgets/hildon-appview.h: No such file or
directory
> fakeroot apt-get install hildon-widgetsmm
Didn't help
had to vi main.c, main.h, and menu.c and remove the hildon-lgpl
from the two lines in both files. That allowed the include files
to be found.
grep -i hildon-lgpl *.c *.h
Failed again on icons
> cd icons > cp Makefile Makefile.bak > vi Makefile > change /home/andrew to ~ > %s/\/home\/andrew\/src/\~\/src/g
This works.
Try building package
> dpkg-buildpackage -rfakeroot
Had to make changes to debian/control file to convert from OS 2005 to OS
2006
Change the following:
Section: unknown
to:
Section: user/other
Package again.
TODO - I haven't gotten the package and Hildonize working yet.
Usage: sylpheed
Got error:
The locale encoding is not UTF-8, but the environment variable G_FILENAME_ENCODING
is not set. If the locale encoding is used for file name or directory name,
it iwll not work correctly. In that case, you must set the following environment
variable (see README for detail): G_FILENAME_ENCODING=@locale
Continue?
lxDoom 1.4.4
Copy or move to scratchbox environment
make sure there are no spaces in any folder names.
Run ./configure
cp Makefile Makefile.bak
vi Makefile
Fails with some errors.
-------------------------
try prboom 2.4.5 instead
http://prboom.sourceforge.net/about.html
http://sourceforge.net/project/showfiles.php?group_id=3396
Download my compile of prboom 2.4.5 for Nokia 770. Move to /usr/bin and run as root.
You will also need the prboom.wad from the prboom source tar.gz file, and a shareware or full Doom wad to get the program running.
Shareware WAD
http://www.doomworld.com/classicdoom/info/shareware.php
Disable opengl support
./configure --disable-gl
make
Fails on libSDL_net-1.2.so.0
This file exists in scratchbox environment. Try copying over
cp libSDL_net-1.2.so.0.0.5 /usr/lib/
ln -s /usr/lib/libSDL_net-1.2.so.0.0.5 libSDL_net-1.2.so.0
cd /media/mmc1/Doom/
mv DOOM1.WAD doom1.wad
mkdir -p /usr/share/games
ln -s /media/mmc1/Doom/ /usr/share/games/doom/
cp prboom.wad /media/mmc1/Doom
Got message failed to autoload prboom.wad
W_GetNumForName: CRBRICK not found
resolution: install prboom.wad
Download SDL-net source
http://packages.debian.org/stable/libdevel/libsdl-net1.2-dev
tar zxf sdl-net1.2_1.2.5.orig.tar.gz
gunzip sdl-net1.2_1.2.5-3.diff.gz
patch -p1 < sdl-net1.2_1.2.5-3.diff
make
Creates libSDL_net.la, libSDL_net-1.2.so.0.0.5
copy files into correct locations
This works, but there are some strange artifacts on the characters. The
walls, etc. seem to be painted correctly.
May also be able to use TiMIDIty to get MIDI sound working in the game.
http://www.maemo.org/maemowiki/ApplicationCatalogWip#head-c18aa0a1d2fd32e196da2b1ebd09df901e74cafb
If you have a copy of one of the original Doom games, copy your Doom,
Doom 2, Ultimate Doom or Final Doom IWAD (doom.wad, doom2.wad, tnt.wad
or plutonia.wad) to /usr/local/share/games/doom/.
/media/mmc1/Doom /usr/share/games/doom
prboom-game-server
Installed packages. Works.
MANaOS (Mozilla for
Maemo)
http://gnuite.com:8080/nokia770/manaos/
Only works on OS2005
TODO - need to port to OS 2006
Need to locate source
Status: Installs, but locks up.
(DreamCast) rottdc-1.0.2 SDL:
http://sdl-dc.sourceforge.net/
Rise of the Triad for Linux:
http://icculus.org/rott/
rott-1.0.tar.gz
Rott sharware data files:
http://filesingularity.timedoctor.org/download.php?realfile=1&fileid=8
Compiled right out of the box.
Installed, but got this error when it ran:
Stack dump:
/lib/libpthread.so.0 [0x40084e88]
Someone with similar error compiling rott for Sharp Zaurus
http://www.oesf.org/forums/index.php?showtopic=8624
Try recompiling for PC
Switch to PC SDK environment
sbox-config -st SDK_PC
Start Xephyr
~/start-xephyr.sh &
Start Application Framework environment
export DISPLAY=:2
af-sb-init.sh start
Extract shareware data into Rott folder
unzip swdata.zip
Run i386 version of Rott
./rott
Runs fine in i386. Why does the i386 version run, but not the ARM version?
Switch back to ARM SDK
sbox-config -st SDK_ARMEL
cp rott rott.strip
strip rott.strip
stripping takes size from 1,716,773 down to 943,276 = 55 % the size of
the original.
TODO - need to figure out why it works in Xephyr i386 development environment,
but
not
in
ARM
on
the
770.
rott -SOUNDSETUP
https://garage.maemo.org/projects/zip-unzip/
Haven't tried installing yet.
http://stella.sourceforge.net/
http://stella.sourceforge.net/downloads.html
stella-2.2-src.tar.gz
Download my compile of Stella 2.2 for the Nokia 770. Copy to /usr/bin and run as root.
Xlib.h and Xatom.h are in /usr/X11R6/include/X11/
Stella not compiling because it can't find those include files.
check Makefile
./configure ?
added -I/usr/X11R6/include to INCLUDES line in config.mak
config.mak is generated by .configure
That seems to fix the problem.
stella-arm-2.2
Works.
ln -s stella-arm-2.2 stella
Usage:
TODO need keyboard to load and try out the games.
http://www.mozilla.com/thunderbird/system-requirements.html
Linux requirements:
Linux kernel - 2.2.14 with the following libraries or packages minimums:
http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/1.0.8/source/
thunderbird-1.0.8-source.tar.bz2
./configure
Errors:
checking for gtk-config... no
checking for GTK - version >= 1.2.0... no
Found this link about upgrading.
http://www.internettablettalk.com/forums/archive/index.php/t-2074.html
sbox-SDK_ARMEL > fakeroot apt-get install libgtk2.0-dev
errors
sbox-SDK_ARMEL > apt-get-update
> fakeroot apt-get build-dep libgtk2.0-dev
Installed 2 new packages
> vi /etc/apt/sources.list
> apt-cache search gtk
> apt-cache show libgtk2.0-dev
> apt-cache showpkg libgtk2.0-dev
/var/lib/apt/lists/repository.maemo.org/dists/mistral/free/binary-armel/Packages/
http://repository.maemo.org/dists/mistral/free/binary-armel/Packages/
pool/maemo2.0/free/g/gtk+2.0/libgtk2.0-dev_2.6.10-1.osso21_armel.deb
http://repository.maemo.org/pool/maemo2.0/free/g/gtk+2.0/
Download and install libgtk2.0-dev_2.8.20-1_arm.deb
http://packages.debian.org/cgi-bin/download.pl?arch=arm&file=pool%2Fmain%2Fg%2Fgtk%2B2.0%2Flibgtk2.0-dev_2.8.20-1_arm.deb&md5sum=a7b1d9e1bf3b4996f7b07dbb523a21d7&arch=arm&type=main
ARMEL> dpkg -i libgtk2.0-dev_2.8.20-1_arm.deb
requested operation requires superuser privilege
id shows me as ubuntu
$ sudo su
# /scratchbox/login start
You are not allow to run this as root!
ARMEL> fakeroot dpkg -i libgtk2.0-dev_2.8.20-1_arm.deb
package architecture (arm) does not match system (armel)
http://packages.debian.org/testing/libdevel/libgtk2.0-dev
> dpkg -l|grep -i libgtk2
> dpkg --help
> dpkg -L libgtk2.0-dev |grep -i gtk-config
> dpkg -L libgtk2.0-0
libgtk2.0-bin
libgtk2.0-common
Found out that gtk-config is for gtk version 1.20. pkg-config is used
in gtk+2.0.
http://www.mail-archive.com/maemo-developers@maemo.org/msg01793.html
pkg-config --cflags gtk+-2.0
Returns include line to use for compiling c programs
Try installing Thunderbird 1.5.0.7
thunderbird-1.5.0.7-source.tar.bz2
./configure
error: --enable-application=APP is required
./configure --enable-application=mail ** NOTE: You can use browser
to compile Firefox
libIDL-2.0 not found in pkg-config search path
http://developer.mozilla.org/en/docs/Linux_Build_Prerequisites
The Nokia 770 does not have libIDL. It has most of the other prerequisites.
Try installing Thunderbird 1.5.0.2
thunderbird-1.5.0.2-source.tar.bz2
export PKG_CONFIG_PATH=/usr/lib/pkgconfig/:/usr/local/lib/pkgconfig/
Configure for Thunderbird mail client
./configure --enable-application=mail
Use the following to configure for Minimo application
./configure --enable-application=minimo
http://oss.kernelconcepts.de/maemo/app-install.shtml
You may want to make a backup of your development environment before you update
anything.
SDK_ARMEL> fakeroot apt-get -u dist-upgrade
Didn't do much. Only downloaded a couple of updates for some pre-existing packages.
FCE Ultra 0.98.12 source
FCE Ultra download: http://fceultra.sourceforge.net/download.php
Elite ROM: http://www.iancgbell.clara.net/elite/nes/index.htm
Download my compile of FCE Ultra 0.98.12 for the Nokia 770. Move to /usr/bin and run as root.
./configure
make
Status: Works, but bottom of screen graphics are messed up. No sound.
Usage:
# fceu smario.nes
http://www.flipcode.com/articles/toofast_issue02.shtml
Source for Windows CE
http://www.flipcode.com/articles/lemmings.zip
Wiki: http://wiki.gp2x.org/wiki/DrMDx
Developer's website: http://reesy.gp32x.de/
Download: http://korganizer.kde.org/korganizer/download.html
Source download: http://korganizer.kde.org/files/korge-1.0.8.src.tgz
Problem: uses Qt instead of GTK+. Won't compile.
KDE uses Qt, GNOME uses GTK+
reference: http://forums1.macosxhints.com/archive/index.php/t-25909.html
Since Maemo 2.0 uses GTK+, we should find something other than KOrganizer.
Try Ximian (now Novell) Evolution instead.
Download: http://www.gnome.org/projects/evolution/
Evolution 2.8.1
Prerequisites:
Evolution Data Server 1.1.1
configure: error: You need to install a working iconv implementation, such
as ftp://ftp.gnu.org/pub/gnu/libiconv
http://www.gnu.org/software/libiconv/#downloading
Download libiconv 1.11
http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.11.tar.gz
Compiled and installed
back to evolution configure
export PKG_CONFIG_PATH=/usr/lib/pkgconfig/:/usr/local/lib/pkgconfig/
checking for GIT_LIBS...
Package gnome-icon-theme was not found in the pkg-config search path.
Perhaps you should add the directory containing `gnome-icon-theme.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gnome-icon-theme' found
configure: error: Package requirements (gnome-icon-theme >= 1.2.0) were
not met.
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively you may set the GIT_CFLAGS and GIT_LIBS environment variables
to avoid the need to call pkg-config. See the pkg-config man page for
more details.
Took a look at the Evolution README for a list of prerequisites:
* gnome-icon-theme 1.2.0 or later
http://www.linuxfromscratch.org/blfs/view/6.1/gnome/gnome-icon-theme.html
http://ftp.gnome.org/pub/GNOME/sources/gnome-icon-theme/1.2/gnome-icon-theme-1.2.0.tar.bz2
* ORBit 2.9.8 or later
http://www.gnome.org/projects/ORBit2/download.html
ftp://ftp.gnome.org/pub/gnome/sources/ORBit2/2.9/ORBit2-2.9.8.tar.bz2
> configure
Package libIDL-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libIDL-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libIDL-2.0' found
configure: error: Library requirements ( libIDL-2.0 >= 0.7.4 glib-2.0 >= 2.0.0 gobject-2.0 >= 2.0.0 gmodule-2.0 >= 2.0.0) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.
ftp://ftp.gnome.org/pub/gnome/sources/libIDL/0.8/libIDL-0.8.4.tar.bz2
configure, make, make install
make, make install
* libsoup 2.2.1 or later
ftp://ftp.gnome.org/pub/gnome/sources/libsoup
ftp://ftp.gnome.org/pub/gnome/sources/libsoup/2.2
ftp://ftp.gnome.org/pub/gnome/sources/libsoup/2.2/libsoup-2.2.1.tar.bz2
checking for libgnutls - version >= 1.0.0... no
*** The libgnutls-config script installed by LIBGNUTLS could not be found
*** If LIBGNUTLS was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the LIBGNUTLS_CONFIG environment variable to the
*** full path to libgnutls-config.
configure, make, make install
* evolution-data-server 1.1.1 or later
ftp://ftp.gnome.org/pub/gnome/sources/evolution-data-server
ftp://ftp.gnome.org/pub/gnome/sources/evolution-data-server/1.1/evolution-data-server-1.1.1.tar.bz2
configure
checking for gnome-vfs-2.0 libgnome-2.0 libxml-2.0 gconf-2.0 ORBit-2.0 >=
2.9.8... Package libgnome-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libgnome-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libgnome-2.0' found
configure: error: Library requirements (gnome-vfs-2.0 libgnome-2.0 libxml-2.0
gconf-2.0 ORBit-2.0 >= 2.9.8) not met; consider adjusting the PKG_CONFIG_PATH
environment variable if your libraries are in a nonstandard prefix so pkg-config
can find them.
ftp://ftp.gnome.org/pub/gnome/sources/libgnome/2.1/libgnome-2.1.4.tar.bz2
./configure
checking for glib-2.0 >= 2.0.3 gmodule-2.0 >= 2.0.3 gnome-vfs-2.0 >= 1.9.16 libxml-2.0 >= 2.4.22 libbonobo-2.0 >= 2.0.0 gconf-2.0 >= 1.1.11 audiofile >= 0.2.3 esound >= 0.2.26... Package libbonobo-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libbonobo-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libbonobo-2.0' found
libbonobo
ftp://ftp.gnome.org/pub/gnome/sources/libbonobo/2.0/libbonobo-2.0.1.tar.bz2
./configure
checking for ORBit-2.0 >= 2.4.0 ORBit-CosNaming-2.0 >= 2.4.0 glib-2.0 >= 2.0.1 gobject-2.0 >= 2.0.1 gthread-2.0 >= 2.0.1 bonobo-activation-2.0 >= 1.0.0... Package bonobo-activation-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `bonobo-activation-2.0.pc'
to the PKG_CONFIG_PATH environment variable
bonobo-activation
ftp://ftp.gnome.org/pub/gnome/sources/bonobo-activation/2.1/bonobo-activation-2.1.1.tar.bz2
./configure
checking for gmodule-2.0 >= 2.0.1 ORBit-2.0 >= 2.4.0 linc >= 0.5.1... Package linc was not found in the pkg-config search path.
Perhaps you should add the directory containing `linc.pc'
to the PKG_CONFIG_PATH environment variable
No package 'linc' found
Linc 0.5.5
ftp://ftp.gnome.org/pub/gnome/sources/linc/0.5/linc-0.5.5.tar.bz2
make
test -d /home/ubuntu/src/linc-0.5.5/docs/html || mkdir /home/ubuntu/src/linc-0.5.5/docs/html
cd /home/ubuntu/src/linc-0.5.5/docs/html && gtkdoc-mkhtml linc ../linc-docs.sgml
/usr/bin/jade:../sgml/linc-types.sgml:63:19:E: ID "LINCPROTOCOLINFO" already defined
/usr/bin/jade:../sgml/linc-protocol.sgml:123:19: ID "LINCPROTOCOLINFO" first defined here
Got error, but going to try to install since error was with docs.
try:
./configure --disable-gtk-doc
make install
worked!
End of linc 0.5.back to ORBit-2.0
./configure
make
make install
back to bonobo-activation
./configure
make
bonobo-activation-fork-server.c: In function `bonobo_activation_server_by_forking':
bonobo-activation-fork-server.c:304: error: `LincWatch' undeclared (first use in this function)
bonobo-activation-fork-server.c:304: error: (Each undeclared identifier is reported only once
bonobo-activation-fork-server.c:304: error: for each function it appears in.)
bonobo-activation-fork-server.c:304: error: `watch' undeclared (first use in this function)
Try:
./configure --disable-gtk-doc (nope, didn't work)
Try downloading newer version.
ftp://ftp.gnome.org/pub/gnome/sources/bonobo-activation/2.2/bonobo-activation-2.2.5.tar.bz2
** ERROR **
bonobo-activation is deprecated in Gnome 2.4,
it's part of libbonobo now, please build the libbonobo module
insteadBack to libbonobo
./configure
checking for ORBit-2.0 >= 2.4.0 ORBit-CosNaming-2.0 >= 2.4.0 glib-2.0 >= 2.0.1 gobject-2.0 >= 2.0.1 gthread-2.0 >= 2.0.1 bonobo-activation-2.0 >= 1.0.0... Package bonobo-activation-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `bonobo-activation-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'bonobo-activation-2.0' found
ftp://ftp.gnome.org/pub/gnome/sources/libbonobo/2.1/libbonobo-2.1.1.tar.bz2
Same error
ftp://ftp.gnome.org/pub/gnome/sources/libbonobo/2.4/libbonobo-2.4.3.tar.bz2
Worked!
make
make installBack to libgnome-2.1.4
./configure
make
gcc -DHAVE_CONFIG_H -I. -I/home/ubuntu/src/libgnome-2.1.4/monikers -I.. -I/home/ubuntu/src/libgnome-2.1.4 -DORBIT2=1 -pthread -I/usr/local/include/libbonobo-2.0 -I/usr/local/include/orbit-2.0 -I/usr/local/include/bonobo-activation-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/libxml2 -DG_LOG_DOMAIN=\"libgnome\" -DVERSION=\"2.1.4\" -g -O2 -c bonobo-config-bag.c -fPIC -DPIC -o .libs/bonobo-config-bag.lo
bonobo-config-bag.c: In function `impl_Bonobo_PropertyBag_getType':
bonobo-config-bag.c:129: error: label at end of compound statement
make[2]: *** [bonobo-config-bag.lo] Error 1
make[2]: Leaving directory `/home/ubuntu/src/libgnome-2.1.4/monikers'
make[1]: *** [all-recursive] Error 1
ftp://ftp.gnome.org/pub/gnome/sources/libgnome/2.5/libgnome-2.5.3.tar.bz2
./configure
make
(cd .libs && rm -f libmoniker_extra_2.la && ln -s ../libmoniker_extra_2.la libmoniker_extra_2.la)
make[2]: *** No rule to make target `GNOME_Moniker_std.server', needed by `all-am'. Stop.
make[2]: Leaving directory `/home/ubuntu/src/libgnome-2.5.3/monikers'
make[1]: *** [all-recursive] Error 1
ftp://ftp.gnome.org/pub/gnome/sources/libgnome/2.5/libgnome-2.5.4.tar.bz2
./configure
make
make install
Worked!
back to evolution-data-server 1.1.1
TODO finish
* gtkhtml 3.5.0 or later
ftp://ftp.gnome.org/pub/gnome/sources/gtkhtml
ftp://ftp.gnome.org/pub/gnome/sources/gtkhtml/3.5/gtkhtml-3.5.0.tar.bz2
GTKHTML 3.9.1 is already installed in Nokia development environment
back to Evolution-2.8.0
./configure
No package 'libbonoboui-2.0' found
configure: error: Package requirements (glib-2.0 libbonoboui-2.0 >= 2.4.2
gnome-vfs-2.0 >= 2.4 libgnomeui-2.0 libglade-2.0 libgnomecanvas-2.0 libxml-2.0
gconf-2.0) were not met.
libbonoboui 2.0.3
ftp://ftp.gnome.org/pub/gnome/sources/libbonoboui/2.0/libbonoboui-2.0.3.tar.bz2
./configure
make
In file included from ../bonobo/bonobo-ui-private.h:18,
from bonobo-dock-item.c:47:
../bonobo/bonobo-ui-node-private.h:5:25: libxml/tree.h: No such file or directory
../bonobo/bonobo-ui-node-private.h:6:27: libxml/parser.h: No such file or directory
../bonobo/bonobo-ui-node-private.h:7:30: libxml/xmlmemory.h: No such file or
directory
ftp://ftp.gnome.org/pub/gnome/sources/libbonoboui/2.2/libbonoboui-2.2.5.tar.bz2
./configure