This shows you the differences between two versions of the page.
chumby [2010/03/22 19:34] ladyada |
chumby [2016/01/28 18:05] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Stuff you'll need ====== | ||
- | |||
- | - Chumby One - faster than the classic chumby | ||
- | - Other computer you can use as a terminal | ||
- | |||
- | What I did! | ||
- | |||
- | ==== Chumbify==== | ||
- | Bunnie visited and gave us 2 chumby ones. one had no working wifi. the other one seemed to be OK. Using the OK one | ||
- | |||
- | Activated it. works OK | ||
- | |||
- | ==== Turn on SSHD ==== | ||
- | [[http://wiki.chumby.com/mediawiki/index.php/Chumby_tricks#Hidden_screen_in_Control_Panel|Turn on sshd]] | ||
- | |||
- | ssh in as root, and turn off the control panel (to free up some memory and cycles) | ||
- | |||
- | <file> | ||
- | stop_control_panel | ||
- | </file> | ||
- | |||
- | Then make the sshd 'permanent' | ||
- | |||
- | <file> | ||
- | touch /psp/start_sshd | ||
- | </file> | ||
- | |||
- | ==== Install Dev ==== | ||
- | |||
- | Download & install silvermoon dev environment. Chmod +x the shell script and run it. This will take a bit | ||
- | |||
- | ==== Tried to install/port latest SDL ==== | ||
- | |||
- | Download the latest SDL tarball (we used 1.2.14) | ||
- | |||
- | run: | ||
- | <file> | ||
- | ./configure --enable-video-fbcon --disable-video-x11 --disable-dga --disable-esd --disable-oss --disable-pulseaudio --disable-joystick --disable-cdrom --without-x | ||
- | make | ||
- | mount -oremount,rw / | ||
- | make install | ||
- | </file> | ||
- | |||
- | Ran the test programs. Nothing happened. Kinda disappointed. So now going to backtrack | ||
- | |||
- | ==== Try ChumbyQuake SDL port ==== | ||
- | |||
- | |||
- | Download chumby_quake to /mnt/storage and uncompress. | ||
- | |||
- | Make my own 'bitops.h' file from kludged together stuff | ||
- | |||
- | Go into the SDL directory and run | ||
- | <file> | ||
- | ./configure --enable-alsa --enable-static --disable-oss --disable-esd --disable-pulseaudio --disable-video-x11 --enable-video-fbcon --disable-alsa-shared | ||
- | make | ||
- | make install | ||
- | </file> | ||
- | |||
- | run tests. Nothing happens on the display but it -says- it found stuff. Disappointed. backtrack some more | ||
- | |||
- | ==== Try chumbyquake ==== | ||
- | |||
- | Download chumby quake bins and stick on USB key. plug it in and run from command line. Had to use | ||
- | <file>export SDL_NOMOUSE=1 </file> to stop mouse complaints | ||
- | Audio is fine, pressing the top button makes the 'gun' fire. But no video. Disappointed. backtrack some more | ||
- | |||
- | ==== WTF is the frame buffer ==== | ||
- | |||
- | bunnie suggests maybe the framebuffers are swapped (seems there are two) so tried | ||
- | <file> | ||
- | dd if=/dev/zero of=/dev/fb0 | ||
- | </file> | ||
- | This wipes the screen (yay) so at least we know that the framebuffer is writable and is at /dev/fb0 | ||
- | |||
- | Now try to run quake again. Notice that the top line is the only thing that displays (easier to see this if you wipe the screen) | ||
- | |||
- | Look at old SDL tests - graywin, for example, 'works' but only displays top line. So its not the quake code and is something either in the library/driver/kernel | ||
- | |||
- | ==== Why is FB broken? ==== | ||
- | |||
- | OK so looking around some more, it looks like [[http://forum.chumby.com/viewtopic.php?id=4603|this has come up before]] - and the answer is the kernel is buggy (?) | ||
- | |||
- | So try to install new kernel with composite vid support (hey i might need it eventually) by [[http://forum.chumby.com/viewtopic.php?id=4283|running the script on the forums]] | ||
- | |||
- | Realise a little too late that this is going to cause the chumby to 'brick' due to the wifi driver having incompatibilities. eit. | ||
- | |||
- | ==== Unbrick chumby ==== | ||
- | |||
- | Follow the [[http://www.chumby.com/pages/latest_software|USB update instructions]] to get the kernel back. Hey its a good thing to know anyways! | ||
- | |||
- | ==== Really fix the FB ==== | ||
- | |||
- | So finally I use my reading comprehension to realize that really whats broken is just needing to poke the chip to tell it which FB to use. [[http://forum.chumby.com/viewtopic.php?id=4283|Following this helpful post]] I run | ||
- | |||
- | <file> | ||
- | wget http://files.chumby.com/hacks/switch_output | ||
- | chmod +x switch_output | ||
- | |||
- | stop_control_panel | ||
- | ./switch_output -l | ||
- | switch_fb.sh 0 | ||
- | </file> | ||
- | |||
- | ==== Try chumbyquake again ==== | ||
- | It runs! But it looks like some colorspace swappage is going on. I'll fix it later | ||
- | |||
- | Also tried the old SDL tests and they're working good now. yay. | ||
- | |||
- | ==== Port SIemu ==== | ||
- | |||
- | The 'easiest' emulator to port by far is SIemu. Its written in straight-up C, well documented and uses SDL as an underpinning. | ||
- | |||
- | * Had problem with audio so commented out all the Audio procedures. | ||
- | * Complained about screen size so changes graphics.h to use 320x240 screen | ||
- | * Runs! | ||
- | |||
- | OK much success. Now to fix it so audio works. SDL doesnt seem to know about audio device - perhaps we need to install ALSA lib first? | ||
- | |||
- | ==== Install ALSA ==== | ||
- | |||
- | We configure/make'd ALSA | ||
- | |||
- | ==== Build SDL with OSS ==== | ||
- | Trying to build SDL with ALSA (unpatched) didnt really work but then but then we realized that OSS is already in there so many we should just rebuild SDL? | ||
- | |||
- | Built SDL with following flags | ||
- | <file> | ||
- | ./configure --disable-esd --disable-pulseaudio --disable-video-x11 --enable-video-fbcon --disable-alsa | ||
- | </file> | ||
- | |||
- | compiled cleanly, ran test/loopwave and it worked! yay! | ||
- | |||
- | ==== download stella & ./configure ==== | ||
- | Grab the source, try to build | ||
- | |||
- | <file>chumby:/mnt/storage/stella/stella-3.0# ./configure | ||
- | Running Stella configure... | ||
- | ./configure: line 341: printf: not found | ||
- | g++ | ||
- | ./configure: line 363: printf: not found | ||
- | 4.3.3, ok | ||
- | ./configure: line 493: printf: not found | ||
- | linux-gnu | ||
- | ./configure: line 504: printf: not found | ||
- | none found! | ||
- | </file> | ||
- | |||
- | OK, grab an [[http://forum.chumby.com/viewtopic.php?id=4474|updated busybox]] and install it | ||
- | |||