Forum unknown
· Programming
#Dual Play Bug
11 messages in this thread
Dave;
I don't know if you and your other Commodore associates listed
as Forum contacts have specialties or not. I picked your name out
of the list because I've seen it more often on the Forum. I hope
you don't mind and that you can answer my query.
Having finally gotten Dual Playfields to work under Intuition (in C),
I have noticed something that is probably not news to you. When used
in Hi-Res mode (640×200) the colours in the background playfield appear
"dirty". That is to say they are somewhat darker than the foreground
colours that have the same RGB values. In Lo-Res, the colours match
exactly.
Do you know if this is a software bug that there might be a fix
for, or perhaps corrected in 1.2, or is it a Chip problem?
I'm trying to develop something and have to make the decision of living
with dirty colours during development, knowing that by the time I'm
finished all will be well, or, switching to Lo-Res (I'd really rather
not).
Thanks for any light you can shed.
Les.
Les, this is sort of an oddball idea, but would you download HALFBR.EXE (in
DL3, I believe) and see if your machine is one that supports "Double halfbrite
mode"? If it is, then see if you can't find a different Amiga that doesn't
support that mode, and see if the same problem appears. It sounds almost as if
double halfbrite mode is getting enabled by mistake, and if so, the effect
wouldn't appear on machines that don't support the mode. Knowing that would
probably help the Intuition programmers to find the root of the problem… –
Bela
Bela,
Well, it was a shot, but no go. I get two identical 32 colour
palettes. However, this prog builds a lo-res (320×200) screen, and my
problem only appears in hi-res. I think I may download the source in
dl7 and modify it for hi-res to see what happens.
Thanks for the thought……..Les.
I hope this is not asking to much but I was wondering if you could leave an
example of how to use dual playfield mode with Intuition in DL7. If that is
too much are there any hints you could give as to how to do it? Hope you
can figure out your problem. Darrel
Darrel,
I'd be glad to. I'll put together a simple example without all
the extraneous junk I have in my current test progs. It will be a
couple of days though so I'll leave some hints here too.
This will be of course, what I have discovered. I make no
allusions to this being the only or best way to do it, just the only
way I have found.
1… Allocate your own BitMaps each with their own depth(1-3) to add
up to the depth in the NewScreen structure.
2… Set Screen.Type to CUSTOMBITMAP as well as others settings you were
using and set the CustomBitMap pointer to the first BitMap.
3… When you open the Screen, Intuition will allocate 2 RasInfo
structures but you need to create their pointers. Intuition also gives
you 1 RastPort structure so you need to allocate a second.
4… Get the first RasInfo pointer from the ViewPort and the address of
the second RI from the first.
5… Set the pointers to link the two RI's and to point to the two
BitMaps.
6… Set the second RastPort you created to point to the second BitMap.
(this is the step I first forgot)
7… That RastPort has to be initiallized first
8… Do a RemakeDisplay(not entirely sure this is needed)
you should now have a Screen pointing to a ViewPort that is pointing
to two RasInfos that are pointing to two BitMaps.
For the Drawing routines you also have two RastPorts pointing to the
same BitMaps.
Hope this helps.
Hope I haven't forgotten anything….Les
Darrel,
I'd be glad to. I'll put together a simple example without all
the extraneous junk I have in my current test progs. It will be a
couple of days though so I'll leave some hints here too.
This will be of course, what I have discovered. I make no
allusions to this being the only or best way to do it, just the only
way I have found.
1… Allocate your own BitMaps each with their own depth(1-3) to add
up to the depth in the NewScreen structure.
2… Set Screen.Type to CUSTOMBITMAP as well as others settings you were
using and set the CustomBitMap pointer to the first BitMap.
3… When you open the Screen, Intuition will allocate 2 RasInfo
structures but you need to create their pointers. Intuition also gives
you 1 RastPort structure so you need to allocate a second.
4… Get the first RasInfo pointer from the ViewPort and the address of
the second RI from the first.
5… Set the pointers to link the two RI's and to point to the two
BitMaps.
6… Set the second RastPort you created to point to the second BitMap.
(this is the step I first forgot)
7… That RastPort has to be initiallized first
8… Do a RemakeDisplay(not entirely sure this is needed)
you should now have a Screen pointing to a ViewPort that is pointing
to two RasInfos that are pointing to two BitMaps.
For the Drawing routines you also have two RastPorts pointing to the
same BitMaps.
Hope this helps.
Hope I haven't forgotten anything….Les
I hope this is not asking to much but I was wondering if you could leave an
example of how to use dual playfield mode with Intuition in DL7. If that is
too much are there any hints you could give as to how to do it? Hope you
can figure out your problem. Darrel
Bela,
Well, it was a shot, but no go. I get two identical 32 colour
palettes. However, this prog builds a lo-res (320×200) screen, and my
problem only appears in hi-res. I think I may download the source in
dl7 and modify it for hi-res to see what happens.
Thanks for the thought……..Les.
Les, this is sort of an oddball idea, but would you download HALFBR.EXE (in
DL3, I believe) and see if your machine is one that supports "Double
halfbrite mode"? If it is, then see if you can't find a different Amiga
that doesn't support that mode, and see if the same problem appears. It
sounds almost as if double halfbrite mode is getting enabled by mistake,
and if so, the effect wouldn't appear on machines that don't support the
mode. Knowing that would probably help the Intuition programmers to find
the root of the problem… – Bela
Les, this is sort of an oddball idea, but would you download HALFBR.EXE (in
DL3, I believe) and see if your machine is one that supports "Double
halfbrite mode"? If it is, then see if you can't find a different Amiga
that doesn't support that mode, and see if the same problem appears. It
sounds almost as if double halfbrite mode is getting enabled by mistake,
and if so, the effect wouldn't appear on machines that don't support the
mode. Knowing that would probably help the Intuition programmers to find
the root of the problem… – Bela
Les, this is sort of an oddball idea, but would you download HALFBR.EXE (in
DL3, I believe) and see if your machine is one that supports "Double halfbrite
mode"? If it is, then see if you can't find a different Amiga that doesn't
support that mode, and see if the same problem appears. It sounds almost as if
double halfbrite mode is getting enabled by mistake, and if so, the effect
wouldn't appear on machines that don't support the mode. Knowing that would
probably help the Intuition programmers to find the root of the problem… –
Bela