Jump to content
IGNORED

lots of unfinished, awesome projects .. but why?


MARIO130XE

Recommended Posts

Bitmap's adventage is linear memory layout. Simple sprite routines, simple scrolling, simple everything.

 

Antic 5 could be interesting with maybe char based movement and 5th color for extra clearity.

 

Big effect on speed of graphics in char mode is in clearing routine. You just need one empty char and ~ 20 raster lines to clear whole screen so you can draw new frame. Compare that to 8 times slower clearing of bitmap sprites. But it's also more complex once you hit that 128 char barrier. Not to mention sprites with masking. Then all that clearing speedup goes away...

 

Not impossible but I would leave it for second or third project... If we can't make a game work in 4 colors, no point in loosing time and energy trying to make it in 5...

  • Like 1
Link to comment
Share on other sites

A 128 charset doesn't always have to be a limitation as in some occasions you can use two sets but alternate each line as most of the 'tiles' don't use a top row character on the bottom and vice-versa. Reserve some chars to be used across both sets, e.g. empty char, player/enemy soft-sprite. There is of course an DLI overhead in flipping the charset.

Link to comment
Share on other sites

I will mention a possibility for getting a difficult project 'finished' - is whereby it is left up to someone else to finish it - provided the original programmer or team is OK with that idea. Making available source code/etc available.

 

It won't be easy for someone else to step in and take over, nor for the original programmer to let go - but at least this could be an option - though a slim one for an unfinished project to go towards completion.

 

And perhaps a cooperative project could be on the cards - if there is the interest and support for such a one. But we all know it is nowhere an ideal way for any project to go - as it's likely only very few would actually do the work involved but there could be definite benefits to this approach because of the wide range of expertise available?

 

And finally it may be worthwhile mentioning someone who's starting out with their first major project - who appreciate some assistance and guidance with what they are working on - who may require some assistance from time to time as that project continues it's development?

Or a special cooperative project could be done - with tutoring in mind, to illustrate some basics in taking on your first big project? The game itself won't be anything special and small but something 'standard' as such.

 

I'm no programmer - and don't handle the technical side - but I've been involved in various projects - and had contact with various programmers - and there were a few projects that never got going, and some possible partnerships that went likewise.

I just design graphics and try doing the best I can in that area.

 

Harvey

Link to comment
Share on other sites

I think that I already said about these two games somewhere but here again:

-> Vega was coding Imagine's MIKIE game that he stopped because he started, I think, a personal business. I don't remember who said this, I think it was Tezz and there's a nice and promissing video around.

Taking the colaboration the two did on Bomb Jack I wanna ask to Tezz thinks in contacting him and maybe end the game :).

-> Other is Pang by Tebe that was, as it seems, all levels, engine done and videos of the game running but suddenly nothing. Don't know the reason or if he ever said what's the cause and his intention.

Link to comment
Share on other sites

-> Other is Pang by Tebe that was, as it seems, all levels, engine done and videos of the game running but suddenly nothing. Don't know the reason or if he ever said what's the cause and his intention.

 

Actually the level editor for Pang was released, plus 30 levels. There was only 1 provided background texture (except the default, which is just a single color), but with the level editor you can save out each level to an XEX and play that single level. So essentially you've got a working playable game already. I'm not sure why it wasn't finished and released either. Maybe they just never had time to create all the textures they wanted to yet. Creating a lot of backgrounds like that can take a lot of time, if you are determined that they'll look a certain way. If that's the case, then I can understand.

 

Seeing that they've released the level editor with the ability to play the levels, I see no reason for them to be pressured further. But I am curious what's going on with the project. Really great stuff. I enjoy playing it from time to time.

Edited by MrFish
Link to comment
Share on other sites

A 128 charset doesn't always have to be a limitation as in some occasions you can use two sets but alternate each line as most of the 'tiles' don't use a top row character on the bottom and vice-versa. Reserve some chars to be used across both sets, e.g. empty char, player/enemy soft-sprite. There is of course an DLI overhead in flipping the charset.

Imagine that possibilites, using Antic 5 . Not really CPU saving, but the half screen-handling RAM usage, and charset fills up the screen. Circles look like circles and, still PMg available... to enhance the resolution and colours in zooming objects... for some racing game...

But, if "full" CPU speed is needed... Look and compare the "Star Trek" Games on the A8 and C64.... have a closer look at the zooming "screen" ...

Link to comment
Share on other sites

Yes, indeed, just to fresh my memory, ANTIC 5 (graphics 13) doesn't save CPU time w.r.t ANTIC 4. And indeed the ANTIC scan line buffer keeps the font numbers, but not the font graphics data. See here:

It's not totally right... you can save up to 15*40 cycles in a frame using ANTIC 5 instead of 4 :D (half the number of badlines)

Link to comment
Share on other sites

It's not totally right... you can save up to 15*40 cycles in a frame using ANTIC 5 instead of 4 :D (half the number of badlines)

It's not totally right... you can save 8 cycles per bad line using ANTIC 4 (then just 1 RAM refresh instead of 9)

It's not totally right... you can save 3 or 1 cycles per bad line using ANTIC 5 (ANTIC display list commands, LMS or non-LMS)

...

 

Etc.

;)

Edited by analmux
  • Like 1
Link to comment
Share on other sites

You got me ;)

At the end you can save only max. 15*43 cycles per frame I think (15 badlines on wide screen - 48 cycles per line, minus 15*8 RAM refreshes and plus 15*3 cycles per saved LMS dlist line) which is almost negligible.

  • Like 1
Link to comment
Share on other sites

This file (apt for the topic as it was done in 2008!) demonstrates the principle and some other points.

As a 'selector' isn't visible ensure you move the joystick down at least once to avoid 'exiting' the console menu.

 

The border is used as an indication of a font-base change.

 

1) The 'main menu' screen (Antic 2) uses some 'missed' changes to permit a spacing line between menu items.

 

2) The 'droid info' pages use the alternating font pattern. (up/down selects droid, left/right cycles through info, fire to exit to main menu)

 

3) The 'deck' map screen only uses one font for the available tiles. (fire to return to main menu)

 

4) The 'ship' side-view screen similarly only uses one font but is in Antic 4. (fire to return to main menu)

 

5) The WIP showed a technique the C64 can employ where the colour-map is used to 'hide' character graphics by setting the back/fore colours of a single 'point' the same. On the A8 we would typically need to set the character at that position to a blank instead.

a8_pdroid.xex

post-1822-0-25521800-1458266293_thumb.png

post-1822-0-46775500-1458266297_thumb.png

post-1822-0-39970100-1458266300_thumb.png

  • Like 3
Link to comment
Share on other sites

Similarly things are evident in the transfer game too.

 

1) Down the left and right, the unavailable 'pulsers' are hidden on the C64 using the colour-map, so on the a8 would need to be removed.

 

2) Pump and stopper colouring on the player 'wires' are also controlled by colour-map. On the A8 we can use the 5th colour by setting the high-bit on the char.

 

3) As are the segments in the central column.

 

4) The A8 screenshot also highlights that the non-linked sections of the wires (e.g. off the central column) are also hidden rather than removed on the C64.

 

5) It may also be that the flow animation is 'halted' by the colours being set to black on those cells.

post-1822-0-08247500-1458267069_thumb.png

pd_transfer.xex

post-1822-0-57499800-1458267566_thumb.png

Edited by Wrathchild
Link to comment
Share on other sites

So those two posts go to demonstrate how a 'port' can lead to having to re-code (and even invent new code) to produce the same affect and so what initially may have appeared to be straight-forward sometimes turns out not to be. :)

 

One of the major factors in my 'attempting' this was to have the transfer game working on the A8. The different layouts that can be achieved and how they influence the game, e.g. which side to pick weighed with the number of pulser you and your opponent start with, fascinate me.

 

Hence I was already 'aware' that the coding for the main game, that is the travelling around the scrolling 2D deck, could need a far different approach to how it was done on the C64 and didn't delve into it.

Edited by Wrathchild
  • Like 1
Link to comment
Share on other sites

OK, but then it's quite interesting to use ANTIC 4, clever DL and LMS, but also a font switch every 8 scanlines particularly, say font page 128 -> 132 -> 128 -> 132 -> ...

This still needs too much CPU time.

Using Antic 5 helps to fill up the gamescreen in a similar way to the C64. The lesser screen RAM allows to add PMg with much more flexibility, to enhance either the "visual" resolution and/or colours. Someone just should give it a chance. Looking at the "Zelda" screen, you see, what could be done, using Antic mixing modes. So, one still could build a "city in the far area, even using hires with PM colours... or build the horizon street "edge" using some Antic 4 lines... and so on. ... and so on.

A "Test Drive" game or other "newer" racing games in Antic 4 sill never work. Using lower resolutions , to put more fluently moving and animated objects on the screen, would clearly offer more gaming fun. And , if CPU time allows, you can do Antic 5 moving objects with enhanced resolution AND colours by overlaying any PM ...

Link to comment
Share on other sites

maybe too early and less coffee... but Mark how does the flip 2 fonts every line help in the end???

 

font1

font2

font1

font2

 

I don't get it...

 

in my latest project (which will be released next week) I used 12 fonts... what I discovered is that when c64 uses fixed char layout to mimic "linear" bitmap mode... A8 can do the same by introducing double amount of font... but codewise it was still c64 code running...

 

(and later I took the full approach and recoded the c64 section to use bitmap mode :D) C64 does not like bitmap games :D

  • Like 1
Link to comment
Share on other sites

another approach is the so called "Dirty Char" method... which I guess never was used yet on A8... think of 3d demos like Coma Land 13 etc... Oxyron uses that most of the times... it works by assigning on the fly which char your 3d drawing routine would hit and draws into this char... I will show you next week an example of that... This of course is tough with only 128 chars available compared to 256 of the c64 but it's amazin what speed you can get out of this dynamic assigning approach. why?

 

because most of the evil cpu cycle suckers are fill objects with color and clear screen... and in charmode thats damned easy.

 

the filler will only "EOR" fill the "dirty chars" and between lines it pastes filled char blocks (which are pregenerated)... so with a simple putting char on screen you cleared/filled 8x8 pixels or 4x8 in multicolor.

 

here some more infos on that (look at the bottom screenshot of the vector object of Coma Light)

 

http://codebase64.org/doku.php?id=base:lines

  • Like 3
Link to comment
Share on other sites

That 1,2,1,2,... or even better 1,2,3,4,1,2,3,4,... charsets is the best for using soft sprites because it saves many many chars.

As an example for a [3x3]chars sized soft sprite that moves 4ways it, with shifting ends up to need [4x4]chars and lets say we have 4charlines per charset then it takes a maximum of 16chars on each charset, 4 of these sprites and half of a charset is wasted. In a 20charlines you use 5charsets that is 5KBs.

But if you use that interleaved 4charsets method then it only use 4KBs and in each charset this same soft sprite only takes 4chars, never more and 4 sprites will only use 16chars, always.

Got it Karol?

:)

:thumbsup:

Edited by José Pereira
  • Like 1
Link to comment
Share on other sites

Just think in terms of the C64 charset, it is 256 characters resulting in two contiguous Atari characters sets. The fonts are toggled with bit 2, for example, $80 and $84 or $88 and $8C.

I did have the caveat about the 'layout' of the graphics and so for the Paradroid text-font this works well as the lower half elements are in the second half of the C64 charset.

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...