uclinux和linux的區別我就不用多說了,uclinux是專門為沒有mmu的cpu而準備的。以下兩點卻別會影響到我們的移植。
1.uclinux生成的目標檔案格式是flat,可以在裸機上跑.uclinux和arm7可能只能執行這種格式的程式,連線時需要加-elf2flat選項,否則是無法執行的,我們的開發板加上-wl,-elf2flt="-s32768"即可
2.arm-elf使用的庫是uclibc/uc-libc,而arm-linx使用的是glibc,故而在arm-elf的時候沒有zlib的。所以要另外移植。
以上步驟和linux上差不多。
1.移植sdl,sdl的video其中之一的實現的方法是framebuffer,不巧的是我們的開發板lcd不支援framebuffer,而framebuffer也是qt,minigui移植的基礎。麻煩就出來了,如果只是想移植遊戲模擬器那大可拋棄sdl的video,自己另外寫庫。但是移植sdl是必要的,因為sdl還有其他的庫是遊戲模擬器所依賴的。
1)解壓fceu
2)cd fceu
3)nm=arm-elf-nm ld=arm-elf-ld cc=arm-elf-gcc cxx=arm-elf-g++ ranlib=arm-elf-ranlib ar=arm-elf-ar ./configure --disable-ipod --enable-video-fbcon --target=arm-elf --host=arm-elf --prefix=/home/hansonlu/resp/source/svn_highwaystar/game/sdl-1.2.13/install
4)make;make install
5)cd test
6)nm=arm-elf-nm ld=arm-elf-ld cc=arm-elf-gcc cxx=arm-elf-g++ ranlib=arm-elf-ranlib ar=arm-elf-ar ./configure --target=arm-elf --host=arm-elf --prefix=/home/hansonlu/resp/source/svn_highwaystar/game/sdl-1.2.13/install
ps1.test目錄下有一些demo可以驗證sdl是否移植成功,記得在鏈結的時候加上-wl,-elf2flt="-s32768"。
ps2.--enable-video-fbcon,因為在./configure的時候,如果交叉編譯器是arm-elf,是不會去檢查fbcon,所以需要手動修改./configure,具體的需要修改**,我沒有詳細看過。你自己動手吧。因為我後來捨棄了sdl的vedio,所以沒有去研究這個。
2.移植zlibc
export cc=arm-elf-gcc
./configure -shared --prefix=/home/hansonlu/resp/source/svn_highwaystar/armutils_2.5.113.0/toolchain
make;make install
prefix是交叉編譯器所在的目錄,也可以是其他的目錄,但是一定把相應的檔案要copy到交叉編譯器所在的目錄。
3.移植fceu
去掉sdl關於video部分,用自己的板子上支援的輸出方式,需要修改的檔案是:
fceu/src/drivers/pc/sdl-video.c
fceu/src/drivers/pc/main.c
fceu/src/drivers/pc/input.c
./configure --host=arm-elf --with-sdl-prefix=/home/hansonlu/resp/source/svn_highwaystar/game/sdl-1.2.13/install --prefix=/home/hansonlu/resp/source/svn_highwaystar/game/fceu/install
記得在鏈結的時候加上-wl,-elf2flt="-s32768",修改makefile檔案src/makefile在$link。。。。最後面加上即可。
make;make install
4.執行fceu
有關遊戲模擬器
寫在前面 最近公司在做 gba的模擬器,順便找了點資料研究了一下。提起模擬器,愛好者們一定會想到 neoragex mame,n64 等著名遊戲機的模擬器。在這些模擬器上可以模擬一些功能強大的街機板,可以讓我們在自己的 pc上免費玩街機的遊戲。想起當初數著錢買遊戲幣的日子,真是乙個天堂乙個人間啊。玩...
模擬器不全屏 Mac原生遊戲模擬器
你是否想為自己的mac電腦安裝一款蘋果原生的遊戲模擬器呢?快來試試openemu for mac吧!openemu mac版是執行在mac平台的原生遊戲模擬器。openemu的遊戲主管介面直觀友好,即使是新手也能一眼看懂。把 rom 檔案拖拽進對應的頻道就能新增遊戲,雙擊右側主介面裡的遊戲封面開始玩...
街機遊戲模擬器 mame for linux
偶爾在linux裡也是要玩下遊戲的,裝乙個街機模擬器玩玩kof也不行噢。sudo apt get install xmame 修改sudo vi etc xmame xmamerc配置檔案,下面的路徑指向你實際的rom目錄 rompath usr share games xmame roms 比如執...