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.

User avatar
geo650
Official SamyGO Developer
Posts: 302
Joined: Wed Oct 07, 2009 12:03 pm

8-bit Atari (XL/XE) emulator

Post by geo650 » Sat May 08, 2010 9:30 am

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 » Mon May 10, 2010 12:46 pm

Similar applies for ZX Spectrum! :D

User avatar
geo650
Official SamyGO Developer
Posts: 302
Joined: Wed Oct 07, 2009 12:03 pm

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

Post by geo650 » Sun May 16, 2010 8:27 am

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 » Sun May 16, 2010 1:20 pm

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

User avatar
geo650
Official SamyGO Developer
Posts: 302
Joined: Wed Oct 07, 2009 12:03 pm

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

Post by geo650 » Sun May 16, 2010 7:58 pm

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:

User avatar
geo650
Official SamyGO Developer
Posts: 302
Joined: Wed Oct 07, 2009 12:03 pm

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

Post by geo650 » Mon Jul 05, 2010 2:23 pm

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: 3106
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

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

Post by erdem_ua » Wed Jul 14, 2010 11:18 pm

Congratulations geo650

User avatar
geo650
Official SamyGO Developer
Posts: 302
Joined: Wed Oct 07, 2009 12:03 pm

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

Post by geo650 » Thu Jul 15, 2010 5:55 am

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 » Thu Jul 15, 2010 7:56 am

Looking forward to playing Kennedy Approach :)

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

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

Post by erdem_ua » Thu Jul 15, 2010 10:15 am

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”