DataMuseum.dk

Presents historical artifacts from the history of:

CP/M

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CP/M

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦221090ec7⟧

    Length: 1152 (0x480)
    Names: »DEMO3.CML«

Derivation

└─⟦9c4522ab9⟧ Bits:30004602 COMAL-80 version 1.8 og COMPAS-80 V3.02
    └─ ⟦this⟧ »DEMO3.CML« 

Hex Dump

0x000…020 30 30 31 30 20 2f 2f 20 43 48 41 4e 47 49 4e 47 20 42 41 53 45 53 0d 30 30 32 30 20 2f 2f 20 54   ┆0010 // CHANGING BASES 0020 // T┆
0x020…040 48 49 53 20 50 52 4f 47 52 41 4d 20 57 49 4c 4c 20 43 48 41 4e 47 45 20 41 20 50 4f 53 49 54 49   ┆HIS PROGRAM WILL CHANGE A POSITI┆
0x040…060 56 45 20 49 4e 54 45 47 45 52 20 42 41 53 45 20 31 30 0d 30 30 33 30 20 2f 2f 20 54 4f 20 41 4e   ┆VE INTEGER BASE 10 0030 // TO AN┆
0x060…080 59 20 4e 45 57 20 42 41 53 45 20 42 45 54 57 45 45 4e 20 32 20 41 4e 44 20 31 36 0d 30 30 34 30   ┆Y NEW BASE BETWEEN 2 AND 16 0040┆
0x080…0a0 20 44 49 4d 20 56 41 4c 55 45 24 28 30 3a 31 35 29 20 4f 46 20 31 0d 30 30 35 30 20 44 49 4d 20   ┆ DIM VALUE$(0:15) OF 1 0050 DIM ┆
0x0a0…0c0 44 49 47 49 54 28 32 30 29 0d 30 30 36 30 20 46 4f 52 20 49 3a 3d 30 20 54 4f 20 31 35 20 44 4f   ┆DIGIT(20) 0060 FOR I:=0 TO 15 DO┆
0x0c0…0e0 20 0d 30 30 37 30 20 20 20 2f 2f 0d 30 30 38 30 20 20 20 2f 2f 20 53 45 54 20 55 50 20 54 48 45   ┆  0070   // 0080   // SET UP THE┆
0x0e0…100 20 43 48 41 52 41 43 54 45 52 20 53 45 54 20 55 53 45 44 20 46 4f 52 20 4f 55 54 50 55 54 0d 30   ┆ CHARACTER SET USED FOR OUTPUT 0┆
0x100…120 30 39 30 20 20 20 2f 2f 0d 30 31 30 30 20 20 20 52 45 41 44 20 56 41 4c 55 45 24 28 49 29 0d 30   ┆090   // 0100   READ VALUE$(I) 0┆
0x120…140 31 31 30 20 4e 45 58 54 20 49 0d 30 31 32 30 20 44 41 54 41 20 22 30 22 2c 20 22 31 22 2c 20 22   ┆110 NEXT I 0120 DATA "0", "1", "┆
0x140…160 32 22 2c 20 22 33 22 2c 20 22 34 22 2c 20 22 35 22 2c 20 22 36 22 2c 20 22 37 22 0d 30 31 33 30   ┆2", "3", "4", "5", "6", "7" 0130┆
0x160…180 20 44 41 54 41 20 22 38 22 2c 20 22 39 22 2c 20 22 41 22 2c 20 22 42 22 2c 20 22 43 22 2c 20 22   ┆ DATA "8", "9", "A", "B", "C", "┆
0x180…1a0 44 22 2c 20 22 45 22 2c 20 22 46 22 0d 30 31 34 30 20 2f 2f 0d 30 31 35 30 20 2f 2f 20 47 45 54   ┆D", "E", "F" 0140 // 0150 // GET┆
0x1a0…1c0 20 54 48 45 20 4e 45 57 20 42 41 53 45 20 41 4e 44 20 54 45 53 54 20 49 54 0d 30 31 36 30 20 2f   ┆ THE NEW BASE AND TEST IT 0160 /┆
0x1c0…1e0 2f 0d 30 31 37 30 20 52 45 50 45 41 54 20 0d 30 31 38 30 20 20 20 49 4e 50 55 54 20 22 4e 45 57   ┆/ 0170 REPEAT  0180   INPUT "NEW┆
0x1e0…200 20 42 41 53 45 3a 20 22 3a 20 4e 45 57 5f 42 41 53 45 0d 30 31 39 30 20 55 4e 54 49 4c 20 32 3c   ┆ BASE: ": NEW_BASE 0190 UNTIL 2<┆
0x200…220 3d 4e 45 57 5f 42 41 53 45 20 41 4e 44 20 4e 45 57 5f 42 41 53 45 3c 3d 31 36 20 41 4e 44 20 46   ┆=NEW_BASE AND NEW_BASE<=16 AND F┆
0x220…240 52 41 43 28 4e 45 57 5f 42 41 53 45 29 3d 30 0d 30 32 30 30 20 2f 2f 0d 30 32 31 30 20 2f 2f 20   ┆RAC(NEW_BASE)=0 0200 // 0210 // ┆
0x240…260 47 45 54 20 54 48 45 20 4e 55 4d 42 45 52 20 54 4f 20 43 4f 4e 56 45 52 54 0d 30 32 32 30 20 2f   ┆GET THE NUMBER TO CONVERT 0220 /┆
0x260…280 2f 0d 30 32 33 30 20 52 45 50 45 41 54 20 0d 30 32 34 30 20 20 20 49 4e 50 55 54 20 22 50 4f 53   ┆/ 0230 REPEAT  0240   INPUT "POS┆
0x280…2a0 49 54 49 56 45 20 49 4e 54 45 47 45 52 20 54 4f 20 42 45 20 43 4f 4e 56 45 52 54 45 44 3a 20 22   ┆ITIVE INTEGER TO BE CONVERTED: "┆
0x2a0…2c0 3a 20 56 41 4c 55 45 0d 30 32 35 30 20 55 4e 54 49 4c 20 46 52 41 43 28 56 41 4c 55 45 29 3d 30   ┆: VALUE 0250 UNTIL FRAC(VALUE)=0┆
0x2c0…2e0 20 41 4e 44 20 56 41 4c 55 45 3e 30 0d 30 32 36 30 20 2f 2f 0d 30 32 37 30 20 2f 2f 20 43 4f 4e   ┆ AND VALUE>0 0260 // 0270 // CON┆
0x2e0…300 56 45 52 54 0d 30 32 38 30 20 2f 2f 0d 30 32 39 30 20 49 3a 3d 31 0d 30 33 30 30 20 52 45 50 45   ┆VERT 0280 // 0290 I:=1 0300 REPE┆
0x300…320 41 54 20 0d 30 33 31 30 20 20 20 44 49 47 49 54 28 49 29 3a 3d 56 41 4c 55 45 20 4d 4f 44 20 4e   ┆AT  0310   DIGIT(I):=VALUE MOD N┆
0x320…340 45 57 5f 42 41 53 45 3b 20 56 41 4c 55 45 3a 3d 56 41 4c 55 45 20 44 49 56 20 4e 45 57 5f 42 41   ┆EW_BASE; VALUE:=VALUE DIV NEW_BA┆
0x340…360 53 45 0d 30 33 32 30 20 20 20 49 3a 2b 31 0d 30 33 33 30 20 55 4e 54 49 4c 20 56 41 4c 55 45 3d   ┆SE 0320   I:+1 0330 UNTIL VALUE=┆
0x360…380 30 0d 30 33 34 30 20 4e 4f 5f 44 49 47 49 54 53 3a 3d 49 2d 31 0d 30 33 35 30 20 2f 2f 0d 30 33   ┆0 0340 NO_DIGITS:=I-1 0350 // 03┆
0x380…3a0 36 30 20 2f 2f 20 50 52 49 4e 54 20 54 48 45 20 52 45 53 55 4c 54 0d 30 33 37 30 20 2f 2f 0d 30   ┆60 // PRINT THE RESULT 0370 // 0┆
0x3a0…3c0 33 38 30 20 50 52 49 4e 54 20 56 41 4c 55 45 2c 22 20 42 41 53 45 20 31 30 20 43 4f 4e 56 45 52   ┆380 PRINT VALUE," BASE 10 CONVER┆
0x3c0…3e0 54 53 20 49 4e 20 42 41 53 45 20 22 2c 4e 45 57 5f 42 41 53 45 2c 22 20 54 4f 3a 20 22 2c 0d 30   ┆TS IN BASE ",NEW_BASE," TO: ", 0┆
0x3e0…400 33 39 30 20 46 4f 52 20 49 3a 3d 4e 4f 5f 44 49 47 49 54 53 20 44 4f 57 4e 54 4f 20 31 20 44 4f   ┆390 FOR I:=NO_DIGITS DOWNTO 1 DO┆
0x400…420 20 0d 30 34 30 30 20 20 20 50 52 49 4e 54 20 56 41 4c 55 45 24 28 44 49 47 49 54 28 49 29 29 2c   ┆  0400   PRINT VALUE$(DIGIT(I)),┆
0x420…440 22 20 22 2c 0d 30 34 31 30 20 4e 45 58 54 20 49 0d 20 42 41 53 45 20 31 30 20 43 4f 4e 56 45 52   ┆" ", 0410 NEXT I  BASE 10 CONVER┆
0x440…460 54 53 20 49 4e 20 42 41 53 45 20 22 2c 4e 45 57 5f 42 41 53 45 2c 22 20 54 4f 3a 20 22 2c 0d 30   ┆TS IN BASE ",NEW_BASE," TO: ", 0┆
0x460…480 33 39 30 20 46 4f 52 20 49 3a 3d 4e 4f 5f 44 49 47 49 54 53 20 44 4f 57 4e 54 4f 20 31 20 44 31   ┆390 FOR I:=NO_DIGITS DOWNTO 1 D1┆