Opry99er Posted November 3, 2010 Share Posted November 3, 2010 REM COLORSET DECLARATIONS 100 DATA 1,2,1,2,2,1,3,2,1,4,2,1,5,2,1,6,2,1,7,2,1,8,2,1 110 DATA 9,2,1,10,2,1,11,2,1,12,7,1,13,5,16,14,2,1 REM CHARACTER DATA 500 DATA 33,"0010101010100010",34,"0028282800000000",35,"0028287C287C2828",36,"0038545038145438" 510 DATA 37,"0060640810204C0C",38,"0020505020544834",39,"0008081000000000",40,"0008102020201008" 520 DATA 41,"0020100808081020",42,"000028107C102800",43,"000010107C101000",44,"0000000000301020" 530 DATA 45,"000000007C000000",46,"0000000000003030",47,"0000040810204000",48,"0038444444444438" 540 DATA 49,"0010301010101038",50,"003844040810207C",51,"0038440418044438",52,"00081828487C0808" 550 DATA 53,"007C407804044438",54,"0018204078444438",55,"007C040810202020",56,"0038444438444438" 560 DATA 57,"003844443C040830",58,"0000303000303000",59,"0000303000301020",60,"0008102040201008" 570 DATA 61,"0000007C007C0000",62,"0020100804081020",63,"0038440408100010",64,"0038445C545C4038" 580 DATA 65,"003844447C444444",66,"0078242438242478",67,"0038444040404438",68,"0078242424242478" 590 DATA 69,"007C40407840407C",70,"007C404078404040",71,"003C40405C444438",72,"004444447C444444" 600 DATA 73,"0038101010101038",74,"0004040404044438",75,"0044485060504844",76,"004040404040407C" 610 DATA 77,"00446C5454444444",78,"00446464544C4C44",79,"007C44444444447C",80,"0078444478404040" 620 DATA 81,"0038444444544834",82,"0078444478504844",83,"0038444038044438",84,"007C101010101010" 630 DATA 85,"0044444444444438",86,"0044444428281010",87,"0044444454545428",88,"0044442810284444" 640 DATA 89,"0044442810101010",90,"007C04081020407C",91,"0038202020202038",92,"0000402010080400" 650 DATA 93,"0038080808080838",94,"0000102844000000",95,"000000000000007C",96,"0000201008000000" 660 DATA 97,"00000038447C4444",98,"0000007824382478",99,"0000003C4040403C",100,"0000007824242478" 670 DATA 101,"0000007C4078407C",102,"0000007C40784040",103,"0000003C405C4438",104,"00000044447C4444" 680 DATA 105,"0000003810101038",106,"0000000808084830",107,"0000002428302824",108,"000000404040407C" 690 DATA 109,"000000446C544444",110,"0000004464544C44",111,"0000007C4444447C",112,"0000007844784040" 700 DATA 113,"0000003844544834",114,"0000007844784844",115,"0000003C40380478",116,"0000007C10101010" 710 DATA 117,"0000004444444438",118,"0000004444282810",119,"0000004444545428",120,"FFFFFFFFFFFFFFFF" 720 DATA 121,"0000004428101010",122,"0000007C0810207C",123,"0018202040202018",124,"0010101000101010" 730 DATA 125,"0030080804080830",126,"0000205408000000",128,"E7E700C3E7E7DB3C",129,"FFFFFFFFFFFFFFFF" REM MAP DATA REM MAP #1 REM MAP #1 WIDTH, HEIGHT, SCREEN COLOR 900 DATA 32,24,15 REM MAP #1 DATA 910 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 920 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 930 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 940 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 950 DATA 128,129,128,129,128,129,128,129,128,129,128,120,120,120,120,120 960 DATA 120,120,120,120,120,32,32,32,32,32,32,32,32,32,32,32 970 DATA 129,128,129,128,129,128,129,128,129,128,129,32,32,32,32,32 980 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 990 DATA 128,129,128,129,128,129,128,129,128,129,128,120,120,120,120,120 1000 DATA 120,120,120,120,120,32,32,32,32,32,32,32,32,32,32,32 1010 DATA 129,128,129,128,129,128,129,128,129,128,129,32,32,32,32,32 1020 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1030 DATA 128,129,128,129,128,129,128,129,128,129,128,120,120,120,120,120 1040 DATA 120,120,120,120,120,32,32,32,32,32,32,32,32,32,32,32 1050 DATA 129,128,129,128,129,128,129,128,129,128,129,32,32,32,32,32 1060 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1070 DATA 128,129,128,129,128,129,128,129,128,129,128,120,120,120,120,120 1080 DATA 120,120,120,120,120,32,32,32,32,32,32,32,32,32,32,32 1090 DATA 129,128,129,128,129,128,129,128,129,128,129,32,32,32,32,32 1100 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1110 DATA 128,129,128,129,128,129,128,129,128,129,128,120,120,120,120,120 1120 DATA 120,120,120,120,120,32,32,32,32,32,32,32,32,32,32,32 1130 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1140 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1150 DATA 120,120,120,120,120,120,120,120,120,120,120,120,120,120,120,120 1160 DATA 120,120,120,120,120,32,32,32,32,32,32,32,32,32,32,32 1170 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1180 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1190 DATA 120,120,120,120,120,120,120,120,120,120,120,120,120,120,120,120 1200 DATA 120,120,120,120,120,32,32,32,32,32,32,32,32,32,32,32 1210 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1220 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1230 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1240 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1250 DATA 32,32,32,32,32,32,71,79,68,32,66,76,69,83,83,32 1260 DATA 65,77,69,82,73,67,65,33,32,32,32,32,32,32,32,32 1270 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1280 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1290 DATA 32,32,32,32,32,32,32,76,65,78,68,32,84,72,65,84 1300 DATA 32,73,32,76,79,86,69,32,32,32,32,32,32,32,32,32 1310 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1320 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1330 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1340 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1350 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1360 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1370 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 1380 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 REM LOAD COLORSET 1390 RESTORE 100::FOR C=1 TO 14::READ CS,CF,CB::CALL COLOR(CS,CF,CB)::NEXT C REM LOAD CHARACTERS 1400 RESTORE 500::FOR C=1 TO 96::READ CN,CC$::CALL CHAR(CN,CC$)::NEXT C REM DRAW MAP(S) 1410 CALL CLEAR 1420 RESTORE 900 1430 READ W,H,SC::CALL SCREEN(SC)::CALL CLEAR 1440 FOR Y=1 TO H 1450 FOR X=1 TO W 1460 READ CP::CALL VCHAR(Y,X,CP) 1470 NEXT X 1480 NEXT Y 1490 CALL KEY(0,K,S)::IF S=0 THEN 1490 1500 END 2 Quote Link to comment Share on other sites More sharing options...
jaybird3rd Posted November 3, 2010 Share Posted November 3, 2010 Bravo! Quote Link to comment Share on other sites More sharing options...
jchase1970 Posted November 3, 2010 Share Posted November 3, 2010 Oh no, you can't just draw a picture with words, I want music too! Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 3, 2010 Author Share Posted November 3, 2010 Damn.... Well, I can do that I think. Tomorrow though. Owen's a tired boy. Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted February 27, 2011 Share Posted February 27, 2011 (edited) http://www.youtube.com/watch?v=PJfULXCJS-s Edited February 27, 2011 by sometimes99er Quote Link to comment Share on other sites More sharing options...
Opry99er Posted February 27, 2011 Author Share Posted February 27, 2011 yea, that looks freakin awesome, man. =) Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted February 27, 2011 Share Posted February 27, 2011 (edited) Thanks. Since you put up this thread, I've been thinking (on and off) about doing a waving flag demo. I cut a few corners, simplified things, ended up not even needing bitmap, and then horizontal resolution is "only" 8 pixels. But hey, my 2 year old son likes it. Edited February 27, 2011 by sometimes99er Quote Link to comment Share on other sites More sharing options...
matthew180 Posted February 27, 2011 Share Posted February 27, 2011 That's pretty slick. Care to do a little write up about how you did it? Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted February 27, 2011 Share Posted February 27, 2011 (edited) Thanks. It looks pretty dynamic, but only a relatively few characters needs to have their patterns updated. The patterns are either on or off horizontally. At first I thought I had to do sine waves with bit resolution, but as long as I held the waving to a certain minimum, it wouldn't look blocky. Truth is, if I turn up the cycle, going through all sine values, things definitely starts looking blocky - and then the solution is to have 1 pixel horizontal resolution (instead of 8 pixel). The sine wave is only 20 values deep (table), characters are moved right constantly (evident in the first few microseconds), and the first row (on the left) has patterns updated (cycling characters to be updated). Again only 8 rows are updated (2 at the top, 4 in the middle and 2 at the bottom). Edited February 27, 2011 by sometimes99er Quote Link to comment Share on other sites More sharing options...
+retroclouds Posted February 27, 2011 Share Posted February 27, 2011 Thanks. It looks pretty dynamic, but only a relatively few characters needs to have their patterns updated. The patterns are either on or off horizontally. At first I thought I had to do sine waves with bit resolution, but as long as I held the waving to a certain minimum, it wouldn't look blocky. Truth is, if I turn up the cycle, going through all sine values, things definitely starts looking blocky - and then the solution is to have 1 pixel horizontal resolution (instead of 8 pixel). The sine wave is only 20 values deep (table), characters are moved right constantly (evident in the first few microseconds), and the first row (on the left) has patterns updated (cycling characters to be updated). Again only 8 rows are updated (2 at the top, 4 in the middle and 2 at the bottom). Very, very nice Quote Link to comment Share on other sites More sharing options...
lucien2 Posted February 27, 2011 Share Posted February 27, 2011 (edited) UN-FLAG.zip http://www.youtube.com/watch?v=lvU5TE45Yj0 Update: - VDP BLWPs removed from the main loop - Source cleaned UN-FLAG2.zip DEF START REF VWTR,VSBW,VMBW,KSCAN WS1 EQU >8300 STATUS EQU >837C SAVRTN DATA 0 VDPWA EQU >8C02 VDPWD EQU >8C00 VDPRD EQU >8800 SINUS DATA 3,4,4,5,6,6,6,6,6,5,5,4,3 DATA 3,2,1,1,0,0,0,0,0,1,2,2,3 SINUS2 BSS 52 START MOV R11,@SAVRTN LWPI WS1 LI R0,>0713 BLWP @VWTR * CLEAR PATTERNS LI R0,0 LI R1,0 LI R2,>1800 BL @VSBWM * CLEAR COLORS LI R0,>2000 LI R1,>5300 LI R2,>1800 BL @VSBWM * INIT SCREEN LI R0,>1800 CLR R1 L1 BLWP @VSBW AI R1,>100 INC R0 CI R0,>1B00 JL L1 * BITMAP MODE LI R0,>0206 SCREEN >1800 BLWP @VWTR LI R0,>03FF COLORS >2000 BLWP @VWTR LI R0,>0403 PATTERNS >0000 BLWP @VWTR LI R0,>0002 SET BITMAP MODE BLWP @VWTR * FLAG COLORS LI R3,20 LI R0,>2000+536 LI R1,>5F00 L2 MOV R0,R4 LI R2,26*8 BL @VSBWM MOV R4,R0 AI R0,32*8 DEC R3 JNE L2 * FLAG PATTERNS LI R0,280 LI R1,BITMAP LI R2,26*8 LI R3,21 L3 BLWP @VMBW AI R0,32*8 AI R1,26*8 DEC R3 JNE L3 * INIT SINUS FLAG CLR R7 L5 LI R12,SINUS MOV R7,R14 SLA R14,1 A R14,R12 MOV *R12,R13 JEQ L7 L6 MOV R7,R0 LI R1,1 BL @SHFCOL DEC R13 JNE L6 L7 INC R7 CI R7,26 JLT L5 ** MAIN LOOP * SINUS SHIFT L8 LI R0,SINUS LI R1,SINUS2+2 LI R2,25 L9 MOV *R0+,*R1+ DEC R2 JNE L9 MOV @SINUS+50,@SINUS2 * UPDATE FLAG CLR R7 L10 MOV R7,R14 SLA R14,1 LI R12,SINUS A R14,R12 LI R13,SINUS2 A R14,R13 MOV R7,R0 C *R12,*R13 JEQ L13 JLT L11 CLR R1 JMP L12 L11 LI R1,1 L12 BL @SHFCOL LIMI 2 LIMI 0 L13 INC R7 CI R7,26 JLT L10 LI R0,SINUS2 LI R1,SINUS LI R2,26 L14 MOV *R0+,*R1+ DEC R2 JNE L14 * QUIT BLWP @KSCAN MOV @STATUS,R0 ANDI R0,>2000 JEQ L8 LI R0,>0200 BLWP @VWTR LI R0,>030E BLWP @VWTR LI R0,>0401 BLWP @VWTR LI R0,>0000 BLWP @VWTR MOV @SAVRTN,R11 CLR @STATUS RT * SHFCOL, SHIFT COLUMN ******************** * R0, COLUMN * R1, 0=DEC 1=INC SHFCO0 DATA 0 SHFCO1 BSS 23*8+4 SHFCOL MOV R11,@SHFCO0 CLR @SHFCO1 CLR @SHFCO1+185 23*8+1 SLA R0,3 AI R0,24 MOV R0,R3 * DEC OR INC ? MOV R1,R1 JNE SHFCO2 LI R5,SHFCO1+1 LI R6,SHFCO1+2 JMP SHFCO3 SHFCO2 LI R5,SHFCO1+1 LI R6,SHFCO1 * READ LOOP SHFCO3 LI R4,23 MOV R5,R1 SHFCO4 LI R2,8 MOV R0,R9 SWPB R0 MOVB R0,@VDPWA SWPB R0 MOVB R0,@VDPWA NOP SHFCO5 MOVB @VDPRD,*R1+ DEC R2 JGT SHFCO5 MOV R9,R0 AI R0,32*8 DEC R4 JNE SHFCO4 * WRITE LOOP MOV R3,R0 LI R4,23 MOV R6,R1 SHFCO6 LI R2,8 MOV R0,R9 AI R0,>4000 SWPB R0 MOVB R0,@VDPWA SWPB R0 MOVB R0,@VDPWA NOP SHFCO7 MOVB *R1+,@VDPWD DEC R2 JGT SHFCO7 MOV R9,R0 AI R0,32*8 DEC R4 JNE SHFCO6 * RETURN MOV @SHFCO0,R11 RT * VSBWM, WRITE SINGLE BYTE MULTIPLE ******************* VSBWM AI R0,>4000 SWPB R0 MOVB R0,@VDPWA SWPB R0 MOVB R0,@VDPWA NOP VSBWM0 MOVB R1,@VDPWD DEC R2 JGT VSBWM0 RT COPY "DSK1.BITMAP" END Edited February 28, 2011 by lucien2 Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted February 27, 2011 Share Posted February 27, 2011 (edited) Very nice indeed, though the effect there appear to be achieved in CPU Overdrive. Edited February 27, 2011 by sometimes99er Quote Link to comment Share on other sites More sharing options...
lucien2 Posted February 27, 2011 Share Posted February 27, 2011 Sure, at real speed, it's more the UN flag on the moon. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.