Jump to content
IGNORED

Spy Hunter


Traxx

Recommended Posts

Ok so I did most of the work on reverse engineering the c64 version and would like to port it to 7800,I'd like someone to help build the map as this would take a huge load of work off of me,I ripped out the charset in winvice debugger,I use c64 charpad and will send the ctm over to you.Those guys updated the sprites for the game and I'll use that work as it didn't happen for them

sh-hires2bcrt.png.

 

 

 

Edited by Traxx
  • Like 5
Link to comment
Share on other sites

On 8/21/2022 at 10:55 AM, Traxx said:

Ok so I did most of the work on reverse engineering the c64 version and would like to port it to 7800,I'd like someone to help build the map as this would take a huge load of work off of me,I ripped out the charset in winvice debugger,I use c64 charpad and will send the ctm over to you.Those guys updated the sprites for the game and I'll use that work as it didn't happen for them

sh-hires2bcrt.png.

 

 

 

Love Spy Hunter! It's one of my all time favorite games. 
 

Would love to see it on the 7800. 

 

  • Like 1
Link to comment
Share on other sites

On 8/21/2022 at 1:55 PM, Traxx said:

Ok so I did most of the work on reverse engineering the c64 version and would like to port it to 7800,I'd like someone to help build the map as this would take a huge load of work off of me,I ripped out the charset in winvice debugger,I use c64 charpad and will send the ctm over to you.Those guys updated the sprites for the game and I'll use that work as it didn't happen for them

sh-hires2bcrt.png.

 

 

 

What mode are you using?

You could use 320B so whenever it is viewed on real hardware using RF or composite, it will have 32 colors instead of 7.

  • Like 1
Link to comment
Share on other sites

You would need to make new artwork though.

What is nice about 320 modes is the pixels are almost square, but they are taller than they are wide. You can view on 16*9 aspect ratio (Including borders of course) and get square pixels.

I don't know if my HDTV can properly display 4*3 for RF, it can for composite and up though.

  • Like 1
Link to comment
Share on other sites

I'm putting the map in right now,I'll try some things once I get all sections of road implemented,also don't need help with the map as it's easier for me to add the road section data myself in assembly.There is no large map to this game it's a pointer to a multiple road sections.

Edited by Traxx
Link to comment
Share on other sites

Good job @Traxx. I would reccomend using 320B if you don't care too much about color- it's double the resolution of 160A and has the same properties (4 colors per tile)

But the format is different. I can explain if you want.

You also can't do a full screen with 320B due to DMA limitations. (You can but then you really only get 2 sprites per line in 320B)

You also only get 7 colors max, 2 palletes of 3 colors with transparency.

If you need more color, there's also 320C.

 

Edit: If you want to see what 320C can do, I have something that uses 320C.

Edited by Ecernosoft
  • Like 1
Link to comment
Share on other sites

1 hour ago, Ecernosoft said:

Good job @Traxx. I would reccomend using 320B if you don't care too much about color- it's double the resolution of 160A and has the same properties (4 colors per tile)

But the format is different. I can explain if you want.

You also can't do a full screen with 320B due to DMA limitations. (You can but then you really only get 2 sprites per line in 320B)

You also only get 7 colors max, 2 palletes of 3 colors with transparency.

If you need more color, there's also 320C.

 

Edit: If you want to see what 320C can do, I have something that uses 320C.

Dariusz showed a direct mode working example and that was very,very impressive,you can have a lot more colors in direct mode.Sure,share your 320C example,thanks Ecernosoft

Edited by Traxx
Link to comment
Share on other sites

18 hours ago, x=usr(1536) said:

Dumb question: have you given any thought as to how to handle the controls?  I realise that the answer to this is almost certainly 'yes', but I'm just wondering what your thoughts are as I certainly don't have any good ones :-D

 

Something like this

 

CarAccelerate:
  ldy CarAccelerateIndex
  lda CarYPositionTbl,y
  sta CarYPosition
  lda CarAccelerateDelay
  bne Acceldelay
  ldy CarAccelerateIndex
  lda CarAccelerateDelayTbl,y
  sta CarAccelerateDelay
  cpy #24
  bcs @+
  inc CarAccelerateIndex
  rts
Acceldelay:
  dec CarAccelerateDelay
  rts   	
@:  
  lda #25
  sta CarAccelerateIndex
  rts
  
CarDecelerate:
  ldy CarAccelerateIndex
  beq @+
  dey
@:  
  lda CarYPositionTbl,y
  sta CarYPosition
  lda CarAccelerateDelay
  bne Acceldelay
  cpy #0
  beq @+
  lda CarAccelerateDelayTbl,y
  sta CarAccelerateDelay
  dec CarAccelerateIndex
  beq @+
  rts
@:
  ldy #0
  sty CarAccelerateDelay  
  lda CarYPositionTbl,y
  sta CarYPosition
  rts

 

Edited by Traxx
  • Like 1
Link to comment
Share on other sites

8 hours ago, Traxx said:

Something like this:

Gotcha, and I can see how that works from a software perspective, at least for player control.

 

I wasn't at all clear about this in my original question, but what I was mainly wondering about was how to handle the sheer number of controls Spy Hunter has.  It's been years since I owned the upright, but IIRC it was somewhere in the region of five separate items (buttons, pedal, gear lever, etc.) in addition to the steering wheel.

 

As you'd mentioned the NES control scheme (with which I was previously-unfamiliar), I did check it out.  Given what a stock 7800 controller has to work with, it's probably about the best compromise and could be accomplished with the buttons on the console.  Granted, a player would have to be sitting very close to the console in order for this to work, but that's just the reality of the compromise.  Not a huge deal at all.

  • Like 1
Link to comment
Share on other sites

18 hours ago, Traxx said:

Dariusz showed a direct mode working example and that was very,very impressive,you can have a lot more colors in direct mode.Sure,share your 320C example,thanks Ecernosoft

Ok. 

320C_test - 2022-08-29T100920.510.a78320C_test (2).a

 

.a78 is binary, .a is code

Edit: It even has TIA music!

 

Edit 2: Can I see your direct mode thing? Oh wait is that 160C? Yes, I've seen it. It's too bad it takes up 1.5K of RAM just for the DLL's!

 

Edit 3: 320C is one of the weird modes. It's very powerful though!

There are 2 palletes of 4 colors. Each pair of pixels can be assigned one of the 4 colors.

 

Bits 7-4 are the pixels. Bits 3-0 are the color information. (So Bits 3-2 are the color for the first and second pixels and 1-0 are the color for the second two)

Also, 320C is also heavy on DMA usage. You also can't do a full screen of 320C.

 

If you still need more color in 320 modes you can resort to artifacting but it's hard to program without a real 7800.

Edited by Ecernosoft
  • Thanks 1
Link to comment
Share on other sites

13 minutes ago, Traxx said:

Thanks Ecernosoft,I had a look at it but need to go through the code you provided to get a good understanding.As soon as I seen all the characters moving around I thought....this reminds me of Ice Hockey on nes.

Yes... If you need me to walk through the code I can.

 

Edit: if you want me to make a version with better/more labels and comments I can.

Edited by Ecernosoft
  • Thanks 1
Link to comment
Share on other sites

2 hours ago, Cris1997XX said:

Another Commodore 64-to-Atari 7800 port? Was Ghost N Goblins even completed...?

C64 uses double wide pixels so it makes it easier to port assets over to 7800,it also has a much larger color palette so just using colors to get a closer arcade look already looks far better then anything the c64 can do.As for Ghosts N Goblins you'd have to ask the person porting it.

 

C64 chars with 7800 colors just to show you how big a difference a large color palette makes

 

JS7800 Spy Hunter With Better Colors

 

 

Edited by Traxx
  • Like 5
Link to comment
Share on other sites

1 hour ago, Traxx said:

C64 uses double wide pixels so it makes it easier to port assets over to 7800,it also has a much larger color palette so just using colors to get a closer arcade look already looks far better then anything the c64 can do.As for Ghosts N Goblins you'd have to ask the person porting it.

 

C64 chars with 7800 colors just to show you how big a difference a large color palette makes

 

JS7800 Spy Hunter With Better Colors

 

 

Of course it's better because 7800 has 320 modes (320D is useful if you are willing to work with NTSC artifacting and then you get 320B for sprites.

If you don't want to use 320 modes (Of course, 320C gives the most color and then you get 320A for mono tiles) then you have 160A and 160B.

160A is low DMA cost and you get 8 palletes of 3 colors.

160B is better with 2 palletes of 12 colors, but with higher DMA cost. 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...