ZX ULAX emulator
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
maybe i will check it later, i don't usually join when i can't see at least some of the content before
Re: ZX ULAX emulator
Many of us remember well and haven't forgotten the history of censorship and bans of Fogarty's company on wos.Lethargeek wrote: ↑Sun Jan 05, 2020 2:23 pm Btw i just googled the Vega+ to refresh my memory and almost immediately stumbled upon a very familiar name from these recent events. And next to the words "lies", "paid" and "scam", no less. So it seems i shouldn't have been surprised by the actions and personal qualities of the current WoS staff. Maybe now being a lying crook is even a requirement to be in.
Probably you didn't know it and that was why you were an easy target, but some of us who have spent more than a decade there, know their methods very well.
You reacted impulsively to their provocations, but you were absolutely right, because you noticed what kind of liars and manipulators you were dealing with and you told them straight in the face.
So, relax...and don't pay attention to some wos trolls, this is Spectrum Computing forum.
Their mockery, lol and facepalm performance, simply doesn't bring much success here.
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
One of the oldest ones... it was just a test of full color-per-pixel repaint of something. The background in Destiny Mission was chosen to get most effect for the least amount of work. Usually i prefer to change sprite colors.
Maybe i will do Arkanoid someday. And you people may name other titles you'd like to see improved.
Not even the russian documentation is properly finished, some changes happen time to time and it needs more tutorials. Starting the translation now means more work in the end, and it's hard enough for me to write so much in english already.
Maybe i will do Arkanoid someday. And you people may name other titles you'd like to see improved.
Not even the russian documentation is properly finished, some changes happen time to time and it needs more tutorials. Starting the translation now means more work in the end, and it's hard enough for me to write so much in english already.
Re: ZX ULAX emulator
This is a hoax. Everyone knows that Destiny Mission doesn't have any sprites.
Re: ZX ULAX emulator
Those are the ones that really poke my interest, no extra colors but just the lack of colour clash, but I like the other ones also, they are not overdone as most of the Spec256 ones.Lethargeek wrote: ↑Wed Jan 15, 2020 8:39 pm One of the oldest ones... it was just a test of full color-per-pixel repaint of something. The background in Destiny Mission was chosen to get most effect for the least amount of work. Usually i prefer to change sprite colors.
Oh, and how you colorized vector games like Total Eclipse and Academy? Are those using the new video mode you mentioned?
Haha ok, no pressure then, but I showed your work on a small Spectrum group and some artists are intriguedLethargeek wrote: ↑Wed Jan 15, 2020 8:39 pm Not even the russian documentation is properly finished, some changes happen time to time and it needs more tutorials. Starting the translation now means more work in the end, and it's hard enough for me to write so much in english already.
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
that's mainly because i'm too lazy to make a full repaint
(and an extra reason i dislike xored sprites, as these need it)
no, ZX textures are very similar to sprites - read screen, read texture byte, mask it at the polygon edge, write screen
so recolorable the same way, replacing the corresponding pixels in ULAX memory with solid color or simpler pattern
hardest part is to preserve attribute effects, reloading the (limited) dynamic palette at the right moment
in Academy (as it is a multiload) the palette had to be constructed from any attribute with some tricks
also i recommend playing the freescape games with adapturbo (LAlt+F1 toggle, LAlt+F2/F3 & RAlt+F11/F12 tweak, see emuL-info.txt)
Re: ZX ULAX emulator
I would really like to see Sabre Wulf, Atic Atac and Heartland with colorful main sprites and without color clash.
Just a few questions ...
How difficult is the recoloring process?
I remember the ULA + recoloring was relatively easy and really fun.
Are there any tools, that make this process easier?
Just a few questions ...
How difficult is the recoloring process?
I remember the ULA + recoloring was relatively easy and really fun.
Are there any tools, that make this process easier?
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
it depends on how well you understand disassembled z80 code and how complicated this code is
easiest ones (like Phantis 2 - 1st tutorial is about it) took less than one hour, hardest ones needed several evenings
and then most of the time went into the actual repaint, finding all the graphics to repaint, and checking after
besides primitive homemade tools to match the colors and to repaint sprites when i have to, i use mostly:
this very emulator for finding the gfx routines and figuring out what these are doing exactly (see pics in the tutorial)
ZXSpin to get nicely formatted disassembly of the aforementioned routines
Xpeccy for finding gfx data and sometimes tracing the code
...and i hope we will have this in working condition before long - viewtopic.php?f=9&t=2155
Re: ZX ULAX emulator
Hah! Well, call me oldschool because I like that kind of minimalist work. Another one: Chuckie EggLethargeek wrote: ↑Thu Jan 16, 2020 2:30 pm that's mainly because i'm too lazy to make a full repaint
Oh I did that! In fact, my first gameplay was Red Shift on turbo mode and it is a blast.Lethargeek wrote: ↑Thu Jan 16, 2020 2:30 pm also i recommend playing the freescape games with adapturbo (LAlt+F1 toggle, LAlt+F2/F3 & RAlt+F11/F12 tweak, see emuL-info.txt)
Re: ZX ULAX emulator
Definitely, that unpretentious style is great.
For example, Crystal Kingdom Dizzy looks awesome.
At first glance, it looks like nothing has changed and then you realize how bright and polished the game looks with those carefully done enhancements.
Total Eclipse is another such example and it's a real pleasure to play it.
On the other side, I also liked Commando 128 the most, graphically it's a whole different game now.
I haven't tried all the examples yet, but overall this engine are very promising.
I like these recolored games more than the ones in EmuZWin, because the original Spectrum feeling was kept here, much better.
Well done.
For example, Crystal Kingdom Dizzy looks awesome.
At first glance, it looks like nothing has changed and then you realize how bright and polished the game looks with those carefully done enhancements.
Total Eclipse is another such example and it's a real pleasure to play it.
On the other side, I also liked Commando 128 the most, graphically it's a whole different game now.
I haven't tried all the examples yet, but overall this engine are very promising.
I like these recolored games more than the ones in EmuZWin, because the original Spectrum feeling was kept here, much better.
Well done.
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
oww, commando was a real pita: spaghetti code, different sprite formats, interrupt corrupting sprite data, almost every object has its own output procedure... but i think the end result was worth the effort (even managed to reduce the amount of flicker)
Re: ZX ULAX emulator
I'm assuming this emulator currently only exists in the windows version.
Is there a plan for a Linux port?
It would be really nice to play these recoloring games on Raspberry pi for example.
Also this example with enhanced Spectrum BASIC is great:
https://www.youtube.com/watch?v=kiRqRV5Cffc
I didn't notice it bundled with games pack, can it be downloaded as well?
Also, Is it possible to do custom Spectrum Rom, with this engine installed (more color, no color clash etc) or any Basic program must be recolored individually, like every other game?
Is there a plan for a Linux port?
It would be really nice to play these recoloring games on Raspberry pi for example.
Also this example with enhanced Spectrum BASIC is great:
https://www.youtube.com/watch?v=kiRqRV5Cffc
I didn't notice it bundled with games pack, can it be downloaded as well?
Also, Is it possible to do custom Spectrum Rom, with this engine installed (more color, no color clash etc) or any Basic program must be recolored individually, like every other game?
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
not in the near future (at least not by me, maybe some linux emulator author will be interested)
it is inside "ULAX-emuL\test\" folder named "webas3"Pegaz wrote: ↑Sat Jan 18, 2020 10:52 am Also this example with enhanced Spectrum BASIC is great:
https://www.youtube.com/watch?v=kiRqRV5Cffc
I didn't notice it bundled with games pack, can it be downloaded as well?
it would be simpler to make one proper dux for the usual ROM and then edit any BASIC programs wherever you need it
custom ROM is possible, but it would add just some syntactic sugar ("extended" BASIC operators instead of pokes used in this example)
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
you can check the preliminary version of Heartland now
(clash between fore/back objects is still there, but not with sprites)
same folder https://cloud.mail.ru/public/3Rzu/33GtNmUof
Re: ZX ULAX emulator
This already looks really good, thank you.
A couple of suggestions if possible.
The c64 version is slower but has a very well colored main character sprite in two shades of blue.
Can something like this, be done here as well?
The lightning fired by the wizard has a too strong yellow-red combination, it may be better to be just red (red dashes) on a black background.
Also rotating knives could be dark gray, hats may have a different color depending on the color of the main sprite.
Tunderbolts are great, also all the potions and flying objects look really good.
For now, this version seems very promising...
A couple of suggestions if possible.
The c64 version is slower but has a very well colored main character sprite in two shades of blue.
Can something like this, be done here as well?
The lightning fired by the wizard has a too strong yellow-red combination, it may be better to be just red (red dashes) on a black background.
Also rotating knives could be dark gray, hats may have a different color depending on the color of the main sprite.
Tunderbolts are great, also all the potions and flying objects look really good.
For now, this version seems very promising...
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
any number of shades and colors is possible, but then we need to extend dux code section (this one doesn't look much beyond the last output buffer into the original gfx source) and supply the actual pixel data of course
you may test it yourself, look for C8AE code under "magic ray", change it to some C8XX - the last two digits are paper and ink indices in the "reference colors" palette (index 8 is for standard zx attribute paper/ink); also you can change other listed object colors as well, the number after FFFC tag is either GRB555 direct color ink or again a symbolic link to standard reference ink (-7A111X)
these are alternating white/grey, kinda glinting - i found one shade for all its frames looking to bland
Re: ZX ULAX emulator
Looks interesting, thanks for the tips.Lethargeek wrote: ↑Sun Jan 19, 2020 11:54 amyou may test it yourself, look for C8AE code under "magic ray", change it to some C8XX - the last two digits are paper and ink indices in the "reference colors" palette (index 8 is for standard zx attribute paper/ink); also you can change other listed object colors as well, the number after FFFC tag is either GRB555 direct color ink or again a symbolic link to standard reference ink (-7A111X)
I will definitely play around with these settings and try to learn something.
Re: ZX ULAX emulator
Ok, this is my first attempt with Heartland.
It was really fun, hope I didn't make things worse.
https://gofile.io/?c=MXoJPq
It was really fun, hope I didn't make things worse.
https://gofile.io/?c=MXoJPq
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
Whatever suits you, though i still prefer grey page and white/grey daggers; and maybe stardust and magic ray are too dark, haven't you tried same but brighter inks? Also not sure if it was your intention or not, but selecting C087 instead of C007 as generic sprite colors means zx-paper-colored outlines instead of the black ones, which may look worse if the sprite overlaps red or blue tubes on level 2
Re: ZX ULAX emulator
Yes, you're right, I need to make some corrections and there's still room for improvements, but I think I'm close to making some decent combination.
Of course, it would be great if you could do a multicolor main sprite, modeled on a c64 color scheme, or whatever you consider appropriate.
I already like the way everything looks and this would be a great bonus for the overall look of the game.
Of course, it would be great if you could do a multicolor main sprite, modeled on a c64 color scheme, or whatever you consider appropriate.
I already like the way everything looks and this would be a great bonus for the overall look of the game.
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
I'm a bit busy now, but you can try it yourself - i replaced dux in the cloud. Now it allows full repaint for sprites.
locate the sprite you want to alter with Xpeccy sprite finder or other tool
all the sprite gfx is between #E1BE...#F9CE in the page#0 so corresponding dux addresses are 8021BE...8039CE
(each dux address is for 8 pixels like the corresponding zx byte)
then you can use tags like this:
80XXXX FFFC ink paper ; - this affects the rest of this one sprite, so locate the real 1st byte address of it
and/or repaint some pixels with any colors in GRB555 format:
80XXXX p7 p6 p5 p4 p3 p2 p1 p0
8001 & 8000 are special ink/paper codes affected by the FFFC-tag colors
(or affected by the default colors selected for all the sprites set in the dux code)
initially all the unaltered graphics is naturally made of these two values
you don't need to give adjacent addresses, just continue the pixel stream after p0
also you can use negative numbers to skip any number of pixels like this:
80XXXX p7 -2 p4
to avoid problems, please use common paper color for all the sprites (preferably black or 8000)
Re: ZX ULAX emulator
Thanks, I hope I can manage.
This seems a little more complicated now, but I still think it's going to be fun...
This seems a little more complicated now, but I still think it's going to be fun...
Re: ZX ULAX emulator
@Lethargeek
I'm trying to do what you wrote but I'm having trouble locating the sprite data.
This Xspeccy is some hard core emulator, I am not even able to install proper tr-dos configuration, also its sprite finder is not very clear how to use it.
When you have time, can you please write small step-by-step instructions with an example (eg. for main sprite in Heartland) to help me understand this recoloring porocess, more easily.
Btw, I really like this Heartland 128k remix, with AY music taken from the Amstrad version.
The original great Odin beeper tune is still present in the main menu and the AY tune is played constantly throughout the game.
I only found trd and scl format on zx-pk, so I made a tzx version, which works fine on standard 128k models.
Here's the link:
https://gofile.io/?c=PrODNH
I'm trying to do what you wrote but I'm having trouble locating the sprite data.
This Xspeccy is some hard core emulator, I am not even able to install proper tr-dos configuration, also its sprite finder is not very clear how to use it.
When you have time, can you please write small step-by-step instructions with an example (eg. for main sprite in Heartland) to help me understand this recoloring porocess, more easily.
Btw, I really like this Heartland 128k remix, with AY music taken from the Amstrad version.
The original great Odin beeper tune is still present in the main menu and the AY tune is played constantly throughout the game.
I only found trd and scl format on zx-pk, so I made a tzx version, which works fine on standard 128k models.
Here's the link:
https://gofile.io/?c=PrODNH
- Lethargeek
- Manic Miner
- Posts: 763
- Joined: Wed Dec 11, 2019 6:47 am
Re: ZX ULAX emulator
[mention]Pegaz[/mention], you just need to load the snapshot to find the graphics, no need to mess with configurations
(btw do not use the latest Xpeccy build as the author broke snapshots incidentally, use ones from 2019 instead)))
I don't get what could be unclear about the sprite finder, as it has only a very few controls:
- page number for #C000-#FFFF area - as i said earlier it should be 0
- address input field - again, i said before sprite gfx starts at #E1BE, so put it there
- sprite width - play with it until you see the sprite properly (it will be 4)
- column height - leave it at max 32
- inversion and grid checkboxes - to understand better where the sprite ends
( one square is 8x8 pixels (bits) just as the one attribute tile)
( usually even the sprite height is fit to the nearest 8th row)
- ZX screen view - you don't need it for finding sprites
slider (or mouse wheel) moves 8 pixel rows up and down, and you see the address changing
arrows & pgup/pgdn change address by different amounts (if the cursor is in the address field)
if you list down and see sprites becoming distorted - adjust the width
(btw do not use the latest Xpeccy build as the author broke snapshots incidentally, use ones from 2019 instead)))
I don't get what could be unclear about the sprite finder, as it has only a very few controls:
- page number for #C000-#FFFF area - as i said earlier it should be 0
- address input field - again, i said before sprite gfx starts at #E1BE, so put it there
- sprite width - play with it until you see the sprite properly (it will be 4)
- column height - leave it at max 32
- inversion and grid checkboxes - to understand better where the sprite ends
( one square is 8x8 pixels (bits) just as the one attribute tile)
( usually even the sprite height is fit to the nearest 8th row)
- ZX screen view - you don't need it for finding sprites
slider (or mouse wheel) moves 8 pixel rows up and down, and you see the address changing
arrows & pgup/pgdn change address by different amounts (if the cursor is in the address field)
if you list down and see sprites becoming distorted - adjust the width