Yes. the Harlequin will support this mode 100% and the ulaplus will also be available separately. That's what makes it so special. And Andrew can correct me if I'm wrong, but I'm assuming we can upgrade our Spectrums with the new ulaplus as well. This isn't just "another new mode that no one will ever use". This is the good stuff.
It can be controlled from Basic, the games don't need to be hacked. It's really impressive. You load the a small loader with the palette and then the game. Voila.
So, can someone do the loading screen of Sabre Wulf with the tiger actually in orange?
Or better yet, the Spectrum Man black-lines-on-orange screenshot? Hang on though - does the new palette affect the border colour?*
*P.S. Anyone who directs me to a wiki rather than giving a straight answer gets beaten with a big stick, just so you know.
So, can someone do the loading screen of Sabre Wulf with the tiger actually in orange?
Or better yet, the Spectrum Man black-lines-on-orange screenshot? Hang on though - does the new palette affect the border colour?*
*P.S. Anyone who directs me to a wiki rather than giving a straight answer gets beaten with a big stick, just so you know.
Yes. the Harlequin will support this mode 100% and the ulaplus will also be available separately. That's what makes it so special. And Andrew can correct me if I'm wrong, but I'm assuming we can upgrade our Spectrums with the new ulaplus as well. This isn't just "another new mode that no one will ever use". This is the good stuff.
Blimey! I'm a man under serious pressure these days ;-)
1. ULA Book
2. Harlequin
3. ULA replacement (plus)
4. New Isometric game.
Hmm... If this were the '80's I'd get paid for all this stuff! hehe
Excellent! I can get all of this mentioned in Micro Mart. Especially impressive as the ULA Plus, the ULA Book and that Isometric game will all be ready by Christmas :-)
Excellent! I can get all of this mentioned in Micro Mart. Especially impressive as the ULA Plus, the ULA Book and that Isometric game will all be ready by Christmas :-)
So, does someone want to go in and edit the word 'border' at least somewhere onto that page then?
I don't cause I can barely string a legible esntence together at the moment and I already complained to chevron about it being hard to understand :)
I'm working on a sort of "64 colour mode for dummies" that tries to expand on that spec and explain things a bit better with some code examples etc.
But all I seem to be able to write at teh moment is typos (I've been awake since 2pm yesterday)
Had a play with it this evening, and it seems straightforward enough to change the palette. This is definitely something I'll be looking to support in Spectrum software going forward.
Had a play with it this evening, and it seems straightforward enough to change the palette. This is definitely something I'll be looking to support in Spectrum software going forward.
Sounds great, this is something that is long overdue on the old 8-bit. ULA+ and DMA would make things interesting. Although I've been politely asked not to mention it in my Retro Mart page until it's ready.
ehm, final question... is it possible to have ula64 (it really needs some cathy name, like mega-ula or super-ula. or perhaps ula c64 ;D ) in 128k model ?
ehm, final question... is it possible to have ula64 (it really needs some cathy name, like mega-ula or super-ula. or perhaps ula c64 ;D ) in 128k model ?
it's possible in emulation, in fact spin currently emulates it on all models... but it's not going to happen in real hardware until the 128k ULA has been reverse engineered.
it's possible in emulation, in fact spin currently emulates it on all models... but it's not going to happen in real hardware until the 128k ULA has been reverse engineered.
So let's say I get my hands on one, plug it into my 48k speccy could I add an ay adapter and increase the memory to 128k and be able to play 128k games?
So let's say I get my hands on one, plug it into my 48k speccy could I add an ay adapter and increase the memory to 128k and be able to play 128k games?
just a thought
There is one available for the 16K or 48K Speccy if I remember rightly, although it might need soldering skillz or something. I have a couple of working 16K machines actually. I suppose you'd also need an AY upgrade too?
So let's say I get my hands on one, plug it into my 48k speccy could I add an ay adapter and increase the memory to 128k and be able to play 128k games?
just a thought
Nope. You'd need the 128K ULA for the memory paging, amongst other things.
Nope. You'd need the 128K ULA for the memory paging, amongst other things.
You could replace the 48 ula with an upgrade with more memory an ay support. But then the speccy mb would just be providing the z80 and colour/rf out... Plus it would probably overload the power supply.
Other than that, doable. :-) the 128 ula specifics are not difficult to work out.
Nope. You'd need the 128K ULA for the memory paging, amongst other things.
thought that would come into the equation somewhere but I needed to ask at least with an ay adapter I coud still have the sound - I'd just have to suffer some multiloading. Still not too much to ask for to see the increased colour pallete, I'm just glad to see we'll still have colour clash.
Been busy cracking the Orfeus player recently, so I've only just stumbled upon this. It looks pretty easy to write for, so may well turn-up in a future game. :smile:
Noobosity question one. How will games that make active use of BRIGHT and FLASH (Manic Miner, say) be affected by the ULA64 system using the BRIGHT and FLASH bits for other purposes?
Noobosity question two. The standard Speccy doesn't allow BRIGHT 1 borders. Does the ULA64-equipped Speccy have this facility or otherwise the facility to put all colours in both BORDER and PAPER?
Blimey! I'm a man under serious pressure these days ;-)
1. ULA Book
...
3. ULA replacement (plus)
Do I detect a masochistic streak? :)
"There is a theory which states that if ever anybody discovers exactly what the ULA does and how to do it, it will instantly disappear and be replaced by something even more bizarre and inexplicable. There is another theory which states that this has already happened..."
Noobosity question one. How will games that make active use of BRIGHT and FLASH (Manic Miner, say) be affected by the ULA64 system using the BRIGHT and FLASH bits for other purposes?
Noobosity question two. The standard Speccy doesn't allow BRIGHT 1 borders. Does the ULA64-equipped Speccy have this facility or otherwise the facility to put all colours in both BORDER and PAPER?
Noobosity question one. How will games that make active use of BRIGHT and FLASH (Manic Miner, say) be affected by the ULA64 system using the BRIGHT and FLASH bits for other purposes?
A cell with BRIGHT or FLASH on will just mean the colours are taken from a different palette to the normal colours. So you can configure the light or dark colours to be different shades, or entirely different colours (after all, a colour rarely switches from bright to dark). As for FLASH, you'll no longer get the blinking effect, you just switch in another palette.
Noobosity question two. The standard Speccy doesn't allow BRIGHT 1 borders. Does the ULA64-equipped Speccy have this facility or otherwise the facility to put all colours in both BORDER and PAPER?
Doesn't look like it - the border will be one of the eight paper colours from the first palette (i.e. the paper colours for an attribute where bright and flash are off). But since you can redefine how those colours appear, you can set those 8 possible colours to be anything you want.
The zipfile contains a driver that maps CP/M 6-bit colour numbers (eg, PALETTE 2 63) to actual colours, and a utility (PAL256) that works like PALETTE but uses the full 8-bit colour range. As long as you don't try to use more colour combinations than will fit on the screen at any one time, it all Just Works. If you do, it starts reassigning slots and things already on the screen start changing colour...
(If the Spectrum +3 ULA ever gets reverse-engineered, I think that from the point of view of running CP/M, it would be better off with Timex 512x192 mode than 256 colours. Or both :) )
Oh, and I'm now very grateful for the SPIN debugger.
(If the Spectrum +3 ULA ever gets reverse-engineered, I think that from the point of view of running CP/M, it would be better off with Timex 512x192 mode than 256 colours. Or both :) )
Timex's modifications are very straightforward. There are always two byte fetches to draw 8 pixels -- one from the 'pixel' area and one from the 'attribute' area.
1) In spectrum mode, the attribute area address is redundantly generated so that the same 8 vertical pixels in a char map to the same attribute address. This gets you the characteristic 32x24 colour resolution.
2) In hi-colour mode, the attribute address is unique for each 8-pixel address (in effect a constant offset from the pixel data). This gets you a 32x192 colour resolution. The attribute area is now the same size as the pixel area (6144 bytes).
3) In hi-res mode, the second byte fetched is also treated as pixel data. So 16 pixles are drawn rather than 8 and you double the horizontal resolution fior a display size of 512x192 pixels. You've lost colour information so an i/o register is used to store PAPER/INK for the entire screen and border.
4) And the same two display mode that was later differently implemented in the 128k spectrum.
There is one obvious and simple display mode that was missed by TImex. Use the two bytes fetched to specify four colours for each pixel. This would mean no colour clash 256x192 resolution similar to what the CPC had.
All of this, together with the new pallette, should be easy to implement using an existing ULA model :-)
And I too would like to have one that can replace the ULA already in the machine. But I think I might wait a bit longer until sprites or scrolling hw is added :D
This could be great, especially if older games are recoloured to support it, but if so then I hope that emphasis is placed on games that would benefit from it. I mean, I'm not too sure that Manic Miner or Trap Door would benefit from more colours, but Fairlight or The Sentinel might look amazing.
I'm not sure if The Great Escape should be recoloured, though, as the black and white style suits the World War 2 film theme.
But Pyjamara, Three Weeks in Paradise, etc, would be nice with the colour clash caused by sprites moving over the background removed.
And if anyone ever does write a Monkey Island/Zak MacKrakken style game for the Spectrum, then this colour mode will be ideal, as you can use the colour to add more detail, and also to highlight the "mouse" cursor.
Had a play with it this evening, and it seems straightforward enough to change the palette. This is definitely something I'll be looking to support in Spectrum software going forward.
Wow! Is there any chance of you maybe re-releasing Homebrew with the (very minimal) colour clash removed?
Doesn't look like it - the border will be one of the eight paper colours from the first palette (i.e. the paper colours for an attribute where bright and flash are off). But since you can redefine how those colours appear, you can set those 8 possible colours to be anything you want.
We haven't done anything specific with the border colours. When done in electronics - ie the Harlequin or ULA replacement, which palette provides the eight border colours will need to be specifically selected, otherwise you would probably get whatever palette was currently "selected". Keep in mind, that you can dynamically swap palettes as the screen is being updated...
I think an additional register should be allocated to define which palette the eight border colours are selected from. Again, this can be changed dynamically, increasing the number of simultaneous border colours possible (full screen colour effects etc). Even if full screen effects are not required, being able to set the border colour from any palette probably is.
We haven't done anything specific with the border colours. When done in electronics - ie the Harlequin or ULA replacement, which palette provides the eight border colours will need to be specifically selected, otherwise you would probably get whatever palette was currently "selected". Keep in mind, that you can dynamically swap palettes as the screen is being updated...
I think an additional register should be allocated to define which palette the eight border colours are selected from. Again, this can be changed dynamically, increasing the number of simultaneous border colours possible (full screen colour effects etc). Even if full screen effects are not required, being able to set the border colour from any palette probably is.
Chevron?
That would make emulation actually a tad easier. Cheveron wants this, trust me. He does. Honest. He also wants to talk to you about summats else. Can you get to irc.coldfront.net, channel #spin? We would also like to ask you questions.
Comments
I heard Chris Smith is working on a actual ULA which supports 64colours. I don't know the details tho (except it will be 48k only).
It can be controlled from Basic, the games don't need to be hacked. It's really impressive. You load the a small loader with the palette and then the game. Voila.
that should get the ghastly coloured unreadable entries flooding in again like the good old days.
now that the speccy can do brown I'm sure there'll be plenty of c64 "emulators" too ;)
Or better yet, the Spectrum Man black-lines-on-orange screenshot? Hang on though - does the new palette affect the border colour?*
*P.S. Anyone who directs me to a wiki rather than giving a straight answer gets beaten with a big stick, just so you know.
- IONIAN-GAMES.com -
yes it does ;)
Blimey! I'm a man under serious pressure these days ;-)
1. ULA Book
2. Harlequin
3. ULA replacement (plus)
4. New Isometric game.
Hmm... If this were the '80's I'd get paid for all this stuff! hehe
Chris
So, does someone want to go in and edit the word 'border' at least somewhere onto that page then?
- IONIAN-GAMES.com -
Regards,
Shaun.
I don't cause I can barely string a legible esntence together at the moment and I already complained to chevron about it being hard to understand :)
I'm working on a sort of "64 colour mode for dummies" that tries to expand on that spec and explain things a bit better with some code examples etc.
But all I seem to be able to write at teh moment is typos (I've been awake since 2pm yesterday)
Egghead Website
Arcade Game Designer
My itch.io page
Regards,
Shaun.
it's possible in emulation, in fact spin currently emulates it on all models... but it's not going to happen in real hardware until the 128k ULA has been reverse engineered.
So let's say I get my hands on one, plug it into my 48k speccy could I add an ay adapter and increase the memory to 128k and be able to play 128k games?
just a thought
Regards,
Shaun.
Nope. You'd need the 128K ULA for the memory paging, amongst other things.
You could replace the 48 ula with an upgrade with more memory an ay support. But then the speccy mb would just be providing the z80 and colour/rf out... Plus it would probably overload the power supply.
Other than that, doable. :-) the 128 ula specifics are not difficult to work out.
thought that would come into the equation somewhere but I needed to ask at least with an ay adapter I coud still have the sound - I'd just have to suffer some multiloading. Still not too much to ask for to see the increased colour pallete, I'm just glad to see we'll still have colour clash.
https://twitter.com/bobsstuffgames
https://www.facebook.com/bobs.stuff
http://www.bobs-stuff.co.uk
Noobosity question two. The standard Speccy doesn't allow BRIGHT 1 borders. Does the ULA64-equipped Speccy have this facility or otherwise the facility to put all colours in both BORDER and PAPER?
Do I detect a masochistic streak? :)
"There is a theory which states that if ever anybody discovers exactly what the ULA does and how to do it, it will instantly disappear and be replaced by something even more bizarre and inexplicable. There is another theory which states that this has already happened..."
noob-centric manual: http://sites.google.com/site/ulaplus/documentation/guide-to-using-ulaplus/UsingtheULAplus64colourmodefromSinclairBasic.pdf?attredirects=0
it's pretty basic cause I wrote it, in the middle of the night during a bout of insomnia
A cell with BRIGHT or FLASH on will just mean the colours are taken from a different palette to the normal colours. So you can configure the light or dark colours to be different shades, or entirely different colours (after all, a colour rarely switches from bright to dark). As for FLASH, you'll no longer get the blinking effect, you just switch in another palette.
Doesn't look like it - the border will be one of the eight paper colours from the first palette (i.e. the paper colours for an attribute where bright and flash are off). But since you can redefine how those colours appear, you can set those 8 possible colours to be anything you want.
- IONIAN-GAMES.com -
http://www.seasip.demon.co.uk/Cpm/software/ula256.zip
The zipfile contains a driver that maps CP/M 6-bit colour numbers (eg, PALETTE 2 63) to actual colours, and a utility (PAL256) that works like PALETTE but uses the full 8-bit colour range. As long as you don't try to use more colour combinations than will fit on the screen at any one time, it all Just Works. If you do, it starts reassigning slots and things already on the screen start changing colour...
(If the Spectrum +3 ULA ever gets reverse-engineered, I think that from the point of view of running CP/M, it would be better off with Timex 512x192 mode than 256 colours. Or both :) )
Oh, and I'm now very grateful for the SPIN debugger.
Timex's modifications are very straightforward. There are always two byte fetches to draw 8 pixels -- one from the 'pixel' area and one from the 'attribute' area.
1) In spectrum mode, the attribute area address is redundantly generated so that the same 8 vertical pixels in a char map to the same attribute address. This gets you the characteristic 32x24 colour resolution.
2) In hi-colour mode, the attribute address is unique for each 8-pixel address (in effect a constant offset from the pixel data). This gets you a 32x192 colour resolution. The attribute area is now the same size as the pixel area (6144 bytes).
3) In hi-res mode, the second byte fetched is also treated as pixel data. So 16 pixles are drawn rather than 8 and you double the horizontal resolution fior a display size of 512x192 pixels. You've lost colour information so an i/o register is used to store PAPER/INK for the entire screen and border.
4) And the same two display mode that was later differently implemented in the 128k spectrum.
There is one obvious and simple display mode that was missed by TImex. Use the two bytes fetched to specify four colours for each pixel. This would mean no colour clash 256x192 resolution similar to what the CPC had.
All of this, together with the new pallette, should be easy to implement using an existing ULA model :-)
And I too would like to have one that can replace the ULA already in the machine. But I think I might wait a bit longer until sprites or scrolling hw is added :D
Write games in C using Z88DK and SP1
I would've left it at that, but that would be far too short. It's... interesting.
I'm not sure if The Great Escape should be recoloured, though, as the black and white style suits the World War 2 film theme.
But Pyjamara, Three Weeks in Paradise, etc, would be nice with the colour clash caused by sprites moving over the background removed.
And if anyone ever does write a Monkey Island/Zak MacKrakken style game for the Spectrum, then this colour mode will be ideal, as you can use the colour to add more detail, and also to highlight the "mouse" cursor.
Wow! Is there any chance of you maybe re-releasing Homebrew with the (very minimal) colour clash removed?
We haven't done anything specific with the border colours. When done in electronics - ie the Harlequin or ULA replacement, which palette provides the eight border colours will need to be specifically selected, otherwise you would probably get whatever palette was currently "selected". Keep in mind, that you can dynamically swap palettes as the screen is being updated...
I think an additional register should be allocated to define which palette the eight border colours are selected from. Again, this can be changed dynamically, increasing the number of simultaneous border colours possible (full screen colour effects etc). Even if full screen effects are not required, being able to set the border colour from any palette probably is.
Chevron?
That would make emulation actually a tad easier. Cheveron wants this, trust me. He does. Honest. He also wants to talk to you about summats else. Can you get to irc.coldfront.net, channel #spin? We would also like to ask you questions.
D.