8-bit Atari (XL/XE) emulator

Here are software that related with Samsung B series TVs. Like hex editors, new version of BusyBox or internal software, app programs that will run in your TV hardware.:!:This forum is NOT FOR USER QUESTIONS or Problems.

geo650
Official SamyGO Developer
Posts: 303
Joined: Wed Oct 07, 2009 12:03 pm

8-bit Atari (XL/XE) emulator

Post by geo650 »

Have anybody ported Atari XL/XE emulator for Samsung TV?
I have found a linux source code for that (http://atari800.sourceforge.net/index.html) but I have problems with porting it with our cross-compiler. There is a version for SDL so I think it can be done.
It would be great to play River Raid in Content Library :P
doodlecz
Official SamyGO Developer
Posts: 98
Joined: Wed Mar 17, 2010 9:12 am

Re: 8-bit Atari (XL/XE) emulator

Post by doodlecz »

Similar applies for ZX Spectrum! :D
geo650
Official SamyGO Developer
Posts: 303
Joined: Wed Oct 07, 2009 12:03 pm

Re: 8-bit Atari (XL/XE) emulator

Post by geo650 »

I am still trying to compile atari800 on SamyGO cross-compiler but I got stuck during make command:
...
arm-SamyGO-linux-gnueabi-gcc -o atari800 afile.o antic.o atari.o binload.o cartridge.o cassette.o compfile.o cfg.o cpu.o devices.o esc.o gtia.o log.o memory.o monitor.o pbi.o pia.o pokey.o rtime.o sio.o util.o atari_sdl.o pbi_proto80.o input.o statesav.o ui_basic.o ui.o colours.o screen.o cycle_map.o pbi_mio.o pbi_bb.o pbi_scsi.o pokeysnd.o mzpokeysnd.o remez.o sndsave.o pbi_xld.o votrax.o xep80.o xep80_fonts.o atari_ntsc.o -lm -lpng -lz /usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a -lpthread
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_audio.o): In function `SDL_PauseAudio':
SDL_audio.c:(.text+0x304): undefined reference to `AudioPause'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_dummyaudio.o): In function `DUMMYAUD_CloseAudio':
SDL_dummyaudio.c:(.text+0x150): undefined reference to `AudioClose'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_dummyaudio.o): In function `DUMMYAUD_PlayAudio':
SDL_dummyaudio.c:(.text+0x17c): undefined reference to `PlayAudioBuffer'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_dummyaudio.o): In function `DUMMYAUD_OpenAudio':
SDL_dummyaudio.c:(.text+0x2a4): undefined reference to `AudioInit'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullvideo.o): In function `DUMMY_FreeHWSurface':
SDL_nullvideo.c:(.text+0x3b0): undefined reference to `y_FreeHWSurface'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullvideo.o): In function `DUMMY_SetHWAlpha':
SDL_nullvideo.c:(.text+0x3bc): undefined reference to `y_SetHWAlpha'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullvideo.o): In function `DUMMY_SetHWColorKey':
SDL_nullvideo.c:(.text+0x3c8): undefined reference to `y_SetHWColorKey'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullvideo.o): In function `DUMMY_HWFillRect':
SDL_nullvideo.c:(.text+0x3d8): undefined reference to `y_HWFillRect'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullvideo.o): In function `DUMMY_HWSWAccelBlit':
SDL_nullvideo.c:(.text+0x3dc): undefined reference to `y_HWSWAccelBlit'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullvideo.o): In function `DUMMY_HWAccelBlit':
SDL_nullvideo.c:(.text+0x3e0): undefined reference to `y_HWAccelBlit'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullvideo.o): In function `DUMMY_AllocHWSurface':
SDL_nullvideo.c:(.text+0x3e8): undefined reference to `y_AllocHWSurface'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullvideo.o): In function `DUMMY_SetVideoMode':
SDL_nullvideo.c:(.text+0x488): undefined reference to `VideoInit'
SDL_nullvideo.c:(.text+0x490): undefined reference to `GetFrameBufferAddress'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullvideo.o): In function `DUMMY_UpdateRects':
SDL_nullvideo.c:(.text+0x5a0): undefined reference to `UpdateSurface'
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_nullevents.o): In function `DUMMY_PumpEvents':
SDL_nullevents.c:(.text+0xa40): undefined reference to `InputKeyState'
SDL_nullevents.c:(.text+0xa50): undefined reference to `InputKeyData'
collect2: ld returned 1 exit status
make: *** [atari800] Error 1
Any ideas?
arris69
Official SamyGO Developer
Posts: 1700
Joined: Fri Oct 02, 2009 8:52 am
Location: Austria/Vienna (no Kangaroos here)
Contact:

Re: 8-bit Atari (XL/XE) emulator

Post by arris69 »

geo650 wrote:I am still trying to compile atari800 on SamyGO cross-compiler but I got stuck during make command:
...
arm-SamyGO-linux-gnueabi-gcc -o atari800 afile.o antic.o atari.o binload.o cartridge.o cassette.o compfile.o cfg.o cpu.o devices.o esc.o gtia.o log.o memory.o monitor.o pbi.o pia.o pokey.o rtime.o sio.o util.o atari_sdl.o pbi_proto80.o input.o statesav.o ui_basic.o ui.o colours.o screen.o cycle_map.o pbi_mio.o pbi_bb.o pbi_scsi.o pokeysnd.o mzpokeysnd.o remez.o sndsave.o pbi_xld.o votrax.o xep80.o xep80_fonts.o atari_ntsc.o -lm -lpng -lz /usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a -lpthread
/usr/local/arm-SamyGO-linux-gnueabi/lib/libSDL.a(SDL_audio.o): In function `SDL_PauseAudio':
...
Any ideas?
if you realy try to build a dynamic executable you need to link against libGPlayerPorting.so and libYahooSDLHWAcceleration.so and you have to implement the "draw-to-screen" routine.

if you like to build a shared object file (game library) you need -shared -fPIC flags and you app needs the function Game_Main.

hth
arris
geo650
Official SamyGO Developer
Posts: 303
Joined: Wed Oct 07, 2009 12:03 pm

Re: 8-bit Atari (XL/XE) emulator

Post by geo650 »

arris69 wrote:if you realy try to build a dynamic executable you need to link against libGPlayerPorting.so and libYahooSDLHWAcceleration.so and you have to implement the "draw-to-screen" routine.

if you like to build a shared object file (game library) you need -shared -fPIC flags and you app needs the function Game_Main.
As we know, the source project of atari800 creates an executable file (not shared library or something like that).
At this very first stage I wanted to build "anything" (an useless executable file) to check if you can build a binary executable file for ARM.
In the second stage, I wanted to create a "Game" (i.e. shared library file with Game_Main() function inside).

Thanks to your help, I finally could build a "Game" library (1.3MB binary). Extra Game_Main() function (I hope it is exported well) which calls main() function from atari_sdl.c is added to run the emulator from Content Library.

The next step will be trying this piece of software to work on TV, because there is only black screen visible. TV doesn't restart, telnet works, but remote control is not responding (although LED is blinking). USB keyboard (with driver loaded) seems to do nothing.
Maybe a "draw-to-screen" routine is needed?
I was thinking that that SamyGO's SDL does the whole job. Probably not.

Not everything is clear for me yet. I need to learn more, then. I am still digging. :roll:
geo650
Official SamyGO Developer
Posts: 303
Joined: Wed Oct 07, 2009 12:03 pm

Re: 8-bit Atari (XL/XE) emulator

Post by geo650 »

Thanks to the people from Polish atari.area forum (especially Fox) we have got a milestone. Basic mode version executable (no graphics, no sound,...) seems to work well in telnet session. You can now execute simple BASIC programs in text mode.

Next step is to port SDL version of the emulator to get graphics alive.
Current state of this project: SDL version restarts TV at init (after ROM files have been loaded).

Keep your fingers crossed :)


EDIT: one more step done :P

Image
User avatar
erdem_ua
SamyGO Admin
Posts: 3125
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

Re: 8-bit Atari (XL/XE) emulator

Post by erdem_ua »

Congratulations geo650
geo650
Official SamyGO Developer
Posts: 303
Joined: Wed Oct 07, 2009 12:03 pm

Re: 8-bit Atari (XL/XE) emulator

Post by geo650 »

Thank you.
The emulator is almost done. Release #1 THIS SATURDAY!
I've been playing River Raid already with USB keyboard connected ;) It really works. Uses ca. 50% of ARM CPU power.
The most important problem is delayed sound (~0.5s), but I am not going to fix it in this release. Actually, I don't know if it can be fixed.
THOUSANDS OF GAMES ARE WAITING... :lol:
Last edited by geo650 on Sat Jul 17, 2010 12:49 pm, edited 2 times in total.
doodlecz
Official SamyGO Developer
Posts: 98
Joined: Wed Mar 17, 2010 9:12 am

Re: 8-bit Atari (XL/XE) emulator

Post by doodlecz »

Looking forward to playing Kennedy Approach :)
User avatar
erdem_ua
SamyGO Admin
Posts: 3125
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

Re: 8-bit Atari (XL/XE) emulator

Post by erdem_ua »

I don't know why SDL sound delays half second. It's really annoying issue. :(
It's great if you can solve sound delay problem. I wish you could.

Post Reply

Return to “[B] Software”