Jump to content
IGNORED

Through the Trap Door


Asmusr

Recommended Posts

On 4/27/2023 at 6:13 PM, TheBF said:

Memory to memory architecture for the win.

Exactly. As we've said a number of times before, with the TMS 9900 it's almost always better to use the most complicated version of an instruction than five simple ones. The simple ones need too much time to even run at all.

In this particular case, CB @HIT,@FRAME_REF will use 30 cycles on a machine with 16-bit RAM and 50 cycles with a standard machine.
But since the minimum timing for any TMS 9900 instruction is 8 cycles, most are 12-14 and then you need to add four cycles for each memory access on a standard machine, where you have one to read the instruction and some more to manipulate any data, there's no way you can get around with five separate instructions in 50 cycles.

  • Like 2
Link to comment
Share on other sites

There is no question that one instruction is faster than five. But Tursi suggested that these optimizations could be done automatically, and I think it would be difficult except in the most trivial cases, e.g. inc inc -> inct. Since there are no local variables, eliminating an intermediate register can have consequences in an entirely different part of the code. Even after manual optimization, the general picture is that Z80 code converted to the TMS9900 is running at half the speed or less compared to the ZX Spectrum. That may be OK if the majority of the time is spent in limited places, e.g. graphics drawing loops, which can then be optimized by unrolling or executing from scratch pad. 

  • Like 2
Link to comment
Share on other sites

2 hours ago, OX. said:

Source code here for some Spectrum classics - https://github.com/topics/skoolkit  I'd love to see Wheelie, Manic Miner and Skooldaze on the TI99/4a

Of the three games you mention, Manic Miner is a good candidate, but since I already made a version of Jet Set Willy it's not so attractive to me. Regarding Wheelie it looks like we would get better results from a remake on the TI than a port, and Skool Daze seems very complex and I doubt that many other than you would actually play it. It's my impression that people here generally prefer simpler, arcade style games.

  

There is a longer list of disassemblies here:

 

https://skoolkit.ca/links/

 

Unfortunately the disassembly of Way of the Exploding Fist is not complete, because I think we need a good fighting game.  The Hobbit is also lacking some information to be portable. I'm considering Atic Atac, since that's well documented and appears to be doable using hardware sprites, but would anyone like that? I would like to hear which games people prefer. 

  • Like 5
Link to comment
Share on other sites

I am not in love for the spectrum games in general because the graphics colors limit and sounds but I have to admit there are a lot of games.
I agree on the Rasmus considerations about games to choice.

Of the games listed at the link I like also Commando and it is not so bad to be a Spectrum version too. Of course the TI99 can do very better but it is a nice game anyway and also Rasmus already converted the main theme :p 

 

Anyway my dream would be to see a conversion of this updated version of the Kung-Fu Master made in 2018 for the spectrum but it seems like there is not a disassembly of it around the web.
Maybe asking to the developers...? :D

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

27 minutes ago, ti99iuc said:

I am not in love for the spectrum games in general because the graphics colors limit and sounds

 

I agree with you. I don't play with ZX Spectrum games because I find its graphics limitation ugly.  I think that a TI-99/4A port of Spectrum games should bring graphical improvements to exploit the TMS-9928 VDP otherwise might as well to play Spectrum games (for those who like this computer) directly on a Spectrum.
That said the port work make by Rasmus is impressive, as always.

  • Like 1
  • Sad 1
Link to comment
Share on other sites

7 minutes ago, fabrice montupet said:

That said the port work make by Rasmus is impressive, as always.

This is absolutely always the truth :)
I also loved Flying Shark (not a simple conversion from the spectrum) and for me it is one of the best games on the TI99/4A.
Anyway, also if I am not in love for the spectrum games conversions as-is, I always appreciate the great work and I will play them on the TI99
:D 
I know that I will never play on the Spectrum Emulator or a real Spectrum... at least on the TI99 I could :p 


PS: I also have a ZX 48k in my personal little collection.

  • Like 1
  • Confused 1
Link to comment
Share on other sites

oh well,

I'm definitely not a developer, and that's why for me anything you make come out of your work is always appreciated.
 

What I meant however was different and related only to the graphics and sound aspect of the spectrum versus the TI99.


It was to explain my preference and my opinion on what I don't like about the spectrum not what you do and how much effort goes into it, that nobody questions.

Link to comment
Share on other sites

2 hours ago, Asmusr said:

Of the three games you mention, Manic Miner is a good candidate, but since I already made a version of Jet Set Willy it's not so attractive to me. Regarding Wheelie it looks like we would get better results from a remake on the TI than a port, and Skool Daze seems very complex and I doubt that many other than you would actually play it. It's my impression that people here generally prefer simpler, arcade style games.

  

There is a longer list of disassemblies here:

 

https://skoolkit.ca/links/

 

Unfortunately the disassembly of Way of the Exploding Fist is not complete, because I think we need a good fighting game.  The Hobbit is also lacking some information to be portable. I'm considering Atic Atac, since that's well documented and appears to be doable using hardware sprites, but would anyone like that? I would like to hear which games people prefer. 

Hi Rasmus, I hear and respect what you are saying.  The ZX Spectrum was my first computer and the only 8 or 16 bit computer today that I still collect physical games for, I suggested those titles because they are considered classics and I believe would receive the most love and replay value.  I personally don't believe that much Spectrum software after 1985 would be worth porting as developers tried to stretch the capabilities of the machine too much and either ended up with a mess of colour clash or almost pure monochrome games then they tried to port games from 16 bit machines to the Spectrum and while some of the ports were regarded as impressive efforts they still played like shit.

 

I would be interested to know did you have a ZX Spectrum yourself back in the day?  I'll have to take a look at that full disassembly list and see I can pick out some classics, imho the best Spectrum games are the ones that made with gameplay in mind and not trying to (poorly) copy stuff from other systems.

PS.  I think it is universally agreed that the ZX Spectrum version of Manic Miner stands as the best version of the game so would still recommend it ;)

 

I've never been a game developer myself although I spent 10 year as a business software developer, different levels .. I think the stuff your churning out over the last 12 years makes you the best TI99/4a developer out there imho.

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

Had a look at that list and there are some beauties - Atic Atac, Chuckie Egg, Deathchase, Dynamite Dan, Lunar Jetman, Rex, Scuba Dive, Technician Ted, The Great Escape, all highly rates classics that I think would look good on TI99/4a

Edited by OX.
  • Like 2
Link to comment
Share on other sites

16 minutes ago, OX. said:

I would be interested to know did you have a ZX Spectrum yourself back in the day?

I don't think I actually owned a Spectrum, but several of my friends had them, so I'm familiar with a lot of the software. Later I also had a CPC464 for which lots of Spectrum games were ported. I think it's amazing what they managed to squeeze you of the Spectrum in terms of complexity and large game worlds, and IMO the TI games from back in the days don't come anywhere near it despite the TI's ability for better graphics and sound. Edit: Having 48K RAM of course helped a lot.

Edited by Asmusr
  • Like 3
Link to comment
Share on other sites

6 minutes ago, Asmusr said:

I don't think I actually owned a Spectrum, but several of my friends had them, so I'm familiar with a lot of the software. Later I also had a CPC464 for which lots of Spectrum games were ported. I think it's amazing what they managed to squeeze you of the Spectrum in terms of complexity and large game worlds, and IMO the TI games from back in the days don't come anywhere near it despite the TI's ability for better graphics and sound.

Yeah unfortunately the TI was crippled by it's 16k memory and requirement for add-on's whereas other systems just ran out of the box, if only it started life with 48k or even 64k the history would be completely different .. and there was Texas Instruments in a position at the time to dictate it's own in-house ram chip pricing.

Edited by OX.
  • Like 2
Link to comment
Share on other sites

48 minutes ago, ti99iuc said:

oh well,

I'm definitely not a developer, and that's why for me anything you make come out of your work is always appreciated.
 

What I meant however was different and related only to the graphics and sound aspect of the spectrum versus the TI99.


It was to explain my preference and my opinion on what I don't like about the spectrum not what you do and how much effort goes into it, that nobody questions.

You can volunteer to redraw the West Bank graphics with more colors. 

  • Like 2
Link to comment
Share on other sites

Oh yes, i would really like to learn but i am not sure i have the right skills to be able to do. I tried to create something months ago using PS but without success on the ti99.

Probably i could learn something more with a bit of help, something like "for dummies" ☺️

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

9 hours ago, ti99iuc said:

Oh yes, i would really like to learn but i am not sure i have the right skills to be able to do. I tried to create something months ago using PS but without success on the ti99.

Probably i could learn something more with a bit of help, something like "for dummies" ☺️

Using https://raphael.js99er.net/ is about as simple as it gets.

  • Like 2
Link to comment
Share on other sites

8 hours ago, jrhodes said:

@Asmusr, I'm all for converting or porting zx speccy games to get them on the ti. I kind of like the speccys graphics.

Although, i have to admit that Flying Shark does look 10x better on the ti with the enhanced graphics.

Surely enhanced graphics looks better, but converting a game doesn't mean you can't have enhanced graphics. We're just lacking people here with an interest in doing the graphics work. And it's not like the TMS9918A provides a huge advantage over the Spectrum, for instance it's almost impossible to draw anything with an outline. A 128x192 mode where each pixel could be colored individually would have been much more useful.

 

 

  • Like 2
Link to comment
Share on other sites

1 hour ago, Asmusr said:

And it's not like the TMS9918A provides a huge advantage over the Spectrum, for instance it's almost impossible to draw anything with an outline. A 128x192 mode where each pixel could be colored individually would have been much more useful.

You're right. Although the TI-99/4A has better graphics possibilities that the ZX Spectrum, the TMS9918 has limitations too. But using its features would offer the sensation and the pleasure to use a TI-99/4A and not a ZX Spectrum.

That said, effectively, finding people for doing graphics can be a problem. I will try to free some time to do, Raphael is an excellent tool for that.

  • Like 2
Link to comment
Share on other sites

On 5/5/2023 at 3:22 AM, Asmusr said:

There is no question that one instruction is faster than five. But Tursi suggested that these optimizations could be done automatically, and I think it would be difficult except in the most trivial cases, e.g. inc inc -> inct. Since there are no local variables, eliminating an intermediate register can have consequences in an entirely different part of the code. Even after manual optimization, the general picture is that Z80 code converted to the TMS9900 is running at half the speed or less compared to the ZX Spectrum. That may be OK if the majority of the time is spent in limited places, e.g. graphics drawing loops, which can then be optimized by unrolling or executing from scratch pad. 

Been a bit since I've checked in, but yeah, I was totally thinking only of the most trivial cases. They can add up! :)

 

Link to comment
Share on other sites

On 5/5/2023 at 8:58 PM, Asmusr said:

Of the three games you mention, Manic Miner is a good candidate, but since I already made a version of Jet Set Willy it's not so attractive to me. Regarding Wheelie it looks like we would get better results from a remake on the TI than a port, and Skool Daze seems very complex and I doubt that many other than you would actually play it. It's my impression that people here generally prefer simpler, arcade style games.

  

There is a longer list of disassemblies here:

 

https://skoolkit.ca/links/

 

Unfortunately the disassembly of Way of the Exploding Fist is not complete, because I think we need a good fighting game.  The Hobbit is also lacking some information to be portable. I'm considering Atic Atac, since that's well documented and appears to be doable using hardware sprites, but would anyone like that? I would like to hear which games people prefer. 

Manic Miner and Atic Atac are surely two games that characterized the Spectrum in '80s and are well known also by owners of other systems. Similarly to Parsec and Munch Man for the TI. Jet Set Willy is the sequel of Manic Miner, but a conversion is worth in any case. So, why not convert both? 🙂 

 

  • Thanks 1
Link to comment
Share on other sites

1 hour ago, tmop69 said:

So, why not convert both?

All I can say is that Manic Miner is not going to be my next project. But the source code is very well documented, and it's using a standardized data structure, so getting the rooms graphics and sprites up and running on the TI should be simple enough for anyone who knows some assembly - even without any knowledge of Z80 and the Spectrum. It's a very rewarding moment of a conversion when you see the first graphics appearing, I can recommend it. 😊 

 

The horizontal sprite movement in Manic Miner and Jet Set Willy is done by changing the sprite patterns rather than moving the sprites. The sprites are 16 pixels wide and the graphics of the sprite is 8 pixel wide and it moves 2 pixels at a time in 4 frames, after which the whole sprite moves 8 pixels. I made the mistake of introducing pixel smooth movement in JSW, which caused me a lot of headaches because you couldn't jump exactly the same distances as in the original. 

  • Like 1
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...