Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(3 edits)

Hello,
I am currently testing C64DevMachine V1.0.8 with VICE, and the product looks interesting and user-friendly.


 - However, i noticed during testing that the 'Scrolling Text' function doesn't work very well with Bitmap mode; it displays characters like "@@@@@ ...." at startup before showing the demo message (there is significant glitching and flickering on the background, even when adjusting the cycles). Is it also possible to adapt this function for TEXT mode (HR/MC)?

 -There is also the map scrolling demo (https://drive.google.com/file/d/13tPgqtYfpMD9XT-zAPZwrvmoZIgh-EoR/view), which suffers from excessive flickering during scrolling. When moving the spaceship, the movement isn't smooth. Regarding scrolling management, here is an interesting link that might be useful for game scrolling (drwombat / Oscar64 Compiler):
https://github.com/drmortalwombat/plekthora
https://drmortalwombat.itch.io/plekthora

-When dumping a program (F2), only a partial source code Dump is generated. Is it possible to get a full dump of the program (assets, bitmap, SID, data, etc.)?

If you read this message and have the time, could you please take these points into consideration? Otherwise, you are doing a great job.

Hi coderzxy54,

Indeed there are still some flaws in various places, with text scrolling, IRQ timer issues and scrolling, too much demand for little C64 that the routines need to be used sparringly (or in reduced ways), or aim for C64 ultimate. Text made can be set up with HR/MC via the VIC and IRQ handlers, a bit more complex for someone new coming to this expecting things to work. Those were some of the very early experiments too.

And yes, not all things are getting dumped out as there are new things being made all the time, their code tends to get refined or scrapped, I just need to update the Dump file parser, left it behind for a while now.

Thanks for the links, I will look into them soon.

(1 edit)

The @@@'s happen due to the raster timing, chaning the row / NOP padding sometimes helps, but its really down to there being 0's there (the @ symbol) where it should be reading placing your scroller text... it is very fiddly and one of the things I have been learning as I got deeper into this project. Sometimes you cant always get what you expect with C64 and have to work around the limitations. If you want, you can share anything on the Discord, I can take a better look and see where I can make improvements better on my side too.

I believe you already have the example in your archives; you previously made the file available for free download on itch.io (this was before version 1.00 of C64DevMachine) with the name CORE_BITMAP_SID_TEXTSCROLLER.json, including the Van Halen music ("Jump") :)
When you run it, you'll see those famous "@@@@@ ..." ;)

Sincerely,

I see, its not being padded out as the scroll message enters, so that is just whatever is in memory before it.  many of those Pre Version 1.0 things are subject to get broken, the routines might have been adjusted, so those files were more like proof of something almost working, or worked at the time... to be honest I dont know when the @ bug appeared as it was fine in an older version i will patch that.

Found it, that was a recent change where I was doing a find and replace to replace $20's to $00 (spaces for @'s for tilemaps, I must have caught that bit of code too).

(1 edit)

Great, finally, a nasty bug tracked down and fixed! ;). Thanks a lot!
Just so you know, I also tested the text mode (HR/MC) for the Scrolling Text function. I used a "Bubble Bobble" background converted to TXT MC mode using Charpad (alphanumeric characters are included in the charset). I changed the text colors, but at this stage, the colors don't match the settings at all (see the screenshot below). I'm not using Irq or anything like that (just standard nodes).

I encourage you to run a test and see if you encounter the same issue with character color control.

The text scroller itself is using its own IRQ and it looks like it has gone into HiRes character mode, thats the only way to get those upper 8 colours. So something has confused it, perhaps the fact I only tested with Bitmaps so far, so I will look into that.

(1 edit)

In regards to the github links, those are more optimised routines doing other menial scrolling tricks to chars, not full screen scrolling with colour ram (which takes about 1.5 full screen draws to accomplish, hence this being fine on C64 ultimate with some turbo or, you trim it right back like most C64 scrolling games have to do, that one being a fine example). Tricks which avoid a big techncial ask of a C64.

The F2 dump is showing all code macros as far as I can see, the actual data of the assets though, I don't dump those other than byte data as they would be generally unreadable. So you only see the core macro routines / any code etc. So a Bitmap itself generate the data it needs at compile time, liek I said it would be unreadable but you can export as KLA and examine that however you like.

Was there a specific macro or code not coming out in the F2 dump you saw?

(2 edits)

Regarding the analysis on GitHub, I was hoping for an interesting solution for the scrolling. Surely there are other examples of older games with smooth map scrolling out there. Are you still trying to find an optimization for map scrolling, or do you plan to give up on it at this stage (which would be a real shame for C64DevMachine)?

As for the partial dump (F2), it is not urgent or a blocker right now. If it requires coding time, take whatever time you need.
And no, i haven't personally noticed any Macro or code loss in the dump.

Sincerely,

Not given up on scrolling, just been trying to find where the limits are. Folk may expect anything they throw at it to work, but if you ask too much of it, it will glich. For example, setting the H scroller to 8 rows and colour to NONE, then pre-injecting the colours seems nicer for a stock C64. I am still in a learning process of what works best then I need to make ti all work in my own programming macros... I keep the options open though since C64 Ultimate has no problem handling it. So, not given up, just not sure what I need to optimise, I leave that for the end user to figure out since all the tools are inplace. Indeed the F2 dump is working correctly, you're just not able to see the 'data' as it were as that would be unreadable.

(+1)

Thank you for your reply and for your time; I'll leave you to get on with developing C64DevMachine.

See you soon.