Tapestry wide

Any discussions related to the creation of new hardware or software for the ZX80 or ZX81
Post Reply
nollkolltroll
Posts: 247
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

Tapestry wide

Post by nollkolltroll » Fri Dec 07, 2018 12:27 pm

I've done another program that streams a graphics file from the ZXpand SD-card at 50fps.
This time I used a 320-pixel wide video mode, scrolling 2 pixels per frame.
The video memory layout is a bit complex as it only uses 8kb RAM.
The jittery left/right columns are hidden in the border on most TVs.
Source code, program and graphics to try on real zeddies will follow.

For now a quick preview:
https://youtu.be/3JCbfZnvr78
Last edited by nollkolltroll on Fri Dec 07, 2018 12:53 pm, edited 1 time in total.
/Adam

nollkolltroll
Posts: 247
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

Re: Tapestry wide

Post by nollkolltroll » Fri Dec 07, 2018 12:41 pm

Tapestry wide v1.0
------------------
For a very long time I've admired the demo effect of scrolling or panning a long picture. Not for its technical merit, which is not that hard to do, but for its artistic value in presenting still pictures that morph.
M.C. Escher is a long time favorite artist of mine, and his Metamorphosis I+II+III are very good pictures to show off this technique.

This tapestry scroller works on a ZX81 equipped with a ZXpand or ZXpand+. Since the hires graphics are streamed from the SD-card one row at a time, it is possible to scroll pictures that are as long as the card will fit, which is VERY long.

The technical challenge in this project was to make a 320-pixel wide video routine able to wrap around an 8k boundary in real time. The row-addressing is not trivial, but works very well.

Source code is enclosed, released as public domain. Hopefully someone will get some joy from it.
I used jasm-z80 for this project, a very nice assembler available at: https://bitbucket.org/bjonte/jasm

The file pan.p works at 50Hz.
The program streams data from the metawide.bin file.
Attachments
tapestry_wide.zip
(153.55 KiB) Downloaded 26 times
/Adam

Moggy
Posts: 1704
Joined: Wed Jun 18, 2008 2:00 pm

Re: Tapestry wide

Post by Moggy » Fri Dec 07, 2018 4:02 pm

Superb work as always,Adam,many thanks for this. :ugeek:

User avatar
Andy Rea
Posts: 1503
Joined: Fri May 09, 2008 2:48 pm
Location: notts UK

Re: Tapestry wide

Post by Andy Rea » Sun Dec 09, 2018 9:41 am

Brilliant stuff indeed, Shame the humble zeddy doesn't have sprites... Imagine some awesome scrolling action games...

Thanks for sharing this with us.

Andy
6 x ZX81, 1 x TS1500 , 1 x +3e, 1 x timex 2040 printer, 1 x timex 2020 cassette deck, siclair printer and some spectrum

User avatar
Dim_75
Posts: 31
Joined: Fri Sep 01, 2017 11:04 pm
Location: Paris, FR

Re: Tapestry wide

Post by Dim_75 » Sun Dec 09, 2018 2:03 pm

Brilliant ! ;)

Moggy
Posts: 1704
Joined: Wed Jun 18, 2008 2:00 pm

Re: Tapestry wide

Post by Moggy » Sun Dec 09, 2018 4:27 pm

Andy Rea wrote:
Sun Dec 09, 2018 9:41 am
Brilliant stuff indeed, Shame the humble zeddy doesn't have sprites... Imagine some awesome scrolling action games...

Thanks for sharing this with us.

Andy
That's because you haven't invented them yet Proff' ! :lol:

nollkolltroll
Posts: 247
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

Re: Tapestry wide

Post by nollkolltroll » Sun Dec 09, 2018 5:36 pm

Andy Rea wrote:
Sun Dec 09, 2018 9:41 am
Brilliant stuff indeed, Shame the humble zeddy doesn't have sprites... Imagine some awesome scrolling action games...
Zedragon already uses this technique to a very good effect.
I think a decent shoot-em-up would be possible, somewhere along the lines of R-type maybe? I won't do it though, not my cup of tea.
Doodle jump is an even better fit for the HW-scrolling. Not that much moving around per frame, except the playfield scrolling, which is nearly free.
/Adam

Post Reply