Nop90 Posted April 28, 2021 Share Posted April 28, 2021 Hello, I use to be active in the Atari Lynx section, but the 2600 was my very first console so last week end decided to try to code something for it, and since I'm one of the coder of the Retroguru Team, I started to port a game of ours that I already ported to other consoles, included the Atari Lynx. I'm not a 6502 ASM expert, but I code in ASM for the Lynx when I need to do things not possible in C, and I know the VCS achitecture because last year tried a crazy project to run 2600 code on the Lynx: obviusly I failed for lack of CPU speed - how I could hope to race a code that race the beam - but at least implemented a big part of the core of the system). What I did do for this new project far was to collect a lot of 2600 code snippets and assemble them to have basic rendering core and enough free ram to be able to complete game logic. This is what I did in a couple of days of work: I added 5 different levels that can be changed with the select switch. The level can be reloded with the Reset switch (losing a life in the final game). The player can run along all the level screen with 4 different sprites (for the 4 directions), now I have to add the logic to remove the tiles after stepping on them and check if xump goes out of the path. Should not be hard because the worst part was to draw the screen, the other things goes in the VBLANK. I should have a tech demo to show in a video in one or two weeks (I also have to work other lynx project so can't code on this every day), but at the moment really don't know how to add the missing elements of the game like the bombs and the one way tiles because I have only two cycles left in the scanline rendering routine of the level. I think the result so far is promising. The GFX guys of the Retroguru Team are complaining that they don't like too much the screen layout, but they grew up in the Amiga era and can't understand the lack of a framebuffer ?. Every hint to make the playfield look better is welcome. I really hope to make something playable from this. I like to solve coding issues on my own but If I really need help I'll ask here. 9 Quote Link to comment Share on other sites More sharing options...
gorgh Posted April 29, 2021 Share Posted April 29, 2021 nice one! yt video would be appreciated Quote Link to comment Share on other sites More sharing options...
Nop90 Posted May 4, 2021 Author Share Posted May 4, 2021 The level logic for simple tiles is complete and also added a level timer. I have only to fix the position of the score numbers to have it in center (tried to do it but made a mess witht the timing, probably I'll write it from scratch instead of trying to adapt the code snippet I used). The level drawing is very tricky, so much that adding the bombs on the tiles seems impossible. But I don't give up. Don't know hot to make a video, does Stella has a video recording feature? I could record with my mobile the game on a TV, but I used NTSC colors and I have a PAL 2600JR so the game colors are really ugly on it. Quote Link to comment Share on other sites More sharing options...
gorgh Posted May 4, 2021 Share Posted May 4, 2021 (edited) If you use WIN10 then press windows button+G, and then yu can record given window Edited May 4, 2021 by gorgh typo 1 Quote Link to comment Share on other sites More sharing options...
Nop90 Posted May 4, 2021 Author Share Posted May 4, 2021 As promised here is a simple small video of what I coded so far: Level restarting/changing isn't in the game logic yet. I use the Reset/Select switches for the moment. The code already reached 4KB, so before the next update I have to select the best bank switching strategy to use. Meanwhile @miker made a nice conversions of a couple of Xump music tracks with Tia Tracker. Probably now I'll start coding the title screen and the menu screen with one of the tracks as background music. 3 Quote Link to comment Share on other sites More sharing options...
gorgh Posted May 5, 2021 Share Posted May 5, 2021 thanks a lot Gisberto! Quote Link to comment Share on other sites More sharing options...
Nop90 Posted May 6, 2021 Author Share Posted May 6, 2021 Today coded the Retroguru splash screen and a mockup of the title screen (upper part will be also used for the menu). I'm not very good with graphics, but I'll ask some help to the gfx guys of the team to improve the overall look. 2 Quote Link to comment Share on other sites More sharing options...
+bhall408 Posted May 8, 2021 Share Posted May 8, 2021 On 5/6/2021 at 4:19 PM, Nop90 said: Today coded the Retroguru splash screen and a mockup of the title screen (upper part will be also used for the menu). Nice! Does the guru do the floating animation and make sounds like the version on Lynx? Quote Link to comment Share on other sites More sharing options...
Nop90 Posted May 8, 2021 Author Share Posted May 8, 2021 The sound, yes. At least I have It as a TTT export and will be played as soon as I complete to reorganize the code in banks so to have space to place the Tia tracker engine in the main bank. For the floating part I'll try. With a 48 px sprite not only I have to adjust the x pos of the first sprite every frame but I also have to adjust the timing of the drawing routine. I'll try. Quote Link to comment Share on other sites More sharing options...
+SpiceWare Posted May 8, 2021 Share Posted May 8, 2021 On 5/4/2021 at 8:56 AM, Nop90 said: The level drawing is very tricky, so much that adding the bombs on the tiles seems impossible. But I don't give up. How many bombs do you need to add? You can use NUSIZx to duplicate and triplicate the other player for up to 3 bombs per row, though spacing is limited to preset options of close, medium, and wide. Vertically you can reuse the other other player by repositioning it. Your gaps between rows of blocks should give you enough time for repositioning. I noticed in the video your current repositioning routine causes an extra scanline to show up when the player gets to the right side. That'll cause TVs to jitter the image. This might help you with that, along with vertical repositioning: 4 minutes ago, Nop90 said: With a 48 px sprite not only I have to adjust the x pos of the first sprite every frame but I also have to adjust the timing of the drawing routine. MiniDig can be a useful resource, it's a collection of the best of the old Stella mailing list. Under tricks you'l find 48 Pixel Sprite with links to source, ROM, and the original post it came from. Archive of the Stella mailing list from 1996 to 2006 can be found here. Quote Link to comment Share on other sites More sharing options...
Nop90 Posted May 17, 2021 Author Share Posted May 17, 2021 this is how I'm going to implement bombs they work fine in the left side of the screen or in rows without fixed platform, but there is no time to switch to solid gray near the end of the scanline, so I'll have to design new levels considering this limits. The teleport platforms should be an easy element to add. Probably I will not implement the one-way tiles. Quote Link to comment Share on other sites More sharing options...
Nop90 Posted August 8 Author Share Posted August 8 I kept the demo version too long in the closet, so decided to release it at next Silly Venture SE. The game has only 8 levels, no background music yet and the password system not implemented. 7 Quote Link to comment Share on other sites More sharing options...
Nop90 Posted August 19 Author Share Posted August 19 Find attached the rom presented a SV2024SE. It works fine on stella, but at the compo some screen was not displayed correctly. Perhaps because the game is NTSC and the console PAL? I'll chech it on one of my 2600 when I back home from vacation. xump-vcs.zip 4 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted August 19 Share Posted August 19 Uhm, did you ever use Stella's developer options? The retroguro screen has 259 scanlines, the title has 269, the menu 283. And the game screen doesn't produce a correct VSYNC signal (too short & varying length). Modern equipment will freak out. Quote Link to comment Share on other sites More sharing options...
Nop90 Posted August 19 Author Share Posted August 19 Thank you for the hint, I don't use any special tool, now I'll check the number of scanline and try to make them constant Quote Link to comment Share on other sites More sharing options...
+Gemintronic Posted August 19 Share Posted August 19 Always wondered what happened. Thought you and Retroguru had already published this Your work inspired me to try multiple mini kernels in my own games. Quote Link to comment Share on other sites More sharing options...
Nop90 Posted August 19 Author Share Posted August 19 (edited) I had a two years pause from coding, at the beginning of 2024 I got back to my lynx projects (coded in C ) and now I want to complete this, but I code very slow in ASM 😅 Edited August 29 by Nop90 1 Quote Link to comment Share on other sites More sharing options...
+Philsan Posted August 19 Share Posted August 19 Very nice conversion! I think there are problems in those two screens (Stella 6.7.1): Quote Link to comment Share on other sites More sharing options...
Nop90 Posted August 19 Author Share Posted August 19 Yes, fixing the scanline of the two screens should be an easy task, fixing the scanlines during gameplay is not so easy. BTW I use to code with the 8bitworkshop ide and test the rom with javatari, with both the two the game runs fine. Using a real 2600 with the UNO cart is a problem because my wife keep complaining for all the old hardware laying in our home so I have to keep most of my consoles packed in a closet 😒 Quote Link to comment Share on other sites More sharing options...
+ZeroPage Homebrew Posted August 27 Share Posted August 27 ZeroPage Homebrew is playing Xump on tomorrow's ZPH stream LIVE on Twitch! Hope you can join us! Tue Aug 27, 2024 | LIVE @ 6PM PT | 9PM ET | 1AM GMT+1Day WATCH LIVE: https://twitch.tv/zeropagehomebrew/ WATCH LATER: https://youtube.com/zeropagehomebrew/ Games: Tumblers (2024 Exclusive World Premiere | 2600) by Andrew Pauley @Armscar Coder Minigun Miner (2024 WIP Update | 2600) by Dr. Ludos @drludos theWall (2024 WIP | 2600) by Alberto @jab Xump (2024 WIP | 2600) by Gisberto Rondinella @Nop90 1 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted August 29 Share Posted August 29 (edited) Nice puzzles. I like the challenge of the later one. But I think the platform representation could be improved. I don't like the current zig zag, IMO it is irritating. Here are some ideas (I hope they are feasible): Edited August 29 by Thomas Jentzsch Quote Link to comment Share on other sites More sharing options...
Nop90 Posted August 29 Author Share Posted August 29 I don't understand your hint. Please esplain it. Any idea to improve the look is welcome, but only showing gfx patterns will not help me. At the moment the kennels used to draw the screen can barely keep the timing of the beam and I already finished the available ram (considering that I'm going to add the Tia Tracker code). Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted August 29 Share Posted August 29 (edited) Each of the five suggestion shows two platforms, where single playfield are missing to indicated that these are separate platforms. I think vertically you have them already separated, right? I just checked your kernel in Stella, there seem to multiple places where you have time left. But without the source code, this is of course only a guess. And a change of graphics would require a major kernel rewrite. And probably my idea wouldn't be feasible within the current setup anyway. Edited August 29 by Thomas Jentzsch Quote Link to comment Share on other sites More sharing options...
Nop90 Posted August 29 Author Share Posted August 29 On 8/19/2024 at 1:58 PM, Thomas Jentzsch said: The retroguro screen has 259 scanlines, the title has 269, the menu 283. What value should I use as reference? 262 seems a good value for NTSC. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted August 29 Share Posted August 29 Yup, 262 is the right value. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.