A Yankee in ZXDB

Whether it's Mire Mare or a BASIC tape you found in the attic, it needs to be preserved digitally. Post here and experts can help to do so.

Moderator: pavero

Post Reply
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

A Yankee in ZXDB

Post by Ast A. Moore »

Noticed that the ZXDB still has an outdated version of A Yankee in Iraq. Please update to the latest version whenever you have the time (link in my signature). (Don’t know if it’s ZXDB’s policy to host WAV files, which in my case will help people load the Turbo Loader version on real hardware, but the ZIP on my site has one.)

Most importantly, knowing that the SCR format doesn’t capture all the sprites in my game (the floating bus throws it for a loop), I used some trickery to specially prepare both the in-game screen and the new loading screen, which can be downloaded here. Best served cold.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
Ralf
Rick Dangerous
Posts: 2279
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: A Yankee in ZXDB

Post by Ralf »

Don’t know if it’s ZXDB’s policy to host WAV files
I can't speak for the site admins but generally .wav is almost never required as .tzx in practice is the same as .wav, just much, much smaller *
Unless you use some crazy custom loader that you can't convert to tzx easily.

* I mean it's straightforward job to convert tzx to wav or play it as sound.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: A Yankee in ZXDB

Post by Ast A. Moore »

Ralf wrote: Fri Mar 23, 2018 1:11 pm I mean it's straightforward job to convert tzx to wav or play it as sound.
Sure, but (a) it’s an extra step, (b) many retro gamers lack the skills to do that, and (c) not all converters produce equally good results.

But I don’t insist on including the WAV. It’s completely up to whoever’s in charge of maintaining the database. Just pointing out the fact that the WAV file’s up for grabs if needed. ;)
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: A Yankee in ZXDB

Post by R-Tape »

Yep will add these. I think it will be the TZX rather than WAV though, I'll see what Peter wants to do.
Ast A. Moore wrote: Fri Mar 23, 2018 11:58 am Most importantly, knowing that the SCR format doesn’t capture all the sprites in my game (the floating bus throws it for a loop), I used some trickery to specially prepare both the in-game screen and the new loading screen, which can be downloaded here. Best served cold.
Will do. What trickery did you use by the way? Merging two .scr from two frames?
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: A Yankee in ZXDB

Post by Ast A. Moore »

R-Tape wrote: Fri Mar 23, 2018 2:01 pm Yep will add these. I think it will be the TZX rather than WAV though, I'll see what Peter wants to do.
Ta! No problem. Some non-mainstream emulators choke on the Generalized Data block, so I might change that to something else in a future release (maybe a Pure Tone + Pure Data combo).
R-Tape wrote: Fri Mar 23, 2018 2:01 pmWhat trickery did you use by the way? Merging two .scr from two frames?
Basically, yes, although it was a tad more involved. I played the game in zxsp, which allows you to save the gameplay as an animated GIF. I then grabbed a couple of frames from that GIF, opened them in a graphics editor, and cut and moved the sprites around until I was satisfied with the composition. Finally, I flattened and exported the resulting image and converted it to SCR in ZX Paintbrush.

A bit convoluted, but ultimately it’s the result that matters.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: A Yankee in ZXDB

Post by Einar Saukas »

Ast A. Moore wrote: Fri Mar 23, 2018 11:58 amNoticed that the ZXDB still has an outdated version of A Yankee in Iraq. Please update to the latest version whenever you have the time (link in my signature).
Thanks for the notice! It will be in the next archive update.

Ast A. Moore wrote: Fri Mar 23, 2018 11:58 am(Don’t know if it’s ZXDB’s policy to host WAV files, which in my case will help people load the Turbo Loader version on real hardware, but the ZIP on my site has one.)
It's not. WAV files are too large and redundant. There are plenty of tools to easily produce WAVs such as PlayTZX, TZX2WAV, Tape2wav, k7zx, etc. So there's no reason to store them.

Anyone able to play a WAV into a real Spectrum should have enough skills to use these programs, or at least be able to post in this forum asking for help.

It's the same reason we don't bother to store new snapshots of games in ZXDB (unless the tape version is missing), because anyone can easily produce their own snapshots from a tape image.

Ast A. Moore wrote: Fri Mar 23, 2018 11:58 amMost importantly, knowing that the SCR format doesn’t capture all the sprites in my game (the floating bus throws it for a loop), I used some trickery to specially prepare both the in-game screen and the new loading screen, which can be downloaded here. Best served cold.
Sorry but it's against ZXDB policy to store hacked, edited or converted screenshots. Only fully authentic screens are accepted. However we will gladly store multiple screens of your game. If you cannot show all sprites in a single screen, this is not a problem, just give us different screens, like this!
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: A Yankee in ZXDB

Post by Einar Saukas »

Ast A. Moore wrote: Fri Mar 23, 2018 1:26 pmBut I don’t insist on including the WAV. It’s completely up to whoever’s in charge of maintaining the database. Just pointing out the fact that the WAV file’s up for grabs if needed. ;)
ZXDB (therefore Spectrum Computing) includes a remote link to your game page. We always do it, whenever the author's page contains relevant additional information about the game. Thus users can also easily find the WAV you are storing there.
User avatar
Kweepa
Manic Miner
Posts: 311
Joined: Sat Feb 03, 2018 6:14 pm
Location: Albuquerque, New Mexico

Re: A Yankee in ZXDB

Post by Kweepa »

I think the problem with AAM's screens is that they can't be captured with a SCR.
It looks like Bifrost screenshots are PNG - I suppose that would be the way to go.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: A Yankee in ZXDB

Post by Ast A. Moore »

Einar Saukas wrote: Fri Mar 23, 2018 2:23 pm Sorry but it's against ZXDB policy to store hacked, edited or converted screenshots. Only fully authentic screens are accepted. However we will gladly store multiple screens of your game. If you cannot show all sprites in a single screen, this is not a problem, just give us different screens, like this!
Kweepa’s right, saving a frame from Yankee in an emulator into a SCR will leave some sprites unrendered. I think that would look “authentic.” Don’t get me wrong, I understand your policy, but I think you need to be a little more flexible. It’s one thing to slap screenshots from a C64 version of a game on the back of a Spectrum tape; it’s a different matter when the format that you've chosen for the screenshots is simply not suitable for capturing some in-game action.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
hikoki
Manic Miner
Posts: 576
Joined: Thu Nov 16, 2017 10:54 am

Re: A Yankee in ZXDB

Post by hikoki »

zipped wavs are really small
for some special cases one idea would be to fender the (scr)png as it now and load jsspeccy if the user clicks on the image..in this case it might be possible to show an apng (png animation) from two scr
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: A Yankee in ZXDB

Post by Einar Saukas »

Ast A. Moore wrote: Fri Mar 23, 2018 3:15 pm
Einar Saukas wrote: Fri Mar 23, 2018 2:23 pm Sorry but it's against ZXDB policy to store hacked, edited or converted screenshots. Only fully authentic screens are accepted. However we will gladly store multiple screens of your game. If you cannot show all sprites in a single screen, this is not a problem, just give us different screens, like this!
Kweepa’s right, saving a frame from Yankee in an emulator into a SCR will leave some sprites unrendered. I think that would look “authentic.” Don’t get me wrong, I understand your policy, but I think you need to be a little more flexible. It’s one thing to slap screenshots from a C64 version of a game on the back of a Spectrum tape; it’s a different matter when the format that you've chosen for the screenshots is simply not suitable for capturing some in-game action.
Problem isn't the format. It's the way most emulators generate it. Most of them will simply take current content of screen memory area, thus including changes in-between frames that shouldn't be visible. It would be more accurate to save instead the screen memory area content from the time currently visible screen was generated.

If you use Fuse 1.4.0 or later, and save your screenshots directly as MLT instead of SCR, then I believe you will get a perfectly accurate screenshot. Then you can use ZX-Paintbrush to load screens in MLT format and export then as a perfectly identical SCR, without any loss.

I'm sorry to disagree, but composing an image using a graphics editor isn't authentic. It's like editing a photograph in Photoshop. The result will probably have much better artistic value, but it would be wrong to claim it's an authentic photograph anymore.
Nomad
Manic Miner
Posts: 600
Joined: Thu Dec 28, 2017 12:38 pm

Re: A Yankee in ZXDB

Post by Nomad »

You could put the wav's on archive.org

[spoilers]But its so difficult to find anything on archive.org your going to need to link to it directly.. I'll try and find it but there was an example of a dump of a audio material that was on archive.org for 8 years or so before someone found it and realized what it was :lol: [/spoilers]
Last edited by Nomad on Fri Mar 23, 2018 4:22 pm, edited 1 time in total.
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: A Yankee in ZXDB

Post by Einar Saukas »

Kweepa wrote: Fri Mar 23, 2018 2:55 pmIt looks like Bifrost screenshots are PNG
Good point! I added new screenshots in MLT format, but I forgot to remove the old PNG screens inherited from WoS. They will be removed in the next ZXDB update.
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: A Yankee in ZXDB

Post by R-Tape »

What exactly is MLT and how does it help here?

My understanding is that it's a .scr with more data for multicolour attributes, so is MLT a Spectrum specific filetype? How does it solve the difference between screen memory and what is on the TV screen at a particular point in time in YIQ?

What does MLT stand for?

Questions!
Ralf
Rick Dangerous
Posts: 2279
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: A Yankee in ZXDB

Post by Ralf »

What exactly is MLT and how does it help here?
As you know there are some tricks with Spectrum display - multicolor, gigascreen...
You may also want to store images bigger than Spectrum screen 256x192 pixels etc.

Actually there are already file formats existing for all these cases. They aren't well known, well they are practically unknown ;) but they do exist.

Dimitri at ZxArt uses all these formats. See for example the search for MLT (not much result though):

https://zxart.ee/eng/graphics/database/ ... pe:zxitem/

You can also expand the list and check other formats there.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: A Yankee in ZXDB

Post by Ast A. Moore »

Einar Saukas wrote: Fri Mar 23, 2018 4:11 pm Problem isn't the format. It's the way most emulators generate it.
The way I see it, the use of that format as a showcase screenshot itself is also problematic. The idea behind in-game screenshots is to give the user an idea of what the game looks like. Since the format doesn’t include the border, it’s never going to represent what the game looks like on an actual TV screen or a window of an emulator. And what about the games that make extensive use of border effects? So, not the best choice. But I (partially) understand the reasoning behind choosing it.

Anyway, speculations aside, I reuploaded the archive with a new in-game screenshot (same link, see first post). Man, this whole RZX to MLT to SCR business is no walk in the park, let me tell ya . . . ZX Paintbrush was being stubborn refusing to convert the MLT to an 8x8 Spectrum SCR directly, so I had to save it as SCR (which was essentially an MLT with a different extension), then reopen it, then convert it into 8x8, and only then could I finally save it as a proper SCR. :cry:
R-Tape wrote: Fri Mar 23, 2018 4:39 pm What does MLT stand for?
MuLTicolor. It uses the 8x1 attr format, so the file size is 12288.
Last edited by Ast A. Moore on Fri Mar 23, 2018 5:24 pm, edited 3 times in total.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
Kweepa
Manic Miner
Posts: 311
Joined: Sat Feb 03, 2018 6:14 pm
Location: Albuquerque, New Mexico

Re: A Yankee in ZXDB

Post by Kweepa »

Yeah, if there's no border, it loses some of the flavour of the game.
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: A Yankee in ZXDB

Post by Einar Saukas »

R-Tape wrote: Fri Mar 23, 2018 4:39 pmWhat exactly is MLT and how does it help here?

My understanding is that it's a .scr with more data for multicolour attributes, so is MLT a Spectrum specific filetype?
Correct.

R-Tape wrote: Fri Mar 23, 2018 4:39 pmHow does it solve the difference between screen memory and what is on the TV screen at a particular point in time in YIQ?
Spectrum multicolor can only be generated by modifying screen memory during image rendering. Therefore when an emulator saves a multicolor screen, it cannot just copy data from screen memory to disk. It's forced to "remember" the original data corresponding to each part of the screen.

Saving screenshots as MLT (in Fuse 1.4.0 or later), even when the game is not multicolor, is just a way to tell the emulator "I don't want a copy of data from screen memory because it may have already changed after screen was generated. Instead, I want a copy of the exact same data you used for screen generation".

Afterwards, it's safe to convert MLT to SCR without losing anything, because this screen won't have multicolor attributes anyway.

R-Tape wrote: Fri Mar 23, 2018 4:39 pmWhat does MLT stand for?
I have no idea! I didn't invent this format, I adopted it exactly because lots of tools already supported it.

It's always better to avoid reinventing wheels unless there's a very good reason to do so.
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: A Yankee in ZXDB

Post by Einar Saukas »

Ast A. Moore wrote: Fri Mar 23, 2018 5:16 pmThe way I see it, the use of that format as a showcase screenshot itself is also problematic. The idea behind in-game screenshots is to give the user an idea of what the game looks like. Since the format doesn’t include the border, it’s never going to represent what the game looks like on an actual TV screen or a window of an emulator. And what about the games that make extensive use of border effects? So, not the best choice.
I know! My own game Knights & Demons DX uses my own Rotatrix but you cannot see it in the screenshots...

It's not a perfect solution, but SCR is the most widely used Spectrum format, and we already had about 30,000 screenshots inherited from WoS archive without border. Adopting a new obscure file format, unsupported by most tools, just to store border information wouldn't be practical, unfortunately.

Ast A. Moore wrote: Fri Mar 23, 2018 5:16 pmBut I (partially) understand the reasoning behind choosing it.

Anyway, speculations aside, I reuploaded the archive with a new in-game screenshot (same link, see first post). Man, this whole RZX to MLT to SCR business is no walk in the park, let me tell ya . . . ZX Paintbrush was being stubborn refusing to convert the MLT to an 8x8 Spectrum SCR directly, so I had to save it as SCR (which was essentially an MLT with a different extension), then reopen it, then convert it into 8x8, and only then could I finally save it as a proper SCR. :cry:
Thank you for your comprehension!!!
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: A Yankee in ZXDB

Post by Einar Saukas »

Ralf wrote: Fri Mar 23, 2018 4:45 pm
What exactly is MLT and how does it help here?
Actually there are already file formats existing for all these cases. They aren't well known, well they are practically unknown ;) but they do exist.
Actually we use SCR for regular screens, MLT for multicolor 8x1 and IFL for multicolor 8x2. These are all standard formats!

Ralf wrote: Fri Mar 23, 2018 4:45 pm
Dimitri at ZxArt uses all these formats.
As a matter of fact, Spectrum Computing displays all these images using the rendering component developed by Dmitri.

There's a lot of cooperation between almost all Spectrum and Sinclair related sites! :)
User avatar
Seven.FFF
Manic Miner
Posts: 736
Joined: Sat Nov 25, 2017 10:50 pm
Location: USA

Re: A Yankee in ZXDB

Post by Seven.FFF »

So basically, the first 8x8 SCR is inauthentic, because it's been put through a transformation process to capture what the user saw on the screen in that frame.

But the second 8x8 SCR is authentic, even though it's been captured with a different sampling method and rate, then put through several transformation processes into a file that in principle would contain exactly the same bytes (if it was from the same gameplay instance, at least).
Robin Verhagen-Guest
SevenFFF / Threetwosevensixseven / colonel32
NXtel NXTP ESP Update ESP Reset CSpect Plugins
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: A Yankee in ZXDB

Post by Einar Saukas »

Seven.FFF wrote: Fri Mar 23, 2018 6:19 pmSo basically, the first 8x8 SCR is inauthentic, because it's been put through a transformation process to capture what the user saw on the screen in that frame.
No, it wasn't what the user saw in that frame. It was a composition:
Ast A. Moore wrote: Fri Mar 23, 2018 2:17 pmI then grabbed a couple of frames from that GIF, opened them in a graphics editor, and cut and moved the sprites around until I was satisfied with the composition.
User avatar
Seven.FFF
Manic Miner
Posts: 736
Joined: Sat Nov 25, 2017 10:50 pm
Location: USA

Re: A Yankee in ZXDB

Post by Seven.FFF »

I ran a green sharpie round the edge of my monitor, but the bits didn't sound any better either.
Robin Verhagen-Guest
SevenFFF / Threetwosevensixseven / colonel32
NXtel NXTP ESP Update ESP Reset CSpect Plugins
Post Reply