Tapestry wide

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

Tapestry wide

Post by nollkolltroll »

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: 325
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

Re: Tapestry wide

Post by nollkolltroll »

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 394 times
/Adam
Moggy
Posts: 3231
Joined: Wed Jun 18, 2008 2:00 pm

Re: Tapestry wide

Post by Moggy »

Superb work as always,Adam,many thanks for this. :ugeek:
User avatar
Andy Rea
Posts: 1606
Joined: Fri May 09, 2008 2:48 pm
Location: Planet Earth
Contact:

Re: Tapestry wide

Post by Andy Rea »

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

Thanks for sharing this with us.

Andy
what's that Smell.... smells like fresh flux and solder fumes...
User avatar
Dim_75
Posts: 80
Joined: Fri Sep 01, 2017 11:04 pm
Location: Paris, FR

Re: Tapestry wide

Post by Dim_75 »

Brilliant ! ;)
Moggy
Posts: 3231
Joined: Wed Jun 18, 2008 2:00 pm

Re: Tapestry wide

Post by Moggy »

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: 325
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

Re: Tapestry wide

Post by nollkolltroll »

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