Teaser: map routines for sdcc_msx w.i.p.

Page 2/3
1 | | 3

By Wolverine_nl

Paragon (1145)

Wolverine_nl's picture

31-12-2019, 13:33

this is very cool! Smile
I wonder if it can be solved, if the scrolls went slower, would the tear be less?

By salutte

Expert (124)

salutte's picture

22-02-2021, 22:59

There is more!

After a lengthy break, I'm back working on this project and there is some progress!

https://www.youtube.com/watch?v=5UFzZhhxe68&feature=youtu.be

By geijoenr

Master (205)

geijoenr's picture

22-02-2021, 23:16

@salutte this is very cool.

how does it work exactly, by switching name tables on even/odd frames and defining those within the constrains you mention before?

I see some sort of aliasing when running on openmsx one of the earlier versions, it looks like the interlacing sometimes gets stuck and shows only one of the tiles instead of the alternation.

By salutte

Expert (124)

salutte's picture

23-02-2021, 10:19

Exactly. At each ISR I switch the name tables and the sprite tables (sprites are also interlaced). The challenge is the scrolling routine, as I need to update the name tables fast in a way that minimizes flicker. Also to provide enough variety of tiles the patterns are also modified dynamically, so that new patterns are loaded as needed, and a garbage collection algorithm runs every 6 frames to free up space on the pattern generation table.

About the openmsx getting stuck, yes... It happens sometimes and I don't know why. I run it on output as TV and with deflicker set to true, but still every few seconds openmsx gets stuck in this mode. In my MSX1 and MSX2 it does not happen. Sometimes, the scrolling routines take too much time and a portion of the top screen ends up not being switched in time, but it is a price I am fine with.

By thegeps

Paladin (670)

thegeps's picture

23-02-2021, 12:10

Really cool!

By santiontanon

Paragon (1205)

santiontanon's picture

23-02-2021, 21:14

Very cool!!! There's lots of subtle details that are very nice in the video! For example, the font is 4x8, which means they are not tile-based, very nice!

By pizzapower

Supporter (13)

pizzapower's picture

24-02-2021, 05:27

Looking good! Can we see the source? Maybe more hands on board can help you reduce the flickering.

By Manuel

Ascended (17484)

Manuel's picture

24-02-2021, 07:44

There's deflicker Vs deinterlace. And be reminded that the recorded video doesn't include post processing.

Very cool project!!

By gdx

Prophet (4030)

gdx's picture

24-02-2021, 10:02

At times the interruptions seem to be interrupted a bit too long because the interweaving of colors does not occur for brief moments. I hope you can fix it because this project looks very nice. Smile

By salutte

Expert (124)

salutte's picture

24-02-2021, 14:12

THanks for all the kind words!

The source is available @ github, but please note that it is still very early in the design, and major changes may occur. The repository is as follows:
https://github.com/MartinezTorres/Edelweiss

I just added a pre-release, in case anyone wants to try the rom:
https://github.com/MartinezTorres/Edelweiss/releases/tag/v0.01

I am relatively happy with the current flickering. There is unavoidable flickering due to scroll, but its very much reduced from the previous version, and reducing it further would require to slow down the scroll even more. Right now my focus is on adding the key elements of the game (enemies, NPCs, bosses, sound, etc.) and my plan is to go back to optimization once the game is playable.

Page 2/3
1 | | 3