home *** CD-ROM | disk | FTP | other *** search
/ Transactor / Transactor_08_1985_Transactor_Publishing.d64 / instructions0.14 < prev    next >
Text File  |  2023-02-26  |  11KB  |  490 lines

  1. COMAL KEYWORDS: (version 0.14)
  2.  
  3. // -- allows comments in a program
  4. //{SHIFT-+}<anything>{SHIFT--}
  5.  
  6. ABS -- gives the absolute value
  7. ABS(<numeric expression>)
  8.  
  9. AND -- logical AND
  10. <expression> AND <expression>
  11.  
  12. APPEND -- start at end of seq file
  13. OPEN {SHIFT-+}FILE{SHIFT--} <file#>,<filename>,APPEND
  14.  
  15. ATN -- arctangent in radians
  16. ATN(<numeric expression>)
  17.  
  18. AUTO -- automatic line numbering
  19. AUTO {SHIFT-+}<start line>{SHIFT--}{SHIFT-+},<increment>{SHIFT--}
  20.  
  21. BASIC -- back into BASIC mode
  22. BASIC
  23.  
  24. CASE -- multiple choice decisions
  25. CASE <control expression> {SHIFT-+}OF{SHIFT--}
  26.  
  27. CAT -- gives disk directory
  28. CAT {SHIFT-+}<drive number>{SHIFT--}
  29.  
  30. CHAIN -- load & run program on disk
  31. CHAIN <filename>
  32.  
  33. CHR$ -- gives that numbers character
  34. CHR$(<numeric expression>)
  35.  
  36. CLOSE -- closes files
  37. CLOSE {SHIFT-+}{SHIFT-+}FILE{SHIFT--} <filenum>{SHIFT--}
  38.  
  39. CLOSED -- all proc/func variables local
  40. PROC <procname>{SHIFT-+}(params){SHIFT--} {SHIFT-+}CLOSED{SHIFT--}
  41. FUNC <funcname>{SHIFT-+}(params){SHIFT--} {SHIFT-+}CLOSED{SHIFT--}
  42.  
  43. CON -- continue program execution
  44. CON
  45.  
  46. COS -- cosine in radians
  47. COS(<numeric expression>)
  48.  
  49. DATA -- provides data for a READ
  50. DATA <value>{SHIFT-+},<value>{SHIFT--}{SHIFT-+},...{SHIFT--}
  51.  
  52. DEL -- deletes lines
  53. DEL <range>
  54.  
  55. DELETE -- deletes a file from disk
  56. DELETE <filename>
  57.  
  58. DIM -- allocates string & array space
  59. DIM <string var> OF <max char>
  60. DIM <str array>(<index>) OF <max char>
  61. DIM <array name>(<array index>)
  62.  
  63. DIV -- division with integer answer
  64. <dividend> DIV <divisor>
  65.  
  66. DO -- do the following statements
  67. DO <statements>
  68.  
  69. EDIT -- list lines without indentations
  70. EDIT {SHIFT-+}<range>{SHIFT--}
  71.  
  72. ELIF -- short for ELSE IF condition
  73. ELIF <expression> {SHIFT-+}THEN{SHIFT--}
  74.  
  75. ELSE -- IF struc alternative statements
  76. ELSE
  77.  
  78. END -- halt program execution
  79. END
  80.  
  81. ENDCASE -- end of CASE structure
  82. ENDCASE
  83.  
  84. ENDFOR -- end of FOR structure
  85. ENDFOR {SHIFT-+}<control variable>{SHIFT--}
  86.  
  87. ENDFUNC -- end of function
  88. ENDFUNC {SHIFT-+}<function name>{SHIFT--}
  89.  
  90. ENDIF -- end of IF structure
  91. ENDIF
  92.  
  93. ENDPROC -- end of procedure
  94. ENDPROC {SHIFT-+}<procedure name>{SHIFT--}
  95.  
  96. ENDWHILE -- end of WHILE structure
  97. ENDWHILE
  98.  
  99. ENTER --merge program segment from disk
  100. ENTER <filename>
  101.  
  102. EOD -- End Of Data flag
  103. EOD
  104.  
  105. EOF -- End Of File flag
  106. EOF(<filenum>)
  107.  
  108. ESC -- stop key pressed flag
  109. ESC
  110. TRAP ESC<type>
  111.  
  112. EXEC -- execute a procedure
  113. {SHIFT-+}EXEC{SHIFT--} <name>{SHIFT-+}(<actual param list>){SHIFT--}
  114.  
  115. EXP -- natural log e to n
  116. EXP(<numeric expression>)
  117.  
  118. FALSE -- predefined value = 0
  119. FALSE
  120.  
  121. FILE -- specifies that a file is used
  122. INPUT FILE <file#>{SHIFT-+},<rec#>{SHIFT--}: <var list>
  123. PRINT FILE <file#>{SHIFT-+},<rec#>{SHIFT--}: <val list>
  124. READ FILE <file#>{SHIFT-+},<rec#>{SHIFT--}: <var list>
  125. WRITE FILE <file#>{SHIFT-+},<rec#>{SHIFT--}: <var list>
  126. OPEN {SHIFT-+}FILE{SHIFT--} <file#>,<filename>{SHIFT-+},<type>{SHIFT--}
  127. CLOSE {SHIFT-+}{SHIFT-+}FILE{SHIFT--} <file#>{SHIFT--}
  128.  
  129. FOR -- start of FOR loop structure
  130. FOR <var>=<st> TO <e> {SHIFT-+}STEP <stp>{SHIFT--} {SHIFT-+}DO{SHIFT--}
  131.  
  132. FUNC -- start of a multiline function
  133. FUNC <name>{SHIFT-+}(<parm>){SHIFT--} {SHIFT-+}EXTERNAL <name>{SHIFT--}
  134. FUNC <name>{SHIFT-+}(<parm>){SHIFT--} {SHIFT-+}CLOSED{SHIFT--}
  135.  
  136. GOTO -- go to line with this name
  137. GOTO <label name>
  138.  
  139. IF -- start of conditional IF structure
  140. IF <condition> {SHIFT-+}THEN{SHIFT--}
  141. IF <condition> THEN <statement>
  142.  
  143. IN --locate string1 position in string2
  144. <string1> IN <string2>
  145.  
  146. INPUT -- input from keyboard or file
  147. INPUT {SHIFT-+}<prompt>:{SHIFT--} <var list>
  148. INPUT FILE <file#>{SHIFT-+},<rec#>{SHIFT--}:<var list>
  149.  
  150. INT -nearest integer less than or equal
  151. INT(<numeric expression>)
  152.  
  153. KEY$ -- scans keyboard (not PET 0.14)
  154. KEY$
  155.  
  156. LABEL -- assigns label name to line
  157. <label name>:
  158.  
  159. LEN -- gives the length of string
  160. LEN(<string expression>)
  161.  
  162. LET -- assign value to variable
  163. :=
  164.  
  165. LIST -- list program
  166. LIST {SHIFT-+}<range>{SHIFT--} {SHIFT-+}<filename>{SHIFT--}
  167.  
  168. LOAD -- load a program from disk
  169. LOAD <filename>
  170.  
  171. LOG -- natural logarithm of n
  172. LOG(<numeric expression>)
  173.  
  174. MOD -- division remainder (modulo)
  175. <dividend> MOD <divisor>
  176.  
  177. NEW -- clears program from memory
  178. NEW
  179.  
  180. NOT -- logical NOT
  181. NOT <condition>
  182.  
  183. NULL -- does nothing (no op)
  184. NULL
  185.  
  186. OF -- part of DIM or CASE structure
  187. CASE <expression> {SHIFT-+}OF{SHIFT--}
  188. DIM <stringvar> OF <max char>
  189. DIM <stringarray>(index) OF <max char>
  190.  
  191. OPEN -- open a file
  192. OPEN {SHIFT-+}FILE{SHIFT--} <file#>,<filename>{SHIFT-+},<type>{SHIFT--}
  193.  
  194. OR -- logical OR
  195. <condition> OR <condition>
  196.  
  197. ORD -- integer representing the char
  198. ORD(<string expression>)
  199.  
  200. OTHERWISE -- default for CASE
  201. OTHERWISE
  202.  
  203. OUTPUT -- select output location
  204. SELECT {SHIFT-+}OUTPUT{SHIFT--} <type>
  205.  
  206. PASS -pass string to disk command chanl
  207. PASS <disk command>
  208.  
  209. PEEK -- look at memory
  210. PEEK(<memory address>)
  211.  
  212. POKE -- change memory location
  213. POKE <memory address>,<contents>
  214.  
  215. PRINT -prints items to scrn/printr/file
  216. PRINT {SHIFT-+}FILE <filenum>:{SHIFT--} {SHIFT-+}<items>{SHIFT--}
  217. PRINT {SHIFT-+}FILE <fil#>:{SHIFT--} USING <fmt>:<vars>
  218. (RANDOM file use:{SHIFT-+}FILE <fil#>,<rec#>:{SHIFT--})
  219.  
  220. PROC -- start of multiline procedure
  221. PROC <nam>{SHIFT-+}(<parm>){SHIFT--} {SHIFT-+}EXTERNAL <name>{SHIFT--}
  222. PROC <nam>{SHIFT-+}(<parm>){SHIFT--} {SHIFT-+}CLOSED{SHIFT--}
  223.  
  224. RANDOM -- random access disk file
  225. OPEN FILE <fil#>,<name>,RANDOM <recln>
  226.  
  227. READ -read data from DATA line or file
  228. READ <var list>
  229. READ FILE <file#>{SHIFT-+},<rec#>{SHIFT--}: <var list>
  230. OPEN {SHIFT-+}FILE{SHIFT--} <filenum>,<filename>,READ
  231.  
  232. REF -parm var used in reference in proc
  233. REF <var>
  234.  
  235. RENUM -- renumber program
  236. RENUM {SHIFT-+}<targetstart>{SHIFT--}{SHIFT-+},<increment>{SHIFT--}
  237.  
  238. REPEAT -- start of REPEAT structure
  239. REPEAT
  240.  
  241. RESTORE -- reuse DATA with READ
  242. RESTORE
  243.  
  244. RND -- random number
  245. RND(<num>)
  246. RND(<start num>:<end num>)
  247.  
  248. RUN -- run program now in memory
  249. RUN
  250.  
  251. SAVE -- record program on disk
  252. SAVE <filename>
  253.  
  254. SELECT -- choose output location
  255. SELECT {SHIFT-+}OUTPUT{SHIFT--} <type>
  256.  
  257. SGN -- -1 if neg, 0 if 0, 1 if pos
  258. SGN(<numeric expression>)
  259.  
  260. SIN -- gives sine in radians
  261. SIN(<numeric expression>)
  262.  
  263. SIZE -- memory usage (free memory)
  264. SIZE
  265.  
  266. SQR -- gives square root
  267. SQR(<numeric expression>)
  268.  
  269. STATUS$ -- status of disk channel
  270. STATUS$
  271.  
  272. STEP -incremnt FOR loop var this amount
  273. STEP <numeric expression>
  274.  
  275. STOP -- halt program execution
  276. STOP
  277.  
  278. SYS -give control to assembly language
  279. SYS(<memory address>)
  280.  
  281. TAB -- print spaces up to specified col
  282. TAB(<column number>)
  283.  
  284. TAN -- gives tangent in radians
  285. TAN(<numeric expression>)
  286.  
  287. THEN -- part of IF structure
  288. THEN
  289.  
  290. TO -increment FOR variable start TO end
  291. <start num> TO <end num>
  292.  
  293. TRAP -- disable stop key
  294. TRAP ESC<type>
  295.  
  296. TRUE -- predefined value of 1
  297. TRUE
  298.  
  299. UNIT -- specify unit (device)
  300. OPEN FILE <#>,<n>,UNIT
  301. <dv>{SHIFT-+},<sc>{SHIFT--}{SHIFT-+},<tp>{SHIFT--}
  302.  
  303. UNTIL -- end of REPEAT loop
  304. UNTIL <expression>
  305.  
  306. USING --formatted output (not PET 0.14)
  307. PRINT USING <format>: <var list>
  308.  
  309. WHEN -- choice in CASE structure
  310. WHEN <list of values>
  311.  
  312. WHILE -- start of WHILE structure
  313. WHILE <expression> {SHIFT-+}DO{SHIFT--} {SHIFT-+}<statement>{SHIFT--}
  314.  
  315. WRITE -- write to a file
  316. WRITE FILE <file#>{SHIFT-+},<rec#>{SHIFT--}: <var list>
  317. OPEN {SHIFT-+}FILE{SHIFT--} <filenum>,<filename>,WRITE
  318.  
  319.  
  320. ZONE -- tab increment
  321. ZONE <tab interval>
  322. ZONE
  323.  
  324. TURTLE GRAPHICS CHART    CBM COMAL
  325. -----------------------  ---------
  326. TURTLE CONTROL:
  327. Move forward length      FORWARD
  328. Move backward length     BACK
  329. Home turtle              HOME
  330. Turn turtle left         LEFT
  331. Turn turtle right        RIGHT
  332. Move to a point          SETXY
  333. Turn to specific heading SETHEADING
  334. Make turtle visible      SHOWTURTLE
  335. Make turtle invisible    HIDETURTLE
  336. Pen up off paper         PENUP
  337. Pen down on paper        PENDOWN
  338. Set pen color            PENCOLOR
  339. Number of colors         16
  340. Set size of turtle       TURTLESIZE
  341. Plot a point             PLOT
  342. Print text in graphics   PLOTTEXT
  343.  
  344. SCREEN AND COLOR CONTROL:
  345. Set screen window        FRAME
  346. Clear graphics screen    CLEAR
  347. Set to graphics mode     SETGRAPHIC
  348. Set to text screen       SETTEXT
  349. Set background color     BACKGROUND
  350. Set border color         BORDER
  351. Fill in an area          FILL
  352. Full screen mode         FULLSCREEN
  353. Split screen mode        SPLITSCREEN
  354.  
  355. FUNCTION KEYS RESULTS:
  356. F1                       TEXT SCREEN
  357. F3                       SPLITSCREEN
  358. F5                       FULLSCREEN
  359.  
  360. COMMODORE 64 COMAL COLORS LIST
  361.  
  362. COL  COLOR  CHR$ !  COL  COLOR     CHR$
  363. NUM  NAME        !  NUM  NAME
  364. ---  -----  ---  !  ---  -------   ---
  365.  0   BLACK  144  !   8   ORANGE    129
  366.  1   WHITE  5    !   9   BROWN     149
  367.  2   RED    28   !  10   LT RED    150
  368.  3   CYAN   159  !  11   DK GREY   151
  369.  4   PURPL  156  !  12   MD GREY   152
  370.  5   GREEN  30   !  13   LT GREEN  153
  371.  6   BLUE   31   !  14   LT BLUE   154
  372.  7   YELLW  158  !  15   LT GREY   155
  373.  
  374. SPRITES (version 0.14)
  375.  
  376. DATACOLLISION -test collision with data
  377. DATACOLLISION <sprt#>,<reset cols flg?>
  378.  
  379. DEFINE -set up sprite image for later
  380. DEFINE <sprt definitn#>,<64 byte def$>
  381.  
  382. HIDESPRITE -- turn off specified sprite
  383. HIDESPRITE <sprite number>
  384.  
  385. IDENTIFY -- assign a sprite an image
  386. IDENTIFY <sprite number>,<definition #>
  387. (note: sprite 7 is used for the turtle)
  388.  
  389. PRIORITY -does data priority over sprt
  390. PRIORITY <sprite #>,<data priority?>
  391.  
  392. SPRITEBACK -set 2 multicolor sprt colrs
  393. SPRITEBACK <color1>,<color2>
  394.  
  395. SHOWSPRITE -- turn on specified sprite
  396. SHOWSPRITE <sprite number>
  397.  
  398. SPRITECOLLISION -test sprite collision
  399. SPRITECOLLISION <spr#>,<reset col flg?>
  400.  
  401. SPRITECOLOR -- set color of sprite
  402. SPRITECOLOR <sprite #>,<color number>
  403.  
  404. SPRITEPOS -- position sprite at x,y loc
  405. SPRITEPOS <sprt#>,<x coord>,<y coord>
  406.  
  407. SPRITESIZE -sprite size (expand or not)
  408. SPRITESIZE <spr#>,<y xpand?>,<x xpand?>
  409.  
  410. HIGH RES and TURTLE graphics COMAL 0.14
  411.  
  412. BACK -- move turtle backwards
  413. BACK <length>
  414.  
  415. BACKGROUND -set screen background color
  416. BACKGROUND <color number>
  417.  
  418. BORDER -- set the screen border color
  419. BORDER <color number>
  420.  
  421. CLEAR -clear graphics screen (in frame)
  422. CLEARSCREEN
  423.  
  424. DRAWTO -- draw line from current point
  425. DRAWTO <x coordinate>,<y coordinate>
  426.  
  427. FILL -- fill in area with current color
  428. FILL <x coordinate>,<y coordinate>
  429.  
  430. FORWARD -- move turtle forward
  431. FORWARD <length>
  432.  
  433. FRAME -- set up a screen window
  434. FRAME <x0>,<x1>,<y0>,<y1>
  435.  
  436. FULLSCREEN -- fullscreen graphics (f5)
  437. FULLSCREEN
  438.  
  439. HIDETURTLE -- make the turtle invisible
  440. HIDETURTLE
  441.  
  442. HOME -put turtle in its home position
  443. HOME
  444.  
  445. LEFT -- turn turtle left
  446. LEFT <degrees>
  447.  
  448. MOVETO -move to point without line
  449. MOVETO <x coordinate>,<y coordinate>
  450.  
  451. PENCOLOR -set current turtle pen color
  452. PENCOLOR <color number>
  453.  
  454. PENDOWN -put pen down-turtle draws line
  455. PENDOWN
  456.  
  457. PENUP -pick up pen-no turtle lines
  458. PENUP
  459.  
  460. PLOT -- plot a point in current color
  461. PLOT <x coordinate>,<y coordinate>
  462.  
  463. PLOTTEXT -print text on graphics screen
  464. PLOTTEXT <x coord>,<y coord>,<text$>
  465.  
  466. RIGHT -- turn turtle right
  467. RIGHT <degrees>
  468.  
  469. SETGRAPHIC -- turn on graphics screen
  470. SETGRAPHIC {SHIFT-+}<type>{SHIFT--}
  471.  
  472. SETHEADING -- set turtle heading
  473. SETHEADING <degree>
  474.  
  475. SETTEXT -- turn on text screen (f1)
  476. SETTEXT
  477.  
  478. SETXY -- set turtle x and y coordinates
  479. SETXY <x coordinate>,<y coordinate>
  480.  
  481. SHOWTURTLE -- make turtle visible
  482. SHOWTURTLE
  483.  
  484. SPLITSCREEN -2 line text above graphics
  485. SPLITSCREEN
  486.  
  487. TURTLESIZE -- set turtle size (0 to 10)
  488. TURTLESIZE <size>
  489.  
  490.