Home » Archimedes archive » Acorn User » AU 1993-08.adf » !3DGraphic_3DGraphic » ShowCity
ShowCity
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Acorn User » AU 1993-08.adf » !3DGraphic_3DGraphic |
Filename: | ShowCity |
Read OK: | ✔ |
File size: | 04BE bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM >ShowCity 20REM by DCA 30REM for 32-bit machines 40REM (c) BAU August 1993 50: 60MODE 9 70OFF 80FOR i=0 TO 7 90 IF i<7 j=&20*i ELSE j=&F0 100 COLOUR i,j,j,j 110NEXT 120COLOUR 8,117,21,13 130COLOUR 9,168,136,98 140COLOUR 10,255,0,0 150COLOUR 11,0,&50,0 160COLOUR 12,&80,&D0,&E0 170heap_size=160*1024 180DIM heap heap_size 190SYS "BAU3D_HeapInit",heap,heap_size 200dist=800:zplus=10000 210ang_scale=&10000/360 220SYS "BAU3D_WriteConfig",%110,dist,zplus,-zplus*0.8,10000000 230SYS "BAU3D_Load","objects.world3",1000 TO scene 240xp=0 250yp=0 260DIM view_xyz 12,view_ang 12 270spr_size%=750*1024 280DIM spr% spr_size% 290!spr%=spr_size% 300spr%!4=0 310spr%!8=16 320spr%!12=16 330rec%=FALSE 340REPEAT 350 FOR view=0 TO 359 STEP 5 360 IF rec% THEN 370 FOR delay%=1 TO 5 380 WAIT 390 NEXT 400 SYS &2E,&122,spr%,STR$view,-320,-256 410 ELSE 420 view_xyz!0=300000*SINRAD(view) 430 view_xyz!4=-50000+40000*COSRAD(2*view) 440 view_xyz!8=0 450 view_ang!0=0 460 view_ang!4=((view+90)*ang_scale) AND &FFFF 470 view_ang!8=0 480 VDU 24,640-320;512-256;640+320;512+256; 490 ORIGIN 640,512 500 GCOL 11 510 RECTANGLE FILL -640,-512,1280,512 520 GCOL 12 530 RECTANGLE FILL -640,0,1280,512 540 SYS "BAU3D_Render",scene,view_xyz,view_ang 550 SYS &2E,&110,spr%,STR$view,,-320,-256,319,255 560 ENDIF 570 NEXT 580 rec%=TRUE 590UNTIL FALSE 600END
� >ShowCity � by DCA � for 32-bit machines (� (c) BAU August 1993 2: <� 9 F� P � i=0 � 7 Z � i<7 j=&20*i � j=&F0 d � i,j,j,j n� x� 8,117,21,13 �� 9,168,136,98 �� 10,255,0,0 �� 11,0,&50,0 �� 12,&80,&D0,&E0 �heap_size=160*1024 �� heap heap_size �&ș "BAU3D_HeapInit",heap,heap_size �dist=800:zplus=10000 �ang_scale=&10000/360 �>ș "BAU3D_WriteConfig",%110,dist,zplus,-zplus*0.8,10000000 �1ș "BAU3D_Load","objects.world3",1000 � scene �xp=0 �yp=0 � view_xyz 12,view_ang 12 spr_size%=750*1024 � spr% spr_size% "!spr%=spr_size% ,spr%!4=0 6 spr%!8=16 @spr%!12=16 J rec%=� T� ^ � view=0 � 359 � 5 h � rec% � r � delay%=1 � 5 | Ȗ � � �' ș &2E,&122,spr%,�view,-320,-256 � � �! view_xyz!0=300000*��(view) �) view_xyz!4=-50000+40000*��(2*view) � view_xyz!8=0 � view_ang!0=0 �/ view_ang!4=((view+90)*ang_scale) � &FFFF � view_ang!8=0 �, � 24,640-320;512-256;640+320;512+256; � ȑ 640,512 � � 11 � ȓ Ȑ -640,-512,1280,512 � 12 ȓ Ȑ -640,0,1280,512 0 ș "BAU3D_Render",scene,view_xyz,view_ang &0 ș &2E,&110,spr%,�view,,-320,-256,319,255 0 � : � D rec%=� N� � X� �
00000000 0d 00 0a 0f f4 20 3e 53 68 6f 77 43 69 74 79 0d |..... >ShowCity.| 00000010 00 14 0c f4 20 62 79 20 44 43 41 0d 00 1e 19 f4 |.... by DCA.....| 00000020 20 66 6f 72 20 33 32 2d 62 69 74 20 6d 61 63 68 | for 32-bit mach| 00000030 69 6e 65 73 0d 00 28 19 f4 20 28 63 29 20 42 41 |ines..(.. (c) BA| 00000040 55 20 41 75 67 75 73 74 20 31 39 39 33 0d 00 32 |U August 1993..2| 00000050 05 3a 0d 00 3c 07 eb 20 39 0d 00 46 05 87 0d 00 |.:..<.. 9..F....| 00000060 50 0d e3 20 69 3d 30 20 b8 20 37 0d 00 5a 1a 20 |P.. i=0 . 7..Z. | 00000070 e7 20 69 3c 37 20 6a 3d 26 32 30 2a 69 20 8b 20 |. i<7 j=&20*i . | 00000080 6a 3d 26 46 30 0d 00 64 0e 20 fb 20 69 2c 6a 2c |j=&F0..d. . i,j,| 00000090 6a 2c 6a 0d 00 6e 05 ed 0d 00 78 11 fb 20 38 2c |j,j..n....x.. 8,| 000000a0 31 31 37 2c 32 31 2c 31 33 0d 00 82 12 fb 20 39 |117,21,13..... 9| 000000b0 2c 31 36 38 2c 31 33 36 2c 39 38 0d 00 8c 10 fb |,168,136,98.....| 000000c0 20 31 30 2c 32 35 35 2c 30 2c 30 0d 00 96 10 fb | 10,255,0,0.....| 000000d0 20 31 31 2c 30 2c 26 35 30 2c 30 0d 00 a0 14 fb | 11,0,&50,0.....| 000000e0 20 31 32 2c 26 38 30 2c 26 44 30 2c 26 45 30 0d | 12,&80,&D0,&E0.| 000000f0 00 aa 16 68 65 61 70 5f 73 69 7a 65 3d 31 36 30 |...heap_size=160| 00000100 2a 31 30 32 34 0d 00 b4 14 de 20 68 65 61 70 20 |*1024..... heap | 00000110 68 65 61 70 5f 73 69 7a 65 0d 00 be 26 c8 99 20 |heap_size...&.. | 00000120 22 42 41 55 33 44 5f 48 65 61 70 49 6e 69 74 22 |"BAU3D_HeapInit"| 00000130 2c 68 65 61 70 2c 68 65 61 70 5f 73 69 7a 65 0d |,heap,heap_size.| 00000140 00 c8 18 64 69 73 74 3d 38 30 30 3a 7a 70 6c 75 |...dist=800:zplu| 00000150 73 3d 31 30 30 30 30 0d 00 d2 18 61 6e 67 5f 73 |s=10000....ang_s| 00000160 63 61 6c 65 3d 26 31 30 30 30 30 2f 33 36 30 0d |cale=&10000/360.| 00000170 00 dc 3e c8 99 20 22 42 41 55 33 44 5f 57 72 69 |..>.. "BAU3D_Wri| 00000180 74 65 43 6f 6e 66 69 67 22 2c 25 31 31 30 2c 64 |teConfig",%110,d| 00000190 69 73 74 2c 7a 70 6c 75 73 2c 2d 7a 70 6c 75 73 |ist,zplus,-zplus| 000001a0 2a 30 2e 38 2c 31 30 30 30 30 30 30 30 0d 00 e6 |*0.8,10000000...| 000001b0 31 c8 99 20 22 42 41 55 33 44 5f 4c 6f 61 64 22 |1.. "BAU3D_Load"| 000001c0 2c 22 6f 62 6a 65 63 74 73 2e 77 6f 72 6c 64 33 |,"objects.world3| 000001d0 22 2c 31 30 30 30 20 b8 20 73 63 65 6e 65 0d 00 |",1000 . scene..| 000001e0 f0 08 78 70 3d 30 0d 00 fa 08 79 70 3d 30 0d 01 |..xp=0....yp=0..| 000001f0 04 1d de 20 76 69 65 77 5f 78 79 7a 20 31 32 2c |... view_xyz 12,| 00000200 76 69 65 77 5f 61 6e 67 20 31 32 0d 01 0e 16 73 |view_ang 12....s| 00000210 70 72 5f 73 69 7a 65 25 3d 37 35 30 2a 31 30 32 |pr_size%=750*102| 00000220 34 0d 01 18 14 de 20 73 70 72 25 20 73 70 72 5f |4..... spr% spr_| 00000230 73 69 7a 65 25 0d 01 22 13 21 73 70 72 25 3d 73 |size%..".!spr%=s| 00000240 70 72 5f 73 69 7a 65 25 0d 01 2c 0c 73 70 72 25 |pr_size%..,.spr%| 00000250 21 34 3d 30 0d 01 36 0d 73 70 72 25 21 38 3d 31 |!4=0..6.spr%!8=1| 00000260 36 0d 01 40 0e 73 70 72 25 21 31 32 3d 31 36 0d |6..@.spr%!12=16.| 00000270 01 4a 0a 72 65 63 25 3d a3 0d 01 54 05 f5 0d 01 |.J.rec%=...T....| 00000280 5e 17 20 e3 20 76 69 65 77 3d 30 20 b8 20 33 35 |^. . view=0 . 35| 00000290 39 20 88 20 35 0d 01 68 0e 20 20 e7 20 72 65 63 |9 . 5..h. . rec| 000002a0 25 20 8c 0d 01 72 15 20 20 20 e3 20 64 65 6c 61 |% ...r. . dela| 000002b0 79 25 3d 31 20 b8 20 35 0d 01 7c 0a 20 20 20 20 |y%=1 . 5..|. | 000002c0 c8 96 0d 01 86 08 20 20 20 ed 0d 01 90 27 20 20 |...... ....' | 000002d0 20 c8 99 20 26 32 45 2c 26 31 32 32 2c 73 70 72 | .. &2E,&122,spr| 000002e0 25 2c c3 76 69 65 77 2c 2d 33 32 30 2c 2d 32 35 |%,.view,-320,-25| 000002f0 36 0d 01 9a 07 20 20 cc 0d 01 a4 21 20 20 20 76 |6.... ....! v| 00000300 69 65 77 5f 78 79 7a 21 30 3d 33 30 30 30 30 30 |iew_xyz!0=300000| 00000310 2a b5 b2 28 76 69 65 77 29 0d 01 ae 29 20 20 20 |*..(view)...) | 00000320 76 69 65 77 5f 78 79 7a 21 34 3d 2d 35 30 30 30 |view_xyz!4=-5000| 00000330 30 2b 34 30 30 30 30 2a 9b b2 28 32 2a 76 69 65 |0+40000*..(2*vie| 00000340 77 29 0d 01 b8 13 20 20 20 76 69 65 77 5f 78 79 |w).... view_xy| 00000350 7a 21 38 3d 30 0d 01 c2 13 20 20 20 76 69 65 77 |z!8=0.... view| 00000360 5f 61 6e 67 21 30 3d 30 0d 01 cc 2f 20 20 20 76 |_ang!0=0.../ v| 00000370 69 65 77 5f 61 6e 67 21 34 3d 28 28 76 69 65 77 |iew_ang!4=((view| 00000380 2b 39 30 29 2a 61 6e 67 5f 73 63 61 6c 65 29 20 |+90)*ang_scale) | 00000390 80 20 26 46 46 46 46 0d 01 d6 13 20 20 20 76 69 |. &FFFF.... vi| 000003a0 65 77 5f 61 6e 67 21 38 3d 30 0d 01 e0 2c 20 20 |ew_ang!8=0..., | 000003b0 20 ef 20 32 34 2c 36 34 30 2d 33 32 30 3b 35 31 | . 24,640-320;51| 000003c0 32 2d 32 35 36 3b 36 34 30 2b 33 32 30 3b 35 31 |2-256;640+320;51| 000003d0 32 2b 32 35 36 3b 0d 01 ea 11 20 20 20 c8 91 20 |2+256;.... .. | 000003e0 36 34 30 2c 35 31 32 0d 01 f4 0b 20 20 20 e6 20 |640,512.... . | 000003f0 31 31 0d 01 fe 1f 20 20 20 c8 93 20 c8 90 20 2d |11.... .. .. -| 00000400 36 34 30 2c 2d 35 31 32 2c 31 32 38 30 2c 35 31 |640,-512,1280,51| 00000410 32 0d 02 08 0b 20 20 20 e6 20 31 32 0d 02 12 1c |2.... . 12....| 00000420 20 20 20 c8 93 20 c8 90 20 2d 36 34 30 2c 30 2c | .. .. -640,0,| 00000430 31 32 38 30 2c 35 31 32 0d 02 1c 30 20 20 20 c8 |1280,512...0 .| 00000440 99 20 22 42 41 55 33 44 5f 52 65 6e 64 65 72 22 |. "BAU3D_Render"| 00000450 2c 73 63 65 6e 65 2c 76 69 65 77 5f 78 79 7a 2c |,scene,view_xyz,| 00000460 76 69 65 77 5f 61 6e 67 0d 02 26 30 20 20 20 c8 |view_ang..&0 .| 00000470 99 20 26 32 45 2c 26 31 31 30 2c 73 70 72 25 2c |. &2E,&110,spr%,| 00000480 c3 76 69 65 77 2c 2c 2d 33 32 30 2c 2d 32 35 36 |.view,,-320,-256| 00000490 2c 33 31 39 2c 32 35 35 0d 02 30 07 20 20 cd 0d |,319,255..0. ..| 000004a0 02 3a 06 20 ed 0d 02 44 0b 20 72 65 63 25 3d b9 |.:. ...D. rec%=.| 000004b0 0d 02 4e 07 fd 20 a3 0d 02 58 05 e0 0d ff |..N.. ...X....| 000004be