Jump to content
IGNORED

color stack and FG BG modes


Rinka

Recommended Posts

  hi i am having much trouble with this and get many weird outputs and my project would suffer w/o it

 

for example what if i want red background but want white text? tried fg+bg but then grafx get messed up (looks like a plaid design sometimes!) or still get black background in text, etc. i may do one thing right, another messes up ?

 

how do i do everything at the same time? or properly swith between modes? like have proper text screens and graphics in cs mode work well?

 

sorry if my question is all over the place, i am still learning this stuff. just a little more info if anyone.

 

below is the best thing i could find in search from dz-jay who invites questions a few years ago. since it was from the sdk thread i decided to start new subject here ?

 

thank you all!

 

---

i was talking about the post below:

 

from link: https://atariage.com/forums/topic/261313-intybasic-sdk-feedback-request/?do=findComment&comment=3678062

 

and post #7 quoted below.

On 1/23/2017 at 5:39 AM, DZ-Jay said:

OK, I took a look at it and it seems that the compiler/SDK changes should not have made any difference. The program is setting the screen mode to Color Stack, but drawing using FG/BG. This line seems to be set exclusively for the title screen:


MODE SCREEN_COLOR_STACK, STACK_BLUE, STACK_RED, STACK_TAN, STACK_YELLOW

However, there is not another MODE statement in the entire program, so it never changes mode. I don't see how it ever worked before, except to think that somehow your older versions of the SDK had a different value for SCREEN_COLOR_STACK, or that statement was being ignored and the default mode was FG/BG. I don't know, but my tests confirm that IntyBASIC 1.2.7 (including the old epilogue and prologue library files) compiled in exactly the same way, setting Color Stack mode and printing weird colours.

 

In other words, it never should have worked the way you intended, and I can't get it to work either with the older version of IntyBASIC.

 

For the levels, if you want to draw in FG/BG mode, just use the following line in the "DrawScreen" procedure:


MODE SCREEN_FOREGROUND_BACKGROUND

And that should fix it. If you have questions on the color modes and differences between Color Stack and FG/BG or how to use them, just post a question. :)

 

 

-dZ.

 

Link to comment
Share on other sites

51 minutes ago, Rinka said:

  hi i am having much trouble with this and get many weird outputs and my project would suffer w/o it

 

for example what if i want red background but want white text? tried fg+bg but then grafx get messed up (looks like a plaid design sometimes!) or still get black background in text, etc. i may do one thing right, another messes up ?

 

how do i do everything at the same time? or properly swith between modes? like have proper text screens and graphics in cs mode work well?

 

sorry if my question is all over the place, i am still learning this stuff. just a little more info if anyone.

 

below is the best thing i could find in search from dz-jay who invites questions a few years ago. since it was from the sdk thread i decided to start new subject here ?

 

thank you all!

 

---

i was talking about the post below:

 

from link: https://atariage.com/forums/topic/261313-intybasic-sdk-feedback-request/?do=findComment&comment=3678062

 

and post #7 quoted below.

 


Hello,

 

I'd gladly help in whichever way I can, but alas, it is not clear to me what you are looking for.

 

If you perhaps post some of the code you've tried, we could offer pointers on how to make it work.

 

FG/BG mode seems to be a favorite for IntyBASIC users, but it is not the default mode, so you have to set it explicitly.

 

To get red background with white text should be easy to do in FG/BG mode.  In Color Stack mode, it is a bit more involved since the background color is not set directly by random access, but by cycling through a circular array of four colors (the so-called Color Stack).

 

If you give a description of precisely what you are trying to accomplish, or what you are having problems with, and you provide the code that you have tried; I'm sure someone can assist.

 

Quote

how do i do everything at the same time?

What do you mean by "everything at the same time"?

 

Quote

or properly swith between modes?

Switching modes is done with the MODE statement.  Check the IntyBASIC manual for information on how to use it.

 

Quote

like have proper text screens and graphics in cs mode work well?

What do you mean "work well"?


Take a look at some of the sample programs that come with the IntyBASIC distribution to see how scenes are drawn.  If you have specific questions about how they work, feel free to ask.


I'm sorry if this is not very helpful, and I appreciate that you are frustrated, but it is hard to offer assistance without knowing precisely what you are looking for.

 

   dZ.

Link to comment
Share on other sites

hi dz-jay, thank u for responding

 

u are correct and i knew my question was "all over the place". its that i get these weird results and i dont know why and it even confuses me in asking later. i even try and print a grom character that works well in cs but then is different in fg/bg, etc, etc.

 

ok, too much blah blah from me. instead i will prepare some code or examples to better demonstrate what i'm trying to acheive to better help the forum help me better, and will post back soon

 

hopefully its easy to switch gears between modes

 

thanks for now ?

Link to comment
Share on other sites

30 minutes ago, Rinka said:

hi dz-jay, thank u for responding

 

u are correct and i knew my question was "all over the place". its that i get these weird results and i dont know why and it even confuses me in asking later. i even try and print a grom character that works well in cs but then is different in fg/bg, etc, etc.

 

ok, too much blah blah from me. instead i will prepare some code or examples to better demonstrate what i'm trying to acheive to better help the forum help me better, and will post back soon

 

hopefully its easy to switch gears between modes

 

thanks for now ?

 

CS and FG/BG modes are very different, and the constraints of each are different as well.  For instance, in FG/BG, the GROM card access is limited to the first 64 cards, which covers pretty much the ASCII set.  So that could be a factor in the issues you are seeing.

 

Also, you can only use one mode at a time.  That is, the entire screen is either in CS or FG/BG mode.  You can use the "MODE" statement to change the mode, as described in the IntyBASIC manual.

 

If you are using the IntyBASIC SDK, then you can include the "constants.bas" file to use symbolic names for the numeric constants of the colors and modes.

 

     -dZ.

Link to comment
Share on other sites

7 hours ago, DZ-Jay said:

FG/BG mode seems to be a favorite for IntyBASIC users,

I believe that is because it is the graphics mode that most closely resembles how other systems work. Many of us who got into IntyBASIC don't have previous experience with Intellivision, and in particular not programming so from that perspective the Color Stack mode appears more different - though I'm aware about which pros and cons it has over FG/BG. Perhaps the analogy can be made that FG/BG is like driving a front-drive car, and CS is like riding a motorcycle. Often the car is easier to handle, but in narrow passages only the motorcycle would get through, and might also run faster (depending on make and engine size, of course).

Link to comment
Share on other sites

1 hour ago, carlsson said:

I believe that is because it is the graphics mode that most closely resembles how other systems work. Many of us who got into IntyBASIC don't have previous experience with Intellivision, and in particular not programming so from that perspective the Color Stack mode appears more different - though I'm aware about which pros and cons it has over FG/BG. Perhaps the analogy can be made that FG/BG is like driving a front-drive car, and CS is like riding a motorcycle. Often the car is easier to handle, but in narrow passages only the motorcycle would get through, and might also run faster (depending on make and engine size, of course).

That comment wasn't intended as an offense.  It was reflecting an observation, and sort of a nudge that perhaps that is the mode Rinka should play with first.  I admit that CS is a bit more convoluted and harder to grasp at first.

 

Personally, I find both modes alien.  I only choose CS mode because I can use GROM and GRAM fully, and I don't mind wrangling the color stack to do what I want.

 

As for previous experience, I started with the Intellivision just like you and others -- with no experience with 8-bit systems.  I played with a Commodore 64 back in the 80s, but its graphics modes were alien to me too.  Yet, when I started playing with Intellivision, I chose CS.  Horses for courses. :)

 

     -dZ.

Edited by DZ-Jay
  • Like 1
Link to comment
Share on other sites

Isn't the other big limitation with fg/bg that you are restricted to only half the intellivision colours for foreground and objects.  With colour stack mode you're very limited with changing background colours, which is why people might not use it.  But in a lot of cases you don't need to change the background colour much.

Edited by mr_me
Link to comment
Share on other sites

14 minutes ago, mr_me said:

Isn't the other big limitation with fg/bg that you are restricted to only half the intellivision colours for objects.

To me the big limitation of FG/BG -- the reason I seldom use it -- is the GROM access.  The colors are very limited in both modes in various ways, but personally I find the ability of using GROM to complement a GRAM scene very liberating.  Precisely because 64 GRAM characters is hardly enough.

 

Quote

With colour stack mode you're limited with background colours, which is why people might not use it.  But in a lot of cases you don't need to change the background colour much.

My observation is that people do not use it because the Color Stack is a bitch to work with, and like @carlsson implied, it's not very intuitive.  I admit it is hard to get used to, but I believe that color transitions are not as critical (or as pervasive) as graphical ones.

 

That's just a personal opinion.  I don't think one is better than the other.  I have invested a lot of time and effort in working with the Color Stack effectively that I feel comfortable with it -- much more so than with FG/BG, which I may not be able to exploit as effectively.

 

The same as my programming preference:  I do not use Assembly Language because I think it is necessarily superior to IntyBASIC, but because I have already put so much time and effort into it that I feel very comfortable exploiting it to great effect; and I have little appetite for displacing all that experience with something I have yet to master anew.

 

Horses for courses, as I said before.  :)

 

The only think I reject is when people emphatically suggest that one mode is superior to the other, just like some assert that one language is better than another (not that that was being asserted here in any way, just speaking from past experience).  To me that's a bit short-sighted.  There are trade-offs in all of them; pick your poison.

 

    -dZ.

Edited by DZ-Jay
Link to comment
Share on other sites

Color Stack is harder to use, there's no question about that, but it does offer some benefits if you are willing to go through the trouble of figuring it out.  Here's a somewhat recent post I made in defense of Color Stack mode:

 

 

For @Rinka, however, and more topical to this thread, that post includes a link to a brief description on how CS mode works in practice, that I wrote for another topic several years ago.  It is intended to respond to a specific question, so bear that in mind and focus on the first half of the comment.  Here's that post directly, in case it helps anybody struggling to understand how Color Stack works:

 

    -dZ.

Edited by DZ-Jay
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...