phaeron Posted January 2, 2022 Share Posted January 2, 2022 4 hours ago, glurk said: One thing I did do was convert the 9-line font into an 8-line font, so the score part could just be a single mode 6 line, maybe with a block on either side. I was going to do the energy bar same way, or maybe in mode 4. If it helps at all, here's the font I made, it's only the numbers 0-9: I generally try not to change graphics when porting except out of necessity, both for faithfulness to the original and due to being artistically challenged. The font is actually 10 lines because of the dang copyright symbol, the only character with a tiny overhang. If it weren't for that one symbol I could have just used two vertically scrolled IR mode 6 lines to get the required 9-line height. Could have used IR 6 for the energy bar as well, but it was easier just to use mode B due to the way that it was generated. The whole score box could also have been done in IR mode 4, but I hate using that mode because of the DMA overhead and needing to pair up characters. 4 hours ago, glurk said: EDIT: I'm certain you've thought of it already, but you could have just one LONG star field line in memory, with the 2x-pixel and 0x-pixel stars patterned into it, and just LMS to various points along that line. Basically like what you said already... Could, but LMS only partly works because it only gives byte granularity. HSCROL per line is very expensive and also a PITA to time correctly to avoid ANTIC DMA wigging out. That's why I used multiple copies of the same line with different bit shifts. The other issue is that the starfield is also scrollable under program control, and rewriting all of the LMS pointers each frame is also expensive. I solved that by rewriting the scanlines, but multiple display lists are also possible as there's only about a dozen offsets in the sequence. Multiple display lists may actually be the only way to replicate the effect precisely as I believe the 0x/2x pixels depend on missile timing relative to horizontal blank. 1 Quote Link to comment Share on other sites More sharing options...
glurk Posted January 2, 2022 Author Share Posted January 2, 2022 I have no worries about minor changes to the graphics myself, especially if it's something no one would notice and it makes the programming easier. I was going to replace the Imagic line anyways in mine, haha... The star sequence is called xPosStars (RAM loc. $82) in Jentzsch's disassembly, and it has 10 iterations by +/-$0F going up and down from $0d,$1C,$2B ... $85,$94 (And you surely know that already). And yes, according to the in-depth analysis some offsets are 16 and some are 17 but absolutely nobody is hardcore enough to ever notice that! I'm only posting this as a "philosophy position statement," not because I think you need any help from me... ? 1 Quote Link to comment Share on other sites More sharing options...
Yautja Posted January 2, 2022 Share Posted January 2, 2022 9 hours ago, glurk said: I'm not nearly as fast a programmer as phaeron, I'm kind of slow at it... Too humble for someone who completed two ports in less than a month ? 5 Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted January 2, 2022 Share Posted January 2, 2022 Great coders (programmers) whom spitball like this is exactly what makes the Atari space here worth visiting. Insights about how and why something is done exposes everyone to multiple techniques and their approaches. The cost benefit analyses are especially important in the discussion. Thank you for this wholly satisfying earnest and intelligent discourse. Thank you Glurk and Phaeron! 2 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.