Jump to content
IGNORED

G2F, Character sets, Re:My Casltevania attempt


zenassem

Recommended Posts

@emkay,

 

My last post was being wriiten whhile you were posting that conversion. That actually looks alot better than I had figured.

 

hmmmmm........

 

Possibly a little rework on that and ......

 

 

You are truly a master of G2F. I have to leave for work. But I will take a look when i get home today.

 

Thanks

 

~zen

Link to comment
Share on other sites

Ok, as soon as I got home today I began redrawing the tileset. This time I drew all the characters using 1 tile each. I found a method in which I could use half the ammount of horizontal pixels. On certain characters I alternate each row: using pixel 1,3,5,7 then 2,4,6,8. And I think it turned out ok.

 

What do you guys think?? This is screen 0 and 1.

 

(keep in mind that the color pallete is "Char Pad" and I believe the the Atari will produce more vivid colors. + I still have to add in the tree tiles in the black area. I will need to use a DLI to change the color of the tileset up there. So it won't be all black for long.)

 

 

Screen 0

A8cvlvl1scr1.bmp

 

 

Screen 1

A8cvlvl1scr2.bmp

 

 

All comments welcome...

 

[/b]

Link to comment
Share on other sites

@heaven,

 

Here is where I am at. I have a 128 characters to build the entire level 1. Unfortunately right now I don't have room for regualr text and numbers (A-Z,0-9, as well as healthbar indicator, hearts) So I will have to cut down.

 

I have a couple of thoughts but Not sure if they are feasable right now.

 

Option 1. There are a lot of tiles on the first two screens that aren't really used that much once entering into the castle. So it may be possible for me to load in a new character set once inside.

 

Option 2. I am not sure If it's possible to change a few charatcers in the set via DLI (on the same screen). I will have to experiment with that.

 

 

Before going much further I will have to look more deeply into analmux's method and software sprites.

 

I figure right now I have enough to build level 1. So now I shift to coding and getting all of this on the Atari and See what I can do. I'll do the best I can to get a playable level. Once I have that, I'll feel better about asking people for advanced advice on how to improve it. I want to show people that I am willing to try things myself, and that I am serious about doing this project.

 

~zen

Link to comment
Share on other sites

Well I will ask for one piece of help. I have read some articles discussing color register changes in mid scanline. But I can't find them now. If anyone has information on this, please share.

 

Because as you can see in the picture above. I would like to switch colors at a certain point during the scanline and then switch back. I know that this is advanced, and maybe not possible on a game screen, I've only seen some information on a static screen. Perhaps I am being to ambitious. It won't break me if I can't do it, but It would add a nice touch!

 

I think G2F can pull this off in Edit Raster. But I could just be naive and mistaken.....

Link to comment
Share on other sites

Here is where I am at. I have a 128 characters to build the entire level 1. Unfortunately right now I don't have room for regualr text and numbers (A-Z,0-9, as well as healthbar indicator, hearts) So I will have to cut down.

 

Use a DLI that changes to another font for the status/score display. Define another font in memory for that.

Link to comment
Share on other sites

Because as you can see in the picture above. I would like to switch colors at a certain point during the scanline and then switch back. I know that this is advanced, and maybe not possible on a game screen, I've only seen some information on a static screen. Perhaps I am being to ambitious. It won't break me if I can't do it, but It would add a nice touch!

 

On a scrolling screen that would be next to impossible. You would have to code a DLI that you modify everytime your screen moves, and then you have to worry about ANTIC stealing cycles, etc... I don't think it can be done, personally.

Link to comment
Share on other sites

Goochman,

Thanks for the encouragement. The people behind the games you mention, including Boinxx , are/have develop-ing/ed some of the finest games I have seen. At this moment I'm not sure it's fair to mention me and this project in the same sentence as them. But, by the completion of this project - If it does get mentioned with those titles - I will know that I did it right! I have a long road ahead. It's a good thing that I don't require much sleep... Because to catch up on half of what these guys are doing, is going to take every brain cell of my being, and possibly even the cells on my BIG Toe.

 

@Shawn Jefferson

Thanks for the adivce. I too am seriously doubting the color switch. So I will have to get my head around stuff that Analmux is doing (ie. Player underlay/overlay) and software sprites.

 

...And Sprite multiplexing (which I think Zylobane already knows is going to give me a run for my money...) ;)

 

===============

 

Sometimes it's good to be a little naive. Because if I truly knew in advance, EVERYTHING I was getting myself into

I would NEVER;

EVER;

decide to program a game;

not on any system... not in any language

 

 

I am quite embarassed to admit that I'm not sure exactly what goes into software sprites. So if anyone, can either explain it, or point me in a direction I would appreciate it. It's not urgent at this point. But It's something I need to figure out in the next couple of weeks!

 

~zen

Link to comment
Share on other sites

I am quite embarassed to admit that I'm not sure exactly what goes into software sprites. So if anyone, can either explain it, or point me in a direction I would appreciate it.  It's not urgent at this point. But It's something I need to figure out in the next couple of weeks!

 

A software sprite is at the most basic animating/moving something on the screen without using the "hardware" sprites, the player-missile graphics. It can be as simple as using a few redefined characters and moving them around the screen, to something as complex as XORed graphics (either MCS style drawing in the font or in the actual screen data). You can also overlap, or underlay PM graphics with your sprites to achieve more color.

 

Working in a character mode usually means you have to live with 4x8 pixels jumps in sprite movement too.

 

@Everyone: Thinking about it, with ANTIC 4, I don't think it really is possible (without doing a MCS type screen setup) to use XORed sprites, since you are only writing a character code into each screen location... right?

Link to comment
Share on other sites

 

@Everyone: Thinking about it, with ANTIC 4, I don't think it really is possible (without doing a MCS type screen setup) to use XORed sprites, since you are only writing a character code into each screen location... right?

 

 

Ofcourse you have to align the charset prior to adding some software sprites inside the char-memory.

The difference to linear bitmap, which means

 

0-39 (line 1)

40-79 (line 2)

80-119 (line 3)

etc.

Bytes to handle,

you would have to use the charmap first, which means

 

0

1

2

3

4

5

6

7

 

and the next char, until the charmode line is completed

 

repeating until the Charset is completed

 

and then switching to the next charset, until all Lines are completed.

 

In theory one Sprite has to be handled like some smaller sprites.

 

 

In another theory, you may select a new charmem range, every Charmode line, and create a scrolling level with a 3 1/5 screen width and without copying any charmem...

Link to comment
Share on other sites

I'm starting to research older forum topics on MCS. I just realized that Emkay developed it. So sorry for not giving you credit.

 

Is analmux enhancing it? That SMB sceen is what inspired me. I've seen some great stuff on the Atari, including the amazing stuff out of Poland, Germany, Czec... But SMB completely shattered every notion I had on what was achievable on the Atari 8-bit!

 

I'll also say that the scrolling levels in the BoinXX demos are smooth, jitter free, with great color and large tiles - something I never thought I'd see.

 

 

Back on topic:

 

I guess I'm just kind of confused becasue I'm reading the newer posts first.

 

I'm trying to research as much as I can on the theories and implementation of the following...

 

- MCS and it's use of PM overlay/underlay

- Scrolling MCS (I think this topic is where I associated analmux and MCS)

- Software Sprites (Using analmux's methods in Super Font) and Multiplexing.

 

So I'll continue to read all the older threads on these topics. As I know how annoying it can be to re-hash these discussions, and it isn't hard to do some leg-work with the search feature. But If any of the above are discussed more in-depth on another web page, I would like to know.

 

====

@emkay

So if I am following correctly... Emkay, you developed MCS AND the groundwork for G2F???

 

Not that I'm trying to suck-up or anything, but these are the most exciting things I have discovered since recently returning to the Atari. And from what I gather so far, you had implemented MCS many years ago.

 

Well, back to my history lesson - to read every thread I can find on these topics.

 

 

~zen

Link to comment
Share on other sites

hmmm..

 

I've read a lot of the history (including Emkay's arrival) and still have a lot more information to pour through. Very interesting read.

 

MCS since 1990.

 

It has to be utterly frustrating to still be trying to explain it, and push people to dig deeper. I'm almost ashamed of posting my first Castlevania screen (that I was quite proud of... for about 30 seconds). You must have been thinking, "14 years later and still another 4+ color screen with misplaced DLI's". But I do thank the people in that first thread for guiding me in the direction of educating myself on some advances that have been made.

 

It's a lot to digest. Gaining knowledge of Atari coding sometimes feels paradoxical.

 

The more I know... The more I come to realize I don't know

(paraphrase of a famous quote)

 

There is a big gap between A)"Textbook coding the Atari (with perhaps a few learned techniques" and Z)"Mastering the Atari" and unlocking the hardware - and thinking outside the box.

 

I am trying to move from A->Z after a long time away. In some ways it's still as intimidating as it was back then. I've decided to keep a log of discoveries, experiments, advice and failures I encounter along the way. At some point (hopefully I'll be closer to point Z) I'll release the logs to anyone who cares to view them.

 

I still think that there is a lot of confusion about what can be achieved. I don't believe we have yet seen the best that our Atari can do.

 

Back to the archives... And damn you emkay, analmux, heaven/tqa, Atarimania, (Space Harrier), and all others for inspiring me to have more than four colors and a singled color sprite blob! ;)

 

~zen

Link to comment
Share on other sites

 

 

I'm almost ashamed of posting my first Castlevania screen (that I was quite proud of... for about 30 seconds). You must have been thinking, "14 years later and still another 4+ color screen with misplaced DLI's".

 

 

You don't have to be "ashamed". The picture is very good for a selfdrawn one.

It is always nice to see people active doing stuff for the A8.

But, I think, it is always better to show what can be done by the machines "real" limits.

This may help in coordination to set the specific point for the software to reach.

 

Example:

Some Guys tried to do "better" software (yie ar kung fu)with a bit overestimating the abilities of the machine... so it was never finished or not playable at all.

 

The goal (this time) is to reach a knowledgebase about the MCS idea and a working sprite engine with an explanation of how to use it in "new" projects.

 

 

MCS isn't only the "multi color screen" graphics. I is the concept of the full technique to enhance Games on the A8. So it includes the usability of colors and softwaresprites and the enhanced pokey music (playing flute and piano sounds)....

 

G2F is a parallel project, which started to use Charmode graphics to include the 5th color. My MCS pictures may have inspired Tebe to implement the PM over-/underlay....

 

So while G2F is built to use the most possible colors, the IDEA of MCS was to build a balanced graphics/sound and CPU relationship.

Link to comment
Share on other sites

Almost sounds BRUCE LEEish - It's a total system, A different way. :D

 

I wouldl like to implement these ideas. But, I can see where people are confused. Searching for MCS I have read numerous threads. I have been able to see the results of MCS, from images to music, but I haven't been able to see how to do it. I'm not sure at this point if could even define something as using MCS techniques or not.

 

I've had people suggest setting up an MCS screen. But I have no idea what that means.

 

I downloaded the source Link from Analmux's scrolling SMB demo. But all I see are .dat files.

 

I'm just very perplexed. :?

 

~zen

Link to comment
Share on other sites

To make clear:

 

I've written 2 types of scroller.

 

1) MCS-scroller: scrolling antic 4 screens with PM-underlays moving at the same speed:

 

quadruple non-DMA players behind gfx. Vertical movement of PM data is triggered by writing to grafpX-registers while running DLI's instead of using PM-bases.

 

The SMB3 level I used in the scrolling MCS demo is just to show the technique, and I don't have any plans for making a 1 to 1 port of the original NES game. The levelmap is already completely present in the memory: 19kbytes of antic4 charcodes.

 

 

2) MWP-scroller: scrolling antic 4 screens without PMs, but the needed amount of screenmemory is minimalized, and also the amount of data to be thrown around --> Minimal Wrapping Principle scrolling: No large datashifts needed.

 

I will use only MWP scrolling in the mario clone game. After finishing the mario clone I've planned to write another game: the graviton (flashcart) game. For this game I've planned to combine MWP and MCS scrolling AND softwaresprites (Smartfont).

Link to comment
Share on other sites

Well this is what I intend to get working by the end of the weekend.

(And I'm sure I have some of this wrong)

 

I have most of my level 1 data.

 

- Setup the screen Using 2 Players the entire height of the screen at either side to hide my on screen blitting area.

- I'll use the two remaining players as underlays for the character set to add more color.

- I'll have to write a software sprite routine that can XOR my characters of the software sprite with the backgorund characters.

- I'll have to setup my character set. And create a worldmap array. Then blit the tiles to the screen.

-Since I don't truly have a video buffer chain. I will have to draw the new tiles on the sides of the screen underneath the vertical player.

 

This will be a good exercise, but I know I'm already in for trouble. My scrolling would be moving a full 8 pixels at a time. Since I'm using a character mode, my software sprite will also move 8 pixels at a time.

 

So that will be my first attempt. It won't be pretty but It's a step I have to take. Obviously I need to come up with a better technique.

Link to comment
Share on other sites

Analmux,

 

The source that you released with the SMB3 scrolling demo, Am I suppose to be able to do anything with it?

 

That may sound like a stupid question, but when I downloaded the source I expected to see x-asm or .m65 source code. But when Extracting the .zip I only see .dat files and I am unaware of what to do with them.

 

:ponder:

Thanks

~zen

Link to comment
Share on other sites

Ok I've been pretty busy.

 

Thanks to everyone for their suggestions on the Title-screen thread. It actually benefitted me more than I could have expected. Out of that thread Emkay suggested using G2F. So over the past few days I have plunged into learning G2F, (...) I am now convinced that this is the Tool I will use for graphics in the future.

that's sounds cool, nice you like this tool! :)

 

 

If I can't figure out how to use g2f to create my character sets, then I am left with Envision, EnvisionPC, Instedit, SuperFont. I think Envision will load .fnt files that are save from g2f. But I haven't gotten it to worek right just yet. It would really suck to have to draw all the characters form the character set by hand if I don' have to.

well, to sum up:

what do you need to be added / fixed in G2F (to avoid using any C64 tool, for example) ?? I will try to translate and pass your comments to TeBe (G2F's author).

Link to comment
Share on other sites

Analmux,

 

The source that you released with the SMB3 scrolling demo, Am I suppose to be able to do anything with it?  

 

That may sound like a stupid question, but when I downloaded the source I expected to see x-asm or .m65 source code. But when Extracting the .zip I only see .dat files and I am unaware of what to do with them.

 

:ponder:

Thanks

~zen

 

???? I don't know, there should be a file called "main.asx" included with all the files. Which file did you download??

Link to comment
Share on other sites

Dracon,

 

Good to hear from you.

 

Like I said I am very interested in G2F. Truly an amazing program.

 

The first thing I would like to see is an English translation of the documentation. I know you were working on this at one time. I think more people would use it, if they could read the details. I used a lot of trial and error to figure things out, and emaky helped explain certain parts.

 

It's quite possible that G2F already has everything, only I am unable to read the details. I would prefer to use G2F.

 

So I can list:

 

1) What I can do with G2F and where I would use it with my current knowledge.

2) Why I chose the C=64 "charpad" tool for the character graphics over G2F

3) What details I don't understand about g2f

 

==========

 

1) What I can do with G2F and where I would use it:

a) Full screen static images, Titlescreens, Logos.

I can draw a picture in Paint Shop Pro or Photshop on the PC in 2 colors, and save it as .bmp. I can then open the .bmp file in G2F and color/shade and edit the image for the Atari with spectacular results.

b) Porting images to the Atari.

Pretty much the same as above.

 

==========

 

2)Why I chose the C=64 tol for the character graphics:

a) The layout.

charpad was designed for this purpose. So it's layout has three tabs:

 

1.character tab - It can setup a double wide pixel (4x8) area where I can plot the pixels for each character. Since I will be using antic mode 4 I can allocate 128 characters for the set. In the main window choose the character position int the set and then draw in th 4x8 area. After I create my characters I can move to the tile tab.

 

2.Tiletab tab - Here I can choose how many tiles I would like to create. Each tile is made up of 16 characters in a 4x4 grid. So I can choose the characters I drew in 1. and build my 32x32 pixel tiles.

 

3.Map tab - Here I can build my level from the tiles created in 2. I can choose hoe many X-tiles and Y-tile for the level. Then I can select the tiles I created and place them on the map to see how they fit together.

 

b) editing:

If something doesn't look right I can go back to either the "tile tab" or the "character tab" to make changes. Making a change at the character level will automically change that character in the "tile tab" area, and the final result can be seen in the "map tab"

 

c) Package, saving, and formats:

I can save the entire Package as a .ctm and I can save each compenent as seperates (characters .chr, tiles .til, tile colors .tlc, Maps .map).

 

Most importantly... the info.txt file explains how the formats are stored. So I can use the data in my game.

 

 

==========

 

What details I don't understand about G2F:

a) I'm sure there is a lot that I can't read in the documentation.

b) As far As I understand: G2F is great when needing to draw elaborate pictures. (simply stated) It breaks down the picture into modified character sets and has a lot of advanced features for extendeing color through P/M underlays as well as a host of other options including optimizing.

 

What I'm not sure about is, if it's useful the other way around. Manipulate charatcers to -> create tiles ->to creat game levels. When approached from this direction, it's crucial to control the count of characters and character sets. (Not create the best picture possible by using numerous character sets).

 

I will need to create numerous screens from one characterset. Where as, I see G2F's strength is using numerous charactersets to create one screen.

 

I'm not sure if I am making sense to you. And I could be just understanding G2F one way. Like I said it's quite possible that It can do the above as well.

 

c) Laslty, saving and file formats

a) My confusion here probably relates to the first request for English Documentation. I can save in a lot of different formats in G2F, including an .xex executable (this is really great for demos and auto boot screens). There is also an option to save as ASM for X-asm. Now here is where my inexperience hurts me.

 

I'm not familiar yet with x-asm. I've been working with Mac/65. I know it shouldn't be a big difference, but for the ammount of information I've been taking in the last few weeks, it's another hurdle.

 

I don't understand how I can access the charactersets from G2F. So, If I am coding a game. How would I load my custom font (characterset) from G2F. I'm missing something here, probably because I can't read how it works.

 

 

Thanks for any help you can offer.

 

And what will it take to have you finish the document translation ;)

 

BTW, I found a translation service that estimated the cost of accurately translating the number of words at $300.00 :twisted:

 

~zen

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...