Значок ресурса

Pic 'n' Mix!

Нет прав на скачивание
Автор: Chris Somerville
Год: 1985
Издатели: Your Spectrum
Языки: 🇬🇧 Английский
Формат: 📼 TAP лента
Требования: 🖥️ ZX Spectrum 48K

Ссылки:
Страница на ZXArt
Страница на World Of Spectrum
Страница на Spectrum Computing

Скриншоты:
PicNMix.gif


!0.......^.........^.........^..


!B


\H11\H07\H10\H00 PiC 'N' MiX!





!2.......^.........^.........^.........^.........^.........^....


Pick up a handful of your old screen pics and mix them together


to create some stunning new visuals. Chris Somerville sketches


out the possibilities.


!1.......^.........^.........^.........^........


All the graphics packages on the market have one


thing in common; the large amounts of time and


effort it takes to create a decent picture. Like


me, you'll probably have a fair-sized library of


picture SCREEN$, each one representing several


hours of careful work. But to save time, there


must have been occasions when you wished you


could incorporate an existing screen dump into


your current masterpiece without starting from


scratch.


Well, now you can. This program allows you to


combine any two pictures that you've previously


SAVEd by SCREEN$. The resulting mix can produce


some very unexpected and unusual effects. And


even if the finished product's not quite the


masterful mosaic you'd hoped for but a bit of a


mess, you can always feed it into a standard


graphics program for re-touching.


And how about adding titles to your pictures?


Say you've drawn a picture of Castle Rathbone -


a flourish of gothic script could make all the


difference.


So, if you're in the mood to add moustaches to


your Mona Lisas, then you'll have some fun with


this program.





!2.......^.........^.........^.........^.........^.........^....


!B


This easy-to-use program is compatible with both the 16K and 48K


Speccy. Once you've typed it in you can SAVE it using SAVE


"picturemix" LINE 40.


!0.......^.........^.........^..





10 GO TO 40


20 LET aflag=1: PRINT AT 20,0;


" CHOOSE PAPER AND INK COLOURS":


INPUT "PAPER (0 to 7)?:";p$;"IN


K ?:";i$: IF CODE p$<48 OR CODE


p$>55 OR CODE i$<48 OR CODE i$>5


5 THEN BEEP .25,45: GO TO 20


30 LET att=VAL p$*8+VAL i$: PA


PER VAL p$: INK VAL i$: CLS : RE


TURN


!2.......^.........^.........^.........^.........^.........^....


Lines 20-30 Set up initial screen colours and attribute


variables


!0.......^.........^.........^..





40 DATA 17,87,228,33,0,64,1,0,


27,237,176,201,17,87,228,33,0,64


,6


50 DATA 24,197,6,0,197,126,245


,26,71,241,168,119,35,19,193,16,


243,193,16,237,201


!2.......^.........^.........^.........^.........^.........^....


Lines 40-50 Data for machine code subroutine


!0.......^.........^.........^..





60 RESTORE : LET cl=58414: IF


PEEK 23733<>255 THEN LET cl=256


46


!2.......^.........^.........^.........^.........^.........^....


Line 60 PEEKs P_RAMT to discover whether you're using a


16K or 48K Speccy.


!0.......^.........^.........^..


70 CLEAR cl: LET cl=(PEEK 2373


0+256*PEEK 23731)


!2.......^.........^.........^.........^.........^.........^....


Line 70 This line lowers RAMTOP to allow space for 40


bytes of machine code and room to store the


picture. It again PEEKs P_RAMT to re-establish


CL since this variable has been lost with the


previous CLEAR command.


!0.......^.........^.........^..





80 LET st=cl+1: LET mx=cl+13


!2.......^.........^.........^.........^.........^.........^....


Line 80 Initialises the start of the machine code


routines


!0.......^.........^.........^..





90 FOR i=st TO mx+27: READ x:


POKE i,x: NEXT i


!2.......^.........^.........^.........^.........^.........^....


Line 90 POKEs the machine code into place


!0.......^.........^.........^..





100 RANDOMIZE cl+41


!2.......^.........^.........^.........^.........^.........^....


Line 100 Starts the randomise seed going from a specific


point


!0.......^.........^.........^..





110 POKE st+1,PEEK 23670: POKE


st+2,PEEK 23671


120 POKE mx+1,PEEK 23670: POKE


mx+2,PEEK 23671


!2.......^.........^.........^.........^.........^.........^....


Lines 110-120 This POKEs the two-byte value of SEED into two


separate locations


!0.......^.........^.........^..





130 PAPER 6: INK 1: BORDER 5: C


LS


140 PRINT ' PAPER 2; INK 7; BRI


GHT 1;" PICTURE MIXER


"


150 PRINT '" This program will


combine any two pictures or


graphic lay-outs which hav


e previously been SAVEd by SCRE


EN$."


160 PRINT '" You will be asked


to LOAD each picture in turn. Y


ou will LOSE the ATTRIBUTES of


the picture you first LOAD in.


"


170 PRINT '" You can choose to


retain the ATTRIBUTES of the


picture next LOADed, or


to have your composite picture


in INK and PAPER colours of y


our choice."


!2.......^.........^.........^.........^.........^.........^....


Lines 130-170 This prints up the instructions for the use of


the program. If you follow the exact spacing,


you'll end up with a well laid-out screen and


justified text.


!0.......^.........^.........^..





180 PRINT AT 19,0;" PREPARE YOU


R CASSETTE & ENTER THE NAME OF


YOUR FIRST SCREEN$"


190 PLOT 1,1: DRAW 0,173: DRAW


253,0: DRAW 0,-173: DRAW -253,0


200 INPUT "Picture name";i$: IF


LEN i$>10 THEN GO TO 200


205 CLS : PRINT AT 10,10;"PLAY


THE TAPE": LOAD i$SCREEN$


!2.......^.........^.........^.........^.........^.........^....


Lines 180-205 This part of the program loads in your first


SCREEN$ file


!0.......^.........^.........^..





210 RANDOMIZE 0*USR st


!2.......^.........^.........^.........^.........^.........^....


Line 210 Stores the picture, but retains the RND


properties


!0.......^.........^.........^..





220 CLS : PRINT '" Your first


picture has been stored. No


w prepare to LOAD the second p


icture."


230 PRINT '" Do you wis


h to RETAIN the AT


TRIBUTES of the second


picture?"


240 PRINT '" PRESS Y (yes) O


R N (no)"


250 IF INKEY$<>"" THEN GO TO 2


50


260 LET i$=INKEY$: IF i$="" THE


N GO TO 260


270 LET aflag=0: IF i$<>"y" AND


i$<>"Y" THEN GO SUB 20


!2.......^.........^.........^.........^.........^.........^....


Lines 220-270 These lines find out if you want to keep the


attributes on the second picture


!0.......^.........^.........^..





280 PRINT AT 21,0;" NOW LOAD TH


E SECOND PICTURE.": INPUT "Pictu


re name";i$: LET i$=""+(i$ AND L


EN i$<=10): CLS : PRINT AT 10,10


;"PLAY THE TAPE": LOAD i$SCREEN$


: IF aflag=0 THEN GO TO 300


!2.......^.........^.........^.........^.........^.........^....


Line 280 Loads in the second SCREEN$ file


!0.......^.........^.........^..





290 FOR i=22528 TO 23295: POKE


i,att: NEXT i


!2.......^.........^.........^.........^.........^.........^....


Line 290 Adds attributes as necessary


!0.......^.........^.........^..





300 RANDOMIZE USR mx


310 INPUT "ENTER 1 to SAVE,or 0


";i$: IF i$="" THEN GO TO 310


320 IF i$="1" THEN INPUT "PICT


URE NAME? ";p$: IF LEN p$>10 THE


N LET p$=p$( TO 10)


330 IF i$="1" THEN SAVE p$SCRE


EN$


340 STOP


!2.......^.........^.........^.........^.........^.........^....


Lines 300-340 Save the new mixed-up screen pic and then stop


the program





Once you've finished mixing your pics remember to re-establish


RAMTOP otherwise you'll receive an OUT OF MEMORY or RAMTOP NO


GOOD error. After the program has stopped you can restart by:


CLEAR 32599: RUN (for 16K users); CLEAR 65367: RUN (for 48K


users).


!1.......^.........^.........^.........^........





!B


--


from Your Spectrum #15 (Jun.1985)


--


!$
Автор
Verter_bot
Загрузки
0
Просмотры
1
Расширение
zip
Размер
4.4 КБ
Хэш
5402d21f080fa0dc62290925e5aae80e
Первый выпуск
Последнее обновление

Оценки

0.00 звезд(ы) 0 оценок
Назад
Вверх