home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Computer Club Elmshorn Atari PD
/
CCE_PD.iso
/
pc
/
0600
/
CCE_0660.ZIP
/
CCE_0660
/
FRACTALS.II
/
FARBFRAC.GFA
(
.txt
)
< prev
next >
Wrap
GFA-BASIC Atari
|
1990-08-20
|
9KB
|
412 lines
' -----------------------------------------------------------------------------
' ################## F R A C T A L S - P R O G R A M M ####################
' ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
' ~ Harald Hansen, 1/44, Weserstr.82 ~
' ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
' >>>>>>>>>>>>>>>>>>>> Tiefenwertdatei farbig auswerten <<<<<<<<<<<<<<<<<<<<<
' -----------------------------------------------------------------------------
'
@screen ! Auflösung bestimmen
' ## Bitte beachten, daß möglicherweise nur ein Teil des Bildes farbig oder in
' Graustufen dargestellt werden kann. Das Originalbild sollte also nicht
' größer als z.B. 320 * 200 Pixel sein! ##
'
DIM bild_info%(44) ! Datenspeicher für Parameter-File
DIM para%(250) ! Feld-Schnittstelle für Maschinenprogramme
tw_max%=400000
DIM tiefen_wertfeld%(tw_max% DIV 4) ! Feld für Tiefenwerte
'
' *** M A S C H I N E N P R O G R A M M ***
' Assemblerroutinen für das Fractalprogramm "FRACTALS"
' Version 4.0, Juni 1990; (c) Martin Hansen, Steinkopfstraße 22, 6360 Friedberg
' ##########################################################################
' # Achtung: nicht mit Save.A abspeichern, da sonst die Assembler-Routinen #
' # verlorengehen, die sich in INLINE befinden !!! #
' ##########################################################################
' ## INLINE:
' $0000: 2c 6f 00 04 30 2f 00 08 4a 40 66 04 4e fa 0a 76
' $0010: 0c 40 00 01 66 04 4e fa 0b 7e 0c 40 00 02 66 04
' $0020: 4e fa 00 36 0c 40 00 03 66 04 4e fa 01 4c 0c 40
' $0030: 00 04 66 04 4e fa 0b de 0c 40 00 05 66 04 4e fa
' $0040: 0d 36 0c 40 00 06 66 04 4e fa 0d 7a 0c 40 00 07
' $0050: 66 04 4e fa 0d 74 4e 75 2a 6e 00 24 db ee 00 28
' $0060: 20 0d d0 ae 00 58 2d 40 01 9c 4e ba 08 7e 30 2e
' $0070: 00 4e 0c 40 00 01 66 04 4e ba 02 b2 4c ee 00 07
' $0080: 00 c8 48 ee 00 07 00 f8 4c ee 00 07 00 ec 48 ee
' $0090: 00 07 01 04 4e ba 02 ea 47 ee 00 f8 42 6e 01 96
' $00a0: 42 6e 01 98 42 6e 01 94 45 ee 01 04 42 6e 01 92
' $00b0: 4c ee 00 07 00 c8 48 d3 00 07 43 ee 01 90 32 ae
' $00c0: 00 12 4e 94 30 11 b0 6e 00 12 67 0e 90 6e 00 12
' $00d0: 44 40 32 80 02 40 00 01 67 06 76 01 4e ba 01 ce
' $00e0: 4e ba 08 52 4c d3 00 07 4c ee 00 38 01 10 d4 85
' $00f0: d3 84 d1 83 48 d3 00 07 30 2e 01 92 52 40 3d 40
' $0100: 01 92 b0 6e 00 1e 6d b2 4e ba 08 70 4c d2 00 07
' $0110: 4c ee 00 38 01 1c 94 85 93 84 91 83 48 d2 00 07
' $0120: 20 2e 01 9c 22 0d b2 80 6f 04 70 02 60 3a 3f 3c
' $0130: 00 02 3f 3c 00 01 4e 4d 58 8f 4a 40 67 16 3f 3c
' $0140: 00 02 3f 3c 00 02 4e 4d 58 8f 0c 00 00 1b 66 de
' $0150: 70 01 60 14 30 2e 01 94 52 40 3d 40 01 94 b0 6e
' $0160: 00 22 6d 00 ff 44 42 80 2d 4d 00 28 32 2e 01 94
' $0170: 52 41 3d 41 00 1a 4e 75 2a 6e 00 24 db ee 00 28
' $0180: 20 0d d0 ae 00 58 2d 40 01 9c 4e ba 07 5e 30 2e
' $0190: 00 66 e1 48 3d 40 01 a6 4c ee 00 07 00 ec 48 ee
' $01a0: 00 07 01 04 47 ee 01 58 20 2e 01 40 e8 80 26 80
' $01b0: 49 ee 01 5c 20 2e 01 4c e8 80 28 80 2e 2e 00 ec
' $01c0: e8 87 42 6e 01 96 42 6e 01 98 42 6e 01 94 42 6e
' $01d0: 01 92 4c ee 00 07 00 c8 48 ee 00 07 00 f8 2c 00
' $01e0: e8 86 4e ba 06 62 30 11 b0 6e 00 12 67 10 30 11
' $01f0: 90 6e 00 12 44 40 32 80 02 40 00 01 67 06 76 01
' $0200: 4e ba 00 aa 4e ba 07 2e 4c ee 00 07 00 f8 4c ee
' $0210: 00 38 01 10 d4 85 d3 84 d1 83 48 ee 00 07 00 f8
' $0220: 2c 00 e8 86 30 2e 01 92 52 40 3d 40 01 92 b0 6e
' $0230: 00 1e 6d ae 4e ba 07 44 4c ee 00 07 01 04 4c ee
' $0240: 00 38 01 1c 94 85 93 84 91 83 48 ee 00 07 01 04
' $0250: 2e 00 e8 87 20 2e 01 9c 22 0d b2 80 6f 04 70 02
' $0260: 60 3a 3f 3c 00 02 3f 3c 00 01 4e 4d 58 8f 4a 40
' $0270: 67 16 3f 3c 00 02 3f 3c 00 02 4e 4d 58 8f 0c 00
' $0280: 00 1b 66 de 70 01 60 14 30 2e 01 94 52 40 3d 40
' $0290: 01 94 b0 6e 00 22 6d 00 ff 36 42 80 2d 4d 00 28
' $02a0: 32 2e 01 94 52 41 3d 41 00 1a 4e 75 30 2e 01 92
' $02b0: d0 6e 00 16 32 2e 01 94 d2 6e 00 1a 20 6e 00 40
' $02c0: c2 fc 00 50 d1 c1 32 00 e6 49 34 00 46 42 4a 03
' $02d0: 66 06 05 b0 10 00 60 04 05 f0 10 00 4e 75 e0 00
' $02e0: 00 00 00 00 00 00 00 00 00 00 08 00 00 00 00 00
' $02f0: 00 00 00 00 00 00 ec 00 00 00 00 00 00 00 00 00
' $0300: 00 00 14 00 00 00 00 00 00 00 00 00 00 00 00 1d
' $0310: 41 d4 1d 41 d4 1d 41 d4 1d 41 00 1d 41 d4 1d 41
' $0320: d4 1d 41 d4 1d 41 01 5e 01 5e 00 28 41 fa ff b0
' $0330: 4c d8 00 07 48 ee 00 07 00 c8 4c d8 00 07 48 ee
' $0340: 00 07 00 d4 4c d8 00 07 48 ee 00 07 00 e0 4c d8
' $0350: 00 07 48 ee 00 07 00 ec 4c d8 00 07 48 ee 00 07
' $0360: 01 10 4c d8 00 07 48 ee 00 07 01 1c 30 18 3d 40
' $0370: 00 1e 30 18 3d 40 00 22 30 18 3d 40 00 12 4e 75
' $0380: 30 2e 00 52 4a 40 67 30 0c 40 00 01 66 06 49 fa
' $0390: 00 7e 60 78 0c 40 00 02 66 06 49 fa 00 cc 60 6c
' $03a0: 0c 40 00 03 66 06 49 fa 01 60 60 60 0c 40 00 04
' $03b0: 66 06 49 fa 02 a6 60 54 4c ee 00 03 01 10 4a 81
' $03c0: 6a 02 44 81 2e 3c 00 03 00 00 b0 87 6d 0c 49 fa
' $03d0: 00 3e 3d 7c 00 01 00 52 60 32 7e 50 b0 87 6d 0c
' $03e0: 49 fa 00 86 3d 7c 00 02 00 52 60 20 2e 3c 00 03
' $03f0: 00 00 b2 87 6d 0c 49 fa 01 10 3d 7c 00 03 00 52
' $0400: 60 0a 49 fa 02 56 3d 7c 00 04 00 52 4e 75 2a 13
' $0410: 28 12 2e 3c 04 00 00 00 53 51 2c 05 26 04 20 05
' $0420: 48 40 c1 c0 22 04 48 41 c3 c1 24 01 d2 80 b2 87
' $0430: 6c 34 90 82 e9 88 d0 86 42 02 48 44 4a 44 6a 04
' $0440: 52 02 44 44 48 45 4a 45 6a 04 53 02 44 45 c8 c5
' $0450: e9 8c 4a 02 67 02 44 84 e3 84 d8 83 2a 00 53 51
' $0460: 66 be 32 ae 00 12 4e 75 53 51 2e 13 2c 12 2a 07
' $0470: 28 06 26 05 4a 83 6a 02 44 83 30 03 48 43 0c 43
' $0480: 20 00 6e 00 00 82 32 03 c6 c3 c0 c1 d0 80 42 40
' $0490: 48 40 d6 80 24 04 4a 82 6a 02 44 82 30 02 48 42
' $04a0: 0c 42 20 00 6e 60 32 02 c4 c2 c0 c1 d0 80 42 40
' $04b0: 48 40 d4 80 20 02 d0 83 48 40 0c 40 04 00 6e 46
' $04c0: 96 82 e9 8b d6 87 42 02 4a 84 6a 04 52 02 44 84
' $04d0: 4a 85 6a 04 53 02 44 85 32 04 48 44 30 04 c0 c5
' $04e0: 48 45 c2 c5 d0 81 42 40 48 40 c8 c5 d8 80 e9 8c
' $04f0: 4a 02 67 02 44 84 e3 84 d8 86 2a 03 53 51 66 00
' $0500: ff 72 32 ae 00 12 4e 75 53 51 4c d3 00 c0 4c d2
' $0510: 00 30 41 ee 02 58 24 06 26 07 4a 82 6a 04 44 83
' $0520: 40 82 0c 82 20 00 00 00 6c 00 01 2e 59 88 42 a0
' $0530: 32 02 48 42 48 43 30 02 c0 c3 d0 80 21 40 00 04
' $0540: 30 01 c0 c0 d1 a8 00 04 64 04 52 68 00 02 c2 c2
' $0550: d2 81 d3 a8 00 02 c4 c2 d5 90 24 04 26 05 4a 82
' $0560: 6a 04 44 83 40 82 0c 82 20 00 00 00 6c 00 00 ea
' $0570: 59 88 42 a0 32 02 48 42 48 43 30 02 c0 c3 d0 80
' $0580: 21 40 00 04 30 01 c0 c0 d1 a8 00 04 64 04 52 68
' $0590: 00 02 c2 c2 d2 81 d3 a8 00 02 c4 c2 d5 90 4c d8
' $05a0: 00 0f 21 00 d0 82 48 40 0c 40 04 00 6c 00 00 aa
' $05b0: 20 18 96 81 95 80 e9 8a 42 03 e9 9b 84 03 4c d3
' $05c0: 00 03 d2 83 d1 82 42 02 4a 84 6a 06 52 02 44 85
' $05d0: 40 84 4a 86 6a 06 53 02 44 87 40 86 59 88 42 a0
' $05e0: 48 e0 03 00 2c 00 2e 01 48 45 30 10 c0 c5 21 40
' $05f0: 00 0c 30 28 00 02 c0 c4 d1 a8 00 0c 64 04 52 68
' $0600: 00 0a 32 10 c2 c4 48 44 30 28 00 04 c0 c4 d1 a8
' $0610: 00 0c 64 04 52 68 00 0a 30 28 00 02 c0 c4 d2 80
' $0620: d3 a8 00 0a 30 10 c0 c4 d1 a8 00 08 50 48 4c d8
' $0630: 00 03 e9 88 42 01 e9 99 80 01 4a 02 67 04 44 81
' $0640: 40 80 e3 89 e3 90 4c d2 00 30 da 81 d9 80 53 51
' $0650: 66 00 fe c4 32 ae 00 12 4e 75 53 51 4c d3 00 c0
' $0660: 4c d2 00 30 41 ee 02 58 24 06 26 07 4a 82 6a 04
' $0670: 44 83 40 82 0c 82 20 00 00 00 6c 00 01 c8 59 88
' $0680: 42 a0 42 60 21 02 30 10 c0 c3 d0 80 21 40 00 0a
' $0690: 30 28 00 02 48 43 c0 c3 d1 a8 00 0a 64 04 52 68
' $06a0: 00 08 d1 a8 00 0a 64 04 52 68 00 08 30 10 c0 c3
' $06b0: d0 80 d1 a8 00 08 30 28 00 02 c0 c2 d1 a8 00 08
' $06c0: 64 04 52 68 00 06 30 10 c0 c2 d0 80 d1 a8 00 06
' $06d0: 30 10 c0 c0 d1 a8 00 04 58 88 24 04 26 05 4a 82
' $06e0: 6a 04 44 83 40 82 0c 82 20 00 00 00 6c 00 01 56
' $06f0: 59 88 42 a0 42 60 21 02 30 10 c0 c3 d0 80 21 40
' $0700: 00 0a 30 28 00 02 48 43 c0 c3 d1 a8 00 0a 64 04
' $0710: 52 68 00 08 d1 a8 00 0a 64 04 52 68 00 08 30 10
' $0720: c0 c3 d0 80 d1 a8 00 08 30 28 00 02 c0 c2 d1 a8
' $0730: 00 08 64 04 52 68 00 06 30 10 c0 c2 d0 80 d1 a8
' $0740: 00 06 30 10 c0 c0 d1 a8 00 04 58 88 4c d8 00 03
' $0750: 54 88 4c d8 00 0c 54 88 21 00 d0 82 48 40 0c 40
' $0760: 04 00 6c 00 00 e0 20 18 96 81 95 80 e9 8a 20 03
' $0770: 42 40 e9 98 e9 8b 84 00 4c d3 00 03 d2 83 d1 82
' $0780: 42 02 4a 84 6a 06 52 02 44 85 40 84 4a 86 6a 06
' $0790: 53 02 44 87 40 86 59 88 42 a0 42 60 48 e0 03 00
' $07a0: 2c 00 2e 01 30 10 c0 c5 48 45 36 04 48 44 32 28
' $07b0: 00 06 c2 c4 d0 81 21 40 00 0e 30 28 00 02 c0 c5
' $07c0: d1 a8 00 0e 64 04 52 68 00 0c 30 28 00 04 c0 c3
' $07d0: d1 a8 00 0e 64 04 52 68 00 0c 30 10 c0 c5 32 28
' $07e0: 00 04 c2 c4 d0 81 d1 a8 00 0c 30 28 00 02 c0 c3
' $07f0: d1 a8 00 0c 64 04 52 68 00 0a 30 10 c0 c3 32 28
' $0800: 00 02 c2 c4 d0 81 d1 a8 00 0a 30 10 c0 c4 d1 a8
' $0810: 00 08 50 88 4c d8 00 03 54 88 e9 88 26 01 42 43
' $0820: e9 9b e9 89 80 03 4a 02 67 04 44 81 40 80 e3 89
' $0830: e3 90 4c d2 00 30 da 81 d9 80 53 51 66 00 fe 2a
' $0840: 32 ae 00 12 4e 75 43 ee 01 90 32 ae 00 12 53 51
' $0850: 2a 06 28 07 20 05 4a 80 6a 02 44 80 32 00 48 40
' $0860: 0c 40 0b 00 6e 00 00 82 34 00 c0 c0 c2 c2 d2 81
' $0870: e1 88 e0 89 d0 81 26 00 20 04 4a 80 6a 02 44 80
' $0880: 32 00 48 40 0c 40 0b 00 6e 5e 34 00 c0 c0 c2 c2
' $0890: d2 81 e1 88 e0 89 d0 81 24 00 d0 83 69 4a 48 40
' $08a0: b0 6e 01 a6 6c 42 96 82 d6 93 42 42 4a 85 6a 04
' $08b0: 52 02 44 85 4a 84 6a 04 53 02 44 84 32 04 48 44
' $08c0: 30 04 c0 c5 48 45 c2 c5 d0 81 e0 88 c8 c5 e1 8c
' $08d0: d8 80 4a 02 67 02 44 84 e3 84 d8 94 2a 03 53 51
' $08e0: 66 00 ff 72 32 ae 00 12 4e 75 30 2e 00 12 42 41
' $08f0: 0c 40 04 00 6c 14 3d 7c 00 0a 01 a0 3d 7c 03 ff
' $0900: 01 a4 3d 7c 00 3f 01 a2 60 28 52 41 e2 48 66 fa
' $0910: 3d 41 01 a0 53 41 00 3c 00 10 e3 50 51 c9 ff f8
' $0920: 3d 40 01 a4 0a 40 ff ff e2 48 64 fc e3 50 3d 40
' $0930: 01 a2 4e 75 20 6e 00 2c 30 11 c0 fc 00 04 52 b0
' $0940: 00 00 38 2e 01 96 36 2e 01 98 0c 43 00 00 67 20
' $0950: b6 51 67 20 b8 6e 01 a2 63 06 3a c4 3a c3 60 0c
' $0960: 32 2e 01 a0 30 04 e3 68 80 43 3a c0 42 6e 01 96
' $0970: 3d 51 01 98 52 6e 01 96 4e 75 38 2e 01 96 b8 6e
' $0980: 01 a2 63 06 3a c4 3a d1 60 0c 32 2e 01 a0 30 04
' $0990: e3 68 80 51 3a c0 42 6e 01 96 42 6e 01 98 4e 75
' $09a0: 10 00 00 00 00 00 00 00 00 00 00 00 01 99 99 99
' $09b0: 99 99 99 99 99 99 99 99 00 28 f5 c2 8f 5c 28 f5
' $09c0: c2 8f 5c 28 00 04 18 93 74 bc 6a 7e f9 db 22 d0
' $09d0: 00 00 68 db 8b ac 71 0c b2 95 e9 e1 00 00 0a 7c
' $09e0: 5a c4 71 b4 78 42 30 fc 00 00 01 0c 6f 7a 0b 5e
' $09f0: d8 d3 6b 4c 00 00 00 1a d7 f2 9a bc af 48 57 87
' $0a00: 00 00 00 02 af 31 dc 46 11 87 3b f3 00 00 00 00
' $0a10: 44 b8 2f a0 9b 5a 52 cb 00 00 00 00 06 df 37 f6
' $0a20: 75 ef 6e ad 00 00 00 00 00 af eb ff 0b cb 24 aa
' $0a30: 00 00 00 00 00 11 97 99 81 2d ea 11 00 00 00 00
' $0a40: 00 01 c2 5c 26 84 97 68 00 00 00 00 00 00 2d 09
' $0a50: 37 0d 42 57 00 00 00 00 00 00 04 80 eb e7 b9 d5
' $0a60: 00 00 00 00 00 00 00 73 4a ca 5f 62 00 00 00 00
' $0a70: 00 00 00 0b 87 7a a3 23 00 00 00 00 00 00 00 01
' $0a80: 27 25 dd 1d 4e ba 00 08 4e ba 00 d6 4e 75 49 fa
' $0a90: ff 10 45 ee 00 c8 26 56 4e ba 00 48 45 ee 00 d4
' $0aa0: 26 6e 00 04 4e ba 00 3c 45 ee 00 e0 26 6e 00 08
' $0ab0: 4e ba 00 30 45 ee 00 ec 26 6e 00 0c 4e ba 00 24
' $0ac0: 30 2e 00 32 4a 40 67 18 45 ee 01 40 26 6e 00 5c
' $0ad0: 4e ba 00 10 45 ee 01 4c 26 6e 00 60 4e ba 00 04
' $0ae0: 4e 75 42 84 42 85 42 86 42 47 42 41 12 1b 0c 01
' $0af0: 00 00 67 54 0c 01 00 2b 66 06 42 6e 01 9a 60 06
' $0b00: 3d 7c 00 01 01 9a 12 1b 04 01 00 30 43 f4 70 00
' $0b10: 4e ba 02 1c 4c d8 00 70 12 1b 0c 01 00 2e 67 02
' $0b20: 60 26 42 41 12 1b 0c 01 00 00 67 1c 04 01 00 30
' $0b30: 06 47 00 0c 43 f4 70 00 4e ba 01 f4 4c d8 00 07
' $0b40: dc 82 db 81 d9 80 60 da 4e ba 00 08 48 d2 00 70
' $0b50: 4e 75 4a 6e 01 9a 67 06 44 86 40 85 40 84 4e 75
' $0b60: 4c ee 00 3f 00 c8 9a 82 99 81 97 80 3e 2e 00 1e
' $0b70: 4e ba 01 48 48 ee 00 07 01 10 4c ee 00 3f 00 e0
' $0b80: 9a 82 99 81 97 80 3e 2e 00 22 4e ba 01 2e 48 ee
' $0b90: 00 07 01 1c 4e 75 43 ee 01 10 32 2e 00 16 4e ba
' $0ba0: 01 8e 4c d0 00 07 4c ee 00 38 00 c8 da 82 d9 81
' $0bb0: d7 80 48 ee 00 38 00 c8 32 2e 00 46 4e ba 01 70
' $0bc0: 4c d0 00 07 da 82 d9 81 d7 80 48 ee 00 38 00 d4
' $0bd0: 43 ee 01 1c 32 2e 00 1a 4e ba 01 54 4c d0 00 07
' $0be0: 4c ee 00 38 00 ec 9a 82 99 81 97 80 48 ee 00 38
' $0bf0: 00 ec 32 2e 00 4a 4e ba 01 36 4c d0 00 07 9a 82
' $0c00: 99 81 97 80 48 ee 00 38 00 e0 4e ba ff 54 4e ba
' $0c10: 00 04 4e 75 4b ee 00 c8 43 ee 01 34 24 56 4e ba
' $0c20: 00 38 24 6e 00 04 4e ba 00 30 24 6e 00 08 4e ba
' $0c30: 00 28 24 6e 00 0c 4e ba 00 20 30 2e 00 32 4a 40
' $0c40: 67 14 4b ee 01 40 24 6e 00 5c 4e ba 00 0c 24 6e
' $0c50: 00 60 4e ba 00 04 4e 75 4c dd 00 07 7c 11 4a 80
' $0c60: 6a 0c 44 82 40 81 40 80 14 fc 00 2d 60 04 14 fc
' $0c70: 00 2b 26 00 e9 9b 02 03 00 0f 06 03 00 30 14 c3
' $0c80: 14 fc 00 2e 02 80 0f ff ff ff 48 d1 00 07 72 0a
' $0c90: 4e ba 00 9c 4c d8 00 07 26 00 02 80 0f ff ff ff
' $0ca0: 48 d1 00 07 e9 9b 02 03 00 0f 06 03 00 30 14 c3
' $0cb0: 51 ce ff dc 14 fc 00 00 4e 75 42 80 30 07 48 40
' $0cc0: 42 81 42 82 7c 0e e2 8b e2 94 e2 95 51 ce ff f8
' $0cd0: 41 ee 01 28 42 98 42 98 42 98 91 fc 00 00 00 0c
' $0ce0: 7e 5f 48 e7 1c 00 9a 82 99 81 97 80 65 0e df fc
' $0cf0: 00 00 00 0c 00 3c 00 10 61 16 60 0a 4c df 00 38
' $0d00: 02 3c 00 ef 61 0a 51 cf ff da 4c d0 00 07 60 1c
' $0d10: e5 e8 00 0a e5 e8 00 08 e5 e8 00 06 e5 e8 00 04
' $0d20: e5 e8 00 02 e5 d0 e3 95 e3 94 e3 93 4e 75 41 ee
' $0d30: 01 28 42 98 42 98 42 98 91 fc 00 00 00 0c 30 29
' $0d40: 00 0a c0 c1 d1 a8 00 08 30 29 00 08 c0 c1 d1 a8
' $0d50: 00 06 30 29 00 06 c0 c1 d1 a8 00 04 30 29 00 04
' $0d60: c0 c1 d1 a8 00 02 30 29 00 02 c0 c1 d1 90 30 11
' $0d70: c0 c1 d1 50 4e 75 28 6e 00 3c 2a 6e 00 24 4e ba
' $0d80: fb 6a 42 6e 01 94 42 6e 01 92 4e ba 00 78 30 2e
' $0d90: 01 90 16 34 00 00 3e 2e 01 96 53 47 52 6e 01 92
' $0da0: 4e ba f5 0a 51 cf ff f6 30 2e 01 92 b0 6e 00 1e
' $0db0: 6d d8 30 2e 01 94 52 40 3d 40 01 94 b0 6e 00 22
' $0dc0: 6d c4 4e 75 4e 71 4e 75 28 6e 00 54 2a 6e 00 24
' $0dd0: db ee 00 28 4e ba fb 14 42 6e 01 92 4e ba 00 26
' $0de0: 30 2e 01 90 3e 2e 01 96 53 47 52 6e 01 92 38 c0
' $0df0: 51 cf ff f8 30 2e 01 92 b0 6e 00 1e 6d de 2d 4d
' $0e00: 00 28 4e 75 30 1d 32 00 3e 2e 01 a0 ee 69 4a 41
' $0e10: 67 0e 3d 41 01 96 c0 6e 01 a4 3d 40 01 90 60 0a
' $0e20: 3d 40 01 96 32 1d 3d 41 01 90 4e 75 00 00
' 3630 Bytes.
INLINE m_programm%,3630
'
' Bilddaten-Variablen aus dem Bild-Info-Feld
adr%=V:bild_info%(0)
ABSOLUTE linke_gr%,adr%
ABSOLUTE obere_gr%,adr%+4
ABSOLUTE rechte_gr%,adr%+8
ABSOLUTE untere_gr%,adr%+12
ABSOLUTE tiefe.max%,adr%+20
ABSOLUTE feld_gr%,adr%+24
ABSOLUTE tiefen.flag%,adr%+28
'
' aktueller Ordner
pfad$=CHR$(GEMDOS(25)+65)+":"+DIR$(0)+"\"
'
DO
fileselect("*.TW") ! Tiefenwertdatei auswählen
IF EXIST(file$)
bild.laden ! Info-Block der Bilddatei laden
IF feld_gr%>0
tiefenwerte.laden
bild_plot
ENDIF
ELSE
EDIT ! Programmende bei Abbruch
ENDIF
LOOP UNTIL INP(2)=27 ! Tastendruck abwarten (Abbruch mit >ESC<)
EDIT
'
' *** Laden eines Fractal-Bildes ***
PROCEDURE bild.laden
LOCAL hinweis$,name$,d%
' Kontrolle,ob ".FRC"-Datei existiert
file$=LEFT$(file$,LEN(file$)-2)+"FRC"
IF EXIST(file$)
OPEN "I",#1,file$
' Lade nur die Parameter-Werte
BGET #1,V:bild_info%(0),180
hoehe%=untere_gr%-obere_gr%
breite%=rechte_gr%-linke_gr%
IF bild_info%(9)>0 ! Bild noch nicht fertig
hoehe%=bild_info%(9)
ENDIF
CLOSE #1
ELSE
ALERT 1,"Keine Bild-Datei !",1,"O.K.",bnr%
ENDIF
RETURN
'
' Laden der Tiefenwerte
PROCEDURE tiefenwerte.laden
file$=LEFT$(file$,LEN(file$)-3)+"TW "
OPEN "I",#1,file$
'
' Feldgröße feststellen und vergleichen
feld_gr%=INP%(#1)
IF feld_gr%=bild_info%(6)
' Überprüfung auf Speicherplatz
ERASE vert_diagramm%()
IF feld_gr%<tw_max%
DIM vert_diagramm%(tiefe.max%+4)
' Tabellen überspringen
SEEK #1,(tiefe.max%+4)*4+516
' Tiefenwerte laden
BGET #1,V:tiefen_wertfeld%(0),feld_gr%
ELSE
ALERT 1,"Tiefenwert-Datei ist|zu groß !! ",1,"O.K.",bnr%
ENDIF
ELSE
ALERT 1,"Tiefenwerte gehören nicht| zum aktuellen Bild !",1,"O.K.",bnr%
ENDIF
CLOSE #1
feld_gr%=bild_info%(6)
RETURN
'
' *** Handler zur Fileselect-Box ***
PROCEDURE fileselect(wildc$)
REPEAT
FILESELECT pfad$+wildc$,"",file$
IF file$>""
pfad$=MID$(file$,1,RINSTR(file$,"\"))
ENDIF
UNTIL file$<>pfad$
RETURN
'
PROCEDURE bild_plot
'
DIM tw_zeile&(breite%)
para%(4)=tiefe.max%
para%(7)=breite%
para%(9)=VARPTR(tiefen_wertfeld%(0))
para%(10)=0
para%(21)=V:tw_zeile&(0)
'
FOR zl%=0 TO PRED(hoehe%)
EXIT IF INKEY$=CHR$(27) OR zl%=ymax%
' Eine Bildzeile dekomprimieren
~C:m_programm%(L:V:para%(0),7)
SUB para%(10),para%(9)
'
FOR sp%=0 TO PRED(breite%)
EXIT IF sp%=xmax%
'
twert%=tw_zeile&(sp%)
IF twert%=tiefe.max%
farbe%=mandelbrot% ! Farbe für maximale Tiefe
ELSE
farbe%=MOD(twert%,anz_farben%)
ENDIF
IF aufl|=2
s%=ADD(sp%,sp%) ! schneller geht's nicht!!
z%=ADD(zl%,zl%)
SELECT farbe%
CASE 4
PSET s%,SUCC(z%),1
CONT
CASE 3
PSET SUCC(s%),z%,1
CONT
CASE 2
PSET SUCC(s%),SUCC(z%),1
CONT
CASE 1
PSET s%,z%,1
ENDSELECT
ELSE
PSET sp%,zl%,farbe%
ENDIF
NEXT sp%
'
NEXT zl%
ERASE tw_zeile&()
RETURN
'
' Bildschirmauflösung bestimmen
PROCEDURE screen
aufl|=XBIOS(4)
SELECT aufl|
CASE 0 ! niedrige Auflösung
anz_farben%=16
mandelbrot%=15 ! Farbe der Mandelbrotmenge (sollte schwarz sein)
xmax%=320
ymax%=200
'
CASE 1 ! mittlere Auflösung
anz_farben%=4
mandelbrot%=3
xmax%=640
ymax%=200
'
CASE 2 ! hohe Auflösung (für Graustufen)
anz_farben%=5
mandelbrot%=4
xmax%=320
ymax%=200
ENDSELECT
RETURN