"Now Loading"-animations

Página 1/4
| 2 | 3 | 4

Por Mirg

Expert (88)

Imagen del Mirg

26-10-2005, 13:31

I've done more homework, and I've managed to write a parallax starfield using the same principles as the stars.asm example on Funet. I didn't copy any code from it, and I even had the file closed while coding my own program. I know it's nothing really important yet, but I learned a lot from coding it. (Like screen 5's sprite table adresses in the V9938 Technical Databook not matching the actual MSX adresses, grumble..)

For those who don't know stars.asm: My program displays a black screen 5 with 30 sprites on it. They're divided in three groups and every group has a different horizontal speed, giving it a parallax feel. To update the sprite-locations smoothly, a hook is set on FD9F. The hook calculates new sprite positions and when finished writes them to the sprite attribute table in VRAM.

I have a question, though. As the starfield animation is completely handled by the hook, is it possible to let that animation run smoothly during diskaccess? For example, can I use the starfield (or another hook-handled animation) as a "loading screen" while loading images to other pages in VRAM?

Login sesión o register para postear comentarios

Por ARTRAG

Enlighted (6828)

Imagen del ARTRAG

26-10-2005, 13:37

I don't know... and actually i think NO unless you do go to phisical disk I/O
and wite your own bios for disk acess that includes tha nimations

A very limited animation can be done using the programmable page seap of the VDP
but you have only two alternate pages....

Por AuroraMSX

Paragon (1902)

Imagen del AuroraMSX

26-10-2005, 13:44

is it possible to let that animation run smoothly during diskaccess?
Loading even one sector from disk takes a rnd(-time) amount of time, during which interrupts will be disabled. As long as interrupts are disabled, the hook at FD9F is not called and your animation will stand still. So the answer is NO even if you do physical disk I/O.

Por turbor

Champion (496)

Imagen del turbor

26-10-2005, 13:45

Not if you want smooth animation, this is because the diskbios routines dissable the interrupt.
It will move a bit from time to time but certainly not enough to have a smooth loading screen.

Por Latok

msx guru (3866)

Imagen del Latok

26-10-2005, 14:10

And here we have the power of the Commodore Amiga. That machine was able to do such things at the same time.

Por MrRudi

Hero (523)

Imagen del MrRudi

26-10-2005, 14:14

Yeah...lack of loading animations sucks.
Even the very minor soundloop and blinking dot in Unknown Reality was really cool...so I guess we're not really spoiled Wink

Por snout

Ascended (15184)

Imagen del snout

26-10-2005, 14:15

The samples in FDD#2 were nice as well Wink

btw: Latok, if you want to get banned from MRC just say so ^_^

ahum Wink

Por Latok

msx guru (3866)

Imagen del Latok

26-10-2005, 14:21

Tongue

You can load a sample into the sampleram of the musicmodule and play that while loading, by the way ^_^

Por msd

Paragon (1472)

Imagen del msd

26-10-2005, 14:31

You can do it with IDE or SCSI. With the normal disk bios the interrupt is disabled for a long time

Por Mirg

Expert (88)

Imagen del Mirg

26-10-2005, 15:03

Ah, right. I didn't know diskaccess requires disabled interrupts. Too bad.

Ah well, at least something like a loading bar or something like that is still possible if I cut up the loading process in blocks. Inbetween the blocks, I could reenable interrupts, wait for a vblank, disable and resume to update one step of the hook, right?

Stuff like the starfield won't be possible, as cutting up the process in too many blocks would only stretch the loading times to the point where most users go "Right, that's enough, I'll go play something else", heh. Tongue

A ten-frame loading animation should be a fun thing to figure out as my next "project".

edit: Hmm, the reanabling / waiting for vblank / redisabling-thing should better be replaced by a simple CALL I guess. Tongue

Por Sonic_aka_T

Enlighted (4130)

Imagen del Sonic_aka_T

26-10-2005, 15:21

You wouldn't have to do that, actually... Just leave your animation on the interrupt, and just normal loading would have it called irregularly... It would prolly look kind of like the windoze 'progress' bar...

Página 1/4
| 2 | 3 | 4