-
Content Count
4,000 -
Joined
-
Last visited
-
Days Won
13
Content Type
Profiles
Member Map
Forums
Blogs
Gallery
Calendar
Store
Everything posted by Asmusr
-
Great!
-
I think there must be a problem with your F18A, is your firmware version 1.3 or higher? Regarding how this is done, you have to think about the screen as consisting of transitions between characters rather than discrete characters. Imagine a 4x4 screen consisting of two characters A and B: AAAA AABA AABA BBBB In this screen there are 4 horizontal transitions: A -> A (1), A -> B (2), B -> A (3) and B -> B (4). Let's see the screen in terms of transitions: 111? 123? 123? 444? (We don't know which transition characters to put in the last column just by looking at this example - for that we need the rest of the map for the game...) In order to scroll this screen smoothly all we have to do is to change the transition characters gradually, e.g. character 2 should be changed from being all A to becoming all B. After 8 pixels we can't shift the characters any longer; instead we have to shift the entire screen one character: 11?? 23?? 23?? 44?? Again, new characters are coming in from the right based on the map of your game. You may think that changing the characters require you to push a lot of bytes from CPU RAM to VDP RAM, but in normal graphics mode there is room for at least 4 different character sets in the VDP RAM (we also need room for sprites, etc.) If we split those 4 character sets into two we have all the frames needed for scrolling 8 pixels. So with this method we can handle up to 128 character transitions, and we can upload them all into the VDP in advance. Then all that requires work of the CPU is to move the entire screen after 8 pixels, and this work can be split in eight between each frame. It's a little more complicated than that, but I hope the basic idea is clear. Now, the problem is to limit the number of transitions to less than 128, or lower than that because you probably also want some non moving characters for status, score, etc. In Scramble I reserve the top 16 characters in each half of a character set for this purpose, so I only have 112 characters transitions left. Then there is the problem of colors. A transition between two characters can only have one color if it's going to look natural when scrolling. So you have to place transitions from red to black in another color set than transitions from green to black, for instance. Fortunately Magellan can help with all this, counting the number of transitions you're using, placing them in the right color sets etc. Without software like this it would be very difficult to make a game like TI Scramble. For smooth scrolling to work, the number of characters you start out with when you design your map has to be really small, 16-24 for instance. If you want more than that you should consider another technique. The thing is that even a screen with very few transitions looks great if it's scrolled smoothly. Hope this explains some of the magic.
-
I want to see Ti Scramble in a cartridge, so yesterday I ordered 10 PCBs for Jon Guidry's 64K cart from this Chinese company: http://imall.iteadstudio.com/open-pcb/pcb-prototyping.html It all seems very professional, the web site is excellent, and the price is only $35 + shipping (DHL $25) including . A similar order from ExpressPCB would have cost me $100 - $200 more, so if this turns out OK I can recommend this company. I got some original 74LS379 chips from the local electronics retail store, and I ordered 10 Winbond W27C512 chips from China, and a Chinese EPROM programmer from Germany. I hope it all fits together...
-
I finally added the high score table, and have now only 8 bytes of RAM left! So I have decided to call this version 1.0. tiscramble-1.0.zip
-
The bullets do look bigger on the videos, but I'm using the same characters for the bullets and the stars, so they have to be the same size. .
-
Well, I could use SAMS if it was available, and fall back to delays. I don't think this could be fixed with the GPU because we're talking about CPU RAM -> CPU RAM or CPU RAM -> VDP RAM transfers. Even with the scroll registers I would (probably) still need to keep the maps in CPU RAM, but they could be packed differently, in columns instead of rows, like in the original, so you would only need to unpack on column at a time. It would be fun to make a version of Scramble that used all the F18A features, but I would have to sit in front of the TI moving CF cards around instead of in my sofa with my laptop.
-
For my part I haven't made any decision that all software must be backwards compatible. It has more to do with the lack of emulation and to some degree documentation, which means it would take far longer time to develop a game that took advantage of all the new features. Having said that, there is something exciting about knowing that the software you develop today would also have worked 30 years ago. Regarding SAMS, if we had it in the nanoPEB I would definitely have used it for Scramble to avoid the level changing delays.
-
Nano-PEB & Super Cart with 4A DOS = COM1 WORKS!
Asmusr replied to Omega-TI's topic in TI-99/4A Computers
For some reason I have to 'initialize' the port by opening a terminal emulator on the PC (I use TeraTerm). I wrote about it here: http://groups.yahoo.com/neo/groups/ti99-4a/conversations/topics/81395 Note that I don't have one of the new nanoPEBs, so it might be another problem you're having. -
Nano-PEB & Super Cart with 4A DOS = COM1 WORKS!
Asmusr replied to Omega-TI's topic in TI-99/4A Computers
Do you have a real com port on the PC or a USB to serial converter? I had problems with the latter, but managed to solve them. -
You can try the original in MAME - better than trusting your memory
-
It must be another problem. I also have the V1.3 firmware and it works perfectly.
-
I lost the opening music in beta4, so here's yet another version. tiscramble-beta5.zip
-
You're right, that's not it. I have debugged beta3 and found out that it's switching between writing >C0 to >8404 and >840C. That means setting the frequency of generator 3 outside the legal range, but apparently not a problem on a real TI.
-
I'm glad you like it. Make sure to download the latest version for the demo.
-
I solved the problem with MESS. Scramble was writing some bytes into the >8400 area. Perhaps MESS is responding to odd addresses in this area (it's only supposed to respond to even addresses according to http://nouspikel.group.shef.ac.uk/ti99/tms9919.htm)? This bug also reduced the number of sprite explosions, so I'm really happy that this is fixed. I fixed the looping of the demo, and also found a new character for the 'rounds completed' flag. I have maintained the speech, but changed it to say some different words. If you really hate it you can turn it off by pressing S on the first screen (no key to turn it back on). Enjoy! tiscramble-beta4.zip
-
We should probably also mention the lack of a stack pointer and internal general purpose registers! I did a little Z80 programming on the Amstrad CPC464. I remember it had a nice instruction called LDIR - a single instruction block copy.
-
It's strange, when I isolated the sound code everything sounded perfectly fine. But if you put a watch point on >8400 in the game you will hear an awful high pitched sound after the first few bytes of the music are written. This is the sound list: SNDMUS BYTE 3,>92,>88,>16,1 * D#3 BYTE 1,>90,2 BYTE 1,>92,2 BYTE 1,>94,5 BYTE 1,>96,5 <-- Around here (>96) it already sounds wrong BYTE 1,>98,5 BYTE 1,>9F,10 * Pause 2 BYTE 1,>91,1 * D#3 BYTE 1,>90,2 BYTE 1,>92,2 ...
-
The speech also works fine for me. I will try to isolate the sound code tonight.
-
Only if you port Princess Quest to the TI . Seriously, I wouldn't have a clue. How much ROM space is possible?
-
This version includes a demo. I planned to include this all along, but it slipped off my to-do list. [Edit: just noticed that the intro doesn't loop after the demo, this will be fixed] I don't think there's any way around that the level change takes time. In addition to unpacking the map it also scrolls and uploads 8 x 112 characters to the VDP and does several other things. Marc has reported that missiles appear out of nowhere at the end of level one. Has anyone else seen this? tiscramble-beta3.zip
-
I agree that It doesn't add any value, but it removes the feeling that the game might have crashed (try commenting out the line 'BL @TALK' in the source code). Any suggestions? It cannot be interrupt driven and I don't have any letters available. The tile below the fuel bar is a flag for the number of rounds completed. It's also in the arcade game. Unfortunately I don't have a tile with a black background available.
-
Thanks, perhaps an incentive for emulating ECM sprites in Classic99? Actually it was pretty easy to implement the multi-color sprites, even without emulation. All you need to do is to upload the different patterns if the F18A is detected, set up the palettes, and the rest of the code can be used on both VDPs. I have made a small Java program to turn PNG files into data statements for ECM color planes. It's not in a state to release as a general tool, but if anyone needs it you're welcome to the code.
-
Thanks, you can't fire at an angle, but perhaps it looks like that when you fire and move the ship?
-
A new version with some suggestion from Marc: - Shots can pass through explosions (this makes it easier to make it through the tunnels) - You are immune for 16 frames after a new life - Bombs make a sound when they hit the ground tiscramble-beta2.zip
-
It's supposed to run at 60 FPS, so it's the 50 FPS on European consoles that's wrong, but unavoidable. There are probably not that many of them is use without the F18A anyway.
