Jump to content

Photo

Fairlight released


34 replies to this topic

#1 mariuszw ONLINE  

mariuszw

    Chopper Commander

  • 125 posts

Posted Sun Dec 25, 2016 11:39 AM

This is Fairlight for Atari 8-bit, isometric arcade adventure from Bo Jangeborg, released in 1985 for ZX Spectrum and later in 1986 for C64 and Amstrad CPC. Atari version has been ported from C64, fixing major weak point of C64 version - slowness. Fairlight on ZX Spectrum is highly regarded game - at the moment its #1 game by World Of Spectrum visitors (http://www.worldofsp.../bestgames.html), the other game from #1 is Great Escape, also ported to Atari 8bit by me.

Game requires 64KB RAM, works on both PAL and NTSC machines, as well as CPU-upgraded Ataris.

Music for both game and intro has been prepared by Wieczór. Music supports stereo Pokey, but works correctly on mono Pokey as well. Atari graphics (loading, title and credits screens) have been prepared by Jose Pereira.

Game has built-in trainer: just press T on start screen.

I am also releasing full source code with all assets. Please refer to readme.txt for the detailed description how to build the game. Game itself is built on top of binary image of C64 version, with patches for input (joystick and keyboard), graphics and sound routines. For graphics I am using C64 bitmap-like mode with 256 pixels wide screen. With this layout, I had only to replace one routines which calculates screen address for given x and y coordinates to make video work. There are also several optimizations implemented.

 

Merry Christmas and enjoy new game!

 

loading.png creditsc64.png creditsa8.png title.png gametitle.png trainer.png game1.png game3.png game4.png game6.png

Attached Files



#2 bfollett OFFLINE  

bfollett

    Dragonstomper

  • 507 posts

Posted Sun Dec 25, 2016 11:58 AM

I didn't do extensive testing but fl.xex is crashing Altirra 2.90 test21 on my pc if I'm configured for PAL.  NTSC starts fine and if I start in NTSC, I can switch over to PAL once the games title screen is already up.

 

Bob



#3 mariuszw ONLINE  

mariuszw

    Chopper Commander

  • Topic Starter
  • 125 posts

Posted Sun Dec 25, 2016 12:04 PM

I didn't do extensive testing but fl.xex is crashing Altirra 2.90 test21 on my pc if I'm configured for PAL.  NTSC starts fine and if I start in NTSC, I can switch over to PAL once the games title screen is already up.

 

Bob

 

Works just fine for me with PAL in Altirra 2.80 and 2.90test21, using ATOS, PAL, 64KB RAM. What config are you using?

 

Mariusz.


Edited by mariuszw, Sun Dec 25, 2016 12:11 PM.


#4 Heaven/TQA OFFLINE  

Heaven/TQA

    Quadrunner

  • 10,003 posts
  • Location:Baden-Württemberg, Germany

Posted Sun Dec 25, 2016 1:15 PM

Well done... need to download finally all those new ports... to my SD

#5 Mclaneinc OFFLINE  

Mclaneinc

    River Patroller

  • 4,655 posts
  • Location:Northolt, UK

Posted Sun Dec 25, 2016 1:27 PM

Works fine on 21 here but I'd suggest not deving around ATOS, its great but if you want 100% compatibility I'd stick to retail OS's just in case...



#6 bfollett OFFLINE  

bfollett

    Dragonstomper

  • 507 posts

Posted Sun Dec 25, 2016 1:48 PM

Hmmm, seems to be the same config.  I looked in Altirra's setup and my XL Rom ver. 2(see photo below)  Not sure if that's the Atari XL OS version you have.  I get to the first screen and hear about 1 note  of the music and then Altirra crashes with the screen shot below.

 

Bob

Attached Thumbnails

  • Image1.jpg
  • Image2.jpg

Edited by bfollett, Sun Dec 25, 2016 1:48 PM.


#7 bfollett OFFLINE  

bfollett

    Dragonstomper

  • 507 posts

Posted Sun Dec 25, 2016 1:51 PM

Ahhh, figured it out.  Basic wasn't disabled.  Odd that it works with NTSC and not PAL if Basic is present.

 

Bob



#8 popmilo OFFLINE  

popmilo

    Stargunner

  • 1,368 posts
  • Location:Senta, Srbija

Posted Sun Dec 25, 2016 2:15 PM

Bravo !!!!
Thanks for this present !

Fast and nice music :)



#9 bfollett OFFLINE  

bfollett

    Dragonstomper

  • 507 posts

Posted Sun Dec 25, 2016 3:26 PM

Actually now I'm really confused.  It actually looks like I have to boot with Basic for PAL to work??? Could that be correct?



#10 mariuszw ONLINE  

mariuszw

    Chopper Commander

  • Topic Starter
  • 125 posts

Posted Sun Dec 25, 2016 4:23 PM

Actually now I'm really confused.  It actually looks like I have to boot with Basic for PAL to work??? Could that be correct?

 

Works for me with original OS images, BASIC disabled and enabled, both PAL and NTSC, Altirra 2.90test21. Can you please save state when game crashes and post it to the thread?



#11 bfollett OFFLINE  

bfollett

    Dragonstomper

  • 507 posts

Posted Sun Dec 25, 2016 5:07 PM

I can't attach .altstate files on this forum so I renamed it .xex  Just rename the file with the correct extension when you download it.  I was configured PAL, 64K, Atari XL bios, no basic.   I also attached the Atari XL rom I've been using.

 

Bob

Attached Files


Edited by bfollett, Sun Dec 25, 2016 5:11 PM.


#12 CharlieChaplin OFFLINE  

CharlieChaplin

    River Patroller

  • 2,411 posts

Posted Sun Dec 25, 2016 5:16 PM

So, this is the final version of http://atariage.com/...ort-fairlight/    ?


Edited by CharlieChaplin, Sun Dec 25, 2016 5:17 PM.


#13 Xuel OFFLINE  

Xuel

    Dragonstomper

  • 595 posts
  • Location:US

Posted Sun Dec 25, 2016 5:54 PM

I see the same thing that bfollett sees when booting fl.xex directily in Altirra. This seems to fix it:

 

Attached File  fl-fix.xex   44.41KB   65 downloads

 

I just added a "sta DMACTL" in the second INI block at 600 right after the "lda #0". Otherwise ANTIC starts firing bogus NMIs when NMIEN is re-enabled due to the DLIST getting overwritten.



#14 mariuszw ONLINE  

mariuszw

    Chopper Commander

  • Topic Starter
  • 125 posts

Posted Sun Dec 25, 2016 6:57 PM

I see the same thing that bfollett sees when booting fl.xex directily in Altirra. This seems to fix it:

 

attachicon.giffl-fix.xex

 

I just added a "sta DMACTL" in the second INI block at 600 right after the "lda #0". Otherwise ANTIC starts firing bogus NMIs when NMIEN is re-enabled due to the DLIST getting overwritten.

 

Thanks for spotting the problem and providing the fix.

 

Mariusz.



#15 mariuszw ONLINE  

mariuszw

    Chopper Commander

  • Topic Starter
  • 125 posts

Posted Sun Dec 25, 2016 6:58 PM

So, this is the final version of http://atariage.com/...ort-fairlight/    ?

 

Yes, exactly.



#16 bfollett OFFLINE  

bfollett

    Dragonstomper

  • 507 posts

Posted Sun Dec 25, 2016 7:32 PM

I see the same thing that bfollett sees when booting fl.xex directily in Altirra. This seems to fix it:

 

attachicon.giffl-fix.xex

 

I just added a "sta DMACTL" in the second INI block at 600 right after the "lda #0". Otherwise ANTIC starts firing bogus NMIs when NMIEN is re-enabled due to the DLIST getting overwritten.

 

Your fix worked for me as well.  Thanks for the quick fix and proving I wasn't crazy (at least in this instance).

 

Bob



#17 tjlazer OFFLINE  

tjlazer

    Stargunner

  • 1,754 posts
  • Retro Atari Addict
  • Location:Historic South Tacoma, WA USA

Posted Sun Dec 25, 2016 11:16 PM

Thank you for the very nice port!

So this fix is not needed for real hardware?

#18 _The Doctor__ OFFLINE  

_The Doctor__

    River Patroller

  • 2,032 posts
  • Location:10-0-11-00:02

Posted Sun Dec 25, 2016 11:28 PM

so is the fix done to the atr as well?



#19 mariuszw ONLINE  

mariuszw

    Chopper Commander

  • Topic Starter
  • 125 posts

Posted Mon Dec 26, 2016 2:50 AM

Here is updated version, which should (hopefully) fix problem on Altirra, and on real hardware (if previous version really had them). Please let me know if it works on real hardware correctly.

 

Mariusz.

Attached Files


Edited by mariuszw, Mon Dec 26, 2016 2:52 AM.


#20 Tezz OFFLINE  

Tezz

    River Patroller

  • 2,260 posts
  • Location:Manchester, England

Posted Mon Dec 26, 2016 5:29 AM

:thumbsup: Mariusz. Merry Christmas



#21 vanfanel OFFLINE  

vanfanel

    Star Raider

  • 67 posts

Posted Mon Dec 26, 2016 7:20 AM

Fantastic release!! Works great on my ZX-UNO! :D



#22 shoestring OFFLINE  

shoestring

    Chopper Commander

  • 191 posts
  • Location:Sydney

Posted Wed Dec 28, 2016 2:58 AM

Thanks for the source, this is very useful as I'd like to do a port of my own.

 

There seems to be an issue with the very last portion of the build process.

 

"mads -t -l flgame.asm" which creates the flgame.obx file.

 

The intro runs fine but the actual game crashes on startup ( when running flgame.obx on Altirra ).

 

I can run my assembled fl.obx from the main directory, so I know that's probably not the issue.

 

It has something to do with the below steps which takes the raw dump from the debugger and compresses it to create the bin file. But what's odd is that the same steps used to build the intro work with no issues. I suspect that I need to make some changes to the flgame.asm source. My bin file sizes are slightly different ( fl.bin=26,486 flintro.bin=10,265 ), raw file sizes are the same as the ones in your original arhive.

 

run Altirra, load fl.obx and use command: .writemem fl.raw 0800 LC800
7. Compress game image:
7z a -tgzip -mx=9 -so dummy fl.raw | gzip2deflate >fl.bin

Edited by shoestring, Wed Dec 28, 2016 3:07 AM.


#23 mariuszw ONLINE  

mariuszw

    Chopper Commander

  • Topic Starter
  • 125 posts

Posted Wed Dec 28, 2016 3:06 PM

 

Thanks for the source, this is very useful as I'd like to do a port of my own.

 

There seems to be an issue with the very last portion of the build process.

 

"mads -t -l flgame.asm" which creates the flgame.obx file.

 

The intro runs fine but the actual game crashes on startup ( when running flgame.obx on Altirra ).

 

I can run my assembled fl.obx from the main directory, so I know that's probably not the issue.

 

It has something to do with the below steps which takes the raw dump from the debugger and compresses it to create the bin file. But what's odd is that the same steps used to build the intro work with no issues. I suspect that I need to make some changes to the flgame.asm source. My bin file sizes are slightly different ( fl.bin=26,486 flintro.bin=10,265 ), raw file sizes are the same as the ones in your original arhive.

 

run Altirra, load fl.obx and use command: .writemem fl.raw 0800 LC800
7. Compress game image:
7z a -tgzip -mx=9 -so dummy fl.raw | gzip2deflate >fl.bin

 

 

I guess I forgot last minute addition to readme.txt - when writing fl.raw game image, be sure to execute first few instruction so that RAM at $C000 gets paged in. It's lda #$fe/sta portb which does the paging (just stop at $5020).

 

What port are you planning?

 

Mariusz.



#24 shoestring OFFLINE  

shoestring

    Chopper Commander

  • 191 posts
  • Location:Sydney

Posted Wed Dec 28, 2016 4:28 PM

That seems to be working fine now and I can build the xex without problems. I haven't tried building the ATR but I don't see why those instructions wouldn't work.

 

I'm not sure which game yet, I'm going through the list of games on the c64 that I liked playing as I was growing up. Maybe something like LCP ( Little Computer People ) ?


Edited by shoestring, Wed Dec 28, 2016 4:28 PM.


#25 mariuszw ONLINE  

mariuszw

    Chopper Commander

  • Topic Starter
  • 125 posts

Posted Thu Dec 29, 2016 1:57 PM

I'm not sure which game yet, I'm going through the list of games on the c64 that I liked playing as I was growing up. Maybe something like LCP ( Little Computer People ) ?

 

Never heard before about Little Computer People, just looked at this today, and it looks very nice.

 

I guess it could be ported to Atari 8-bit, you will however need to redesign the graphics - Atari can do 4 colors in 160x200 bitmap mode which original game uses, or, if you use raster interrupts you may get 4 colors per line, or with some PM/G magic more colors, but that needs careful design. C64 has color map, so colors are quite freely distributed over bitmap. Hardware sprites which original uses will also need redesign - either use software sprites (and share colors with background) or use PM/G, but then you may easily prepare one sprite, and second will still need to be software. You will also have some work to convert drawing routines to Atari bitmap layout which is linear. Fairlight on the other hand fit very well on Atari, as it doesn't use anything Atari cannot do (two-color bitmap without hardware sprites) so porting that particular game was much easier.

 

Good luck with the project. Feel free to ask more questions about porting from C64 to Atari if necessary.

 

Mariusz.






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users