home *** CD-ROM | disk | FTP | other *** search
/ Archive Magazine 1997 / ARCHIVE_97.iso / text / hints / all_down next >
Text File  |  1997-08-11  |  2MB  |  44,216 lines

  1. Hints and Tips
  2. 10.12
  3. 2-D scrolling - (This is a hint that keeps resurfacing. If you know
  4. about it, fine, but lots of people seem to miss out on it. Ed.) The
  5. quickest means of scrolling a window is to use the scroll bars
  6. (although, of course, you need to have the öInstant draggingò
  7. selected in the Window Manager configuration), but what many people
  8. donæt realise is that you can use <adjust> to scroll up/down and
  9. left/right at the same time. So, just click and hold the adjust
  10. button on either the vertical or the horizontal scroll bar and move
  11. the mouse, and this will scroll the whole window in any direction you
  12. like.
  13. 10.12
  14. Mohsen Alshayef, mohsen@qatar.net.qa
  15. 10.12
  16. Archive CD-ROM - The Archive CD, contains the files of all the
  17. Archive magazines, right back to Volume 4 Issue 5 - thatæs the good
  18. news. The bad news (for some people) is that they are in Impression
  19. format, but Ovation owners, donæt despair! First of all, the actual
  20. words are there on the CD in text format, and you can search through
  21. these using the text-search application provided on the CD.
  22. 10.12
  23. Also, and this is my main point, the Impression files are in
  24. Édirectory formatæ. In other words, each magazine is not a single
  25. file but a directory. So, shift-double-click on one and youæll see
  26. something like:
  27. 10.12
  28. Then, in the CHAPTER2 directory you will find all the pictures that
  29. go with the text. They are in Draw or Artworks format, the sprites
  30. being embedded in drawfiles for some reason best known to the authors
  31. of Impression. If you want to view the Artworks files, thereæs a
  32. freeware Artworks file reader around.
  33. 10.12
  34. (Iæve put a copy of the Artworks reader on the 1997 Archive CD which
  35. should be available shortly. Ed.)
  36. 10.12
  37. Elaine Kemp, Kings Norton
  38. 10.12
  39. Artworks speedy rotated text - Rotated text in Artworks files often
  40. takes a long while to draw, whereas rotated text in Draw is often
  41. much faster. The reason Draw whizzes along while Artworks ponders is
  42. because Draw uses the standard font system and font cache while
  43. Artworks uses its own FontDraw module. By default, the FontDraw cache
  44. is quite small, so it must laboriously draw every character as though
  45. it were drawing it for the first time. You can make it much faster by
  46. using these two simple commands:
  47. 10.12
  48. *configure FDCharCache 96K
  49. 10.12
  50. *configure FDMetricCache 32K
  51. 10.12
  52. Of course, you can use larger values if you have a lot of memory, and
  53. you should now find Artworks and Impression display rotated text much
  54. faster.
  55. 10.12
  56. Paul Skirrow, Octopus Systems
  57. 10.12
  58. ÉFile openæ errors - The other day I was reluctantly forced to flick
  59. through the RISC OS 3 manual and came across the *SHUT command. This
  60. is nice and simple; it closes all those files which are Éopenæ on all
  61. filing systems. Therefore, it solves the yucky ÉFile still open from
  62. a previous operationæ error.
  63. 10.12
  64. Itæs a lot better than *BYE, or DISMOUNT from the iconbar filer menu,
  65. since these shut down the directory window, meaning that you lose
  66. sight of your file. *SHUT simply closes open files and lets you
  67. access the file in question.
  68. 10.12
  69. Stewart Brookes, stewart.brookes@kcl.ac.uk
  70. 10.12
  71. Thanks for that, Stewart. I used to use *SCSI then *CLOSE, not
  72. realising that *SHUT works across all filing systems, instead of just
  73. the current one. This is another of those Éobviousæ hints that are
  74. only obvious if you are in the know. For people like me, they are
  75. very helpful. Please keep them coming, folks! Ed.
  76. 10.12
  77. Fresco file downloading - When downloading a large file using Fresco,
  78. it is easy to forget to have a directory ready to save it into.
  79. Fresco pops up a save box but it disappears when you open a
  80. directory, and some people resort to downloading the whole file again.
  81. 10.12
  82. If this save box disappears, just click in the URL line and press
  83. <return> and it will re-appear without fetching the file again. Donæt
  84. click on the reload button because that will re-fetch the file all
  85. over again, making you wait.
  86. 10.12
  87. An even better way to download files is to shift-click on the link to
  88. the file. This opens a save box immediately so you can tell it
  89. wherever you want to put the file before it starts downloading.
  90. 10.12
  91. Paul Skirrow, Octopus Systems
  92. 10.12
  93. Impression funny - (Well, not very funny!) I had real problems
  94. editing the Puzzle Corner this month because each time I tried to
  95. copy and paste it into a standard Archive file, it bombed Impression
  96. totally and repeatably.
  97. 10.12
  98. Anyway, after some messing around I finally managed to track down the
  99. problem. There were two MathGreek styles on the style list, and I
  100. could see that the pasting of the text stopped (and Impression
  101. bombed) at the first occurrence of MathGreek. So I saved the text
  102. with styles (ctrl-f3), and you can see from the excerpt below where
  103. the problem lies. (Iæve changed curly brackets to square.)
  104. 10.12
  105. This factorises as [öItalicò on](r [\178][\153]2[font
  106. MathGreek]f[font] r+1) (r[\178]+ 2r[öMathGreekò on]
  107. [\140][öMathGreekò off][öMathGreekò on][öSubscriptò on]f[öSubscriptò
  108. off][öMathGreekò off]+1)[\160]=[\160]0 [öItalicò off], where etc...
  109. 10.12
  110. As you can see, the first time Colin used MathGreek, he used an
  111. effect and thereafter he decided that he was going to use it a lot,
  112. so he created a style, named öMathGreekò. What he was doing wasnæt
  113. illegal, but Impression just couldnæt cope!
  114. 10.12
  115. I tried it myself on a new document and found that I could get a
  116. similar effect. Impression didnæt bomb out but it certainly failed to
  117. display the line containing the first occurrence of the effect.
  118. 10.12
  119. Moral: When creating a style, never use the name of a font. If Colin
  120. had called the style öMaths bitsò or some such (spaces are allowed),
  121. all would have been OK.
  122. 10.12
  123. (Donæt you just love Impression sometimes?!)
  124. 10.12
  125. P.S. I donæt believe it! Iæve just tried to paste Colinæs article
  126. into the magazine itself and it has bombed again!!! This time, I
  127. traced it to the dingbat I use at the end of each article. I have a
  128. text file on my pinboard that I drop in which just says [font
  129. Dingbats]u[font] - but with curly brackets, of course - where the öuò
  130. turns into u. I have now created a style called End Dot which just
  131. changes the font to dingbat, so my text file now says [öEnd Dotò
  132. on]u[öEnd Dotò off] and Colinæs article pastes in perfectly. Hmmm!
  133. 10.12
  134. Ed., paul.NCS@paston.co.uk
  135. 10.12
  136. Lost Impression files - I recently deleted rather a lot of Impression
  137. files (Arghhhh!!!!!). However, using Look Systemsæ Disc Rescue, I
  138. managed to get most of them back. Here are some points to remember
  139. which might save others some hair pulling.
  140. 10.12
  141. 1. Speak to Adrian Look (he is very helpful).
  142. 10.12
  143. 2. Single format files are fairly easy to recover. My version of
  144. !Publisher saves the files starting with the sequence (at the sector
  145. start) of öxV4ò. If you search for this, you also see the filename
  146. nearby.
  147. 10.12
  148. 3. Failing that, all my impression files contain the string öMain
  149. Heading...ò
  150. 10.12
  151. 4. All files seem to end öyV4ò (although this can also be found in
  152. the middle of some files as well, presumably with embedded objects).
  153. 10.12
  154. (I can confirm that öxV4 and öyV4ò are generally applicable pointers
  155. to look for in Impression files. Ed.)
  156. 10.12
  157. Mark Stephens, markee@april.demon.co.uk
  158. 10.12
  159. Sunlight and mice - donæt mix! This is a recurring problem that
  160. catches people out in the summer time. It was last explained in
  161. Archive 7.8 p21, but basically, if direct sunlight falls on your
  162. mouse, it can confuse the optical sensors inside it, resulting in
  163. erratic mouse pointer movement which disappears when you close the
  164. curtains! The solution is to cover the inside top cover of the mouse
  165. with foil, being careful to make sure that it is well stuck and canæt
  166. short out any of the mouseæs delicate parts!
  167. 10.12
  168. Ed., paul.NCS@paston.co.uk
  169. Hints and Tips
  170. 10.11
  171. Control in the classroom - One of the areas most frequently lacking
  172. in schoolsæ IT curriculums is that of Control. A major factor in this
  173. is the cost of buying buffer boxes and the various items of inputs
  174. and outputs that would be connected to them. A high quality buffer
  175. box such as the Commotion Serial Control Box costs around ú240, so if
  176. you wanted, say, ten of them for use with a class in a high school,
  177. you are looking at around ú2,500 cost straightaway. This may well be
  178. worthwhile if the school can afford it, but what are the other lower
  179. cost options?
  180. 10.11
  181. You could go for on-screen simulation using software such as Focus
  182. ITæs excellent Visual Control Learning package - a good example of
  183. recent innovation for Acorn computers only.
  184. 10.11
  185. However, many schools already have the old green Deltronics buffer
  186. boxes dating back to use with the BBC Micro. Indeed, one of the last
  187. uses that Beebs are being put to locally is their use with these
  188. boxes. You can, of course, use these boxes with later Acorn A series
  189. machines but that involves buying a user port for each machine they
  190. are to be used on. At around ú40 a time, thatæs up to ú400 for ten
  191. machines, and you still need to buy software to run them.
  192. 10.11
  193. Fortunately, Design IT have come up with a more affordable solution.
  194. They have a modification available to run these boxes from the
  195. parallel port. You are limited to five inputs from a machine with a
  196. bi-directional parallel port, i.e. A30x0 or later, or two inputs from
  197. an older machine with a uni-directional parallel port, but five
  198. inputs should be enough for many useful applications. The
  199. modification involves:
  200. 10.11
  201. a) buying a special parallel port lead with a modification kit, at
  202. around ú12 per machine. Not all of these boxes use the same type of
  203. lead; there are two variations, but both are catered for, though this
  204. should be specified on your order. The two types are (i) those that
  205. connect to a D connector on the back of the box and (ii) those with
  206. an extension type of lead that connects to an existing ribbon cable
  207. coming out from inside the box.
  208. 10.11
  209. b) buying a site licence to drive it, at ú40 for a primary school and
  210. ú80 for a secondary school.
  211. 10.11
  212. The modification is a bit fiddly to fit but anyone who is able to
  213. solder three connections, cut a track and change two small chips
  214. (only necessary for some of the boxes) should be able to do it. If
  215. you get stuck, there is friendly help at the end of the phone line.
  216. It is the sort of job that may take a non-technician an hour or so
  217. the first time, while you work out exactly what has to be done, but
  218. after that it should only be a few minutes per box if you are
  219. reasonably skilled at soldering. Thus you can have ten machines up
  220. and running for around ú200 or twenty for ú320 - a considerable
  221. saving, particularly considering that this includes the software to
  222. run it on a site licence basis. Incidentally, the modification does
  223. not stop the buffer box still being used on a BBC as and when
  224. required.
  225. 10.11
  226. The software, called DelTron, portrays the buffer box in a window
  227. (see above) with indication as to which inputs and/or outputs are
  228. switched on. It allows you to control it via a Logo type language of
  229. procedures in a manner akin to others of the same kind. I have found
  230. that it is vital to turn the softwareæs Éauto senseæ (of the box)
  231. feature off in order to get it to work, but that is easily done.
  232. 10.11
  233. A well thought out and economical idea to Érecycleæ these boxes and
  234. make them Égreenæ in more ways than one.
  235. 10.11
  236. Mike Battersby, Kingston Schoolsæ IT Unit
  237. 10.11
  238. Outline fonts in windows - Getting outline fonts in RISC OS windows
  239. is a rarely covered topic in even the best programming courses and
  240. books and, without the PRMs or a lot of time to experiment in, it is
  241. nearly impossible to utilise this feature. Most books just ignore it
  242. or include an obscure little note about it.
  243. 10.11
  244. Since the arrival of RISC OS 3.6, outline fonts can be put all around
  245. the desktop simply by changing the configuration. So why do you need
  246. them any more?
  247. 10.11
  248. I find that putting outline fonts into windows improves the
  249. appearance (and sometimes usability) of a program substantially. In
  250. days gone by, they were not included in commercial programs because
  251. of the time it took to display them. However, in the era of the Risc
  252. PC (and the A7000+), fonts can be displayed very easily and quickly.
  253. 10.11
  254. To make things a lot simpler (for you and me), I shall assume that a
  255. template editor is being used and windows are being loaded from
  256. templates. I will also put the code in Basic, although the principles
  257. can be ported to C or machine code without too much hassle.
  258. 10.11
  259. Firstly, a simple template needs to be created. Any editor can be
  260. used, but do not use very old versions of these programs as they will
  261. probably be geared to RISC OS 2. I recommend TemplEd above all others.
  262. 10.11
  263. Design a simple window like the one in the diagram. To be safe, only
  264. use fonts that are built into the computeræs ROM (Trinity, Corpus and
  265. Homerton). Make a note of all the font names (in full) and sizes that
  266. appear in all of your icons that are outline. Please note that to
  267. have an outline font in an icon, the icon must be indirected. Then,
  268. save your template as usual in your program directory.
  269. 10.11
  270. (This is a ludicrous example of a template which does not conform at
  271. all to the RISC OS Style Guide but it illustrates the principle quite
  272. well.)
  273. 10.11
  274. To load a template which has outline fonts in it, you use the same
  275. SWI call but you need a 256 byte memory block containing all the
  276. necessary font handles for your windows. This is done by the
  277. following routine. It should be called before the template loading
  278. routine.
  279. 10.11
  280. DEFPROCget_fonts
  281. 10.11
  282. DIM font% 256 : REM Space for the font
  283. 10.11
  284.  handles
  285. 10.11
  286. READ loops%
  287. 10.11
  288. FOR pass%=1 TO loops%
  289. 10.11
  290. offset%=(pass%-1)*4
  291. 10.11
  292. READ name$
  293. 10.11
  294. READ x%
  295. 10.11
  296. READ y%
  297. 10.11
  298. SYS öFont_FindFontò,,name$,x%*16,y%*16
  299. 10.11
  300.  TO font%!offset%
  301. 10.11
  302. NEXT pass%
  303. 10.11
  304. DATA 3 :REM Number of fonts to reserve
  305. 10.11
  306. DATA öHomerton.Medium.Italicò,12,12 :
  307. 10.11
  308.  REM Font name,x size,y size
  309. 10.11
  310. DATA öTrinity.Mediumò,16,16
  311. 10.11
  312. DATA öCorpus.Boldò,42,42
  313. 10.11
  314. ENDPROC
  315. 10.11
  316. The above routine is very self-explanatory. You can change the font
  317. handles which are obtained by altering the DATA statements at the end
  318. of the routine.
  319. 10.11
  320. Once the above routine has been executed, call this loading routine
  321. instead of your standard one:
  322. 10.11
  323. DEFFNload_template_window(temp_path$
  324. 10.11
  325. ,w_name$,font%)
  326. 10.11
  327. SYS öWimp_OpenTemplateò,,temp_path$
  328. 10.11
  329. SYS öWimp_LoadTemplateò,,m_space%,
  330. 10.11
  331. space%,spaceend%,font%,w_name$
  332. 10.11
  333. ,0 TO ,,space%,,,,there%
  334. 10.11
  335. SYS öWimp_CloseTemplateò
  336. 10.11
  337. IF there% THEN
  338. 10.11
  339. SYS öWimp_CreateWindowò,,m_space% TO
  340. 10.11
  341.  handle%
  342. 10.11
  343. ELSE
  344. 10.11
  345. ERROR 0,öWindow template not found!ò
  346. 10.11
  347. ENDIF
  348. 10.11
  349. =handle%
  350. 10.11
  351. Repeated calls should load all the necessary windows from the
  352. template file. The windows will behave as normal when created.
  353. 10.11
  354. The Éload_templateæ routine takes a number of parameters. These are:
  355. 10.11
  356. temp_path$ = String pathname of template
  357. 10.11
  358. w_name$ = Name of window to be loaded from template
  359. 10.11
  360. font% = Pointer to font table (defined in previous routine)
  361. 10.11
  362. Beware! There are also other variables that need to be defined
  363. earlier in the program! Firstly, you must have a general usage memory
  364. area called m_space%. Secondly, you need a space for indirected icons
  365. called space%. The end byte of this memory block must be in a
  366. variable called spaceend%. This can be done by a few lines of code:
  367. 10.11
  368. DIM m_space% 1024 (whatever size is necessary)
  369. 10.11
  370. blksize%=800 (Again, the size of the block has to
  371. 10.11
  372.  fit the template)
  373. 10.11
  374. DIM space% blksize%
  375. 10.11
  376. spaceend%=space%+blksize%
  377. 10.11
  378. I hope this has helped some programmers to understand how to get
  379. outline fonts in windows. If anyone has done the Alan Senior WIMP
  380. course, or an equivalent, and wants to go further into WIMP
  381. programming, it would be advisable to buy the PRMs. These are very
  382. expensive (I bought mine from NCS for ú105) but have got everything
  383. in them. They are very obscure, though, and you need a lot of time
  384. free to read through and understand them.
  385. 10.11
  386. Artemis Entreri, Waterlooville
  387. 10.11
  388. Using Termite Internet with Cable Internet - Recently, the cable
  389. companies have introduced an offer to schools for Internet access via
  390. the Cable Internet service. The annual price includes access,
  391. software and unlimited calls to the point of presence phone number,
  392. thus allowing schools to budget their yearly internet cost without
  393. having to worry about unknown size of telephone bills. It should also
  394. allow schools to provide access without the worry of trying to
  395. administer a system which controls phone usage. The cost is very
  396. reasonable, being ú100 for schools with less than 250 pupils, ú250
  397. for those with 250 to 500 pupils and ú500 for those with 500 pupils
  398. or more.
  399. 10.11
  400. Of course, Cable Internet only provide software for Windows or
  401. Macs(!). I have been evaluating the service and, as part of that, I
  402. wanted to check whether it would work OK with Acorn software for
  403. schools who wish to run it on Acorns. The good news is that it
  404. appears to work fine. In fact, would you believe that, excluding the
  405. time it took to get the relevant pieces of information from the Cable
  406. Internet help line, it took me only about half an hour to have it up
  407. and running using Termite Internet from Doggysoft, whereas it took me
  408. over two hours to get the supplied Windows 95 software running!!
  409. 10.11
  410. This was made possible courtesy of Termiteæs clever öCreate Script
  411. Fileò option on its main startup panel which asks for the basic data
  412. needed (easily available from the Cable Internet help line - just ask
  413. them for each bit as Termite prompts) and then creates an appropriate
  414. script file and adds Cable Internet, or whichever provider you are
  415. creating a file for, to the list of providers in the configuration
  416. options. After a month of testing, it has logged on successfully
  417. first time every time bar none!
  418. 10.11
  419. On request, Cable Internet also allows 5Mb of web space. Once asked
  420. for, a user name (probably the email alias) and password allow you to
  421. ftp (file transfer protocol) web pages and graphics etc, into your
  422. personal web space. The Windows 95 software provided only allows you
  423. to transfer into the root directory, so you have to download an
  424. additional ftp utility to do more than that. However, Termite has ftp
  425. built in and you can upload using all the drag and drop facilities of
  426. RISC OS, so an entire web site of multiple pages and directories can
  427. be selected and dragged into the web space directory with a single
  428. öSelect Allò and drag and drop. This all works fine, as do deleting,
  429. renaming etc of the files uploaded. A directory can only be deleted
  430. on the Cable web space if it is empty, though, so its contents need
  431. to be deleted first.
  432. 10.11
  433. Itæs true that Termiteæs web browser needs updating, though I am told
  434. that that is in progress and will happen ösoonò, but the fact that it
  435. is easier to set up and use than Cable Internetæs own PC software
  436. says something! For schools wanting to take advantage of the Cable
  437. Internet offer, and use it on Acorns, this is a way I would
  438. definitely recommend. I have provided NCS with the files needed for
  439. use with Termite so that others neednæt create a script file, just
  440. replace two default files with the ones provided - a half a minute
  441. task. Then all you need do is choose Cable Internet as the service
  442. provider, choose the appropriate local phone number, enter user name
  443. and password, and you are off!
  444. 10.11
  445. Mike Battersby, Kingston Schoolsæ IT Unit
  446. 10.11
  447. Hints and Tips
  448. 10.10
  449. ANT Suite Fresco tip Ö If you put a text file called Runables inside
  450. !Fresco, containing a list of filetypes as hexadecimal digits (upper
  451. or lower case), then when a link to a file having one of these types
  452. is clicked on, the file will be fetched and filer_run. Here is my
  453. Runables file:
  454. 10.10
  455. # See (a homebaked hypertext system)
  456. 10.10
  457.  0a4
  458. 10.10
  459. # MS Word 6 or 7
  460. 10.10
  461.  ae6
  462. 10.10
  463. # drawfile
  464. 10.10
  465.  aff
  466. 10.10
  467. # DVI file
  468. 10.10
  469.  ce4
  470. 10.10
  471. # Techwriter
  472. 10.10
  473.  d01
  474. 10.10
  475. Fresco appears not to mind initial spaces or comment lines. In this
  476. way, Fresco could be used for hypertext Ö say within teaching (öif
  477. you want to see the proof click hereò). Also, we can use web pages
  478. with links to DVI files. This provides a mechanism which is platform
  479. independent as far as the student or the person creating the material
  480. is concerned.
  481. 10.10
  482. Gavin Wraith, gavin@wraith.u-net.com
  483. 10.10
  484. Magazine storage öGreen Styleò Ö Two similarly praiseworthy tips this
  485. month in the magazine storage saga...
  486. 10.10
  487. (1) Steve Drain (Archive 10.9) recommends IKEAæs PENG A4 racks cut
  488. down @ ú3 for 8. Thanks for the suggestion, but I think these, and
  489. all previous suggestions, are money down the Drain (oops!). In
  490. classic Blue Peter style, here are some Iámade earlier...
  491. 10.10
  492. For breakfast we eat Kelloggæs Bran Flakes, 750 gram size packet.
  493. Once all the flakes are eaten, we recycle the empty boxes for
  494. magazine storage, by cutting them down to about 20cm and then making
  495. a neat V¡cut in one of the short sides for ease of access. These
  496. recycled boxes will easily hold a yearæs supply of Archive at no cost
  497. whatever. You can either leave them plain or, as an added luxury,
  498. paint them with poster paints or cover them with old wallpaper
  499. samples.
  500. 10.10
  501. Derek Banks, d.e.banks@argonet.co.uk
  502. 10.10
  503. (2) Further to the saga of A5 magazine storage Ö try Tesco! Go to the
  504. check out counters near the wine department. There you will find
  505. small empty boxes which once contained six bottles of wine. There are
  506. many different sizes, and with careful measurement itáis possible to
  507. find an exact fit for A5 magazines. Thenáuse a sharp knife to trim
  508. the top. At the moment, I am using Tesco Bordeaux Blanc Semillon.
  509. Risc User is somewhat harder to accommodate. Tesco Napoleon Brandy is
  510. just too large for a snug fit, so I must take a copy with me on my
  511. next visit to town. Hope this may be of interest to readers.
  512. 10.10
  513. Philip Prior <philipprior@argonet.co.uk>
  514. 10.10
  515. RND, ÖTIME and TIME$ Ö The usual way to make Basic produce a
  516. reasonably random number is to seed the random number generator with
  517. the value of TIME using lines like:
  518. 10.10
  519. R%=RND(ÖTIME)
  520. 10.10
  521. var%=RND(whatever%)
  522. 10.10
  523. This assumes that TIME has been ticking for a reasonably random
  524. number of centiseconds since you switched on. However, I am not sure
  525. if it works in a program called from the boot sequence, as the number
  526. of centiseconds from start-up at that point could always be the same.
  527. This may seem unlikely, but it might explain something that produced
  528. a certain amount of head-scratching for me. I wanted to choose at
  529. random between two screen savers at start-up, and wrote a small Basic
  530. program using lines like those above, but this always seemed to get
  531. the same saver, so perhaps I was always getting the same seed for the
  532. random number generator.
  533. 10.10
  534. Another way of doing it more randomly is to extract one of the
  535. components of TIME$. This reads the real-time clock, and returns a
  536. string along the lines of öSat,17 May 1997.15:05:14ò. You can then
  537. extract, say, the seconds component of this using M%=VAL(MID$(T$,23,
  538. 2)), and then go on to R%=RND(ÖM%). This does give me a randomly
  539. chosen screen saver!
  540. 10.10
  541. Peter Young <pnyoung@argonet.co.uk>
  542. 10.10
  543. StrongED abbreviations Ö Iæve been getting frustrated because of the
  544. difference between the abbreviation systems of StrongED and
  545. Impression. On the latter, for example, I type ösw ò and up pops the
  546. word ösoftware ò. On StrongED, Iáhave to type ö`swò Ö well, I used
  547. to, but Iæve discovered a better way.
  548. 10.10
  549. The trouble was, Iæd be using StrongED and type öswáò, realise that
  550. Iæd got the wrong abbreviation system and have to delete it all and
  551. start again. Not any more! I suddenly realised that StrongED can cope
  552. with any key combination for an abbreviation. All youæve got to do is
  553. make sure you donæt use a combination that might appear in the middle
  554. of a word somewhere else. So all my abbreviations now take the form
  555. of ösw#ò and so, if I mistakenly type ösw ò, all I do is delete the
  556. space and type a ö#ò, which is much less frustrating.
  557. 10.10
  558. Ed. <paul.NCS@paston.co.uk>
  559. 10.10
  560. Zap and Basic Ö With reference to the comments in Archive 10.7 p23,
  561. there is an easy way to avoid the space and token troubles: use the
  562. colours!
  563. 10.10
  564. Set Background1 on Display> Colours> to colour 4 (default 7) and you
  565. can see every space. Typing a space elsewhere on a line with trailing
  566. spaces removes them all.
  567. 10.10
  568. Secondly, set Tokenised on Display> Colours> to colour 2 (default 0)
  569. and you can see if a keyword is tokenised or plain ASCII. This is
  570. especially important when a trailing space is needed, as for RETURN.
  571. Omitting a space converts the token immediately back to text Ö very
  572. WYSIWYG!
  573. 10.10
  574. Donæt forget to untick the All Modes in the Colours submenu before
  575. any change is made, and also when saving these options. You only have
  576. to count the number yourself in the 0-15 colour-palette. The Colour
  577. Picker also allows you to use a colour ╜ (3átimes 93.7%), a warm
  578. white or soft grey, which Iáuse as background in text windows,
  579. together with foreground 8. It also exists in a 16 colour screen mode.
  580. 10.10
  581. Another easy way to convert Basic to plain text is <shift-copy> (now
  582. <shift-end>) or from the menu ÉFile> Print> Dumpæ. Next, you only
  583. need to select the whole text and Indent Ö11 to remove the line
  584. numbers. It is also useful to make a separate and independent copy of
  585. a text window without saving.
  586. 10.10
  587. To avoid problems in copying or moving blocks, click <select> after
  588. the text on the preceding line and click <adjust> after the text on
  589. the last line. You can now place the cursor elsewhere, after some
  590. text on a line, even on the last numbered line, and execute the
  591. operation. Renumber to avoid backwards-errors. It is now ready to
  592. save without any complaints.
  593. 10.10
  594. Ed van der Meulen, Nuenen, Netherlands.
  595. 10.10
  596. Ed has also sent us some other useful bits and pieces which are on
  597. the monthly program disc.
  598. 10.10
  599. !Scrn is perhaps a somewhat unusual way of programming, but it is an
  600. easy way for all sorts of toggles.
  601. 10.10
  602. !caSA (Cache on/off) has a slightly modified construction to avoid a
  603. little odd behaviour.
  604. 10.10
  605. !Tumble (on SA CD-ROM) has the same bugs relating to its use on
  606. machines with 1 Mb VRAM. Itáis cured by a preceding ÉXæ in all the
  607. SYS commands. All the changes are given in the !Changes-file inside
  608. for DIY. It now tumbles on a clear screen with 1 Mb VRAM and 1500Kb
  609. slotsize.
  610. 10.10
  611. Iiyama17T is a MDF-file for the 8617T-monitor, suitable for 1 Mb
  612. VRAM. I have cured nearly all modes, so all old modes, except 16, 17,
  613. 23 and 24, can now be called by number. And the circles are once
  614. again, as in the early days, round!
  615. 10.10
  616. Thanks, Ed. Ed(!)
  617. Hints and Tips
  618. 10.9
  619. Address list editing Ö I love playing with text, trying to manipulate
  620. it using a combination of packages Ö usually Edit, StrongED and
  621. PipeDream Ö to achieve certain ends. If I had time, Iæd write an
  622. article about it, but as an illustration of the sort of thing I mean,
  623. hereæs an example of what can be achieved.
  624. 10.9
  625. The problem: I had 8,000 addresses of various lengths Ö up to nine or
  626. ten lines which had to be printed onto continuous label stationery, i.
  627. e. with each label starting at exactly nine-line intervals, so no
  628. label had to be longer than eight lines of text.
  629. 10.9
  630. The solution: This consisted of a number of separate tasks:
  631. 10.9
  632. 1) make each address a single line of text
  633. 10.9
  634. 2) sort out the over-long addresses and shorten them
  635. 10.9
  636. 3) make every address exactly eight lines
  637. 10.9
  638. 4) put each address back into multiple lines of text
  639. 10.9
  640. 1, 2 and 4 are easy enough, but I first thought that the only way to
  641. cope with different lengths of label was to write a Basic program,
  642. but then I suddenly realised how to do it. Anyway, hereæs the full
  643. recipe:
  644. 10.9
  645. 1) In Edit (because I find StrongED a little slow when doing S&R on
  646. very large files Ö sorry Guttorm!), S&R all double returns (\n\n)
  647. into xzxz, change all returns into tabs (\x09), and change all xzxz
  648. into single returns.
  649. 10.9
  650. 2) Drop the resulting file into PipeDream. The number of columns is
  651. then the number of lines of the longest address. So if the last
  652. column is j, sort the whole text on column j, with a secondary sort
  653. on column i. This will bring all the too-long lines to the top of the
  654. file. Now drop the file back out into Edit or StrongED and
  655. concatenate (good word, that!) parts of the over-long addresses so
  656. that they each only have eight lines max.
  657. 10.9
  658. 3) Drag the file back now into PipeDream and check that no lines
  659. spill over into column i. Check also that the addresses that fit all
  660. eight columns are at the top of the file. Go to the first address
  661. that does not extend into column h and enter öxzxzò into the box in
  662. column h. Copy this box down to the end of the file. Drop it back
  663. into Edit and use S&R to remove all occurrences of xzxz, and all
  664. addresses now have exactly eight lines!
  665. 10.9
  666. 4) Continuing in Edit, use S&R to change all returns (\n) into xzxz,
  667. then all tabs (\x09) into returns (\n) and finally all xzxz into
  668. double returns (\n\n).
  669. 10.9
  670. If you want to do a final check to see that all the addresses start
  671. at exactly 9-line intervals, drop the text into StrongED (youæll see
  672. why in a minute!) and open up the height of the window to exactly a
  673. whole number multiple of nine lines of text. A few clicks inside the
  674. scroll bar, to move down a screen at a time, will show if it is
  675. creeping up or creeping down each click. If it is exactly right (and
  676. this is easier to achieve in a lower resolution screen mode), you can
  677. click and hold inside the scroll bar and it will auto-repeat a
  678. screenful at a time, right to the end of the file. (Edit doesnæt auto-
  679. repeat mouse clicks, so 8,000 addresses at eight addresses per click
  680. = 1,000 clicks = RSI in my mouse-finger!)
  681. 10.9
  682. (Oh, Iæve just thought Ö you could use Edit because the <page-down>
  683. key has the same effect, and that does auto-repeat!)
  684. 10.9
  685. The challenge: If you have a text editing job to do and would like me
  686. to have a go at it, do get in touch. (a) I enjoy this kind of
  687. challenge and (b) the solution, like the one above, might help others
  688. in doing their text-editing jobs.
  689. 10.9
  690. (If you want more help on this sort of thing, Jim Notttingham did an
  691. excellent series on text editing in issues 8.3p63, 8.4p43, 8.5p15, 8.
  692. 8p64 and 9.1p57. Gosh, was it that long ago?!)
  693. 10.9
  694. Ed. <paul.NCS@paston.co.uk>
  695. 10.9
  696. Background printing Ö I have had, for some time, two Printer icons on
  697. the iconbar. One is set up to print to a file Ö the one that is
  698. always selected Ö and the other is set up to print to the printer.
  699. 10.9
  700. I used to print to a file by default, but then I had to look around
  701. for the printfile, to drag it to the other printer icon, in order to
  702. print in the background.
  703. 10.9
  704. Now I have the printfile stuck to the backdrop near the Éprint to
  705. printeræ icon, so dragging the printfile to the printer icon is now
  706. the work of a moment! Obvious really Ö but only if the idea happens
  707. to occur to you. (Or if you read it in Archive! Thanks for that,
  708. Barry Ö so come on, folk, send in the Éobviousæ tricks that save you
  709. time. Ed.)
  710. 10.9
  711. Barry Allen <barrya@dean.nwnet.co.uk>
  712. 10.9
  713. Exiting from CASE...ENDCASE Ö The CASE...OF..WHEN..OTHERWISE...
  714. ENDCASE construct, introduced in version 1.04 of Basic, provides a
  715. very powerful means of writing structured programs. The CASE
  716. construct consists of a number of WHEN statements followed by one or
  717. more values or expressions to be matched. Whenever the result of the
  718. CASE expression matches one of the values listed after the WHEN, all
  719. statements following this WHEN are executed, down to the next WHEN,
  720. OTHERWISE or ENDCASE. The Basic interpreter then skips to the
  721. statement following the ENDCASE, and continues with the rest of the
  722. program. For this reason, the WHEN, OTHERWISE and ENDCASE keywords
  723. must each start at the beginning of a line.
  724. 10.9
  725. So far, I have described the normal use of the CASE...ENDCASE
  726. construct. However, there are situations where the WHEN part consists
  727. of many statements, mostly occupying separate lines. In such cases,
  728. it is possible that other constructs such as IF...ENDIF or REPEAT...
  729. UNTIL are used inside a WHEN part, and a means to exit from the WHEN
  730. construct is required, so that the program continues after the
  731. ENDCASE statement.
  732. 10.9
  733. Basic provides a means to exit from a CASE...ENDCASE construct using
  734. the keyword WHEN.
  735. 10.9
  736. Here is an example:
  737. 10.9
  738. 10 check%=7
  739. 10.9
  740. 20 test% =0
  741. 10.9
  742. 30
  743. 10.9
  744. 40 CASE test% OF
  745. 10.9
  746. 50 WHEN 0:
  747. 10.9
  748. 60 IF check%=7 THEN PRINT ö1st checkò
  749. 10.9
  750. 70 IF check%=7 THEN PRINT ö2nd checkò
  751. 10.9
  752. 80 IF check%=7 THEN PRINT ö3rd checkò
  753. 10.9
  754. 90 ENDCASE
  755. 10.9
  756. Running the above program will produce the following on the screen:
  757. 10.9
  758. 1st check
  759. 10.9
  760. 2nd check
  761. 10.9
  762. 3rd check
  763. 10.9
  764. All three lines are, of course, printed. If you want to terminate the
  765. WHEN part after the first check (at line 60) and skip lines 70 and
  766. 80, then you replace line 60 with the following:
  767. 10.9
  768. 60 IF check%=7 THEN PRINT ö1st checkò:WHEN
  769. 10.9
  770. 70 IF check%=7 THEN PRINT ö2nd checkò
  771. 10.9
  772. 80 IF check%=7 THEN PRINT ö3rd checkò
  773. 10.9
  774. 90 ENDCASE
  775. 10.9
  776. By adding a WHEN keyword, the Basic interpreter will terminate the
  777. WHEN part and close the ENDCASE construct after line 60 (i.e. the IF
  778. matching part). So, running the program with line 60 changed will
  779. produce the following result:
  780. 10.9
  781. 1st check
  782. 10.9
  783. Lines 70 and 80 will be skipped.
  784. 10.9
  785. The above use of WHEN to close an ENDCASE construct is, to my
  786. knowledge, undocumented although the Basic Reference Manual does
  787. describe or hint at its use. Using the keyword OTHERWISE in place of
  788. WHEN for early exits also seems to give the same results!
  789. 10.9
  790. Mohsen Alshayef <mohsen@qatar.net.qa>
  791. 10.9
  792. Magazine storage Ö I see that Archive storage is still a topic of
  793. concern (10.8 p27). How about cutting down A4 racks? The magazines
  794. fit long-side in (because A5 = half-A4), but you can put them on the
  795. shelf either way. This is particularly useful for wire-bound manuals
  796. that just will not fit a normal A5 box, and a suitable cut provides a
  797. housing for Acorn manuals that otherwise fit too tightly in the
  798. supplied box. You may think cutting down is wasteful, so buy the
  799. cheapest, which I believe are IKEAæs PENG at ú3 for eight. These are
  800. the plainest brown card with no printing, and can also make useful
  801. trays for other odds and ends.
  802. 10.9
  803. Steve Drain <steve.d@virgin.net>
  804. 10.9
  805. Neat screenshots (again) Ö Hereæs another offering spurred by the
  806. comment in Archive 10.7 p20. It is !GrabMenu by Cy Booker and it
  807. allows you to grab menus that are transient. Hereæs an example of
  808. what it can do.
  809. 10.9
  810. Itæs worth reading the !Help file that comes with it as itæs a bit
  811. quirky and not all that intuitive to use.
  812. 10.9
  813. Jim Nottingham <email via NCS>
  814. 10.9
  815. StrongARM speed-up Ö I was particularly interested in the StrongARM
  816. upclocking article (10.8 p19) as I tried this out some months ago and
  817. Iæve sent Paul the various programs, tests and charts that Iæve
  818. compiled which may be of interest to readers. (On the monthly program
  819. disc.) This is also available from the Acorn Cybervillage FTP site
  820. at: 
  821. 10.9
  822. ftp://ftp.cybervillage.co.uk/pub/acorn/info/
  823. 10.9
  824. My StrongARM also runs cool at 287MHz, but it was very slightly flaky
  825. at this speed. However, I think it is more to do with the PC card and
  826. StrongARM not wanting to work together at that speed. (I wasnæt
  827. actually running the PC card, you understand, but it does continue to
  828. operate in an idle mode even when not being used.)
  829. 10.9
  830. Iæd also recommend that people with a PC card and a upclocked
  831. StrongARM use the PCsleep application as this powers down the PC card
  832. and thus reduces the internal temperature of the RiscPC.
  833. 10.9
  834. Stuart Halliday <stuart@quantumsoft.co.uk>
  835. 10.9
  836. On the program disc, Iæve put Stuartæs tests for speed and memory
  837. integrity, plus some things sent in by Tony Hopstaken, who was the
  838. person quoted last month at the end of Robertæs article. Ed.
  839. 10.9
  840. StrongARM speed-up (2) Ö Various people have mentioned the fact that
  841. Robert suggests using a piece of anti-static bag as an insulator, but
  842. the idea of these bags is that the inside surface is slightly
  843. conductive. It would be much better to use simple dry cardboard.
  844. 10.9
  845. A number of other people, like Tony and Stuart, are running
  846. StrongARMs at higher speeds without any extra cooling at all and
  847. donæt seem to be having any problems. However, we cannot, by
  848. definition, know what the long-term effect is, i.e. whether the life
  849. of the chip will be reduced. Still, as Tony says, öAs long as it
  850. lasts until my RiscPC II arrives, I donæt mind!ò
  851. 10.9
  852. Ed. <paul.NCS@paston.co.uk>
  853. Hints and Tips
  854. 10.8
  855. ANT/StrongED Éfeatureæ Ö If you view an email in Marcel by using the
  856. Éload into editoræ icon, and then try to drag and drop some (or all)
  857. of the text from StrongED to another application, it works fine Ö but
  858. only once! If you try it a second time, it fails with öThis item is
  859. locked to stop changes being made to itò from StrongED. Thereafter,
  860. all subsequent attempts drag and drop from StrongED to any other
  861. application will fail with the same error, irrespective of whether
  862. Marcel is involved.
  863. 10.8
  864. I finally discovered the reason for this. When you do a Éload into
  865. editoræ, Marcel creates a Élockedæ file Ö so if you try to edit it,
  866. StrongED tells you öText is write protectedò. (Edit, by the way,
  867. ignores the fact that the file is Élockedæ and lets you edit it
  868. anyway!)
  869. 10.8
  870. Now, if you try to do a drag and drop from a write-protected file,
  871. StrongED lets you do it but it creates a temporary ÉScrapFileæ in the
  872. scrap directory. Then, when it has finished dragging and dropping, it
  873. cannot delete this ScrapFile because it is locked, so it is a
  874. permanent resident in your scrap directory!
  875. 10.8
  876. The only answer seems to be öDonæt use StrongED to drag and drop from
  877. Marcelæs email viewerò. Instead, use the ösave emailò icon, drag the
  878. file to the iconbar, and then drag and drop the bit of text you want
  879. over to the target application. Guttorm Vik has kindly agreed to
  880. change the way StrongED operates in order to avoid this problem.
  881. 10.8
  882. Ed. <paul.NCS@paston.co.uk>
  883. 10.8
  884. (Have you sent Guttorm your ú10 registration yet?!?!?! Thereæs no
  885. excuse Ö here are the details.)
  886. 10.8
  887. ARM multiply Ö In Archive 10.5 p40, Mark Slatter was asking about
  888. information on the multiply instruction on the StrongARM. I have
  889. written an ARM mnemonic database for the Psion/Pocket Book,áwhich may
  890. be of use to him. It can be found onáHensa under the RISCáOS section,
  891. in directory e/e159, or on my home page at www.bleep.demon. co.uk. If
  892. there is interest, I could probably convert it to a common database
  893. format, i.e. CSV or TSV. Iáhope this is useful.
  894. 10.8
  895. Kevin Moore <kevinm@bleep.demon.co.uk>
  896. 10.8
  897. Artworks files in Impression Ö There is a problem with embedding
  898. Artworks files in Impression documents. If the Artworks file contains
  899. rotated Artworks text, Impression doesnæt always display it. After
  900. much head scratching, I tracked this down to a bug in the Impression
  901. Run file: rotated text in Artworks needs the CC FontDraw module which
  902. is supplied with Impression but not loaded until Artworks is loaded.
  903. 10.8
  904. To fix Impression Publisher Plus, load its !Run file into Edit, and
  905. add the line:
  906. 10.8
  907. RMensure FontDraw 1.07 RMLoad <Impress
  908. 10.8
  909.  ionPublisherPlus$Resources>.RMStore .FontDraw
  910. 10.8
  911. (note that this should all be on one line). If you have Publisher or
  912. Style, you will need to change the directory name as appropriate (i.
  913. e. use ImpressionStyle$Resources instead).
  914. 10.8
  915. Paul Skirrow, Octopus Systems <pskirrow@octosys.co.uk>
  916. 10.8
  917. Buffer overflow Ö Iæve got an answer to Alex Cessfordæs Ovation
  918. problem in the Help Column (10.7 p54). The error isnæt caused by
  919. Ovation itself, but by the bit of RISC OS that generates commands
  920. from the !Run Obey file. It happens if it tries to generate a command
  921. line longer than 256 characters.
  922. 10.8
  923. The problem line will contain something like:
  924. 10.8
  925. Run <Obey$Dir>.!RunImage %0
  926. 10.8
  927. where %0 gets expanded into the name of the file to be loaded. If
  928. Ovation Pro has something considerably more complicated than this,
  929. and the file has a long path name (I expect Alexæs file is buried in
  930. a very deep directory structure) this can happen, especially if
  931. Ovation does something like my program, WinEd. It runs one of two
  932. programs depending on whether itæs registered:
  933. 10.8
  934. IfThere <WinEd$Dir>.User Then /<WinEd
  935. 10.8
  936. $Dir>.!RunImage 4096 %0 Else
  937. 10.8
  938. /<WinEd $Dir>.Register.!Run 4096 %0
  939. 10.8
  940. which generates two copies of the file name within the command line.
  941. Incidentally, the / is short for *Run and I provide my own version of
  942. IfThere with WinEd for pre-Risc PCs.
  943. 10.8
  944. If he runs the file from floppy, it has a much shorter path name, and
  945. if Ovation is already loaded, a Wimp message is sent to it, bypassing
  946. the above process. The message still places a limit on the path name
  947. length, because a Wimp message can be no bigger than 256 bytes in
  948. total. Thatæs never been a problem so far, but I wonder if this has
  949. any connection with Acornæs reluctance to remove the 10 character
  950. filename limit?
  951. 10.8
  952. The DDEUtils module provided with Acorn C (and installing a StrongARM
  953. should also automatically put a copy in System) will probably fix the
  954. !Run problem because it contains a patch to allow longer command
  955. lines Ö the C linker often needs very long commands to pass it a list
  956. of files to link.
  957. 10.8
  958. Tony Houghton <tony@tonyh.tcp.co.uk>
  959. 10.8
  960. Creating neat screenshots Ö Your hint on this topic in Archive 10.7
  961. p20 made me wonder if youæve come across !WindowRd. You load it,
  962. position the pointer over the window to be screenshot and press both
  963. shift keys. The result is confined to the window, lifted clear of the
  964. background. It works too with those windows that disappear when the
  965. mouse is moved and clicked away from them.
  966. 10.8
  967. Itæs PD, so itæs freely distributable.
  968. 10.8
  969. Jack Evans <jack@snave.demon.co.uk>
  970. 10.8
  971. Excellent, Jack, thanks for pointing that out. Iæll put a copy on the
  972. monthly program disc. It was actually on the 9.11 program disc, but I
  973. didnæt realise the significance of it then. Thanks too to Jason
  974. Tribbeck for writing it in the first place! If any contributor to
  975. Archive would like a copy, do let me know and Iæll happily send it to
  976. you.
  977. 10.8
  978. Ed. <paul.NCS@paston.co.uk>
  979. 10.8
  980. Credit card numbers Ö If you really want to confuse the öinternet
  981. credit card thiefò, simply place the credit card number in a
  982. drawfile. If you just typed in the number, these figures would be
  983. readable within the ASCII of the resulting file, but if you convert
  984. the text to path (SelectÖ>Convert to path), it is totally unreadable
  985. unless they have an Acorn machine! The resulting file is only about 6
  986. or 8Kb, which is not an unreasonable overhead, and it can be halved
  987. by !Squashæing it.
  988. 10.8
  989. Martijn Claassen, Argos Computers <martijn.argos@pi.net>
  990. 10.8
  991. Hires monitor modefile Ö At a big computer fair, I found an offer I
  992. couldnæt refuse: a three year old Sony VRT16-HA 17 inch monitor,
  993. labelled Digital GDM 1661, guaranteed in working order but without
  994. any documentation. I brought the wonderful beast home but had a hard
  995. time taming it.
  996. 10.8
  997. First problem: this monitor is fed by three coaxial red, green and
  998. blue cables, but where do the sync signals enter? The official
  999. solution is to impose both sync signals on the green video, but this
  1000. involves polarity inversion, and similar hanky-panky, that tends to
  1001. impair the video quality. However, at the back of the monitor (hidden
  1002. behind the hood) I discovered fully prepared entry points for the
  1003. separate H-sync and V¡sync signals. No mixing needed Ö just two extra
  1004. leads to the RiscPC video connector did the job.
  1005. 10.8
  1006. Now the second problem arose: what line frequencies did this monitor
  1007. expect from my Acorn? Itæs definitely not a standard VGA signal Ö
  1008. nothing like it. It took a lot of experimentation to find out that
  1009. this beauty takes no less than 67,000 lines per second Ö and thatæs
  1010. an awful lot more than regular multisyncs need. However, MakeModes
  1011. helped me out and, in due course, I had constructed a complete range
  1012. of modes, from 160╫256 right up to 1600╫1200. The lower resolutions
  1013. could be accomplished by Éoverscanningæ: each picture line is
  1014. followed by one or two empty lines, effectively lowering the scan
  1015. frequency from 68 to 34 or 23 kHz. The result is visible of course,
  1016. but quite acceptable since the picture is steady, not interleaved.
  1017. 10.8
  1018. A more serious drawback comes from the continued high scanning speed.
  1019. A low resolution picture needs less memory, but this memory is
  1020. nevertheless scanned (in bursts) at top speed. With fast video RAM,
  1021. the maximum pixel rate for a RiscPC is 115 million per second, and
  1022. even StrongARM cannot improve on that. This means that hires 32-bit
  1023. colours can only be executed at low resolution modes: 400╫300 or less.
  1024. 10.8
  1025. Above all, this just shows that the Acorn RiscPC is one of those very
  1026. rare machines that can cope with non-standard monitors like this
  1027. super-hi-res Sony/Digital beauty.
  1028. 10.8
  1029. Anybody interested can give it a try Ö I have sent Paul the Modefile
  1030. to put on the monthly disc.
  1031. 10.8
  1032. Paul Porcelijn <Porcel@dds.nl>
  1033. 10.8
  1034. Magazine storage Ö Several readers have written in to say that Neat
  1035. Ideas Office Supplies (0800-500192, faxá0800-600192) do still have
  1036. some A5 magazine boxes. This is true as I bought some myself to try
  1037. them. If you want to buy some yourself, do, but I donæt think they
  1038. are suitable for selling through Archive. First of all, they are
  1039. frustratingly too wide to hold twelve magazines without them flopping
  1040. about, and too narrow to take twenty-four. Also, Neat Ideas only have
  1041. limited stocks left, and the manufacturer is not producing any more
  1042. unless he gets a large enough order to make it worthwhile.
  1043. 10.8
  1044. Another possibility has been suggested by Mr R Drayton of
  1045. Loughborough Ö holders öideal for 12 magazinesò from Office World
  1046. (code 034-736). However, they cost ú2.99 +VAT each and he also warns
  1047. that you should check the quality of them. One had a faulty spring
  1048. clip and had to be returned. Office World are on 0800-500024 and
  1049. offer free next day nationwide delivery for orders over ú50 +VAT, but
  1050. they also have 50 stores around the country.
  1051. 10.8
  1052. Ed.
  1053. 10.8
  1054. StrongARM cache Ö The *Cache command has some undocumented options in
  1055. StrongARM RISCáOS 3.7 machines. The usual syntax is:
  1056. 10.8
  1057. *Cache On | Off
  1058. 10.8
  1059. As StrongARM users will be aware, turning off the cache to load
  1060. applications, can be a rather slow affair Ö but there is a compromise
  1061. solution! You can use any combination of the following switches after
  1062. the *Cache command to enable certain StrongARM features, and disable
  1063. all the others:
  1064. 10.8
  1065. I Ö Enable instruction cache
  1066. 10.8
  1067. D Ö Enable data cache
  1068. 10.8
  1069. W Ö Enable write cache
  1070. 10.8
  1071. For example, *Cache IWD would be identical to *Cache On, and *Cache
  1072. IW gives roughly ARM610 performance and allows most applications that
  1073. donæt like the StrongARM cache to load successfully.
  1074. 10.8
  1075. Chris Coe <chris.norsoft@zetnet.co.uk>
  1076. 10.8
  1077. Zap colour Ö The colouring facility in Zap is one of its most
  1078. attractive features, although some people struggle to set the options
  1079. for the different modes. To set the options for a particular mode,
  1080. you first need to select the mode in the Options->Mode menu, and then
  1081. set the options you want to use for that mode, again using the
  1082. Options menu.
  1083. 10.8
  1084. The most useful options are in the Options->Display menu which allows
  1085. you to set the colours and width for each mode.
  1086. 10.8
  1087. When you have finished entering the options, put the mode back to
  1088. Text (to make it the default) and use the Options->Save Options menu
  1089. to save the new options for future use.
  1090. 10.8
  1091. I have my Text mode set to give light blue text and my task window
  1092. set to give orange text, so I can immediately tell what kind of
  1093. window I am looking at. This can be very useful when there are lots
  1094. of open windows. You can also enable 74 character word-wrap for
  1095. email, and long lines for C code.
  1096. 10.8
  1097. Paul Skirrow, Octopus Systems <pskirrow@octosys.co.uk>
  1098. 10.8
  1099. Zip drives and PC cards Ö I have a little warning about Zip drives
  1100. and PC cards. Basically, do not attempt to access any Zip disc from
  1101. the PC card, then switch back to RISC OS and attempt to access it
  1102. from there, as it can cause all sorts of disc errors and data loss. I
  1103. had my first 100Mb loss a few weeks ago and it was extremely
  1104. frustrating. For absolute safety nowadays, I always obey the
  1105. following rules:
  1106. 10.8
  1107. 1. Dismount any Zip disc before running the !PC application. (This
  1108. ensures that any disc write caches are emptied and the data is
  1109. committed to the disc.)
  1110. 10.8
  1111. 2. Do not access the Zip drive from RISC OS while the PC card is
  1112. running. (You can still have the software loaded if you wish, but
  1113. even just reading from the Zip drive can cause big problems.)
  1114. 10.8
  1115. 3. Use the manual eject button immediately after exiting from the PC
  1116. card to dismount the Zip disc, then reinsert it so that RISC OS
  1117. recognizes any new data that you have stored onto it.
  1118. 10.8
  1119. You could probably get away with less, given some experimentation,
  1120. but I will leave that to others, as my data is really too important
  1121. to risk on these things.
  1122. 10.8
  1123. If your Zip disc does go wrong (and we are, of course, talking about
  1124. DOS formatted discs here), it is much better, in my experience, to
  1125. use Scandisc for DOS to recover the data rather than any other tool
  1126. (including Scandisc for Win 95).
  1127. 10.8
  1128. Chris Coe <chris.norsoft@zetnet.co.uk>
  1129. 10.8
  1130. Hints and Tips
  1131. 10.7
  1132. Abbreviations in PipeDream Ö I run a sales system in PipeDream. One
  1133. of the features is that we can type a short name into the first
  1134. column of the sales sheet. If it finds the short name in the first
  1135. column of the address list, it replaces it by the expanded full name.
  1136. So, if I typed in ÉNCSæ, PipeDream would recognise this and replace
  1137. it with Norwich Computer Services. The formula is:
  1138. 10.7
  1139. if(type(lookup(B195,[Addresses]C$1C$1000,
  1140. [Addresses]C$1C$1000))=öerrorò,set_value(B195,lookup(B195,
  1141. [Addresses]A$1A$1000,[Addresses]C$1C$1000)),öOKò)
  1142. 10.7
  1143. Once the full name has been inserted, the formula returns OK. If the
  1144. short name doesnæt exist, then an Éerroræ is given. This is very
  1145. useful Ö it also shows that the customer exists in the database and
  1146. has been accepted.
  1147. 10.7
  1148. Richard Torrens <4qd@argonet.co.uk>
  1149. 10.7
  1150. Command line made easy Ö In Archive 10.6, öMultitasking Made Easyò,
  1151. David Wild referred to the difficulty of invoking applications from
  1152. the CLI.
  1153. 10.7
  1154. There are two ways to make life easy for CLI users:
  1155. 10.7
  1156. Å put frequently used commands in the Library (this is usually $.
  1157. !Boot.Library for a RiscPC)
  1158. 10.7
  1159. Å use aliases (set Alias$...)
  1160. 10.7
  1161. The latter is used by WIMP apps to record how to do certain actions.
  1162. It can also be used in RISC OS without any additional software to
  1163. make shortcuts for CLI users.
  1164. 10.7
  1165. As I use several systems at work, I often type the Éwrongæ command
  1166. when I change systems. Under RISC OS this is no problem, I simply
  1167. Alias$ the foreign string to the local one. For example:
  1168. 10.7
  1169. set Alias$ls : cat
  1170. 10.7
  1171. so if I have been overdoing the UNIX during the day, it still works.
  1172. Simple!
  1173. 10.7
  1174. Peter Chambers <peter@hightown.demon.co.uk>
  1175. 10.7
  1176. Creating a font table Ö I have created a file using TableMate
  1177. Designer (v4.01a) showing a table of the keyboard ASCII numbers and
  1178. the characters they produce for a given font. The file is included on
  1179. this monthæs disc.
  1180. 10.7
  1181. The default is Trinity.Medium, but by the use of the TableMate style
  1182. options, you can change the font to any other font, and the character
  1183. set will be changed and displayed in the appropriate column.
  1184. 10.7
  1185. To alter the style, first you have to enter the Edit Style option.
  1186. You can do this either through the standard RISC OS menu options, or
  1187. by <ctrl-f6>. From this window, you click on the Name pop-up button,
  1188. and from the options that appear, select FontDemo. Then you repeat
  1189. the process for the Font Name. The list of fonts that appears from
  1190. this menu will depend on the fonts currently installed into your font
  1191. manager. The only part that you have to change manually is the Font
  1192. Name in the Header line.
  1193. 10.7
  1194. At any time, the table can be printed, saved or exported to Draw, CSV
  1195. or even HTML File formats. If you save the table out as a drawfile,
  1196. you can then load it into CCæs ArtWorks where you can create some
  1197. unusual graduated cell backgrounds within the table. However, before
  1198. you do this, make sure you are 100% happy with the rest of the table,
  1199. and save it as a TableMate file because Draw/Artworks files cannot be
  1200. reloaded into Tablemate.
  1201. 10.7
  1202. (If you donæt have Tablemate, you can load the drawfile version Ö
  1203. also on the monthly disc Ö and Select All, StyleÖFont name and select
  1204. the font you want. Thatæs OK unless you want to display something
  1205. like Dingbats Ö the ASCII numbers all turn into Dingbats, so you
  1206. canæt see whatæs what! Ed.)
  1207. 10.7
  1208. Jonathan Frankl, Bradford
  1209. 10.7
  1210. Creating neat screenshots Ö If you are using the screen-grab facility
  1211. in Paint, to capture part of the screen Ö one or more windows Ö then
  1212. you get a much neater result if you open a blank (white) Edit window
  1213. or Impression window, and then arrange the windows to be grabbed in
  1214. front of that. It means that you get a nice clean white border around
  1215. the windows Ö much neater for an illustration in Archive!
  1216. 10.7
  1217. Ed. <paul.NCS@paston.co.uk>
  1218. 10.7
  1219. Deleting text from writable icons (10.6 p.23) I have been using the
  1220. IClear module until recently but found that it interfered with some
  1221. applications such as Impact and a simple banking program (Illegal
  1222. window handle type errors). So now Iæve used Keystroke to give a
  1223. <ctrl-U> when I hold <alt> and click <select> in the icon. I find
  1224. this even easier than IClear.
  1225. 10.7
  1226. (Keystroke is GREAT, but itæs a pig to know how to set things up. I
  1227. tried to set up <alt>-<select> but failed, so I asked Alan to
  1228. explain. Ed.)
  1229. 10.7
  1230. I achieved it with just one operation. I opened a Keystroke window as
  1231. usual and ensured it had the focus. I held down <alt>, and clicked in
  1232. the top RH box with <select>. ÉAltæ blacked out at the top of the
  1233. Keystroke window, and ÉSelectæ showed in the top RH box. I then chose
  1234. ÉInsert textæ and simply put |U in the writable icon labelled Étext:æ
  1235. and pressed <return>... ...and thatæs it Ö just a one-page Keystroke
  1236. macro! Now I simply place the pointer in a writable icon, hold down
  1237. an <alt> key and click <select>. Any text in the icon is immediately
  1238. cleared.
  1239. 10.7
  1240. Alan Gentle <alang@parkside.zynet.co.uk>
  1241. 10.7
  1242. File download with ANT Suite Ö In the January Hints and Tips (10.4
  1243. p29), Paul suggested creating a dummy email in ANTæs Marcel in order
  1244. to fetch deeply-buried files from an FTP site.
  1245. 10.7
  1246. An alternative method is to add the FTP URL to the Hotlist. If the
  1247. FTP client is not loaded, the Hotlist will call upon Fresco in
  1248. preference.
  1249. 10.7
  1250. In addition, any FTP URLs in the Hotlist are also available from the
  1251. list in the FTP client öConnect...ò window. Any extra path
  1252. information supplied in the URL appears in the öDirectoryò field.
  1253. 10.7
  1254. Nick Chalk <nickchalk@enterprise.net>
  1255. 10.7
  1256. Fractions Ö I read Gerald Chandleræs column on fractions (10.6 page
  1257. 75) with great interest, but from a different perspective. I enjoy
  1258. fractions Ö they remind me of a time of quality in engineering, of
  1259. leather aprons and craft workshops. Brilliant! So when I read of the
  1260. problem, I thought that there had to be a better way (or rather
  1261. another way). I thought that most people would not want to be limited
  1262. to a few specialised fonts, so this is my suggestion.
  1263. 10.7
  1264. I think that the way forward is to use one of Geraldæs early
  1265. suggestions, namely that of adjusting the super- and sub-script
  1266. options and to adjust the kerning to give you the characters you
  1267. require.
  1268. 10.7
  1269. The problem, as was quite rightly pointed out, was the vast number of
  1270. keystrokes required to get to the finished result. A lot of
  1271. keystrokes?... ...call for Keystroke!
  1272. 10.7
  1273. I suppose most of you know of Keystroke from Quantum Software. This
  1274. brilliant utility allows you to automate your keyboard so that with a
  1275. touch of a key, dozens of things can happen, menus open, text gets
  1276. typed in, windows moved, almost anything and setting it up is so
  1277. easy. In fact, I have to say that there has not been a repetitive job
  1278. I ever come across that !Keystroke couldnæt handle Ö it has saved me
  1279. hours and hours of work. Enough of the advert, if you donæt have
  1280. Keystroke then get it Ö you wonæt be sorry. Still, if you remain
  1281. unconvinced you can have a bit of it for free! Read on...
  1282. 10.7
  1283. The requirement is to type in a long series of commands to your
  1284. wordprocessor to get your text displayed correctly. In Impression,
  1285. the commands needed to type in one eighth would be something like:
  1286. 10.7
  1287. {Ö50 }1/8
  1288. 10.7
  1289. A space after the final  is important. It produces: 1/8
  1290. 10.7
  1291. Fortunately, Stuart at Quantum (home of !Keystroke) has written a
  1292. little basic program that will effectively Étype inæ any text you
  1293. like. The program (called Sendtext) is distributed with !Keystroke
  1294. (in the !KeyLib) and (with any luck) will be distributed on this
  1295. monthæs magazine disc.
  1296. 10.7
  1297. You could use the program from an obeyfile using something like :
  1298. 10.7
  1299. <Obey$Dir>.Sendtext {Ö50 }1/8
  1300. 10.7
  1301. You could then have obey files for each fraction. Every time you
  1302. wanted a fraction then all youæd need to do would be to double-click
  1303. the obey file.
  1304. 10.7
  1305. Even neater would be to use Dave Thomasæs excellent !Makro. The copy
  1306. Iæve sent to Paul is all set up and ready to go. If you use it, drop
  1307. a line to Dave and tell him how good it is, heæs a good chap and we
  1308. all do better with a bit of encouragement.
  1309. 10.7
  1310. So there you go Ö easy fractions in any font at the click of a
  1311. button. By the way, when I asked Stuart if I could use his software
  1312. like this, he had no hesitation in agreeing. Thanks, Stuart, on
  1313. behalf of all Archive readers!
  1314. 10.7
  1315. Bob Harding, 40 Bremhill, Calne, Wilts. SN11 9LD. <rharding@argonet.
  1316. co.uk>
  1317. 10.7
  1318. Impression background printing Ö To print from Impression in the
  1319. background, save the document, quit it from memory, then drag it onto
  1320. the printer icon on the iconbar.
  1321. 10.7
  1322. Frank Jukes <frank@fjukes.demon.co.uk>
  1323. 10.7
  1324. Impression centring graphics Ö Now I know this may seem obvious to
  1325. some of you, but youæd be amazed at the number of articles I get with
  1326. graphics centred by eye, with spaces. The first essential is to know
  1327. about embedding a graphic in the text. This can be done by dropping
  1328. it in, or by copying it with <ctrl-C> and pasting it with <ctrl-shift-
  1329. F>. So, to centre a graphic, press <return> at the end of the
  1330. paragraph below which the graphic is to go so that the cursor is on a
  1331. blank line between the two paragraphs. Now press <f6>, and the cursor
  1332. will move to the centre of the page or column. Now drop the graphic
  1333. in there, or paste with <ctrl-shift-F>.
  1334. 10.7
  1335. Ed. <paul.NCS@paston.co.uk>
  1336. 10.7
  1337. Midi voice tables Ö In my beginnersæ article öMidi For The Massesò
  1338. (10.3 p28), I referred to tables detailing the 128 voices of the
  1339. General Midi set. These should relate easily to the software patches,
  1340. as used with ReMIDI, where the patch filename is abbreviated and its
  1341. meaning probably not obvious to the beginner. The tables were not
  1342. actually printed with the article Ö no doubt due to limited space Ö
  1343. although the TableMate-3 and Drawfile versions were included on the
  1344. subscription disc. Non-disc subscribers, however, would have been at
  1345. a disadvantage. Also included is a table of the General MIDI
  1346. Percussion Drum Set along with their pitch identification.
  1347. 10.7
  1348. I hope readers will find these of interest.
  1349. 10.7
  1350. Colin Sutton, Bradford
  1351. 10.7
  1352. Multitasking made easy Ö Like David Wild (10.6 p57), I often want to
  1353. run a program in background in its own task window which I can
  1354. subsequently scroll. Here is another, quick way of doing it.
  1355. 10.7
  1356. 1. Use your text editor (Edit etc) to create an obey file, and enter
  1357. the one-liner:
  1358. 10.7
  1359. *TaskWindow Ödisplay Öquit
  1360. 10.7
  1361. 2. While holding down <shift>, drag the file you want to run so that
  1362. the complete path name follows after the Öquit parameter.
  1363. 10.7
  1364. 3. Save this obey file with a name such as öDOITò.
  1365. 10.7
  1366. 4. Double-click öDOITò, and your program will run in the background
  1367. in its own task window.
  1368. 10.7
  1369. The parameters are optional:
  1370. 10.7
  1371. -display opens the task window, which will open anyway if the program
  1372. puts anything out to the screen
  1373. 10.7
  1374. -quit finishes the task without the option of running another task in
  1375. that same window.
  1376. 10.7
  1377. Sherwin Hall <100101.3577@CompuServe.COM>
  1378. 10.7
  1379. Printers on the iconbar Ö I stopped using TurboDrivers when I fitted
  1380. the StrongARM, primarily because Computer Concepts were so slow in
  1381. sending out upgrades, and have only just installed it. Eventually,
  1382. one tires of waiting for !Publisher to complete printing under the
  1383. Acorn printer driver Ö even with version 1.54 and Ébackgroundæ
  1384. printing enabled.
  1385. 10.7
  1386. When I had finished using the !Install program, I double-clicked on
  1387. !Printers in Resources:$.Apps. I then dragged two copies of the
  1388. DeskJet printer driver to the Printer control panel (IconBar
  1389. Menu/Printer control... ) and configured them, one for high
  1390. resolution (300╫300) and the other for draft (150╫150) printing. At
  1391. this stage, I found that I had six printer icons on the iconbar. From
  1392. left to right, there were the original pair of DeskJet icons (same
  1393. functions as the new Turbo Icons), one for the dot-matrix printer,
  1394. one for printing to send by ArcFax, and the two new Turbo icons. It
  1395. was easy to switch off the two old DeskJet icons (iconbar
  1396. Menu/Printer control... /Menu/Inactive), but this left four icons in
  1397. an unfamiliar order.
  1398. 10.7
  1399. (At this point you may be wondering why I was not simply upgrading
  1400. the old, already installed version of TurboDriver I had used with the
  1401. ARM 610.) Well, it may have been that it was version 4.04. At a more
  1402. practical level, the earlier installation was lost in a hard disc
  1403. crash.
  1404. 10.7
  1405. To achieve the desired arrangement, the obvious course appeared to be
  1406. to öRemoveò those icons at the left which I wanted to be at the
  1407. right, then re-install them by dragging the printer definition files
  1408. back into the Printer control panel, and go through the process of
  1409. configuration again. Was that tedious process necessary? I chose to
  1410. do it another way.
  1411. 10.7
  1412. The file ÉSettingsæ (<HardDisc>.$.!Boot.Choices .Printers.Settings )
  1413. contains the information relating to the printer icons on the
  1414. iconbar. A little study shows the structure of this file. If you load
  1415. it into Zap (or Edit, if you must), you will see a long series of
  1416. identifiers down the left hand edge of the window; each consists of
  1417. two lower case letters followed by a colon followed by a space. In
  1418. many cases, these identifiers are followed by a string of characters,
  1419. some of which are intelligible words.
  1420. 10.7
  1421. The start of the file is identified by Éfv: æ. Each section relating
  1422. to an individual printer icon is not indicated by any clearly evident
  1423. delimiters. It is necessary to find Écl: æ and Éic: æ which are the
  1424. start and finish lines for each printer.
  1425. 10.7
  1426. Make a copy of the file ÉSettingsæ (as ÉSettingsOæ, or some such)
  1427. before starting to reorganise the listing in ÉSettingsæ. Select all
  1428. of the lines of the section (æcl: æ to Éic: æ) representing the
  1429. printer icon that you want at the left hand end of the group on the
  1430. iconbar and move these to immediately below Éfv: æ by pressing <ctrl-
  1431. V>. In the same way, you can rearrange the section of lines relating
  1432. to each of the other settings. Beware of leaving totally blank lines
  1433. in the file, and ensure that one line-feed follows the last line
  1434. starting Éic: æ. Save the reorganised ÉSettingsæ, quit !Printers and
  1435. re-run it. Hey, presto!
  1436. 10.7
  1437. It is easier to do it once you see the file and its identifiers, than
  1438. it is to describe it . With the exception of the time it took me to
  1439. understand the structure of the file, it took less time to rearrange
  1440. the icons this way than using the ÉRemove/Drag in/Configureæ method
  1441. described earlier.
  1442. 10.7
  1443. Of course, someone will now tell me of an easier, quicker way!?
  1444. 10.7
  1445. Frank Watkinson <frank@watsnees.demon.co.uk>
  1446. 10.7
  1447. Zap and Basic Ö Here are some hints to remedy some of the obscure
  1448. bugs in the latest version of !Zap editor (version 1.35).
  1449. 10.7
  1450. Failing Basic programs Ö One of the obscure bugs that !Zap has is
  1451. that any trailing spaces on a Basic line are not removed. This can
  1452. cause your program to behave very strangely, and output unexpected
  1453. results. Under many circumstances, the Basic interpreter will ignore
  1454. trailing spaces on a Basic line, except in the following case:
  1455. 10.7
  1456. 1. After the keyword OF in a öCASE .... OFò structure. The OF keyword
  1457. must be the last keyword on the line. The interpreter will give the
  1458. error: öCASE..OF statement must be the last thing on a lineò.
  1459. 10.7
  1460. 2. After the keyword THEN in a multi-line öIF..THEN..ELSE..ENDIFò.
  1461. The Basic interpreter will not be able to detect the trailing space
  1462. and will convert the multi-line IF...ENDIF into a single line IF
  1463. THEN. The Basic interpreter will not trap this error. Your program
  1464. will behave differently from what you had expected. It could take you
  1465. ages to discover what is happening because you canæt see the space
  1466. after the THEN keyword!!!
  1467. 10.7
  1468. One solution I found is to save the file, open it in Edit, then save
  1469. it back again. Edit and other Basic editors will remove trailing
  1470. spaces on a Basic line.
  1471. 10.7
  1472. Basic mode, Copy and Move bugs Ö This bug is easily encountered. You
  1473. can lose your program if you donæt read on.... !Zap allows you to
  1474. position the cursor (using the mouse) on a line that is below the
  1475. last line of the Basic program. This is normally an empty line
  1476. without a line number. If you press <enter> or just type in
  1477. something, !Zap will automatically put in a new incremented line
  1478. number on the left hand, and your typed text appears on the line. So
  1479. far, all is fine. However, if while the cursor is on the blank line,
  1480. you highlight something from somewhere else in the program and copy
  1481. it or move it to the blank line, !Zap goes crazy. It will first show
  1482. a wrong line number, and only part of the copied text will appear on
  1483. the line. This new line is now a garbage line. You cannot move the
  1484. cursor beyond it. You will not be able to delete this line. Most
  1485. importantly, if you want to save your file, Zap will report an error
  1486. öNot a Basic file or corrupt at offset &xxxxxxxò, and you will not be
  1487. able to save your file.
  1488. 10.7
  1489. For example:
  1490. 10.7
  1491. 10 DIM memory% memory_size%
  1492. 10.7
  1493. 20 memory_pointer% memory%*4
  1494. 10.7
  1495. 30 byte% !memory%
  1496. 10.7
  1497. The above is only a 3 line program, but you can place the cursor
  1498. using the mouse on the fourth line (i.e. the blank line). Now
  1499. highlight line 20 until the number 4 (do not highlight the complete
  1500. line only the text) and copy it using <ctrl-C> to the blank line.
  1501. Surprise!! The line number will be shown as 110053. The first two
  1502. chars of the variable memory_pointer% disappear. You are stuck.
  1503. 10.7
  1504. 10 DIM memory% memory_size%
  1505. 10.7
  1506. 20 memory_pointer% memory%*4
  1507. 10.7
  1508. 30 byte% !memory%
  1509. 10.7
  1510. 110053 ory_pointer% memory%*4
  1511. 10.7
  1512. What happens, is that there is a bug with the copy and move commands.
  1513. When !Zap copies or moves a line in Basic mode, it assumes that you
  1514. are copying or moving to an already existing line. In the above
  1515. example, what we are doing is trying to append something to the end
  1516. of the program, using the copy command, which unfortunately does not
  1517. work.
  1518. 10.7
  1519. The strange line number and the missing three characters from the
  1520. variable are due to the fact that !Zap places the first three
  1521. characters of the variable name as a three-byte tokenised line
  1522. number. Worse still, this new line does not have an &0D terminating
  1523. byte! Thatæs why you cannot move beyond it.
  1524. 10.7
  1525. To remedy the situation and regain control of your valuable program:
  1526. 10.7
  1527. 1. Place the cursor after the last character on the last line (the
  1528. problematic line). In our example, after the digit 4.
  1529. 10.7
  1530. 2. Switch into Byte mode using <ctrl+shift+f2>.
  1531. 10.7
  1532. 3. Type ö0ò followed by öDò. (i.e. insert a terminating byte).
  1533. 10.7
  1534. 4. Switch back to Basic mode using <ctrl+shift+f6>.
  1535. 10.7
  1536. Now you find yourself after the problematic line. Now just press
  1537. <Enter>, and Zap will automatically re-number the program for you and
  1538. you are back in control. Donæt forget to type the missing characters
  1539. on the line.
  1540. 10.7
  1541. Basic tokenising bug Ö When copying or moving in Basic mode, Zap does
  1542. not automatically tokenise the new copied text.
  1543. 10.7
  1544. Example:
  1545. 10.7
  1546. 10 mem% 2 :REM PRINT mem%
  1547. 10.7
  1548. 20
  1549. 10.7
  1550. 30 pointer% 1<<10
  1551. 10.7
  1552. If you copy or move the öPRINT mem%ò after the REM in line 10 to line
  1553. 20, the öPRINTò keyword will not be tokenised. This will cause the
  1554. program to produce errors when executed. To remedy this, after
  1555. copying, place the cursor on the line (line 20 in our example) and
  1556. insert a space, or whatever.
  1557. 10.7
  1558. Applications not accepting Zap Basic files directly Ö You can save
  1559. (drop) a Basic file directly into another Basic editor like DeskEdit,
  1560. StrongED or Edit, but they will not accept Basic programs directly
  1561. from !Zap. You have to save them first to disc then load them into
  1562. the other application or Editor.
  1563. 10.7
  1564. The reason for this is that most applications identify a Basic
  1565. program by checking for the byte &0D to be the first byte of the
  1566. Basic program. If it does not exist, they will report a öBad Basic
  1567. programò.
  1568. 10.7
  1569. While in Zap Basic mode, your program is stored using a special Zap
  1570. format, not the standard Basic tokenised file. The format Zap uses is
  1571. as follows:
  1572. 10.7
  1573. 1. 3-byte line number (similar to the 3-byte-encoding used by GOTO).
  1574. 10.7
  1575. 2. The Basic line content in a Basic tokenised form.
  1576. 10.7
  1577. 3. One byte terminator (&D).
  1578. 10.7
  1579. You are warned Ö if you drop your Basic file directly into Edit
  1580. (version 1.44), Edit will crash with a Data Abort error!! So, save
  1581. your program to disc first, before loading it into other applications.
  1582. 10.7
  1583. Mohsen Alshayef <mohsen@qatar.net.qa>
  1584. Hints and Tips
  1585. 10.6
  1586. AMD 5x6 devices Ö Anyone who purchases a 5x6 card, or upgrades their
  1587. current card to a 5x6, should be aware that if it is an AMD device,
  1588. it will not work if you have the PCSleep directory in your !Boot.
  1589. Choices.Boot.Predesk directory. It is not always obvious that you
  1590. have this chip, as it is covered with a fan.
  1591. 10.6
  1592. The symptoms are that, on boot up, the PC device will be reported as
  1593. a 486SXLC2, and you will receive the message ÉUnable to set
  1594. parameters IDE drive 0, error code 0080hæ. Then it will report ÉNo
  1595. boot device Ö Retryingæ.
  1596. 10.6
  1597. Removing the PCSleep directory cures this problem. You must, however,
  1598. close down and switch off your machine to reboot, before trying to
  1599. run the PC Card without PCSleep.
  1600. 10.6
  1601. This is apparently typical of cards supplied by CJE Micros and Q-
  1602. Tec/MCS.
  1603. 10.6
  1604. Thanks to Aleph One for sorting this out for me.
  1605. 10.6
  1606. Eddie Lord <72046.251@CompuServe.COM>
  1607. 10.6
  1608. Deleting text in writeable icons Ö Do you ever tire of having to
  1609. accomplish <ctrl-U> with one hand? (Everybody does know you donæt
  1610. have to use delete repeatedly, donæt you?! Ed.)
  1611. 10.6
  1612. Try putting the following in your boot file:
  1613. 10.6
  1614. Key 11 |U
  1615. 10.6
  1616. |F11 = <Ctrl-U> Ö RISC OS delete line
  1617. 10.6
  1618. I chose <f11> as it was available (to me) and near the backspace key.
  1619. So, when offered öTextFileò or, worse, something like öSCSI::Hard.$.
  1620. Clipboard.ScratchPad.TaxReturnò, simply hit <f11> and the text will
  1621. be deleted Ö it seems to work in most writeable icons.
  1622. 10.6
  1623. Unfortunately, applications such as Impression use the function keys
  1624. for all manner of purposes, and so <f11> on its own does not work.
  1625. What a shame! (Now, whereæs my copy of the Style Guide?)
  1626. 10.6
  1627. Tim.Hill@argonet.co.uk
  1628. 10.6
  1629. Duff RiscPC mains switche(r)s? Ö If you have had trouble with the
  1630. mains switch on a RiscPC, you may be able to learn from my
  1631. experience. The switch on my computer sometimes didnæt work first
  1632. time I pressed it Ö what is more, over a period of a week or so, it
  1633. seemed to get worse.
  1634. 10.6
  1635. As it got worse, I pressed the button more and more firmly to make it
  1636. work, but still it just seemed to get worse and worse. Then the penny
  1637. dropped. (Iæm a bit slow you see!)
  1638. 10.6
  1639. I then tried pressing the button slowly and gently... and it now
  1640. works perfectly, every single time!!!
  1641. 10.6
  1642. P.S. Well, actually, not every time. Iæve also now discovered that it
  1643. tends to catch if you push towards the left, so gentle pressure
  1644. towards the right (i.e. the edge of the computer) helps ensure smooth
  1645. action.
  1646. 10.6
  1647. Ed. <paul.NCS@paston.co.uk>
  1648. 10.6
  1649. Interactive help Ö It is always a good idea to add interactive help
  1650. to an application, to be used by !Help. Hopefully, the application is
  1651. so intuitive that it is superfluous, but it may quickly inform
  1652. someone of a function or shortcut that is only obvious by Reading The
  1653. Fine Manual! Much of the help text can become repetitive and take up
  1654. a surprising amount of memory. However, you can use the following
  1655. code to shorten the writing and storage space for these terse phrases:
  1656. 10.6
  1657. \S Ö Click SELECT to
  1658. 10.6
  1659. \R Ö Move the pointer right to
  1660. 10.6
  1661. \A Ö Click ADJUST to
  1662. 10.6
  1663. \T Ö This is the
  1664. 10.6
  1665. \G Ö This option is greyed out because
  1666. 10.6
  1667. \W Ö This window is
  1668. 10.6
  1669. \D Ö Drag SELECT to
  1670. 10.6
  1671. \d Ö Drag ADJUST to
  1672. 10.6
  1673. \w Ö window
  1674. 10.6
  1675. \s Ö SELECT
  1676. 10.6
  1677. \a Ö ADJUST
  1678. 10.6
  1679. All the phrases will have a trailing space except \w, \s and \a.
  1680. 10.6
  1681. The help messages use ÉGSæ strings to receive codes that are not
  1682. available from the keyboard. To add any ASCII codes from 1 to 26, you
  1683. have to use the codes |A to |Z. So, for a new line (ASCII 13) use |M.
  1684. If you wish to use the | character, you must use double ||, similarly
  1685. with |ö for ò.
  1686. 10.6
  1687. Robert Lytton, Leeds
  1688. 10.6
  1689. Ovation spelling checker hint Ö In checking the spelling of a
  1690. document, I have often come across the problemáof a word, which is
  1691. listed as incorrect, but which needs to be left as it is. One example
  1692. of this is if you are writing about the misspelling itself, and
  1693. another is where such things as file or variable names are very close
  1694. to the correct spelling of some word.
  1695. 10.6
  1696. I donæt want to add the word to the dictionary as it is Éwrongæ, and
  1697. if I tell the checker to ignore it, any further misspellings in the
  1698. same document will also be ignored. At Acorn World, I was talking to
  1699. John Wallace of Beebug about this, and asking for a skip button to be
  1700. added to the dialogue box. He mentioned some of the difficulties of
  1701. changing the program and then, suddenly, said öYou donæt need it!
  1702. Just press the replace button and the checker will Éreplaceæ the
  1703. incorrect word with the copy of itself which is sitting in the
  1704. dialogue box.ò Now that I know, it is obvious, and I have checked
  1705. that it works with Ovation, but it does not work with either
  1706. Impression or Fireworkz. In these two programs, the main possible
  1707. replacement is put into the dialogue box automatically, whereas in
  1708. Ovation you have to select it first.
  1709. 10.6
  1710. David Wild, Hemel Hempstead
  1711. 10.6
  1712. PCPro problem Ö I installed !PCPro recently and was happy with its
  1713. performance except that, whenever I wanted to close down the PC
  1714. window, my RiscPC 700 locked up and needed a full reset. After much
  1715. trial and error, I was able to fix the fault when Iáremoved the non-
  1716. standard screen mode definitions that I had installed a year earlier,
  1717. and reverted to the normal Acorn modes. The definitions that caused
  1718. the problem were from Andrew Newton (on the Archive 8.5 program disc)
  1719. and were originally designed to avoid letter box presentation when
  1720. using the old Archimedes modes 1Ö15. This is not a criticism of
  1721. Andrewæs work, just a note on incompatibility!
  1722. 10.6
  1723. Jim Davies, Paignton
  1724. 10.6
  1725. PipeDream function keys Ö Having upgraded to PipeDream 4.5 to work
  1726. with StrongARM, I was disappointed that all the useful PD3 function
  1727. keys had been lost. They can be reclaimed as follows: Move the
  1728. PD3Keys file from the !PipeDream.Resources.CmdFiles directory to
  1729. !PipeDream.User and rename it ÉKeyæ.
  1730. 10.6
  1731. (Michael Nurse)
  1732. 10.6
  1733. Michael Nurse, Cambridge
  1734. 10.6
  1735. Polling the wimp Ö In Archive 10.5, p31, Polling the Wimp, Robert
  1736. Lytton commented that scanning with Twain is slow due to the presence
  1737. of other tasks which slow down polling. This is a common observation
  1738. and there is a solution. To quote the ImageMaster !ReadMe file:
  1739. 10.6
  1740. In release 1.05, a new variable has been added to the !ImgMaster.
  1741. Resources.Config file Ö ÉPollCountæ controls how often ImageMaster
  1742. will give control back to the desktop. The reason for this is that,
  1743. on the RiscPC, polling is slow, and scanning can be a lengthy process
  1744. if other tasks are running. By increasing PollCount, you can reduce
  1745. this effect.
  1746. 10.6
  1747. David Pilling <david@pilling.demon.co.uk>
  1748. 10.6
  1749. Random backdrop textures Ö In RISC OS 3.6, if you set random backdrop
  1750. textures in Configure and then save a Boot file, you will always get
  1751. the same backdrop. What happens, it seems, is that Configure saves
  1752. the file ($.!Boot.Choices.Boot.Tasks.Configure) with the line öRun
  1753. BootResources:Configure.Textures.RTextureò, which runs a small Basic
  1754. program to select a random backdrop. However, the Boot file saves
  1755. whichever texture you had when the file was saved, and as this is run
  1756. after $.!Boot.Choices.Boot.Tasks.Configure, you are stuck with this
  1757. backdrop for ever.
  1758. 10.6
  1759. To get round this, put the line öRun BootResources:Configure.Textures.
  1760. RTextureò in your Boot file in the Pinboard section.
  1761. 10.6
  1762. Peter Young <pnyoung@argonet.co.uk>
  1763. 10.6
  1764. Soft cases for the Psion Siena Ö these cost upwards of ú20, but for
  1765. about ú2, I bought a Specsavers soft case for spectacles and it takes
  1766. the Siena snugly. The spring-mouthed pouch (in a variety of colours)
  1767. excludes dirt, provides some physical protection and disguises the
  1768. expensive gadget sitting on the desk! Iæm sure other opticians do
  1769. their own equivalent.
  1770. 10.6
  1771. David Andrews <music.man@zetnet.co.uk>
  1772. 10.6
  1773. StrongARM öfunnyò Ö I have a number of PC CD-ROMs with clipart, and
  1774. so I bought ImageFS2 so that I could get at them without using the PC
  1775. card. After my StrongARM was fitted, ImageFS2 wouldnæt work, so I had
  1776. to wait for the upgrade from Alternative Publishing.
  1777. 10.6
  1778. However, I was consoled by the fact that the new version would add
  1779. WMF files to the list of those types to be converted automatically.
  1780. When the new version arrived, it came with new versions of CD_Fix and
  1781. CD_Type, as the old versions would not work with the new operating
  1782. system.
  1783. 10.6
  1784. Because I am not using the CD system all the time, my practice had
  1785. been to click on CD_Fix as I needed it, and this had worked from the
  1786. day I received my RiscPC over a year ago. So, I installed the new
  1787. versions of the programs, clicked on CD_Fix and, after about ten
  1788. minutes, I switched the machine off, as nothing would work at all.
  1789. After several retries, all with the same result, I remembered that it
  1790. might change things if I turned the cache off before loading CD_Fix.
  1791. There was a change Ö <ctrl-break> would now work, but nothing else!
  1792. 10.6
  1793. I telephoned everyone who might be able to help, but no-one seemed to
  1794. have met the problem before. Cumana sent me a disc with the latest
  1795. version (2.04) of the SCSI II software, but this just made the
  1796. machine completely unusable, so I had to go back to the previous
  1797. version (2.03). Robin Watts of Warm Silence Software eventually gave
  1798. me the vital clue, which caused me to transfer the calling of CD_Fix
  1799. from öas requiredò to being included in the boot file ADFS::HardDisc4.
  1800. $.!Boot.Choices.Boot.Desktop. Some of my hair has now started to
  1801. regrow, and everything seems to work the way that the book says.
  1802. 10.6
  1803. David Wild, Hemel Hempstead
  1804. 10.6
  1805. StrongARM patch Ö I have a StrongARM RiscPC on which I run
  1806. PipeDream4, which occasionally crashed mysteriously with the message
  1807. öNo stack for trap Handlerò. On the advice of Colton Software, I
  1808. obtained a copy of the software patch from Acornæs FTP site,
  1809. advertised thus:
  1810. 10.6
  1811. riscos370sa: Patch for RISC OS 3.70 StrongARM users which improves
  1812. printing speed and in-use stability. It is very, very strongly
  1813. recommended that RISC OS 3.70 users install this!!
  1814. 10.6
  1815. I installed it in PreDesk as per instructions. However, to remind me
  1816. of the process, I copied the ReadMe file into PreDesk as well. This
  1817. completely disrupted my Boot sequence, which failed to recognise VRAM
  1818. or monitor, and refused to accept that I wished a RAMDisc to exist.
  1819. It was unreconfigurable, because no pathname had been set for the
  1820. data. A 640╫480, 16 colour mode was all that 2Mb VRAM and an AKF85
  1821. could manage!
  1822. 10.6
  1823. Removing the ReadMe file (filetype TEXT) eventually resolved the
  1824. problem. By experiment, I found that it did no harm in Boot, nor in
  1825. ROMPatch, but was fatal in PreDesk.
  1826. 10.6
  1827. Page 5-229 (!Boot Application) of the PRM states, in respect of the
  1828. PreDesk directory:
  1829. 10.6
  1830. Action taken on files and subdirectories Ö The files and directories
  1831. held within the PreDesk directory are acted on in the following Order:
  1832. 10.6
  1833. Any files of type Module are run using *RMLoad.
  1834. 10.6
  1835. Any files of type Sprite are run using *IconSprites.
  1836. 10.6
  1837. Any files of type Obey are run using *Obey -c.
  1838. 10.6
  1839. Any directories are run using *Run.
  1840. 10.6
  1841. All other files are ignored.
  1842. 10.6
  1843. Donæt you believe it!
  1844. 10.6
  1845. Mick Day <mickday@mail.zynet.co.uk>
  1846. 10.6
  1847. Email editing with StrongED Ö When quoting a long section in
  1848. someoneæs email, rather than [SNIP] it completely, I use StrongEDæs
  1849. wonderful ability to mark a block of text as shown overleaf. (Drag
  1850. with <alt> held down.)
  1851. 10.6
  1852. I then cut that section, thereby reducing the bulk of the message,
  1853. but allowing enough for the sender to recognise what the original was
  1854. about.
  1855. 10.6
  1856. I also add a ö.......[SNIP]ò message so they know that the email
  1857. hasnæt been garbled in transit. Needless to say I only have to type
  1858. ö`1ò, and StrongEDæs abbreviation system leaps into action to type
  1859. the required snip text!
  1860. 10.6
  1861. Ed. <paul.NCS@paston.co.uk>
  1862. 10.6
  1863. Windows 95 file transfer Ö There have been a few articles in the past
  1864. that explained how to transfer files between two PC partitions. The
  1865. methods explained are OK if you are using Windows 3.11 or below, but
  1866. not for Windows 95 using long file names (i.e. files that donæt use
  1867. the 8.3 format that DOS uses). When you view Windows 95æs LFNs in any
  1868. OS other than 95, you can only see its truncated version.
  1869. 10.6
  1870. For example, a file called ÉA very long storyæ viewed in DOS, Windows
  1871. 3.11 or RISC OS would appear as ÉAVERYL~1.DOCæ. Copying the file in
  1872. this form destroys the LFN, and so the file ceases to function
  1873. correctly.
  1874. 10.6
  1875. There is, however, a way to copy these truncated files by using a
  1876. utility that comes with Windows 95 (CD version only) called LFNBK
  1877. (Long File Name Backup). All you have to do is to copy it into your
  1878. Windows 95 directory. If you then run it from a DOS session inside
  1879. Windows 95, with the parameter /b (b for backup), i.e.
  1880. 10.6
  1881. LFNBK/B
  1882. 10.6
  1883. then all the LFNs are truncated, and the tail-ends are stored in a
  1884. ÉLFNBK.DATæ.
  1885. 10.6
  1886. Remember though, that for every directory you wish to copy across,
  1887. you must copy the LFNBK utility into the respective directory and run
  1888. it.
  1889. 10.6
  1890. Now copy across all you wish to transfer to your new partition, in
  1891. the usual RISC OS fashion, by opening up the two partition windows
  1892. and dragging the files across.
  1893. 10.6
  1894. When all the files are in the new partition, run the LFNBK utility
  1895. again but this time with the /r (r for restore) option. All the LFNs
  1896. are now restored.
  1897. 10.6
  1898. The last thing to do is to setup up the new partition with !PCconfig.
  1899. 10.6
  1900. Jochen Konietzko <kon@hmanngym.k.nw.schule.de>
  1901. 10.6
  1902. Zap Basic editing Ö I recently needed a small Basic program to do a
  1903. calculation for me, and created it using Zap. When I ran the program,
  1904. I had a ömissing TOò error, because I had forgotten to put the word
  1905. in capitals. I went back into Zap to correct the error, and used
  1906. <ctrl-S> to change the case.
  1907. 10.6
  1908. The Basic system still refused to accept my program until I deleted
  1909. the word completely, and retyped it in upper case. It would seem that
  1910. once it has registered the presence of a variable, which ötoò would
  1911. be, it will not recognise the alteration.
  1912. 10.6
  1913. David Wild, Hemel Hempsteadáuá
  1914. Hints and Tips
  1915. 10.5
  1916. Essential Selection demo CD Ö In Archive 10.1 p40, I wrote about YITM
  1917. öEssential CDò demo disc and its incompatibility with RiscPC 700
  1918. (RISCáOS 3.6) series 16-bit sound card, saying that it necessitated a
  1919. patch to be obtained and run first. This now only applies to the
  1920. original version 1 CD (December 1994) which was Acorn/PC dual
  1921. platform. The current version 2 (December 1995), Acorn platform only,
  1922. has the patch included on the CD-ROM and runs at start-up, offering
  1923. the choice of 8 or 16-bit sound. This later version also has several
  1924. additional demos of 1996 releases. It is a very well produced demo
  1925. disc of YITM educational multimedia catalogue and, best of all, it is
  1926. free!
  1927. 10.5
  1928. Colin Sutton, Bradford
  1929. 10.5
  1930. Hard disc nightmare Ö The tale of the lost IDE hard disc in last
  1931. monthæs Comment Column (10.4 p26) reminded me of a few weeks ago when
  1932. Iáaccidentally trashed my main SCSI HD. (Filecore wanted to know if
  1933. the disc had been formatted!) Like a fool, Iæd not taken backups
  1934. either.
  1935. 10.5
  1936. Anyway, just before I was about to throw myself off the top of a very
  1937. tall building, I remembered the fsck suite from Sergio Monesi. Not
  1938. only did I manage to make my disc readable again (without
  1939. reformatting), but I also managed to recover all my lost files using
  1940. fsck and Hardfix.
  1941. 10.5
  1942. I canæt recommend the fsck suite highly enough Ö it was the best ú5 I
  1943. ever spent.
  1944. 10.5
  1945. Ian Clark <rooster@cat1.demon.co.uk>
  1946. 10.5
  1947. PC partitions Ö Following on from my hint last month, p30, I have
  1948. just realised that I made
  1949. 10.5
  1950. an elementary mistake in the !Boot file:
  1951. 10.5
  1952. If PCDrives$Path=öò Then ...
  1953. 10.5
  1954. should have been:
  1955. 10.5
  1956. If ö<PCDrives$Path>ò=öò Then ...
  1957. 10.5
  1958. Sorry about that!
  1959. 10.5
  1960. Steve Drain <steve.d@virgin.net>
  1961. 10.5
  1962. Polling the Wimp Ö One of the problems with version 3.1 of RISCáOS is
  1963. the time taken to page applications in and out of memory when
  1964. multitasking. (I have heard it said that this problem has been
  1965. overcome with later versions.) If the application, at the time of
  1966. paging in and out, occupies a large wimp slot, this situation is even
  1967. worse.
  1968. 10.5
  1969. I find this problem most acute when using Twain with a scanner, but
  1970. other software, which is highly multitasking, can also slow down when
  1971. processing. Iáfind it essential to quit any large applications and
  1972. associated files, such as Impression, when acquiring an image from
  1973. the scanner, otherwise the scanner continually pauses as it waits for
  1974. the computer to catch up.
  1975. 10.5
  1976. The solution is for software writers to only have the wimp Épollæ
  1977. them when it is necessary, and to keep the slot sizes to a minimum.
  1978. Could the latter be achieved by storing large stationary data in the
  1979. System sprite pool? Hum! The former should be done by sending the
  1980. correct poll word and by setting up a list of messages you wish to
  1981. receive.
  1982. 10.5
  1983. The poll word, sent when you call Wimp_Poll, is to state which events
  1984. you are interested in receiving, and the list of messages contains
  1985. those you wish to receive via a message event. The message list is
  1986. important because of the large, and ever expanding, number of
  1987. messages that are Ébroadcastæ around the wimp. If you do not state
  1988. which messages you are interested in, you will be sent all of the
  1989. broadcast messages, such as when a directory is opened!
  1990. 10.5
  1991. The messages you wish to receive should be stated as:
  1992. 10.5
  1993. DEF PROCWimp_Start(taskname$)
  1994. 10.5
  1995. ON ERROR PROCError:END
  1996. 10.5
  1997. DIM wimp% 256
  1998. 10.5
  1999. task%=0
  2000. 10.5
  2001. wimp%!0=1     :REM Message_DataSave
  2002. 10.5
  2003. wimp%!4=2     :REM Message_DataSaveAck
  2004. 10.5
  2005. wimp%!8=3     :REM Message_DataLoad
  2006. 10.5
  2007. wimp%!12=4    :REM Message_DataLoadAck
  2008. 10.5
  2009. wimp%!16=8    :REM Message_PreQuit
  2010. 10.5
  2011. wimp%!20=&502 :REM Message_HelpRequest
  2012. 10.5
  2013. wimp%!24=&400C1 :REM Message_ 
  2014. 10.5
  2015. ModeChange
  2016. 10.5
  2017. wimp%!28=&808C1 :REM Message_
  2018. 10.5
  2019. TaskWindow_Output
  2020. 10.5
  2021. wimp%!32=0      :REM end of list
  2022. 10.5
  2023. SYSòWimp_Initialiseò,310,&4B534154, 
  2024. 10.5
  2025. taskname$,wimp% TO ,task%
  2026. 10.5
  2027. ENDPROC
  2028. 10.5
  2029. Please note that the version number used here is 310 (as in 3.10 Ö
  2030. there may be important additions for later versions) and also there
  2031. are many other possible messages you may like to receive.
  2032. 10.5
  2033. The wimp poll will only return to your task if an event has occurred
  2034. that you have stated you are interested in. If it is of no
  2035. consequence that the pointer has entered a window that you own, you
  2036. should mask this event out. If you do not, your application will be
  2037. paged into memory, an event ÉPointer_Entering_Windowæ will be sent to
  2038. you, you will ignore it, request the next wimp poll and be paged out
  2039. of memory.
  2040. 10.5
  2041. A far more important event to mask out is the Null_Reason_Code event.
  2042. This event will page in your application whenever the user is not
  2043. clicking away, to allow background processing. If you donæt need to
  2044. do any background processing, mask it out!
  2045. 10.5
  2046. Some code:
  2047. 10.5
  2048. REM Stages of the applicationæs life
  2049. 10.5
  2050. PROCWimp_Start(òMy Applicationò)
  2051. 10.5
  2052. PROCSetInitialData
  2053. 10.5
  2054. PROCWaitForEvent
  2055. 10.5
  2056. PROCWimp_CloseDown
  2057. 10.5
  2058. END
  2059. 10.5
  2060. REM The applications base state,
  2061. 10.5
  2062.  waiting for instruction
  2063. 10.5
  2064. DEF PROCWaitForEvent
  2065. 10.5
  2066. finished%=0   :REM Global variable can 
  2067. 10.5
  2068. be set anywhere
  2069. 10.5
  2070. REPEAT
  2071. 10.5
  2072.   PROCCallWimpPoll(%1)
  2073. 10.5
  2074.   REM mask out null event
  2075. 10.5
  2076. UNTIL finished%
  2077. 10.5
  2078. ENDPROC
  2079. 10.5
  2080. DEF PROCWimp_CloseDown
  2081. 10.5
  2082. REM close any files and tidy up and
  2083. 10.5
  2084.  then...
  2085. 10.5
  2086. SYSòWimp_CloseDownò,task%,òTASKò
  2087. 10.5
  2088. ENDPROC
  2089. 10.5
  2090. DEF PROCPolling
  2091. 10.5
  2092. REM call procedure during extensive
  2093. 10.5
  2094.  processing to keep multitasking
  2095. 10.5
  2096. PROCCallWimpPoll(%0)
  2097. 10.5
  2098. WHILE Paused%=1 AND Aborted%=0
  2099. 10.5
  2100.   PROCCallWimpPoll(%1)
  2101. 10.5
  2102.   REM mask out null event whilst
  2103. 10.5
  2104.  processing paused
  2105. 10.5
  2106. ENDWHILE
  2107. 10.5
  2108. ENDPROC
  2109. 10.5
  2110. DEF PROCCallWimpPoll(idle%)
  2111. 10.5
  2112. REM polling the wimp for events and a
  2113. 10.5
  2114.  short break in processing!
  2115. 10.5
  2116. LOCAL event%,mask%
  2117. 10.5
  2118. mask%=%11100100110000+idle%
  2119. 10.5
  2120. REM masked out events 4,5,8,11,12,13
  2121. 10.5
  2122.  as will not respond to them
  2123. 10.5
  2124. SYSòWimp_Pollò,mask%,wimp% TO event%
  2125. 10.5
  2126.   CASE event% OF
  2127. 10.5
  2128.   WHEN0 : REM will give you control
  2129. 10.5
  2130.  back for further processing
  2131. 10.5
  2132.   WHEN2 : PROCEvent_WindowOpen
  2133. 10.5
  2134.   WHEN3 : PROCEvent_CloseWindow
  2135. 10.5
  2136.   WHEN6 : PROCEvent_MouseClick
  2137. 10.5
  2138.   WHEN9 : PROCEvent_MenuChoice
  2139. 10.5
  2140.   WHEN17,18: PROCEvent_Message  
  2141. 10.5
  2142.     REM those stated in PROCWimp_Start
  2143. 10.5
  2144.   ENDCASE
  2145. 10.5
  2146. IF finished%=1 THEN Aborted%=1
  2147. 10.5
  2148. REM Aborted% is used here as a means
  2149. 10.5
  2150. REM to drop through processing for
  2151. 10.5
  2152. REM various reasons and not just
  2153. 10.5
  2154. REM when finishing!
  2155. 10.5
  2156. ENDPROCáuá
  2157. 10.5
  2158. Robert Lytton, Leeds
  2159. 10.5
  2160. Printing from both RISC OS and Windows Ö I have an Aleph One PC
  2161. podule card in my A540, and I find printing from Windows, through the
  2162. A540 and a Turbo Driver, to be terribly slow. There are various
  2163. Éfixesæ for this, but I need things to work for my non-technical wife
  2164. (not the other one). So I decided to buy a printer sharer (RS number
  2165. 215-016) and connect it to both the A540 printer port (using the
  2166. Turbo Driver cable) and to the PC card (with a regular cable). I then
  2167. configured the PC card to use its own printer port. To work in
  2168. Windows it is vital to turn off the Windows Éfast print to portæ
  2169. option which is on by default. From the Control panel, you must go
  2170. through Printers, to Connect, to find the box to click.
  2171. 10.5
  2172. Brian Cowan <UHAP027@vms.rhbnc.ac.uk>
  2173. 10.5
  2174. StrongED & Keystroke Ö Has anyone tried the combination of Keystroke
  2175. and StrongED? At first when I moved over to StrongED, I had real
  2176. difficulties because Keystroke does not seem to be able to
  2177. communicate with StrongED when it comes to cursor movements within
  2178. öInsert textò commands. (Has anyone else had that problem and/or
  2179. solved it?)
  2180. 10.5
  2181. Anyway, I have got round it to some extent by using the \@ within
  2182. StrongED to mark a place to which the cursor should go, and using
  2183. Keystroke to enter the characters that call up the abbreviation.
  2184. 10.5
  2185. For example, I need keystrokes that simplify some of the editing when
  2186. answering emails. So suppose I start with the following text:
  2187. 10.5
  2188. > end of the paragraph.
  2189. 10.5
  2190. >
  2191. 10.5
  2192. > This is the start of the
  2193. 10.5
  2194. I have a Keystroke that is defined as |?|?$; (i.e.ádelete, delete
  2195. followed by $;) and then I have a StrongED abbreviation definition
  2196. for $; as \n\n\@\n\@ which means type two returns, mark where the
  2197. cursor is to go (\@), do another return and then go back to where we
  2198. want the cursor. I then put the cursor on the blank line between the
  2199. two paragraphs that I want to split, and I end up with:
  2200. 10.5
  2201. > end of the paragraph.
  2202. 10.5
  2203. I type on this line... etc
  2204. 10.5
  2205. > This is the start of the
  2206. 10.5
  2207. StrongED is extremely powerful, and Iæm hoping weæll soon have some
  2208. articles on it, hopefully two lots, one for beginners (because I
  2209. found it very difficult to get started) and one to encourage people
  2210. into using it more deeply.
  2211. 10.5
  2212. One other quick hint (from Guttorm Vik himself) is to use ` for your
  2213. abbreviation definitions instead of $. The reason for using it is
  2214. that, unlike $, it is an un-shifted character and is therefore
  2215. quicker to type. So, I have things like:
  2216. 10.5
  2217. `ri  RISCáOS
  2218. 10.5
  2219. `rp  RiscPC
  2220. 10.5
  2221. `sm  StrongARM
  2222. 10.5
  2223. `sa  Small Ads
  2224. 10.5
  2225. `se  StrongED
  2226. 10.5
  2227. In each case, itæs three simple un-shifted keystrokes to produce
  2228. complex combinations of shifted and un-shifted letters.
  2229. 10.5
  2230. Oh, and I use `` for öUKPò which I use in emails instead of the pound
  2231. sign which isnæt handled properly by email systems that canæt cope
  2232. with MIME encoding.
  2233. 10.5
  2234. Ed. <paul.NCS@paston.co.uk>
  2235. 10.5
  2236. System font Ö Since starting to use email, Iáhave been using system
  2237. font much more frequently, especially because of !PtrCopy which is so
  2238. useful for avoiding having to re-type email addresses Ö just öwipeò
  2239. them from some text file into the writeable icon of the öMail toò
  2240. window Ö see 9.8 p23. (but Iádigress!)
  2241. 10.5
  2242. The thing I hate about the system font is the Éslashedæ zeros which I
  2243. find so difficult to read. I used to use a command in my boot file
  2244. that reprogrammed the screen definition of the zero, so I set out to
  2245. find it again and reinstall it on my StrongARM RiscPC! Iáfound it in
  2246. Archive 1.12! It was given in the form of VDU commands:
  2247. 10.5
  2248. VDU23,48,60,102,102,102,102,102,60,0
  2249. 10.5
  2250. VDU23,79,126,102,102,102,102,102,126,0
  2251. 10.5
  2252. These can be put in a Basic program, but if you want to use an Obey
  2253. file, and put it in the PreDesk directory, you need the command line
  2254. equivalent:
  2255. 10.5
  2256. *echo<23><48><60><102><102><102><102>
  2257. 10.5
  2258. <102><60><0>
  2259. 10.5
  2260. *echo<23><79><126><102><102><102>
  2261. 10.5
  2262. <102><102><126><0>
  2263. 10.5
  2264. This redefines the zero (ASCII 48) into the shape of the capital O,
  2265. and then squares up the shape of the capital O (ASCII 79) to
  2266. differentiate the two.
  2267. 10.5
  2268. Ed. <paul.NCS@paston.co.uk>
  2269. Hints and Tips
  2270. 10.4
  2271. Archive CD Ö Weæve found a slight Éfeatureæ in the TextFind program
  2272. on the Archive CD. It searches Volume 8 twice and doesnæt search
  2273. Volume 9! It isnæt actually the program thatæs at fault, but the Data
  2274. file it uses. When it was updated from the æ95 version to the æ96
  2275. version, the changes in the Data file were not done properly. Sorry
  2276. about that.
  2277. 10.4
  2278. This is how to modify it. Copy the whole of the !TextFind application
  2279. to your hard disc. The program searches a path set by an OS variable
  2280. and this is set in the !Run file, so this will need to be changed.
  2281. Alter the line:
  2282. 10.4
  2283. Set TextFindSearch$ Path<Obey$Dir>.^.TEXT
  2284. 10.4
  2285. to:
  2286. 10.4
  2287. Set TextFindSearch$Path CDFS::ARCHIVE_96.$.TEXT
  2288. 10.4
  2289. That will make it look on the CD even though itæs being run from
  2290. somewhere else.
  2291. 10.4
  2292. Now load the file ÉDataæ in the applicationæs directory into a text
  2293. editor. This file defines all the files to be searched. If you look
  2294. at the list of magazine filenames, you will see that the VOLUME 8
  2295. references were duplicated, but we forgot to change the directory
  2296. name to ÉVOLUME 9æ.
  2297. 10.4
  2298. So, look for lines like:
  2299. 10.4
  2300. 9 MAGAZINE.VOLUME_08.ISSUE_xx
  2301. 10.4
  2302. and change them to:
  2303. 10.4
  2304. 9 MAGAZINE.VOLUME_09.ISSUExx
  2305. 10.4
  2306. but only alter the lines beginning with É9æ.
  2307. 10.4
  2308. Thereæs a similar mistake in the products section, so youæll need to
  2309. modify the last line of the file in a similar way.
  2310. 10.4
  2311. Sorry for the confusion. Weæll put a modified version on the monthly
  2312. program disc if you donæt want to be messing about editing data files.
  2313. 10.4
  2314. Ed. <paul.NCS@paston.co.uk>
  2315. 10.4
  2316. Archive magazine storage (10.3 p64) Ö I have been using cardboard
  2317. magazine boxes to store a variety of publications for years. At
  2318. different times, I have bought ÉEsselteæ, ÉEastlight Storeallæ
  2319. (93051) and Éa.i.m Packagingæ (013171), but I would not know where to
  2320. go for these now.
  2321. 10.4
  2322. I do have a mail order catalogue from ÉNeat Ideasæ office supplies
  2323. which lists them. They are oná0800-500192, fax:á0800-600192. The A5
  2324. boxes are made by ÉR-Kiveæ (sounds appropriate) in woodgrain finish.
  2325. The order number is 42856 and packs of 12 cost ú7.29 bought in
  2326. quantities of 10+.
  2327. 10.4
  2328. (This sounded like good news, but I ordered a set, just to see how
  2329. they compared with the, now discontinued, Fellowes ones that I
  2330. mentioned last month Ö they ARE the, önow discontinued, Fellowes
  2331. onesò! Bother!! Ed.)
  2332. 10.4
  2333. Steve Drain, Bridport
  2334. 10.4
  2335. Credit card numbers by email Ö Iáhave just read the article in
  2336. Archive 10.3 p42 about sending credit card numbers by email. I agree
  2337. it is a very convenient way of ordering goods. If the credit card
  2338. details were Éencodedæ into a Squash/Spark/Arc file, then sent as a
  2339. mail attachment, wouldnæt this be sufficient to prevent card number
  2340. detection?
  2341. 10.4
  2342. (An excellent idea, Gary!! OK, it wouldnæt stop someone who was
  2343. determined, but using Squash would be pretty effective. For once,
  2344. being in the minority would be a singular advantage Ö how many
  2345. criminals are öAcorn-awareò?! Feel free to use a Squashed Edit file
  2346. to convey your credit card details if you like. Ed.)
  2347. 10.4
  2348. Gary Jones <gary@cams.nwnet.co.uk>
  2349. 10.4
  2350. Email management and address storage Ö As you can imagine, I receive
  2351. large numbers of emails (up to 60 a day just after the magazine has
  2352. gone out). Since the Marcel instructions say that files over 100
  2353. messages or so become unwieldy, backing up the mail could be a bit of
  2354. a nightmare, but I have developed a technique which seems to work
  2355. well.
  2356. 10.4
  2357. In the main ÉMailæ directory, where the ÉINBOXæ and Ésentæ files are
  2358. stored, I have text files called É_Addrsæ, É_Receivedæ and É_Sentæ,
  2359. and other Marcel files called Énowæ, Éwaitæ and Ékeepæ. (The É_æ
  2360. characters at the beginning of the names, simply makes them appear at
  2361. the end of the directory, alphabetically.)
  2362. 10.4
  2363. When some emails come in, I load É_Receivedæ, and drag ÉINBOXæ into
  2364. it, and re-save it. This archives the messages in case I decide I
  2365. want to refer to them after they have been deleted from the Marcel
  2366. file. Iáthen open the Énowæ file and drag all the incoming messages
  2367. from ÉINBOXæ into this file. This ensures that I donæt archive the
  2368. messages twice.
  2369. 10.4
  2370. (The uses of Éwaitæ and Ékeepæ should, hopefully, be fairly self-
  2371. explanatory, and É_addrsæ is the text file of my email addresses Ö
  2372. see below.)
  2373. 10.4
  2374. The É_sentæ text file provides a backup to the Marcel Ésentæ file
  2375. which fills up rapidly and becomes unusable because of the huge
  2376. length of time it takes to open and close it in Marcel Ö even with
  2377. StrongARM.
  2378. 10.4
  2379. My emails come from many hundreds of different people, so storing
  2380. their email addresses needed some thought too. Rather than trying to
  2381. store them all in Marcelæs Address Book, I use !Zap (because I
  2382. havenæt found out how to do it in StrongED yet!!) with its öSearch To
  2383. Bufferò facility to go through the huge files of archived email
  2384. messages, looking for öFrom:ò. The effect of this is to create a file
  2385. of all the addresses from each of the emails. With a bit of massaging
  2386. in StrongED, and sorting in PipeDream, I have a textfile of email
  2387. addresses, and StrongEDæs interactive search facility means I can
  2388. quickly locate anyoneæs email address.
  2389. 10.4
  2390. (Help, please?! As the weeks and months go by, this file gets bigger
  2391. and bigger, and the addresses of those who email me frequently are
  2392. repeated over and over again. Would someone be prepared to write me a
  2393. simple application which takes a text file as input, and removes
  2394. adjacent lines that are identical? Shouldnæt be too difficult for
  2395. someone who knows what they are doing!)
  2396. 10.4
  2397. Ed. <paul.NCS@paston.co.uk>
  2398. 10.4
  2399. File download with ANT Suite Ö Now, I know you all know this (but I
  2400. didnæt)... If you are told thereæs a file you want at, say, ftp://ftp.
  2401. acorn.co.uk/pub/riscos/patches/printers153.arc, how would you get it?
  2402. Well, I would have loaded the ftp client application, accessed ftp.
  2403. acorn.co.uk and then worked my way laboriously through each of the
  2404. directories. Try this instead...
  2405. 10.4
  2406. Have a Marcel file containing a dummy email. Load the Marcel file
  2407. into your text editor (shift-double-click), add the ftp address on a
  2408. blank line anywhere in the email text and save it again. Load it into
  2409. Marcel and simply click on the address. It loads Fresco (not the ftp
  2410. client), finds the file and presents it (after a certain download
  2411. time) as a draggable directory Ö much easier!
  2412. 10.4
  2413. For users of StrongED, itæs even easier still!! You can simply drop a
  2414. text file containing the address onto the iconbar, or type in the
  2415. address, and then double-click on the address in StrongEDæs editing
  2416. window. It will load Fresco for you and hey presto!
  2417. 10.4
  2418. Ed. <paul.NCS@paston.co.uk>
  2419. 10.4
  2420. Keyboard fault? Ö Today the letter ÉNæ on my A310æs keyboard gave up
  2421. the ghost. Not being one to baulk at the idea of DIY repairs (or
  2422. attempted repairs!), out came my trusty screwdriver.
  2423. 10.4
  2424. After switching the machine off, I unplugged the keyboard and mouse,
  2425. and took the keyboard to a cleared table, complete with tablecloth.
  2426. 10.4
  2427. Turning the keyboard over revealed eight fixing screws, easily
  2428. removed. The case splits in two, and a further seven screws remove
  2429. the keyboard assembly from the case, and another 21 screws remove the
  2430. printed circuit board (PCB) from the keys. If you attempt this, I
  2431. suggest that you keep the assembly upside down or the bits may fall
  2432. out.
  2433. 10.4
  2434. The bottom of each key switch has a small silver disc which makes
  2435. direct contact with two semi-circular contacts on the PCB when
  2436. pressed. On my machine, it was these contacts which had accumulated
  2437. much Égrelpæ Ö it was a surprise that only the ÉNæ had stopped
  2438. working!
  2439. 10.4
  2440. It was tempting to use cotton wool and isopropyl alcohol, but cotton
  2441. wool is too hairy, Iæm told, so Iáused a screen cleaning pad Ö You
  2442. know, the ones that are similar to KFC finger wipes, though
  2443. Iáwouldnæt suggest you used one of those!
  2444. 10.4
  2445. As you can see from this, the letter ÉNæ is working fine now. As they
  2446. say, reassembly is the opposite to disassembly.
  2447. 10.4
  2448. Perhaps someone could comment on the equivalent procedure for later
  2449. machines.
  2450. 10.4
  2451. Tim Hill <tim.hill@argonet.co.uk>
  2452. 10.4
  2453. Keyboard cleaning is something that gets covered every so often, but
  2454. itæs over three years since the last time it was mentioned. If you
  2455. want more details, you can refer to: 3.9 p10,  4.7 p5,  5.1 p37,  5.2
  2456. p28 and 7.1 p32. Ed.
  2457. 10.4
  2458. PC partitions (10.3 p 66) Ö If you have version of !PCx86 later than
  2459. about 1.89, the !PCConfig application has another application,
  2460. !PCFormat, inside its Resources directory. This can be copied from
  2461. there and run independently to create as many DOS partitions as you
  2462. want, with any names. I use this to provide partitions for my Pocket
  2463. Book files to preserve names. It is quicker and simpler than keeping
  2464. them in archives, and DOS mapping is in force too.
  2465. 10.4
  2466. As the partitions are RISC OS files, they can be copied and moved and
  2467. you can have Drive_Cæs in more than one directory, or rename one as a
  2468. backup. Just be sure to have one of them where the PC expects to find
  2469. it, and that it has been formatted at some stage with the /s, system,
  2470. switch.
  2471. 10.4
  2472. When copying files between partitions only, Étruncateæ has no effect,
  2473. at least in RISCáOS 3.6.
  2474. 10.4
  2475. Another useful trick is to specify drive partitions on a path
  2476. variable, e.g. <PCDrives$Dir>.C or on a pseudo-filing-system, e.g.
  2477. PCDrives:C. Then the location of the drives does not have to be
  2478. fixed. Examine the application É!PCDrivesæ to see what Iámean.
  2479. 10.4
  2480. Lastly, as the partitions are files you can change their extent. What
  2481. good is that? If you create, say, an initialised 100Mb partition most
  2482. of it is empty; only the beginning contains disc data and space for
  2483. FAT etc. By removing the blank space you can have that 100Mb disc
  2484. occupying only 216Kb in RISCáOS if it is empty of DOS files.
  2485. Conveniently, as DOS files are added, RISCáOS extends the partition
  2486. to accommodate them, but not from DOS inside !PCx86. I have used this
  2487. for a while and had no problems at all (so far) to store and backup
  2488. DOS files. Active drive partitions will not work if shortened.
  2489. 10.4
  2490. The partitions created by É!PCFormatæ are not actually the sizes you
  2491. would expect, always smaller. How far you can reduce the extent
  2492. without overwriting the FAT area can probably be determined, but I
  2493. did it by trial. The reduced files are still nearly all empty so they
  2494. compress very well. Iáhave made an ArcFS archive of a useful
  2495. selection which you can copy out and rename.
  2496. 10.4
  2497. (Available on this monthæs program disc. Ed.)
  2498. 10.4
  2499. Steve Drain, Bridport
  2500. 10.4
  2501. TurboDrivers Ö Having reinstalled TurboDrivers following my upgrade
  2502. to StrongARM, I found that I could not remember how to fix the
  2503. position of the TurboDrivers status window and it took some time to
  2504. find. So I thought this might be of interest to others.
  2505. 10.4
  2506. To locate and fix your TurboDrivers status window, position the
  2507. status window where you want it, then press <f12> and type:
  2508. 10.4
  2509. *PQFSSaveWindows
  2510. 10.4
  2511. or
  2512. 10.4
  2513. *PQFS.
  2514. 10.4
  2515. (donæt forget the ö.ò after the öSò). If you donæt want it to appear
  2516. at all on start-up, close the window altogether and then use the
  2517. *PQFS. command.
  2518. 10.4
  2519. Chris Dawson <chris@seador.demon.co.uk>
  2520. 10.4
  2521. Hints and Tips
  2522. 10.3
  2523. ÉCanæt find file: Logonæ Ö With some software running on RISC OS 3.
  2524. 6/3.7, you get an error message saying it cannot find file ÉLogonæ.
  2525. It is likely be caused by a lazy programmer using a *LO. (*Load)
  2526. command. To avoid the problem, you have to make sure that any alias
  2527. for ÉLogonæ is unset.
  2528. 10.3
  2529. To find out if you have an Alias called Alias$Logon, either bring up
  2530. a task window (ctrl-f12) or press <f12> and, at the star prompt, type
  2531. SHOW, and then look through the list of Aliasæs for the above. (Or
  2532. use *SHOW A* to avoid looking through the whole list. Ed.)
  2533. 10.3
  2534. If you find it, then it is preventing you using *LO. The simple
  2535. answer is to unset this alias, by typing UNSET alias$Logon <return>.
  2536. This should not upset any of your programs unless you are using a
  2537. network, since this alias is used to allow an abbreviated method of
  2538. logging onto a file server!
  2539. 10.3
  2540. Chris Hughes <chris@cumbrian.demon.co.uk>
  2541. 10.3
  2542. HP printer problems Ö Concerning the problems with colour printing on
  2543. a 550C (Archive 10.2 p52): I used to have the same problem, but I
  2544. solved it by creating a drawfile with a dozen thin, not quite
  2545. horizontal lines, alternating in colour between yellow, cyan and
  2546. magenta. I dropped its icon onto the Pinboard, and every fortnight
  2547. !Alarm reminds me to print the file. Apparently, this keeps the
  2548. nozzles from clogging, because I have not had any problems since.
  2549. 10.3
  2550. Jochen Konietzko <uu1093@koeln.shuttle.de>
  2551. 10.3
  2552. HTML hint Ö A hint that other folks may have thought of: When
  2553. converting database or formatted tables into HTML table format, use a
  2554. spreadsheet to insert all the <tr><td> tags into the document.
  2555. 10.3
  2556. I use PipeDream 4 (Iæve not put my StrongARM in yet because PD4 is my
  2557. most used piece of software and I havenæt got my copy of 4.5 yet!)
  2558. and go through the following steps.
  2559. 10.3
  2560. I load the table into PD4. Insert columns where the <tr> and <td>
  2561. tags are to go. Replicate the tags down each column.
  2562. 10.3
  2563. I have a league table which changes every week. The table is
  2564. calculated in document(A) by PD4 and the columns of the table have
  2565. copies in every alternate column in document(B). If all the required
  2566. other tags are already in document(B) then it can be saved as plain
  2567. text, the filetype changed to HTML and Robert is your Uncle!
  2568. 10.3
  2569. You may see the crude results by looking at the URL: http://www.nwnet.
  2570. co.uk/dean/
  2571. 10.3
  2572. Barry Allen <barrya@dean.nwnet.co.uk>
  2573. 10.3
  2574. Installing cast-off 3.6 chips Ö With all these super StrongARMs
  2575. appearing, there are lots of sets of redundant RISCáOS 3.6 chips
  2576. floating around. So I thought Iæd give it a go. I did have some
  2577. difficulties, but have now successfully installed RISC OS 3.6 in my
  2578. old RiscPC 600, öwith a little help from my friendsò.
  2579. 10.3
  2580. It might help other people to explain what I did. Any references to
  2581. Config assume that you have double-clicked on !Boot to bring up the
  2582. Configure application.
  2583. 10.3
  2584. 1. I had problems with odd error messages when setting the monitor
  2585. config but these were solved by using a completely Évirginæ RISCáOS 3.
  2586. 6 !Boot application from the CD-ROM disc supplied with the StrongARM
  2587. upgrade.
  2588. 10.3
  2589. 2. Problems with a Cumana double-speed CD-ROM drive were solved as
  2590. follows...
  2591. 10.3
  2592. a. Move !BootIDECD out of the !Boot.Choices.Boot.PreDesk folder. Do
  2593. this before you fit the new ROMs, and you can leave the other steps b-
  2594. d until afterwards.
  2595. 10.3
  2596. b. Copy the module !BootIDECD.islcd_2 back into the PreDesk folder.
  2597. 10.3
  2598. c. *UNPLUG CDFSSoftATAPI (Do this before step d. or the machine will
  2599. Éfreezeæ and will require another power-on ÉRæ reset.)
  2600. 10.3
  2601. d. Reboot the machine and set the number of CD-ROM drives to 1 with
  2602. the configure routine. When the CD icon appears on the iconbar, check
  2603. the iconbar menu Configure=>Drives is also set to 1.
  2604. 10.3
  2605. (My thanks to Mark Gillman of Cumana for the above advice.)
  2606. 10.3
  2607. 3. Problems with the Castle Technology 16-bit SCSI card and 135Mb
  2608. Syquest drive were solved with a few bits of advice from Castle on
  2609. the use of the new !Setup application Ö there is no documentation
  2610. supplied with the application itself. The old SetupSCSI Basic program
  2611. can be used instead. Myáthanks to John Ballance of Castle Technology.
  2612. 10.3
  2613. Once the machine is up and running again with the new ROMs and !Boot
  2614. application, itæs just a question of copying over any modules,
  2615. applications etc, from the old !Boot application as and when you find
  2616. the need for them. Any modules that you need from the old !Boot.
  2617. Resources.!System.Modules folder should be copied into the new !Boot.
  2618. Resources.!System.360.Modules folder.
  2619. 10.3
  2620. Donæt forget that you do not require such applications as Chars,
  2621. Draw, Edit, Help, Paint in the $.Apps folder, as they are supplied in
  2622. ROM.
  2623. 10.3
  2624. In brief, to upgrade...
  2625. 10.3
  2626. 1. Move the old !Boot application into a folder called, say, $.
  2627. OldBoot.
  2628. 10.3
  2629. 2. Copy the new RISCáOS 3.6 Boot application from the CD-ROM. (If you
  2630. donæt have a CD-ROM drive, then youæll have to get hold of a copy on
  2631. floppy discs.)
  2632. 10.3
  2633. 3. Remove the old Apps such as Edit and Paint into a folder called,
  2634. say, $.OldApps.
  2635. 10.3
  2636. 4. Power down the machine tidily and change the ROMs. Take care!
  2637. 10.3
  2638. 5. Power the machine back on, holding down the ÉRæ key to reset the
  2639. CMOS configuration RAM.
  2640. 10.3
  2641. 6. Reset the appropriate configuration options, including the CD-ROM
  2642. drive as above.
  2643. 10.3
  2644. Happy upgrading for skinflints like me, who are too tight-fisted to
  2645. cough up for a StrongARM!
  2646. 10.3
  2647. P.S. One note of caution.
  2648. 10.3
  2649. Having successfully upgraded to RISCáOS 3.6, Iáfound that everything
  2650. worked fine. I then decided that it was time to take advantage of the
  2651. new filecore, and format my 850Mb Conner HD to the full 812Mb instead
  2652. of 511Mb, which was all that the old filecore could handle in one
  2653. partition.
  2654. 10.3
  2655. I therefore backed everything up onto a Syquest cartridge,
  2656. reformatted the disc, and restored all the data. Then I attempted to
  2657. run EasyFont-3, and it tartly informed me that this was not the disc
  2658. that it had been installed upon. I should have first un-installed
  2659. from the Éoldæ disc, thus gaining one credit on the master floppy
  2660. disc. Without the credit, you are snookered.
  2661. 10.3
  2662. (Am I the only person who hates these pedantic O.T.T. copy protection
  2663. measures?) (I can assure you that youære not alone! Ed.)
  2664. 10.3
  2665. So, remember to un-install Éfussyæ copy-protected programs such as
  2666. EasyFont, before upgrading to RISCáOS 3.6, or changing or
  2667. reformatting the hard disc, or anything else likely to make the
  2668. machine appear different!
  2669. 10.3
  2670. P.P.S. The good news is that EasyFont-Pro (which is SA compatible)
  2671. has a much better form of copy protection. As long as you still have
  2672. the original floppy disc, you can re-install as many times as you
  2673. like. Phew! Iæve coughed up my ú15 to upgrade.
  2674. 10.3
  2675. Richard Sterry <richard@waveg.demon.co.uk>
  2676. 10.3
  2677. PC partitions Ö This is the easiest way to get more space on Drive_C.
  2678. Create Drive_D of the desired size, using !PCConfig, then run the PC
  2679. Card and at the DOS prompt, type:
  2680. 10.3
  2681. format d: /s
  2682. 10.3
  2683. The É/sæ ensures correct copying of the system files. Now quit the PC
  2684. card, and ensure that Truncate is off by typing (after <f12> or from
  2685. a task window):
  2686. 10.3
  2687. configure truncate off
  2688. 10.3
  2689. Open filer windows on Drive_C and Drive_D, select all on Drive_C and
  2690. then deselect the system files (which are already on Drive_D). Drag
  2691. the selection to Drive_D.
  2692. 10.3
  2693. When the copying finishes, use !PCConfig to make Drive_D the only
  2694. partition seen by the PC Card (confusingly, it will still be called
  2695. ÉC:æ by DOS) and run !PC. When you have confirmed that the new
  2696. partition works you can quit !PC, rename the old Drive_C, rename
  2697. Drive_D as Drive_C and use !PCConfig to make sure that the PC Card
  2698. only sees the new Drive_C. In case of disaster, you still have your
  2699. original Drive_C so you can start again! Or you can delete it later.
  2700. 10.3
  2701. This method has never failed me. I have used it to make three
  2702. Éminimum sizeæ partitions containing only the files found on newly
  2703. set up DOS, Windows 3.1 and Windows 95 partitions (without the swap
  2704. files). In case of a disaster befalling one of my normal partitions,
  2705. I can easily get back to a newly set up partition without the painful
  2706. and time-consuming installation process.
  2707. 10.3
  2708. Seßn Kelly <skelly@argonet.co.uk>
  2709. 10.3
  2710. Photograph frames in Draw Ö Iárecently copied some old family
  2711. photographs for a friend for an album he was making up. Whilst we
  2712. were sweating in my darkroom, we were talking about the fact that the
  2713. only person who could recall the names and relationships of the
  2714. subjects was an old uncle. I suggested that it might be a good idea
  2715. to scan all of the available photographs to disc and add labels in
  2716. Draw with all the necessary details. We decided that this was a good
  2717. idea and, whilst doing this, I thought that some of the Victorian
  2718. photographs would benefit from having an oval frame around them.
  2719. 10.3
  2720. This was the beginning of many enjoyable hours trying to achieve the
  2721. required results. After much consultation of the manual, I discovered
  2722. the quirky little routine called The Winding Rule and, after a little
  2723. bit of experimentation, I found what was and was not possible.
  2724. 10.3
  2725. Once Iæd got my first frame, there was no stopping me Ö I had squares
  2726. in circles, circles in squares, triangles, ovals, stars and various
  2727. other shapes that have no geometric names, inside one another. I had
  2728. hearts with arrows, bottles with see-through labels, as well as
  2729. dozens of other indescribable shapes. Once Iæd satisfied my creative
  2730. urges I thought to myself ÉSurely I Canæt Be The Only Person In The
  2731. Acorn Fraternity Unaware Of Thisæ, so I decided to share it with the
  2732. rest of the world.
  2733. 10.3
  2734. Hereæs the method I used and some pretty æorrible examples of my
  2735. efforts. (On the Archive monthly disc. Ed.)
  2736. 10.3
  2737. Select Open Line Tool, single click at point A
  2738. 10.3
  2739. Move to point B, single click
  2740. 10.3
  2741. Move to point C, single click
  2742. 10.3
  2743. Move to point D, single click
  2744. 10.3
  2745. Move to point E, single click
  2746. 10.3
  2747. Select Move Tool
  2748. 10.3
  2749. Select Closed Curve Tool
  2750. 10.3
  2751. Single click at point F
  2752. 10.3
  2753. Move to point G, single click
  2754. 10.3
  2755. Move to point H, single click
  2756. 10.3
  2757. Move to point I, double click
  2758. 10.3
  2759. The basic shape is now drawn; clicking with <adjust> over the object
  2760. will allow it to be altered to suit.
  2761. 10.3
  2762. Use the select box and style menu to alter line thickness, and line
  2763. and fill colours.
  2764. 10.3
  2765. I have found the use of the PD application, Warfarin, invaluable in
  2766. the drawing of the frames, especially the keypress replacements for
  2767. the mouse buttons.
  2768. 10.3
  2769. Brian Coleman, Yar, Cleveland
  2770. 10.3
  2771. Portuguese keyboard Ö The command *country xxx configures the
  2772. keyboard, but the ROM keyboard driver has only the UK layout
  2773. definition, and no other. So, you need an international layout
  2774. definition module which will be selected by the *country command.
  2775. 10.3
  2776. Since there was no such module for Portugal, I made my own with an
  2777. application named !IKHG (Acorn International Keyboard Handler
  2778. Generator), which Iágot from APDL. This is a very old program (RISC
  2779. OS 2 epoch), but it is very efficient, easy enough to use, and it
  2780. works!
  2781. 10.3
  2782. I now have a Portugal module installed in my PreDesk directory. It
  2783. runs OK, and it drives my Portuguese keyboard on RISC OS 3.6!!! This
  2784. !IKHG should be on every non-UK Acorn computer! (If anyone wants a
  2785. copy, just email me.)
  2786. 10.3
  2787. Ricardoæs Portuguese keyboard driver plus a drawfile of the keyboard
  2788. layout is on this monthæs disc, and Iæll try to get hold of !IKHG,
  2789. too. It should be on the Acorn ftp site if I can find it! Ed.
  2790. 10.3
  2791. Ricardo Martins <ricmartins@mail.telepac.pt>
  2792. 10.3
  2793. StrongARM / ArcFS warning Ö Many PD and magazine discs (including
  2794. Archive!) have archived material, and include a copy of !ArcFS so
  2795. that files are self-extracting when clicked upon. Unfortunately, this
  2796. often turns into a computer crash as their copy of !ArcFS has not
  2797. been upgraded for StrongARM. A copy of the upgraded version is on the
  2798. StrongARM CD, so delete or rename the old !ArcFS copy on the disc,
  2799. because the computer will crash even when using the new copy once it
  2800. has Éseenæ the old one. You can then drag the files to your upgraded
  2801. copy of !ArcFS with no trouble.
  2802. 10.3
  2803. Lots of folk got caught on this one Ö sorry! Weæve updated all our
  2804. discs now (I think!) Ed.
  2805. 10.3
  2806. Eric Ayers <ewayers@argonet.co.uk>
  2807. Hints and Tips
  2808. 10.2
  2809. Acorn Toolbox from Assembler Ö Using the Acorn Toolbox from Assembler is
  2810. easy Ö even easier than from ÉCæ. Writing a WIMP application in
  2811. assembler must now be about as easy as it can ever get.
  2812. 10.2
  2813. By way of a demonstration, the !SoundTest application on this monthæs
  2814. disc assembles to less than 900 bytes and will run in a 2Kb wimpslot,
  2815. even though it supports an iconbar, a menu, info window, and a window
  2816. with three sliders, three display fields, a stringset and a button. Oh,
  2817. and of course thereæs interactive help everywhere as well!
  2818. 10.2
  2819. The header file defines the data areas required. The toolbox needs two
  2820. additional data areas Ö IDBlock which returns information about where
  2821. events have occurred, and FileDescriptor which holds information about
  2822. the messages file.
  2823. 10.2
  2824. Initialisation is straightforward. The WimpSlot size is checked, data
  2825. initialised, and then a call to Toolbox_Initialise:
  2826. 10.2
  2827. Setting r2 to zero ensures that the only Énormalæ wimp message returned
  2828. is Message_Quit. All other messages returned will be toolbox events, and
  2829. a pointer to a null terminated list of the required events is passed in
  2830. r4. Registers r5 and r6 point to FileDescriptor and IDBlock
  2831. respectively.
  2832. 10.2
  2833. The program then falls into a standard Wimp_Poll loop. If the message
  2834. returned is a toolbox event, the program looks up the event in the list
  2835. that was passed to Toolbox_Initialise, and then jumps to the associated
  2836. handler.
  2837. 10.2
  2838. Handling the events is very similar to pre-toolbox programs, except that
  2839. an abstract handle is returned in the IDBlock rather than the actual
  2840. window/icon causing the event.
  2841. 10.2
  2842. The trickiest part is initialising gadgets before theyære displayed for
  2843. the first time. This is achieved during the Toolbox_ObjectAutoCreated
  2844. event, when we can check the name of the object raising the event Ö
  2845. i.e.áöIconbarò, öMenuò, öProgInfoò or öWindowò in this case.
  2846. 10.2
  2847. Dave Appleby, York
  2848. 10.2
  2849. Alternative wastebin Ö I used to use a PD wastebin application, but
  2850. always begrudged the space on the iconbar. So, when I found it was
  2851. clashing with another application, I binned my bin.
  2852. 10.2
  2853. As a very effective alternative, I now use a directory on my hard disc
  2854. that is called up onto my desktop at boot-time, occupies very little
  2855. space, and makes a very effective waste bin. I start it up with:
  2856. 10.2
  2857. Filer_OpenDir scsi::SQ270.$.zzz 2348
  2858. 10.2
  2859.  1160 166 186 -sd -si
  2860. 10.2
  2861. This ensures that, whatever I have as the current filer display
  2862. settings, this particular directory has small icons (si) and is sorted
  2863. by date (sd) That means that the latest file created is at the top of
  2864. the directory and hence easily visible, despite the tiny size of the
  2865. filer window allocated to it.
  2866. 10.2
  2867. So, to delete a file or directory, I shift-drag it into zzz and then
  2868. when, finally, it tells me the directory is full, I open it up and
  2869. delete the lower two-thirds of the items (sorted by date, remember).
  2870. Itæs simple but effective.
  2871. 10.2
  2872. I use a similar startup for my RAMdisc:
  2873. 10.2
  2874. Filer_OpenDir RAM::RamDisc0.$ 1860
  2875. 10.2
  2876.  1156 134 156 -sd -si
  2877. 10.2
  2878. I actually use this more for my temporary files than the zzz directory Ö
  2879. because it empties automatically on switch-off!
  2880. 10.2
  2881. Ed <paul.NCS@paston.co.uk>
  2882. 10.2
  2883. Compression with the PC card Ö Aálot of people seem to be having trouble
  2884. using DoubleSpace and DriveSpace. These compression utilities work by
  2885. compressing the data written to your hard disc Éon the flyæ, so it
  2886. appears that your data is written normally when in fact it isábeing
  2887. stored in a highly compressed format.
  2888. 10.2
  2889. The compressed data is actually being stored in a very large hidden file
  2890. (called drvspace.001) which resides in the root directory of your PC
  2891. partition.
  2892. 10.2
  2893. The problem with this method of compression is that if this drvspace.001
  2894. file is accidentally deleted or corrupted, youæve lost all of your data.
  2895. The chances of this happening, however, are about the same odds as your
  2896. hard discs crashing which, in the long run, are very slim.
  2897. 10.2
  2898. There is no incompatibility that I know of, but because the program is
  2899. not being run on a 100% compatible PC, there could be complications. The
  2900. most reliable way of running DriveSpace is under Windows 95. To be even
  2901. more secure, there is a version on the MS Plus pack for Windows 95
  2902. called DriveSpace 3.
  2903. 10.2
  2904. If you really want to be on the safe side, stick with good old PKZIP.
  2905. With this, you can create nicely packed ZIP files with the ability to
  2906. access them with SparkFS.
  2907. 10.2
  2908. Anthony Wheeler <tech.NCS@paston.co.uk>
  2909. 10.2
  2910. DOS files from the PC card Ö I received two responses to my plea for
  2911. help (9.12 p27).
  2912. 10.2
  2913. First of all Dennis Aldcroft very kindly explained how I can actually do
  2914. this with PCExchange, although it is a bit of a fiddle. Basically,
  2915. Windows is loaded and then you go into DOS from there, save your file to
  2916. a floppy disc, which is then re-accessed from within Windows and saved
  2917. to the ClipBoard by associating the file to the Windows Notepad. PC
  2918. Exchange can then be used as before.
  2919. 10.2
  2920. Secondly, Jim Nottingham offered a simpler approach: save any DOS file
  2921. to the hard disc, and then Éfreezeæ the PC card. This does not interfere
  2922. with the application running in DOS but allows the file to be accessed
  2923. from within RISC OS by opening up the PC hard drive directory. Once the
  2924. file is found, it will need to have its type set to ÉTextæ, and it can
  2925. then be moved or copied to any RISC OS application.
  2926. 10.2
  2927. I am very grateful for these tips, and pass them on in the hope that
  2928. they might be useful for others.
  2929. 10.2
  2930. Colin Randall <carandall@argonet.co.uk>
  2931. 10.2
  2932. Double-click-hold Ö Alisdair McDiarmid (10.1 p18) points out a feature
  2933. of Larger, whereby if you double click and hold on a file, it is treated
  2934. as if shift were held down. Anyway, StrongED also provides this feature,
  2935. and jolly useful it is too! The latest version of StrongED (4.14 at the
  2936. time of typing) can be downloaded from:
  2937. 10.2
  2938. http://login.eunet.no/~guttorvi/strong.html
  2939. 10.2
  2940. Ian Clark <se96ic@dmu.ac.uk>
  2941. 10.2
  2942. EasyFont3 Ö When using EasyFont3, if you load an Impression file and get
  2943. a Éfont not foundæ message, drag the file onto Easyfont3, and the fonts
  2944. will be loaded and drawn, with no need to reload the file.
  2945. 10.2
  2946. Robert Lytton, Leeds
  2947. 10.2
  2948. Large Impression files Ö If you have a large Impression file and a large
  2949. amount of memory, Impression will try to load as much as possible into
  2950. memory. Most can then be removed by using ÉMinimise memoryæ (if it is a
  2951. document and not a file) but this process can take time when using 8Mb
  2952. on an older machine! By creating a RAMdisc to use up most of the surplus
  2953. memory (click <select> on Acorn, to bottom of Task window, click and
  2954. drag out a red bar ÉRAMdiscæ) less of the document will be able to be
  2955. loaded and so loading will be quicker! You can then menu ÉQuitæ the
  2956. RAMdisc to reclaim the memory.
  2957. 10.2
  2958. Robert Lytton, Leeds
  2959. 10.2
  2960. MoirΘ patterns on scanning Ö In last monthæs Help!!!! feature (10.1
  2961. p41), John Molyneux described how he used ImageMaster to minimise MoirΘ
  2962. patterns when using his Mustek scanner. There is a more Éscientificæ way
  2963. that I used with my Epson that ought to work with his scanner too:
  2964. 10.2
  2965. 1) Scan at high resolution, ideally the highest true resolution of the
  2966. scanner.
  2967. 10.2
  2968. 2) If there is MoirΘ patterning, set ImageMasteræs Alias Filter to
  2969. ÉLanczosæ. (Iconbar menu, use Choices.General, then set and OK or Save)
  2970. 10.2
  2971. 3) Resample (ImageMasteræs main menu, use Edit.Scale then click the
  2972. Resample radio icon, set to 90/90 and Click OK).
  2973. 10.2
  2974. After a few seconds delay, even the worst MoirΘ patterning will entirely
  2975. disappear.
  2976. 10.2
  2977. It appears to be necessary to Resample with a fairly wide variance from
  2978. the original scanning resolution. The closest numbers I have found
  2979. satisfactory have been: original scan at 600 dpi and resample at
  2980. 200ádpi.
  2981. 10.2
  2982. It is worth experimenting with a variety of numbers. The MoirΘ
  2983. patterning isnæt just reduced when this technique is employed Ö it
  2984. totally disappears and the improvements can be truly amazing.
  2985. 10.2
  2986. Malcolm Knight <malcolm@digidark.demon.co.uk>
  2987. 10.2
  2988. OCR Ö If you wish to use OCR with a Scanlight Professional, I have found
  2989. Sleuth2 works very well when using Twain set with maximum brightness.
  2990. Before, I used Sleuth1.5 which did a poor job and Iáhad trouble
  2991. preparing dark enough scans from the scanner.
  2992. 10.2
  2993. Robert Lytton, Leeds
  2994. 10.2
  2995. PC partitions Ö While I was working at NCS, a number of PC card users
  2996. called to ask how they could create more space on their Édrive_cæ
  2997. partitions. Attempts to copy DOS/Windows system files to another
  2998. partition and recreate drive_c, invariably end in tears and hair loss.
  2999. 10.2
  3000. To make life easier, the !PCConfig application allows you to create a
  3001. second partition, called drive_d. You create this in the same way that
  3002. you created the first drive_c partition, and DOS and Windows identify it
  3003. as drive ÉDæ.
  3004. 10.2
  3005. We recommend that you keep DOS and Windows on drive_c, making sure that
  3006. there is a little spare capacity, and create a drive_d on which you then
  3007. keep your applications and data. You should allocate around 25-30Mb for
  3008. DOS and Windows on drive_c.
  3009. 10.2
  3010. Richard Hesketh <NJ108@lamp.ac.uk>
  3011. 10.2
  3012. Printer driver problems Ö Some months ago, I read a article about
  3013. difficulties using !Printer 1.52 regarding a problem about page-formats
  3014. when using a image-setter.
  3015. 10.2
  3016. Iæve installed version 1.53 on a RiscPC connected to an image-setter,
  3017. and the problem disappears if you proceed as follows:
  3018. 10.2
  3019. Define a page-format in the printer driver of a size 10╫10 mm Ö
  3020. obviously too small for all your documents.
  3021. 10.2
  3022. Configure your PostScript driver to use this page-format. When using
  3023. ArtWorks, be sure that ÉSet page formatæ is on. When using Publisher,
  3024. the program will complain about the small page size. Click OK and not
  3025. Cancel.
  3026. 10.2
  3027. If you use landscape and portrait the correct way, you can save a lot of
  3028. bromide/film. Another advantage is that you never have to select a page-
  3029. format again in your printer driver.
  3030. 10.2
  3031. I donæt know what happens in other programs like Ovation Pro because I
  3032. donæt own this program (yet).
  3033. 10.2
  3034. Martijn Claassen <martijn.argos@pi.net>
  3035. 10.2
  3036. RiscPC special characters Ö In Archive 6.3, Gabriel Swords produced a
  3037. very useful display showing where the special alt-characters are on the
  3038. Archimedes keyboards. I have updated this for the RiscPC keyboard.
  3039. 10.2
  3040. Eddie Lord <72046.251@CompuServe.COM>
  3041. 10.2
  3042. (Thanks, Eddie! I find it most useful. I keep it above my desk. Iæve put
  3043. both that drawfile, and the original Archimedes one, on the monthly
  3044. program disc. Ed.)
  3045. 10.2
  3046. Tablemate and OLE Ö When using a Tablemate file and Impressionæs OLE
  3047. feature, the tablemate file is exported as a drawfile. If you save the
  3048. file and change the filetype to öBCFò or ötblmateò you can then reload
  3049. it into Tablemate to edit it before dragging it back into your
  3050. Impression document.
  3051. 10.2
  3052. Robert Lytton, Leeds
  3053. 10.2
  3054. TechWriter tips Ö Here are a number of tips from Jim Lesurf. If you have
  3055. any more, please send them in to Jim.
  3056. 10.2
  3057. Extending Ésmart quotesæ Ö Versions 2.17 and later of TechWriter Pro
  3058. (and recent editions of EasiWriter) offer Ésmart quotesæ and these are
  3059. jolly useful. One tap on the ` key gives É, two gives ö, three gives `
  3060. itself. Similarly, one tap on É gives æ, two ò, and three gives æ
  3061. itself. If you donæt like this feature, you can turn it off. Load the
  3062. Messages file into a text editor and find the lines:
  3063. 10.2
  3064.   x35:`Éö`
  3065. 10.2
  3066.   x35:ÉæòÉ
  3067. 10.2
  3068. x35: denotes these triple action commands. The first character after É:æ
  3069. is the key it is assigned to, and the following three characters appear
  3070. on pressing that key once, twice or three times. Usefully, you can add
  3071. extra keys to this list. For example:
  3072. 10.2
  3073.   x35:ÿùÿ
  3074. 10.2
  3075.   x35:..╖î
  3076. 10.2
  3077. Now theá-ákeyágivesá-á,áùáoráÿá, and the . key gives . or ╖ or î
  3078. (ellipsis). You can include up to seven x35 commands in the Messages
  3079. files, giving you access to up to 14 characters that are otherwise
  3080. awkward to get.
  3081. 10.2
  3082. Print button-bar icon Ö The defaults on TechWriter (may work on
  3083. EasiWriter too) are, for me, the wrong way around. To swap the defaults
  3084. on the print icon, proceed as follows: Load the Resources file into an
  3085. editor and change the line
  3086. 10.2
  3087.   w1:icbr Isave!11 10,68,4
  3088. 10.2
  3089. to
  3090. 10.2
  3091.   w1:icbr Isave!11 68,10,4
  3092. 10.2
  3093. This swaps the actions of select and adjust on this icon. If you look at
  3094. this file, you can see that the other button-bar icons work in a similar
  3095. way and, if you want, you can fiddle around with them, too. However,
  3096. proceed with care!
  3097. 10.2
  3098. Stationery and default choices Ö When using TechWriter (may work on
  3099. EasiWriter too) I keep myástationery in a directory called Stationery
  3100. inside !TechWriter. To tell the program where it is, Iáinclude a line in
  3101. the !Run file:
  3102. 10.2
  3103. Set TechWriter$Path <TechWriter$Dir>.Stationery.
  3104. 10.2
  3105. (Note the trailing full stop.) This command sets a path.
  3106. 10.2
  3107. You can then tell TechWriter which piece of stationery to use by default
  3108. by adding the É-uæ switch to the run command at the bottom of the run
  3109. file, e.g. in my case this reads Run .!RunImage %*0 -d  -ustyle_def -
  3110. r1600, so my default stationery is the file Éstyle_defæ inside the
  3111. !TechWriter.Stationery directory.
  3112. 10.2
  3113. Other useful switches: the É-r1600æ switch tells TechWriter to keep the
  3114. current document wholly in memory unless it gets bigger than 1600Kb.
  3115. i.e. it sets the file size below which TechWriter avoids any disc-
  3116. swapping and keeps the current file Éclosedæ unless youære loading/
  3117. saving. You can use É-ræ to set any size you find convenient.
  3118. 10.2
  3119. The -b switch followed by a font name, causes that font to be displayed
  3120. and printed Éback to frontæ. This is useful if you want to write in
  3121. languages like Hebrew which read/write from right to left. It means you
  3122. can mix a right-to-left language with a left-to-right one in the same
  3123. document and each will come out the correct way around.
  3124. 10.2
  3125. The -o switch sets the Éeasy save directoryæ. That means it sets where a
  3126. file will be saved if you give a plain name (what Acorn call a
  3127. leafname). e.g. if you set this to
  3128. 10.2
  3129. -oADFS::HardDisc4.$
  3130. 10.2
  3131. and then save a file as fred it will be saved to the file
  3132. 10.2
  3133. ADFS::HardDisc4.$.fred .
  3134. 10.2
  3135. Modern Choices! Ö Acorn have decided that instead of putting default
  3136. settings in the run command of TechWriteræs (and perhaps EasiWriteræs)
  3137. !Run file, they should be saved in a ÉChoicesæ file elsewhere in the
  3138. machine. This is to facilitate the Net machines which have the
  3139. applications in ROM. Try looking for it inside !TechWriter or the !Boot
  3140. application on the main hard disc. Specifically, look for a file
  3141. !Boot.Choices.TechWriter.Choices. If it exists, it over-rules anything
  3142. you may set on the run line, so you should make any changes in the
  3143. !Choices file.
  3144. 10.2
  3145. Jim Lesurf <jcgl@st-and.demon.co.uk>
  3146. 10.2
  3147. The characters shown in bold are produced by pressing the relevant key
  3148. in conjunction with either the Alt key on its own or both the Shift and
  3149. Alt keys:-
  3150. 10.2
  3151. e.g.   to type ó hold down Alt and press the C key
  3152. 10.2
  3153.   to type ⌐ hold down Shift and Alt and press the C key.
  3154. 10.2
  3155. The characters indicated by an arrow are intended to be used in
  3156. conjunction with other keys to produce accented letters; in each case
  3157. the accent is only produced if the Alt-key combination is followed by an
  3158. appropriate letter: e.g. to produce Θ you first type Alt-[ then type e.
  3159. If you want the accent on its own, follow the Alt-key combination by
  3160. pressing the spacebar.
  3161. 10.2
  3162. Alt-<hyphen> produces a öhard hyphenò (character 173)
  3163. 10.2
  3164. Alt-<spacebar> produces a öhard spaceò (character 160)
  3165. 10.2
  3166. Hints and Tips
  3167. 10.1
  3168. Larger Ö I have recently stumbled upon a feature of Larger which I now
  3169. use regularly. I cannot find any reference to it in the manual.
  3170. 10.1
  3171. When you double-click on an application on the backdrop, or in a filer
  3172. window, it runs as you would expect. However, when you double-click and
  3173. Éholdæ the second click down, the application is opened, as if <shift>
  3174. were held down.
  3175. 10.1
  3176. I think that Larger causes this, as it seems to work only when Larger is
  3177. loaded.
  3178. 10.1
  3179. Alisdair McDiarmid <a.mcdiarmid@zetnet.co.uk>
  3180. 10.1
  3181. Ink for Canons Ö I read with interest the letter detailing the
  3182. successful use of non-generic inks for Canon printers. I have a BJC 600
  3183. and have successfully refilled its cassettes many times using a
  3184. hypodermic with a narrow needle. However, recently, the machine simply
  3185. stopped printing, and I began to believe the head was damaged. I rang
  3186. Canonæs helpline and the first question I was asked was öhave you used a
  3187. non-Canon ink?ò Readers should be aware therefore that the use of such
  3188. inks probably constitutes a breach of the warranty agreement, and that
  3189. should be taken into account.
  3190. 10.1
  3191. P.S. The problem with the printer was solved by simply feeding a great
  3192. deal of good paper through it, presumably cleaning the head thoroughly
  3193. in the process.
  3194. 10.1
  3195. Kevin Beales, Highley, Shropshire.
  3196. 10.1
  3197. PowerTec SCSI II + PC Card Ö If you use these two, you may have found,
  3198. like me, that SCSI discs formatted to DOS do not work with the PC card.
  3199. I found that if you format the discs as ÉBlankæ and then use FDisk and
  3200. Format from DOS to format them, they work fine.
  3201. 10.1
  3202. Ian Clark <rooster@cat1.demon.co.uk>
  3203. 10.1
  3204. RTF facilities Ö Reference to Kate Crennellæs request for RTF conversion
  3205. (Archive 9.12 p13) there are two Rich Text Format (RTF) PD utilities
  3206. !RTFwriter and !RTFreader, both v.1.10, by Darryl Sims. These will
  3207. convert RTF version 1 text files to Acorn Edit text format and vice
  3208. versa.
  3209. 10.1
  3210. Both utilities are available on Risc Disc CD 1 in the Shareware DTP
  3211. directory also on Datafile PD CD 1 Issue 2 in the Applications
  3212. directory. They may also be downloaded from Arcade BBS.
  3213. 10.1
  3214. They seem to cope very well with most files, and are recommended to
  3215. anyone wanting to do occasional conversions.
  3216. 10.1
  3217. Both utilities are on the Archive magazine disc.
  3218. 10.1
  3219. Colin Sutton, Bradford.áuá
  3220. 10.1
  3221. Hints and Tips
  3222. 9.12
  3223. C++ Operator Summary Ö Itæs a bit late to go with my series, but C++
  3224. programmers who reHints and Tips
  3225. 10.1
  3226. Larger Ö I have recently stumbled upon a feature of Larger which I now
  3227. use regularly. I cannot find any reference to it in the manual.
  3228. 10.1
  3229. When you double-click on an application on the backdrop, or in a filer
  3230. window, it runs as you would expect. However, when you double-click and
  3231. Éholdæ the second click down, the application is opened, as if <shift>
  3232. were held down.
  3233. 10.1
  3234. I think that Larger causes this, as it seems to work only when Larger is
  3235. loaded.
  3236. 10.1
  3237. Alisdair McDiarmid <a.mcdiarmid@zetnet.co.uk>
  3238. 10.1
  3239. Ink for Canons Ö I read with interest the letter detailing the
  3240. successful use of non-generic inks for Canon printers. I have a BJC 600
  3241. and have successfully refilled its cassettes many times using a
  3242. hypodermic with a narrow needle. However, recently, the machine simply
  3243. stopped printing, and I began to believe the head was damaged. I rang
  3244. Canonæs helpline and the first question I was asked was öhave you used a
  3245. non-Canon ink?ò Readers should be aware therefore that the use of such
  3246. inks probably constitutes a breach of the warranty agreement, and that
  3247. should be taken into account.
  3248. 10.1
  3249. P.S. The problem with the printer was solved by simply feeding a great
  3250. deal of good paper through it, presumably cleaning the head thoroughly
  3251. in the process.
  3252. 10.1
  3253. Kevin Beales, Highley, Shropshire.
  3254. 10.1
  3255. PowerTec SCSI II + PC Card Ö If you use these two, you may have found,
  3256. like me, that SCSI discs formatted to DOS do not work with the PC card.
  3257. I found that if you format the discs as ÉBlankæ and then use FDisk and
  3258. Format from DOS to format them, they work fine.
  3259. 10.1
  3260. Ian Clark <rooster@cat1.demon.co.uk>
  3261. 10.1
  3262. RTF facilities Ö Reference to Kate Crennellæs request for RTF conversion
  3263. (Archive 9.12 p13) there are two Rich Text Format (RTF) PD utilities
  3264. !RTFwriter and !RTFreader, both v.1.10, by Darryl Sims. These will
  3265. convert RTF version 1 text files to Acorn Edit text format and vice
  3266. versa.
  3267. 10.1
  3268. Both utilities are available on Risc Disc CD 1 in the Shareware DTP
  3269. directory also on Datafile PD CD 1 Issue 2 in the Applications
  3270. directory. They may also be downloaded from Arcade BBS.
  3271. 10.1
  3272. They seem to cope very well with most files, and are recommended to
  3273. anyone wanting to do occasional conversions.
  3274. 10.1
  3275. Both utilities are on the Archive magazine disc.
  3276. 10.1
  3277. Colin Sutton, Bradford.áuá
  3278. 10.1
  3279. Bitfolio clipart Ö The Bitfolio Edition 7 CD¡ROM, reviewed in Archive
  3280. 9.6 p9, has quite rightly come in for many plaudits. The high quality of
  3281. the images and the sheer value for money, in my view, really puts all
  3282. other collections well in the shade. Some problems have come to light
  3283. but, fortunately, aásimple workround seems to apply to nearly all cases.
  3284. A few drawfiles on the CD wonæt load (a few out of 10,000? I think we
  3285. can live with that!). However, others hit problems when dropped directly
  3286. into applications such as Artworks, Impression, Ovation, etc.
  3287. 9.12
  3288. Fortunately, applying what appears to be a universal workround, is a
  3289. trivial task. Simply double-click on the drawfile icon to load the image
  3290. into Draw, call up a Save...File dialogue box and drag the Save as icon
  3291. to its destination (Artworks, Impression etc). Hey presto! Ö no Artworks
  3292. crashes, and the graphic loads into the DTP frame at exactly 100% scale;
  3293. problem solved.
  3294. 9.12
  3295. Jim Nottingham <toms@ndirect.co.uk>
  3296. 9.12
  3297. Cumana SCSI 2 upgrades Ö Whilst browsing on Acornæs FTP site, I
  3298. discovered two upgrades for the Cumana SCSIá2 card, versions 2.00 and
  3299. 2.01. I tried version 2.00 first and then 2.01 Ö dated 7 June 96. Both
  3300. worked fine. However, when Iácame to use the SCSI manager program to
  3301. format and partition a new 650Mb Panasonic cartridge for my ProTeus
  3302. drive, I discovered, to my amazement, that I could obtain 8 (yes eight!)
  3303. partitions Ö the original SCSI4 to 7 plus SCSI0 to 3. There is no
  3304. mention of this in the read me files. I phoned Cumana support, who
  3305. confirmed that eight partitions were now available, in spite of !Help
  3306. and other documentation still insisting that, because of RISCáOS
  3307. restrictions, only four partitions out of a possible 64 can be obtained
  3308. with this card. Anyway, Iáhad a device, partitioned into eight sections,
  3309. running for several days without any problems.
  3310. 9.12
  3311. Later, however, I encountered a small problem when switching on my
  3312. machine. It started to hang, and Iáneeded to switch on and off two or
  3313. three times before I could get the !Boot running from my ADFS HardDisc4.
  3314. After a lot of trial and error, I found a small item in the Read Me file
  3315. mentioning that some SCSI hard drives did not like SCSI resets on power
  3316. up. From the SCSI manager screen, I selected the Host and then clicked
  3317. on Set Host ID. Under SCSI Reset, I changed the selected button from
  3318. Enabled to Delayed Ö problem solved.
  3319. 9.12
  3320. The upgrades can be found on the Acorn FTP site ftp://ftp.acorn.co.uk/
  3321. pub/riscos/thirdparty/cumana. Any members, who are not on the Net, can
  3322. get a copy from me at 50 Cornwall Road, Southampton, SO18 2QZ, sending a
  3323. blank formatted disc and return postage.
  3324. 9.12
  3325. Ted Lacey <tedell@argonet.co.uk>
  3326. 9.12
  3327. New TurboDrivers Ö Following an email exchange between James Taylor of
  3328. NCS and Kate Moir of Computer Concepts weæve acquired the following
  3329. information about the new versions of the TurboDrivers:
  3330. 9.12
  3331. New versions of Computer Conceptsæ TurboDrivers have recently been
  3332. released.
  3333. 9.12
  3334. The latest shipping version of TurboDriver (4.05) will only install to
  3335. versions 1.45, 1.52 and 1.53 of !Printers. The TurboDriver installer has
  3336. to upgrade the !RunImage file of !Printers, and Computer Concepts are
  3337. limited Ö by disc space Ö to the number of replacement !RunImages they
  3338. can offer. They decided that as versions 1.45Ö1.53 constituted the
  3339. latest versions of !Printers, it made more sense to support them and
  3340. drop support of the previous versions.
  3341. 9.12
  3342. The TurboDriver uses !Printers as a öfront endò but uses its own
  3343. rendering and queueing system. The rendering system is quite different
  3344. from the standard Acorn system, and the queueing system complements and
  3345. interacts with the Acorn system, actually improving printout times from
  3346. applications which do not use the Acorn graphics output mode (i.e. Edit,
  3347. First Word Plus, etc).
  3348. 9.12
  3349. As to a comparison of quality, Computer Concepts feel that the
  3350. TurboDriver is better, and certainly, the full control of halftone
  3351. angles, that the TurboDriver offers, provides the user with much greater
  3352. control over the output quality. However, assessing quality of output is
  3353. very subjective.
  3354. 9.12
  3355. All the TurboDrivers have been upgraded (Epson, Canon and HP). An
  3356. existing user of, say, the Canon TurboDriver can purchase the Epson and/
  3357. or HP printer engines and definition files for an additional ú11.75each
  3358. (inclusive) from Computer Concepts.
  3359. 9.12
  3360. It is possible to have two (or more) different types of TurboDriver
  3361. resident in !Printers at one time. The only requirement is that the
  3362. TurboDriver definitions be the same version, i.e. Epson TurboDriver 4.05
  3363. and Canon TurboDriver 4.05. Epson TurboDriver 4.04 will not work with
  3364. Canon TurboDriver 4.05.
  3365. 9.12
  3366. When using a non-TurboDriver printer definition files with a copy of
  3367. !Printers which has had the TurboDrivers installed into it, RISCáOS
  3368. printing is via Acorn code, and queueing via TurboDriver code.
  3369. 9.12
  3370. Recent improvements in speed and quality have been made to !Printers.
  3371. There has been speculation that !Printers has closed the gap, or even
  3372. overtaken, the TurboDrivers in terms of speed.
  3373. 9.12
  3374. Speed of output is dependent upon too many variables to quote specifics.
  3375. An additional 100Kb of free memory can make a significant difference in
  3376. the time to output.
  3377. 9.12
  3378. Computer Concepts claim that the TurboDriver is still significantly
  3379. faster than !Printers 1.53 in most areas of printing. Multiple copies of
  3380. multi-page documents will always be faster via the TurboDriver, as will
  3381. ArtWorks images and RISC OS text documents. Single bitmap (and JPEG
  3382. bitmaps) may be faster via the standard Acorn drivers.
  3383. 9.12
  3384. Alex Allen <tech.NCS@paston.co.uk>
  3385. 9.12
  3386. Upgrading PC cards Ö Readers who install 486-100 or pentium processors
  3387. may like to be warned; if you have already upgraded your software to
  3388. !PCx86, do not be tempted to skip installing this when you receive your
  3389. new processor package. There are bits and pieces in the latest version
  3390. without which you will have trouble, so install the lot (!PCx86, PCDos7
  3391. and all).
  3392. 9.12
  3393. Colin Buckland <colin.buckland@ci.educ.lu>
  3394. 9.12
  3395. Hints and Tips
  3396. 9.11
  3397. C/C++ Books Ö I found öC For Dummiesò from IDG Books a perfect tutorial.
  3398. Itæs informal and American, but it explains everything in a very
  3399. comprehensible manner. The ISBN is 1-878058-78-9 and it costs ú18.99,
  3400. although IDG Media in the UK (the publisher of Acorn User) may be able
  3401. to do you a special deal. The company also produces a öFor Dummiesò book
  3402. on C++.
  3403. 9.11
  3404. IDG Media, Media House, Adlington Park, Macclesfield SK10 4NP.
  3405. aueditor@idg.co.uk, http://www.idg.co.uk, or http://www.idg.com.
  3406. 9.11
  3407. Alex Singleton, Surrey
  3408. 9.11
  3409. A circle in perspective Ö Most drawing programs can draw an ellipse.
  3410. Most artists will use this when drawing (say) the top or bottom of a
  3411. vase, but a circle in perspective is not an ellipse!!
  3412. 9.11
  3413. Firstly, choose a square to fit the circle. Draw this square, with its
  3414. diagonals, in perspective to a suitable vanishing point, as shown. Where
  3415. the diagonals cross, draw the line marked Édiameteræ. Draw the line OA.
  3416. This is used to draw an octagon in perspective.
  3417. 9.11
  3418. Construct the octagon ... Where the line AO cuts the diagonals, draw
  3419. horizontal lines to D and C. Do similarly for E and F on the other side.
  3420. 9.11
  3421. Draw a continuous curve to touch the centres of the sides of the octagon
  3422. (where the sides cut the diagonals and diameter).
  3423. 9.11
  3424. Click on the bottom icon of the toolbox to get the dotted box around the
  3425. drawing. Use the Éhandlesæ to alter the size and shape! Copy it, then,
  3426. anywhere you like!
  3427. 9.11
  3428. John Mitchell, Wishaw
  3429. 9.11
  3430. Internet data overload Ö I found that I was keeping more and more items
  3431. from the internet newsgroups, just in case I needed to refer to them
  3432. again, such as FAQ, useful contacts, or WWW addresses. But, of course,
  3433. trying to find anything with only file names to go on was impossible.
  3434. 9.11
  3435. I thought about designing a database in my database package, but then a
  3436. Clares advert suggested Knowledge Organiser II. I found someone who had
  3437. a demo, but that only showed searching, not creating a database, but I
  3438. took a chance anyway and decided to buy it with the aim of getting
  3439. organised. I havenæt regretted it Ö the demo does not do it justice!
  3440. 9.11
  3441. KO II is all about storing text and giving it references to make it easy
  3442. to find again. Perfect for this use. As well as the built in context
  3443. code fields, you can add your own Ö which I didnæt realise at first. So
  3444. my database has a field for the news item title, plus date downloaded,
  3445. and then uses the KO II context code fields to Édescribeæ the entry. You
  3446. can also add more codes as you gradually learn your search requirements.
  3447. Iæve already been able to search for things I stored days before, going
  3448. straight to the article instead of guessing, wrongly, where I put it.
  3449. 9.11
  3450. The package could do with a couple of improvements which I have
  3451. suggested to Clares, but I would certainly recommend it for anyone
  3452. struggling as Iáwas. KO II costs ú75 through Archive.
  3453. 9.11
  3454. Clive Bell <crbell@argonet.co.uk>
  3455. 9.11
  3456. Hints and Tips
  3457. 9.9
  3458. Impression shortcuts Ö I used to find it difficult in Impression to
  3459. remember which was which of the two key shortcuts for super- and
  3460. subscripts, <shift-ctrl-J> and <shift-ctrl-K>, until I decided to let
  3461. <J> stand for ÉJumpæ and <K> for ÉKneelæ. Now I have no problems anymore
  3462. with that!
  3463. 9.9
  3464. (Similarly, for kerning, thereæs <shift-U> and <shift-J>, so I think of
  3465. <U> for ÉUpæ and then as <J> is below <U> on the keyboard, thatæs easy
  3466. to remember. Then there is <shift-E> which Expands the gap between
  3467. letters and <shift-R> which Reduces it. Ed.)
  3468. 9.9
  3469. Christian Puritz <chrn.puritz@argonet.co.uk>
  3470. 9.9
  3471. Marcel help Ö Because I send and receive so many emails, Marcel soon
  3472. begins to slow down due to the huge mail files created. (I checked my
  3473. ÉSentæ file today and it had 190 messages in it, covering the last two
  3474. weeks.) I therefore have to Éemptyæ it reasonably regularly. Also, I was
  3475. rather exercised by the fact that I wasnæt archiving my in-coming emails
  3476. Ö just replying to them and deleting them. What happens if I want to
  3477. refer to them again later? I would be interested to hear other peopleæs
  3478. solutions, but mine is as follows...
  3479. 9.9
  3480. On a separate hard disc, in a ÉBackupæ directory, Iáhave two text files;
  3481. SentEmails and Received. All Iádo is double-click the SentEmails file
  3482. which loads into Edit and then drop the Marcel Sent file into it, press
  3483. <f3> and save it again. This works because, although Marcel mail files
  3484. have a different filetype, they are basically just textfiles. Finally, I
  3485. delete the Marcel Sent file. Next time I send an email, Marcel notices
  3486. there is no Sent file and prompts me, and I let it create a new one. I
  3487. do a similar thing to archive the incoming email by dropping Marcelæs
  3488. INBOX file into a textfile called Received in the same backup directory.
  3489. 9.9
  3490. I suppose you could do a similar sort of backup system within Marcel,
  3491. but the files would have to be kept within the Marcel directory. So, you
  3492. could put a backup Marcel file called, say, S, in a sub-directory of the
  3493. Mail directory called, say, Z. You would then open the Sent file in
  3494. Marcel, Select All and then Move To Z.S and then click on the Ébinæ in
  3495. the Sent file display.
  3496. 9.9
  3497. The drawbacks with this are (a) it only works if using a subdirectory,
  3498. i.e. you canæt put it on a different hard drive and (b) you have to
  3499. actually open your Sent file in Marcel (rather than in Edit) which, with
  3500. 190 messages, can take quite a few seconds. Also, if you ever tried to
  3501. open the Z.S file with hundreds of messages in it, youæd need to go for
  3502. a long tea-break. You can, of course, open a Marcel file in Edit by
  3503. holding down <shift> and double-clicking, but if your finger slips off
  3504. the shift key or if you forget to press it, the resultant hold-up can be
  3505. very frustrating!
  3506. 9.9
  3507. Ed.
  3508. 9.9
  3509. Sibelius lyrics Ö In Sibelius, lyrics below a stave can be deleted by
  3510. clicking on a word until it goes red ... then pressing Édeleteæ. When
  3511. the word extends over more than one note, it is followed by a Élyric
  3512. lineæ (word_______,). Usually, clicking turns the word and the lyric
  3513. line red at the same time.
  3514. 9.9
  3515. I deleted a word... but the lyric line remained black. Clicking on this
  3516. lyric line did not turn it red for deleting, and the more I clicked, the
  3517. longer the lyric line extended! It reached the end of the piece, and I
  3518. thought I was stuck with it and would have to type the piece again.
  3519. 9.9
  3520. Then, by chance, I clicked on the extreme righthand end of the lyric
  3521. line... Four pages of lyric line turned red... and I deleted it. Phew!
  3522. 9.9
  3523. John VEG Mitchell, Wishaw
  3524. 9.9
  3525. Hints and Tips
  3526. 9.8
  3527. ArcFax <Ö> Met Office Ö Users of David Pillingæs ArcFax system may be
  3528. finding it impossible to access the Met. Officeæs suite of MetFax
  3529. transmissions. These cover a vast number of products including satellite
  3530. pictures and plotted weather charts. The problem is that most automatic
  3531. Édial and receiveæ attempts are foxed by the first few seconds of the
  3532. MetFax broadcast which is a voice message saying öPlease press startò
  3533. (or something to that effect).
  3534. 9.8
  3535. The solution is simple Ö dial the number (say 0336-400-400 for the index
  3536. page) from the handset, listen to the connection, and click on ÉReceiveæ
  3537. when instructed. David says that a string of commas after the dialling
  3538. code should work, as each comma introduces a short pause between the
  3539. Édialæ and the Éreceiveæ. However, I have not experimented enough yet to
  3540. know how many commas are needed.
  3541. 9.8
  3542. Rodney Blackall, Battersea.
  3543. 9.8
  3544. Artworks centring Ö In using ArtWorks to create a mini poster for a
  3545. friend of mine, I needed to centre several objects on the page. I used
  3546. the align command, but found that the objects were aligned around their
  3547. centres while still not being centred on the page.
  3548. 9.8
  3549. I solved the problem by drawing a rectangle round the print margin
  3550. outline and then selecting all the objects and aligning them. The outer
  3551. rectangle could then be deleted, leaving the remainder correctly
  3552. positioned on the paper.
  3553. 9.8
  3554. David Wild, Hemel Hempstead.
  3555. 9.8
  3556. CD-ROMs Ö Now that CD-ROMs have become very cheap I have wandered round
  3557. such shops as GAME looking for sources of clipart and photographs for
  3558. use in DTP work. There is quite a lot of clipart available and, although
  3559. it does tend to have an American bias, much of it is quite usable in
  3560. Britain. Although you may need a Windows program on the PC card to use
  3561. the browse facilities, such programs as WMF->Draw will allow the files
  3562. to be transferred without difficulty.
  3563. 9.8
  3564. For photographs, ChangeFSI will work on almost all of them. There are
  3565. many interesting photographs available but I donæt feel that they are,
  3566. generally, as useful as the clipart. This is, perhaps, because a
  3567. photograph is too realistic. A drawing of a shop assistant will
  3568. illustrate almost any article about shops, but a photograph tends to
  3569. attract questions about the particular subject.
  3570. 9.8
  3571. Whilst looking at various collections of photographs in GAME, I bought a
  3572. cheap disc called ÉPhoto Gallery #2æ from Expert Systems. This claimed
  3573. to have ömore than 3,000 photographs... in full colourò and
  3574. öprofessional qualityò. According to Count, there were exactly 3,000,
  3575. but many of them were in black and white, and any professional producing
  3576. work like that would soon find himself looking for another job. The
  3577. quality of them was Évariableæ!
  3578. 9.8
  3579. I wrote to the importers, with a detailed list of comments, and they
  3580. promised to pass on my comments to the firm in the United States. This
  3581. was well before Christmas but I have heard no more, and donæt suppose
  3582. that I will.
  3583. 9.8
  3584. Clipart and photographs from Keysoft seem quite good and I have used a
  3585. number from the Corel Draw! 3 disc. I then bought Corelæs ÉGallery IIæ
  3586. clipart disc which has some useful pictures on it. Unfortunately, the
  3587. files on this disc are stored in ÉCMXæ format which, until the updated
  3588. version of ImageFS appears, needs the Windows program to get at it. On
  3589. just two occasions, I managed to get files out of it, but every other
  3590. time it has collapsed with a ÉStack faultæ when Iáhave tried to extract
  3591. any data although it displays the Éthumbnailsæ without any difficulty. I
  3592. wrote to Corel about the problem but have had no reply.
  3593. 9.8
  3594. An interesting point about ÉClipartæ is that the phrase is often used
  3595. about work to which it doesnæt apply. The work of Christopher Jarman is
  3596. often given away by the magazines under this heading, but I feel that it
  3597. is misclassified. I have no complaints about the pictures, except that
  3598. they make me very envious, but to my mind, clipart is something that you
  3599. use for incidental illustration, while these are pictures to look at and
  3600. admire.
  3601. 9.8
  3602. David Wild, Hemel Hempstead.
  3603. 9.8
  3604. Email accessory Ö An essential (for me!) email accessory is a little
  3605. program called !PtrCopy, written by Ran Mokady in about 1991. What it
  3606. does is, when you press <alt> and <ctrl> at the same time, it looks at
  3607. the bit of screen under the mouse pointer and if it finds a letter in
  3608. system font, it puts that letter into the keyboard buffer. If the
  3609. pointer then slides over some more system font letters, it adds those
  3610. into the keyboard buffer too. Can you see the application?
  3611. 9.8
  3612. Suppose I have an email on screen and someone says, öI suggest you email
  3613. Fred Czyzechoski <Czyzechoski @Pzyzorkzy.noyta.cccp>ò and you want to
  3614. type the email address into a ÉSend Emailæ window, youæll be jolly glad
  3615. you donæt have to type it!
  3616. 9.8
  3617. Seriously, any time I have one bit of text in an email and I need to
  3618. type it somewhere else, <ctrl-alt> and slide the pointer does it
  3619. quickly, easily and accurately!
  3620. 9.8
  3621. I managed to track Ran down and he kindly agreed that we could put the
  3622. application on the Archive monthly program disc.
  3623. 9.8
  3624. Ed.
  3625. 9.8
  3626. Email English Ö I take what Paul says about the standard of English in
  3627. emails and, in particular, correct spelling. One way is to use a word
  3628. processor of some description and then drop a text file into the email
  3629. window of the Internet application.
  3630. 9.8
  3631. This is OK, but it is more effort Ö itæs much easier just to type a
  3632. reply using the text editor which the Internet software pulls up. I have
  3633. found something better Ö ÉSpellæ from David Pilling (ú10 through
  3634. Archive). When running, as it is now, it is clever enough to
  3635. continuously check anything typed into an icon or window and beep on
  3636. wrong words. It even has a Éforesightæ window to guess what I am about
  3637. to type.
  3638. 9.8
  3639. Itæs just what I needed. I would recommend it to anyone. I will be
  3640. setting it up to load automatically when I run my Voyager internet
  3641. application.
  3642. 9.8
  3643. (Great idea, Clive, thanks! Iæve tried it myself and find it works very
  3644. well indeed. Ed.)
  3645. 9.8
  3646. Clive R Bell <crbell@argonet.co.uk>
  3647. 9.8
  3648. Formatting v initialising Ö With any new hard disc (or removable
  3649. cartridge), you will first need to Éprepare it for useæ. This is
  3650. variously termed formatting, initialising, partitioning, and many other
  3651. things besides. Unfortunately, the terminology is used in contradictory
  3652. ways depending on who you talk to, and this causes a great deal of
  3653. confusion. Most manufacturers refer to the time-consuming low-level
  3654. process of marking the disc surface with tracks and sectors as
  3655. formatting. This is what you do with new floppy discs (which come
  3656. unformatted). However, the difference is that all hard discs and
  3657. removable cartridges are formatted in the factory, and do not need to be
  3658. formatted again, ever! It may even be a rather bad idea to reformat a
  3659. disc Ö I have had people claim that since they did this, their disc has
  3660. become very unreliable.
  3661. 9.8
  3662. All that needs to be done to a new hard disc is to write onto it the map
  3663. and catalogue information which tell the RISC OS filing system what is
  3664. stored on the disc and where it is. To start with, there is no data on
  3665. the disc, of course, but that fact still has to be recorded in a form
  3666. that the filing system understands. This process of initialising the
  3667. disc to indicate that there is nothing on it, is most often called
  3668. initialising but, unfortunately, not everyone calls it that.
  3669. 9.8
  3670. Unlike formatting, initialising is a more or less instantaneous process,
  3671. and that can be quite an alarming thing as Paul found out last month
  3672. when he initialised his main data disc! Fortunately for him,
  3673. initialising a disc does not actually remove data from the disc surface,
  3674. it merely tells the disc to forget that there is anything on it.
  3675. (öMerelyò, he says! Huh! Ed.) It is therefore possible to recover many
  3676. files from an accidentally blanked disc using a utility such as Disc
  3677. Rescue (ú33 through Archive).
  3678. 9.8
  3679. Partitioning is a term used in association with SCSI discs, and is
  3680. closely related to initialising. You can designate different parts of a
  3681. SCSI disc to behave as if they were discs in their own right and, under
  3682. RISCáOS, they actually appear as separate drive icons. The process of
  3683. partitioning is the initialisation of each of these parts of the disc
  3684. and, theoretically, each partition can be initialised for use under a
  3685. different system (such as RISC OS, UNIX, DOS, etc). So, to initialise a
  3686. SCSI disc so that it shows as a single drive icon, you would still
  3687. partition it, but with only one RISC OS partition and no others.
  3688. 9.8
  3689. The software that you use to do all this for IDE discs is !HForm. SCSI
  3690. interface cards, however, each come with their own very individual disc
  3691. management software Ö and this is where much of the confusion lies. Some
  3692. use the terms Éformatæ and Éinitialiseæ in completely the opposite
  3693. sense, or they mix and match other terms with these in such a random way
  3694. that they cease to have any meaning at all. The important thing, when
  3695. you attempt to Éprepare a disc for useæ, is that you read the SCSI
  3696. management instructions analytically to work out just how confused the
  3697. author was before you attempt to follow them.
  3698. 9.8
  3699. (James has had to Éinterpretæ the makersæ instructions to confused
  3700. customers on a number of occasions Ö I think you can detect the note of
  3701. exasperation! Ed.)
  3702. 9.8
  3703. James Taylor <tech.ncs@paston.co.uk>
  3704. 9.8
  3705. Impression problems Ö If you have upgraded Publisher beyond 4.05
  3706. recently (or 5.05 if you have Plus) and started getting errors about
  3707. missing fonts, and such-like, at fairly regular intervals, youære not
  3708. alone! CC changed the software because of problems with RiscPCs of more
  3709. than 20Mb (or some such) but it seems to have introduced problems for
  3710. those of us with more modest amounts of memory!
  3711. 9.8
  3712. The solution is to stop it using the dynamic memory areas. This will
  3713. slow it down a bit, I was told Ö although I havenæt really noticed any
  3714. speed decrease. Load the !Run file and add the following as the very
  3715. first instruction in the file:
  3716. 9.8
  3717. Set Impression$NoDynamicAreas 1
  3718. 9.8
  3719. Ed.
  3720. 9.8
  3721. Printers 1.52 and Paint Ö If people are complaining that Printers 1.52
  3722. will not print sprites in colour from Paint (as I found on my A5000/
  3723. HP500C), there are two workarounds:
  3724. 9.8
  3725. a) Drop the sprite in Draw and print it from there.
  3726. 9.8
  3727. b) Put the following into an Obey file and run it before starting
  3728. Printers:
  3729. 9.8
  3730.   Set Printers$DPLJfullQ Full
  3731. 9.8
  3732. This gives you back the 256 colour option in the Printers control panel,
  3733. as well as the three dithering options, which was available in previous
  3734. releases of Printers. As Paint is not as clever as Draw about rendering
  3735. colour information (so I have read), it can only handle 256 colour
  3736. modes. If you now set Paint to a 256-colour mode, it will print in
  3737. colour.
  3738. 9.8
  3739. John Jervis <john@zen.icl.co.uk>
  3740. 9.8
  3741. Programming Errors Ö This is something Iáuse for programming, to help
  3742. with sorting out Basic programming errors. I put the following two
  3743. lines:
  3744. 9.8
  3745. OSCLI öSet Alias$? Show Program_errorò
  3746. 9.8
  3747. ON ERROR OSCLI(öSet Program_error ò+
  3748. 9.8
  3749. REPORT$+ö at line ò+STR$(ERL)):END
  3750. 9.8
  3751. at the start of my Basic Wimp program, and add:
  3752. 9.8
  3753. OSCLI(öSet Program_error ò+REPORT$+
  3754. 9.8
  3755. ö in line ò+STR$(ERL))
  3756. 9.8
  3757. to my Basic error handling PROC.
  3758. 9.8
  3759. If the program encounters an error, it stores the error report and line
  3760. number in a system variable. The variable has a nice meaningful name,
  3761. but typing all that out is too much bother, so a question mark is
  3762. defined as a system alias. All you need to do is to press <f12>, type a
  3763. <?> and <return>, and your error info is presented. I use Edit, by the
  3764. way. Of course, you could open a task window and enter ? there instead
  3765. of via <f12>.
  3766. 9.8
  3767. This little tip saves me a lot of trouble, as I keep forgetting what
  3768. error occurred, or at which line.
  3769. 9.8
  3770. Anton Mans <antonm@raven.vironix.co.za>
  3771. 9.8
  3772. Pure printing colours Ö With a colour printer, colour can often be used
  3773. to enhance text, for example by emphasising headings. In these
  3774. conditions, the precise hue is usually not important, but arbitrary
  3775. choice of hues often results in disappointing results. The appearance
  3776. tends to be Édottyæ or muddy, because the hue is approximated by using a
  3777. mixture of different colours, and does not match the resolution and
  3778. crispness of black text.
  3779. 9.8
  3780. To avoid this, use the CMYK palette option in your word processor, etc,
  3781. and select only saturated C, M or Y by dragging the colour sliders to
  3782. 100% for the chosen hue and 0% for the others. The print will then
  3783. consist of dots all the same hue and will appear bright and crisp. You
  3784. are, of course, limited to four colours (including black).
  3785. 9.8
  3786. Eric Ayers <ewayers@argonet.co.uk>
  3787. 9.8
  3788. Reading DOS format hard discs Ö An undocumented bonus feature of the
  3789. Alsystems Powertec SCSIá2 card is that, if you present it with a hard
  3790. disc in DOS format, it will recognise this and access it through DOSFS.
  3791. I only noticed this recently while setting up an internal 270Mb SyQuest
  3792. in a RiscPC due to go out to a customer. I like to make sure that all
  3793. the configuration, SCSI device settings, termination links etc are set
  3794. up correctly, and also that all the cartridges are initialised for use
  3795. under RISCáOS. At one stage, I put a cartridge in that was Épreformatted
  3796. for DOSæ and, to my surprise, a directory display appeared with several
  3797. SyQuest ReadMe files in it! It was possible to read and write to the
  3798. disc, but a phone call to Alsystems revealed that they are still working
  3799. on being able to initialise discs to DOS format.
  3800. 9.8
  3801. James Taylor <tech.ncs@paston.co.uk>
  3802. Hints and Tips
  3803. 9.7
  3804. Audio balance Ö I recently bought an audio mixer card for my (early)
  3805. RiscPC 600. I have just Ö finally Ö managed to balance the output of
  3806. left and right audio channels from my CD-ROM drive through the audio
  3807. mixing card. The method given in the instructions requires repeated
  3808. dismantling of the computer. I gave up after five attempts.
  3809. 9.7
  3810. I have just noticed that !SCSIMgr for the Cumana SCSI 2 cards has an
  3811. option for adjusting the audio output. It only took three attempts
  3812. (fifteen seconds in total), to get the output accurately set!
  3813. 9.7
  3814. David Crossley <david@dacross.demon.co.uk>
  3815. 9.7
  3816. ANT Internet Suite Ö One or two hints, having used this a fair bit for
  3817. email and news...
  3818. 9.7
  3819. Old news Ö When you subscribe to a new newsgroup, it will download news
  3820. from that group starting from the last time you downloaded any news. If
  3821. you want to pick up news from that group from some time ago, you have to
  3822. do it by fiddling with the relevant files. (Iæll tell you how to do it,
  3823. but canæt accept any responsibility if you mess it up. OK?)
  3824. 9.7
  3825. Assuming you have just subscribed to the new group, go into the
  3826. !InetSuite.Internet.Spool.News directory and copy the /active file as /
  3827. activeOLD, or somesuch. Edit the original /active file and delete all
  3828. the groups you donæt want. Now go into the !InetSuite.Internet.Files
  3829. directory and copy the !InetNews file as, say, !IntNewsO. Edit !InetNews
  3830. and change the line:
  3831. 9.7
  3832. Last: 960215 140659 GMT
  3833. 9.7
  3834. to read whatever starting time/date you want. (As you can probably
  3835. gather, the format is yymmdd hhmmss.) Then load up !IntSuite, connect to
  3836. your provider and download mail and news. Finally, go back to the two
  3837. files you changed, delete the edited versions and restore the original
  3838. versions by renaming them as      /active and !InetNews.
  3839. 9.7
  3840. To avoid duplicating news, you may want to download the news normally
  3841. before following the above procedure so that you donæt duplicate the
  3842. news from the new group when you download normally next time.
  3843. 9.7
  3844. Mailshots Ö (There may be an easier way, if so, tell me, please, but...)
  3845. If you want to mail to a number of different people, you can obviously
  3846. have aliases and type, into the CC box on the öMail to fileò window:
  3847. 9.7
  3848. fred, bert, harry, etc
  3849. 9.7
  3850. To simplify it even more, you can set up an alias such as blokes which
  3851. is defined as:
  3852. 9.7
  3853. fred, bert, harry, etc
  3854. 9.7
  3855. and then just type blokes in the CC box of the Send Mail to File box.
  3856. 9.7
  3857. If you want to send postings to multiple news groups, you can, again,
  3858. either use aliases to avoid all the typing, or prepare the message and
  3859. then edit the OUTNEWS file. Simply extend the line:
  3860. 9.7
  3861. Newsgroups: comp.sys.acorn.misc[0d]
  3862. 9.7
  3863. to something like:
  3864. 9.7
  3865. Newsgroups: comp.sys.acorn.misc,comp. sys.acorn.apps,comp.sys.acorn.
  3866. advocacy[0d]
  3867. 9.7
  3868. Note that there are no spaces between the newsgroup names, just a comma.
  3869. 9.7
  3870. Set alias Ö I hope you have discovered this wonderful command! Click on
  3871. a window in which a posting or an email is displayed, click on <menu>
  3872. and then select ArticleÖ>Set alias or MessageÖ>Set alias and up comes
  3873. the Address Book window with the name and address neatly typed out
  3874. waiting for you to add an appropriate alias. Wonderfully simple!
  3875. 9.7
  3876. Editing aliases Ö Iæm sure everyone else had sussed this except me! It
  3877. seemed that sometimes when I edited an alias, it created a second
  3878. version and so I had to delete the first, but then when I wanted to
  3879. create two different aliases, it simply edited the one! öWhatæs the
  3880. rule?ò, I asked the excellent ANT support team (always, only an email
  3881. away!). Itæs simple, and logical, and obvious Ö once you know. If you
  3882. alter the alias name, it creates a new definition, in addition to the
  3883. old one, but if you edit the definition, it has to just change it Ö it
  3884. cannot create a complete new alias, otherwise you would then have two
  3885. definitions of the same alias name.
  3886. 9.7
  3887. Ed.
  3888. 9.7
  3889. ScanLight 256 Ö I remember recently an article saying that version 1.15
  3890. of the ScanLight 256 software needed upgrading to 1.59 to work on the
  3891. RiscPC.
  3892. 9.7
  3893. My scanner is secondhand so I cannot do that. When I tried to load the
  3894. application, it put its icon on the iconbar, but clicking on this did
  3895. not give the relevant dialogue box. However, when I got my RiscPC, I had
  3896. some funnies with Ovation, and one comment from Beebug was to use one of
  3897. the old modes. So I thought I would try this with ScanLight.
  3898. 9.7
  3899. Typing in öMode 27ò (rather than 16 colours and 640╫480) allowed me to
  3900. get a dialogue box which was partly off the bottom right hand corner of
  3901. the screen but could be dragged into full view and seemed to behave
  3902. normally.
  3903. 9.7
  3904. Then one day, I had been using Artworks and loaded the scanner, having
  3905. forgotten the above. After some time, I realised it was working
  3906. perfectly normally despite the fact that I was in a new mode (256
  3907. colours, 600╫800). When I loaded ScanLight and then tried to load
  3908. Artworks I got an error relating to a module called ABIMod. The version
  3909. in ScanLight was an older version than the one in Artworks, and when I
  3910. updated the one in ScanLight it worked as it did previously on my A5000.
  3911. 9.7
  3912. So the new version 1.59 of ScanLight may have some tweaks to the
  3913. software, but doing the above (if you have Artworks) gets it working and
  3914. it saves you ú11.75!
  3915. 9.7
  3916. Keith Baxendale <kjbax@argonet.co.uk>
  3917. 9.7
  3918. Toggle-size answer Ö (RiscPC only) Thanks to all those who sent in an
  3919. answer to Paulæs toggle-size trouble in last monthæs Help! Column. It
  3920. was, indeed, a CMOS RAM configuration setting. However, there is no
  3921. simple way of altering it without using a small Basic program of the
  3922. following form, but I must warn you that, before playing, you should
  3923. save your configuration by using !Configure, so that you can restore it
  3924. if you make a mess!
  3925. 9.7
  3926. Byte%=28
  3927. 9.7
  3928. Bit%=4
  3929. 9.7
  3930. SYSöOS_Byteò,161,Byte% TO ,,CMOS%
  3931. 9.7
  3932. IF CMOS% AND 1<<Bit% THEN
  3933. 9.7
  3934.  PRINTöWas 1 now set to 0ò
  3935. 9.7
  3936.  CMOS%=CMOS% AND NOT 1<<Bit%
  3937. 9.7
  3938. ELSE
  3939. 9.7
  3940.  PRINTöWas 0 now set to 1ò
  3941. 9.7
  3942.  CMOS%=CMOS% OR 1<<Bit%
  3943. 9.7
  3944. ENDIF
  3945. 9.7
  3946. SYSöOS_Byteò,162,Byte%,CMOS%
  3947. 9.7
  3948. This program swaps the state of bit 4 within byte 28 of the CMOS RAM
  3949. each time you run it, and has the immediate effect of making windows
  3950. that are toggle-sized, open as far as, but not obscuring, the iconbar.
  3951. Holding <shift> down reverses the behaviour.
  3952. 9.7
  3953. This is by no means the only configuration setting not available by any
  3954. other method. If you alter the program so that Bit%=1, it will change
  3955. the setting for solid icon drags, so that, when you drag a file icon,
  3956. you will either get a moving icon or just a dotted box. This option also
  3957. takes immediate effect.
  3958. 9.7
  3959. When Bit%=0, this tells RISC OS whether to truncate filenames that are
  3960. too long (i.e. greater than ten characters) and therefore potentially
  3961. overwrite an existing file, or to give a (rather meaningless) error
  3962. message to prevent you from saving a file unless it has ten characters
  3963. or less in the name. You need to reset the computer before this option
  3964. will take effect.
  3965. 9.7
  3966. There are several others, and they are all documented on page 1-356 of
  3967. the PRMs. I will put a copy of the program on the monthly disc.
  3968. 9.7
  3969. James Taylor, NCS
  3970. 9.7
  3971. Impression non-smart quotes Ö Having crowed about how wonderful it was
  3972. that Impression (4.08/5.08) now produces automatic smart quotes, I am
  3973. recanting slightly. How are you supposed to get unsmart quotes, e.g. for
  3974. 5╝ö and 3╜ò, without switching the smart quotes off and on again?
  3975. 9.7
  3976. My partial answer is the abbreviations function. I use ö5oò as
  3977. abbreviation for 5╝ö and ö3oò for 3╜ò. But what about 14ö and 17ò
  3978. monitors, etc? Well, I tried defining öoò as a single unsmart double
  3979. quote, but if you type ö17oò, it doesnæt expand the öoò, so you have to
  3980. type 17<space>o<space><left><left><delete><right><right>! Anyway, I have
  3981. now defined ö21oò as 21ö, ö17oò as 17ò and ö14oò as 14ö, so thatæs OK
  3982. until someone wants to talk about a 19╜ò monitor!
  3983. 9.7
  3984. Ed.
  3985. 9.7
  3986. RiscPC hole cutting Ö I keep reading how difficult people are finding it
  3987. to cut the openings on the RiscPC for new drives etc. I must admit I
  3988. donæt agree. Forget drills/hacksaws/ordinary knives Ö the tool to use is
  3989. a laminate cutting blade in a standard Stanley knife. This is the blade
  3990. which looks like a small blade set at a angle (not the curved one). It
  3991. is used by scoring through the plastic, it is very controllable and it
  3992. doesnæt wander easily as it locates nicely in the grooves. It only takes
  3993. a few strokes along each groove to cut through. I then use a small craft
  3994. knife to trim any slightly uneven edges and into the very corners. I
  3995. have now cut two openings like this and have had no problems. The
  3996. computer is the RPC600 and is 12 months old, so I believe it is one of
  3997. the thick plastic ones.
  3998. 9.7
  3999. Malcolm Sanders, Malcolm.Sanders@bbc.co.uk
  4000. 9.7
  4001. PCx86 Cards Ö Hints & Tips
  4002. 9.7
  4003. Jim Nottingham
  4004. 9.7
  4005. The article in Archive 9.1 p41 led to a fair amount of correspondence
  4006. with readers continuing to have problems in setting up their PC cards
  4007. and others coming up with excellent advice, so this is a follow-on
  4008. article to bring everyone up to date.
  4009. 9.7
  4010. One thing I hadnæt made clear in the original article was that the hints
  4011. and tips were aimed at configuring the Acorn PC card for the RiscPC.
  4012. However, a reader pointed out that the majority apply equally well to
  4013. Alephæs range of standard-size expansion cards.
  4014. 9.7
  4015. Erratum
  4016. 9.7
  4017. Thanks to Mike Clarkson for correcting my careless error in linking
  4018. Microsoft with the DOS software issued with the PC cards. In practice,
  4019. we get PC DOS which is produced by IBM Ö sorry about that.
  4020. 9.7
  4021. Software and documentation
  4022. 9.7
  4023. There are reports of Acorn cards being sent out with two versions of
  4024. support software and user-guides, marked öPC 486ò and öPC x86ò
  4025. respectively. Not unreasonably, some PC486 card buyers have used the
  4026. former to set up their card. This is a bit naughty of the suppliers as
  4027. it should be noted that the PCx86 software (v1.91 or later) and user-
  4028. guide supersede those marked PC486 and are applicable to all Acorn PC
  4029. card variants.
  4030. 9.7
  4031. Drive formatting
  4032. 9.7
  4033. A number of people responded to my request for a reason for the
  4034. formatting funny described in the original article and elsewhere.
  4035. Especial thanks go to John Woodgate whose technical explanation not only
  4036. fitted the numbers perfectly but was sufficiently clear even for a
  4037. simple chap like me to understand! As John points out, there are two
  4038. definitions for a megabyte in general use:
  4039. 9.7
  4040. Å The first (which Iæll call Defn 1 for reference) is the simple one
  4041. which is that a Mb is a million bytes. Seems reasonable... In decimal
  4042. terms, this could be expressed as 106 bytes. So, for example, a 270Mb
  4043. SyQuest cartridge would cater for 270 ╫ 106 bytes, or 270,000,000 bytes.
  4044. 9.7
  4045. Å The second definition (Defn 2) is that, in computer terms (i.e.
  4046. binary), a megabyte is 220 bytes or 1,048,576 bytes. I hadnæt met this
  4047. one before, but we may be more familiar with the equivalent figure for a
  4048. Kb which is 210, or 1,024 bytes.
  4049. 9.7
  4050. From these numbers, we see that, numerically, there seems to be roughly
  4051. a 5% difference between the two definitions used for a Mb, and this is
  4052. what we get in practice. So, for the nominally 270Mb SyQuest cartridge,
  4053. we may see either of the following:
  4054. 9.7
  4055. Å Defn 1: 270,000,000 bytes ≈ 106 = 270Mb
  4056. 9.7
  4057. Å Defn 2: 270,000,000 bytes ≈ 220 = 257Mb
  4058. 9.7
  4059. In practice, we see both definitions being used and this has led to the
  4060. confusion about drive formatting. For example, if I stick a 270Mb
  4061. cartridge (using Defná1) into my SyQuest drive and click on Free on the
  4062. drive icon, Size will return only 256Mb. So this appears to be using the
  4063. Defn 2 method. However, it seems that, when we come to use !PCConfig to
  4064. set up a disc partition, this uses Defn 1 for the partition size. Very
  4065. confusing for the punters!
  4066. 9.7
  4067. So Johnæs explanation clarifies why, if the SyQuest cartridge returns
  4068. only 256Mb free (using Defn 2), it is possible Ö and indeed sensible Ö
  4069. to use !PCConfig to set up a full 270Mb PC partition (using Defn 1). As
  4070. proof of the pudding, once the partition has been set up on the drive,
  4071. we can perform Count on the partition icon (drive_x) and get ö270xxxxxx
  4072. bytes totalò.
  4073. 9.7
  4074. I think itæs worth noting that, although the two definitions apparently
  4075. give different capacities, we arenæt actually losing out if we use Defn
  4076. 2; in principle, we will still be able to squeeze the full 270 million
  4077. bytes onto the drive, even though Size suggests only 256Mb are
  4078. available. In practice, however, there will always be the additional
  4079. overheads for directories and file block size to contend with, reducing
  4080. the space actually available for data.
  4081. 9.7
  4082. Configuring for Windows
  4083. 9.7
  4084. The Éfeatureæ of DOS which has caused readers most problems is how to
  4085. finish up with the desired Windows desktop display following boot-up
  4086. (using Windows v3.xx). As described in the original article, this is
  4087. achieved by adding the C:WIN command at the end of the DOS main ÉBootæ
  4088. file (AUTOEXEC.BAT). In the event, all the reported problems proved to
  4089. have only two root causes, so Iæll look at these in some detail:
  4090. 9.7
  4091. Line terminator
  4092. 9.7
  4093. The first one is my fault (sorreeeee...). Iæd said to add C:WIN to the
  4094. end of the AUTOEXEC.BAT file but omitted to say that, if you are using
  4095. !Edit to do this, you should end the line with the [0d] line terminator.
  4096. Until you do, the WIN command will have no effect. Unfortunately, some
  4097. readers had added the [0d] by typing it in as a 4-character string. The
  4098. [0d] is in fact Editæs way of displaying the Carriage Return code in
  4099. hexadecimal (described in the Text Import article in Archive 8.3 p65). I
  4100. should have suggested the complete procedure:
  4101. 9.7
  4102. Å Load the AUTOEXEC.BAT file into !Edit.
  4103. 9.7
  4104. Å With the mouse, <select-drag> to mark a [0d] character present on any
  4105. line (any one will do Ö note that it is a single character; not a 4-
  4106. character string).
  4107. 9.7
  4108. Å Type in C:WIN at the bottom but, before pressing <return>, press
  4109. <ctrl-C>. This will copy the marked [0d] command and add it to the end
  4110. of the C:WIN command.
  4111. 9.7
  4112. Å Press <ctrl-Z> to deselect the marked [0d].
  4113. 9.7
  4114. Å Press <return> to terminate the C:WIN[0d] command line.
  4115. 9.7
  4116. Å If present, delete the DOSSHELL command by deleting the line (probably
  4117. immediately preceding the C:WIN[0d] command) reading something like
  4118. C:\DOS\DOSSHELL.EXE[0d].
  4119. 9.7
  4120. Å Save the AUTOEXEC.BAT file.
  4121. 9.7
  4122. Some other text editors (e.g. StrongEd) automatically sort out correct
  4123. line terminators so, if you modify your AUTOEXEC or SYS files etc using
  4124. an alternative to !Edit, you may find you donæt need to follow the above
  4125. procedure for entering the [0d] command.
  4126. 9.7
  4127. Errors in AUTOEXEC.BAT
  4128. 9.7
  4129. This is one of the areas where DOS is not very friendly. If there is an
  4130. error in our main RISC OS !Boot file, for instance, this will be
  4131. detected during boot-up, RISC OS will bring up an explanatory error
  4132. message box and politely wait for us to click on OK.
  4133. 9.7
  4134. Not so with DOS! Any problems in AUTOEXEC.BAT will be detected, and DOS
  4135. will throw up an error message (e.g. öInvalid commandò) Ö but will keep
  4136. on going. So it is very easy to miss an error message in the fog of the
  4137. numerous copyright messages etc and, when everything stops, wonder why
  4138. we havenæt finished up with the Windows desktop.
  4139. 9.7
  4140. The only thing I can suggest here, if you hit problems, is to keep a
  4141. very beady eye on all the messages that scroll up the screen while DOS
  4142. is booting up Ö the cause of the problem may well be embedded somewhere
  4143. in there. Indeed, as boot-up progresses, it might help to either click
  4144. on Freeze or take one or more screenshots of the DOS window, using
  4145. !Paintæs snapshot feature (I find !Snippet ideal for this purpose). Then
  4146. you can read the start-up script at leisure and, hopefully, spot any
  4147. problems.
  4148. 9.7
  4149. CD-ROM drive
  4150. 9.7
  4151. Configuring a CD-ROM drive so that it has a unique drive letter, and
  4152. doesnæt clash with other drives, is another area which seems to have
  4153. caused readers no end of problems. My recommendation to leave it until
  4154. last and follow the procedure on p24 of the original Acorn PC486 user-
  4155. guide to the letter didnæt work for everyone. Colin Bucklandæs method
  4156. described in Archive 9.6 p26 worked for him, but didnæt work for me or
  4157. others who tried it!
  4158. 9.7
  4159. So where does that leave us? Acorn seem to have picked up the problem by
  4160. modifying the procedures as given in the current user guide (PCx86), and
  4161. also adding further advice in the Read_Me file included with the CD-ROM
  4162. installation files that come with the card.
  4163. 9.7
  4164. Should you continue to have clashing drive problems of the type
  4165. described by Colin Buckland, it seems the definitive answer is to add an
  4166. extension to the relevant command line in AUTOEXEC.BAT to specify the
  4167. CD-ROM drive letter. Thus, for example, if you already have two PC
  4168. partitions set up as drive_c and drive_d respectively, and therefore
  4169. wish to configure the CD-ROM drive as drive_e, you would add the
  4170. extension so that the command line reads:
  4171. 9.7
  4172. C:\DOS\MSCDEX /D:MSCD000 /L:E
  4173. 9.7
  4174. The final letter E specifies the drive identifier. This is a handy
  4175. option because one reader mentioned that some early CDs for PCs assume
  4176. the CD-ROM drive is identified as drive_f. So you could cause your drive
  4177. to be correctly identified by giving the command line the extension /
  4178. L:F. However, in that event, there will be a Égapæ in the drive
  4179. lettering and, for this to work (as described in the Read_Me file), you
  4180. also have to add the cryptic command LASTDRIVE=Z to your CONFIG.SYS
  4181. file. Isnæt DOS friendly...?
  4182. 9.7
  4183. Boot-up time
  4184. 9.7
  4185. There were various rather uncomplimentary comments about the sheer time
  4186. taken for DOS and Windows to boot up. Welcome to the wonderful world of
  4187. PCs, say I! Iæm afraid this is an inevitable result of using a complex,
  4188. inelegant, disc-based operating system and GUI. So, to a large extent,
  4189. we are stuck with it.
  4190. 9.7
  4191. However, there are a number of things we might do to prune at least some
  4192. of the excess, and here are a few suggestions:
  4193. 9.7
  4194. Memory allocation Ö During DOS boot-up, much of the time is taken up by
  4195. HIMEM testing the extended memory. This appears to be almost directly
  4196. proportional to the amount of RAM allocated for use by the PC card. This
  4197. is adjusted using the Memory section in !PCConfig, so it is easily
  4198. reduced or, if you then find yourself short of memory, just as easy to
  4199. restore.
  4200. 9.7
  4201. Single user Ö If you are running the network version of Windows (v3.11)
  4202. on a stand-alone machine, you can trim a few seconds by adding an
  4203. extension to the C:WIN command in your AUTOEXEC.BAT file so that it
  4204. reads C:WIN /n[0d]. A by-product of this, is that the pretty Microsoft
  4205. logo welcome display is omitted Ö but I think we can live with that...
  4206. 9.7
  4207. Start-up configuration Ö Acorn have given us an extremely flexible set
  4208. of options for initiating and modifying the PC card start-up routine.
  4209. These have major effects on the time taken, so having got used to how we
  4210. wish to use the card, we can configure the start-up to give us the
  4211. preferred optimum. This is easily achieved using the three options in
  4212. the Start-up section of !PCConfig.
  4213. 9.7
  4214. Start up on iconbar Ö This option is probably best for those users who
  4215. wish to go straight into using RISC OS with minimum delay, but who may
  4216. wish to use the PC card at some later stage in the session. It is near-
  4217. instantaneous in that it simply loads !PCx86 onto the iconbar without
  4218. starting up DOS/Windows. When you eventually wish to use the PC card,
  4219. clicking on the PC icon as normal initiates DOS/Windows start-up, but
  4220. the downside is that it will then take some time to complete the start-
  4221. up routine.
  4222. 9.7
  4223. Full screen Ö This option is probably best for those users who wish to
  4224. go straight into using the PC card from switch-on. The full screen is
  4225. taken over by DOS/Windows but the time taken to complete the start-up
  4226. routine is minimised. If, during this process, you wish to revert to
  4227. RISC OS, this is achieved simply by clicking <menu> which transfers the
  4228. DOS/Windows display into a RISC OS window. Start-up will continue albeit
  4229. at a slower rate but, in the meantime, you can use the RISC OS desktop.
  4230. 9.7
  4231. RISC OS window Ö This option is perhaps the most convenient compromise
  4232. for general use as DOS/Windows will start up from switch-on and in the
  4233. background, albeit at a snailæs pace (time for a cuppa?). But if you
  4234. then want to use the PC card straight away, and wish to speed things up,
  4235. simply double-clicking in the window converts it to a full-screen
  4236. display and minimises the time taken to complete the remainder of the
  4237. start-up. However, if you want to use the RISC OS desktop instead, and
  4238. the PC window intrudes, simply click on the latteræs close icon to
  4239. remove it. This freezes the DOS/windows start-up but, next time you
  4240. click on the PC icon to re-open the PC window, start-up resumes from
  4241. where it left off.
  4242. 9.7
  4243. Altogether a very flexible and user-friendly set of options; thanks
  4244. Acorn.
  4245. 9.7
  4246. Windows 95
  4247. 9.7
  4248. I havenæt yet installed or used Windows 95 on an Acorn machine, so
  4249. cannot comment on compatibility etc. However, Mike Buckingham has
  4250. written a very helpful article which is published in the February 1996
  4251. issue of Acorn User (pp54/55).
  4252. 9.7
  4253. The end bit
  4254. 9.7
  4255. Please keep further queries and ideas coming, either to me at 16
  4256. Westfield Close, Pocklington, York, YO4 2EY or to Michael Clarkson at
  4257. Riggæs Hall, The Schools, Shrewsbury, SY3 7AZ.áuá
  4258. 9.7
  4259. Hints and Tips
  4260. 9.5
  4261. Archiving to floppy Ö If you want to archive a large directory from a
  4262. hard disc onto floppies, (a) give all the floppies the same name,
  4263. (b)ácopy onto floppy 1 until Édisc fullæ message, (c)ádismount the
  4264. floppy, (d) mount the second one, (e) click on ÉRetryæ and away you go,
  4265. (f) donæt forget to give the floppies a meaningful name once you have
  4266. finished.
  4267. 9.5
  4268. Wouter Kolkman, <wkolkman@lindis.demon.co.uk>
  4269. 9.5
  4270. CC Turbodrivers Ö You may find that you get different paper margins when
  4271. using the standard !Printers application compared with CC settings. CC
  4272. helpline was right: the Acorn driver does not check for the printer DIP
  4273. switch settings! The printer I tried was an HP Deskjet.
  4274. 9.5
  4275. Wouter Kolkman, <wkolkman@lindis.demon.co.uk>
  4276. 9.5
  4277. Display of large row numbers in PipeDream 4 Ö I have read several times
  4278. in your magazine about how PipeDream 4 will not display large row
  4279. numbers correctly. During an idle moment recently, I experimented with
  4280. this anomaly and found that the effect is dependent on the Desktop
  4281. display font used (obviously only applicable to RISC OS 3.5 or later).
  4282. 9.5
  4283. A monospaced font (System, Courier etc) give the worst results, chopping
  4284. off all but the last two figures in the row number. Proportionally
  4285. spaced fonts are much better, displaying at least the last three
  4286. numerals.
  4287. 9.5
  4288. However, for some unknown reason, the outline font öSystem.Mediumò
  4289. supplied with RISC OS 3.5 allows at least four numerals to be displayed
  4290. in the row border. System.Medium is not a particularly attractive choice
  4291. for the desktop font but as it is so easy to change it, very long
  4292. PipeDream files can be quite simply viewed in System.Medium, before
  4293. reverting to oneæs favourite font. Changing the desktop font does not
  4294. alter the font in which the PipeDream file itself is displayed.
  4295. 9.5
  4296. Robin Hampshire, Devon.
  4297. 9.5
  4298. Network cards on RISC OS 3.6 Ö Please check the file
  4299. !Boot.Choices.Boot.PreDesk.SetUpNet, otherwise you may find that quite a
  4300. few modules are Éunpluggedæ.
  4301. 9.5
  4302. Wouter Kolkman, <wkolkman@lindis.demon.co.uk>
  4303. 9.5
  4304. Night Sky and the system date Ö Some time ago, my version of Night Sky
  4305. suddenly refused to load, and nothing I tried (from starting the program
  4306. directly from floppy to a complete reset of my computer) helped.
  4307. 9.5
  4308. Since yesterday (New Year) it works again; the trouble lies in the
  4309. (German RISC OS only?) system date; Night Sky checks the date while
  4310. loading and, for some reason, canæt handle December! Clares have
  4311. promised to look for a solution. So if, in December, Night Sky gave you
  4312. trouble, try it again in January!
  4313. 9.5
  4314. Jochen Konietzko, K÷ln, Germany.
  4315. 9.5
  4316. Hints and Tips
  4317. 9.4
  4318. Basic programs Ö When writing a basic program, one is encouraged to keep
  4319. each procedure down to a manageable size. In real life, I suspect that
  4320. most of us often end up with procedures covering several screenfulls.
  4321. 9.4
  4322. It can then be very difficult to keep track of what is going on in
  4323. multiple-nested loops, even when you have written the Éexitæ from the
  4324. loop before going back a line and writing whatever has to be
  4325. accomplished within that loop.
  4326. 9.4
  4327. It is much easier to follow the logic if each entry and exit is REMmed
  4328. with a reference to the corresponding exit and entry. As an example:
  4329. 9.4
  4330. IF variable% > 100 THEN
  4331. 9.4
  4332. ááREM Start of loop testing variable%
  4333. 9.4
  4334. áá(Lines of program)
  4335. 9.4
  4336. ááFOR loop% = 1 TO 100 : REM Start of
  4337. 9.4
  4338.  xyz
  4339. 9.4
  4340. áááá(Lines of program)
  4341. 9.4
  4342. ááááCASE variable2% OF
  4343. 9.4
  4344. ááááááREM Start of testing variable2%
  4345. 9.4
  4346.  loop
  4347. 9.4
  4348. áááááá(Lines of program)
  4349. 9.4
  4350. ááááENDCASE : REM End of testing
  4351. 9.4
  4352.  variable2% loop
  4353. 9.4
  4354. áááá(Lines of program)
  4355. 9.4
  4356. ááNEXT loop% : REM End of xyz
  4357. 9.4
  4358. áá(Lines of program)
  4359. 9.4
  4360. ENDIF : REM End of loop testing variable%
  4361. 9.4
  4362. (Lines of program)
  4363. 9.4
  4364. It is easy enough to follow the logic in this simple example, but not so
  4365. when the (Lines of program) start to mount up! The REMs make debugging
  4366. much easier and can always be deleted when youære sure it all hangs
  4367. together.
  4368. 9.4
  4369. Note that you need to put the REM at the start of an ÉIF Ö THENæ loop on
  4370. a line after the statement; the ÉTHENæ MUST be the last item on the
  4371. line.
  4372. 9.4
  4373. Roger Williams <71703.145@compuserve.com>
  4374. 9.4
  4375. Drawing ellipses (9.3 p20) Ö Here is a quicker method of producing an
  4376. Éisometric circleæ. The required ellipse can be drawn accurately,
  4377. without having to adjust it Éuntil it looks OKæ, and it can be drawn as
  4378. one object which can then be colour-filled if required.
  4379. 9.4
  4380. Using the isometric grid in Draw, draw the Éisometric squareæ, which is
  4381. actually two equilateral triangles joined at the bases. Then draw an
  4382. ellipse centred at the centre of the Ésquareæ and with the control point
  4383. as shown in the diagram (below left). This ellipse is the right shape,
  4384. but the wrong size and orientation.
  4385. 9.4
  4386. Rotate the ellipse through 30░, and magnify it by 0.8165, which is ┌2î3.
  4387. The ellipse now needs to be dragged to the correct position Ö if the
  4388. Ésquareæ and the control points were locked to the grid, <ctrl-s> will
  4389. finally make the ellipse snap to the correct position.
  4390. 9.4
  4391. Colin Singleton, Sheffield
  4392. 9.4
  4393. Faster PC cards Ö With regard to the recent article in Archive about the
  4394. upgrading of issue 1 PC cards with new processors, I would like to say
  4395. that I have got Windows running at nearly twice the speed it was, simply
  4396. by upgrading from !PC486 version 1.87 to !PCx86 version 1.91. Like
  4397. Jochen Konietzko, I havenæt run any speed tests but it is definitely
  4398. much faster.
  4399. 9.4
  4400. I would suggest that anyone wanting more speed from the IBM side of a
  4401. Risc PC should certainly try out the latest PC Card software before
  4402. paying for a processor upgrade! (!PCx86 cost ú10 through Archive,
  4403. including printed documentation, but it is also available on Acornæs ftp
  4404. site for the cost of the phone call.)
  4405. 9.4
  4406. Paul Hobbs. <101323.1367@compuserve.com>
  4407. 9.4
  4408. RiscáPC replacement keyboard Ö The keyboard of the RiscáPC is a standard
  4409. PC keyboard with a standard 6¡pin mini-din plug on the end instead of a
  4410. 5¡pin din plug. If you want to connect an IBM PC(AT) compatible keyboard
  4411. to the RiscáPC, here is a wiring diagram for an adaptor (although these
  4412. adaptors can be bought from PC suppliers for about ú5).
  4413. 9.4
  4414. Robert Burnell, Bristol.áuá
  4415. Hints and Tips
  4416. 9.3
  4417. DFS on RiscáPC Ö I recently installed an ActiLead 5╝ö to get a second
  4418. floppy on my Risc PC ACB45. Despite HECæs disclaimers, I thought it
  4419. should be possible to handle BBC discs by third-party access software,
  4420. such as I have used regularly on an A440. Three programs scored varying
  4421. degrees of success:
  4422. 9.3
  4423. DFSReader (Beebug Ltd), non-WIMP, 1988 Ö Installs a module giving star
  4424. commands *DCAT, *DEX, *DINFO, *DBACKUP and *DCOPY. Copy allows Éreadingæ
  4425. to an ADFS disc etc (no Write). It seems OK with Actilead on both 5╝ö
  4426. and 3╜ò BBC-80 floppies in drives 1 and 0 respectively. I cannot verify
  4427. its claims to handle also Watford 62-Cat DFS & DDFS & Solidisc DFS, nor
  4428. have I tried 40-track discs.
  4429. 9.3
  4430. DFSReader (Freeware by Emmet Spier), 1990. Ö This was on Shareware No.
  4431. 31, now available from APDL. A desktop application that puts one extra
  4432. floppy disc icon on the bar. <Menu> allows choice of: Drive (0 to 3),
  4433. Name Disc, Free, & Import Dir (?). <Select> gives a filer window, with
  4434. menu choices of Display, Rename, Delete, Access and Count. Read and
  4435. write work by usual drag-and-drop to the filer. It is restricted to 80-
  4436. track BBC DFS and has no format option. It reads/writes all the 5╝ö BBC
  4437. 80-T DFS discs I have tried. It also works on drive 0 (3╜ò).
  4438. 9.3
  4439. !DFS (Dabs Press), 1990. This is also a desktop application and has four
  4440. icons on the bar for drives 0-3. <Menu> offers Disc Info, (Un)Protect,
  4441. Swap Cats, Dismount, Format, Backup, Verify, Free. <Select> gives a
  4442. filer window with read/write by drag and drop as usual. Format offers
  4443. Acorn (DFS), Solidisc or Watford formats each in 40- or 80-track. I
  4444. proved 80-T DFS format and verify OK via the Actilead on 5╝ö drive 1 and
  4445. on 3╜ò drive 0. Read/write failed with original BBC discs, but was OK on
  4446. discs formatted with this program.
  4447. 9.3
  4448. I thus use !DFS only to format/verify a disc and !DFSReader to read/
  4449. write BBC DFS 80 discs. The 5╝ö drive is a Cumana 40/80 (Mitsubishi
  4450. mechanism) but the 40 option is not used!
  4451. 9.3
  4452. Eric Ayers, Ipswich.
  4453. 9.3
  4454. Drawing ellipses Ö Acornæs Draw program allows ellipses to be drawn very
  4455. easily when using orthographic projection. However, when drawing
  4456. isometric views, it may be easier to use the Éfour arc methodæ to
  4457. construct an isometric circle, as this allows the size of the ellipse to
  4458. be fixed by using an isometric square. Here is the method I use.
  4459. 9.3
  4460. 1. If using Draw, set up an isometric box of equal side and include the
  4461. axes, centre O. (Fig 1)
  4462. 9.3
  4463. 2. Use the arc-tool to draw the arc from Éaæ to Ébæ, tangential to each
  4464. axis.
  4465. 9.3
  4466. 3. Repeat the same process for arc Ébcæ. (Figs 2 and 3) It may be
  4467. necessary to adjust the arcs to form a figure that Élooksæ OK.
  4468. 9.3
  4469. 4. Now group together the two arcs and copy them. (Fig 3a)
  4470. 9.3
  4471. 5. Rotate the copy through 180░ and move to join at Éaæ and Ébæ to form
  4472. the complete figure. (Fig 4)
  4473. 9.3
  4474. 6. Group the two halves together to form the complete isometric circle.
  4475. (Fig 4a) The combination of the two arcs can also be used to draw the
  4476. corresponding isometric circles on the other two faces of the isometric
  4477. cube as shown in Figs 5 and 6.
  4478. 9.3
  4479. Les Lewis, Sheerness.
  4480. 9.3
  4481. Envelopes Ö Some advice was given in Archive recently regarding
  4482. addressing envelopes on a printer. I appreciate wanting a Éneat jobæ,
  4483. but it can still be rather fiddly. Personally, for all my average
  4484. letters Ö whether personal or business Ö I use white window envelopes,
  4485. having printed the address at the start of the letter on the left, in
  4486. the usual Ébusiness letteræ format.
  4487. 9.3
  4488. You quickly learn the distance needed from the top of the page, to
  4489. enable a neat fold to position the address in the window. It looks
  4490. professional and also avoids the risk of printer ink being smudged by
  4491. rain.
  4492. 9.3
  4493. Elma Alexander, Crail, Fife.
  4494. 9.3
  4495. Flashing colours on RiscáPC Ö If you run a non-Wimp Basic program in an
  4496. Éoldæ 16-colour mode, you will find that the default flashing colours Ö
  4497. colours 8 to 15 Ö donæt flash!
  4498. 9.3
  4499. Using OS_Byte 195 shows that the default setting of ÉDuration of first
  4500. colour flash is 0æ, which holds the first colour indefinitely Ö thus
  4501. stopping the flashing.
  4502. 9.3
  4503. Using OS_Byte 9 to reset the first colour flash duration to 25/50ths
  4504. sec. effectively switches the flashing back on. The instruction is SYS
  4505. öOS_Byteò,9,25.
  4506. 9.3
  4507. There is no need to worry about setting the second colour flash duration
  4508. as its default value is already 25. I find this latter a little strange.
  4509. Itæs as if someone set the first colour duration to zero to disable
  4510. flashing temporarily and then forgot to reset it to 25! First and second
  4511. colours both at 25 were the Éoldæ default settings for BBC B and later.
  4512. 9.3
  4513. Using OS_Byte 9 in a program as above will activate the flashing colours
  4514. for all subsequent non-Wimp programs run in any 16 screen mode until you
  4515. switch off or reset, so you may want to prevent this by also including
  4516. SYS öOS_Byteò,9,0 in your program closedown sequence, to restore things
  4517. as they were.
  4518. 9.3
  4519. Ray Favre, West Drayton.
  4520. 9.3
  4521. Fractions (p 23) Some Acorn fonts do have a Éfraction baræ as Alt-140.
  4522. It is in MathGreek, and in my EFF fonts, but not in Trinity or Homerton.
  4523. It makes fraction look better than the conventional slash, and does not
  4524. break at the end of a line.
  4525. 9.3
  4526. Colin Singleton, Sheffield.
  4527. 9.3
  4528. New life for dead HP cartridges Ö HP (and probably other inkjet printer
  4529. producers as well) warn most emphatically against touching the copper
  4530. foil with the tiny nozzles. There is, however, one situation where this
  4531. warning can be disregarded Ö when some nozzles are really hopelessly
  4532. clogged.
  4533. 9.3
  4534. This happened to me this summer when, during a four week absence, the
  4535. printer had stood unused in a room where the temperature was almost
  4536. constantly above 30░C. After my return, most nozzles were blocked, and
  4537. three of the telltale white lines were proof against alcohol, warm water
  4538. and even a special cleaning fluid which I sometimes use to good effect.
  4539. 9.3
  4540. Rather than throw the useless cartridge away, I made one last attempt Ö
  4541. I bathed the bristles of a new soft toothbrush in alcohol and very
  4542. gently brushed over the nozzles.
  4543. 9.3
  4544. The next test print showed no more white lines, and now the cartridge
  4545. works faultlessly again.
  4546. 9.3
  4547. Jochen Konietzko, K÷ln, Germany
  4548. 9.3
  4549. Turbo Driver hazard warning (8.11 p26 + 9.1 p44) Ö There is an option
  4550. öIgnore statusò on the Turbo Driver menu (<shift-select> on the icon)
  4551. which means the Turbo Driver does not attempt to report whether the
  4552. printer is out of paper, turned off, etc. Set this, and the problem
  4553. should be solved. On my Epson Stylus Color with Risc PC and Impression
  4554. Publisher dongle (not the new Color II), Iádo not set this ignore, and
  4555. get some messages back. Some messages are useful, but not all, and they
  4556. are not always the right ones. Does anyone have similar problems, or a
  4557. solution?
  4558. 9.3
  4559. Mike Clarkson, Shrewsbury.
  4560. Hints and Tips
  4561. 9.2
  4562. Alt(ernative) characters Ö (Thanks to John Woodgate and Jim Nottingham
  4563. for stretching my list of special characters in 9.1 p17.)
  4564. 9.2
  4565. I missed out several accented characters out, so here is the full list I
  4566. can now create:
  4567. 9.2
  4568.   alt-[  ß ┴ Θ ╔ φ ═ ≤ ╙ · ┌ ² ▌
  4569. 9.2
  4570.   alt-]  α └ Φ ╚ ∞ ╠ ≥ ╥ ∙ ┘
  4571. 9.2
  4572.   alt-;  Σ ─ δ ╦ ∩ ╧ ÷ ╓ ⁿ ▄  
  4573. 9.2
  4574.   alt-É  Γ ┬ Ω ╩ ε ╬ ⌠ ╘ √ █ é ü å à
  4575. 9.2
  4576.   alt-,  π ├ ± ╤ ⌡ ╒
  4577. 9.2
  4578.   alt-.  σ ┼
  4579. 9.2
  4580.   alt-/  τ ╟
  4581. 9.2
  4582. To get the accented wæs and yæs for use in Welsh and Spanish, I had to
  4583. go back to using Trinity as Plantin does not have them.
  4584. 9.2
  4585. Ed.
  4586. 9.2
  4587. ArcTFS, from Texcellence, was written to run under Arthur on the old
  4588. A310 machine, so it will not run from a hard disc. If you happen to have
  4589. an old copy, it can be given a new lease of life by a simple brute force
  4590. kludge.
  4591. 9.2
  4592. Copy the program to RAM disc and drag it into Edit. Create the following
  4593. two extra lines and save the modified program to the RAM disc.
  4594. 9.2
  4595. 81 *DISC 0
  4596. 9.2
  4597. 82 *MOUNT
  4598. 9.2
  4599. Using Edit, create a simple !Boot file:
  4600. 9.2
  4601. | !Boot file for TFS
  4602. 9.2
  4603. IconSprites <Obey$Dir>.!Sprites
  4604. 9.2
  4605. and a simple !Run file,
  4606. 9.2
  4607. | !Run file for TFS.
  4608. 9.2
  4609. | Alter WimpSlot as required.
  4610. 9.2
  4611. WimpSlot -min 1100K
  4612. 9.2
  4613. IconSprites<Obey$Dir>.!Sprites
  4614. 9.2
  4615. Run <Obey$Dir>.TFS
  4616. 9.2
  4617. Save all three files to the RAM disc.
  4618. 9.2
  4619. Either create a new icon sprite with the name !tfs and save it under the
  4620. name !Sprites, or rename an old one and save that.
  4621. 9.2
  4622. On the hard disc, create a new directory called !TFS and drag the four
  4623. files to it. Donæt worry if the new icon does not appear; it will, the
  4624. next time you switch on. Finally, format a disc using 800Kb (D) option.
  4625. 9.2
  4626. The program can be started by double clicking on the !TFS icon, and the
  4627. first thing it will do is to look at drive 0. If it finds your blank
  4628. disc or one of your old data files, it will run without any problems.
  4629. All the data files must be saved on 800Kb (D) format discs.
  4630. 9.2
  4631. Les May, Rochdale.
  4632. 9.2
  4633. Cleaning HP cartridges (A last ditch measure) Ö Most articles I have
  4634. read on the subject of refilling mention that it is not possible to
  4635. refill the big HP cartridge because it is manufactured under reduced air
  4636. pressure.
  4637. 9.2
  4638. This is not true; all you have to do is find an ink provider who sells
  4639. the right equipment (there are at least two in Germany, so there should
  4640. be some in the UK, too).
  4641. 9.2
  4642. The trick is simply to blow 5 cm3 of air with a syringe (external
  4643. diameter of the needle provided with my refill set is 1.25 mm) through
  4644. the hole in the middle of the cartridgeæs cover (in the centre of the
  4645. light grey plastic circle) and then plug up the cartridge (I prefer to
  4646. use a piece of adhesive tape to cover the hole in the rear right hand
  4647. corner which, in a new cartridge, is closed with a little grey plastic
  4648. ball pressed into it.)
  4649. 9.2
  4650. After the hole has been covered, both the syringe and the adhesive tape
  4651. across the ventilation opening in the bottom of the cartridge can be
  4652. removed, and there should be no leakage at all.
  4653. 9.2
  4654. I find it far easier to refill the big cartridges than the smaller ones
  4655. which have a sponge inside. Because you can see through them, and
  4656. because you simply fill an empty container through a hole, a refill is
  4657. completed very quickly Ö I timed the last one I did for a colleague and,
  4658. altogether, it took me about 2╜ mins.
  4659. 9.2
  4660. Jochen Konietzko, K÷ln, Germany
  4661. 9.2
  4662. Coloured card Ö I found a source of cheap, coloured card that is fully
  4663. inkjet compatible. It is from Staples, called Adagio, weighs in at 160
  4664. gsm and is available in about half a dozen colours. 500 sheets cost
  4665. ú7.39 inc VAT. Another tip is to ignore Canonæs warning that paper over
  4666. 100 gsm wonæt work in the BJ200 Ö this card works quite happily, as long
  4667. as you remember to set the feed selector to manual (the front position).
  4668. 9.2
  4669. Nigel Caplan, Leeds.
  4670. 9.2
  4671. ÉDeadæ mouse button? Ö If the select button on your mouse wonæt work
  4672. with, for example, the Éformatæ button on the floppy disc format window,
  4673. first check that you havenæt got Édrag delayæ and Édrag start distanceæ
  4674. in the Émouseæ part of !Configure set to zero. It took me a long time to
  4675. find that one!
  4676. 9.2
  4677. Stuart Bell, Horsham.
  4678. 9.2
  4679. Hard slash Ö Paul mentioned the splitting of things like É4/5æ across
  4680. the end of a line. This seems to be a Publisher Éfeatureæ. One possible
  4681. solution is to use the | character (shift-\) for the divider and
  4682. italicise it, as: 4|5. This acts as a Éhard slashæ Ö not elegant Ö but
  4683. it works Ö except that not all fonts change the vertical line into a
  4684. diagonal when italicised. (In Plantin light italic, the | is straight,
  4685. as you can see! The one above is a cheat using Trinity. Ed.)
  4686. 9.2
  4687. Jim Nottingham, York.
  4688. 9.2
  4689. Resetting the System beep Ö Lots of programs do horrible things to the
  4690. System beep, from changing the tempo to switching it off altogether. One
  4691. way to get it back easily is a one line Basic program, affixed to the
  4692. Pinboard.
  4693. 9.2
  4694. As my computer stands in a rather noisy room, I load a module öGunshotò
  4695. in my Boot sequence to make sure I hear it Ö especially the Alarm Ö even
  4696. if I am, at the time, in another part of the room.
  4697. 9.2
  4698. 10 OSCLI (öChannelVoice 1 ò+öGunshotò):SYS
  4699. öSound_Configureò,0,0,100;SOUND 1,&17F,&4700,1
  4700. 9.2
  4701. The last numbers determine the pitch of the sound Ö you can find the
  4702. details in the BBC Basic Guide.
  4703. 9.2
  4704. Instead of öGunshotò, you can use any voice name the computer knows,
  4705. including the dull öWaveSynth-Beepò. The built-in voices will need a
  4706. different pitch setting though Ö experiment!
  4707. 9.2
  4708. Jochen Konietzko, K÷ln, Germany.
  4709. 9.2
  4710. Risc PC monitors and power saving Ö Have you bought a Risc PC with a
  4711. modern monitor (with power saving options), and does the monitor refuse
  4712. to switch off if you activate the RISC OS 3.5 screen saver? If so, you
  4713. should take a look at your monitoræs definition file which is hidden in
  4714. !Boot.Resources.Configure.Monitors.
  4715. 9.2
  4716. One of the first lines in this textfile reads DPMS_state:x, where x (a
  4717. number between 0 and 3) defines the behaviour of the monitor.
  4718. 9.2
  4719. 0 Ö use just the standard screen blanker
  4720. 9.2
  4721. 1 Ö switch the monitor to standby mode
  4722. 9.2
  4723. 2 Ö interrupt all signals to the monitor
  4724. 9.2
  4725. 3 Ö turn off the monitor completely
  4726. 9.2
  4727. The number you prefer can simply be typed into the file in any text
  4728. editor Ö there is no need to use the likes of !MakeModes.
  4729. 9.2
  4730. Of course, if you use one of the many screen-savers on the market, you
  4731. can still continue to do so. My personal settings are: Out-to-Lunchæs
  4732. fish tank to come on after four minutes, the RISCáOS 3.5 saver (with
  4733. DPMS_state:2) after 15 minutes.
  4734. 9.2
  4735. Jochen Konietzko, K÷ln, Germany.
  4736. 9.2
  4737. Snippet and PC486 Ö Snippetæs screen grabbing facility seems to stop
  4738. working when the !PC486 software is run. This is, however, only a
  4739. question of choosing the right hot keys. <Tab-left-alt>, for instance,
  4740. works perfectly even in single tasking mode, as does <capslock-left-
  4741. alt>.
  4742. 9.2
  4743. Jochen Konietzko, K÷ln, Germany.
  4744. 9.2
  4745. SyQuests in RiscáPCs Ö A warning to all RiscáPC owners with a 3╜ö
  4746. SyQuest in the top right drive position. I have my machine with such a
  4747. configuration and a fairly long SCSI lead. An extra connector sits on
  4748. top of the SyQuest. It stopped working with what the system said was a
  4749. fatal hardware error. I tried to eject the cartridge to find out what
  4750. was wrong. The eject lever wouldnæt release to its full extent. The lid
  4751. which I had just replaced was pressing the connector of the cable on to
  4752. the SyQuest and preventing movement. Rerouting the cable fixed the
  4753. problem.
  4754. 9.2
  4755. Chris Walker, Norwich.
  4756. 9.2
  4757. Switching !PC486 to single tasking mode Ö This is one of those bits of
  4758. information in the manual that are very easily overlooked. If you want
  4759. to change !PC486 to single tasking mode (even if the window is currently
  4760. frozen), a double click somewhere on the window is enough Ö there is no
  4761. need to go through the iconbar menu. A single click will unfreeze a
  4762. window without leaving the multitasking mode.
  4763. 9.2
  4764. Jochen Konietzko, K÷ln, Germany.
  4765. Hints and Tips
  4766. 9.1
  4767. Alt(ernative) characters Ö (This is a reprinted and updated version of a
  4768. hint from Archive 6.1 Ö many people seem to be unaware of these special
  4769. characters.) On upgrading from RISCáOS 2 to RISCáOS 3.1, I thought I had
  4770. lost my É╫æ character. I eventually found that it had moved from <alt-,>
  4771. to <shift-alt-,>. So I investigated all the other possible
  4772. ALTernatives(!). Here are all the ALT characters I found. They are laid
  4773. out in QWERTY order but where no special character appeared, the key is
  4774. not included in the list.
  4775. 9.1
  4776.   key  alt  shift-alt
  4777. 9.1
  4778.   `  ¼  ░
  4779. 9.1
  4780.   1  ╣  í
  4781. 9.1
  4782.   2  ▓
  4783. 9.1
  4784.   3  │
  4785. 9.1
  4786.   4  ╝
  4787. 9.1
  4788.   5  ╜
  4789. 9.1
  4790.   6  ╛
  4791. 9.1
  4792.   9    ▒
  4793. 9.1
  4794.   r  ╢  «
  4795. 9.1
  4796.   y    Ñ
  4797. 9.1
  4798.   o  °  ╪
  4799. 9.1
  4800.   p  ■  ▐
  4801. 9.1
  4802.   \    ª
  4803. 9.1
  4804.   a  µ  ╞
  4805. 9.1
  4806.   s  ▀  º
  4807. 9.1
  4808.   d  ≡  ╨
  4809. 9.1
  4810.   f    ¬
  4811. 9.1
  4812.   z  ½
  4813. 9.1
  4814.   x  ╗
  4815. 9.1
  4816.   c  ó  ⌐
  4817. 9.1
  4818.   m  ╡  ║
  4819. 9.1
  4820.   ,    ╫
  4821. 9.1
  4822.   .    ≈
  4823. 9.1
  4824.   /    ┐
  4825. 9.1
  4826. (On the RiscáPC, you also get ñ with <shift-alt-3>. The A4 also has some
  4827. different characters, Iábelieve, but we donæt have one available for
  4828. test.)
  4829. 9.1
  4830. There are some additional Alt-key characters that donæt actually produce
  4831. a character themselves Ö they just set up an accent so that the
  4832. following character is changed into an accented character. This only
  4833. happens if the accent is suitable for the following character.
  4834. 9.1
  4835. For example, to type an Θ, hold down <alt>, press and release <[>,
  4836. release the <alt> and then press and release <e>. Characters available
  4837. in this way are:
  4838. 9.1
  4839.   alt-[  Θ ╔ φ ═ ≤ ╙ · ┌ ² ▌
  4840. 9.1
  4841.   alt-]  Φ ╚ ∞ ╠ ≥ ╥ ∙ ┘
  4842. 9.1
  4843.   alt-;  δ ╦ ∩ ╧ ÷ ╓ ⁿ ▄  
  4844. 9.1
  4845.   alt-É  Ω ╩ ε ╬ ⌠ ╘ √ █
  4846. 9.1
  4847.   alt-,  ± ⌡ ╒
  4848. 9.1
  4849.   alt-.  σ
  4850. 9.1
  4851.   alt-/  τ ╟
  4852. 9.1
  4853. The only other Alt-key character missing from the previous list is Alt-
  4854. hyphen which gives character 173. In the Acorn fonts, this looks exactly
  4855. like a normal hyphen, but is a non-breaking hyphen, i.e. it does not get
  4856. split across two lines when it occurs near the end of one line. (But
  4857. does anyone know how to avoid the slash character splitting at the line
  4858. end, as öaround 4/5 of them are splitò?)
  4859. 9.1
  4860. Ed.
  4861. 9.1
  4862. Archive CD Ö Some of you may have difficulty in accessing some of the
  4863. Spark format archives if you only have ArcFS. The solution is to use
  4864. SparkPlug which (space permitting) you will find on the monthly program
  4865. disc. The other problem that has come to light is that, because ISO
  4866. standard filenames do not allow hyphens (ASCII 45), they are converted
  4867. to underscores (ASCII 95). This means that some of the Genesis
  4868. multimedia applications are not able to locate their internal resources.
  4869. The solution is to copy the application to another disc and then rename
  4870. any of the files within it which have underscores, back to hyphens.
  4871. 9.1
  4872. JamesáTaylor, NCS.
  4873. 9.1
  4874. ATAPI CD-ROMs Ö Following the warning last month that not all ATAPI CD-
  4875. ROMs would work on Acorn machines, I thought you might like to know that
  4876. I put a quad speed Mitsumi FX400 drive in a RiscáPC 700 and it seems to
  4877. work fine. It cost me ú105 +VAT from a PC Éboxshifteræ.
  4878. 9.1
  4879. Malcolm Churchill, High Wycombe.
  4880. 9.1
  4881. BJC-600 ink cartridges Ö I had some trouble with my BJC-600 colour
  4882. bubble jet printer after replenishing inks from a refill kit. Some
  4883. colours refused to print, despite repeated nozzle-cleaning operations. I
  4884. eventually found the trouble Ö there is a filter pad for each colour on
  4885. the print block that holds the four ink cartridges. When the cartridge
  4886. is snapped into place in the print block, this filter projects slightly
  4887. into the cartridge and is supposed to make contact with the sponge
  4888. filling which is saturated with ink. Perhaps I was heavy-handed with the
  4889. syringe supplied for filling with ink. This has a hypodermic needle
  4890. which has to be passed through the sponge into the rear ink compartment.
  4891. It appears I had pushed the sponge in so that the filter was failing to
  4892. contact it. Teasing it out slightly with a pin cleared the trouble.
  4893. 9.1
  4894. Eric Ayers, Ipswich.
  4895. 9.1
  4896. Directory and filenames Ö How do you force directories or files to the
  4897. top (or bottom), so that they are easy to find (or are out of the way)?
  4898. Iáused to use Éaaæ or Ézzæ at the beginning of the name, then I started
  4899. using É!æ. This is OK for files, but not for directories as they become
  4900. applications and you have to <shift> double-click to open them.
  4901. Recently, I discovered É~æ which pushes files to the end and found that
  4902. the hard space, <alt-space>, which I had used regularly within
  4903. filenames, could be used to pull the file to the beginning of the
  4904. directory. The only disadvantage of using the hard space is that it is
  4905. invisible and may therefore be a little confusing.
  4906. 9.1
  4907. (P.S. Why not use É<hardspace>!Nameæ? Although you canæt see the hard
  4908. space, at least the exclamation mark would remind you that there is
  4909. something odd about the name and you wonæt be fooled into thinking
  4910. youæve left the files sorted by date or something.)
  4911. 9.1
  4912. Ed.
  4913. 9.1
  4914. Image scanning Ö It is becoming increasingly commonplace to introduce
  4915. photographs into DTP documents by using a scanner so that the photograph
  4916. can then be processed. Recent advances have made it possible to handle
  4917. 24-bit colour photographs (16 million colours) and to print the document
  4918. in colour with equipment of modest cost.
  4919. 9.1
  4920. As always, it needs experience to learn the Éwrinklesæ necessary to
  4921. obtain the best results. An intriguing example is the fact that Kodak
  4922. paper, as used for normal colour prints, is mottled, although only to an
  4923. extent indiscernible in its normal use. However, if a photograph is
  4924. scanned and is then magnified several times, the mottle is also enlarged
  4925. and will entirely spoil the picture which will appear very Égrainyæ.
  4926. 9.1
  4927. The only real way to avoid the problem is a big enough photograph so
  4928. that it doesnæt need to be enlarged electronically.
  4929. 9.1
  4930. You could scan from a negative or a transparency which, of course, has
  4931. no mottle, but the equipment required to scan small size negatives at
  4932. high resolution is elaborate and expensive.
  4933. 9.1
  4934. Another solution is to download from a Kodak PhotoCD which Kodak produce
  4935. for you on high¡resolution scanners. However, unless a Kodak PhotoCD is
  4936. required for other purposes, this would be a complicated and expensive
  4937. procedure.
  4938. 9.1
  4939. However, in most circumstances, 4ö ╫ 6ò prints will suffice because
  4940. computer prints larger than this are not likely to be required.
  4941. 9.1
  4942. George Foot, Oxted, Surrey.
  4943. 9.1
  4944. Impression borders (Noel Williams, Archive 8.12 p19) Ö It seems that
  4945. when Impression imports a border of 3pt or less, it ignores rounded or
  4946. mitred corners and substitutes squared corners. It is rather strange,
  4947. therefore, that the standard, built-in, borders do not have squared
  4948. corners, as Cain Hunt pointed out in Archive 8.10 p14. 3pt is about 1mm,
  4949. so you need a magnifying glass to see the difference. Iáwonder how many
  4950. users had noticed the messy corners of the standard borders?
  4951. 9.1
  4952. It is possible, if you really insist, to create a border 2pt thick, for
  4953. example, with rounded or bevelled corners. Draw a rectangle 2 pts wide
  4954. (see Cain Huntæs article), no line colour, filled black. Group with it,
  4955. on its right-hand side, an invisible rectangle two pts wide, no line
  4956. colour, no fill colour. The group object is now four pts wide, and will
  4957. not be trapped by Impressionæs 3pt limit. The corner shape should be as
  4958. shown (for a bevelled corner), no line colour, filled black. Although
  4959. the two objects do not overlap, it is important that the corner shape
  4960. should be defined in Draw as being Éin frontæ.
  4961. 9.1
  4962. The only possible disadvantage of this is that this border will appear
  4963. two pts outside the defined edges of the Impression frame, rather than
  4964. immediately outside the frame.
  4965. 9.1
  4966. Colin Singleton, Sheffield.
  4967. 9.1
  4968. Impression: spurious styles and effects Ö Having discovered the Cnf1
  4969. trick in Impression (8.3 p29) Ö thank you, Paul Ö I can now see all the
  4970. years-old effects, generally unused, which are cluttering up my
  4971. documents.
  4972. 9.1
  4973. With a bit of research, I now have a better idea how they arise. If I
  4974. select a piece of text and centre it, Publisher creates a new effect in
  4975. my document, appropriately named Centre. If I then centre another piece
  4976. of text in the same document, Publisher assigns the same named effect to
  4977. that text. If I change the size of a piece of text, Publisher creates an
  4978. effect named 10pt, or whatever. Similarly, underlining text creates an
  4979. effect named Underline. All very helpful.
  4980. 9.1
  4981. However, if I select a piece of text and italicise it, Publisher creates
  4982. an effect with the un-helpful name Effect 298, or some such. Similarly,
  4983. if I select Bold, Superscript or Subscript. If I italicise another piece
  4984. of text, Publisher applies the same numbered effect to this text, so
  4985. there is only one numbered definition for each effect. Can I put
  4986. Meaningful Effect Names on my wish list for the next Publisher upgrade?
  4987. 9.1
  4988. I can change the name of an effect using the Edit Style feature, though
  4989. in order to select the effect for editing I must first apply it to a
  4990. piece of text, since it does not appear on the list of styles shown by
  4991. the Edit Style feature. There are, however, a few pitfalls.
  4992. 9.1
  4993. An edited effect becomes a style, which is handled slightly differently.
  4994. It does now appear on the list of styles in the Edit Style function, but
  4995. it does not now appear in the style menu where Cnf1 originally caused it
  4996. to appear! The latter can be remedied by setting Show on style menu in
  4997. the Edit Style options.
  4998. 9.1
  4999. If I change the name of an automatically-created effect, Publisher will
  5000. not then use it when I try to apply the same effect again Ö it will
  5001. create another numbered effect. This can be partially remedied by
  5002. assigning the standard keyboard short-cut (<ctrl-I> for italic) to the
  5003. re-named Style, using Edit Style. This will cause the re-named style to
  5004. be used in future if I select italic by <ctrl-I>, but if I select italic
  5005. from the toolbar, I get a new numbered effect!
  5006. 9.1
  5007. In my master document for contributions to Archive Iáhave created styles
  5008. called Heading MathGreek, Dingbats and Program. These define fonts only
  5009. (superimposed on my Normal style), which Paul can, I hope, easily change
  5010. to his choice of font.
  5011. 9.1
  5012. I have also created Styles called Italic, Bold Superscript, and
  5013. Subscript. These define the appropriate effects only, and provided I
  5014. remember to select Italic and Bold by <ctrl-I> and <ctrl-B>, Paul will
  5015. not be confused by mysterious effect numbers.
  5016. 9.1
  5017. Colin Singleton, Sheffield.
  5018. 9.1
  5019. PC mice Ö Richard Torrensæ article on mice (8.12 p31) was interesting,
  5020. but for those of us who donæt know which end of a soldering iron is
  5021. which (Ouch!), there is a plug-and-play alternative. APDL has a PD
  5022. program called SerialMse by Stuart Tyrrell which allows a serial PC
  5023. mouse to be used with an Acorn computer. (!SerialMse is on this monthæs
  5024. disc. Ed.)
  5025. 9.1
  5026. Sudipta Sarkar, Chester.
  5027. 9.1
  5028. Printing from Write Ö Regarding Keith Hodgeæs query about printing from
  5029. the Risc PC using Windows Write, I had the same problem myself; after
  5030. consulting the Oracle (MS Windows guide), I discovered a DOS command to
  5031. test the printer to computer interface. The command from the DOS prompt
  5032. is
  5033. 9.1
  5034. COPY C:\WINDOWS\SETUP.TXT LPT1
  5035. 9.1
  5036. Full of anticipation, I tried this Ö zilch. Further consultation Ö yet
  5037. more zilch. Stopped to think, applied logic. öIf it is possible to copy
  5038. to LPT1, it must be possible to copy to LPT2ò. Changed 1 to 2, pressed
  5039. <enter>, öEureka!!!ò Ö reams of printed matter everywhere.
  5040. 9.1
  5041. A quick check in the !PCconfig doodah and there it was, a choice of
  5042. printer outputs, an equally quick change to LPT2, start Windows again,
  5043. type rubbish into Write (eminently suitable), choose PRINT, even more
  5044. EUREKA, success!
  5045. 9.1
  5046. I checked with my computing comrade and found that he was using LPT1
  5047. without any problems, the only difference being that his Risc PC was one
  5048. of the first and mine is a Dec æ94 vintage.
  5049. 9.1
  5050. B. Coleman, Cleveland.
  5051. 9.1
  5052. RISCáOS <ÖÖ>áPC interchange Ö I have used the Risc PC (8Mb+2Mb VRAM)
  5053. with a PC486 coprocessor running Windows 3.1 and several bits of
  5054. commercial software, such as MS-Word, as well as some specialist
  5055. freeware scientific software for fluorescence cell analysis. I have been
  5056. most impressed and have found very few problems.
  5057. 9.1
  5058. However, I still like to do as much as I can under RISC OS and this
  5059. requires data transfer between the PC partition and RISC OS. I know of
  5060. several people who have reported problems with corruption of their PC
  5061. partition, but I have found that the following seems to work well and
  5062. avoids problems.
  5063. 9.1
  5064. 1) I have avoided installing options for disc compression under DOS/
  5065. Windows.
  5066. 9.1
  5067. 2) If I use the RISC OS filer to transfer files to and from the PC
  5068. partition, I always quit from !PC rather than just freezing the
  5069. application.
  5070. 9.1
  5071. 3) Better still, for data up to 1.44Mb, you can transfer data whilst
  5072. multitasking using 1.44Mb DOS formatted discs. The trick is that, once
  5073. you have modified the disc under RISC OS, you must click on Édismountæ
  5074. under the RISC OS filer menu before you modify the disc using PC
  5075. software. If you donæt, you will find that RISC OS gets confused about
  5076. the disc contents and may corrupt the data! This is, of course, exactly
  5077. the same problem as using one disc in two computers without dismounting
  5078. in between, except that, in this case, the disc doesnæt physically move
  5079. from one drive to another!
  5080. 9.1
  5081. Mike Clark, Cambridge.
  5082. 9.1
  5083. Runny letters Ö David Holden suggested spray fixative to stop inkjet ink
  5084. from running. At school, I use the cheapest hair spray I can find. Does
  5085. the same job, quarter of the price and comes in bigger cans so lasts
  5086. longer. However, like the fixative, use as little as possible and keep
  5087. the target flat if possible. (The only problem I have is going into the
  5088. local chemist to buy a product I obviously donæt use!)
  5089. 9.1
  5090. Jim Wyllie, Edinburgh.
  5091. 9.1
  5092. SlideShow problems Ö The version of SlideShow that comes with the new
  5093. RISCáOS 3.6 machines contain an absolute reference to the JPEG
  5094. decompression code within ChangeFSI, and this means that if you move
  5095. ChangeFSI from its original position, you will get the error öCouldnæt
  5096. find <JPEG$File>ò. You can correct this quite simply by altering the Run
  5097. file within ChangeFSI. The current Run file looks like this:
  5098. 9.1
  5099. Set SlideShow$Path <Obey$Dir>.
  5100. 9.1
  5101. Set Images$Dir <Boot$Dir>.^.Images
  5102. 9.1
  5103. Set JPEG$File <Boot$Dir>.^.Utilities.!ChangeFSI.
  5104. 9.1
  5105. CFSIjpeg
  5106. 9.1
  5107. Set Shell$Messages <Obey$Dir>.ShellMess
  5108. 9.1
  5109. WimpSlot -min 32k -max 32k
  5110. 9.1
  5111. Run SlideShow:!RunImage
  5112. 9.1
  5113. ...and it should look like this:
  5114. 9.1
  5115. Set SlideShow$Path <Obey$Dir>.
  5116. 9.1
  5117. Set Images$Dir <Obey$Dir>.^
  5118. 9.1
  5119. If ö<ChangeFSI$Dir>ò=öò then Error
  5120. 9.1
  5121.  Open a directory containing
  5122. 9.1
  5123.  ChangeFSI and try again
  5124. 9.1
  5125. Set JPEG$File <ChangeFSI$Dir>.CFSIjpeg
  5126. 9.1
  5127. Set Shell$Messages <Obey$Dir>.ShellMess
  5128. 9.1
  5129. WimpSlot -min 32k -max 32k
  5130. 9.1
  5131. Run SlideShow:!RunImage
  5132. 9.1
  5133. James Taylor, NCS.
  5134. 9.1
  5135. Upgrading VRAM Ö Surely Fred Williams is wrong regarding reconfiguring
  5136. the machine before removing your VRAM. If I remove mine, when I turn the
  5137. Risc PC back on, it automatically detects the lack of VRAM and defaults
  5138. to a lower resolution. (Yes, I get the same behaviour. Perhaps Fredæs
  5139. monitor simply cannot cope with the mode to which it defaults. JT.)
  5140. 9.1
  5141. Dave Floyd, London.
  5142. 9.1
  5143. PC486 Card Ö Hints & Tips
  5144. 9.1
  5145. Jim Nottingham
  5146. 9.1
  5147. I was sorry to read that Simon Coulthurst had had to call it a day,
  5148. because I always found his RiscDOS Column very valuable (thanks, Simon).
  5149. I do hope someone will be able to take over the reins but, in the
  5150. meantime, I trust the following notes will be of benefit to anyone who
  5151. has installed a shiny new PC486 card and isnæt too sure where to go from
  5152. there.
  5153. 9.1
  5154. Iæm a reasonably experienced user of PC applications (bleghhh...) but
  5155. probably fall in with the majority of Archive subscribers in that I had
  5156. no previous experience of the rigours of installing DOS, Windows and the
  5157. like, having either used machines where these were pre-installed or
  5158. having had it done for me by a competent person!
  5159. 9.1
  5160. Inevitably, I ran into some problems which I had to resolve by using a
  5161. modicum of gumption, a lot of trial and error, comparing notes with
  5162. other users and, as a last resort, asking the PC fraternity for help. So
  5163. hereæs a few hints and tips, doæs and donæts:
  5164. 9.1
  5165. Buying Windows
  5166. 9.1
  5167. Do shop around for Windows, as prices range from under ú60 to over ú100!
  5168. I bought mine from ESL in London for ú58.76 inclusive and they supplied
  5169. overnight; an excellent service. They sent Windows for Workgroups which
  5170. is the network version (v3.11), but this also works fine on a single
  5171. machine, automatically detecting and configuring itself for the stand-
  5172. alone platform. (We gave up selling Windows when Greyhound Marketing,
  5173. our main software distributor, went bust. Ed.)
  5174. 9.1
  5175. Documentation
  5176. 9.1
  5177. Donæt be put off by the dreadful Microsoft PC DOS and Windows user
  5178. guides; the Acorn user guide and the helpful on-screen prompts should
  5179. make installation a straightforward process. But do follow the
  5180. procedures in the Acorn user guide to the letter as there are some
  5181. fairly critical configuration options to be set.
  5182. 9.1
  5183. Jargon
  5184. 9.1
  5185. Donæt be put off by the PC jargon. In very general terms, the
  5186. öAUTOEXEC.BATò file equates to an Acorn main !Boot file, the öWindows
  5187. desktopò is a poor-manæs RISC OS desktop, the öMS DOS promptò is where
  5188. we can type in DOS commands (similar to pressing <f12> and typing RISC
  5189. OS *commands), and the öDOS shellò screen roughly equates to our icon
  5190. bar display of drive icons and directory displays.
  5191. 9.1
  5192. Storage
  5193. 9.1
  5194. Do believe everything youæve heard about PC applications being very
  5195. memory-hungry. PC DOS and the configuration files come to some 3Mb and a
  5196. full Windows v3.11 installation takes a hefty 25Mb (Win95 is reportedly
  5197. 90Mb)!! Your typical PC application is 8Ö30Mb so, clearly, all this may
  5198. have your hard disc drive bulging at the seams, even before you start
  5199. using the kit.
  5200. 9.1
  5201. Second partition
  5202. 9.1
  5203. To ease the storage problem and if you have the bonus of a second drive,
  5204. do consider having just DOSáin a partition on your main drive (drive_c
  5205. in DOS-speak), with Windows, PC applications and your data files in a
  5206. second partition on the second drive (drive_d). Similarly, if you have
  5207. the luxury of having a removable media drive (e.g. Syquest or magneto-
  5208. optical), do consider having a separate cartridge or disc dedicated to
  5209. PC stuff.
  5210. 9.1
  5211. Partition size
  5212. 9.1
  5213. The !PCconfig program supplied with the card makes it very easy to set
  5214. up the partition(s) and the Acorn user guide is very clear. With a
  5215. single partition, Acorn recommend a size of at least 80Mb but, looking
  5216. at the numbers in the previous paragraphs, and if you have the capacity,
  5217. do consider something bigger. With two drives and partitions, you can
  5218. split the applications as you think fit; Iæve taken my own advice and
  5219. gone for just DOS and the configuration files in a 5Mb partition on my
  5220. hard disc, with Windows, a number of PC applications and all the
  5221. document files being given lots of elbow room in a large partition on a
  5222. 270Mb SyQuest cartridge. This arrangement works very well.
  5223. 9.1
  5224. Drive formatting
  5225. 9.1
  5226. If you decide to dedicate a storage device to PC stuff, as suggested
  5227. above, you may see a formatting funny. When you format a device, it is
  5228. quite usual to Éloseæ a few Mbytes. For example, on my 270Mb Syquest,
  5229. both Size and Free come up as 256Mb. So when I configured the PC
  5230. partition for the drive, I selected the (apparently) full 256Mb as the
  5231. partition size. This seemed to work OK in that performing Count on the
  5232. partition came up with 256Mb. However, if I click menu on Free on the
  5233. iconbar, Used comes up as only 243Mb, leaving 13Mb Free! Iæve no idea
  5234. why this happens but, by a process of trial and error, I found I could
  5235. create a 270Mb partition even though, on the face of it, this exceeded
  5236. the free space available. This also seems to work on other devices,
  5237. regardless of their type (fixed or removable media) or whether they are
  5238. SCSI or IDE, so is well worth trying. Does anyone have an explanation
  5239. for this strange behaviour?
  5240. 9.1
  5241. (No, I donæt have an explanation, but counting files and free space
  5242. rarely work out because directories themselves take up, sometimes, a
  5243. considerable amount of space. This is not consistent, however, as small
  5244. files may be fitted into the space that might otherwise have been
  5245. allocated to the directory. JamesáTaylor, NCS.)
  5246. 9.1
  5247. Configuring for Windows
  5248. 9.1
  5249. One command described in the Windows manual but not included in the
  5250. Acorn guide is that, for the PC card to boot up with the Windows desktop
  5251. display, you have to add a öWINò command at the end of the AUTOEXEC.BAT
  5252. file (this is the equivalent of adding *Desktop as the last line in our
  5253. main !Boot file). To do it, find the AUTOEXEC/BAT file in the drive_c
  5254. partition (note: /BAT, not /BAK). Load the file into !Edit and, at the
  5255. bottom, type in C:WIN. Save the file and, when you next start the PC
  5256. card, you should finish up with the Windows desktop display.
  5257. 9.1
  5258. DOS shell
  5259. 9.1
  5260. I say öshouldò but, if you finish up with the DOS shell display instead,
  5261. donæt panic... The probable reason is that, when installing PC DOS, you
  5262. opted to select the DOS shell instead of the DOS prompt. As a result, a
  5263. DOSSHELL command will have been added to the AUTOEXEC.BAT file and
  5264. Windows will not get a look in. Quit the PC card and re-load AUTOEXEC/
  5265. BAT back into !Edit. Look for a line (probably immediately preceding the
  5266. C:WIN command) which reads something like C:\DOS\DOSSHELL.EXE[0d] and
  5267. delete it. Re-save the file and now, when you start the PC card, you
  5268. should finish up with the Windows desktop display.
  5269. 9.1
  5270. Display resolution
  5271. 9.1
  5272. At this stage, donæt worry if the Windows display resolution looks less
  5273. than the screen mode string you specified when first using !PCconfig
  5274. (pageá9 of the Acorn manual). This is because you havenæt yet installed
  5275. the enhanced Windows 3.1 Screen Driver supplied with the card. Follow
  5276. the procedure on p22 of the manual (also described in Archive 8.9 p38)
  5277. and everything should then come good.
  5278. 9.1
  5279. CD-ROM drive
  5280. 9.1
  5281. If you configure the system to use two partitions (i.e. drive_c and
  5282. drive_d) and also have a CD-ROM drive, leave setting up the CD-ROM until
  5283. last. Configure it by following the procedure on p24 of the Acorn user
  5284. guide. However, although logically the drive will finish up as drive_e,
  5285. do not change the various commands shown in the user guide from
  5286.         /D:MSCD000 to /E:MSCD000; it wonæt work. Enter them exactly as
  5287. shown in the guide and it seems the system detects the presence of
  5288. drive_d and automatically configures the CD-ROM drive as drive_e. Clever
  5289. Stuff.
  5290. 9.1
  5291. I hope all this helps and that, at the end of the day, you will be as
  5292. enormously impressed with Acornæs implementation of the PC card as I am.
  5293. 9.1
  5294. Hints and Tips
  5295. 8.12
  5296. ÉBad compression fieldæ Ö We have had a number of comments on the
  5297. subject of the Bad compression field error produced by Laser Direct and
  5298. the TurboDrivers, so many thanks to everyone who wrote in Ö too many to
  5299. mention you all.
  5300. 8.12
  5301. The main causes seem to be either a lack of memory, or a lack of disc
  5302. space. The usual memory saving techniques apply, quitting unused
  5303. applications, reducing the screen resolution or number of colours and so
  5304. on. Lack of disc space is most frequent on floppy-only machines for
  5305. obvious reasons. During printing, a file is placed in the !Scrap
  5306. directory, so to ensure that you have as much space as possible, create
  5307. a scrap disc (preferably 1.6Mb if your computer will support it),
  5308. containing only the !Scrap application, and make sure that you double
  5309. click on that version before attempting to print. This will require
  5310. additional disc swapping, but should allow printing to continue
  5311. successfully.
  5312. 8.12
  5313. NCS.
  5314. 8.12
  5315. Booting problems Ö When exchanging the 80Mb hard drives in our two
  5316. A5000s for 430Mb drives, I reset the machine to auto boot, and had the
  5317. desktop auto boot option set, but do you think it would boot? The
  5318. solution was to issue a *OPT 4,2 command, from which point everything
  5319. behaved as anticipated. There were no discernible differences on
  5320. *STATUS.
  5321. 8.12
  5322. This is a known bug in RISC OS 3. When you tick the auto boot option,
  5323. this should be set, but unfortunately it is not. The reason it makes no
  5324. difference to the status is that it is not a configuration option, but,
  5325. in fact, it writes the option to the disc. (If you do a *CAT then the
  5326. top line should read something like  Dir. SCSI:: Words.$ Option 00
  5327. (Off); the option given will be the second number in the *OPT command.)
  5328. MH.
  5329. 8.12
  5330. Alan Jackson, Oamaru, NZ.
  5331. 8.12
  5332. ÉFormattingæ hard discs Ö This has been covered several times in the
  5333. past but, unfortunately, we have had a number of people recently who
  5334. have experienced difficulty in preparing hard discs for use. While we
  5335. cannot provide a step-by-step description, since all the controller
  5336. cards are supplied with different software, many of the operations which
  5337. need to be completed are similar.
  5338. 8.12
  5339. Remember that, for your particular system, you will need to read the
  5340. manual supplied with your hard disc controller card, or the HFORM
  5341. section of the manual if you are using a native drive (for example an
  5342. IDE drive on the Risc PC).
  5343. 8.12
  5344. The most important point is that you MUST NOT actually format the drive.
  5345. If you do, you are more likely to damage the drive than make it usable!
  5346. All modern drives have the low level formatting laid down during the
  5347. manufacturing process, and trying to reformat the drive is likely to
  5348. damage the original formatting, but not completely replace it, rendering
  5349. the drive unusable.
  5350. 8.12
  5351. Instead you need to initialise the drive. The precise wording will
  5352. depend on your controller card Ö Morley SCSI and HForm give you an
  5353. option to öFormat or just Initialise the driveò, and the Cumana SCSI 2
  5354. card requires that you set up Épartitionsæ on the drive. The
  5355. initialisation process involves writing out RISC OS information about
  5356. the position of files on the drives, contents of the root directory and
  5357. so on, but does not do the potentially dangerous low level formatting.
  5358. 8.12
  5359. NCS.
  5360. 8.12
  5361. Quicksort Ö An error crept into Colin Singletonæs Programming Workshop
  5362. last month Ö at some point, the Basic program detokenised incorrectly.
  5363. All the ASC commands should be replaced with a minus sign to make the
  5364. program work. Thank you to all those who rang or wrote to point out the
  5365. error.
  5366. 8.12
  5367. NCS.
  5368. 8.12
  5369. Screenbanks Ö Following on from Matthew Hunteræs Programming Workshop
  5370. article on screen banking (Archive 8.8 p69), errors may not be displayed
  5371. because the error is written to the screen bank being updated, and not
  5372. the screen bank being viewed. By using the following procedure, you can
  5373. link both screens back together.
  5374. 8.12
  5375. DEF PROCresetscreens
  5376. 8.12
  5377. SYS 6,113,SB_bank%
  5378. 8.12
  5379. SYS 6,112,SB_bank%
  5380. 8.12
  5381. ENDPROC
  5382. 8.12
  5383. The procedure could be called via the ON ERROR mechanism, or at the end
  5384. of the program.
  5385. 8.12
  5386. Peter Prewett, Stirling, South Australia.
  5387. 8.12
  5388. Snippet Ö Snippet is still a useful utility for screen grabs etc, but
  5389. refused to perform with my Risc PC. I queried 4Mation and obtained the
  5390. latest upgrade (in very short order and at no cost, which prompts me to
  5391. raise my hat to them), but still found the same problem of freezing the
  5392. machine when I tried to save a screen. The solution to this seems to be
  5393. to select a screen mode of no more than 256 colours, upon which, Snippet
  5394. behaves like the old friend it has always been.
  5395. 8.12
  5396. Alan Jackson, Oamaru NZ.
  5397. 8.12
  5398. Upgrading Video RAM Ö When upgrading the VRAM in your Risc PC from 1 to
  5399. 2Mb, it is necessary to remove the 1Mb board and return it to be
  5400. upgraded. You should make sure that you reconfigure your computer to use
  5401. a screen resolution/number of colours which is possible even with no
  5402. VRAM, before removing the 1Mb board. If you do not do this, you will
  5403. find that you will need to reconfigure the computer Éblindæ, as the high
  5404. resolution modes are not available if there is no VRAM present, and no
  5405. picture will be displayed.
  5406. 8.12
  5407. Fred Williams, Staffordshire.
  5408. 8.12
  5409. Wimp bug (RISC OS 3.10) Ö If you are a Wimp programmer and have
  5410. experienced apparently inexplicable ÉAbort on data transferæ and
  5411. ÉAddress exceptionæ errors Éatæ addresses in the Window Manager module,
  5412. especially just after your program has quit, you may be interested (or,
  5413. like me, relieved!) to know that the problem may lie in a bug in the
  5414. Wimp.
  5415. 8.12
  5416. According to a letter from Acorn, öthere was a bug with Éslabbedæ icons
  5417. (those with the R option in the validation flags). If you click on a
  5418. slabbed icon, and the program deletes the window it is on, or quits
  5419. before the wimp has a chance to redraw it, problems can arise.ò
  5420. 8.12
  5421. Hugh Eagle, Horsham.
  5422. 8.12
  5423. Windows on the Risc PC Ö I would like to warn CD-ROM users that, due to
  5424. the fixed palette on the PC card, many CD programs will not work
  5425. properly Ö giving psychedelic colours which can lock up the computer. We
  5426. have found by pressing <f1> (in Windows) that the Windows help will be
  5427. opened, from which you can return to Windows. This prevents having to
  5428. reset the computer. Acorn/Aleph One are working on a fix for this
  5429. problem.
  5430. 8.12
  5431. Peter Hughes, Desktop Laminations.
  5432. Hints and Tips
  5433. 8.11
  5434. LaserDirect double flush Ö I asked for help last month (8.10 p25) with
  5435. what to do when I get a paper jam on my LaserDirect LBP8. (This turns
  5436. out to be one of those everybody-knows-about-it-except-me problems.)
  5437. Apparently, all I have to do is click on the LaserDirect icon on the
  5438. iconbar while holding <alt> down. This brings up a LaserDirect Status
  5439. window telling me the paper is jammed and offering me a way of escape
  5440. which I accept gratefully.
  5441. 8.11
  5442. Many thanks to all those who wrote or phoned to tell me what a gumby I
  5443. am. I had been using the ÉFlush printeræ menu option from the ÉPrinter
  5444. Queueæ window (adjust-click on the iconbar icon) instead of
  5445. LaserDirectæs own flush system Ö you stupid boy!
  5446. 8.11
  5447. (Mind you, from some of the suggestions people made, like öhit
  5448. <f12><return>ò, I suspect that I may not be the only person to have had
  5449. this problem and not realised how simple the solution was!)
  5450. 8.11
  5451. Ed.
  5452. 8.11
  5453. Printing from Basic programs (e.g. 8.10 pp21/47) Ö Here are a couple of
  5454. short points which may help. Firstly, ÉPage printingæ via a printer
  5455. driver.
  5456. 8.11
  5457. The key SYS calls recommended for Éproperæ printing via the desktop
  5458. still work in non-Wimp mode, so it is fairly straightforward to produce
  5459. hard copy of text output directly from Basic programs Ö albeit in
  5460. Égraphic/page printingæ style.
  5461. 8.11
  5462. A sequence which certainly works is:-
  5463. 8.11
  5464. DEF PROCprint
  5465. 8.11
  5466. SYS öPDriver_PageSizeò TO width%,
  5467. 8.11
  5468. height%,left%,bottom%,
  5469. 8.11
  5470. right%,top%
  5471. 8.11
  5472. pf%=OPENOUT(öprinter:ò)
  5473. 8.11
  5474. SYS öPDriver_SelectJobò,pf%,
  5475. 8.11
  5476. öPrinter Testò
  5477. 8.11
  5478. LOCAL ERROR
  5479. 8.11
  5480. ON ERROR LOCAL:SYS öPDriver_AbortJobò,pf%:CLOSE#pf%
  5481. 8.11
  5482. :ENDPROC
  5483. 8.11
  5484. rect%!0=0
  5485. 8.11
  5486. rect%!4=0
  5487. 8.11
  5488. rect%!8=(right%-left%)/400
  5489. 8.11
  5490. rect%!12=(top%-bottom%)/400
  5491. 8.11
  5492. trans%!0=1<<16
  5493. 8.11
  5494. trans%!4=0
  5495. 8.11
  5496. trans%!8=0
  5497. 8.11
  5498. trans%!12=1<<16
  5499. 8.11
  5500. plotat%!0=left%
  5501. 8.11
  5502. plotat%!4=bottom%
  5503. 8.11
  5504. SYS öPDriver_GiveRectangleò,0,rect%
  5505. 8.11
  5506. ,trans%,plotat%,&FFFFFF00
  5507. 8.11
  5508. SYS öPDriver_DrawPageò,1,block%,0,0
  5509. 8.11
  5510.  TO more%
  5511. 8.11
  5512. WHILE more%
  5513. 8.11
  5514. ááSYS öColourTrans_SetGCOLò,0
  5515. 8.11
  5516. ááMOVE 0,(top%-bottom%)/400
  5517. 8.11
  5518. áá............
  5519. 8.11
  5520. áá(BASIC print commands Ö see text)
  5521. 8.11
  5522. áá............
  5523. 8.11
  5524. ááSYS öPDriver_GetRectangleò,,block%
  5525. 8.11
  5526.  TO more%
  5527. 8.11
  5528. ENDWHILE
  5529. 8.11
  5530. SYS öPDriver_EndJobò,pf%
  5531. 8.11
  5532. RESTORE ERROR
  5533. 8.11
  5534. CLOSE# pf%
  5535. 8.11
  5536. ENDPROC
  5537. 8.11
  5538. The above assumes that you have a global error call in operation, and
  5539. you will need to add to the ON ERROR LOCAL line to restore to that call.
  5540. Also, you need to have declared certain variables earlier in the
  5541. program, such as...
  5542. 8.11
  5543. DIM rect% 16
  5544. 8.11
  5545. DIM trans% 16
  5546. 8.11
  5547. DIM plotat% 8
  5548. 8.11
  5549. DIM block% 16
  5550. 8.11
  5551. All the normal Basic printing commands seem to work OK, i.e. PRINT,
  5552. PRINT TAB(), VDU8, 9, 10 and 11, but be careful of VDU28 and 31 (and,
  5553. ofácourse, VDU1).
  5554. 8.11
  5555. With care, you can therefore merely insert (at Basicæs print commands
  5556. above) the call to whatever routine puts your required text onto the
  5557. screen.
  5558. 8.11
  5559. Secondly, what about using of text files? Although it isnæt printing
  5560. directly from Basic, there are some advantages in using text files, as
  5561. others have noted Ö not least being that your printer driver is likely
  5562. to use Écharacter printingæ, and you can view and edit via Edit, if you
  5563. want.
  5564. 8.11
  5565. Extending the thoughts offered by others (and assuming you want to get a
  5566. hard copy of something youæve put on the screen) then the following
  5567. PROCs can be used to put text line by line on the screen in the way you
  5568. want it and, at the same time, construct a corresponding text file for
  5569. subsequent dragging to your Printer Driver or into !Edit.
  5570. 8.11
  5571.  10 MODE27
  5572. 8.11
  5573.  20 file%=OPENOUT(ötextfileò)
  5574. 8.11
  5575.  30 CLOSE#file%
  5576. 8.11
  5577.  32 *SetType textfile Text
  5578. 8.11
  5579.  40 PROCfile_and_centreprint(öText
  5580. 8.11
  5581.  File Testò)
  5582. 8.11
  5583.  50 PROCfile_and_blankline
  5584. 8.11
  5585.  60 PROCfile_and_printtab(10,öFirst
  5586. 8.11
  5587.  Line at TAB 10ò,TRUE)
  5588. 8.11
  5589.  70 PROCfile_and_printtab(10,öSecond
  5590. 8.11
  5591.  Line at TAB 10, but held ò,FALSE)
  5592. 8.11
  5593.  80 PROCfile_and_printtab(50,öto
  5594. 8.11
  5595.  await this at TAB 50ò,TRUE)
  5596. 8.11
  5597.    90 END
  5598. 8.11
  5599. 10000
  5600. 8.11
  5601. 10010 DEF PROCtextfile(textline$,
  5602. 8.11
  5603.  return%)
  5604. 8.11
  5605. 10020 REM return% is TRUE/FALSE flag
  5606. 8.11
  5607. 10030 REM to tell BPUT# to make
  5608. 8.11
  5609. <RETURN> action after text or not
  5610. 8.11
  5611. 10040 file%=OPENUP(ötextfileò)
  5612. 8.11
  5613. 10050
  5614. 8.11
  5615. 10060 REM Put pointer to end of
  5616. 8.11
  5617.  file ready for more text.
  5618. 8.11
  5619. 10070 PTR#file%=EXT#file%
  5620. 8.11
  5621. 10080
  5622. 8.11
  5623. 10090 IF return% THEN
  5624. 8.11
  5625. 10100ááBPUT#file%,textline$
  5626. 8.11
  5627. 10110 ELSE
  5628. 8.11
  5629. 10120ááBPUT#file%,textline$;
  5630. 8.11
  5631. 10130 ENDIF
  5632. 8.11
  5633. 10140 CLOSE#file%
  5634. 8.11
  5635. 10150 ENDPROC
  5636. 8.11
  5637. 10160
  5638. 8.11
  5639. 10190 DEF PROCfile_and_centreprint
  5640. 8.11
  5641. (string$)
  5642. 8.11
  5643. 10200 REM Prints a string centred on
  5644. 8.11
  5645.  screen,
  5646. 8.11
  5647. 10210 REM and puts a corresponding
  5648. 8.11
  5649.  string into a text file.
  5650. 8.11
  5651. 10220
  5652. 8.11
  5653. 10230 LOCAL tab%,screenwidth%
  5654. 8.11
  5655. 10240 REM First find screenwidth in
  5656. 8.11
  5657.  Mode being used,
  5658. 8.11
  5659. 10250 SYS öOS_ReadModeVariableò,-1,1
  5660. 8.11
  5661.  TO ,,screenwidth%
  5662. 8.11
  5663. 10260
  5664. 8.11
  5665. 10270 tab%=((screenwidth%+1)
  5666. 8.11
  5667. -LEN(string$)) DIV 2
  5668. 8.11
  5669. 10280 PRINT TAB(tab%)string$:REM To
  5670. 8.11
  5671.  screen
  5672. 8.11
  5673. 10290
  5674. 8.11
  5675. 10300 line$=STRING$(tab%,ö ò)+string$
  5676. 8.11
  5677. 10310 PROCtextfile(line$,TRUE):REM
  5678. 8.11
  5679. Corresponding string to text file
  5680. 8.11
  5681. 10320 ENDPROC
  5682. 8.11
  5683. 10330
  5684. 8.11
  5685. 10360 DEF PROCfile_and_blankline
  5686. 8.11
  5687. 10370 REM Prints an empty line on
  5688. 8.11
  5689.  screen,
  5690. 8.11
  5691. 10380 REM and puts a corresponding
  5692. 8.11
  5693. string into a text file.
  5694. 8.11
  5695. 10400 PRINT:REM To screen
  5696. 8.11
  5697. 10420 line$=öò
  5698. 8.11
  5699. 10430 PROCtextfile(line$,TRUE):REM
  5700. 8.11
  5701. Corresponding string to text file
  5702. 8.11
  5703. 10440 ENDPROC
  5704. 8.11
  5705. 10450
  5706. 8.11
  5707. 10480 DEF PROCfile_and_printtab(tab%,
  5708. 8.11
  5709. string$,crlf%)
  5710. 8.11
  5711. 10490 REM Prints a string on screen
  5712. 8.11
  5713.  at the designated tab position,
  5714. 8.11
  5715. 10500 REM and returns a corresponding
  5716. 8.11
  5717.  string for a text file.
  5718. 8.11
  5719. 10510 REM Écrlf%æ is TRUE/FALSE flag
  5720. 8.11
  5721.  to determine if screen printing
  5722. 8.11
  5723. 10520 REM** is to end with <Return>
  5724. 8.11
  5725.  or not (i.e. semi-colon or not).
  5726. 8.11
  5727. 10530
  5728. 8.11
  5729. 10540 gap%=tab%-POS
  5730. 8.11
  5731. 10550 REM Égap%æ needs to be calcul-
  5732. 8.11
  5733. ated before printing to screen.
  5734. 8.11
  5735. 10560
  5736. 8.11
  5737. 10570 IF crlf% THEN
  5738. 8.11
  5739. 10580ááPRINT TAB(tab%)string$
  5740. 8.11
  5741. 10590 ELSE
  5742. 8.11
  5743. 10600ááPRINT TAB(tab%)string$;
  5744. 8.11
  5745. 10610 ENDIF
  5746. 8.11
  5747. 10620
  5748. 8.11
  5749. 10630 line$=STRING$(gap%,ö ò)+string$
  5750. 8.11
  5751. 10640 PROCtextfile(line$,crlf%):REM
  5752. 8.11
  5753. Corresponding string to text file
  5754. 8.11
  5755. 10650 ENDPROC
  5756. 8.11
  5757. I am still trying to get Écharacter printingæ via a Printer Driver
  5758. direct from Basic!
  5759. 8.11
  5760. (We have one that we have used at NCS for years. Iæll put it on the
  5761. monthly disc. Is that what you want? Ed.)
  5762. 8.11
  5763. Ray Favre, West Drayton
  5764. 8.11
  5765. Runny letters Ö Some people donæt realise that the ink used by inkjet
  5766. printers is water-based and is therefore not waterproof. This isnæt
  5767. normally a problem but it can become one when addressing envelopes! In
  5768. rainy weather, my postman often delivers letters where the address is
  5769. all but illegible, and if the ink had run in this way before it had
  5770. reached my local sorting office, I would probably never have received
  5771. it.
  5772. 8.11
  5773. The solution is very simple. Most stationers sell a Éfixeræ for use with
  5774. rub down lettering (Letraset etc.). This is actually a very fine, clear,
  5775. varnish in aerosol form. Itæs quite expensive, around ú3, but a can will
  5776. last many years. Just lightly spray it on the address or label (it dries
  5777. in a few seconds) and your letter will arrive safely even in a monsoon.
  5778. 8.11
  5779. David Holden, APDL
  5780. 8.11
  5781. Transferring text files using Hermes Ö There is an increasing interest
  5782. these days in exchanging text files between Acorn RISC computers and
  5783. PCs. There are two major differences Ö PC text files end with a ctrl-Z
  5784. (ASCIIá26) character and have CR LF (ASCII 13 +áASCII 10) characters at
  5785. the end of each line. Acorn text files have only an LF character at the
  5786. end of a line and have no special end character. Hermes (v1.22 onwards)
  5787. is able to handle most of the conversion in either direction.
  5788. 8.11
  5789. To convert an Acorn file to PC, open the Hermes application window and
  5790. display the Pipe parameters. Change the Line End to CRLF and click on
  5791. öOKò. Drag the text file to Edit, use <ctrl-down> to move the cursor to
  5792. the end of the file and add ñCTRLZñ, then resave. Ensuring that no
  5793. application has the input caret, drag the text file onto the Hermes
  5794. iconbar icon. After a few moments, the converted file will be piped to
  5795. Edit where it can be saved to the DOS disc.
  5796. 8.11
  5797. To convert a PC file to Acorn, change the DOS file to Text (&FFF) and
  5798. open an Edit document, making sure it has the input focus. Drag the DOS
  5799. file onto the Hermes iconbar icon and the converted file will be sent
  5800. direct to the edit document with all the CR characters stripped out. The
  5801. ctrl-Z character at the end can be deleted manually.
  5802. 8.11
  5803. Hermes raison dæetre is to facilitate transfer between packages and this
  5804. cross-platform interchange is an extension of that philosophy.
  5805. 8.11
  5806. Mike Logan, Base 5 Technical Graphics
  5807. 8.11
  5808. Underlining Impressionæs bugs Ö If you are editing a style, and adding
  5809. ÉUnderlines 2æ to it in Publisher (4.05), make sure that any existing
  5810. text in that style does not have underlines set as an effect. If the
  5811. effect is set, strange things happen, andáthe window goes black!
  5812. 8.11
  5813. Brian Cocksedge, Midhurst, W Sussexáuá
  5814. Hints and Tips
  5815. 8.10
  5816. Debugging via the Serial Port Ö (Unfortunately, we had problems
  5817. importing the text into Impression when we put this hint in last monthæs
  5818. magazine. Sorry for any confusion that we caused Ö it was our fault and
  5819. not John Westæs! The correct version is as follows...)
  5820. 8.10
  5821. The os_cli line makes use of the system redirection to send the text to
  5822. the serial port, and so it should have read:
  5823. 8.10
  5824. os_cli(öecho Start of initialise()
  5825. 8.10
  5826. {serial: }ò);
  5827. 8.10
  5828. More details of redirection can be found on page 419 of the RISC OS 3
  5829. User Guide. The new Acorn C/C++ does not support os_cli, so you should
  5830. use _kernel_oscli instead.
  5831. 8.10
  5832. From Basic, the OSCLI command is the direct equivalent.
  5833. 8.10
  5834. OSCLI öecho Start of PROC_init
  5835. 8.10
  5836.  {serial: }ò
  5837. 8.10
  5838. John West, Surrey
  5839. 8.10
  5840. Disc protection Ö Of the 100+ readersæ floppy discs Iæve processed over
  5841. the last few months, there was a fair smattering of broken cases,
  5842. mangled sliders and disc errors. In every case, the defective discs had
  5843. been sent in paper envelopes without further protection from the rough
  5844. and tumble of Her Majestyæs mails. This prompts me to repeat Edæs
  5845. recommendation of many moons ago that it is well worthwhile giving your
  5846. discs adequate protection in the post. Jiffy bags or board-backed
  5847. envelopes cost only a few pence from stationers and, provided any
  5848. covering documentation is limited to a couple of pages, you are unlikely
  5849. to exceed the 60g limit for 19p/25p postage.
  5850. 8.10
  5851. Jim Nottingham, Pocklington
  5852. 8.10
  5853. Impression borders Ö The built-in borders in Impression provide ╝ point,
  5854. 1 point and 4 point thick black borders (numbers 1, 2 & 3), but how do
  5855. you get a 5 point border? There is no way for the user to specify the
  5856. thickness and, also, the lines donæt join properly at the corners, as
  5857. you can see...
  5858. 8.10
  5859. Here is a simple way to make your own line borders using Draw:
  5860. 8.10
  5861. Create a new Draw document and set the zoom to 8:1. Show the grid and
  5862. lock to it. Set the grid spacing to 0.125 inches with 9 subdivisions Ö
  5863. since one point equals 1/72 inch, each subdivision is one point. For a 5
  5864. point line make a rectangle 5 squares wide and about 30 squares deep. To
  5865. make the corners square, you need to make a 5 by 5 square immediately
  5866. above the rectangle.
  5867. 8.10
  5868. Finally, set the fill colour of both to black and the line colour to
  5869. none and save the file in your border directory.
  5870. 8.10
  5871. You can also make curved or bevelled joins by changing the corner square
  5872. into a sector or a triangle.
  5873. 8.10
  5874. To get half point thicknesses, you need to set the number of
  5875. subdivisions to 18.
  5876. 8.10
  5877. Unfortunately, the 8:1 maximum zoom in Draw is too small to do quarter
  5878. point lines directly, so you need to construct them double size and then
  5879. ömagnifyò them by 0.5, or else use Artworks with a 4000% magnification.
  5880. On the monthly disc is a selection of plain rectangular borders from ╝
  5881. point to 6 point thickness.
  5882. 8.10
  5883. The only remaining problem is that Impression puts the borders around
  5884. the outside of the frame so, with thick borders, you canæt use the ösnap
  5885. to framesò feature to get your alignment right when the frames have
  5886. different borders, as you can see from the frame opposite.
  5887. 8.10
  5888. Cain Hunt, Cambridge
  5889. 8.10
  5890. Mouseballs Ö Logitech mice sometimes begin to slip when a glassy film of
  5891. material builds up around the periphery of the rollers which contact the
  5892. mouse ball. This can be as little as 0.5mm wide but is very tenacious.
  5893. Using a piece of metal or wood to dislodge the material can easily
  5894. damage the rollers. With a bit of patience it can be softened using
  5895. isopropyl alcohol on a cotton bud. Lint free cloth is even better. This
  5896. takes a few minutes of gentle rubbing to do the trick. One of the
  5897. rollers is spring loaded and is a little more difficult. A clean cotton
  5898. bud holding a little IPA can be used to rub around the mouse ball to
  5899. remove the stickiness. If an Archive type mat is used, a gentle wash
  5900. with warm water and detergent will delay the problem recurring.
  5901. Everything has to be completely dry before reassembly.
  5902. 8.10
  5903. Les May, Rochdaleáu
  5904. Hints and Tips
  5905. 8.9
  5906. Canon BJ200 + CC TurboDriver Ö Iáhave had a number of problems with this
  5907. combination, and thought my solutions may help others.
  5908. 8.9
  5909. The first problem concerned the output of IBM ProPrinter strings. These
  5910. occur because the BJ-200 printer definition file supplied is an IBM
  5911. definition file, and should therefore be labelled as BJ10 since IBM
  5912. strings cannot be used in BJ200 mode. The converse also applies, i.e.
  5913. BJ-10 mode cannot handle Epson strings. I then used an Epson printer
  5914. definition file from the Acorn supplied discs, and all the problems
  5915. disappeared.
  5916. 8.9
  5917. The second problem concerned printing from Basic. I have written a WIMP
  5918. application which writes out a series of results for the bridge club of
  5919. which I am a member. I need to write direct from Basic so that I can
  5920. alter the print style and line and row spacing to produce the best
  5921. layout, using the comprehensive spacing and styles provided in BJ200
  5922. mode. It makes no sense to write these strings to the screen so I use
  5923. *FX3,10 to start the printed output and *FX3,0 to stop it. Everything
  5924. prints perfectly, but a drawfile will not print afterwards. I eventually
  5925. discovered that the *FX3,10 caused a Turboqueue file to be created, but
  5926. the *FX3,0 command leaves the file open and thus hangs the printing
  5927. process. I finally received a letter from CC today and I quote:-
  5928. 8.9
  5929. öRegarding the Basic printing Éproblemæ. The operating system itself
  5930. will not close the printout file after a *FX3,0. Indeed, we have
  5931. reported this as a bug to Acorn. However, if you immediately follow the
  5932. *FX3,0 command with a VDU3, then the file will close correctly.ò
  5933. 8.9
  5934. I have tried it and it works!
  5935. 8.9
  5936. John Wallace, Crawley
  5937. 8.9
  5938. CD-ROMs Ö With the advent of magazine CD-ROMs, which usually come in a
  5939. soft plastic sleeve, the safe storage of these can be made using a 5╝ö
  5940. disc box.
  5941. 8.9
  5942. Ted Lacey, Southampton
  5943. 8.9
  5944. Cursor movements in Publisher Ö There have been moans about one aspect
  5945. of Impression Publisher in various Acorn magazines: <shift-cursor> no
  5946. longer moves the cursor by one word, but is used for selecting text.
  5947. 8.9
  5948. In the latest version (1.05) of Publisher, the Preferences dialogue box
  5949. contains the option öShift Cursor Word Moveò, so you can take your pick.
  5950. 8.9
  5951. Jochen Konietzko, K÷ln, Germany
  5952. 8.9
  5953. Debugging via the serial port Ö Why has no-one extolled the virtues of a
  5954. second machine connected via the serial port? Even on the old BBC B,
  5955. this can be very useful. A trivial Basic program on the second machine
  5956. will print out the incoming data stream. Debugging time can then be cut
  5957. by such simple things as
  5958. 8.9
  5959. os_cli(echo Start of initialise() {serial: });
  5960. 8.9
  5961. in a C file. Clearly this is rather basic; a variadic function like
  5962. printf() is much more flexible, but the general usefulness, especially
  5963. when working on desktop applications, is considerable. Besides, there
  5964. must be lots of old machines around gathering dust. I use an old mono
  5965. Kaga monitor Iæve had since soon after the BBC first came out, and an
  5966. old 310 with no disc drive.
  5967. 8.9
  5968. John West, Surrey
  5969. 8.9
  5970. Deskjet 540 problems Ö I recently bought an HP DeskJet 540, the
  5971. replacement for the DJ520 and then spent a frustrating weekend trying to
  5972. get it to work with my A5000. I got beautiful printouts but it took half
  5973. an hour to print an A4 page. I tried the latest Acorn DeskJet driver
  5974. sent to me by Gerald Fitton, but it was no better than previous
  5975. versions.
  5976. 8.9
  5977. As soon as Monday came, I phoned Acorn and they had just heard from
  5978. their Australian office that other people had similar problems. Since
  5979. the DeskJet 540 is software controlled and the Centronics protocol has
  5980. been slightly modified, the 540 and A5000 were incompatible.
  5981. 8.9
  5982. The earlier Deskjet 520 was perfectly suitable to work with the A5000
  5983. but it was now officially off the market. Fortunately, the shop where I
  5984. purchased the 540 gave me a full refund when I explained the dilemma,
  5985. and I knew that I had seen a 520 recently in another store. I was lucky
  5986. and purchased the last one in stock Ö its monochrome resolution 600 by
  5987. 300 is the same as the 540 but it does not have the colour upgradability
  5988. of the 540.
  5989. 8.9
  5990. Acorn say that the 540 should work satisfactorily with the Risc PC but
  5991. not with earlier computers, due to hardware differences in the
  5992. controller.
  5993. 8.9
  5994. (I gather that, after further investigation, it seems that the problem
  5995. is only with certain A5000s, not with all of them. Ed.)
  5996. 8.9
  5997. Michael Nurse, Cambridge
  5998. 8.9
  5999. Gang Screen in RISC OS 3.5 Ö With reference to Hints & Tips (Archive
  6000. 8.7), the list of names can be initiated by four clicks of the menu
  6001. button over any part of ⌐ Acorn Computers Ltd, 1994, although it
  6002. sometimes refuses to work again until after a reboot.
  6003. 8.9
  6004. M R Buckland, Daventry
  6005. 8.9
  6006. Impression printing Ö Now, I know you all know this, but... for months,
  6007. I have been cursing the fact that, with Acornæs new printer drivers and
  6008. LaserDirect, printing one file too soon after another causes a önot
  6009. enough memory to printò error and you have to wait and try again. Well,
  6010. I discovered today that if you grab several files together and drop them
  6011. on the printer driver icon, they print off, one after the other, without
  6012. so much as a hesitation. I wish someone had told me before!!!!!!!
  6013. 8.9
  6014. Ed.
  6015. 8.9
  6016. More uses for the serial port Ö One of the pieces of software built into
  6017. the A-Link is the terminal software which could be used to receive the
  6018. debugging data, described by John West above, on a Pocket Book.
  6019. 8.9
  6020. I find this combination useful for another task as well. There are at
  6021. least two PD applications which allow you to set up a task window (as
  6022. you get from ctrl-f12) which takes input from, and outputs to, the
  6023. serial port, which means I can run command line utilities without taking
  6024. up desktop space, and even if someone else is using the computer for
  6025. other tasks.
  6026. 8.9
  6027. Matthew Hunter, NCS
  6028. 8.9
  6029. Printing from text editors Ö Contrary to Matthewæs comments (Archive 8.8
  6030. pp28/29), in my experience, Edit does print in response to <print> but
  6031. Zap does not. Dragging the file-save icon to the printer icon does work
  6032. with both packages. I will stick well clear of <shift-print>, however.
  6033. Zap prints a black (NOT blank) page!
  6034. 8.9
  6035. There remains one problem, however, which is common to Edit and Zap. If
  6036. the document contains a line of text which is too long to fit on one
  6037. line, it is truncated! This did not happen before I upgraded to RISC OS
  6038. 3 Laser Direct and Printers 1.22. Previously, Edit inserted a CR/LF to
  6039. print the rest of the line (I did not have Zap then).
  6040. 8.9
  6041. Colin Singleton, Sheffield
  6042. 8.9
  6043. Risc PC Apps directory Ö As Keith Hodge has pointed out in his excellent
  6044. Risc PC column, the correct place to add applications into ÉAppsæ on the
  6045. iconbar is in !Boot.Choices.Boot.PreDeskTop, by adding lines such as:
  6046. 8.9
  6047. AddApp adfs::HardDisc4.$.Utilities.!ArcFS
  6048. 8.9
  6049. You may have noticed that the first line of this section reads:
  6050. 8.9
  6051. AddApp Boot:^.Apps.!*
  6052. 8.9
  6053. which displays any application, i.e. a directory whose filename begins
  6054. with a É!æ. This means that any normal directory whose filename does not
  6055. begin with a É!æ will not be displayed inside Apps on the iconbar. So,
  6056. if there are any applications there which you never use, you could place
  6057. them in a directory (called ÉNot Neededæ say) and they will not be
  6058. displayed, although they are still accessible through Apps on the hard
  6059. disc.
  6060. 8.9
  6061. The converse of this is that lines such as that given above for adding
  6062. applications into Apps need not, in fact, be placed in the file
  6063. PreDesktop Ö they can be anywhere. Therefore, you can have a small Obey
  6064. file which adds a selection of your favourite applications at any time.
  6065. This saves cluttering up the Apps directory display with everything you
  6066. might conceivably need until you actually need it, and it saves on
  6067. memory and time taken to Boot the machine, as the !boot files of your
  6068. chosen applications are not run, and their sprites are not loaded, until
  6069. you choose to add them to Apps by using your Obey file.
  6070. 8.9
  6071. Matthew Hunter, NCS
  6072. 8.9
  6073. Risc PC audio expansion Ö The audio header required by the audio mixer
  6074. for the Cumana Indigo CD-ROM drive, and the identical Acorn and ESP 16-
  6075. bit sound upgrades, is link 14 which was not fitted on some early
  6076. machines. The link is located at the top right corner of the motherboard
  6077. if you are looking at the machine from the front. It is a row of five
  6078. pins, with links connecting 1-2 and 2-4. Pin one is closest to the back
  6079. of the machine. If this link is not fitted, get in contact with Granada
  6080. who will replace your motherboard for one fitted with the correct
  6081. connector. Currently, the Cumana and 16-bit upgrades are mutually
  6082. exclusive, but ESP are working on an audio mixer to enable the 16-bit
  6083. sound and CD sound from any CD-ROM drive to be combined.
  6084. 8.9
  6085. Matthew Hunter NCS
  6086. 8.9
  6087. Risc PC font size Ö There was a request in Archive 8.8 p38 regarding the
  6088. font size for the outline font used in place of the system font. Full
  6089. details are given on pages 220 and 221 of Volume 5 of the RISC OS 3
  6090. PRMæs, but the following example Obey file will demonstrate the method.
  6091. It should be placed in the PreDesk directory of the !Boot sequence.
  6092. 8.9
  6093. configure wimpfont 0
  6094. 8.9
  6095. set wimp$font Trinity.Medium.Italic
  6096. 8.9
  6097. set wimp$fontsize 192
  6098. 8.9
  6099. set wimp$fontwidth 160
  6100. 8.9
  6101. The last two lines allow you to alter the height and width of the font,
  6102. as desired.
  6103. 8.9
  6104. It will only have an effect on text which an application regards as
  6105. system text Ö an application which uses its own fonts in icons will not
  6106. be affected.
  6107. 8.9
  6108. David Springle, Cheshire
  6109. 8.9
  6110. Window behaviour Ö I found that, when two windows containing a word
  6111. processor are open, it is possible to scroll one window and
  6112. simultaneously type into the other window. Further investigation has
  6113. shown that it is possible to do this with Zap (v.á1.20), Edit (v. 1.50),
  6114. Desk Edit (v. 3.00) and Publisher (v. 4.01). These are the only Éword
  6115. processorsæ (for want of a better collective name) Iáhave access to. It
  6116. is also possible to mix the WPs in the windows, e.g. the scrolling
  6117. window could contain a Publisher document and the typing window could
  6118. contain a Zap page. This only breaks down with Edit as the scrolling
  6119. window. When the Edit window is scrolled, this becomes the active window
  6120. and typing is not possible in the other window. (Why? Can it be
  6121. changed?).
  6122. 8.9
  6123. Dave Livsey, Devon
  6124. 8.9
  6125. Window behaviour II Ö Usually, if you have clicked on a window titlebar
  6126. (using select), to move it, or bring it to the front of the window
  6127. stack, processing will continue in the background Ö this can be seen by
  6128. having !Alarm counting seconds on the iconbar. If the window you are
  6129. using has a pane attached, however, you will find that the processing
  6130. stops. This is because clicking on the titlebar brings the window to the
  6131. front of the window stack, and the application then brings the pane to
  6132. the front. The window holding the pane is then no longer at the front,
  6133. and the WIMP tries to bring it to the front again, and so on. Using
  6134. <adjust> does not have the same effect, since it does not try to alter
  6135. the order of the windows.
  6136. 8.9
  6137. Matthew Hunter, NCS
  6138. 8.9
  6139. Hints & Tips
  6140. 8.9
  6141. Exporting text Ö When exporting text from HolyBible into Impression, I
  6142. suggest that you use an intermediate Étemplateæ document. There are two
  6143. reasons for this. First of all, you may not like the style definitions
  6144. that ExpLAN have provided. So, in this dummy document, you can edit the
  6145. definitions to taste. Then, as you export the DDF text into that
  6146. document, it will take on your own style definitions. The second reason
  6147. is that when you export some DDF text, it brings with it thirteen style
  6148. definitions. When I want to quote a single verse in the God-slot, I
  6149. donæt want the Archive magazine style-sheet clogged up with all of those
  6150. styles, so I drop the DDF text into the dummy document. I then mark the
  6151. text <ctrl-A>, copy it and paste it into the God-slot. That way, it only
  6152. brings with it the styles it actually uses.
  6153. 8.9
  6154. HolyBible problem Ö Has HolyBible hung up on you? It has stiffed my
  6155. machine twice now and both times it occurred when I was marking some
  6156. text ready for export. Now I know that this isnæt a statistically
  6157. significant sample(!) but I wonder if anyone else has had similar
  6158. problems? I was working on a 10Mb RiscáPC and (I think) the only other
  6159. applications I had running at the time were Impression, Edit and
  6160. Keystroke. If you get hang-ups too, please report them to Gabriel,
  6161. giving as much detail as possible: what machine? memory configuration?
  6162. other applications running? what you were doing at the time? etc.
  6163. 8.9
  6164. Paul Beverley, NCSáu
  6165. 8.9
  6166. Hints and Tips
  6167. 8.8
  6168. CC Turbo Driver v4 Ö Iæd like to pass on to other Archive readers some
  6169. answers that I received from CC.
  6170. 8.8
  6171. 1) The command *Printer$BlackScale is no longer supported by the v4
  6172. TurboDrivers; instead, CC offer ösophisticated colour correction
  6173. tablesò; those for HP printers are öshortlyò to be released.
  6174. 8.8
  6175. 2) The Turbo module which could be used in earlier versions of the TD to
  6176. enable other printer drivers to use the dongled cable has been replaced
  6177. by the program !PrintQFS, which is cunningly hidden within
  6178. !System.!CCShared.
  6179. 8.8
  6180. By the way, CC informed me that Style has reached version 3.07. Free
  6181. upgrades from v. 3.04 can be obtained in the usual way Ö by sending in
  6182. master disk 1. (Donæt forget to send the return postage!)
  6183. 8.8
  6184. Jochen Konietzko, K÷ln, Germanyáu
  6185. 8.8
  6186. Fireworkz Pro Ö I reported some problems with version 1.20 to Colton
  6187. Software and was told (in a letter dated 15th March) that the latest
  6188. version, 1.20/50, fixes most of these problems. Version 1.21 öis due out
  6189. in about three weeksò. (Colton are currently saying, öit will be
  6190. available during Aprilò. Ed) The upgrade procedure here is to send in
  6191. both program disks Ö donæt forget Ö return postage!
  6192. 8.8
  6193. Jochen Konietzko, K÷ln, Germanyáu
  6194. 8.8
  6195. Printing from text editors Ö Iámentioned, in my review of lottery
  6196. packages, that one of them would not print on my LaserDirect, because it
  6197. Éprintsæ to a null file instead of to the printer. I have now stopped
  6198. trying to use Zap for the same reason. If I drag a text file to the
  6199. printer icon (with Zap installed instead of Edit), it prints properly
  6200. but if I try to print the document currently displayed on the screen, it
  6201. does not. I donæt know whether this is a general problem or whether I
  6202. have overlooked some control parameter.
  6203. 8.8
  6204. Colin Singleton, Sheffieldáu
  6205. 8.8
  6206. Many text editors, including both Edit and Zap, cheat when you try to
  6207. print and send the data directly to the parallel port. This is fine if
  6208. you have a standard printer, but if you use a different connection (e.g.
  6209. serial or laser direct), the file will not be printed. Also, if you use
  6210. a Turbo Driver, it is circumvented by Edit, so the text is corrupted.
  6211. There are a couple of ways around this.
  6212. 8.8
  6213. You can save to a file and drag that to the printer icon, or try
  6214. dragging the file from the save box to the print icon. This should have
  6215. the same result and it means that you donæt have to delete the file
  6216. afterwards. With Zap, you can also press <shift-print> rather than
  6217. <print> which will force the printout to go via the printer driver.
  6218. Since Zap allows you to reconfigure the keyboard shortcuts, you can set
  6219. <print> to print via the printer driver. (Choose Edit keys from the
  6220. options submenu, find the print keymapping which, by default, will be
  6221. set to Quickprint and change it to Printfile. Save the keys file and
  6222. choose Reload keys again, from the options submenu for the change to
  6223. take effect).
  6224. 8.8
  6225. Matthew Hunter, NCSáu
  6226. 8.8
  6227. Wolfenstein bugs Ö A few days after I had sent my Wolfenstein hint
  6228. (Archive 8.7, p.12) to Paul, I found that sometimes the saved files
  6229. remained open even though the !Cfs.!Run file was not.  I turned to
  6230. PowerSlave for help and this is what Eddie Edwards told me:
  6231. 8.8
  6232. There is a bug in Wolfensteinæs code which means that the files are only
  6233. closed when the current directory is on the same filing system as
  6234. Wolfenstein. Since I use ADFS and SCSI, this would often not be the
  6235. case.
  6236. 8.8
  6237. The recommended remedy is to add, at the start of the !Run file, a
  6238. Dir<Obey$Dir> command.
  6239. 8.8
  6240. This fix seems to work perfectly.
  6241. 8.8
  6242. Another problem I have is that Wolfenstein always kills my computeræs
  6243. beep. This bug can be fixed by adding:
  6244. 8.8
  6245. Channelvoice 1 MyVoice
  6246. 8.8
  6247. to the end of the !Run file.
  6248. 8.8
  6249. Jochen Konietzko, K÷ln, Germanyáu
  6250. From COmment COlumn
  6251. Turbo Drivers (not a) problem Ö The problem of Printers 1.28 with the
  6252. current versions of the Turbo Drivers has, apparently, now been fixed,
  6253. so please do not remove line 91 (as we stated in Archive 8.7 p13) of the
  6254. !RunImage file! If you still have a problem, contact Computer Concepts.
  6255. 8.8
  6256. CC Technical Supportáu
  6257. Hints and Tips
  6258. 8.7
  6259. Å  Desktop Font Ö If you find you are losing information on RISC OS 3.5
  6260. because your desktop font means that characters are truncated in icons
  6261. designed to take the System font, remember that you can select the
  6262. system font, until software producers catch up. Alternatively you can
  6263. edit the offending templates using FormEd, or similar. Peter Prewett,
  6264. South Australia.
  6265. 8.7
  6266. Å  öGang screenò in RISC OS 3.5 Ö In RISC OS 3.10 there is a hidden
  6267. ögang screenò, showing the names of the people who worked on the
  6268. version; does anyone know if such a thing also exists in version 3.5? Or
  6269. can it be that the developers have, this time, only put that picture
  6270. into the ö50-99ò directory of !SlideShow images?á Jochen Konietzko,
  6271. K÷ln, Germany.
  6272. 8.7
  6273. If you open the RISCáOS 3.5 info window (press <menu> over the iconbar
  6274. acorn) and use the menu button to click out the word öteamò on the
  6275. letters of öAcorn Computersò, it will initiate a list of names for you.á
  6276. Matthew Hunter, NCS.
  6277. 8.7
  6278. Å  !KeyStrokeæs KeysLib Ö If you use KeyStroke, you should take a close
  6279. look at the small Basic programs inside the KeysLib library Ö some of
  6280. them are very useful!
  6281. 8.7
  6282. My personal favourites are forceAback and forceAfront which give you
  6283. quick access to parts of the Pinboard hidden by a window. ForceAback
  6284. puts all windows behind the Pinboard (you can see that they arenæt
  6285. simply closed if one of them extends down onto the iconbar) and
  6286. forceAfront reverses the process. To hide the windows, you define a
  6287. keystroke for a *Command:
  6288. 8.7
  6289. Text: *Run <Keystroke$Lib>.forceAback
  6290. 8.7
  6291. The equivalent text for forceAfront will make the windows reappear. Of
  6292. course, you must make sure that the filer has Éseenæ KeysLib for this to
  6293. work.á Jochen Konietzko, K÷ln.
  6294. 8.7
  6295. Å  Long file names in RISC OS 3.5 Ö In Archive 8.6 p.68, Keith Hodge
  6296. made a little wish list for future versions of RISC OS; one of those
  6297. wishes was Élong file namesæ. The manual for the German RISC OS 3.50D
  6298. does indeed state that a name must be between one and ten characters
  6299. long but this does not seem to be the whole truth. I have grown
  6300. accustomed to using the Cropping option in RISC OS 3.10, which meant
  6301. that I did not have to count if the intended name had exactly ten or
  6302. maybe more letters but on my Risc PC those slightly too long names are
  6303. not cropped!
  6304. 8.7
  6305. As the picture shows, it is possible to type in up to 30 characters
  6306. before there is an error message öName too longò. This seems to work
  6307. only in MemFS Ö surely there should be a way to implement it
  6308. everywhere?á Jochen Konietzko, K÷ln.
  6309. 8.7
  6310. (This doesnæt seem to work on the UK version of RISCáOS 3.5. Ed.)
  6311. 8.7
  6312. Å  Saving Wolfenstein games Ö Have you, too, noticed that sometimes,
  6313. when you save a game in Wolfenstein 3D, the name disappears, giving an
  6314. Éemptyæ slot in the Save window?
  6315. 8.7
  6316. If you have, you probably use CCæs !Compression. I have found that on my
  6317. RISC PC, as long as the !CFS.!Run file is open, the save option of
  6318. Wolfenstein 3D does not work properly (If you donæt know how to find out
  6319. which files are open, thereæs a little PD utility called !FileMan which
  6320. lists all open files and allows you to close them one by one.)á Jochen
  6321. Konietzko, K÷ln.
  6322. 8.7
  6323. Å  Talking !Alarm Ö I have always wanted to have alarms which spoke to
  6324. me but I could not find a way to do this. When I dropped sound files
  6325. onto the Alarm Set window, all I got was a silent graph from Audioworks
  6326. or Soundlab. However, there is a way, thanks to an idea given to me by
  6327. David Pratt who used to run GemPD. I have used this on the Risc PC, but
  6328. I see no reason why it shouldnæt work on any other machine. There is
  6329. probably a clever Éprogrammers typeæ way to do this, but I am a simple
  6330. Édrag and dropæ person with no programming skills at all. You just need
  6331. two small Utilities obtainable from PD. They are !Compress and !Player
  6332. both by David Radford and obtainable from Datafile.
  6333. 8.7
  6334. Using the Oak Recorder and !Soundlab, make Armadeus files of anything
  6335. you want Alarm to tell you. My first recording was of my wife saying
  6336. öItæs midnight Ö time to come to bed!ò I also recorded snippets like
  6337. öCoffee timeò and, I have to confess, öTime to watch Neighboursò.
  6338. 8.7
  6339. Using !Compress, make compressed versions of these files. You must not
  6340. keep the uncompressed files in the computer or !Player seems to get
  6341. confused and an unholy row erupts!
  6342. 8.7
  6343. Now load !Player into your Risc PC Bootfile in Choices.Boot.Tasks. When
  6344. you drop one of the compressed sound files into the Alarm Set window,
  6345. choose Task alarm and set the time and day, !Player in the boot file
  6346. activates the sound exactly on time.
  6347. 8.7
  6348. öAre there any drawbacks?ò I hear you cry. Well, I found that having
  6349. done their job, the compressed sound files seem to remain open, so that
  6350. when the computer boots up each morning it goes happily through each
  6351. recording again playing them until finished. But a small price to pay
  6352. for having a talking chum who tells you what to do each moment of the
  6353. day. No doubt there will be someone who can tell us how to stop this
  6354. little problem.á Christopher Jarman, Winchester.
  6355. 8.7
  6356. Å  Turbo Drivers and Printers 1.28 Ö the current versions of the Turbo
  6357. Drivers complain that they need a later version of !Printers when you
  6358. try to install them into the latest version of !Printers, currently
  6359. being shipped with new Risc PCs. This can be circumvented by copying the
  6360. install program to your hard disc, and editing the copy by removing line
  6361. 91 of the !RunImage file (that is the 91st line of the program, not
  6362. Basic line 91). The Turbo Drivers should then install correctly. If you
  6363. do not wish to attempt this then get in contact with Computer Concepts.
  6364. CC Technical Support.ááA
  6365. Hints and Tips
  6366. 8.6
  6367. Å  DPatch/DongleKey Ö Contrary to S Goddardæs comments about DPatch (8.5
  6368. p32), in my experience, DPatch is needed on the Risc PC if a Publisher
  6369. dongle is fitted, but Publisher has not been loaded. Any comments?á F
  6370. Jukes, Leeds.
  6371. 8.6
  6372. Å  Mode summary Ö This was written for those with hires/multisync
  6373. monitors and shows what is available.
  6374. 8.6
  6375. The choice of screen mode is a trade-off between the various factors and
  6376. how much you want to get on the screen and one time.
  6377. 8.6
  6378. Refresh speeds depend on the individual, but I find the 51Hz of mode 102
  6379. flickers too much on my monitor, so I designed 107. The higher the
  6380. better with refresh rates.
  6381. 8.6
  6382. Speed refers to how much the screen mode slows down the ordinary Acorn
  6383. computer. To keep the screen re-drawing quickly, use a mode with a
  6384. higher figure.
  6385. 8.6
  6386. Square screen modes give a better idea of what the final result will be
  6387. like, though rectangular modes are usually quite adequate except for
  6388. accurate graphic work.
  6389. 8.6
  6390. All the information was gathered using Flip Top from Computer Concepts.á
  6391. Steve Hutchinson, Gloucester.
  6392. 8.6
  6393. Å  Style/Publisher file sizes Ö Robert Lytton was writing about graphics
  6394. eating up disc space when used on several master pages within an
  6395. Impression document. I had the same problem with my östationeryò
  6396. document, containing master pages for A4 letterhead, A5, US letter (for
  6397. sending a fax to North America), comp slip, etc Ö each had my squiggly
  6398. logo Ö about 30Kb compressed.
  6399. 8.6
  6400. I was pleased to find that Impressionæs ÉSelect-Adjust trickæ works:
  6401. Make a blank frame on each master page, drop the graphic into one of
  6402. them, then click <Select> on it and <Adjust> in all the others. Bingo!
  6403. The graphic appears wherever you want it but only once in memory. The
  6404. ömasterò chapter behaves in the same way as ordinary chapters in the
  6405. document. Jim Nagel, Glastonbury.
  6406. 8.6
  6407. Å  Updating software Ö When updating a piece of software, it is tempting
  6408. to simply copy the new version over the old version with the newer
  6409. option set. This is not ideal, however, since it leaves old redundant
  6410. files in the application, taking up space. Therefore it is better to
  6411. delete the old version (or move it elsewhere if you are worried about
  6412. losing it) before installing the new. Roger Darlington, Manchester.ááA
  6413. 8.6
  6414. Mode  Size  Memory   Refresh  Speed  Colours   Shape
  6415. 8.6
  6416. Acorn standard modes
  6417. 8.6
  6418. 12  640╫256  96k  100Hz  4.79  16  Rect
  6419. 8.6
  6420. 20  640╫512  160k  51Hz  4.7  16  Square
  6421. 8.6
  6422. 21  640╫512  320k  51Hz  2.59  256  Square
  6423. 8.6
  6424. 27  640╫480  160k  59Hz  4.57  16  Square
  6425. 8.6
  6426. 28  640╫480  320k  59Hz  2.12  256  Square
  6427. 8.6
  6428. 31  800╫600  256k  37Hz  4.69  16  Square
  6429. 8.6
  6430. 39  896╫352  160k  60Hz  4.51  16  Rect
  6431. 8.6
  6432. 40  896╫352  320k  60Hz  2.08  256  Rect
  6433. 8.6
  6434. Modes from Newmodes, VIDC enhancer or WW modes
  6435. 8.6
  6436. 66  832╫288  128k  79Hz  4.57  16  Rect
  6437. 8.6
  6438. 67  832╫288  256k  79Hz  2.03  256  Rect
  6439. 8.6
  6440. 98  800╫600  256k  57Hz  4.99  16  Square
  6441. 8.6
  6442. (99 should be 256 colour version, but my Taxan 770+ wonæt work with it)
  6443. 8.6
  6444. 102  1152╫448  256k  51Hz  5.06  16  Rect
  6445. 8.6
  6446. 107  1088╫432  256k  60Hz  5.13  16  Rect
  6447. 8.6
  6448. Å  DPatch/DongleKey ù This program was on the Archive 7.9 Program Disc
  6449. to unlock Impression/Artworks dongles which otherwise can prevent
  6450. printing taking place.
  6451. 8.5
  6452. If all CC dongles are removed from a machine, DPatch must be deleted
  6453. from the !Boot file. Without a dongle fitted, DPatch will cause all
  6454. printer output to be corrupted. I discovered this when transferring
  6455. Publisher and Artworks from A5000 to Risc PC and attempting to set up
  6456. the A5000 with a Star XB24-10. The Risc PC does not need the patch to
  6457. allow printing to go ahead in the absence of Publisher or Artworks. S
  6458. Goddard, Bury St Edmunds.
  6459. 8.5
  6460. Å  Garbled *Screensave: This is a cross between a bug-report and a note
  6461. saying, öIf this happens to you, youære not going madò. Iæve just
  6462. started using !Quickshow, a neat little slide-show utility from DeskTop
  6463. Projects. When it saved a completed screen to disc, it seemed to write a
  6464. garbled sprite, with blocks of the sprite moved around internally.
  6465. Examining the code showed that the program simply displays the sprite on
  6466. screen and then does a *Screensave to write the sprite to disc.
  6467. Furthermore, the corrupting of the sprite didnæt occur when I wrote to
  6468. floppy rather than to my hard disc. Writing a one-line Basic program to
  6469. perform a screen dump replicated the bug absolutely consistently, and
  6470. only in mode 15. I conclude that, on my A310, RISC OS 3.10, with version
  6471. 1.16 of the Oak SCSI software, with a 270Mb Quantum drive, in mode 15,
  6472. *SCREENSAVE to the hard disc has a bug ù somewhere! I donæt know what to
  6473. suspect, but if you ever encounter garbled sprites, donæt blame the
  6474. application ù or tear your hair out!á Stuart Bell, Horsham.
  6475. 8.5
  6476. Å  Tablemate warning Ö Unless your table is small, DO NOT type your data
  6477. directly into Tablemate. Instead, type it into a CSV file using Edit and
  6478. import that. I have two tables several pages long and did not import the
  6479. text. As a result the only way I can now edit them is by exporting
  6480. drawfiles and patching them back together.á Peter Bond, Carnforth.ááA
  6481. 8.5
  6482. Hints and Tips
  6483. 8.4
  6484. Å Risc PC monitor configuration Ö One of the biggest problems people
  6485. have had with the Risc PC is finding that their machine will not drive
  6486. the monitor correctly, either because they are using a non-standard
  6487. monitor, or they have accidentally configured the machine incorrectly.
  6488. The !Mon application aims to rescue you from this situation.
  6489. 8.4
  6490. The program has a number of local monitor definition files, which it
  6491. will try in turn. One of them should give a usable display on your
  6492. monitor, after which you should set up your machine again so that the
  6493. configuration is correct.
  6494. 8.4
  6495. In order to use the program, you will need to do the following, typing
  6496. blind where necessary:
  6497. 8.4
  6498. a) Turn on the computer and wait for it to finish booting up (wait until
  6499. the hard disc activity stops).
  6500. 8.4
  6501. b) Insert the program disc into the floppy drive.
  6502. 8.4
  6503. c) Press <f12>.
  6504. 8.4
  6505. d) type öadfsò and press <return>.
  6506. 8.4
  6507. e) type ömount 0ò and press <return>.
  6508. 8.4
  6509. f) type östartò and press <return>.
  6510. 8.4
  6511. This will start the program and try the first monitor definition file
  6512. AKF11/12 which will not work on the AKF60æs/85æs supplied with the Risc
  6513. PC, but it is better to try this one first than a high end monitor
  6514. definition file which could damage a TV resolution monitor. You can
  6515. cycle through the available monitors by pressing <space>. Alternatively
  6516. you can jump to any of the files by pressing the appropriate number key,
  6517. the most useful are 4 (AKF60) and 5(AKF85). When the program loads a new
  6518. monitor definition file it will pause for two seconds, to give the
  6519. monitor time to catch up, and then beep. If you have a stable pictureÇ,
  6520. press <y> to finish, followed by <return> to get back to the desktop.
  6521. Note that this will not reconfigure your machine ù if you switch off
  6522. without reconfiguring, you will have the same problems next time ù but
  6523. it will get you a working system. This program is on the monthly program
  6524. disc. Matthew Hunter, NCS.ááAá
  6525. Hints and Tips
  6526. 8.3
  6527. Å  A3000 bulging case (Archive 8.2 p62)áÖáIn the hint last month, I
  6528. suggested replacing the plastic cases of A3000 computers. In the text I
  6529. sent to Paul, I made some mention of safety aspects but Paul edited them
  6530. out. (Oops, sorry!) Please note that, for a variety of reasons,áyou
  6531. should not attempt to change the bottom case if your power supply is the
  6532. cardboard-covered type. If you are unsure, I would be happy for you to
  6533. write to me or ring me on 01564-776745.á Keith Coton, 118 Purnells Way,
  6534. Knowle, Solihull, B93 9ED.
  6535. 8.3
  6536. Å  Binder problemsáÖáA number of people have said that, when they
  6537. reached the end of Volume 7, the last magazine wouldnæt fit into the
  6538. binder. Let me assure you that they do fit in the binder (well, just).
  6539. If you canæt get them in, it could be because you have been putting the
  6540. rods into the holes instead of into the slots. The holes are there only
  6541. for use when the volume is incomplete, i.e. with a half-full binder, the
  6542. magazines tend to flop about and the rods easily come out unless you put
  6543. the rod for the top issue into an appropriate pair of holes. I suppose
  6544. we ought to send out instructions with the binders, but having used the
  6545. same binders for 8 years, I forget that they are new to some of you.
  6546. Sorry! Ed.
  6547. 8.3
  6548. Å  Day of the week functionáÖáI agree entirely with the basic message of
  6549. Cain Huntæs article, öWhy bother programming?ò (8.1 p29). When I write
  6550. number-crunching programs in Basic, I Éprintæ the results to a spool
  6551. file, which I drag into Impression and format into a suitable
  6552. presentation document.
  6553. 8.3
  6554. One helpful comment, if I may, is that the calendar shouldnæt need to be
  6555. told the day of the week of January 1. The function to use (which
  6556. returns a value in the range 0=Sunday to 6=Saturday) is:
  6557. 8.3
  6558. DEFFNNewYear(Y%)=(1+1461*(Y%Ö1)DIV4Ö(1+ (Y%Ö1)DIV100)*3DIV4)MOD7
  6559. 8.3
  6560. Colin Singleton, Sheffield.
  6561. 8.3
  6562. Å  Impressionæs single-file document iconáÖáIn Archive 8.2 p.19, Paul
  6563. complained about the very dowdy grey icons that Impression Publisher and
  6564. Style use for their documents.
  6565. 8.3
  6566. Fortunately, this is easily changed: All you have to do is look for the
  6567. sprite called file_bc5 in the three directories !Sprites, !Sprites22 and
  6568. !Sprites23 inside Impressionæs application directory, and the sprite
  6569. called docsprites inside Resources.Sprites; you can replace them with
  6570. whatever icons you prefer Ö I took the Impression II document sprite and
  6571. changed its background from white to pale yellow to be able to tell the
  6572. two types of documents apart.á Jochen Konietzko, K÷ln, Germany
  6573. 8.3
  6574. This was one of many similar suggestions. Thanks to all who attempted to
  6575. put me out of my misery. My desktop is now resplendent with white Iæs
  6576. and yellow Iæs, so now I can see which I is which. Ed.
  6577. 8.3
  6578. Å  Inkjet paper quality (8.2 p63)áÖáReyjet paper can be obtained from
  6579. ÉStaples (Office Superstores)æ. The price, a few months ago, was ú2.39
  6580. (+VAT) per ream. I have found these stores to be well worth a visit, in
  6581. terms of both choice and price. Their catalogue contains a paper/printer
  6582. type compatibility chart and lists five types suitable for b/w inkjets
  6583. (from 80gsm to 100gsm, one in A3 size) and three for colour inkjets. The
  6584. Superstores tend to be Home Counties-based (Croydon, High Wycombe, and
  6585. Staples Corner in London) but they have other stores through the country
  6586. (e.g. Leeds, Cambridge, Swansea, etc.) though I do not know if they
  6587. carry full stocks.á Bob Bourne, Ware.
  6588. 8.3
  6589. If anyone canæt get Versoix paper locally, it is readily available from
  6590. Viking Direct at ú5.49 per ream or ú19.95 per 5 reams, both excluding
  6591. VAT and delivery. Eight reams or more are delivered free, usually
  6592. overnight. Viking Direct are on Freephone 0800-424444 and have a very
  6593. wide range of general computer and office supplies.á Jim Nottingham,
  6594. York.
  6595. 8.3
  6596. Å  Impressionæs öSome fonts not foundò ÖáSince the arrival of Impression
  6597. Style and Publisher, I have read repeated complaints about the fact that
  6598. both versions still replace fonts that have been used in a document but
  6599. are currently not available, with the default font. Coupled with this
  6600. complaint, usually, is a wish that there should be an option to abort
  6601. and install the missing fonts (most recently in Archiveá8.1, p.31).
  6602. 8.3
  6603. I canæt quite see the point of these complaints. I work with just three
  6604. or four fonts most of the time, so that one of the all-singing, all-
  6605. dancing font handlers like FontDirectory would be a waste of money for
  6606. me. Therefore, I have simply distributed my fonts over four directories
  6607. Ö a small one with those few fonts that I use most often and, one step
  6608. down in the directory structure, the rest, grouped according to their
  6609. general look.
  6610. 8.3
  6611. When Impression Style now gives out its önot foundò message, all I have
  6612. to do is let RISC OS 3.10 öseeò the relevant font directory, then press
  6613. <f12><return>, and the missing font will be loaded into Style.
  6614. 8.3
  6615. Problems really only occur when you load someone elseæs document with
  6616. fonts which you donæt have. In this case, it would be nice if Impression
  6617. gave the option to choose the replacement font. You could then use
  6618. something really noticeable like Dingbats, so that it would be easy to
  6619. locate the style or effect that needed changing. áJochen Konietzko,
  6620. K÷ln, Germany.
  6621. 8.3
  6622. Å  NoCaps IIáÖáAfter the hint in Archive 8.1 regarding disabling the
  6623. capslock key I had a request for a version that would respond normally
  6624. to capslock, but turn it off when shift was pressed. This could be
  6625. useful for things like postcodes, where it is easier to turn capslock on
  6626. than to get confused about when you need to press <shift>. Rather than
  6627. adding this functionality to the original module, I generated a new
  6628. version, which is more economical on space than having both in one, and
  6629. you are only likely to use one or the other. The two modules are on this
  6630. monthæs disc as NoCaps (disable capslock as before) and SNoCaps (shift
  6631. disable capslock).á Matthew Hunter, NCS.
  6632. 8.3
  6633. Å  Powersave & librariesáÖáSeveral people have expressed interest in the
  6634. powersave program from issue 8.1 of Archive, but have had difficulty
  6635. incorporating it into their !Boot sequence. I will therefore describe
  6636. how to install it. (The methods apply equally to other command line
  6637. programs you may wish to run Ö just replace powersave in the description
  6638. below with the program you wish to install.)
  6639. 8.3
  6640. There are three basic ways around this problem. The first thing to do
  6641. (whichever method you use) is to find your boot file. If your machine
  6642. has RISC OS 3.11 or earlier, the boot file will be in the root directory
  6643. of your hard disc (unless you have moved it). On the Risc PC you will
  6644. have to hold down shift (to open application directories) and double-
  6645. click on !Boot, Choices, Boot, Tasks, in that order, as you go down the
  6646. directory structure (clicking with <adjust> each time will close the
  6647. previous filer window Ö useful in this situation). Once you have located
  6648. your boot file (called É!Bootæ) hold shift and double-click on it to
  6649. load it into !Edit. Find where in the boot sequence you wish to run the
  6650. program and insert a blank line. Make sure the cursor is at the start of
  6651. the blank line, ready for the command that will execute the desired
  6652. program.
  6653. 8.3
  6654. Probably the easiest method is to use an absolute reference. Copy
  6655. powersave somewhere Ésafeæ and preferably out of the way so that it does
  6656. not clutter the hard disc. Type öRUN ò and then hold down <shift> and
  6657. drag the Épowersaveæ icon, from where you put it, into the text window
  6658. containing the boot file set up above. When you release <select>, you
  6659. should see the full pathname appear in the text file following the run
  6660. command. You can then set up the parameters as described below.
  6661. 8.3
  6662. The second possibility is to set aside a special directory where you
  6663. keep all your command line programs. Fortunately, Acorn provide such a
  6664. system, the Library directory, which on pre-Risc PC machines is, by
  6665. default, a directory called ÉLibraryæ in the root of your hard disc. On
  6666. the Risc PC, there is a directory inside the !Boot application, also
  6667. called ÉLibraryæ. Open the appropriate Library directory and copy
  6668. powersave into it. You can then type Épowersaveæ into the blank line in
  6669. the boot file ready for the parameters to follow.
  6670. 8.3
  6671. This is fine except that it relies on default settings, and puts
  6672. programs into Library that you only use very rarely. The method I use
  6673. therefore is to put the programs, and utility applications that I load
  6674. only during the boot sequence (backdrop picker, configuration tester,
  6675. for example), into a directory, say ÉBootLibæ. I then have a line in my
  6676. Boot file Éset BootLib$Path full::pathname.$.for.BootLib.æ as
  6677. appropriate for the location of the BootLib directory. Again, this can
  6678. be found by Shift-dragging BootLib into the text editor, but note that,
  6679. to be successful, the path must end with a full stop. I can then run any
  6680. program in Bootlib with the command ÉBootLib:prognameæ. This is longer
  6681. for a single program, but I only have to set bootlib once, and then
  6682. reference it several times. I have an absolute reference, so the default
  6683. settings do not affect it, and the library directory is kept for
  6684. frequently used programs. It is also far simpler to move the directory Ö
  6685. if you use the first method, you have to re-enter the full pathname for
  6686. every program that has moved. If I move BootLib, however, I only have to
  6687. change the line where BootLib is set, and all the programs will work as
  6688. before.
  6689. 8.3
  6690. Once you have got the program ready to run by one of the three methods
  6691. above, all you need to do is to add any parameters to the end of the
  6692. line as appropriate for the program. In the case of powersave, an
  6693. example would be Édelay 4 120æ for a two minute inactivity delay before
  6694. spinning down the drive. Do not use Éspindownæ in your boot sequence.
  6695. Doing so will force the drive to spindown part way through the boot, and
  6696. immediately spin back up again, causing unnecessary strain.á Matthew
  6697. Hunter.
  6698. 8.3
  6699. Å  Publisher: editing effectsáÖáIt is possible to edit effects as if
  6700. they were styles and even then to turn them from effects into styles. If
  6701. you look inside !Publisher, in the Resources directory is a file called
  6702. UK. In it is a line: öCnf1:ò and if you change this to read öCnf1:Eò and
  6703. re-save it, then from the next time you load Publisher, you will find
  6704. that effects become editable just as if they were styles.
  6705. 8.3
  6706. This partially solved a problem caused by the change to Publisher.
  6707. 8.3
  6708. With Impression II, when articles came in that had bits in bold, I would
  6709. just put them into the magazine and the öboldò bits would come out as
  6710. Plantin.Semibold. (I prefer to use Plantin.Bold because the body text is
  6711. Plantin.Light and the full bold face, although OK for headings, looks
  6712. too dark within the body of the text.) This worked because, prior to
  6713. Style and Publisher, anything using the bold effect was given the name
  6714. öboldò and, in the magazine, the öboldò style was defined as using
  6715. Plantin.Semibold.
  6716. 8.3
  6717. However, if contributors us <ctrl-B> for bold, when I load it into the
  6718. magazine, it forces the text into Plantin.Bold. At first, I had to edit
  6719. öby handò every single occurrence of the bold effect, changing it into
  6720. my bold style! The way I now get round it is to go to the incoming file,
  6721. click on a piece of öboldò text and press <ctrl-f6> to edit the style.
  6722. The effect then appears in the style editing window as something like
  6723. öEffect17ò, or whatever. All I have to do then is to change this name to
  6724. öBoldò and this then becomes a style rather than an effect and, when
  6725. loaded into the magazine, it automatically assumes my Plantin.Semibold
  6726. style.á Ed.
  6727. 8.3
  6728. Å  Publisher: finding styles and effectsáÖáIf you are given a document
  6729. that contains a huge range of effects and styles, as I often am, it is
  6730. good to simplify it before pasting it into another document. (You would
  6731. be amazed at the complex combinations of styles and effects people use
  6732. in their documents!!) You have the choice of a quick <ctrl-A><ctrl-N> to
  6733. remove all styles and effects and then re-insert the styles you really
  6734. want or of leaving in some styles and removing others. But how do you
  6735. know which style/effect does what? Well, styles are easy because you can
  6736. use search and replace to find them. The menu button next to the öFind
  6737. what:ò box allows you to enter the name of a style. Then add an ö@ò and
  6738. it will find the first occurrence of anything in that style.
  6739. 8.3
  6740. Finding effects is more tortuous and can only be achieved if you have
  6741. used the Cnf1:E trick mentioned above. So, if you press <ctrl-A> and
  6742. look across on the Style menu, you will see a list of ticked styles and
  6743. effects. Suppose you decide you want to find what and where öEffect 598ò
  6744. is. The trick is that you double-click on a word and use the Style menu
  6745. option to apply Effect 598 to it. Pressing <ctrl-f6> will then bring up
  6746. Effect 598 on the Edit style window. Click on öShow on style menuò and
  6747. OK it. Now you can go to the top of the document and use <f4> to find
  6748. that effect as it will now appear on the find style menu. The only bit
  6749. of really bad planning here is that, if you want to look at each of the
  6750. occurrences of this effect and get rid of some of them, you cannot use
  6751. <ctrl-N> to remove the effect because <ctrl-N> is taken to mean önext
  6752. matchò when you are searching! Drat! Keystroke to the rescue again. I
  6753. have programmed <alt-N> to give me the menu selection, Style Ö Clear all
  6754. styles. Ed.
  6755. 8.3
  6756. Å  Screenload on the Risc PCáÖáIt has been pointed out that the
  6757. *screenload command appears to work differently on the Risc PC from
  6758. previous machines, in that it no longer loads into the current graphics
  6759. window but loads at the bottom left corner of the screen instead. In
  6760. fact the operation has not changed, but is modified by the new mode
  6761. system. A screenload will load the sprite to the screen, changing mode
  6762. if necessary, and it is the mode change that causes the problems. For
  6763. example, if, while in mode 31, you screenload a sprite, defined in mode
  6764. 27, the computer will change to mode 27 first. Changing mode redefines
  6765. the graphics window, so you will find that (on any machine) the result
  6766. of the following program will be to place the sprite in the bottom left
  6767. hand corner of the screen (assuming there is a sprite called Étestæ,
  6768. defined in mode 27 in the currently selected directory).
  6769. 8.3
  6770. MODE 31
  6771. 8.3
  6772. VDU 24;100;100;600;600;
  6773. 8.3
  6774. *SCREENLOAD test
  6775. 8.3
  6776. This is because the graphics window set by the VDU 24 is reset by the
  6777. mode change implied in the *screenload. Adding the lines.
  6778. 8.3
  6779. VDU 24;200;200;600;600;
  6780. 8.3
  6781. *SCREENLOAD test
  6782. 8.3
  6783. to the end of the program will successfully move the sprite to 200,200
  6784. before plotting... except on the Risc PC. This occurs because the mode
  6785. is already set to 27, so the mode is not changed, and the graphics
  6786. window remains intact. The problem with the Risc PC is that when the
  6787. machine tries to change into mode 27 (after the first screenload) it
  6788. ends up as a 640 by 480, 16 colours, 60Hz mode. Therefore, although the
  6789. sprite is loaded, the machine is not actually in mode 27, so the next
  6790. screenload also tries to change to mode 27, resetting the graphics
  6791. window again. Unfortunately changing the mode in which a sprite is
  6792. defined is does not cure the problem. If you need to move the sprite
  6793. away from the bottom left corner, you will need to use sprite calls to
  6794. load and plot the sprite yourself.á Matthew Hunter, NCS.
  6795. 8.3
  6796. Å  Style file sizeáÖáThe Impression Style manual says that: öDeleting
  6797. unused master pages does not make the document significantly smallerò
  6798. (page 180) and öSingle file format has the advantage that files are
  6799. smaller. This is useful for short documents such as lettersò (page 17).
  6800. However, there is no comment on the merits of deleting unused styles, so
  6801. I thought I would check it out.
  6802. 8.3
  6803. Taking a two page letter built on a letter master page and with a sprite
  6804. picture (25,240 bytes), I have tested these statements out. The Info Box
  6805. gave:
  6806. 8.3
  6807. Document  Pages: 2  Size: 171Kb
  6808. 8.3
  6809. Text  Stories: 19  Memory: 6Kb
  6810. 8.3
  6811.   Chapters: 1  Words: 452
  6812. 8.3
  6813. Graphics  Pictures: 5  Memory: 147Kb
  6814. 8.3
  6815. When saved, the document took up 175,912 bytes (single file) or 176,543
  6816. bytes (directory)
  6817. 8.3
  6818. The reason for the massive size is that I had four master pages for
  6819. different letter-type documents, each with the logo graphic. So, after
  6820. removing three unused master pages, the document took up: 42,792 (single
  6821. file) or 44,367 (directory).
  6822. 8.3
  6823. The document had fifteen other unused master pages which took up between
  6824. 188 and 1,216 bytes each Ö when all were removed, the document shrank
  6825. to: 35,316 (single file) or 36,851 (directory).
  6826. 8.3
  6827. If I saved the text only, with no style information, it only occupied
  6828. 2,332 bytes.
  6829. 8.3
  6830. As I already have the picture stored elsewhere, I only need to keep the
  6831. text and that does not need any style or frame information and so my
  6832. final storage needs will not be 176Kb but about 2Kb which can then be
  6833. very effectively archived.
  6834. 8.3
  6835. What I have learnt from this: (1) save all writing as text files if
  6836. possible, (2) redundant styles do not take up a large amount of space
  6837. and there is no benefit in removing them for storage reasons and (3) be
  6838. careful how many times you save graphics, especially in dormant master
  6839. pages!
  6840. 8.3
  6841. I will now remove many of the master pages from my default document and
  6842. save them in separate documents (or in useful groups as I donæt think
  6843. you can merge master pages into one document!) for when I need them.
  6844. This will also have the knock-on effect of having smaller initial
  6845. documents in memory which will load more quickly! áRobert Lytton,
  6846. Leeds.ááAá
  6847. Hints and Tips
  6848. 8.2
  6849. Å  A3000 bulging case Ö My early A3000 had, from the start, a standard
  6850. Acorn monitor stand upon which was a AKF17 monitor. Of late, I found the
  6851. upper case section, on the left hand side by the power supply, had
  6852. started to bulge out from the bottom section. This was caused by the
  6853. weight of the monitor supported by the Acorn stand only on the extreme
  6854. edges of the case.
  6855. 8.2
  6856. In my job as IT Technician at school, I had noticed (having removed
  6857. countless covers for various reasons) there have been two upgrades to
  6858. the cases, and one of the upgrades had special strengthening and
  6859. interlocking around this area, no doubt with this in mind. The latest,
  6860. Mk 3 version is available as an Acorn spare part. The base of the new
  6861. case requires a lot of work in removing the PCB and any upgrades, and
  6862. the power supply design has changed making the changeover awkward.
  6863. However the new case lid will fit onto the old base and this alone
  6864. offers enough strength to cure the problem.á K R Coton, Solihull.
  6865. 8.2
  6866. Å  Disabling POST test (and other useful Ébitsæ) Ö One of our customers
  6867. found that because the POST (Power On Self Test, or the software that
  6868. makes the screen flash pretty colours at switch on and flashes the
  6869. floppy light at you when things go wrong), had been partly disabled,
  6870. meaning that his SCSI drive was not given sufficient time to get ready
  6871. before the SCSI card demanded its attention. Some people may have
  6872. disabled this after installing certain versions of the VIDC enhancer.
  6873. The POST will always be reactivated by a delete-power on, but there is a
  6874. more subtle way of switching it on or off. Byte 188 (&BC) of the CMOS
  6875. RAM contains 8 bits which affect various miscellaneous configuration
  6876. options.
  6877. 8.2
  6878.   Bits 0-1  ROMFS Opt 4 state
  6879. 8.2
  6880.   Bit 2  cache icon enable state
  6881. 8.2
  6882.   Bit 3-5  screen blanker time: 0=off, 1=30s, 2=1min, 3=2min, 4=5min,
  6883. 5=10min, 6=15min, 7=30min.
  6884. 8.2
  6885.   Bit 6  screen blanker/Wrch interaction: 0=ignore Wrch,
  6886. 8.2
  6887.     1=Wrch unblanks screen
  6888. 8.2
  6889.   Bit 7  hardware (POST) test disable: 0=full tests, 1=disable long
  6890. tests at power-up.
  6891. 8.2
  6892. RISC OS 3 PRM, 1-358, Acorn Computers Ltd.
  6893. 8.2
  6894. The program disc contains a simple program for altering the state of any
  6895. of these bits.á David Webb, NCS.
  6896. 8.2
  6897. Å  Inkjet printers and paper quality Ö A number of items have appeared
  6898. here and elsewhere on how to realise to the full the potential quality
  6899. of printouts with ink-jet printers. At 300 dpi, one would think it ought
  6900. to be indistinguishable from the output from a laser printer with the
  6901. same resolution.
  6902. 8.2
  6903. Why is there a problem? All papers are made from fibres, matted
  6904. together; thus, if you put a drop of liquid onto a piece of paper, the
  6905. fluid will flow between these fibres, carrying with it any dye or
  6906. colourant: hence the fuzzy edges of the output from inkjet printers with
  6907. unsuitable papers. Coating the paper can eliminate the problem, but at a
  6908. substantial cost. However, with careful design of the paper making
  6909. process, it is possible to minimise (though not eliminate) this
  6910. Ébleedingæ.
  6911. 8.2
  6912. I wrote to Hewlett Packard and asked for their recommendations They came
  6913. up with two types of paper and their suppliers. I got some samples, and
  6914. both were very good but, by a small margin, ÉVersoix Copyæ seemed to me
  6915. the better (and cheaper). The other, ÉReyjetæ, is close behind and both
  6916. are streets ahead of most ordinary photocopier paper. Neither is very
  6917. expensive (about ú3.00 per ream for Vesiox and ú5.50 for Reyjet) but
  6918. neither are very readily available. If you write to the distributors,
  6919. they will send you samples and the name of your nearest stockist.
  6920. 8.2
  6921. Versoix Copy Ö Darent Paper Agencies, Wandle House, Riverside Drive,
  6922. Mitcham, Surrey, CR4 4SU. (0181-640-4102)
  6923. 8.2
  6924. Reyjet Ö Denian Paper Ltd, Unit D2, West Mill, Imperial Business Estate.
  6925. Gravesend, Kent, DA11 0DL. (01474-569919)á Barry Humpidge.
  6926. 8.2
  6927. Å  Irregular text frames in Publisher Ö In response to one of Keith
  6928. Parkeræs wish-it-did-that moans in the Comment Column (8.1 p31), I would
  6929. suggest that whilst irregular text frames would be nice, the use of a
  6930. regular frame öframedò by a couple of repelling irregular graphics
  6931. frames (drag an empty drawfile into blank frames) does the job, with a
  6932. little fiddling. áJohn McCartney.
  6933. 8.2
  6934. Å  Large banners in Impression Ö To create a six foot long banner, or
  6935. similar, using Impression, create a new master page, öBannerò, width
  6936. 72ö, depth 8ò, Landscape, margins 0.5 with one column. Quit the master
  6937. pages and alter the chapter of the document, selecting öBannerò as the
  6938. master page. Change the font size to around 400 point and centre the
  6939. text. Type the banner message. Print out on tractor fed continuous paper
  6940. (sideways!). Vector offers some useful banners ready made, or you can
  6941. use Impressionæs Borders in ÉAlter Frameæ, to enhance the finished
  6942. article.á Irene Quinn, Thetford, Norfolk.
  6943. 8.2
  6944. Å  Laser Direct on the Risc PC Ö If you are upgrading to a Risc PC and
  6945. have an elderly Laser Direct card, it will not work if it is öIssue oneò
  6946. (the computer will not initialise after the board has been plugged into
  6947. one of the expansion slots). This type can be quickly identified by the
  6948. fact that it is the only version where there is a ribbon cable
  6949. connecting the circuit board to the printer output socket. Computer
  6950. Concepts will exchange this type of board for the latest version for
  6951. ú100. You will probably also need a copy of the most recent version
  6952. (2.63) of the printer driver disc at ú10.á David Smith, Edinburgh.
  6953. 8.2
  6954. Å  More Sleuths on the case Ö If you are lucky enough to have lots of
  6955. memory on your machine you can run two or more copies of Sleuth at the
  6956. same time, so that if you are OCRing several pages of text, the rate of
  6957. OCRing can be considerably increased. On a simple test run, two copies
  6958. running saved 36% on the time taken and three copies saved nearly 50% on
  6959. the time! It then occurred to me that using more than one copy might be
  6960. infringing the software licence, but on checking with Risc Developments,
  6961. I was assured that this was not the case. áPhilip Foster, Cambridge.
  6962. 8.2
  6963. Å  Turbo charging draft printing with a Deskjet printer Ö What I didnæt
  6964. realise, until I tried it by accident, was that the ÉDraftæ button on
  6965. the printer worked with graphic (e.g. output from Impression), as well
  6966. as Éstraightæ printing. Thus, with your printer driver set to 150ádpi,
  6967. and the Édraftæ light on, you can produce readable copies for proof
  6968. reading in virtually no time at all!á Barry Humpidge.
  6969. 8.2
  6970. Å  Turbo Driver v4 and Dongles Ö If you are using CCæs Turbo Driver v4
  6971. on a computer with a bi-directional parallel port, via a dongle, the
  6972. status signals donæt get through. This includes signals, such as öpaper
  6973. outò and öprinter offlineò etc. If the driver software is looking for
  6974. these signals you may find that printing is blocked. To bypass the
  6975. problem call up the configuration dialogue box and configure to ignore
  6976. status signals.á Nick Harris, Norwich.ááAá
  6977. 8.2
  6978. Hints and Tips
  6979. 8.1
  6980. Å  Disabling capslockáÖáIt has been pointed out that the capslock key is
  6981. not used very often, and usually only causes confusion when you hit it
  6982. accidentally. (This is a polite way of saying that there had been
  6983. another emission of blue smoke from the Editoræs desk as I HAD JUST HIT
  6984. <CAPSLOCK> ACCIDENTALLY AGAIN!!! Ed.)
  6985. 8.1
  6986. To solve this problem, a short module was written to disable the
  6987. capslock key. When the module is loaded, the key will act as a Caps key,
  6988. but will not lock, i.e. it acts like a shift key but only affects
  6989. letters Ö the numbers and symbols are unchanged. If you need to re-
  6990. enable the capslock function, press <f12> and type *rmkill disablecaps.
  6991. 8.1
  6992. The module, which works on all Archimedes and RiscáPC machines, is on
  6993. the monthly program disc.á Matthew Hunter, NCS.
  6994. 8.1
  6995. Peace has now been restored in the Editoræs office! As far as Iæm
  6996. concerned, this module is the best thing since sliced bread. Thanks,
  6997. Matthew!!á Ed.
  6998. 8.1
  6999. Å  RiscáPC hard disc power-saving ù Since the advent of RISC OS 3, there
  7000. has been an option in the IDEDiscs section of Configure for setting the
  7001. spin down delay on the hard drive Ö similar to the screen blanker. This
  7002. is almost always greyed out, preventing it from being used, the
  7003. exceptions being the A4 portable and some A3020s. (Some third party
  7004. interfaces also support the option, but this hint does not apply to
  7005. them.) This makes sense since, with portables, the battery life needs to
  7006. be preserved. This is less important on a desktop machine and, also,
  7007. there is some question as to the long term effects of spinning the drive
  7008. up and down more than necessary.
  7009. 8.1
  7010. It is possible, however, to control the drive in this way even if you
  7011. have a different machine, providing that the drive supports the
  7012. powersave IDE commands. On the monthly program disc is a command line
  7013. program öpowersaveò. Double click on ö!SetDirò which will make sure you
  7014. are in the correct directory, press <f12> and type öpowersave 4ò
  7015. <return>. This will give you the list of options and the current spin
  7016. status for drive 4 (which will be meaningless if you are not using ADFS
  7017. to control the drive). There are three control options detailed below.
  7018. 8.1
  7019. öpowersave spindown <drivenumber>ò will spin down drive <drivenumber> (4
  7020. or 5) immediately. If the drive is not spinning and you try to access
  7021. it, there will be a pause while the drive is spun up before the access
  7022. takes place (occasionally you can open a directory without spinning up
  7023. the drive since it is cached in memory and the drive is never accessed).
  7024. 8.1
  7025. öpowersave spinup <drivenumber>ò will spin up drive <drivenumber> (4 or
  7026. 5) immediately.
  7027. 8.1
  7028. öpowersave delay <drivenumber> <delay>ò will set the power-saving delay
  7029. for drive <drive number> to <delay> seconds Ö note that it is rounded
  7030. down to 5-second accuracy but the timing is not particularly accurate
  7031. anyway. This will not be configured, so if you want to use this feature,
  7032. you will need to run powersave during the boot sequence. It is worth
  7033. making the delay longer rather than shorter since continually spinning
  7034. your drive up and down could reduce your driveæs life expectancy ù you
  7035. do this at your own risk.
  7036. 8.1
  7037. One area where this does have a major impact is on the Risc PC Ö most of
  7038. the noise comes not from the fan but from the hard drive, so if you spin
  7039. down the drive, you can hardly hear the machine at all.á Matthew Hunter,
  7040. NCS.
  7041. 8.1
  7042. Å  Splitting Impression documents over several floppy discs Ö Over the
  7043. past six months, I have spent a lot of time working with Tony Tolver of
  7044. T-J Reproductions and one thing that always amazed me was the number of
  7045. methods used by people to split an Impression document over two or more
  7046. discs Ö after all, how do you get a quart (or 10Mb) into a pint pot (or
  7047. 800Kb/1.6Mb)?
  7048. 8.1
  7049. The methods I have seen include: PacDir, ArcFS, CFS, Squash and breaking
  7050. down the document and moving the contents of Chapter2 onto further discs
  7051. and then compressing them all.
  7052. 8.1
  7053. All of these are relatively time-consuming, particularly the last one. I
  7054. was sure there ought to be a better way and then I found it by accident
  7055. after upgrading to Hard Disc Companion v2.50 from Risc Developments. I
  7056. read the manual and found that it was easy to back up just one file or
  7057. directory, so here is an easy way for you and for the recipient of your
  7058. file to split Impression documents.
  7059. 8.1
  7060. 1  Install Hard Disc Companion on your iconbar in the usual way.
  7061. 8.1
  7062. 2  Single click on the icon which opens a window.
  7063. 8.1
  7064. 3  Click <menu> and choose Destination, Floppy0 and 800K or 1.6M as
  7065. appropriate.
  7066. 8.1
  7067. 4  Under Preferences, you can select how you wish to make the backup,
  7068. i.e. Very Quickly but with no compression or relatively slowly but with
  7069. maximum compression. The choice is yours.
  7070. 8.1
  7071. 5  Under Files, choose Backup and a window opens onto which you drag
  7072. your Impression document.
  7073. 8.1
  7074. 6  Finally, click on Start on the main window and simply follow the on-
  7075. screen prompts.
  7076. 8.1
  7077. 7  Send your file to the destination address.
  7078. 8.1
  7079. Upon receipt, all that needs to be done is to insert the last disc (so
  7080. it helps if you label them, 1,2. . . etc) and open the window. Two files
  7081. are seen: !Restore and Data. Double click on !Restore to install it on
  7082. the iconbar and drag Data over the icon. Click again on Restore and a
  7083. new window opens. Simply drag the icon to a new directory or the root
  7084. and follow the on-screen prompts. The document will be fully rebuilt on
  7085. the recipientæs computer.
  7086. 8.1
  7087. It may interest you to know that I created a dummy Impression document
  7088. to test this. It was 20Mb long and I used Hard Disc Companion v2.50 to
  7089. split onto six 800Kb floppies at maximum compression Ö it worked
  7090. faultlessly.
  7091. 8.1
  7092. Hard Disc Companion v2.50 costs ú45 +p&p +VAT from Risc Developments or
  7093. ú52 from NCS.á Keith Parker, Southall.ááAá
  7094. 8.1
  7095. With Risc Developments going into liquidation, we arenæt sure about the
  7096. availability of Hard Disc Companion but, presumably, Beebug Ltd will be
  7097. taking it over.á Ed.
  7098. 8.1
  7099. Hints and tips (from Multimedia Column)
  7100. 7.12
  7101. Å  Genesis Professional Ö One reader wrote to complain that he was
  7102. getting repeated crashes when trying to replicate frames. I must admit,
  7103. I was unaware of the problem, so I went back and tested it out. The gist
  7104. of it is this: if you open a blank page and pull out a frame and then
  7105. replicate it, the program crashes. Now when you first pull out a frame,
  7106. by default it is a WORD frame, and if you try and replicate it the crash
  7107. occurs as Genesis will not allow you to replicate this type of frame.
  7108. The cure is simple, just convert the WORD frame into a TEXT frame by
  7109. clicking in the frame itself, then you can copy it as many times as you
  7110. like.
  7111. 7.12
  7112. Å  Magpie Ö Some months ago, I issued a challenge to Magpie users about
  7113. making a scrolling binder with continuous music. I got no replies to
  7114. this challenge, but my solution was a bit of a cheat. Using my CD-ROM, I
  7115. set up an audio CD running and then loaded in the Magpie scrolling demo
  7116. which had no sound effects! Iæm sure there is a better solution so I
  7117. will keep the prizes until someone comes up with a better one!
  7118. 7.12
  7119. Hints and Tips
  7120. 7.12
  7121. Å  Boot structure on the Risc PC Ö How many of you have got to grips
  7122. with the Boot application on the Risc PC? Itæs a little bit messy on
  7123. first glance Ö and even on second and all subsequent glances! However,
  7124. it is also very powerful and practical. The following is brief guide to
  7125. its contents and what they are used for and goes a little beyond the
  7126. discussion in chapter 11 of the User Guide.
  7127. 7.12
  7128. As many of you have discovered, the !Boot application simply runs the
  7129. configure utility, enabling you to select various hardware and desktop
  7130. options. It has also done an awful lot of work by the time you get to
  7131. the desktop, setting up system variables, configuring your preferences
  7132. and booting and running several applications, modules and obey files.
  7133. Those of you with stronger stomachs may have shift-double-clicked on it
  7134. and will have been faced with a bewildering array of nested directories
  7135. and files, many of which are named !Boot or Boot, !Configure or
  7136. Configure, and all of these are sufficiently dotted with references to
  7137. each other to ensure that all who enter are reduced to quivering
  7138. technophobes.
  7139. 7.12
  7140. Please note that if you are going to make changes to the insides of
  7141. !Boot, you would be wise to take a copy of it first. If you do find that
  7142. the contents of !Boot.Choices.Boot are irretrievably messy, you can run
  7143. the application !ResetBoot in $.Diversions.Tools which will restore
  7144. !Boot to its factory settings. Also, I would recommend keeping a copy of
  7145. the RISC OS applications contained in $.Apps if you intend to make any
  7146. changes to them Ö as you do not get a copy of them on floppy disc, as
  7147. you did with previous versions of RISC OS.
  7148. 7.12
  7149. Apart from the usual application baggage of !Run, !Boot, !Sprites and
  7150. !Help, there are two directories that are of interest (Resources and
  7151. Choices) and two that arenæt (Library and Utils.)
  7152. 7.12
  7153. Resources contains the applications that RISC OS needs, but which
  7154. neednæt concern the user most of the time, these being !System, !Scrap
  7155. and !Fonts. The !Configure application that gets run automatically by
  7156. !Boot is also here.
  7157. 7.12
  7158. Choices contains nothing but a directory called Boot and it is here that
  7159. the interesting stuff resides.
  7160. 7.12
  7161. The obey file PreDesktop gets run first and sets up aliases and system
  7162. variables. Its most interesting job is to control which applications
  7163. appear when the Apps icon on the iconbar is clicked. In the following
  7164. discussion, ÉAppsæ refers to the directory viewer opened by clicking on
  7165. the ÉAppsæ icon on the icon bar, whilst É$.Appsæ refers to the directory
  7166. called ÉAppsæ in the root of the hard disc. As you will see, they are
  7167. not the same.
  7168. 7.12
  7169. By default the contents of $.Apps all appear in the Apps resource. The
  7170. easiest way to have one of your own applications accessible through Apps
  7171. icon is to copy it into $.Apps. Note that any applications deleted or
  7172. moved from $.Apps will no longer appear in Apps after a reset, and
  7173. cannot be retrieved. Apps only contains a Éfacadeæ for the real
  7174. applications which are stored elsewhere. If you have a whole suite of
  7175. applications you would like to appear in Apps, and you donæt want them
  7176. messed up with the contents of $.Apps, you can ask PreDesktop to add
  7177. them from any other directory. Near the end of the file PreDesktop is
  7178. the line
  7179. 7.12
  7180. AddApp Boot:^.Apps.!*
  7181. 7.12
  7182. which will place any application in $.Apps into the Apps. If you want to
  7183. add to this a single application stored elsewhere, you can add a line
  7184. something like
  7185. 7.12
  7186. AddApp Boot:^.MyApps.Impression.!Style
  7187. 7.12
  7188. or to add all the applications in a given directory add a line like
  7189. 7.12
  7190. AddApp Boot:^.MyApps.UsefulApps.!*
  7191. 7.12
  7192. The directory PreDesk contains things which need to be run before the
  7193. desktop starts. This is intended for use by applications which need
  7194. software, modules or drivers in place prior to the desktop but you may
  7195. find you are required to place things there manually when installing
  7196. certain new hardware and software products.
  7197. 7.12
  7198. The file Desktop is where the !Boot system filer_boots anything that may
  7199. be needed by the operating system, and some of the essentials for the
  7200. user. Desktop also causes any applications or obey files contained in
  7201. the directory Tasks to be run. Inside Tasks is where applications may
  7202. place files they want to be run within the desktop but before the user
  7203. gets started. It already contains !ROMPatch and a file called Configure.
  7204. If you create a Desktop Boot file from the task manager icon, this is
  7205. where it is saved (see page 139 in the User Guide). You can also store
  7206. your own goodies here. For instance, if you are using an IDE 105Mb
  7207. removable drive in your Risc PC, you may want to place the !SyQuest
  7208. Application in the Tasks directory so that it is always present on the
  7209. iconbar when you start.
  7210. 7.12
  7211. There is a drawback with placing applications in Tasks that install
  7212. themselves on the icon bar. If you choose to create a desktop boot file,
  7213. you may find you get a duplicate copy of your favourite application next
  7214. time you reset the computer. The best way is to try it and see. !Syquest
  7215. doesnæt suffer from this problem.
  7216. 7.12
  7217. You may have tried putting your best backdrop on the pinboard and saving
  7218. the desktop to have it appear every time you use your Risc PC, only to
  7219. find that RISC OS has decided to put one of its bland wallpapers up in
  7220. its place. This is because the ...Tasks.!Boot file containing the state
  7221. of the desktop (and therefore your pretty picture) gets run before the
  7222. file Configure (simply because the files are run alphabetically). Then
  7223. the Configure file simply pastes up the textured background choices you
  7224. make from the !Configure utility and thus overwrites your true
  7225. preference for a backdrop. You can overcome this either by running
  7226. !Configure (by double-clicking on the !Boot application), selecting
  7227. Énoneæ for background texture in the Éscreenæ options and clicking on
  7228. the Ésetæ icon. You could try renaming either !Boot or Configure, so
  7229. that they swap positions, but this is not the way to do it because
  7230. changing either the desktop boot, or running !Configure, will create the
  7231. same problem again.á David Webb, NCS.
  7232. 7.12
  7233. Å  Changing ChangeFSI Ö It is possible to modify !ChangeFSI v0.95 to
  7234. enable non-Risc PC owners to create high/true colour sprites.
  7235. 7.12
  7236. !ChangeFSI v0.95 allows Risc PC owners to create 16bpp (32,000) or 32bpp
  7237. (16,000,000) sprites, but it will not work on non-Risc PC machines Ö an
  7238. error message comes up if you try and create one! However, a little
  7239. modification of the !ChangeFSI Basic file gets over this problem.
  7240. 7.12
  7241. Open up the !ChangeFSI application and look for a blue Basic file called
  7242. ChangeFSI. Load this file into !Edit and 21 lines down you will see a
  7243. line:
  7244. 7.12
  7245. SYS öOS_SWINumberFromStringò,, öOS_SpriteOpò TO spop%
  7246. 7.12
  7247. insert an ÉXæ at the start of the öOS_Spriteopò word so that it reads:
  7248. 7.12
  7249. SYS öOS_SWINumberFromStringò,, öXOS_SpriteOpò TO spop%
  7250. 7.12
  7251. and 531 lines down (you may wish to use !Editæs F5 key short cut here!)
  7252. you will see:
  7253. 7.12
  7254. SYSöWimp_ReadPixTransò,&100,sar%,n$,,,, ifactors%,pixtrans%
  7255. 7.12
  7256. insert a ÉXæ at the start of the öWimp_Read...ò word so that it reads:
  7257. 7.12
  7258. SYSöXWimp_ReadPixTransò,&100,sar%,n$,,,, ifactors%,pixtrans%
  7259. 7.12
  7260. Resave the file!
  7261. 7.12
  7262. Now when you enter a 32,000 colour display mode (or set !ChangeFSIæs
  7263. output option) and drag a suitable JPEG/TIFF, etc image to !ChangeFSI,
  7264. the error will not occur, but a seemingly Éblankæ white window will
  7265. appear. The image is really there Ö it just canæt be seen! Save this
  7266. Éblankæ image and you will have created your very own high-colour
  7267. sprite!á Stuart Halliday, Quantum Software.
  7268. 7.12
  7269. Å  Replacement miceáÖáWith the Acorn mouse costing ú40* and both the
  7270. Clares and Watford mice costing ú30, the survival of our school mice has
  7271. been of some concern to me. The oldest mice for the A310s have caused
  7272. most problems as they have weak leads and a little stretching breaks the
  7273. wires inside the cable. They also go out of adjustment causing the
  7274. pointer to stall or go off in the wrong direction. The A3000 mice have
  7275. far fewer problems but, after a lot of use, they too can have cable
  7276. breaks and one has failed electronically. So far, the A3020 type have
  7277. not failed Ö but perhaps they have not been in use long enough.
  7278. 7.12
  7279. (*We still have a few cut-price Acorn mice at ú20. Ed.)
  7280. 7.12
  7281. Repairing mice myself was a time-consuming business and replacement
  7282. leads were costly too; one from Archive is ú11 or ú13 depending on the
  7283. mouse-type. I have used a company called CSL to repair all the A310
  7284. mice. They are reliable and quick and have a fixed charge of ú15 plus
  7285. VAT, which includes a new cable. This is strong and thick and definitely
  7286. child-proof, if a bit clumsy. Meanwhile, I have kept my eyes open for a
  7287. cheap replacement. There are numerous compatible Atari and Amiga mice,
  7288. usually selling for about ú10 at shows, but they only have two buttons.
  7289. Similarly, there are PC mice at a slightly higher price, but the 3-
  7290. button variety are for the serial port.
  7291. 7.12
  7292. Thankfully, the latest Maplin catalogue has a cheap 3-button Amiga
  7293. mouse. A little investigation worked out the connections and then a bit
  7294. of delicate soldering to a 9-pin miniature DIN plug, also from Maplin,
  7295. produced a fully working replacement. The mouse is neat and fits well in
  7296. the hand. It has a coated steel ball and membrane switches rather than
  7297. microswitches. These could be replaced, but the feel is good anyway. A
  7298. possible bonus is that the sensitivity is about twice that of the Acorn
  7299. mouse, i.e. it moves twice as far on screen for a given movement across
  7300. the mat.
  7301. 7.12
  7302. For anyone who needs a replacement, I can recommend this route if you
  7303. are a competent solderer with a fine iron. The connections and parts are
  7304. shown below. Although the wire colours in my mouse were in a convenient
  7305. resistor-code order, you should confirm this before soldering.
  7306. 7.12
  7307. Parts from Maplin Electronics:
  7308. 7.12
  7309. RT51F Ö Amiga Mouse Ö ú10.95
  7310. 7.12
  7311. JX19V Ö Min DIN Line Plug 9W Ö 98p.
  7312. 7.12
  7313. (Prices are inc VAT.)
  7314. 7.12
  7315. Mouse plug connections
  7316. 7.12
  7317.   Pin  Function  Colour
  7318. 7.12
  7319.   9  menu  white
  7320. 7.12
  7321.   8  adjust  grey
  7322. 7.12
  7323.   7  select  black
  7324. 7.12
  7325.   6  yb  blue
  7326. 7.12
  7327.   5  ya  green
  7328. 7.12
  7329.   4  xa  yellow
  7330. 7.12
  7331.   3  xb  orange
  7332. 7.12
  7333.   2  +5v  red
  7334. 7.12
  7335.   1  0v  brown
  7336. 7.12
  7337. Keyboard socket (or rear of plug)
  7338. 7.12
  7339. Steve Drain, Portland.
  7340. 7.12
  7341. (If you have never soldered a mini-DIN plug before, be warned Ö it is a
  7342. VERY fiddly job! Ed.)
  7343. 7.12
  7344. CSLæs address is: 15 Spencer Road, New Milton, Hants, BH25 6BZ.
  7345. 7.12
  7346. Å  Resetting the palette on the Risc PCáÖáOne of our subscribers happily
  7347. ran one of the alternative palette files, such as those given for
  7348. Artworks and Impression, only to realise that on RISC OS 3.5 there is no
  7349. palette icon with which to alter it, or, more importantly, to reset to
  7350. default. Weæve not been able to find any easy way to reset the palette
  7351. other than to take a default palette from a pre-RISC OS 3.5 computer and
  7352. double-click on it on the Risc PC. This does the job so, for those of
  7353. you who do not have the luxury of another machine, a default palette is
  7354. included on the program disc.á David Webb, NCS
  7355. 7.12
  7356. Å  RISCáOS 3 Laser Direct driver problemsáÖáIf you look at last monthæs
  7357. Archive carefully, you will see a small printing problem with the new
  7358. RISCáOS 3 LD drivers from CC. Take page 50 for example and look at line
  7359. 8 which starts, öStar to averageò. As you will probably be able to see,
  7360. there is a distortion of the text which looks like a missing line or
  7361. lines of dots on the printout. Having once identified it, you will
  7362. probably be able to see it on many of the pages of the magazine at about
  7363. the same position!!!!
  7364. 7.12
  7365. CC know about the problem and say that they are looking into it. There
  7366. is, however, a temporary solution. To stop it, you have to switch off
  7367. the half-toning of text. To do this, shift-click on the !Printers icon
  7368. on the iconbar and set the options as shown opposite to öGraphics onlyò.
  7369. 7.12
  7370. The only slight snag with this is that it reveals another (even worse)
  7371. bug. If, with half-toning on graphics only, you print something
  7372. sideways, it goes completely AWOL and prints the text at the wrong
  7373. spacing and in totally the wrong place!á Ed.
  7374. 7.12
  7375. (Stop Press Ö CC say that they have a beta-release of version 2.65 which
  7376. they are going to send me. It seems to have fixed the problems but, of
  7377. course, you can never be sure until it is thoroughly tested.á Ed.)
  7378. 7.12
  7379. Å  Selecting modes in Basic on the RiscáPC Ö We recently had an enquiry
  7380. regarding the effects of the MODE command in Basic on the Risc PC.
  7381. Unlike previous machines, the mode can be set using a mode definition
  7382. string rather than just a number. The idea is that this gives access to
  7383. the whole range of modes available to the Risc PC. If the specific
  7384. machine on which the software is running does not support the mode
  7385. requested, the closest mode which is available will be selected.
  7386. 7.12
  7387. The mode description string takes the form öXn Ym Ckò where n is the
  7388. desired X resolution, m is the desired Y resolution, and k sets the
  7389. number of colours ù 2, 4, 16, 256, 32K, 16M are all valid colour
  7390. specifiers. For example MODE öX800 Y600 C16ò will choose a mode similar
  7391. to mode 31 on earlier machines. Note also that the resolutions given in
  7392. the string are the required resolutions in Pixels, not logical units as
  7393. used by the Basic MOVE/DRAW/PLOT commands for example. More on this
  7394. later.
  7395. 7.12
  7396. The mode can be specified either by number or by string. Most of the old
  7397. modes are supported, and with some calculation, the new modes are also
  7398. accessible by number. The easiest way to find the number is to enter the
  7399. mode using the mode string, and then öPRINT MODEò which will display the
  7400. current mode number.
  7401. 7.12
  7402. Unfortunately, for users who have worked their way up from earlier
  7403. machines, the new system has some strange effects. The new method makes
  7404. more sense than the old system which was based on the BBC Micro system
  7405. of TTL rgb colours, but you do need to be aware of the changes. When a
  7406. mode is chosen by number and the mode has 2, 4 or 16 colours, then the
  7407. palette is redefined to be the same as that offered on the BBC,
  7408. including, for 16 colour modes, the flashing colours. This is identical
  7409. to the operation of earlier RISC OS machines.
  7410. 7.12
  7411. If the mode string is used, however, there are some differences.
  7412. Firstly, using the string has the same result as a ö*wimpmodeò command
  7413. being issued rather than a ö*modeò. The effect is that (a) the desktop
  7414. mode will have changed, and (b) the palette will be redefined to match
  7415. the desktop palette for that number of colours, including clearing the
  7416. screen to a mid-grey background, and selecting black text on a white
  7417. background. Secondly, the computer gets to choose what it thinks is the
  7418. best mode for the job. As noted above, MODE öX800 Y600 C16ò gives you
  7419. the same size and colours as mode 31, however the two are not identical.
  7420. MODE 31 specifies a particular mode whereas the string specifies general
  7421. requirements for the mode. In this case, where mode 31 has a refresh
  7422. rate of 56Hz, the mode string selects a mode which has a refresh rate of
  7423. 75Hz, considerably reducing the flicker. The important point here is
  7424. that, by passing a string, the choice of mode is more independent,
  7425. allowing the computer to choose the mode it can support that is closest
  7426. to the mode requested.
  7427. 7.12
  7428. If you need to use a limited number of colours, the best method to use
  7429. is the mode string, followed by a redefinition of the palette if needed,
  7430. using VDU 19,n,16,r,g,b. Individual colours can be chosen as normal
  7431. using GCOL a,c. The more öofficialò method, especially for high colour
  7432. modes is to use the mode string and the SWIáColourTrans_SetG-COL since
  7433. that will choose the closest colour in the palette defined. (For best
  7434. results, you may still wish to change the palette in low colour modes
  7435. for particular tasks). An example is shown below in procedural form
  7436. which you may find useful. The procedure will work on earlier machines
  7437. as well.
  7438. 7.12
  7439. REM PROCsetcolour
  7440. 7.12
  7441. REM r%, g%, b% set the amounts of red green
  7442. 7.12
  7443. REM and blue for the desired colour,
  7444. 7.12
  7445. REM Colourtrans will be used to pick
  7446. 7.12
  7447. REM the closest colour and set it.
  7448. 7.12
  7449. REM effect% is a standard GCOL effect field
  7450. 7.12
  7451. REM Use SWI number for speed :
  7452. 7.12
  7453. REM ColourTrans_SetGCOL = &40743
  7454. 7.12
  7455. :
  7456. 7.12
  7457. DEF PROCsetcolour(r%,g%,b%,effect%)
  7458. 7.12
  7459. LOCAL colour%
  7460. 7.12
  7461. colour%=(b%<<24)+(g%<<16)+(r%<<8)
  7462. 7.12
  7463. SYS &40743,colour%,,,0,effect%
  7464. 7.12
  7465. ENDPROC
  7466. 7.12
  7467. Finally, let me deal with the OS and pixel units conversions mentioned
  7468. earlier. Unlike PCs where locations of pixels tend to be addressed
  7469. directly, Acorn has always had a level of indirection - the ölogical
  7470. resolutionò. This had two main advantages in the past, firstly that the
  7471. logical resolution did not change with mode, so a line across the middle
  7472. of the screen would still appear in the middle even if you changed the
  7473. number of pixels on the screen. Secondly, the display worked in the same
  7474. way as a mathematical graph, with the origin at the bottom left corner
  7475. of the screen, y increasing upwards. If absolute pixels are used, the
  7476. top left is the origin, and y decreases downwards.
  7477. 7.12
  7478. The first of these two advantages no longer holds. Because of the
  7479. dramatic increase in resolutions and the need to fit more onto the
  7480. screen mean, the logical resolutions for different modes are no longer
  7481. identical. Consider the table on page 525 of the Risc PC User Guide:
  7482. Mode 12 is 640╫256 pixels but has a logical resolution of 1280╫1024.
  7483. Incidentally, this was the standard logical resolution for all modes on
  7484. the BBC and earlier Archimedes. Mode 27 at 640╫480 only has a logical
  7485. resolution of 1280╫960 i.e. although mode 27 is öhigher resolutionò, you
  7486. actually get less of a page on the screen than you do in mode 12! (You
  7487. will have to take my word for the logical resolutions Ö they have been
  7488. taken out of the Risc PC manual, but appeared in earlier versions if you
  7489. have access to those ù page 221 of the joint User & Applications guide
  7490. for RISC OS 3.)
  7491. 7.12
  7492. This has been used to good effect on the Risc PC, allowing large area
  7493. desktops such as the X1600 Y600 mode which has four times the area of
  7494. the X800 Y600, but only double the number of pixels.
  7495. 7.12
  7496. This means that you do not know what the logical resolution of a mode is
  7497. when you choose it, so to make your software as mode independent as
  7498. possible, you need to check the actual and logical resolutions using the
  7499. SWIáOS_ReadModeVariables and set up appropriate scaling factors. If you
  7500. do not have the PRMs, you can assume that for rectangular pixel modes
  7501. 2*X converts a pixel to the correct logical position, and 4*Y gives the
  7502. appropriate scaling for the vertical. In square pixel modes, use 2*X and
  7503. 2*Y for the scaling. If the actual Y resolution is less than half of the
  7504. actual X resolution then it is probably safe to assume a rectangular
  7505. pixel mode, otherwise assume square pixel.
  7506. 7.12
  7507. On the monthly program disc is a program called ösetcolourò which
  7508. includes the above procedure. As a demonstration, the program goes
  7509. through 2, 4, 16, 256, 32K and 16M colours and displays a slice from the
  7510. colour cube. (You may find the program fails to display the higher depth
  7511. modes if you do not have any VRAM). Simply double click on it, once it
  7512. has finished the first colour square, press a key to move on to the next
  7513. higher colour depth. You may need to reset your desktop mode after it
  7514. has finished. SetColourN is similar but only uses 2, 4, 16 and 256
  7515. colours referenced by number to demonstrate the difference between
  7516. desktop and default öBBCò palettes. This version will also work on pre-
  7517. Risc PC machines.á Matthew Hunter, NCS.
  7518. 7.12
  7519. Å  Sound Boots?áÖáFor those of you seeking to boost the sound output of
  7520. your computer, may I suggest you take a quick trip to your local branch
  7521. of Boots the Chemist. In the music department, you should find a pair of
  7522. Bootsæ own brand ZX200CD microspeakers for a mere ú14.99. These come in
  7523. rather a naff cardboard box, but do have a volume control on the front
  7524. of each speaker plus a PBS button which enhances the bass sound. They
  7525. require four LR6 batteries (about another ú3) but as they have auto
  7526. power switch off, these last a fair time. The supplied lead plugs
  7527. directly into the headphone socket on an Acorn computer.
  7528. 7.12
  7529. The difference is stunning and, certainly in a noisy classroom, they
  7530. would be a great help. Even in the home environment, they can make a lot
  7531. of difference.á Paul Hooper, Martham, Norfolk.
  7532. 7.12
  7533. Å Thumbnail creation Ö Quantum Software have provided Archive
  7534. subscribers with a copy of Executor (the playback-only version of
  7535. Keystroke). It has been supplied as seen, with no warranty, etc, for use
  7536. by Archive magazine subscribers only, to demonstrate some of the
  7537. abilities of Keystroke.
  7538. 7.12
  7539. The application has the ability to produce, from a directory of JPEG or
  7540. TIFF files, a multi-sprite file Ö in effect, making a !Paint Éthumbnailæ
  7541. file.
  7542. 7.12
  7543. These thumbnail sprite files are very useful for displaying your bit-map
  7544. images quickly and, whilst it isnæt as good as a professional thumbnail
  7545. application, they cost money. Because Paint and this copy of Executor
  7546. come free, this is an definite advantage!á Stuart Halliday, Quantum
  7547. Software.
  7548. 7.12
  7549. N.B. Quantum are also offering Keystroke at a special price of ú19 to
  7550. Archive subscribers for a limited period. For details, see page 5.ááAá
  7551. 7.12
  7552. Hints and Tips
  7553. 7.11
  7554. Å  Dongled software on the PC cardáÖáWhen running dongle-protected PC
  7555. software on the Aleph One PC card, some problems may be experienced
  7556. where the dongle isnæt seen. This can be cured by a simple hardware
  7557. upgrade to the parallel port. Contact Aleph One for details.á W H
  7558. Bradbury.
  7559. 7.11
  7560. Å  ImpChars on the Risc PCáÖáImpChars, included on Archive program disc
  7561. 7.6, doesnæt work with the Risc PC. The error öToo many nested
  7562. structuresò appears. This can be solved by changing the value of the
  7563. WimpSlot in the !Run file eg. from 24 to 45.á Anon.
  7564. 7.11
  7565. Å  Maximising memory using KeystokeáÖáI have used Keystroke for a year
  7566. or so and I am now using v2.33. The most commonly used sequence I have
  7567. is on booting up. My !Boot file includes the line
  7568. 7.11
  7569. /ADFS::IDEDisc.$.!Keystroke
  7570. 7.11
  7571. My default Keystrokes file sets up <Alt-Q> to quit those applications
  7572. which have been loaded during the boot sequence and which are no longer
  7573. needed (e.g. the Printer Manager). They are quit either by using the
  7574. quit option from their icons menu on the iconbar or, if that is not
  7575. available, from the quit task option in the Task window by opening the
  7576. window, positioning the pointer over the item and quitting via the menu.
  7577. 7.11
  7578. My !Boot file also contains the lines
  7579. 7.11
  7580. Set $Do0 Alt+Q@Quit Printer Manager
  7581. 7.11
  7582. Set $Do1 Alt+Q@Quit ...
  7583. 7.11
  7584. Set $Do2 Alt+Q@Quit ...
  7585. 7.11
  7586. Set $Do3 Alt+Q@Quit ...
  7587. 7.11
  7588. Set $Do4 Alt+Q@Open Tasks Window
  7589. 7.11
  7590. Set $Do5 Alt+Q@Position Tasks Window
  7591. 7.11
  7592. Set $Do6 Alt+Q@Position Pointer
  7593. 7.11
  7594. Set $Do7 Alt+Q@Quit   (application name)
  7595. 7.11
  7596. Set $Do8 Alt+Q@Close Tasks Window
  7597. 7.11
  7598. which successfully remove those applications and leaves me in the
  7599. desktop with the machine set up with all the applications and modules
  7600. that I like to have loaded, but also with the maximum amount of free
  7601. memory available.á M P Churchill, High Wycombe.ááAá
  7602. DTP Hints & Tips
  7603. 7.11
  7604. James Parry
  7605. 7.11
  7606. James Parry, proprietor of Smart DTP, öSpecialists in DTP ware for 32-
  7607. bit Acorn machinesò, has sent us a whole set of DTP hints and tips. He
  7608. admits he has an ulterior motive of drawing attention to his companyæs
  7609. products but the hints are helpful, so here they are.
  7610. 7.11
  7611. Å  Getting organised(1) Fonts Ö There are now several applications on
  7612. the market for managing outline fonts, the leading applications being
  7613. Easyfont II (Fabis) and Font Directory (LOOKsystems). Iæve just received
  7614. Easyfont II, and itæs a lot faster and has many new features. (Iæm not
  7615. going start a font management war as I havenæt seen a copy of Font
  7616. Directory yet.)
  7617. 7.11
  7618. If you can spare the cash, you would be well advised to invest in a font
  7619. management system. The application will help you to cope with the
  7620. growing number of fonts being introduced so that you can keep track of
  7621. them and, more importantly, use your collection more effectively. If you
  7622. can fit all your fonts on one font directory on your hard drive then you
  7623. probably donæt need a font management system yet. Before I used
  7624. Easyfont, I organised all my fonts into separate !Font directories such
  7625. as !Fancy, !General, !Script, !Titles, etc. For those who use a floppy
  7626. drive system, you will have to make up different font discs using this
  7627. sort of system.
  7628. 7.11
  7629. Å  Getting organised(2) Clipart/Resources Ö Many people have lots of PD
  7630. and commercial clipart but is your clipart well-organised? Can you find
  7631. that piece of clipart just when you need it? A while ago, I decided I
  7632. would have to get my collection into some sort of order. It took quite a
  7633. while trying different ways of organising my resources before I decided
  7634. on my current system which is quick and easy to use.
  7635. 7.11
  7636. If, as I do, you tend to hoard software and simply canæt bear to delete
  7637. anything, make a backup of your entire collection of clipart. Once this
  7638. is done, you can sift through your collection, pruning as you go, with
  7639. no fear of losing images from your collection altogether.
  7640. 7.11
  7641. If you donæt have a hard drive, your best bet is to sort out your
  7642. clipart by topic onto disc. Each disc should concentrate on a single
  7643. topic. For example, you may have discs dedicated to sport and leisure,
  7644. business, cartoons, etc. If possible, use a compression application to
  7645. maximise space.
  7646. 7.11
  7647. Hard disc users have a better option although they can use the method
  7648. above to keep backups. I store my clipart in an application on the $
  7649. directory called !Clipart. It simply opens a directory, revealing the
  7650. clipart. Itæs not exciting and it doesnæt do anything fancy but if you
  7651. want a copy, send for our catalogue disc (see below) and ask for a copy.
  7652. 7.11
  7653. My clipart directory is made up of many archives, each archive covering
  7654. a set topic. Archives or ArcFS archives are the best way of storing
  7655. clipart on your machine. To give you some idea of the sort of categories
  7656. that you might want to use, here is my list.
  7657. 7.11
  7658. Animals, Arrows, Borders, Buildings, Comms/Media, Computers, Corners,
  7659. Drawing, Drop Capitals, Flashes, Food, Fun (animals, cartoons, toys,
  7660. party), History, Leisure/Sport, Logos, Misc, Music, Nature (flowers,
  7661. insects, pondlife, trees), Objects, Occasions (easter, weddings, xmas),
  7662. People (famous & anatomy) Speech, Symbols, Think, Transport (aircraft,
  7663. boats, others), War and World (maps & flags). (Topics in brackets are
  7664. sub directories.)
  7665. 7.11
  7666. Keep the clipart that you use most regularly on your hard drive.
  7667. Depending on the free space available, you may decide to store some of
  7668. your collection on floppy disc. Incidentally, Huge Eagle has produced an
  7669. excellent application called !PicAPic (available from all good PD
  7670. libraries). It is an absolute must for DTP users, allowing you to view a
  7671. whole directory of clipart at a time and it includes numerous other
  7672. useful features.
  7673. 7.11
  7674. Å  Go easy on the fonts and clipart Ö One of the biggest mistakes for a
  7675. DTP user is to use too many different fonts and images in one document.
  7676. Try to decide on a set of fonts which you are going to use throughout a
  7677. document. By using a good balance of fonts, your work will look well-
  7678. structured and attractive yet easy to read. Then, by introducing the
  7679. right images, the document can be enhanced still further by making it
  7680. more eye-catching.
  7681. 7.11
  7682. Å  Ideas Ö The more DTP work that you create, the more experienced
  7683. youæll get. One of the best ways of developing your ability to produce
  7684. different styles of work is to look critically at the literature you see
  7685. in everyday life. Just by observing how other people produce leaflets,
  7686. brochures, reports etc, you can get ideas for our own work.
  7687. 7.11
  7688. Å  The right font for the right image Ö Typefaces can act as a powerful
  7689. communication tool, drawing the readersæ attention by suggesting what
  7690. the text is about. For example, an advertisement describing a new
  7691. product aimed at primary education might well use a primary school font
  7692. as this would give the reader the image of education and learning.
  7693. 7.11
  7694. Because the typefaces that you use can make such a difference to the
  7695. first impression, it is important that you choose the correct font for
  7696. each job. As an example, it would be inappropriate to use a decorative
  7697. font for the titles of an exam paper or a primary school font for the
  7698. body text of a business report. Decorative and title typefaces are often
  7699. used excessively.
  7700. 7.11
  7701. (As an exercise, can I suggest you look through the adverts in the June
  7702. issue of Archive? Ask yourself which ones communicate most clearly and
  7703. then try to analyse why that is so. Itæs not a case of which advert gets
  7704. the largest amount of information into an A5 advert but which one
  7705. öcommunicatesò in the broadest sense of the word. Ed.)
  7706. 7.11
  7707. Å  Printing and papers Ö Unless you use professional imagesetting and
  7708. printing all the time, the majority of your work will be printed using a
  7709. desktop printer. Itæs worth remembering that standard A4 white copier
  7710. paper isnæt always the best medium. Some excellent effects can be
  7711. achieved by using different sorts of paper to add some variety to your
  7712. work. You can choose from papers with varying weights, colours, sizes,
  7713. and types. Shop around for the best deal Ö youæll probably find that
  7714. your local paper merchant gives the best choice and price. Viking Direct
  7715. (0800-424444), offer a nationwide delivery service and have a range of
  7716. colour, graduated colour and designer papers. The designer papers are
  7717. pre-printed in full colour A4 pages and are ideal for work that really
  7718. needs to stand out.
  7719. 7.11
  7720. Å  Are you Smart? (This is the advertising bit! Ed.) Ö Last but
  7721. certainly not least, buy your clipart, resources, fonts & DTP
  7722. applications from SmartDTP! We produce our own range of publishing
  7723. resources which is complemented by the products in our DTPDirect
  7724. catalogue. We supply publishing resources from iSV(Exclusive), Micro
  7725. Studio, Tekoa Graphics, Fabis Computing, Design Concept, Southern
  7726. Printers, ABC Of Art & Dabs Press. We offer fast delivery which is
  7727. backed up by a full telephone support service. To obtain our latest
  7728. catalogue disc send your details with a ú1 coin stuck to a piece of card
  7729. (so it doesnæt get lost in the post) to the following address:- Smart
  7730. DTP, Catalogue disc, 36 Park Road, Duffield, Belper, Derbyshire, DE56
  7731. 4GR.  (0332-842803)ááAá
  7732. Hints and Tips
  7733. 7.10
  7734. Å  Cumana CD-ROM 300 (SLCD), Photo CD. I had problems installing the new
  7735. module on my A5000. I had followed the installation instructions given
  7736. in the help file, putting new lines in the !Boot file but could not
  7737. change the module and kept getting error messages. I contacted Cumana
  7738. who were very helpful. By a process of elimination, we found out that
  7739. the lines added to the !Boot file should be this:-
  7740. 7.10
  7741. RMEnsure SLCD 1.22 RMLoad (Path).SLCD. SLCD1
  7742. 7.10
  7743. RMEnsure SLCD 1.22 error SLCD version 1.22 not found
  7744. 7.10
  7745. where (Path) will be something like
  7746. 7.10
  7747. ADFS::IDEDisc4.$.Cumana
  7748. 7.10
  7749. or whatever the directory is that contains the new module.á Angela
  7750. Bareford, Woking.
  7751. 7.10
  7752. Å  IDEFS and RISC OS 3. I recently upgraded my A3000 to ARM3, which
  7753. proved to be a very harrowing experience due to certain... err...
  7754. misunderstandings on the part of Watford Electronics. However, with the
  7755. computer back on my desk, I felt more contented, until I discovered that
  7756. my hard disc drive disagreed with the new processor. So, I contacted
  7757. Risc Developments, who were very helpful, and they sent me a new IDE
  7758. controller ROM. I would recommend that all owners of R.D. internal hard
  7759. disc drives and RISC OS 3 should get this as it interfaces better with
  7760. the new operating system and provides a proper space free window.
  7761. 7.10
  7762. Unfortunately, I canæt do that, as it doesnæt seem to work with my
  7763. system. Everything is fine until it has to cope with a file that is
  7764. about 1Mb long; this can occur when using ArcFS archives which are
  7765. treated as one file or when installing Wordworks Ö the dictionary file
  7766. is massive! RD are somewhat confused by this as they thought they had
  7767. fixed it, so my faithful little hard drive must be entrusted to Parcel
  7768. Force for the hazardous journey to St. Albans.
  7769. 7.10
  7770. Therefore, I felt I ought to warn Archive readers with a similar
  7771. configuration that archiving and WordWorking can be very bad for your
  7772. general welfare Ö no-one likes having to wipe everything! The versions
  7773. in question are: IDEFS v:1.27 and IDEFiler v:1.11 on the EPROM v: 1.33A.
  7774. 7.10
  7775. It is, however, nice to see that some companies can be genuinely helpful
  7776. Ö notably those who do not also deal with PC products ...á Nigel Caplan,
  7777. Leeds.
  7778. 7.10
  7779. Å  Indelible files in CFS Ö Sometimes, in using Computer Conceptsæ CFS,
  7780. a file may become corrupted, and end up on the disc as an indelible
  7781. file. No direct * command, such as *WIPE, *REMOVE, or *DELETE has any
  7782. effect. The simple solution is to create another file in Impression or
  7783. Artworks with exactly the same name as the dud file. On attempting to
  7784. save the new file, you meet the familiar CC warning message inviting you
  7785. to delete the old file and save the new one. When you press OK, the dud
  7786. file is replaced by a nice new file which can then be deleted as
  7787. normal.á Gerald Moxon, Leeds.
  7788. 7.10
  7789. Å  Inkjet problems on BJ10? Ö If you find that the ink stops flowing a
  7790. short time after installing a new cartridge, and if the self-clean does
  7791. not work, try removing the cartridge and blowing into the little hole at
  7792. the side of the cartridge. This trick has worked every time I have tried
  7793. it and was taught me by a printer repair engineer.á Clive Bell,
  7794. Stevenage.
  7795. 7.10
  7796. Å  Menu Help ...continued. I would like to add a suggestion to the saga
  7797. about getting menu help, first raised by Gwyn Williams (Archive 6.11
  7798. p11), and followed by two articles by Richard Simpson (Archive 6.12 p33
  7799. and 7.8 p42).
  7800. 7.10
  7801. The problem is that the Gwyn Williamsæ examples only work for those
  7802. mythical owners of the new RISC_OSlib, and the solutions suggested by
  7803. Richard Simpson cause other problems which he referred to last month.
  7804. 7.10
  7805. Although I also do not own the new RISC_OSlib, I implemented menu help
  7806. using Gwyn Williamsæ solution by including my own function for
  7807. wimpt_messages.
  7808. 7.10
  7809. (1) Add the header reference
  7810. 7.10
  7811. #include öswis.hò
  7812. 7.10
  7813. (2) Define a new swi
  7814. 7.10
  7815. #define Wimp_AddMessages 0x400F6
  7816. 7.10
  7817. (3) Include the new wimpt_messages routine
  7818. 7.10
  7819.   static void wimpt_messages (wimp_ msgaction *messages)
  7820. 7.10
  7821.   {r ;
  7822. 7.10
  7823.    r.r[0]=(int)messages;
  7824. 7.10
  7825.    wimpt_complain(os_swix(Wimp_AddMessages, &r));
  7826. 7.10
  7827.   }
  7828. 7.10
  7829. I hope this is useful.á Peter Tuson, Fleet.
  7830. 7.10
  7831. Å  Saving the desktop state at shutdown Ö After playing with !Help and
  7832. Switcheræs save Desktop file, I discovered an icon that was almost
  7833. completely out of view. The icon is at the bottom of the ÉDesktop bootæ
  7834. save-window below the ÉAuto bootæ icon. (it can be seen by loading the
  7835. Switcher templates into FormEd, and altering the window size.) It
  7836. transpires that it is possible to make the desktop save the current
  7837. state at shutdown. It all revolves around the alias SaveDesk$File.
  7838. 7.10
  7839. By typing
  7840. 7.10
  7841. *Set SaveDesk$File <filename>
  7842. 7.10
  7843. the current state of the desktop will be saved, as a desktop file called
  7844. <filename>, whenever a Shutdown (Ctrl-Shift-F12) is performed, or ÉExit
  7845. æis selected from the Switcher menu.
  7846. 7.10
  7847. I have been unable to find any references to this in the RISC OS 3 User
  7848. Guide, so I would imagine that it is not fully implemented, or not
  7849. recommended by Acorn.á Neil Walker, Wymondham, Norfolk.
  7850. 7.10
  7851. Å  Toshiba CD-ROM drives and CDFS Ö I recently experienced problems in
  7852. connecting a Toshiba 4101 SCSI CD-ROM drive to my system. The problem
  7853. was that the CD-ROM icon would be displayed on the iconbar but clicking
  7854. on it, or trying to play audio discs would cause the error ÉCD-ROM drive
  7855. not found.æ
  7856. 7.10
  7857. I found out that the Toshiba EE50X driver provided with CDFS does not
  7858. work with this drive, (nor apparently the 3401). Luckily, Morley
  7859. Electronics sell a new driver for ú25 which does work, and so these
  7860. cheap CD-ROM drives will now work with Archimedes computers.
  7861. 7.10
  7862. Apparently, the latest CDFS is v2.21 and hopefully allows drives to be
  7863. set to double speed, and removes the bug where ejecting an audio disc
  7864. kills CDFS.á Richard Burrell, Bristol.
  7865. 7.10
  7866. Å  Two dimensional scroll bars Ö Hereæs an interesting Éfeatureæ of RISC
  7867. OS 3.11. Load up Edit or Impression with a file that covers more than a
  7868. screenfull. Now go to one of the scroll bars and click on the Éthumbæ
  7869. (the bar) with <adjust>. The pointer will disappear and moving the mouse
  7870. will cause the window to scroll in any direction Ö up, down, left and
  7871. right! Impression seems to do this better than Edit, but any offers why
  7872. it happens at all?á Nigel Caplan, Leeds.
  7873. 7.10
  7874. This feature is part of the normal Wimp-controlled operation of a
  7875. window. It is particularly useful in graphics programs such as Draw,
  7876. Artworks and bitmap applications with pages much larger than the
  7877. window.á Dave Webb, NCS.ááA
  7878. 7.10
  7879. What has happened to the hints & tips? I guess everyone has been too
  7880. busy reading and talking about the RiscáPC. Please send in your tips for
  7881. both machines to maintain this valuable service to other readers. Ed.
  7882. 7.9
  7883. Å  TeX Ö In response to the help plea in Archive 7.6 p31, TeX can be
  7884. made to run by dragging the directory containing the TeX file onto the
  7885. TeX icon by changing one line in !Wimpman.
  7886. 7.9
  7887. Line 860 should be changed from Param$=ö<TeX Source>ò +
  7888. FNfilename(Param$) to Param$ = FNfilename(Param$)
  7889. 7.9
  7890. This correction comes from Graham Toal, and I have had no problems since
  7891. making the change. Kathy Burrows, Bedford.
  7892. 7.9
  7893. Å  WordWorks problems Ö In reply to Dave Floydæs WordWorks problems
  7894. (Archive 7.8 p43) one of our subscribers (I didnæt catch the name,
  7895. sorry) called in with a solution that works for him. Once you have
  7896. deleted the choices file and got the configurations back as you want
  7897. them, quit WordWorks and then load the choices file into Edit. Find the
  7898. line that starts NewView followed by some coordinates and comment it out
  7899. by placing a colon at the start of the line. Save the file back and all
  7900. should be well.á Dave Webb, NCS.
  7901. 7.8
  7902. Å  CC Turbo drivers Ö It has been stated in the past that to print from
  7903. Basic (or similar), you need to load the Turbo Driver before it will
  7904. work. This is not, in fact, the case. After installation, the !Printers
  7905. directory will contain a directory called td, which is where the Turbo
  7906. Driver resources are kept. In the subdirectory Resources.Modules is a
  7907. relocatable module Éturboæ which is all that is required to enable
  7908. printing from Basic. If you frequently wish to print in this way, it may
  7909. be beneficial to load the module as part of your boot sequence. G.
  7910. Smith, London.
  7911. 7.8
  7912. Å  Conditional Basic Ö Following hours of head-scratching and computer-
  7913. bashing, wondering why an öIF...THEN...ELSE...ENDIFò did not work as it
  7914. should, I made the following discovery. The problem occurs if you are
  7915. using !StrongEd when after the THEN, for whatever reason, there is a
  7916. space which you cannot see. (It is possible to make it visible in
  7917. !StrongEd since you can set the window and text background colours
  7918. independently, e.g. two different shades of grey. MH) In my case, it was
  7919. left there after splitting the line. The program then seems to ignore
  7920. the THEN and just continues its flow, and of course, if the condition
  7921. has not been satisfied, the wrong result is achieved. If you delete the
  7922. unseen space or spaces it works correctly. The same does not occur with
  7923. !Edit. How about other editors?á John Charman, Norfolk.
  7924. 7.8
  7925. (I have tried this with the public domain editor, !Zap. If you edit in
  7926. BASTXT mode, the spaces are saved, but the program functions correctly.
  7927. If you edit in Basic mode, trailing spaces are removed. Is there a
  7928. difference if you run the program from within !StrongEd, rather than
  7929. saving the file and running it normally? MH)
  7930. 7.8
  7931. Å  Deskjet printing Ö Examining the printer graphics output for the
  7932. Deskjet from the Acorn Printer driver, I see that graphics output ends
  7933. with the code <esc>*rB. This was the accepted code until the DJ500 but,
  7934. thereafter, <esc>*rC is required. The latter is recommended to cover
  7935. both cases. In the !Paint code, it is immediately followed by <esc>E to
  7936. reinitialise the printer, so it would probably work OK but, in other
  7937. contexts, it could have undefined results. John Laski, London SW1.
  7938. 7.8
  7939. Å  Epson Stylus and Turbo Driver Ö If you are having problems with
  7940. spurious formfeeds being sent out to the Epson Stylus printer from the
  7941. CC Turbo Driver, donæt despair. It is a known problem and Computer
  7942. Concepts have a fixed version of the Turbo Driver. Contact them for more
  7943. details.á Michael Pullin, Cheltenham.
  7944. 7.8
  7945. Å  Ink Refills for Canon BJC-600 Ö The Canon Inkjet Colour Printer BJC-
  7946. 600 is highly regarded as a suitable colour printer for Acorn 32-bit
  7947. (Archimedes) computers. It produces prints with 360 dpi resolution and
  7948. near-photographic quality in colour of an excellence previously
  7949. obtainable only with much more expensive printers. The method of
  7950. printing is to eject coloured inks in very small droplets from separate
  7951. reservoirs of ink of four colours (yellow, cyan, magenta and black)
  7952. through holes of microscopic size in a print-head which is traversed
  7953. laterally as the paper is advanced beneath it.
  7954. 7.8
  7955. In the Canon BJC-600, the print-head is retained in the machine and only
  7956. requires renewal at long intervals. The four inks are contained in
  7957. liquid form in separate plastic cartridges which are conveniently
  7958. transparent to show the quantity of ink remaining. These four cartridges
  7959. plug into the print head and can be removed and replaced individually.
  7960. Each cartridge is sealed except for one hole which feeds ink to the
  7961. print head (the ink exit hole). A spongy material which is located
  7962. within the cartridge absorbs some of the ink and prevents it flowing too
  7963. freely from the cartridge.
  7964. 7.8
  7965. Ink refill kits have become available to save on the cost of new
  7966. cartridges. It is particularly important, if refilling is contemplated,
  7967. that only inks of the special types used in inkjet printers should be
  7968. employed.
  7969. 7.8
  7970. In my experience, it is not satisfactory to attempt to inject new ink
  7971. through the ink exit hole: Filling in that fashion can only be done
  7972. slowly as air must exit at the same time by the same hole. Furthermore,
  7973. there is a risk of disturbing the spongy material within the cartridge
  7974. at the critical position in the vicinity of the hole. So, my solution
  7975. has been to drill another hole in the cartridge for filling with ink.
  7976. Although this and the subsequent operations which I shall describe are
  7977. simple in nature, they require some dexterity. If you wish to experiment
  7978. at your own risk, proceed as follows:
  7979. 7.8
  7980. To modify the cartridge, peel back the coloured adhesive label to expose
  7981. the top of the cartridge. Drill a small hole in the centre of the round
  7982. moulding depression on the top of the cartridge (see diagram opposite).
  7983. I shall call this the filling hole.
  7984. 7.8
  7985. Take a piece of adhesive tape of about ╛ö square Ö the common brown
  7986. adhesive packaging tape is ideal as it adheres strongly to the material
  7987. of the cartridge. Place this tape to cover the filling hole which you
  7988. have drilled and bend the tape to extend it over the side of the
  7989. cartridge. This extension will facilitate its removal later. Finally,
  7990. smooth back the coloured label to its normal position at the top of the
  7991. cartridge. This completes the modification of the cartridge.
  7992. 7.8
  7993. Filling a modified cartridge.
  7994. 7.8
  7995. (a) My experience in refilling cartridges is limited to the use of ink
  7996. obtained from System Insight of Welwyn Garden City which I have found to
  7997. be satisfactory. The ink is supplied in plastic squeeze bottles which
  7998. are very convenient Ö specify that ink is required for the BJC-600 and
  7999. the bottles will be fitted with long straight hollow needles (or probes)
  8000. somewhat like a hypodermic syringe. Ink of all four colours will be
  8001. required.
  8002. 7.8
  8003. (b) Seal off temporarily the ink exit hole in the cartridge with tape.
  8004. This requires care as the exit hole is near a corner of the cartridge. A
  8005. clamp against a soft rubber washer as a seal is a better solution.
  8006. 7.8
  8007. (c) Peel back the coloured label at the top of an empty cartridge to
  8008. expose the brown tape and remove this brown tape to expose the filling
  8009. hole. Insert the probe of a squeeze bottle containing ink of the correct
  8010. colour (check the colour of the cartridge label carefully) and fill the
  8011. cartridge with ink. Do not overfill but move the cartridge as necessary
  8012. to ensure that air is not trapped.
  8013. 7.8
  8014. (d) Seal the filling hole again with a fresh piece of brown adhesive
  8015. tape. Smooth back the coloured label over the top of the cartridge.
  8016. Remove the tape (or other seal) which was placed temporarily over the
  8017. ink exit hole.
  8018. 7.8
  8019. (e) Place the cartridges vertically on a flat surface (in the stance
  8020. they would normally occupy when in the printer) and leave them overnight
  8021. to stabilize. There should be no leakage.
  8022. 7.8
  8023. (f) Place the newly filled cartridges in the printer and perform the
  8024. four-colour cleaning operation which would normally be carried out with
  8025. new cartridges.
  8026. 7.8
  8027. You should note that you will be unlikely to complete these filling
  8028. operations without spilling some ink especially until experience is
  8029. gained. So take care to undertake filling where spilled ink is of no
  8030. consequence. Toilet tissue is the best material for mopping up surplus
  8031. ink. A small quantity of ink on the hands is of little consequence as it
  8032. soon disappears with normal washing.
  8033. 7.8
  8034. The amount of money to be saved by refilling cartridges is worth the
  8035. effort if the printer is used extensively. On the other hand, success
  8036. will depend considerably on your manipulative skill Ö you may consider
  8037. it preferable to employ only new cartridges as supplied by Canon.á
  8038. George Foot, Oxted.
  8039. 7.8
  8040. Å  Laser Direct and RISC OS 3 Ö Having recently upgraded to the RISC OS
  8041. 3 version of the Laser Direct printer driver (v2.61), Iæve hit a couple
  8042. of snags when using a Canon LBP-4 printer fitted with a paper cassette.
  8043. Thinking these were new bugs, I reported them to Computer Concepts but
  8044. have been advised that they are Éfeaturesæ of the (RISC OS 3) model.
  8045. 7.8
  8046. In neither case do the problems stop successful printing but they do
  8047. need to be taken into account, thus making the system not quite so user-
  8048. friendly.
  8049. 7.8
  8050. When the driver is first loaded and the paper cassette is selected, the
  8051. printer Alarm LED now remains on and the Status window shows ÉNo paper
  8052. in multi-purpose trayæ. This is not normally a problem as, once the
  8053. first page of a document has been assembled, the Ready LED comes on and
  8054. the printer fires up (thereafter, the Ready LED remains on). However,
  8055. where an application allows individual pages to be selected, e.g.
  8056. Pipedreamæs ÉWait between pagesæ option, the printer may not fire up
  8057. until the final page of the document has been accepted or rejected. With
  8058. a large document, many minutes can be lost.
  8059. 7.8
  8060. There are two work-around solutions; put a sheet of paper in the multi-
  8061. purpose tray or first print another full document. Either action will
  8062. bring on the Ready LED and allow printing to start as soon as the first
  8063. selected page has been assembled.
  8064. 7.8
  8065. Secondly, when you use the ÉPrint to fileæ option, the paper feed
  8066. selected at the time is now saved with the file and, on printing, will
  8067. override any other setting. So, when printing to file, you must decide
  8068. where you want the paper to come from when the file is finally printed,
  8069. and pre-select Cassette or Multi-Purpose before printing to file.á Jim
  8070. Nottingham, York.
  8071. 7.8
  8072. Å  PipeDream to Impression Ö In Archive 7.7 p56, Paul mentioned getting
  8073. files from Pipedream to Impression via DeskEdit. If you have PipeDream4,
  8074. there is an option öParagraphò on the save window. If you click that,
  8075. you can drop the text straight from PipeDream into Impression.á Michael
  8076. Wright, Teignmouth.
  8077. 7.8
  8078. Å  Quieter fans? Ö David Lenthall (Archive 7.6 p23) asked for a supply
  8079. of quiet Papst fans. You could try a company called Papst Direct,
  8080. Andover, Hants, SP10 3RT (0264-335714) (0264-332182) who advertised in
  8081. Computer Shopper some while back. Their Variofan will örun as fast as
  8082. your PC needsò. I havenæt tried them myself so if anyone does, perhaps
  8083. they would report back so we can all benefit. Thanks.á David White,
  8084. Cambridge.
  8085. 7.8
  8086. Å  Rodent sunglasses? Ö As a person of the bearded persuasion (those who
  8087. met Dave at Acorn World or the NCS Open Day can confirm that!) who
  8088. sometimes eats digestive biscuits whilst working at my Archimedes, my
  8089. keyboard and mouse mat often suffer a shower of crumbs and small hairs
  8090. as I scratch my chin. This requires frequent removal and cleaning of the
  8091. rubber ball in the mouse.
  8092. 7.8
  8093. I have become accustomed to this so the other day, when the mouse
  8094. pointer started moving in jerks I removed the ball and cleaned it. No
  8095. improvement. I tried again, this time cleaning the little rollers with a
  8096. cotton bud as well. Still it wouldnæt work properly. I washed the mouse
  8097. mat but again, it misbehaved.
  8098. 7.8
  8099. The mouse I normally use was actually taken from an A3020 because I
  8100. prefer it to the one supplied with my A5000, so at this point, I decided
  8101. to try the original mouse and everything worked perfectly.
  8102. 7.8
  8103. A little later, determined not to be beaten, I took the top off the
  8104. mouse to give it a thorough clean. This still produced no improvement. I
  8105. therefore tried using it with the top cover removed in the hope of being
  8106. able to see what was going wrong. All the little rollers appeared to be
  8107. turning, but the mouse pointer wasnæt moving, just vibrating as I moved
  8108. the mouse.
  8109. 7.8
  8110. The mouse uses an optical sensor with a slotted disc and, with the top
  8111. removed, there was too much light for this to function whereas shielding
  8112. the works with my hand made it function correctly.
  8113. 7.8
  8114. Suddenly the penny dropped! I refitted the cover, placed my hand
  8115. completely over the mouse (instead of just moving it held between thumb
  8116. and little finger as usual) and it worked. The trouble was that I work
  8117. with my desk in a bay window, and it was the first sunny day of the
  8118. year. The afternoon sun shining through the window was landing on my
  8119. desk just where I had positioned the mouse mat. Enough of this bright
  8120. sunlight was penetrating the casing of the mouse to confuse the optical
  8121. sensor. I had wasted about an hour trying to find a non-existent fault
  8122. when all that was needed was to partially draw the curtains!
  8123. 7.8
  8124. I have now stuck some kitchen foil to the inside of my mouse casing!á
  8125. David Holden, Sydenham.
  8126. 7.8
  8127. Å  !Spark(plug) 2.22 Ö John Laski also writes of !Spark öthis
  8128. successfully unzips some files, but not others.ò Unfortunately there
  8129. have been later versions of ZIP on the PC than !Spark will currently
  8130. handle. If you have access to the PC Emulator, I would recommend that
  8131. you use the PKUNZIP program within the PC partition. While slower than
  8132. !Spark, it does have the advantage that the decompressed files have the
  8133. correct extensions (which !Spark does not (yet?) offer), and if the
  8134. software is PC anyway, extracting it via !Spark to the PC partition and
  8135. then having to rename all the files is more hassle than resorting to
  8136. DOS. If you are sending the files to a Pocket Book (much of the Psion 3
  8137. software is distributed through PC media) then with PocketFS2 you can
  8138. drag a file directly from the PC partition to the PocketFS filer (not
  8139. the translation window), which is another advantage of the PC method.
  8140. Hopefully, future versions of !Spark will support extensions, as well as
  8141. later versions of ZIP files, thus making my PC partition redundant!
  8142. Matthew Hunter, NCS
  8143. 7.8
  8144. Å  Taxan 789 problems Ö Iæve been offered quite a bit of advice on my
  8145. Taxan 789 problem; unfortunately, none of it is definitive and some of
  8146. it is contradictory. However, the general consensus is that the Taxan
  8147. 789 should run OK direct from Énewæ machines, i.e. A5000 or later. It
  8148. may run off Éoldæ machines, with or without multisync VIDC enhancers,
  8149. but this is unlikely. It probably will run OK with SVGA VIDC enhancers,
  8150. such as the version marketed by Watford Electronics.
  8151. 7.8
  8152. Apparently, the clue is whether the computer/VIDC enhancer produces a
  8153. composite sync or the preferred separate horizontal and vertical syncs.
  8154. This may explain why I had identical problems trying to run it from an
  8155. A410/1, with multisync enhancer, or an A540 with built-in equivalent
  8156. hardware.
  8157. 7.8
  8158. Iæm now running the monitor successfully from a State Machine G16 card
  8159. and am extremely impressed with the display quality in the higher-
  8160. resolution modes, which is only marginally down on that of my Eizo
  8161. F550i. While I agree entirely with Stuart Bellæs rationale on 14ö versus
  8162. 17ò monitors (Archive 7.4 p31), for someone who cannot justify the
  8163. expense of the latter, a 14ö monitor and colour card (and, in my case, a
  8164. pair of reading glasses...) would make a relatively economical
  8165. compromise.á Jim Nottingham, York.ááA
  8166. 7.8
  8167. Å  A4 battery pack Ö There may be people who are worried about the idea
  8168. suggested in Hints and Tips last month, p35, of allowing the battery
  8169. pack of an A4 laptop to be run completely flat. Let me reassure you Ö I
  8170. used to race radio-controlled model cars which were powered by the same
  8171. type of Nickel Cadmium battery and serious model car racers always store
  8172. the battery packs completely flat, for weeks on end, precisely to avoid
  8173. the Émemory effectæ mentioned. There is nothing worse than the car
  8174. running out of juice on the last lap Ö especially when you are in the
  8175. lead! The only point to mention is that the discharging should be done
  8176. as slowly as possible for the best results.á Paul Hobbs, Germany.
  8177. 7.7
  8178. Å  A-Link disconnection Ö The A-Link cable can be disconnected from the
  8179. Pocket Book (or Psion 3)  without powering down. However, the computer
  8180. end must never be disconnected while the computer is on because the
  8181. serial port is quite sensitive. NCS.
  8182. 7.7
  8183. Å  A-Link/Psion 3a compatibility Ö Acorn confirm that for the majority
  8184. of uses, A-Link will transfer files between a RISC OS system and a Psion
  8185. 3a. One area where compatibility is not assured is with some formulae
  8186. when transferring a spreadsheet file converted from 3a format to CSV.
  8187. NCS.
  8188. 7.7
  8189. Å  CC Turbo Driver and a printer switch Ö The Computer Concepts Turbo
  8190. Driver which I bought to go with the Stylus, achieves its protection by
  8191. öscramblingò the output to the parallel port, and unscrambling it with a
  8192. special cable. I was afraid that I would not be able to use my printer
  8193. switch to flip between the Stylus, driven by the Turbo, and my old
  8194. (cheaper-to-run) LQ850, driven conventionally. Happily, it seems that
  8195. the Turbo Driver, once it is installed, even though it may not be
  8196. active, scrambles everything that goes through the parallel port. So,
  8197. providing that the öunscramblingò cable is between the Archimedes and
  8198. the printer switch, all is well.á Bill Mapleson, Cardiff.
  8199. 7.7
  8200. Å  CCæs RISCáOS 3 printer drivers Ö For ages, I had problems with CCæs
  8201. RISCáOS 3 printers drivers for Laser Direct (at work) and the BJ10
  8202. TurboDriver (at home). They both complained that they didnæt like one of
  8203. my fonts (Freestyle that I use for my ösignatureò) and suggested I
  8204. switched öQuick Text offò. Unfortunately, unlike the RISCáOS 2 drivers,
  8205. neither of these printer drivers has any configuration that is anything
  8206. to do with öQuick Textò.
  8207. 7.7
  8208. CC themselves couldnæt tell me what the problem was or why it gave the
  8209. error or what I could do about it! Dave McCartney of DataFile came to
  8210. the rescue. (Thanks, Dave.) All you have to do is switch öHalftoneò to
  8211. öGraphics onlyò. This is done by going through Printer Control, through
  8212. Printers Configure and then the Halftone Set. option. If you want to
  8213. continue to avoid halftones on text, remember to Save Choices.á Ed.
  8214. 7.7
  8215. Å  Epson Stylus and RISC OS 2 Ö I recently bought an Epson Stylus 1000,
  8216. a superb printer, able to take A3 paper öbroadsideò, but I found that I
  8217. could not get it to work properly under RISC OS 2. The problem was
  8218. solved once I had installed RISC OS 3.1. If anyone desperately wants to
  8219. make a Stylus work under OS 2, I can supply a work-around for printing
  8220. in text mode, but not in graphics mode. I imagine that the same would
  8221. apply equally to the (A4) Stylus 800, and there is some evidence that it
  8222. might not work under OS 3.0.
  8223. 7.7
  8224. First thing after switching on the Stylus, send a non-printing character
  8225. to the printer by going to the command line (f12) and pressing <ctrl-B>,
  8226. <ctrl-L> and <ctrl-C> (and <return> to get back to the desktop). Then
  8227. all will be well for text printing except that I suspect things might
  8228. hang before the end of a very long file Ö more than 32Kb or 64Kb. I say
  8229. this because, in graphics mode, it hangs after about 32Kb, and in Hex
  8230. Dump mode, it hangs after printing exactly 64K ASCII codes. (64Kb is the
  8231. default size of the input buffer of the Stylus.)
  8232. 7.7
  8233. The logic behind this is that the Stylus seems to need a pause between
  8234. the first and second character that it receives. Thus, immediately after
  8235. switching the printer on, typing at the command prompt (after hitting
  8236. <ctrl-B>) sends everything perfectly to the printer Ö although it will
  8237. wait until it has a few dozen characters before it will deign to
  8238. disgorge any from its buffer. On the other hand, if you program a
  8239. function key with a string of characters, switch on the printer, press
  8240. <ctrl-B>, and hit the function key (so that there are microseconds
  8241. rather than milliseconds between the characters) this will block the
  8242. connection: if the string is sent repeatedly, the Archimedes will
  8243. eventually lock, presumably with its output buffer full. If you then
  8244. press <escape> to clear the buffer, and start hitting the function key
  8245. again, all will be well. However, if the first character of the string
  8246. was different from the second, you will see that the first character is
  8247. printed twice so that the printer received the one character but then
  8248. refused to accept any more. Alternatively, if you send a file to the
  8249. printer (first thing after switching on) the printer and Archimedes will
  8250. lock. If you then abort the print on the Archimedes, and re-print, all
  8251. will be well Ö but with the first character of the file appearing twice.
  8252. 7.7
  8253. Why all this should be so, and why Risc OS 3.1 should solve the problem
  8254. is a mystery; but I suspect that Acorn are aware of it because, in the
  8255. ReadMe file in öPrinters.Canonò on the RISC OS 3.1 App2 disc, there is a
  8256. mention that, under Risc OS 3.00 or earlier, the Canon BJC-800 printer
  8257. will not print anything larger than about 7K ö(the size of the buffer in
  8258. the BJC-800 printer)ò.á Bill Mapleson, Cardiff.
  8259. 7.7
  8260. Å  Equasor Ö One of our customers recently experienced strange problems
  8261. using Equasor. The crosshairs that are used to place the caret when ÉNew
  8262. Equationæ is selected from the Edit submenu simply locked when select
  8263. was clicked rather than disappearing to leave the caret. Equasor
  8264. continued to run and the crosshairs were erased when anything was
  8265. redrawn over the equasor window. It was impossible to create an
  8266. expression.
  8267. 7.7
  8268. The problem was due to the configuration options for WimpDragDelay and
  8269. WimpDragMove both being set to zero. Presumably Equasor saw the mouse-
  8270. click event as a drag rather than a click and did not know how to
  8271. behave. With these set to the default values (5 and 32 respectively) or
  8272. any other non-zero values, the caret appeared as expected.á NCS
  8273. 7.7
  8274. Å  Impression date format Ö The hint last month (p37) about date and
  8275. time formats for Impression Style actually applies to Impression II as
  8276. well. Simply use Impression$DateFormat and Impression$ TimeFormat.á
  8277. Colin Singleton, Sheffield.
  8278. 7.7
  8279. Å  Incorporating formulae into Impression text Ö For quite some time, I
  8280. have been miffed at the trouble I had fitting formulae (both Equasor and
  8281. BestForm) into myámathematical texts. Only the intensive work needed to
  8282. get thoroughly acquainted with the new Impression Style caused me to sit
  8283. down and think about formulae. (Shame on me Ö such a lot of time
  8284. wasted!)
  8285. 7.7
  8286. As there may be one or two amongst you with the same problems, so here
  8287. is what I found out:
  8288. 7.7
  8289. a) Sizeî Ö I used to have to scale the view to something like 400%, then
  8290. change the size of the characters inside the Equasor window by adjust-
  8291. dragging, until it equalled that of the main text.
  8292. 7.7
  8293. What I should have done is this: Either use the same font size in
  8294. Equasor as in Impression, then make sure that the graphic frame is at
  8295. 100% (this can be checked by double-clicking somewhere in the frame,
  8296. thus opening the öAlter Graphicsò dialogue box) or, if the Equasor
  8297. setting is larger, scale the graphics down numerically, again with the
  8298. help of the dialogue box.
  8299. 7.7
  8300. b) Positionî Ö If you embed a small frame containing a formula into the
  8301. text with <ctrl-shift-F>, the text inside the frame will sit above the
  8302. line, because the alignment takes place between the bottom of the frame
  8303. and the line. Therefore I used to place formulae on the page manually,
  8304. which meant that every change to the text above the frame made a new
  8305. positioning necessary.
  8306. 7.7
  8307. Here is what I should have done: Embed the frame, put the caret just to
  8308. the left of it, then use the manual kerning facility to shift the frame
  8309. down with repeated presses of <ctrl-J>. Then all thatæs left to do is
  8310. put the caret to the right of the frame and press <ctrl-U> the same
  8311. number of times to bring the rest of the line back up.á Jochen
  8312. Konietzko, K÷ln, Germany
  8313. 7.7
  8314. Å  Inspiration on RISC OS 3 Ö I have found out how to get the MIDI
  8315. sequencer ÉInspirationæ to work with RISC OS 3.10. Basically, all you do
  8316. is to load both of the template files into a template editor and ensure
  8317. that the ÉSpriteæ option is switched off for all icons. This results in
  8318. a lot of blank icons in the templates, but at least it doesnæt give
  8319. address exceptions whenever you click anything. The writers of the
  8320. program abandoned the project some years ago and the company marketing
  8321. it have ceased trading, so for the moment this is the only fix, unless
  8322. anyone else has found a better way!á Richard Millican, Manchester.
  8323. 7.7
  8324. Å  Keystroke Ö (Here is Edæs monthly crop of keystroking!) If you have
  8325. to add and subtract as many commas as I do, you will appreciate the
  8326. following ideas that I have used. At first, I used <ctrl-alt-,> to add a
  8327. comma at the end of a word. It was just a case of clicking anywhere in
  8328. the word to be commaæd and the key inserted the text ö\S-ë\\êêêê\,ò which
  8329. worked except where the word to be commaæd was at the RH end of a line
  8330. of text Ö because it has to go past the linefeed as well as the space.
  8331. Instead, I now use ö\S-ë\\êêêê\|?, ò as my text string (note the space after
  8332. the comma). In other words, instead of moving back one space from the
  8333. beginning of the following word before adding the comma, it deletes the
  8334. space between the two words and adds comma and space.
  8335. 7.7
  8336. The other change I made to my commaæing function was to move it from
  8337. <ctrl-alt-,> to <ctrl-alt-A>. This means that my right hand doesnæt have
  8338. to leave the mouse to hit <,> while the left hand holds <ctrl-alt>.
  8339. Instead, I can add the comma entirely with my left hand and I can
  8340. continue to look at the text rather than looking down to locate the
  8341. comma key. (Similarly, I remove a character from the end of a word now
  8342. by using <ctrl-alt-Z> (left hand only) which inserts the text ö\S-
  8343. ë\|?|?áò.)
  8344. 7.7
  8345. Other keys I now use include: <ctrl-alt-S> which capitalises (or
  8346. uncapitalises) the next word. It consists of ö\S-ë\|Sò. The point about
  8347. it is that it can auto-repeat and capitalise a whole line of words.
  8348. 7.7
  8349. My invert words keystring has now changed to ö|D\S-ë\|V\S-ê\\S-ê\ò. If you
  8350. compare with the hint last month, all I have done is to add a ömove left
  8351. two wordsò at the end. This means that the cursor is brought back to the
  8352. beginning of the first of the two words inverted. The reason I do this
  8353. is that if I invert two words by mistake, I can immediately see which
  8354. two words have to be re-inverted to restore things.
  8355. 7.7
  8356. Å  Keystroke again Ö Just to show what you can do with Keystroke, I have
  8357. a key which does the following: load my Impression öenvelopeò file,
  8358. adjust the window so that a frame embedded within the file is in the
  8359. centre of the screen, load my standard öletterò file, adjust the size
  8360. and position, insert the date and move the cursor to the position where
  8361. I want to enter the address. I then type in the address and press
  8362. another key which copies the address, brings the envelope file to the
  8363. front, types in the address and prints the envelope. For people I write
  8364. to regularly, I can incorporate the address in the first Keystroke
  8365. sequence so that the whole thing is done with a single keystroke.á Peter
  8366. Howard, Fleet.
  8367. 7.7
  8368. Å  Print margins on HP DeskJet 500 Ö I use a monochrome DeskJet 500
  8369. printer and I have found that the actual print margins are different
  8370. from the öGeneric DeskJetò settings as supplied with the RISC OS 3
  8371. printer drivers. And their A4 margins are different from their Legal and
  8372. Letter ones! The latter are, in fact, close to reality. The Legal and
  8373. Letter (Generic DeskJet) settings give the top and bottom margins as 5.1
  8374. and 20.1 cm respectively, while the A4 (Generic DeskJet) setting gives
  8375. 12.5 and 19.9cm. I use the DeskJet+ driver with the colour options
  8376. turned off and my settings are 5.1cm for the top and 12.0 for the bottom
  8377. margin. The left and right margins, although differing slightly, I leave
  8378. as they are, as I (and most people, I think) usually set wider side
  8379. margins anyway. I leave the Paper Offsets at the supplied DeskJet (and/
  8380. or DeskJet+) setting i.e. 4.23 for X and 0.00 for Y.á Rex Palmer,
  8381. Middlesex.ááA
  8382. Å  A4 battery life Ö Many A4 users may have noticed that the charge of
  8383. the A4 battery becomes shorter after each recharge. Apparently, if the
  8384. battery is not discharged completely it does not run for the full
  8385. capacity upon recharge. One solution is to unplug the battery manager
  8386. from the command line and leave the computer on until the red light
  8387. stops blinking. The battery will then be fully discharged and can then
  8388. be recharged as normal.
  8389. 7.6
  8390. I now leave the battery manager unplugged permanently. I just have to
  8391. make sure I save everything regularly. When the red light flashes to
  8392. indicate the battery being flat, I have a couple of minutes to save the
  8393. latest alterations and shutdown.á Awie Bosman, South Africa.
  8394. 7.6
  8395. Å  Beware the old module! Ö I have discovered that some older (slightly
  8396. badly-behaved) applications load their own modules in their Run file.
  8397. Presumably this is because RISCáOS 2 didnæt have all the modules in ROM
  8398. and an application needing a module newer than the RISCáOS 2 one would
  8399. need to load it itself Ö if it was too lazy to use SysMerge, that is. If
  8400. you have RISCáOS 3, these applications can have the disconcerting effect
  8401. of replacing a RISCáOS 3 ROM module with an older version of the same
  8402. module.
  8403. 7.6
  8404. I came across this when trying to run Almanac Ö I got the error message
  8405. öModule .....$.!System.FPEmulator not foundò. Looking into System
  8406. confirmed that there was no such module under this pathname, and several
  8407. minutes of panic ensued while I played Éhunt the moduleæ. Finally, a
  8408. hard reset seemed to restore Almanac to perfect behaviour, the module
  8409. was restored and I was so relieved that I forgot about the problem for
  8410. some weeks.
  8411. 7.6
  8412. The problem recurred but this time, Ovation would not run either, giving
  8413. a similar message. I realised that, in RISCáOS 3, FPEmulator is in ROM,
  8414. so something must have happened to the ROM module. On checking *Help
  8415. ROMModules, I found FPEmulator was öDormantò. Trying to *RMReinit it had
  8416. no effect. Then I remembered that I had been playing CISæs Mah Jong.
  8417. Sure enough, in the application directory was a copy of FPEmulator and
  8418. in the Run file was the line öRMLoad <obey$dir> FPEmulatorò. Inspecting
  8419. this module showed it to be version 2.60 (the ROM module is 2.87).
  8420. 7.6
  8421. In the Almanac Run file is the line öRMEnsure FPEmulator 2.70 Error You
  8422. need FPEmulator 2.70 or laterò. So, Mah Jong had been quietly loading an
  8423. old module without this being at all obvious until another application
  8424. wanted the ROM version. Deleting the line from Mah Jongæs Run file cured
  8425. the bug but Mah Jong seems to get along only intermittently with the new
  8426. FPEmulator, unpredictably throwing up öinvalid floating point operationò
  8427. errors. (Should it do this? What about öbackwards compatibilityò?)
  8428. Putting öRMKill FPEmulatorò followed by öRMReinit FPEmulatorò at the end
  8429. of Mah Jongæs Run file doesnæt have any effect, but running the same two
  8430. lines in a separate Obey file does work. Does anyone know why?
  8431. 7.6
  8432. The moral would seem to be to inspect the directories of applications
  8433. you have been using if your modules start misbehaving. They may be
  8434. loading all sorts of things you donæt want.á Peter Young, Cheltenham.
  8435. 7.6
  8436. Å  Computer hang-ups Ö Thereæs a hint in Computer Conceptsæ Turbo Drivers
  8437. manual which suggests that if the printer should Éstallæ, selecting
  8438. <f12> followed by <return> will re-start the printer.
  8439. 7.6
  8440. Quite by chance, I found that doing the same thing can occasionally
  8441. clear a computer hang-up. Specifically, it may work when you can still
  8442. move the mouse pointer but clicking on an icon, etc has no effect.
  8443. 7.6
  8444. The beauty of this is that, rather than having to perform a soft or hard
  8445. reset to clear the hang-up and thus losing any unsaved work, you are
  8446. returned to the desktop as it was before selecting <f12> <return>, i.e.
  8447. all windows and documents are restored.á Jim Nottingham, York.
  8448. 7.6
  8449. Å  !FontEd under RISCáOS 3.1 Ö Ronald Alpiaræs problem of invisible
  8450. coordinates in last monthæs Help!!! (7.5 p8), apparently only occurs in
  8451. 256 colour modes. In 16 colours they reappear.
  8452. 7.6
  8453. (I think this could be linked with an obscure problem which one of our
  8454. subscribers has reported to Risc Developments. When using Ovation in
  8455. certain 256-colour screen modes, inverted text, i.e. white on black,
  8456. becomes black on black! Risc Developments say they have a partial
  8457. solution and are working further on the problem. Ed.)
  8458. 7.6
  8459. Å  Keystroke hints Ö Iæve just started using Keystroke myself, in
  8460. earnest, and, quite frankly, it is brilliant! It will save me huge
  8461. amounts of time with all the text editing I do from day to day. For
  8462. example, contributors often say, öPress the menu button to do such and
  8463. suchò instead of öPress <menu>... ò. I now click on ötheò and press
  8464. <alt-f6> and the change is made at a stroke! It is done by making the
  8465. key insert the text |D<60>\S-ë\\ê\<62>|D. The <60> and <62> have to be
  8466. used to create the triangle brackets which, as a beginner to Keystroke,
  8467. confused me for a while.
  8468. 7.6
  8469. I find Impressionæs <shift-ctrl-Q> useful for inverting charactres (sic)
  8470. Ö a very common typing error! However, I sometimes need to change öto
  8471. boldly goò into öboldly to goò (yuk!) so I produced a key, <alt-Q>, to
  8472. invert adjacent words by using |D\S-ë\|V Ö simple but effective Ö just
  8473. put the cursor somewhere in the first word and click <alt-Q>.
  8474. 7.6
  8475. I often have to delete a comma when someone has put one in the, wrong
  8476. place. So <alt-\> generates the string \S-ë\\ê\|? which moves to the
  8477. beginning of the next word, back one space and then deletes one
  8478. character. This has the effect of deleting the final character of the
  8479. word in which you have just clicked, so it could also be used to change
  8480. a plural to a singular. The only time this falls down, of course, is
  8481. when the next word is separated by an extra character like a bracket or
  8482. somesuch.
  8483. 7.6
  8484. These special keys may seem a little unnecessary but to someone who does
  8485. as much editing as I do every day, they can save quite a bit of time.
  8486. 7.6
  8487. Finally, in the days of programmable function keys on the old BBC Micro,
  8488. I used to use |[ to generate an <escape>. This seems to work OK with
  8489. Keystroke and avoids having to use \ESCAPE\ in a text string. I remember
  8490. it because the [ is like an E for escape.á Ed.
  8491. 7.6
  8492. (There are a huge number of time-saving tricks that could be done with
  8493. Keystroke, so do send in your own Keystroke hints & tips. Ed.)
  8494. 7.6
  8495. Å  Resultz and Continental numbers Ö I have just discovered a feature
  8496. offered by Resultz which should delight Continental spreadsheet users.
  8497. The sixth number format in the list offered by the style editor, which
  8498. looks so strange with its character combinations ö,.ò and ö.,ò actually
  8499. is used to replace the English way of writing numbers with the
  8500. Continental one, so that a number like 3,500.50 will appear instead as
  8501. 3.500,50!á Jochen Konietzko, K÷ln.
  8502. 7.6
  8503. Å  RISCáOS !NewLook Ö Now that everybody has had a chance to play with
  8504. the new look desktop as distributed at Acorn World 93 (and numerous
  8505. other sources), we would be interested to hear what you think of it. Do
  8506. you use it? If not why not? Does it do everything it should? How does it
  8507. compare to other user environments (e.g. Windows 3.1, NeXT)? What would
  8508. your ideal RISCáOS 4 desktop look like? Please write to Archive with
  8509. your comments.
  8510. 7.6
  8511. Å  Schedule and Spell (Pocket Book) Ö There seems to be no mention at all
  8512. of Spell in any of the manuals, except for a section in the User Guide
  8513. on how to spell-check in Write. The Schedule release note says that
  8514. öthis replaces the Spell application supplied with your Pocket Bookò,
  8515. but does not tell you that you shouldnæt delete Spell before installing
  8516. Schedule. If you do this, as I did, you find, somewhat oddly, that you
  8517. can check spelling in Write but that you canæt save to the global
  8518. dictionary Ö you canæt, of course, use Spell as a free-standing
  8519. application because it isnæt on the Desktop. If you reinstall Spell,
  8520. from whichever drive you have Schedule in, all works as it should,
  8521. though you have to learn how to use Spell from the Help facility, which
  8522. is very good.
  8523. 7.6
  8524. Nowhere seems to make it plain, however, that to use document
  8525. dictionaries, you have to enable this from the Setup/Install menu in
  8526. Spell. Incidentally, document dictionaries are not kept in the WRD
  8527. directory with öthe same name and in the same directory as the document,
  8528. but with the file extension D$Sò, as the manual says, but in a separate
  8529. D$S directory with the same name as the document.á Peter Young,
  8530. Cheltenham.
  8531. 7.6
  8532. Å  Style Ö Changing date and time formats Ö Impression Style allows the
  8533. current date or time to be inserted into a document. By default,
  8534. Impression Style enters É25th January 1994æ for the date and É6:52:13
  8535. amæ for the time. Both formats may be changed quite easily. You can have
  8536. several different date and time formats stored and swap from one to the
  8537. other while you work.
  8538. 7.6
  8539. The date is inserted in one of three ways.
  8540. 7.6
  8541. Å  By pressing <ctrl-shift-D>
  8542. 7.6
  8543. Å  By clicking on the insert icon on the tool bar and clicking on Current
  8544. date
  8545. 7.6
  8546. Å  From the menu: UtilitiesÖ>InsertÖ>Current date
  8547. 7.6
  8548. The time is inserted in one of two ways
  8549. 7.6
  8550. Å  By clicking on the insert icon on the tool bar and clicking on Current
  8551. time
  8552. 7.6
  8553. Å  From the menu: UtilitiesÖ>InsertÖ>Current time
  8554. 7.6
  8555. The format used for the time and the date is stored in special system
  8556. variables called Style$TimeFormat and Style$DateFormat. These variables
  8557. are not mentioned in the printed manual and are given wrongly in the
  8558. early versions of the on-line help as Impression$TimeFormat and
  8559. Impression$DateFormat. If the user does not set these variables, the
  8560. !Run file sets them automatically.
  8561. 7.6
  8562. To set the variables, find your RISCáOS 3 User Guide and find the
  8563. section on System Variables. This gives a table explaining (not very
  8564. well!) how to set the time and date variables. There isnæt space here
  8565. for a tutorial but the Impression Style defaults are written
  8566. %z12:%mi:%se %pm for the time which appears as É7:27:07 amæ and for the
  8567. date, %zdy%st %mo %ce%yr which appears as É25th January 1994æ.
  8568. 7.6
  8569. You can reset the two system variables temporarily as follows: press
  8570. <f12> and type, for example, Set Style$TimeFormat %z24:%mi then press
  8571. <return> twice to return you to the desktop. Now insert the time in an
  8572. Impression Style document and you should get the current time in the
  8573. format É7:30æ instead of É7:30:01 amæ.
  8574. 7.6
  8575. The ötimeò doesnæt have to be confined to the time Ö you can add the
  8576. date to the time format just as you can add the time to the date format.
  8577. So you could use the ötimeò and the ödateò as two different versions of
  8578. the date.
  8579. 7.6
  8580. When writing letters I like <ctrl-shift-D> to give me É25th January
  8581. 1994æ but when I am writing notes from the telephone, which I do a lot,
  8582. I like to date and time stamp them so I prefer É7:36 Tue 25 Jan 94æ.
  8583. This means that you can have a keyboard shortcut for entering the time
  8584. combined with, or instead of, the date.
  8585. 7.6
  8586. To do this, you just need two Obey files. Load !Edit from the Apps icon.
  8587. From the Edit menu, choose MiscÖ>Set Type and then delete the offered
  8588. Text and enter Obey and press <return>. Into the edit window type:
  8589. 7.6
  8590. Set Style$DateFormat ö%z24:%mi %W3 %zdy %m3 %yr ò
  8591. 7.6
  8592. Press <return> and save the file to disc calling it DateTime. After you
  8593. have double-clicked on this file icon, you should see the current time
  8594. and date in the format É7:36 Tue 25 Jan 94æ.
  8595. 7.6
  8596. You now need another similar file to restore the default. Create another
  8597. Obey file in Edit and this time it should say simply:
  8598. 7.6
  8599. Set Style$DateFormat öò
  8600. 7.6
  8601. When Impression Style sees that the variable is set to null, it uses the
  8602. format in the !Run file. Save this file, preferably as something
  8603. meaningful like DateDeflt.
  8604. 7.6
  8605. Now store the two files on your Pinboard so that you can double-click on
  8606. whichever format you want.
  8607. 7.6
  8608. If you want to change the format automatically, as Style loads on start-
  8609. up, put a line in your !Boot file, after Style is loaded, to set the
  8610. system variables mentioned above. If you want to change the default
  8611. format permanently, you can amend the !Run file in Style though this is
  8612. not normally recommended and you should always keep a backup copy of the
  8613. original !Run file. If you donæt know where to find the !Run file, or
  8614. how to alter it, itæs probably best not to do it!á Paul Lewis, London
  8615. W3.
  8616. 7.6
  8617. Å  Style Ö Saving files as documents Ö Impression Style allows files to
  8618. be saved as documents rather than directories. The advantage is that a
  8619. document takes up far less space than a directory. If you store files
  8620. compressed, perhaps as a backup, a file can be compressed much more
  8621. efficiently than a directory.
  8622. 7.6
  8623. There is no utility to go through your entire hard disc to convert all
  8624. those space-hungry directories into files, but you can convert them as
  8625. you use each directory quite simply. Load a number of the old-type
  8626. Impression documents Ö Style will warn you that the document is in an
  8627. old format and may warn you about things it canæt convert or find.
  8628. Remember that instead of clicking on OK to these warnings, you can just
  8629. press <return>.
  8630. 7.6
  8631. You can load up to sixteen documents, memory permitting. Click in the
  8632. top document and press <ctrl-shift-Y>. That toggles the file save
  8633. routine to save the document as a file rather than as a directory. Press
  8634. <f3> then <return> to save it. Although its name still begins with a
  8635. É!æ, it is now a file and not a directory and will have the Style icon
  8636. instead of the old ÉIæ icon.
  8637. 7.6
  8638. Now press <ctrl-f2> to remove the document from memory and then go
  8639. through the stack of documents in the same way. Itæs not automatic but
  8640. it is quite quick. How much you save will depend on your disc filing
  8641. system but I saved about 14Kb per document. Documents can be stored as
  8642. files but long documents might be best left in the old format,
  8643. especially ones that are so long that you have to load and edit chapters
  8644. separately to fit them in memory.
  8645. 7.6
  8646. If you have a backup of your hard disc (and if you donæt, start one
  8647. now!) you may find that RISCáOS will not overwrite a directory with a
  8648. document of the same name. The answer is to alter a system variable
  8649. called Copy$Options. To do that, press <f12> and enter Set Copy$Options
  8650. F then press <return> twice. That should force RISCáOS to overwrite the
  8651. directory with a file when you backup. There is more on these options
  8652. for copying in the User Manual under *Copy.á Paul Lewis, London W3.
  8653. 7.6
  8654. Å  Tables (again) Ö I often have to make up tables and have always been
  8655. frustrated by the fact that wordprocessors work essentially in lines
  8656. while data for tables usually comes in the form of columns. It would be
  8657. great to be able to pour the data into the WP side by side.
  8658. 7.6
  8659. The only way around it that I have found within Impression is to
  8660. generate sufficient side by side columns. If you want a master page to
  8661. do this, make one with the requisite number of columns and then unlink
  8662. them by cutting and pasting them back with the same co-ordinates and
  8663. dimensions.
  8664. 7.6
  8665. An easier way, particularly for numerical tables but also for text, is
  8666. to assemble the tables in a spreadsheet which will accept column data
  8667. and then transfer the finished arrangement back to the WP in the form of
  8668. a CSV file of the block of data.
  8669. 7.6
  8670. I use Schema which is particularly amenable in that CSV files of data
  8671. can be input just by dragging them onto a marker and columns (data
  8672. separated by returns) will load as columns. It is not necessary to do
  8673. any more than ensure that the sheet is large enough to take the longest
  8674. line/column. If the basic CSV input filter is set on Impression, all the
  8675. commas will be converted to tabs and you get an instant table by
  8676. applying a suitable table style. The input filter, CSV+, in the Business
  8677. Supplement will automatically generate tables for the non-table literate
  8678. Ö in a somewhat complicated way!á Bob de Vekey, Watford.
  8679. 7.6
  8680. Å  Time errors (continued) Ö Further to Matthew Hunteræs item on time
  8681. errors (7.4 p51), the situation is actually significantly more complex
  8682. than described. The CLib time commands will not give the correct answer
  8683. if the cumulative effect of TimeZone and DST (e.g. BST) is negative.
  8684. Setting TimeZone to zero is not going to be a valid solution if you
  8685. donæt live in the UK.
  8686. 7.6
  8687. I encountered this problem some time ago during the development of
  8688. ArcTrack. The problem is particularly acute in this case since the
  8689. program needs to know both UTC (for the orbital mathematics) and Local
  8690. Time (to display to the user). I will attempt below to describe the
  8691. solution which I developed. It may not be the simplest general solution
  8692. but it solved my particular problem.
  8693. 7.6
  8694. This first code fragment determines the difference between local time
  8695. and UTC in seconds. It will be necessary to make a new copy of swi.h for
  8696. RISC OS 3 if this has not already been done. The SWI_List program
  8697. provided with the compiler will achieve this.
  8698. 7.6
  8699. #include öos.hò
  8700. 7.6
  8701. #include öswi.hò
  8702. 7.6
  8703. int utc_offset ()
  8704. 7.6
  8705. {temp ;
  8706. 7.6
  8707.   os_swi2r (Territory_ReadCurrentTimeZone, 0, 0, (int*) NULL, &temp);
  8708. 7.6
  8709.   return temp / 100; /* Output of SWI is in centiseconds */
  8710. 7.6
  8711. }
  8712. 7.6
  8713. The secret of extracting the correct current value of UTC time is to use
  8714. os_word 14, thus:
  8715. 7.6
  8716. #include öos.hò
  8717. 7.6
  8718. double utc_time () /* Would be significantly simpler if long ints were
  8719. 64 bits */
  8720. 7.6
  8721. {{ unsigned int a, b; }
  8722. 7.6
  8723.   double un_int = 4294967295.0;
  8724. 7.6
  8725.   struct five_byte now = {3 , 0};
  8726. 7.6
  8727.   os_word (14, (void*) &now);  /* Determine current UTC time */
  8728. 7.6
  8729.   return((double) temp.a + (double) temp.b * un_int) /100.0;
  8730. 7.6
  8731. }
  8732. 7.6
  8733. The value returned is the number of seconds since 1st January 1900. Of
  8734. course, this is not the same as the time_t values returned by the CLib
  8735. Étimeæ function. To convert to time_t values, you could assume
  8736. (correctly) that they are unsigned integers representing the number of
  8737. seconds since 1st January 1970. Just remember that, under ANSI C, this
  8738. simple representation is not guaranteed and Acorn are perfectly entitled
  8739. to change it in future compiler releases.á R C Simpson,  Farnborough.
  8740. 7.6
  8741. Å  Writing extensions to PC Discs Ö Some people have had difficulty
  8742. writing to PC discs and giving a file an appropriate extension that a PC
  8743. will be able to read Ö the infamous README.TXT file, for example.
  8744. RISCáOS 3 gives desktop access to DOS discs but it makes the discs
  8745. appear as a standard RISCáOS disc. The only way to tell that it is
  8746. different is to check the size using free or current format from the
  8747. floppy disc iconbar menu.
  8748. 7.6
  8749. The problem arises due to the different way in which RISCáOS and DOS use
  8750. directory specifiers. DOS uses the É/æ character to specify a
  8751. subdirectory whereas RISCáOS uses the full stop. The DOS path öSOME/DIR/
  8752. STRUCTò would be öSOME.DIR.STRUCTò within RISCáOS . Therefore, if you
  8753. try to write the file README.TXT to a RISCáOS disc, what you are
  8754. actually trying to do is save the file TXT into a directory called
  8755. README Ö which probably does not exist.
  8756. 7.6
  8757. To write a file with an extension, use the É/æ character, e.g. README/
  8758. TXT. This can be a little confusing because, if you write the file to an
  8759. Acorn formatted disc, the É/æ character will be part of the filename but
  8760. if you write to a DOS disc, the file will be saved as ÉREADMEæ with an
  8761. extension of TXT. The screenshot below shows the RISCáOS directory
  8762. display and the PC Emulator directory showing that the file does appear
  8763. with an extension.
  8764. 7.6
  8765. Many save boxes will only allow you to use names of up to 10 characters
  8766. Ö this therefore limits you to a six character filename (with a four
  8767. character extension ö/XXXò). However, the DOS filer within RISCáOS will
  8768. allow you to rename a file to eight characters, giving a total of
  8769. twelve.
  8770. 7.6
  8771. It should also be noted that if you copy a file from a DOS disc to a
  8772. RISCáOS disc and back again, the extension may change. This is again due
  8773. to the name length restrictions. README2.TXT would be copied as README2/
  8774. TX for RISCáOS . When copied back to DOS, the file would therefore be
  8775. README2.TX.á Matthew Hunter, NCS.ááA
  8776. 7.6
  8777. Hints and Tips
  8778. 7.5
  8779. Å    CC Turbo & Laser Direct Drivers Ö A few people have discovered a
  8780. problem that occurs when you try to run the RISC OS !Printers after
  8781. having run a Turbo Driver or a Laser Direct driver. The error öModule
  8782. PDriver 3.16 or later is requiredò appears. To clear this, do a
  8783. *RMReinit PDriver before using the Acorn driver.
  8784. 7.5
  8785. Å    File copying on floppies Ö When copying from one floppy to another,
  8786. the overall copy time can be reduced by opening the task manager and
  8787. dragging the Next slot to 800Kb (or 1600Kb for an HD disc if you have
  8788. the memory). This means that the next task to request space (i.e. the
  8789. filer) will have enough space to read in the entire contents of one
  8790. floppy, so that you donæt have to swap discs more than once.
  8791. 7.5
  8792. On large copy jobs (say between two hard discs) the larger area the
  8793. filer gets, the faster the copying because fewer reading/writing cycles
  8794. will be needed. You can either adjust the Next slot or, once copying has
  8795. begun, drag out the Filer Action Window task as large as it will go.
  8796. When copying is complete, the space is regained.
  8797. 7.5
  8798. Å    Floptical drives and faulty floppies Ö An article in a German PC
  8799. magazine claimed that, due to their much more elaborate construction,
  8800. flopticals drives could handle many discs which caused normal floppy
  8801. drives to give up; I can report to all floptical owners that this claim
  8802. holds true for the Acorn world, too.
  8803. 7.5
  8804. A software upgrade arrived on a disc which my floppy drive could not
  8805. read Ö a disc error 08 was reported and Verify found a massive 56
  8806. defects! My floptical drive, however, had no problem at all with the
  8807. disc Ö it verified OK and the software could be loaded and runs
  8808. perfectly. So, when the readability of a disc is a borderline case,
  8809. giving the disc to the floptical drive to read might well help.á Jochen
  8810. Konietzko, K÷ln, Germany
  8811. 7.5
  8812. Å    Printer driver problem Ö öSWI &42940 Not knownò. This error was
  8813. reported recently in another printer driver problem. A quick look at the
  8814. PRM showed this to be a BufferManager SWI. The buffer module had become
  8815. unplugged which was causing the problems. It is not such an obvious
  8816. problem though because the error appears to come from the printer
  8817. driver. The solution is to press <f12> and type *RMReinit BufferManager
  8818. <return> and then another <return> to get back to the desktop.ááA
  8819. 7.5
  8820. Hints & Tips
  8821. 7.4
  8822. Å    Backing up PC partitions. When backing up a PC partition (with
  8823. filetype DosDisc) from a HardDrive with RISC OS 3 the ADFS sees the
  8824. files in the partition as individual files so backs them up as such. So
  8825. when you come to reinstate the partition afterwards the PC partition
  8826. will no longer work, i.e. it will be a normal directory with files in.
  8827. The way to overcome this is to reset the file type to Text before
  8828. backing up and change it back afterwards.á Brian Cocksedge, W Sussex.
  8829. 7.4
  8830. Å    Elite Cheat. On this monthæs program disc (ú2 through Archive) is a
  8831. cheat for Elite v1.02 made with The Hacker program from DoggySoft. The
  8832. cheat allows you to do more than the normal game will allow. The
  8833. functions are made by using the right Ctrl key and some other keys not
  8834. used in the game. Load the cheat module after you have the Elite
  8835. commander on the iconbar and read the instructions carefully. It enables
  8836. you to stop dead in space, go like a bat out of hell, have loads of
  8837. energy bombs (useful for blasting those rock grabbers), have an
  8838. indestructible energy unit, unlimited rockets and, as a small bonus,
  8839. kills the asking of the word from the book when saving a commander file
  8840. after you have run the game, back to the Desktop (saving time).
  8841. SáEdwards, W Midlands.
  8842. 7.4
  8843. Å    Epson Stylus 800 cartridge life Ö When the cartridge I had in my new
  8844. Epson Stylus 800 ran out after it had printed only about 300 to 400
  8845. sheets (instead of the quoted 700), I contacted Epson to discuss the
  8846. matter! They asked whether I pressed Pause before switching off the
  8847. printer. I said I did not and asked why it was important. They told me
  8848. that it was because the printer goes through the print head cleaning
  8849. process on every start-up unless Pause is pressed before switch-off. It
  8850. is only necessary to clean the print head öabout once a monthò. They
  8851. admitted that this is not mentioned in the manual(!), so I thought I
  8852. would pass this gem of information on to other Archive subscribers!á
  8853. Stan Haselton, Abbots Langley.
  8854. 7.4
  8855. Å    JP150 sheet feeder Ö Owners of JP150 printers may be interested to
  8856. know that the sheet feeder for the Integrex Betajet seems to be exactly
  8857. the same as the one for the JP150. The good news is that the Integrex
  8858. one costs approximately ú40 +VAT (ú47) as against ú77 inc VAT. I wonder
  8859. why the Acorn product is so much more expensive?á Alan Shelton, Sutton-
  8860. in-Ashfield.
  8861. 7.4
  8862. Å    Magazine storage Ö An alternative to the Archive magazine binders is
  8863. to use what are called K-Bins which are basically topless cardboard
  8864. boxes. They are designed for storing components but work quite nicely
  8865. for Archive magazines and cost about ú1.15 each. I am happy to supply
  8866. them to people at cost plus postage Ö let me know if you are interested.
  8867. Bob Ames, Dept of Music, City University, Northampton Square, London
  8868. EC1V 0HB.
  8869. 7.4
  8870. Å    Mouse mat grooming Ö Next time you groom your mouse, take a look at
  8871. your mat. If it has a layer of stubborn fibres, cat hairs etc, try using
  8872. one of those rolling, tacky lint removers that you use on suits and
  8873. jackets.á Nik Kelly, Liverpool.
  8874. 7.4
  8875. Å    PC card and screen blanking Ö After installing a new hard drive, I had
  8876. to re-install everything and set the computer up as though it were new.
  8877. While I was restoring some of the PC programs, my screen went blank and
  8878. no keypresses would bring it  back. What seemed odd was that the
  8879. computer was still working, reading the disc.
  8880. 7.4
  8881. Each time this happened, I reset the computer and then, when I was at
  8882. Acorn World 93, I had a word with Aleph One. They explained that, when
  8883. the PC card had öinput focusò all keystrokes were passed through to the
  8884. card and so RISC OS was unaware that keys had been pressed Ö so the
  8885. screen blanker was coming into operation and was locking in the blank
  8886. state. Because of this, I would need to disable the screen blanker in
  8887. order to use the PC card.
  8888. 7.4
  8889. As I donæt use the blanker very much, it was only a slight nuisance, but
  8890. I carried out an experiment and found out that mouse movement was still
  8891. done via the main operating system. Because of this, all that is needed
  8892. to get the screen back is a very slight movement of the mouse.
  8893. 7.4
  8894. I suppose that if you were wanting to work with text in a word processor
  8895. it would be a good idea to disable the screen blanker, but most of the
  8896. time it is unnecessary.á David Wild, Hemel Hempstead.
  8897. 7.4
  8898. Å     Scanners and Turbo Drivers Ö A slight problem for users of Turbo
  8899. Drivers is that, sometimes, the printout from ArcFax with CCæs scanner
  8900. becomes garbled for no sensible reason. The solution is to turn your
  8901. printer on. It does not have to be online but just switched on. It works
  8902. every time.á Tord Eriksson, Sweden.
  8903. 7.4
  8904. Å    Time errors Ö Recently, I found that whilst !Alarm, and indeed most
  8905. other applications, could work out the correct time, those I had written
  8906. in C were wildly inaccurate (over a year and a half out!).  The same
  8907. program would work fine on the office A5000 but on my RISC OS 3 A3000,
  8908. it refused to give me anything but 1995.  Finally, I tracked the problem
  8909. down to the Territory Manager (literally just by chance, I was actually
  8910. looking up Étimeæ in the PRMæs and spotted it.  Somehow the configured
  8911. timezone was Ö23:45, well outside the allowed limits of +/Ö13 hrs.
  8912. !Alarm took off the correct value but when I reset it to zero, the
  8913. machine jumped ahead by a day. Why CLib gave such a large error, I donæt
  8914. know.á Matthew Hunter, NCS.ááA
  8915. 7.4
  8916. Hints & Tips
  8917. 7.3
  8918. Å    Two independent stories with Ovation Ö Richard Hallas demonstrated an
  8919. excellent method of creating two independent stories with Impression in
  8920. the ÉHints & Tipsæ column (Archive 6.12 p27). To perform a similar task
  8921. with Ovation is not quite so easy but there is a way that this layout
  8922. can be obtained.
  8923. 7.3
  8924. Double-click on the Ovation application to load it onto the iconbar.
  8925. Click <menu> over Ovationæs icon and select the ÉNew Documentæ option.
  8926. From this menu, choose the A4 page, ÉPortraitæ orientation and single
  8927. column options. For this example, I will create two independent columns
  8928. on an A4 sized page. Similar layouts can be created with other page
  8929. sizes.
  8930. 7.3
  8931. Once Ovationæs main window has been opened, click <menu> and select the
  8932. ÉPageæ menu. From this menu click on ÉShow Master Pagesæ. You will now
  8933. see Ovationæs master page for the A4 document. Ovation, unlike
  8934. Impression, does not allow you to delete any frames on the master page.
  8935. Alter the width of the A4 frame by choosing ÉObjectæ from Ovationæs main
  8936. menu and then from the ÉObjectæ menu select ÉModify Frameæ.
  8937. 7.3
  8938. Set the main frame width to 90mm and height to 255mm. After modifying
  8939. the frame it will be displayed on the left hand side of Ovationæs master
  8940. page. Now create an identical sized text frame, using the text frame
  8941. icon on Ovationæs tool bar, and place it on the left hand side of the
  8942. master page, making sure that it aligns perfectly with the left hand
  8943. frame. Check with Ovationæs ÉModify Frameæ option that this newly
  8944. created frame has identical dimensions to the previously created frame.
  8945. At this stage, any header or footer frames should be added to the master
  8946. page. You may well have to alter the height of both main text frames to
  8947. accommodate the header and footer frames.
  8948. 7.3
  8949. Now quit the master page and return to Ovationæs main window. Ovation
  8950. still displays the original A4 frame outline. To display your newly
  8951. created dual frame layout, you will need to select the ÉPageæ option
  8952. from Ovationæs main menu. From this ÉPageæ menu select the ÉInsert Pageæ
  8953. option and a box ÉInsert Pagesæ will appear on the screen. Click on ÉOKæ
  8954. and the newly created page will now be displayed in Ovationæs window.
  8955. 7.3
  8956. If you have already created two independent text stories with another
  8957. word processing package, you will need to have both stories saved as
  8958. plain text files, ready to drop into each newly created Ovation frame.
  8959. 7.3
  8960. Click <select> on the first of these text stories and drag the file into
  8961. Ovationæs left hand main frame, making sure that this frame is the one
  8962. selected. The text will fill the frame and generate the necessary number
  8963. of linked frames to accommodate the story. Remember that this left hand
  8964. frame was originally Ovationæs A4 master page frame, adjusted to the
  8965. required size to accommodate another frame alongside it.
  8966. 7.3
  8967. If you now select and drag the other text story into Ovationæs right
  8968. hand frame, you will notice that only the first right hand frame will
  8969. fill with text, and that Ovationæs text overflow arrow is displayed at
  8970. the bottom of this frame. For the text in this right hand frame to flow
  8971. through the length of the entire document, you will need to select the
  8972. ÉLink Frameæ option from Ovationæs tool bar. Once this has been
  8973. selected, you must then individually link each right hand frame
  8974. throughout the length of the document. As you link each right hand
  8975. frame, you will notice that the text story flows from the previous
  8976. frame. Note that you can choose the ÉLink Frameæ option from the tool
  8977. bar with <adjust>. If this is done, this option will remain selected,
  8978. but will significantly slow down the scrolling speed of pages.
  8979. 7.3
  8980. It is most important to drop the first text story into Ovationæs left
  8981. hand frame. This is the frame that generates automatically linked frames
  8982. as the text flows throughout the document.
  8983. 7.3
  8984. Ovation can, of course, be used to produce the original stories, with
  8985. the proviso that the left hand frames are used to write the first story.
  8986. If required, the two frames on Ovationæs master page may be swapped
  8987. over, so that the first story can be set in the right hand frame.á Mike
  8988. King, Guernsey.ááA
  8989. 7.3
  8990. Hints and Tips
  8991. 7.2
  8992. Å    ArcDFS under RISC OS 3 Ö It has been reported on numerous occasions
  8993. that ArcDFS doesnæt work under RISC OS 3 Ö not true! (Or at least only
  8994. partly.) If a disc reports a failure, change the disc TITLE (using
  8995. appropriate option) to öò, i.e. an empty string, and hey presto!!
  8996. 7.2
  8997. Why is that necessary? I have not yet had a chance to bury myself in the
  8998. code to find out, Iæm afraid.
  8999. 7.2
  9000. Note: The only other option that doesnæt work is Free, but personally I
  9001. donæt think thatæs much of a problem. Format and Verify both work OK.
  9002. 7.2
  9003. P.S. Make sure the Step timings are set to those values given in the
  9004. original documentation, as they are reset when upgrading to RISC OS 3.á
  9005. R.áGeorge, Cambridge.
  9006. 7.2
  9007. Å    Grey Scales Ö I frequently use Draw to produceádiagrams for inclusion
  9008. in text produced using Impression, or for independent printing. The
  9009. drawing package which comes with RISCáOSá3 generally satisfies my needs.
  9010. 7.2
  9011. One facility which I often need is a grey scale which will produce
  9012. distinct shades on my LaserDirect printer, with the minimum of
  9013. Égraininessæ. Ignore the adverts which proclaim 256 Grey Shades! If you
  9014. need a Éseamlessæ transition from black to white, this is fine, but if
  9015. you want to print blocks of greys which all look different, you will be
  9016. lucky to manage 16 shades.
  9017. 7.2
  9018. The simplest approach to this problem is to try using the colours on the
  9019. palette. It can be helpful to have the features of your diagram
  9020. highlighted in blue, red, green, etc on the screen, but how will they
  9021. appear printed in black-and-white? If you use the default palette (which
  9022. I do not!) the 16 colours come out in various shades of grey, as shown
  9023. below. The squares are labelled with the appropriate colour numbers, and
  9024. arranged from white to black. These squares appear on my Impression
  9025. screen, of course, in glorious technicolour.
  9026. 7.2
  9027. I cannot be sure how this will turn out if Paul prints it in Archive,
  9028. but on my printer there are only seven, perhaps just eight,
  9029. distinguishable shades. They are all fairly grain-free, printed at
  9030. 600╫600 dpi, so a suitable selection can be used. If you want them to
  9031. appear on the screen as shades of grey, use Écoloursæ
  9032. 0ááâ2áá1áá2áá3áá4áá5(?)áá7. If you prefer them displayed in colour, use
  9033. the series 0ááâ2áá9ááâ4ááâ5ááâ0áá5(?)áá11áá7.
  9034. 7.2
  9035. I have continued this investigation to attempt to find the best possible
  9036. grey scale using colours not necessarily on the palette. I have
  9037. restricted my investigation to grey Écoloursæ, i.e. those using the
  9038. same, or similar, intensities of red, green and blue. That is enough to
  9039. be going on with!
  9040. 7.2
  9041. !Draw allows you to select each of the three components on a scale
  9042. 0Ö255. The !Palette utility only allows 16 intensity levels for each
  9043. component (producing the 4096 standard colours), so I have started with
  9044. this restriction. Representing the 16 degrees of intensity by the hex-
  9045. digits 0ÖF, and allowing a difference of only one between the three
  9046. components, I have devised the 16-grey-shades scale shown below.
  9047. 7.2
  9048. How these colours appear on your screen depends on what palette you are
  9049. using. In front of me now, I can see shades of buff/brown, because I
  9050. have modified the standard, rather harsh, palette. You could try setting
  9051. up a palette using these as colours 0Ö15. The result on the screen is
  9052. pretty horrible! The result in print, however, is quite good, although
  9053. the lighter shades are a bit grainy.
  9054. 7.2
  9055. Using the Fill Colour facility of Draw gives us greater flexibility,
  9056. because we can select from 0Ö255 for each primary colour. To keep things
  9057. fairly simple, I have tried only Épure greyæ shades, in which the
  9058. intensities of red¡green¡blue are always the same. This gives 256 shades
  9059. to try.
  9060. 7.2
  9061. Using this technique, LaserDirect clearly does not print 256 shades.
  9062. Groups of four consecutive shades always appear identical, so our
  9063. selection comes down to 64 shades. I printed blocks of these shades,
  9064. each identified by the intensity number used for each of the three
  9065. components, 0á=áblack ... 255á=áwhite. The shades which show the least
  9066. grain are, for some reason, those numbered 243áá235áá227áá219ááetc, i.e.
  9067. those whose codes are 8k+3.
  9068. 7.2
  9069. There are 32 such shades, but adjacent ones are very similar in print,
  9070. often apparently identical. In an attempt to create a usable scale, I
  9071. have selected ten of these codes (235 219 203 187 171 155 139 123 99 and
  9072. 67) plus 0 (black) and 255 (white). These are the shades which I will
  9073. try for my next few Draw diagrams. Even these shades show little
  9074. difference between adjacent pairs, and it is desirable to use alternate
  9075. ones only, if possible.
  9076. 7.2
  9077. Colin Singleton, Sheffield.
  9078. 7.2
  9079. Å    Hard disc usage Ö How much space do my hard disc files occupy? The
  9080. answer depends on how I try to measure them! My investigations resulted
  9081. in the recovery of 5.6Mb (13%) from an unexpected source which I donæt
  9082. think has been mentioned previously in Archive.
  9083. 7.2
  9084. We all know that the disc usage figures given by *Free and *Count are
  9085. different. *Count returns the total number of data bytes in the files,
  9086. in my case 22.3Mb. *Free returns the total number of bytes used (or
  9087. reserved) on the disc, in my case 42.8Mb. These are different for at
  9088. least two reasons.
  9089. 7.2
  9090. Firstly, disc space is allocated to files in units which vary from drive
  9091. to drive. In the case of the Acorn SCSI on my A540, this unit is 1Kb.
  9092. Hence, on average, 512 bytes is wasted at the end of each fileáÖáthis is
  9093. included in the bytes used returned by *Free, but not by *Count. For the
  9094. 5,134 files on my drive, this totals 2.5Mb.
  9095. 7.2
  9096. Secondly, some space is reserved for each Directory Header. The Index
  9097. occupies 2Kb, irrespective of the drive and filing system which, for my
  9098. 1204 directories, amounts to 2.4Mb, increasing *Count to 24.7Mb.
  9099. However, SCSIFS reserves a larger allocation per directory, as noted by
  9100. several Archive readers, including Steve Drain (Archive 5.12). On the
  9101. A540, each directory is allocated 15Kb, of which only 2Kb is occupied by
  9102. the Index. Some of the rest may, if I am lucky, be occupied by small
  9103. files subsequently created within the directory. If I am unlucky, I lose
  9104. 13Kb per directory. For my 1204 directories, this could amount to
  9105. 15.3Mb.
  9106. 7.2
  9107. Adding this 15.3Mb to the 2.5Mb noted above, gives a maximum wastage of
  9108. 17.8Mb. The actual discrepancy, however, was 42.8 Ö 24.7 = 18.1Mb, so
  9109. there must have been something I hadnæt discovered. In order to
  9110. investigate, I considered my disc directories in three groups, as
  9111. identified in the table overleaf.
  9112. 7.2
  9113.  
  9114. 7.2
  9115. The largest is headed by a directory called Documents. This contains all
  9116. my Impression documents, plus a large number of drawfiles and several
  9117. hundred old First Word Plus text files retained for reference. When I
  9118. discovered the 13Kb per directory wastage, I realised that Impression,
  9119. which normally uses three directories per document, was wasting a great
  9120. deal of space.
  9121. 7.2
  9122. I tackled this problem some time ago, by saving most of my Impression
  9123. documents as Text only. This Impression feature in fact stores the
  9124. Styles with the text, but does not store graphics or frame data. If I
  9125. drag one of the resulting text files onto the Impression icon on the
  9126. iconbar, this displays the text in its original fonts, sizes, etc. If,
  9127. instead, I drag the text of a letter into the document which contains a
  9128. Éblankæ letterhead, the letter is restored exactly as it was originally
  9129. createdáÖ provided it contained no graphics and no frames other than
  9130. those defined in the letterhead document.
  9131. 7.2
  9132. I was thus able to store most of my Impression documents as Text only,
  9133. and recover several megabytes, without losing anything. This was done
  9134. some months ago, before the exercise I am describing here. At that time,
  9135. I also compressed all these Édocumentæ files, using Compression and they
  9136. are now read and written using Cfs. Some of the other directories on my
  9137. disc are also held in compressed form and are identified below as Other
  9138. Cfs. The rest (mainly fonts and software) are not compressed and are
  9139. identified as Non-Cfs.
  9140. 7.2
  9141. The table shows the *Count for each group of files and the *Count
  9142. obtained via Cfs, which shows what the count would have been if the
  9143. files had not been compressed. For interest, I have also shown the sizes
  9144. of the backups for each category. These were obtained using by !Backup,
  9145. into a temporary directory on the same disc and noting the *Counts of
  9146. the backup data directories created (excluding the recovery software
  9147. stored with the backup data). !Backup uses !Spark compression which, we
  9148. can see from the figures, has some effect on the Non-Cfs files. For the
  9149. others, however, no further compression is possible and the backup
  9150. actually uses more space than the live files, owing to the directory
  9151. structures and other parameters stored by !Backup.
  9152. 7.2
  9153. In order to assess the Actual Mb used for each group, I copied (by
  9154. dragging) each in turn into a temporary directory on the same disc and
  9155. noted the decrease in *Free bytes. Then I discovered that the three
  9156. figures obtained did not total the Used bytes given by *Free for the
  9157. whole discáÖáthe discrepancy being over 5Mb. After some experimentation,
  9158. I concluded that the copying process did not produce a precise Écloneæ
  9159. occupying the same space as the original. The only way to discover the
  9160. space occupied by a group of directories is to delete it and note the
  9161. increase in *Free bytes.
  9162. 7.2
  9163. Hence I copied each group in turn, then deleted the original, rather
  9164. than the copy, and noted the change in total usage arising from the
  9165. deletion rather than the copying. The copies were then retained in place
  9166. of the originals. This process not only revealed the true original
  9167. sizes, but also gained 5.6Mb free space, because the copies occupied
  9168. less space than the originals!
  9169. 7.2
  9170. Where did this windfall come from? The first point to note is that it
  9171. was all gained in the Documents directories. These have been very active
  9172. in the past. Apart from the usual process of addition and amendment of
  9173. documents, the filing system has also had to endure the process of
  9174. replacing most of the Impression documents with text files, the
  9175. compression of all the files and, recently, a major exercise of
  9176. restructuring the directories and renaming most of the files. Many of
  9177. the recent changes were made by copying files, then deleting the
  9178. originals, rather than by renaming. All this activity must have produced
  9179. considerable small-scale fragmentation of the free space, which is
  9180. perhaps not mapped and included in the *Free bytes. *Compact (which
  9181. should not be needed with this filing system) did produce a
  9182. simplification of the free space *Map, but did not change the number of
  9183. *Free bytes. Copying the files in sequence, however, produces a new
  9184. directory with no fragmented waste.
  9185. 7.2
  9186. As a result of all this, I can now calculate the wasted space as 8.5Kb
  9187. per directory, instead of an apparently impossible 13.3Kb. If I could
  9188. recover all of this, I would save another 10Mb in total, but that seems
  9189. to be impossible. I could recover perhaps three quarters of it by re-
  9190. formatting the disc using a smaller File Allocation, except that I donæt
  9191. want to do that unless it is really necessary, and in any case, I donæt
  9192. appear to have the right Format program ...!á Colin Singleton,
  9193. Sheffield.
  9194. 7.2
  9195. Å    Image enhancement Ö I think I can offer a solution to Cain Huntæs
  9196. request for a cheap image enhancer (7.1 p26). With hindsight, I might
  9197. have included the information in the notes on colour printing (7.1áp35).
  9198. Version 0.90 of Acornæs !ChangeFSI application comes Éfreeæ on the RISC
  9199. OS 3.1 Support Disc and its many facilities include most of the sprite
  9200. processing options I suggested; brightening and gamma correction for
  9201. example. It also accepts some foreign formats (e.g. TIFF), converting
  9202. them to sprites.
  9203. 7.2
  9204. The documentation is not so hot. There seems to be nothing between the
  9205. rather sketchy notes starting on page 207 of the RISC OS 3 Applications
  9206. Guide and the detailed but very complex FSIinfo file in the !ChangeFSI
  9207. directory. However, this desktop application is intuitive to use, and
  9208. trial and error will often produce the desired result. Although it is
  9209. possible to apply two or more processing functions in parallel, I do
  9210. support the notesæ recommendation to operate on an unmodified file and
  9211. try changing only one parameter at a time.
  9212. 7.2
  9213. The only process I would like to see added to !ChangeFSI is Chameleonæs
  9214. ÉWeakenæ function which, for me, seems to give more effective control of
  9215. colour sprites than Brighten.
  9216. 7.2
  9217. I spotted a documented facility in !ChangeFSI which allows very large
  9218. output files to be built in Éstripsæ using the parameter ChangeFSI
  9219. <source address><destination address>28-max<n> where n is the desired
  9220. size of the strip, e.g. 512Kb. I wonder if some very clever person might
  9221. be able to use this as a basis for a utility to transfer large
  9222. TIFFáfiles between Archimedes/PCs/Macs, split between two or more MS-DOS
  9223. floppy discs?
  9224. 7.2
  9225. As a further postscript to the colour printing notes, a reader has
  9226. recommended Hewlett Packard HP 92296U transparencies for my Canon LBP-4;
  9227. about 32p each. Iæve since tried them and the results, especially on 600
  9228. dpi graphics, are excellent.á Jim Nottingham, York.
  9229. 7.2
  9230. Å    Indelible ink Ö At long last, there is an indelible ink refill
  9231. available for HP Deskjet cartridges. They are available from Misco
  9232. Computer Supplies, Faraday Close, Park Farm Industrial Estate,
  9233. Wellingborough, NN8 6XH. A two-refill kits costs ú13 plus postage.á Mike
  9234. King, Guernsey.ááA
  9235. Hints and Tips
  9236. 7.1
  9237. Å    A300/400 floppy drive problems Ö On the old A310 and A440 machines,
  9238. the disc drive has a cover on the head which has a notorious tendency to
  9239. fall off but the drive is not affected by a missing cover. A far more
  9240. usual fault on A310 drives is that the eject button falls off. This can
  9241. easily be fixed with glue. (Do take the drive out of the machine first
  9242. so you donæt glue the button to the front of the computer!)
  9243. 7.1
  9244. On the old machines (with only the disc drive button sticking out
  9245. through the front fascia) you have no option but to replace them with an
  9246. identical Sony drive mechanism (ú102 through Archive Ö Ouch! Ed.) but on
  9247. the newer machines, like the A410/1, you can use most 720Kb drives
  9248. available. (Are you sure? Ed.) Knut Folmo, Norway.
  9249. 7.1
  9250. Å    Bespoke appointmentsæ calendar Ö I have written a program (on the
  9251. monthly program disc) to generate an Impression-based appointments
  9252. calendar and would like to share it with other people, courtesy of
  9253. Archive magazine. Using the program avoids filling in all those
  9254. birthdays, etc every year. Itæs all done automatically from a text file.
  9255. Itæs written in Basic and has no glitzy front end but it works OK.á Ian
  9256. Summers, Norwich.
  9257. 7.1
  9258. Å    Elite Ö A space station exists in witch space. After killing all the
  9259. other ships, switch to one of the status screens (f8?) and the compass
  9260. will reappear. By jumping repeatedly in that direction, you can
  9261. eventually find it. This station is strange in many ways and, while you
  9262. are experimenting, it is worth noting that its existence changes while
  9263. you are looking at the status screen. Try docking and shooting while
  9264. using <f8>.á Geoff Scott, Northampton.
  9265. 7.1
  9266. Å    Form feeds in printer drivers Ö I would like to respond to Mick Dayæs
  9267. comments about form feeds (6.12 p57). The terminal form feed is
  9268. definitively (now thereæs sticking my neck out) configurable. Mick does
  9269. not say whether he is using text or graphics output to his printer but
  9270. for the dot matrix drivers this is what happens.
  9271. 7.1
  9272. Text output:-
  9273. 7.1
  9274. send
  9275. 7.1
  9276. StartTextJob code
  9277. 7.1
  9278. SetLines code plus byte to set the page depth in text lines
  9279. 7.1
  9280. [your text formatted as per option set, eg none or draft highlights etc
  9281. using specified line feed/ linefeed cr codes]
  9282. 7.1
  9283. {gets to the end of a page
  9284. 7.1
  9285. [more text as above]}
  9286. 7.1
  9287.        .
  9288. 7.1
  9289.        .  repeat above for number         of pages
  9290. 7.1
  9291.        .
  9292. 7.1
  9293. EndTextJob code (this usually includes a Form Feed in the codes sent)
  9294. 7.1
  9295. For graphics you have:-
  9296. 7.1
  9297. SetLines code plus byte as above
  9298. 7.1
  9299. PageStart code
  9300. 7.1
  9301. [Graphics data using specified control strings]
  9302. 7.1
  9303. @{of a page
  9304. 7.1
  9305. PageEnd code
  9306. 7.1
  9307. SetLines code as above
  9308. 7.1
  9309. PageStart code
  9310. 7.1
  9311. [Graphics data as above]}
  9312. 7.1
  9313.       .
  9314. 7.1
  9315.       . repeat for number of            pages
  9316. 7.1
  9317.       .
  9318. 7.1
  9319. GraphicsFormFeed code PageEnd code
  9320. 7.1
  9321. thus, by defining your form feed character in the driver definition file
  9322. to be nothing, form feeds can be suppressed. Remember though that it
  9323. needs to be done for each graphics resolution and each text definition.
  9324. 7.1
  9325. I have a dummy printer def file which replaces the genuine control codes
  9326. with strings to illustrate what is going on. If it is merged into
  9327. !Printersæ Printer control window and set to print to file, output from
  9328. it can be viewed in !Edit to see what is going on. If a multipage text
  9329. file is dragged to it, the effect of text control codes can be viewed,
  9330. and similarly with graphics. The ideal is a two-page document using
  9331. outline fonts with, say, just one character at the bottom of each page
  9332. so that there is not too much graphics garbage to wade through but
  9333. mostly LineSkip codes. The printer def file and a suitable text test
  9334. file are on the Archive monthly disc. It includes a ÉGraptestæ file
  9335. which is a two-page Wordz ödocumentò.á Tim Nicholson, Cranleigh.
  9336. 7.1
  9337. Å    Keyboard cleaning Ö We regularly get asked about keyboard problems,
  9338. many of which could be solved by cleaning. That, I think, is the answer
  9339. to Brian Cowanæs question in his Hardware Column last month. There have
  9340. been three main references to this in Archive (3.9 p10 + 5.1 p25 + 5.2
  9341. p28). I think these should cover most eventualities.á Ed.
  9342. 7.1
  9343. In response to Brianæs question, several subscribers sent in
  9344. descriptions of how to clean a keyboard. I think that much of it is
  9345. covered by the references above but I think Knut Folmoæs comments which
  9346. follow may also be helpful.á Ed.
  9347. 7.1
  9348. Å    Keyboard cleaning (2) Ö There are three different keyboards on
  9349. Archimedes computers.
  9350. 7.1
  9351. (1)áKPL keyboard Ö This was used only on VERY old A310 machines. It can
  9352. be identified by looking at the CapsLock LED, which is mounted on the
  9353. right hand side of the key-top, as opposed to the left on the more usual
  9354. types. This is horrible to type on! If you still have such a keyboard,
  9355. throw it in the wastebin and buy a new! (Funnily enough, Acorn keyboards
  9356. are on special offer at the moment for ú95 instead of ú123 Ö strictly
  9357. while stocks last Ö I have about 10 of them. Ed)
  9358. 7.1
  9359. (2)áKeytronics keyboard Ö This is the normal keyboard on most of the
  9360. A310s and nearly all the A400/1 range. If you take off one of the keys,
  9361. you will see a rubber cap that is mounted between the key and the
  9362. keyswitch.
  9363. 7.1
  9364. These keyboards do not like hair, biscuits and other kinds of dust. If
  9365. any keys fail, it most likely to be the CapsLock key because the hole
  9366. around the LED makes it possible for dust to get into the keyswitch. If
  9367. you have access to pressurised air, you can fix the key for a limited
  9368. period of time by taking off the keytop and blowing some air around the
  9369. LED. The best cure is to open the whole keyboard and clean it. This is a
  9370. lot of work and involves unscrewing approximately 40 screws. (See the
  9371. references mentioned above. Ed.)
  9372. 7.1
  9373. (3)áCherry keyboards Ö All A5000/A540 machines have this type of
  9374. keyboard, which use the same mechanics as the A3000. This is a very good
  9375. membrane keyboard which seems to be very long-lasting. The use of
  9376. membrane technology makes it impossible for dust to enter the electrical
  9377. contacts. This type of keyboard is also the best to type on. It can
  9378. easily be identified by taking off one of the keytops, which should have
  9379. a little spring mounted on the underside. (Cherry keyboards are the ones
  9380. we have on special offer at the moment. Ed.)á Knut Folmo, Norway.
  9381. 7.1
  9382. There is a fourth type: the A4000 type keyboard. We havenæt had any of
  9383. these go wrong yet, but weæll report on them as and when they do. Ed.
  9384. 7.1
  9385. Å    Street maps using Draw Ö At the risk of being boring, since there have
  9386. been lots of articles about using Artworks or Vector to produce street
  9387. maps, I offer this solution using plain simple RISC OS 3 Draw. Firstly,
  9388. draw your map using ordinary thin lines for the roads. Then group all
  9389. the roads together and make their thicknesses (say) 4pt. Switch the grid
  9390. lock on and copy the roads. With the grid lock on, a copy is made
  9391. exactly one grid distance down and to the right. Therefore you can move
  9392. the copy exactly over the original. Now change all the lines in the copy
  9393. to colour white and thickness (say) 2pt and, hey presto, thereæs your
  9394. street map.
  9395. 7.1
  9396. If you want different thickness roads, keep the grid lock on and move
  9397. the copy to a different bit of the paper. Then make the copyæs line
  9398. colour red (so you can see it) and ungroup both maps. Carefully change
  9399. the corresponding road lines to the required thicknesses Ö e.g. 8pt on
  9400. the original and 5pt on the copy for the main roads. Then re-group the
  9401. roads and move the copy over the original. Finally, change the copy to
  9402. white lines. There may be more elegant ways of generating road maps but
  9403. this one is öfreeò with the Archimedes! Notice also that there are no
  9404. problems with joining different sized roads (i.e. the outlines of the
  9405. small roads do not project into the big roads.á Cain Hunt, Cambridge.ááA
  9406. 7.1
  9407. Hints and Tips
  9408. 6.12
  9409. Å    Cfs and the cluttered iconbar Ö There are five drive icons on my
  9410. iconbar, together with five Cfs (i.e. Computer Conceptsæ Compression)
  9411. icons, so there is hardly room for anything else!
  9412. 6.12
  9413. Since version 1.17 of Cfs, however, things have rather changed for the
  9414. better, due to the key combination <ctrl-insert> which lets you switch
  9415. between the Cfs and the normal window.
  9416. 6.12
  9417. I now find that one Cfs icon on the iconbar is all I need. What I have
  9418. done is this: My !Boot file contains nine lines concerning Cfs:
  9419. 6.12
  9420. <d>.!Cfs
  9421. 6.12
  9422. (This runs the application. <d> gives the path for the program, as
  9423. described in Archive 3.9, p.8)
  9424. 6.12
  9425. RMEnsure CFSModule 1.17 RMLoad <d> .!Cfs.CFSModule
  9426. 6.12
  9427. RMEnsure CFSModule 1.17 Error CFSModule not loaded
  9428. 6.12
  9429. (These two lines are just to make doubly sure.)
  9430. 6.12
  9431. CFStemp <s>!Scrap.ScrapDir
  9432. 6.12
  9433. NewCFS ADFS::0
  9434. 6.12
  9435. NewCFS ADFS::intern
  9436. 6.12
  9437. NewCFS SCSI::SCSIDrive0
  9438. 6.12
  9439. NewCFS SCSI::SCSIDrive4
  9440. 6.12
  9441. NewCFS SCSI::extern
  9442. 6.12
  9443. (The last six lines duplicate the way in which everything was first set
  9444. up from the Cfs iconbar icons.)
  9445. 6.12
  9446. With these commands in the !Boot file, it is now possible to delete all
  9447. but one Cfs icon from the iconbar and save the changes. Now one of my
  9448. drives (the one I use most often) can have its Cfs directory windows
  9449. opened directly. On all the others, I open the relevant uncompressed
  9450. window, then press <ctrl-insert>.á Jochen Konietzko, K÷ln, Germany
  9451. 6.12
  9452. Å    Impression arrows Ö Left and right arrows in Impression are extremely
  9453. easy to generate. You start with ö<ÖÖò or öÖÖ>ò and use <ctrl-R>
  9454. inbetween the characters to reduce the spacing (kerning) between the
  9455. characters so that you end up with ö<ÖÖò or öÖÖ>ò. Those two needed one
  9456. <ctrl-R> between the dashes and nine <ctrl-R>s between the angle bracket
  9457. (inequality sign) and the dash but it will depend on the font size.
  9458. (These ödashesò are produced in Impression with <shift-ctrl-hyphen>.
  9459. Actually, they are supposed to be minus signs, I think but I prefer them
  9460. to the öproperò dash which is <alt-152>. Certainly when I tried the
  9461. öproperò dash for this purpose, it produced öÿ>ò which isnæt quite as
  9462. good as the height is different and it doesnæt hit quite at the centre
  9463. of the angle of the hairpin.) You can see it better at a bigger point
  9464. size:
  9465. 6.12
  9466. Two minus signs: öÖÖ>ò One dash: öÿ>>ò
  9467. 6.12
  9468. In Times font, which I am using here, the long dash is slightly lighter
  9469. and doesnæt match the weight of the angle bracket. However, this trick
  9470. does depend on the particular font used Ö itæs a Ésuck it and seeò job.á
  9471. Ed.
  9472. 6.12
  9473. Å    Multistore alphabetical sorting Ö I recently created a large database
  9474. for my church roll in which there was a single name field presenting the
  9475. information in the form öSue Adamsò. I set up an index on this field
  9476. using the Surname function only to discover that it persisted in sorting
  9477. öSue Adamsò after öMargaret Adamsonò. An examination of BaseLib (found
  9478. by shift-clicking !Multistore and dragging into !Edit) revealed how the
  9479. Base Function FNsurn worked and led to the idea of creating another Base
  9480. Function, FNchristian, to select the Christian name and any initial.
  9481. Using !Edit, I adapted FNsurn and then saved it as a further Base
  9482. Function in BaseLib. Then, using the Sort facility with the expression
  9483. öFNsurn(@ Name)+FNchristian(@Name)ò, the names were sorted into correct
  9484. alphabetical order. It is necessary to quit and re-load Multistore to
  9485. ensure that it knows of the new Base Function. FNchristian is as
  9486. follows:
  9487. 6.12
  9488. DEFFNchristian(A$):LOCALI%,C%
  9489. 6.12
  9490. WHILERIGHT$(A$,1)=ö ò:A$=LEFT$(A$) :ENDWHILE:I%=LENA$: C%=ASCMID$(A$,I%)
  9491. 6.12
  9492. WHILEI%>0AND((C%>64ANDC%<91)OR(C%> 96ANDC%<123)ORC%=45):I%-=1
  9493. 6.12
  9494. C%=ASCMID$(A$,I%):ENDWHILE
  9495. 6.12
  9496. IF INSTR(A$,ö ò)>0THEN=LEFT$(A$, I%-1)ELSE=öò
  9497. 6.12
  9498. Colin Brockie, Kilmarnock.
  9499. 6.12
  9500. Å    Multiple stories on one page in Impression Ö It can sometimes be
  9501. extremely desirable to have two or more independent stories on a single
  9502. page in Impression. Normally, when you enter text in a single-frame page
  9503. and the text fills the frame, a new page is created and the text
  9504. continues to flow onto the new page. Creating a second frame on any
  9505. given page simply makes a local frame which does not exhibit this
  9506. ability to flow text onto a new page when it is full. However, if it
  9507. were possible to have two or more frames on a page which could
  9508. independently create new pages when full, this would be very useful Ö it
  9509. would make for easy creation of footnotes, for one thing.
  9510. 6.12
  9511. I was recently asked how to achieve this effect by a user who was
  9512. setting opera libretti, and who wanted to have two columns side by side
  9513. for different languages. A two-column master page layout did not achieve
  9514. the desired effect because the text flowed from one column to the next
  9515. on the same page, rather than from any given column to the equivalent
  9516. column on the following page.
  9517. 6.12
  9518. There is, in fact, a way of achieving the required effect in Impression,
  9519. but the technique is a little subtle.
  9520. 6.12
  9521. How to do it Ö Either choose a suitable master page which exists already
  9522. or use the ÉNew master pageæ menu option to create an appropriate page
  9523. with the desired number of columns on it. Create whatever extra frames
  9524. you need on your master page in the normal way.
  9525. 6.12
  9526. Now use the ÉShow flowæ option from Impressionæs iconbar menu to see how
  9527. the text will flow between the frames. Under normal circumstances, to
  9528. link frames into the text flow sequence you click <select> on the first
  9529. frame in the sequence, followed by <adjust> on the succeeding frames in
  9530. the correct order. However, it is not possible to remove frames from the
  9531. sequence using this method and so, if you try to alter the order of flow
  9532. which is automatically assigned on the master page, you will find you
  9533. are not able to do so. Therefore, the only way to remove a frame from
  9534. the text flow sequence is to actually delete it and then recreate it.
  9535. 6.12
  9536. So, for each frame which is to contain its own page-creating story,
  9537. first select the frame and then open the ÉAlter frameæ dialogue box with
  9538. <ctrl-f10>. Make a note (mental or otherwise) of the X and Y coordinates
  9539. of the frame, close the dialogue box and press <ctrl-X> to cut the frame
  9540. to the clipboard. Immediately you have done this, press <insert> (or
  9541. <ctrl-V>) and paste the frame back to where you cut it from. Finally,
  9542. open the ÉAlter frameæ box again and restore the coordinates to what
  9543. they were before.
  9544. 6.12
  9545. On the face of it, this seems pretty pointless. All you have done is
  9546. delete a frame and then put it back again in the same place. However,
  9547. the practical effect of the action is to un-link the frame from the text
  9548. flow sequence. If you choose ÉShow flowæ from the iconbar menu again,
  9549. you will see that the frame no longer has an arrow pointing to or from
  9550. it. (In fact, if you have a layout of three or more columns, you will
  9551. see that the flow has bypassed this frame, but still connects the
  9552. others.)
  9553. 6.12
  9554. What this boils down to is that you can have as many individual stories
  9555. as you want on a single master page. Each story can consist either of a
  9556. separate frame or any number of linked frames. Any such set of frames on
  9557. an Impression master page will cause the creation of a new page when
  9558. filled with text in the document.
  9559. 6.12
  9560. The layout shown in the illustration is not intended to be a serious
  9561. example but it merely illustrates the idea. The frames for both Story 1
  9562. and Story 2 have been linked, whilst the frame for Story 3 is a separate
  9563. entity, as is the frame for footnotes.
  9564. 6.12
  9565. As for practical examples of this idea, one has only to look at the old-
  9566. style (RISC OS 2) Acorn manuals, such as the BBC Basic Guide or PRM.
  9567. These manuals all have a vertical line about a third of the way across
  9568. each page, to the right of which is the main text. The headings and sub-
  9569. headings all appear to the left of the line. Although the creation of
  9570. such pages by conventional methods would be perfectly possible, having
  9571. two independent stories (one for the main text, another for the
  9572. headings) would greatly simplify the process.
  9573. 6.12
  9574. A similar idea commonly found in educational material is to have a
  9575. column, at the right hand side of the page, which contains comments
  9576. relating to the ideas presented in the main body of the text.
  9577. 6.12
  9578. Another good use for this idea is the presentation of tabulated material
  9579. such as a printed index. If you want a column of numbers to be in a
  9580. different style to the reference text the numbers accompany, it is far
  9581. easier to have two independent stories than to apply a specific style
  9582. for each number on a line.
  9583. 6.12
  9584. When using this approach, there is just one thing to watch out for. If
  9585. there is not a direct one-to-one correspondence between the number of
  9586. lines in the stories (which there may or may not be, depending on the
  9587. document), you must remember to press <ctrl-G> (which corresponds to the
  9588. ÉFrame=>Force to nextæ menu option) when you have typed in all the text
  9589. for the shorter story on each page. If you donæt do this, you may find
  9590. that, when you position the caret in the frame in which you want to
  9591. start typing, the text appears on the previous page. However, you will
  9592. soon get used to this.
  9593. 6.12
  9594. As for footnotes, if you know that none of your footnotes will exceed a
  9595. single line in depth, you should create your footnote master page frame
  9596. to be just large enough to contain one line of text. Then, each time you
  9597. press <return>, the caret will advance one page. If you need longer
  9598. footnotes, however, make the master page frame large enough to hold the
  9599. largest note and remember to use the <ctrl-G> method.á Richard Hallas,
  9600. Huddersfield.
  9601. 6.12
  9602. Is it possible to have two or more independent stories running side-by-
  9603. side in Ovation? If so, can anyone explain how? Ed.
  9604. 6.12
  9605. Å    Printing to files Ö I experienced the same problem as Tom Rank
  9606. (Archive 6.9 p63) with printing to a file. This involved an address
  9607. exception being caused at the end of each print run which prevented the
  9608. last few graphics lines from being printed. The problem is caused by
  9609. ADFSBuffers. Setting this to zero using:
  9610. 6.12
  9611.     *Configure ADFSBuffers 0
  9612. 6.12
  9613. solves the problem.á Paul Mellor, Derby.
  9614. 6.12
  9615. Å    Vector overlays Ö The new version 1.10 of Vector offers the option to
  9616. draw lines with overlays (i.e. between 1% and 99% of the lineæs interior
  9617. is drawn in a different colour), a feature which makes drawing little
  9618. map sketches very simple.
  9619. 6.12
  9620. A problem arises if you want to join two roads or two rivers without a
  9621. seam.Vector produces something like this (overlay 50%):
  9622. 6.12
  9623. For a decent map you need, instead, something like this:
  9624. 6.12
  9625. If, as in this case, all paths have the same width, it is simple: Just
  9626. select them all and merge them through the öSpecialò menu. (This also
  9627. saves memory: The five paths in the first picture take up 1071 bytes,
  9628. the merged path only 883 bytes.)
  9629. 6.12
  9630. If the width differs, the thickest line will force its width upon all
  9631. the others, making a merge inadvisable; then you will have to apply
  9632. little öbeauty patchesò in the form of completely white rectangles to
  9633. cover the unwanted black lines.
  9634. 6.12
  9635. While you rotate the rectangles to align them with the road, it is best
  9636. to switch the amount of detail shown on the screen from stage 5 to stage
  9637. 3, so that all the rectangles appear just as thin black outlines (even
  9638. if they are not selected) and this makes an öinvisibleò shape rather
  9639. more easy to handle.
  9640. 6.12
  9641. When you go about rotating those rectangles, it makes sense to lock
  9642. everything else first with <ctrl¡H> because else it is very simple to
  9643. rotate something else besides the little patch.á Jochen Konietzko, K÷ln,
  9644. Germany.ááA
  9645. Using RISCáOSá3.1
  9646. 6.12
  9647. Hugh Eagle
  9648. 6.12
  9649. SCSI problems
  9650. 6.12
  9651. Barry Thompson found one day that he was unable to access the hard
  9652. drive, an Oak Worra Winnie 45Mb on an A340 with RISCáOSá3.11. The error
  9653. message, ÉDisc not understood ù has it been formatted?æ came into view.
  9654. On Oakæs advice, he refitted RISCáOSá2 and the message became ÉBad free
  9655. space map.æ Adrian Lookæs !FixMap was unable to help, so the disc had to
  9656. be reformatted and, of course, all the data was lost. Someone at Oak
  9657. suggested to Barry that SCSI can be less reliable with RISCáOSá3 than
  9658. with RISCáOSá2 and recommended doing a *Checkmap every couple of days
  9659. and, if errors were reported, to back everything up and reinitialise the
  9660. disc.
  9661. 6.12
  9662. Synonymous pathnames
  9663. 6.12
  9664. Mick Day writes, öI wrote some time ago that the operating system did
  9665. not check for synonymous valid references to the RAMDisc pathnames. This
  9666. is, in fact, more general. If full and accurate pathnames are always
  9667. used, this is no problem; and where removable media are concerned, it is
  9668. probably necessary. However, comparison of the ÉBytes freeæ or a CRC
  9669. number could have largely eliminated this. Alternatively, if an
  9670. abbreviated Disc Spec was given, the filer could have filled it in
  9671. completely and thus discovered identical manifestations of filer
  9672. windows! It does no harm, but is confusing. If you set the pathnames for
  9673. your harddisc in the following short program:
  9674. 6.12
  9675. *Filer_OpenDir RAM::RamDisc0.$
  9676. 6.12
  9677. *Filer_OpenDir RAM::0.$
  9678. 6.12
  9679. *Filer_OpenDir RAM:$
  9680. 6.12
  9681. *Filer_OpenDir SCSI::HardDisc4.$ | set these
  9682. 6.12
  9683. *Filer_OpenDir SCSI::4.$| names to
  9684. 6.12
  9685. *Filer_OpenDir SCSI:$| your system
  9686. 6.12
  9687. *Filer_OpenDir ADFS::MCDay.$
  9688. 6.12
  9689. *Filer_OpenDir ADFS::0.$
  9690. 6.12
  9691. END
  9692. 6.12
  9693. you will find, on running, three identical filer windows on the screen
  9694. for RAMDisc, three for Fixed disc and two ADFS floppy! I think this is
  9695. sloppy implementation, akin to not checking the disc before issuing
  9696. ÉFreeæ!ò
  9697. 6.12
  9698. Top bit set characters
  9699. 6.12
  9700. Mick Day uses a Star LC10 mainly for address labels. The dip switches
  9701. set it to the Epson character set. However, he sometimes needs to use
  9702. top-bit characters in foreign addresses. He thus has implemented a
  9703. complete look-up table for the characters 160-255, trying as near as
  9704. possible to get the Latin1 set. He says that, interestingly, it is
  9705. possible to dodge about and use the IBM set in addition to the Epson
  9706. set! The Basic program $.Latin1 on the monthly program disc summarises
  9707. it; anyone with a Star LC10 should be able to get it going. It might
  9708. work on some others as well.
  9709. 6.12
  9710. Form feeds
  9711. 6.12
  9712. Mick Day also writes: öI have spent a lot of time trying to stop the
  9713. PDriver module or its front end from issuing formfeeds. I would rather
  9714. decide for myself when the paper is to be thrown out onto the desk. Am I
  9715. missing some glaring instruction or is it really impossible to configure
  9716. this simple option? I experimented further with !Printers after reading
  9717. Tim Nicholsonæs article (Archive 6.10 pp 43-47), but got no further. I
  9718. suspect that the formfeed is done by PDriver; I have set the printer
  9719. configure to the start sequence instead of the end and removed the
  9720. formfeed character, but all to no avail. It means that if you drag a
  9721. single address to print on labels, you need a specific Printer with a
  9722. page length of 9 Ö a sledgehammer to crack a nut! I want one driver for
  9723. the printer which does what I tell it. Can anyone tell me definitively
  9724. if the terminal formfeed is configurable or not? Otherwise I could be
  9725. experimenting until I die!ò
  9726. 6.12
  9727. Testing a printeræs on-line status
  9728. 6.12
  9729. (See Archive 6.11 p51) Mick Day says that he prefers the following
  9730. routine to the one published last month (which he says is slower and
  9731. escape can interrupt it):
  9732. 6.12
  9733. DEF FNCheckPrinter
  9734. 6.12
  9735. *FX 5,1
  9736. 6.12
  9737. *VDU 2,1,0
  9738. 6.12
  9739. SYS öOS_Byteò,152,3 to ;f%
  9740. 6.12
  9741. f%=f%AND2
  9742. 6.12
  9743. *FX 21,3
  9744. 6.12
  9745. VDU 3
  9746. 6.12
  9747. *FX 5,5
  9748. 6.12
  9749. =f%
  9750. 6.12
  9751. (Iæm no expert in these matters, but I believe that the *FX 5,1 only
  9752. applies if your printer is connected to the parallel port and the *FX
  9753. 5,5 might have unwanted effects if your system is set up differently
  9754. from Mickæs ù HE.)
  9755. 6.12
  9756. He adds that the important point to emphasise is that öthe fundamental
  9757. difference between earlier Acorn systems and RISCáOSá3.1 is that, in
  9758. RISCáOSá3.1, once you have issued a VDU 3 or equivalent, you are dead!
  9759. You can only switch the printer on or press <esc> (if it is enabled).
  9760. Page 18 of the Release Notes specifically refers to freezing when
  9761. attempting to print to Énon-existentæ printers. They could have been
  9762. much more helpful here in only a few words. I wonder how many man-months
  9763. of time-wasting this has generated?ò
  9764. 6.12
  9765. AZERTY keyboard
  9766. 6.12
  9767. Mick Day says that, try as he might, he cannot get an AZERTY keyboard
  9768. with *Country/*Language/*Keyboard France. He knows of at least one
  9769. Belgian colleague who was impressed by his Archimedes but who did not
  9770. buy one because he could not get the keyboard he wanted. (We have a
  9771. couple of modules that get round this problem Ö for French and German,
  9772. anyway Ö they are on this monthæs program disc.)
  9773. 6.12
  9774. The following are taken from extracts from recent Acorn Customer Service
  9775. Newsletters which Barry Thompson has kindly forwarded:
  9776. 6.12
  9777. RISCáOSá3 CMOS problems
  9778. 6.12
  9779. There have been a number of reports of systems not powering up properly.
  9780. Acorn suspect this is due to rogue CMOS RAM settings which occurred
  9781. while the system was used with RISCáOSá2 and they östrongly recommend
  9782. that a ÉDelete-power-onæ is performed before the RISCáOSá2 upgrade is
  9783. removed. This will ensure that CMOS RAM locations now used by RISCáOSá3
  9784. are set correctly.ò
  9785. 6.12
  9786. First Word Plus ÉWindow Definitionæ error
  9787. 6.12
  9788. If First Word Plus issues the message ÉWindow definition will not fitæ,
  9789. a ÉDelete power onæ will cure the problem (but may well, of course,
  9790. corrupt other CMOS settings)!
  9791. 6.12
  9792. Maximum DOS partition sizes
  9793. 6.12
  9794. DOSFS only supports DOS hard disc partitions up to 32Mb. If you create a
  9795. larger DOS partition, it will not be possible to access it from the RISC
  9796. OS desktop environment.
  9797. 6.12
  9798. DOS partitions larger than 32Mb can only be accessed from within the PC
  9799. card or PC Soft (i.e. PC emulator) environment. Therefore, if you wish
  9800. to transfer files between a large DOS partition and a RISC OS based
  9801. filing system, this should be done via floppy disc(s) or another
  9802. (smaller) DOS partition.
  9803. 6.12
  9804. Windows driver with the Acorn 486 card
  9805. 6.12
  9806. Following on from the last point ...
  9807. 6.12
  9808. The Windows Driver disc supplied with the PC card is in Acorn ADFS
  9809. format. So, if you have created a DOS partition which is larger than 32
  9810. Mb, it will not be possible to use the procedure outlined in the PC Card
  9811. User Guide to copy the file on this disc to the DOS partition. Instead,
  9812. you should use the following procedure:
  9813. 6.12
  9814. ù From within the RISC OS desktop, format a blank floppy disc to 720Kb
  9815. DOS format.
  9816. 6.12
  9817. ù Click <select> on the floppy disc drive icon to open a Filer window
  9818. showing the contents of the root directory of the DOS format floppy (at
  9819. this stage it will be empty).
  9820. 6.12
  9821. ù Remove the DOS floppy and insert the Windows Driver disc. Click
  9822. <select> again and copy the file ARMVGA/DRV from the Windows Driver disc
  9823. to the DOS floppy.
  9824. 6.12
  9825. ù Start the !PC Card  application.
  9826. 6.12
  9827. ù Insert the DOS floppy again.
  9828. 6.12
  9829. ù At the DOS prompt type:
  9830. 6.12
  9831. copy a:*.* C:\WINDOWS\SYSTEM
  9832. 6.12
  9833. to copy the correct Windows driver for use with the PC card into the DOS
  9834. partition.
  9835. 6.12
  9836. ù Load the \WINDOWS\SYSTEM.INI file into the DR DOS text editor by
  9837. typing at the DR DOS prompt:
  9838. 6.12
  9839. C:\DRDOS\EDITOR C:\WINDOWS\ SYSTEM.INI
  9840. 6.12
  9841. ù Use the cursor keys to move down to the line that reads:
  9842. 6.12
  9843. display.drv=vga.drv
  9844. 6.12
  9845. and change it to read:
  9846. 6.12
  9847. display.drv=armvga.drv
  9848. 6.12
  9849. ù Save the modified file by holding down <ctrl> and pressing <K> and
  9850. then <Q>. Then press <escape> to return to the DR DOS prompt.
  9851. 6.12
  9852. ù The new driver will be loaded the next time you start Windows, and a
  9853. different hourglass shape will indicate its presence.
  9854. 6.12
  9855. MEMC1a or no MEMC1a
  9856. 6.12
  9857. The following short command can be used from within Basic to find out
  9858. whether a MEMC1a chip is fitted:
  9859. 6.12
  9860. PRINT ?274 AND 1
  9861. 6.12
  9862. If the result is 1 then a MEMC1a is fitted.
  9863. 6.12
  9864. RISCáOSá4 Wish List (continued)
  9865. 6.12
  9866. The following are from Richard Burnell:
  9867. 6.12
  9868. Å    Shutdown ù Include an öare you sureò window after you press <ctrl-
  9869. shift-F12> with an option to cancel the Shutdown, in case you press it
  9870. by accident.
  9871. 6.12
  9872. Å    Unlimited directories ù Allow more than 77 files in a directory.
  9873. 6.12
  9874. Å    Filer windows ù Allow file icons to be positioned where you want them
  9875. (as on an Apple Macintosh).
  9876. 6.12
  9877. Å    Other disc formats ù Include another extension to the filing system to
  9878. allow the reading and writing of Amiga and BBC B discs.
  9879. 6.12
  9880. Å    Outline fonts ù Allow unfilled outlines to be printed (without having
  9881. to convert them to paths in !Draw first) as you can in Windows on PCs.
  9882. 6.12
  9883. Å    !Draw and !Edit should warn you when you try to save files with names
  9884. that already exist.
  9885. 6.12
  9886. Å    !Draw ù When you drag selected objects, it would be helpful to see the
  9887. shape of the objects moving (as you do in Artworks), not just the
  9888. bounding box.
  9889. 6.12
  9890. Å    !Edit ù should allow the option not to strip line numbers to be saved
  9891. in the configuration.
  9892. 6.12
  9893. Å    Printer buffer ù Provide one that allows background printing. (Richard
  9894. observes that this was advertised as a feature in the pre-release
  9895. RISCáOSá3 reviews and finds it surprising that Acorn havenæt yet
  9896. released öa working printer buffer moduleò.)
  9897. 6.12
  9898. Finally, a point from Roger King. A similar suggestion has been made
  9899. before but it is worth repeating:
  9900. 6.12
  9901. Å    Distinguishing non-ADFS discs ù When a non-ADFS disc (e.g. a DOS disc)
  9902. is mounted, the disc drive icon on the iconbar should change to a
  9903. different colour. (Some form of indication like this is particularly
  9904. important because the directory names in Filer windows for DOSFS, as for
  9905. other öimage filing systemsò, are prefixed ADFS!) Roger receives many
  9906. discs through the post and increasingly often he finds that the discs
  9907. are DOS format, presumably because people buy them pre-formatted. The
  9908. great snag in using DOS discs in the Acorn environment is the shorter
  9909. length of filename allowed. Roger often checks and modifies files sent
  9910. to him, then saves them back to the same disc with a öUò (for öUpdatedò)
  9911. tacked onto the end of the filename. If the original file has a name 8
  9912. characters long and is on a DOS disc this results in the original file
  9913. being overwritten by the updated file since the öUò is discarded from
  9914. the filename!ááA
  9915. 6.12
  9916. Hints and Tips
  9917. 6.11
  9918. Å    Amstrad CPC monitor link Ö Let me describe how to use the old monitor
  9919. left over from your Amstrad CPC for emergency use with your Archimedes.
  9920. 6.11
  9921. You need a six-pin, 270-degree DIN female plug, like the one in your
  9922. CPC, a normal D-sub nine-pin male, to plug into your RGB socket on the
  9923. computer and some soldering skill. (If you use an A5000 or later, you
  9924. need a 15-pin VGA-compatible plug, instead.)
  9925. 6.11
  9926. To make the setup even more user-friendly, you should invest in a two-
  9927. way, double switch, to cater for both mono and colour monitors.
  9928. 6.11
  9929. The DIN plug has six pins, with the centre pin being mono-in. When seen
  9930. from the rear with the soldering lugs towards you, (as in the diagram
  9931. opposite) the pin for the red is top left (1), then comes green (2),
  9932. blue (3), sync (4) and signal earth (5).
  9933. 6.11
  9934. On the 9-pin D-sub, pin number 1 is red, 2 is green and 3 is blue. Pin
  9935. number 4 is sync and 7 signal earth. The rest are unused. The
  9936. arrangement on the new machines is slightly different, as there are more
  9937. pins, but it is essentially the same!
  9938. 6.11
  9939. Basically you connect 1 to 1, 2 to 2 and 3 to 3, but the addition of a
  9940. switch makes it much more useful. Before starting, switch on the
  9941. computer while pressing <0>, to change to monitortype 0 for 50Hz
  9942. monitors and TVs.
  9943. 6.11
  9944. The switch on the cable is essential under two circumstances: You might
  9945. also want to use your TV as a colour monitor. Then you have to use the
  9946. Amstrad TV MP-2 modulator (still available). That does not use the
  9947. central monochrome pin, but the normal three RGB pins. You could make
  9948. two converters of course, but you might forget which is which. Instead,
  9949. you just flip the switch if the picture looks odd! Those with TVs that
  9950. accept RGB through the SCART connector should use those, of course!
  9951. A3010 owners should first try connecting to a TV, but the green CPC
  9952. monitor should be much sharper, if not having a higher resolution!
  9953. 6.11
  9954. Sometimes, when running some games like MiG-29M, you might want to
  9955. switch back and forth as the headup display is almost invisible against
  9956. the sky if you have all colours connected to the middle pin. By
  9957. momentarily switching to the colour setting, everything yellow will
  9958. become easily visible, as it becomes black (or more correctly, a black-
  9959. ish green, if you use the green monochrome monitor)!
  9960. 6.11
  9961. Turbo Challenge II becomes a real challenge in green. Chopper Force,
  9962. Bughunter II and Taipei work fine in green. Impression, Vector and
  9963. ArtWorks are essentially monochrome, if you donæt add colour yourself,
  9964. so they are not affected!á Tord Eriksson
  9965. 6.11
  9966. Å    BASIC64 application Ö I have, for a long time, toyed with the idea of
  9967. testing BASIC64, by running the PCW Benchmarks with it. The normal way
  9968. would be to RMLoad the BASIC64 module and then type *BASIC64 Ö not very
  9969. user-friendly, as you have to type in the paths each time.
  9970. 6.11
  9971. Remembering David Pillingæs advice on the uses of the OSCLI command
  9972. (very odd to me, brought up on Spectrums and mainframes!) I wrote the
  9973. following Basic lines:
  9974. 6.11
  9975. *DIR SCSI::Conner170M
  9976. 6.11
  9977. *DIR OldRubbish.BASIC.BenchMARK
  9978. 6.11
  9979. *CAT
  9980. 6.11
  9981. INPUT öWhich file? ò;a$
  9982. 6.11
  9983. OSCLI ö*BASIC64 -quit ò + a$
  9984. 6.11
  9985. The *CAT shows me which files are available and OSCLI ö*BASIC64 -quitò
  9986. loads BASIC64 runs the program a$ and then quits. Your version will have
  9987. to include your drives and directories, of course! This programming
  9988. fragment, I called !RunImage.
  9989. 6.11
  9990. Put this in the directory you have made called !Run64.
  9991. 6.11
  9992. To make this an application, steal some !Sprites from a program you
  9993. like, rename the individual icon sprites to !Run64 and sm!Run64.
  9994. 6.11
  9995. The next step is to make a copy of BASIC64 and drop that into the
  9996. directory. Now for the !Run file:
  9997. 6.11
  9998. Iconsprites <Obey$Dir>.!Sprites
  9999. 6.11
  10000. RUN <Obey$Dir>.BASIC64 -QUIT <Obey$Dir>.!RunImage
  10001. 6.11
  10002. Alternatively, you could run the copy of BASIC64 that you might have in
  10003. your systemæs modules directory.
  10004. 6.11
  10005. It seems idiotic to run BASIC64, in order to run BASIC64, to run the
  10006. program you have selected, but it works perfectly.
  10007. 6.11
  10008. I tried using the more logical *RMLoad BASIC64, but then you fall into
  10009. the editor and we do not want that!
  10010. 6.11
  10011. Finally, you need a !Boot file:
  10012. 6.11
  10013. Iconsprites <obey$Dir>.!Sprites
  10014. 6.11
  10015. (A sample Basic64 application is on this monthæs program disc.)á Tord
  10016. Eriksson
  10017. 6.11
  10018. Å    ColourCard and VIDC software Ö After I had installed my ColourCard and
  10019. (thanks to a hint in Archive) realised that I still would have to use a
  10020. VIDC module (Careware 18) to make my monitor display modes 12 and 15, a
  10021. problem arose. I had configured my machine to one of those wonderfully
  10022. large screen modes (1152╫848 logical pixels), and then when I found the
  10023. time to play a mode 15 game, (Tower of Babel, which is completely mouse-
  10024. controlled), there was no pointer!
  10025. 6.11
  10026. This is what Nigel Star of Wild Vision told me: In a ColourCard mode,
  10027. the VIDC pointer is disabled and some games donæt re-enable it so all
  10028. you have to do is switch to mode 15 first, and only then start the
  10029. game.á Jochen Konietzko, K÷ln.
  10030. 6.11
  10031. Å    Combatting fiddlers Ö A solution for teachers who suffer from children
  10032. Éfiddlingæ with the palette, task windows, applications accessing the
  10033. hard disc and destroying files might be to use the RMKill command in the
  10034. !Boot file. Any or all of the following lines can be added to the !Boot
  10035. file.
  10036. 6.11
  10037. RMKill ResourseFiler
  10038. 6.11
  10039. RMKill ADFSFiler
  10040. 6.11
  10041. RMKill PaletteUtil
  10042. 6.11
  10043. RMKill Taskmanager
  10044. 6.11
  10045. This will leave the iconbar empty. Pressing <reset> will give error
  10046. messages. If you want a particular program to run, this could be done
  10047. from the !Boot file or from an application launcher such as !Menon or
  10048. !Two. Directories can be opened in the same way. Switching on whilst
  10049. holding down <shift> avoids running the !Boot file and returns icons to
  10050. the iconbar.á Paul Harrigan, Hong Kong.
  10051. 6.11
  10052. Å    DragASprite module Ö After seeing the tip on the dragging of solid
  10053. sprites from a previous Archive, I decided to explore the DragASprite
  10054. module for myself. I have not worked on it exhaustively but I have come
  10055. across the following which users could put in their Basic programs.
  10056. 6.11
  10057. The DragASprite module supports two SWIs but the more useful of these
  10058. two is the SWI DragASprite_Start. It requires the following parameters:
  10059. 6.11
  10060. R0    control value
  10061. 6.11
  10062. R1    1 (this seems to be the only value that works)
  10063. 6.11
  10064. R2    pointer to sprite name
  10065. 6.11
  10066. R3    points to start coordinates of the drag box
  10067. 6.11
  10068. The control value consists of bits which affect the drag. The only ones
  10069. I have worked out are:
  10070. 6.11
  10071. bit 6    allow dragging outside graphics window
  10072. 6.11
  10073. bit 7    shadow the sprite
  10074. 6.11
  10075. Bits 0 and 4 seem to allow only the value 5, as far as I can work out.
  10076. 6.11
  10077. I have found that the two most useful values for the control value in R0
  10078. are:
  10079. 6.11
  10080. &85    non-shadowed drag outside the graphics window
  10081. 6.11
  10082. &C5    shadowed drag outside the graphics window
  10083. 6.11
  10084. R2 points to the first character of a string which is the name of the
  10085. sprite to be used for the drag, for example öfile_fecò.
  10086. 6.11
  10087. R3ápoints to four 32-bit coordinates which describe the start and size
  10088. of the drag box (which is the same size as the sprite).
  10089. 6.11
  10090. This is about all I have been able to work out in the time I have spent
  10091. on it, but it is possible to modify Basic programs using the Save As
  10092. window to use DragASprite_Start instead of Wimp_ DragBox.
  10093. 6.11
  10094. For example, in FormEd 1.24, modify line 4810, which normally reads:
  10095. 6.11
  10096. 4810 SYS öWimp_DragBoxò,,q%
  10097. 6.11
  10098. to
  10099. 6.11
  10100. 4810 SYS öDragASprite_Startò,&C5 ,1,öFile_fecò,q%+8
  10101. 6.11
  10102. Iæm sure a similar fix could be used for other programs to give solid
  10103. sprite dragging.á Robin Terry, Newcastle upon Tyne.
  10104. 6.11
  10105. (Those who can afford ú100 for a RISCáOS 3 PRM will find more details on
  10106. page 3-299. Ed.)
  10107. 6.11
  10108. Å    Free space on hard discs Ö In Hints and Tips, Archive 5.12, Steve
  10109. Drain asked if the same problem of allocating 28Kb to each new directory
  10110. applies to IDE drives. I checked this for my A5000 40Mb drive and found
  10111. that 7Kb is allocated per directory which seems a reasonable compromise.
  10112. This is lucky as there seems to be no way to alter the default format
  10113. using HForm.
  10114. 6.11
  10115. N.B. Count only reports the size of the data, not the actual space used
  10116. on the disc. This can only be found by using *FREE from the command line
  10117. before and after creating a directory/file and subtracting the values.
  10118. 6.11
  10119. The structure of !Fonts is where most directories occur. In my case,
  10120. there are 111 directories requiring 777Kb of space initially, but since
  10121. each contains over 7Kb of data for IntMetrics and Outlines, the space is
  10122. not wasted. However, if 28Kb were allocated, as with Steveæs make of
  10123. SCSI drive, then 111 ╫ 28 = 3108Kb would be allocated. In my case, only
  10124. 2625Kb would be used as font data, losing 483Kb on fonts alone! When
  10125. Computer Concepts released Compression, I thought that this would solve
  10126. space problems, but I was told by CC that it retains the directory
  10127. structure (I assume with the same overheads per directory) and is not
  10128. very effective at reducing the disc space taken up by !Fonts.
  10129. 6.11
  10130. I have now installed SparkFS from David Pilling. Although each compacted
  10131. Spark file can contain lots of directories when opened, to the IDE
  10132. filing system it is only one file and only allocates one lot of 7Kb (or
  10133. 28Kb for Steve). So it is not sensible to have a Spark file containing
  10134. less than 7Kb. (The Count facility is misleading as it only gives the
  10135. size of compressed data not the space allocated by the IDE drive.) There
  10136. is a speed penalty for using a Spark file but there is also a Spark
  10137. directory option which is a lot faster according to the booklet although
  10138. it seems to have a much larger disc space requirement of about 14Kb
  10139. which does not all seem to be recovered.
  10140. 6.11
  10141. So the conclusions seem to be:
  10142. 6.11
  10143. 1)    If possible, reformat with the smallest file allocation.
  10144. 6.11
  10145. 2)    Only create a new directory if you are going to store an amount of
  10146. data comparable with the directory space (7Kb for my IDE drive, 28Kb for
  10147. Steveæs original SCSI).
  10148. 6.11
  10149. 3)    Be aware of the overheads due to any compression system you use,
  10150. checking by using *FREE at the command line (particularly if it retains
  10151. directories.)
  10152. 6.11
  10153. 4)    If using SparkFS on an A5000, ensure any Spark file will contain
  10154. at least 7Kb of data.
  10155. 6.11
  10156. 5)    If space is tight, remember that a Spark directory will have space
  10157. overheads although it is faster.
  10158. 6.11
  10159. It would be interesting to hear the findings from other people using
  10160. other compression systems, types of drive and any information on
  10161. reformatting A5000 IDE drives with different file allocation sizes.á
  10162. Alan Dawes, Ilford
  10163. 6.11
  10164. Å    Help_ with menus in C Ö In Archive 6.10 p8, Richard Simpson asks about
  10165. using help_ with menus. I enclose a program (on the monthly program
  10166. disc) to demonstrate a solution.
  10167. 6.11
  10168. The program offers help via !Help in the following situations:
  10169. 6.11
  10170. ááÅ    The main iconbar icon.
  10171. 6.11
  10172. ááÅ    Menu (with sub-menu) from from the iconbar.
  10173. 6.11
  10174. ááÅ    Dialogue box from iconbar, including special processing for
  10175. version details.
  10176. 6.11
  10177. ááÅ    A simple window.
  10178. 6.11
  10179. ááÅ    Menu from the simple window.
  10180. 6.11
  10181. The program doesnæt actually do anything and is quite long, so I wonæt
  10182. attempt to explain its operation here. There are a number of comments in
  10183. the code which should, hopefully, be sufficient for a C programmer using
  10184. help_.
  10185. 6.11
  10186. The short-hand strings supported by !Help are (this is from !Helpæs
  10187. message file), note the spaces:-
  10188. 6.11
  10189. \SááæClick SELECT to æ
  10190. 6.11
  10191. \AááæClick ADJUST to æ
  10192. 6.11
  10193. \GááæThis option is greyed out because æ
  10194. 6.11
  10195. \DááæDrag SELECT to æ
  10196. 6.11
  10197. \wááæwindowæ
  10198. 6.11
  10199. \aááæADJUSTæ
  10200. 6.11
  10201. \RááæMove the pointer right to æ
  10202. 6.11
  10203. \TááæThis is the æ
  10204. 6.11
  10205. \WááæThis window is æ
  10206. 6.11
  10207. \dááæDrag ADJUST to æ
  10208. 6.11
  10209. \sááæSELECTæ
  10210. 6.11
  10211. Please bear in mind that the documentation in Releaseá4 is sketchy and
  10212. this may not be Acornæs preferred solution, but it works. Hope this is
  10213. of some use.á Joe Wood, Goring-by-Sea.
  10214. 6.11
  10215. Å    Impression master pages Ö To create a document with the same master
  10216. page as an earlier document in Impression, load the first document, save
  10217. a new copy with a new name, create a new chapter with the following
  10218. choices: Insert after current chapter / Restart page at 1 / Copy master
  10219. page and delete all of the chapters except the new one.á George Foot,
  10220. Oxted.
  10221. 6.11
  10222. Å    Numeric resets Ö I have a 420/1 and, because of lack of space on the
  10223. table where the computer lives, the keyboard has to be kept upright
  10224. behind the computer when it is not in use. One day, I turned the
  10225. computer on and was greeted by a display moving rapidly upwards and
  10226. slowly sideways. Adjusting the monitor had no effect. It turned out that
  10227. one of the numeric keys was being held down by the corner of the monitor
  10228. and the monitor type had been reconfigured as I switched on. So, if you
  10229. keep your keyboard upright (yes, I know itæs bad practice, but where
  10230. else can I keep it?) and your display goes crazy, try a <numeric> reset
  10231. before panicking!á P Young, Cheltenham
  10232. 6.11
  10233. Å    Pocket Book and BJ10ex problems Ö It appears that the Pocket Bookæs
  10234. built in Canon BJ10e driver does not work correctly with the Canon
  10235. BJ10ex. We have a printer driver (supplied to us from Psion via Richard
  10236. Collinson) which works. If you have this printer, send us a formatted
  10237. SSD or a disc and your problems will be over. Psion can also supply
  10238. other drivers on SSD if necessary.á Simon Moy, Archive.
  10239. 6.11
  10240. Å SigmaSheet revisited Ö John Waddellæs SigmaSheet fix in last monthæs
  10241. Hints & Tips requires one more line within DEFPROCexit: *Country UK.
  10242. 6.11
  10243. Å    Solid icons Ö If the Édrag solid file iconsæ option is set in RISC OS
  10244. 3, it causes applications like DrawPlus to reject the file as being of
  10245. an incompatible file format. This prevents files being dragged between
  10246. applications in the normal way.á Mike McNamara, Dunstable.ááA
  10247. 6.11
  10248. Using RISCáOSá3.10
  10249. 6.11
  10250. Hugh Eagle
  10251. 6.11
  10252. Neil Dickson asks a jolly good question: have I or Archive ever had any
  10253. response from Acorn indicating that they are paying attention to this
  10254. column? Well, I havenæt (yet) and I think Paul would have told me if he
  10255. had. Surely, itæs inconceivable that Acorn are not interested in the
  10256. experiences that have been recounted, the suggestions offered and the
  10257. views expressed here. Isnæt it? Perhaps weæll have some comment for next
  10258. month. Letæs wait and see ...
  10259. 6.11
  10260. RISCáOSá4 Wish List (continued)
  10261. 6.11
  10262. Å    Alarm ù (a) An option to display the digital clock not on the iconbar
  10263. but at the top right corner of the screen in front of all other windows.
  10264. (b) An option to set an alarm that goes off after every n (settable)
  10265. minutes Ö to remind you just how much time you are spending on the
  10266. machine!!?? (Rex Palmer)
  10267. 6.11
  10268. Å    Shutdown ù The <shift-ctrl-F12> routine should dismount any floppy
  10269. discs that may be present, then remind the user that they are still
  10270. there. (Peter Young)
  10271. 6.11
  10272. All the following are from Neil Dickson:
  10273. 6.11
  10274. Å    Paint ù (a) Allow local fills with the ömaskò colour. (b) Use outline
  10275. fonts.
  10276. 6.11
  10277. Å    Edit ù (a) Use multiple fonts (and maybe accept graphic files: i.e.
  10278. have a simple wordprocessing option). (b) Update the font list each time
  10279. a new font directory is loaded (like Draw and Impression do.)
  10280. 6.11
  10281. Å    Printers ù (a) Put as much as possible of the code into ROM, to save
  10282. loading time. (b) A quicker method of ötogglingò within !Printers when
  10283. deciding which are active and which are inactive.
  10284. 6.11
  10285. Å    Calc ù Make it better, but less complicated than SciCalc. (E.g.
  10286. include memory buttons and a percentage button, and allow
  10287. multiplication, division, etc, by a constant.)
  10288. 6.11
  10289. Å    Draw ù (a) Optional detachable toolbox. (b) An option for redefining
  10290. the toolbox (e.g. to include zoom and edit tools.) (c) Patterned fills
  10291. (hatching, stripes, etc.)
  10292. 6.11
  10293. Å    Tidy windows ù Include a öTidy windowsò option on the desktop.
  10294. 6.11
  10295. Å    Filer multitasking ù An option to make all filer actions (load and
  10296. save, disc mounting, etc) multitask.
  10297. 6.11
  10298. Å    Replacement of system font ù Optional replacement of the system font
  10299. by an outline font on the desktop (like the Germans seem to have already
  10300. in RISCáOSá3.12)!
  10301. 6.11
  10302. Å    RMFaster ù An option to RMFaster various modules, such as
  10303. SharedCLibrary, from the Task Manager (rather than having to type in the
  10304. command at the command line).
  10305. 6.11
  10306. Å    Virtual memory ù For hard disc users.
  10307. 6.11
  10308. Å    Built in sounds ù A greater variety.
  10309. 6.11
  10310. Å    Simpler mode changing ù A less fiddly method.
  10311. 6.11
  10312. Å    Keyboard emulation of the mouse ù e.g. using <Alt> and the arrow keys.
  10313. 6.11
  10314. Å    Auto-scrolling of font menus ù Make the list of fonts scroll
  10315. automatically when the pointer reaches the bottom.
  10316. 6.11
  10317. Å    Compression of sprite files ù Either in addition to, or instead of,
  10318. compression of entire discs, arrange for sprite files to be compressed
  10319. always.
  10320. 6.11
  10321. Å    Font management ù Put a Font Manager on the icon bar showing a list of
  10322. available directories which you can select and deselect by clicking.
  10323. (Sounds like !FMaster from Risc User.)
  10324. 6.11
  10325. Miscellaneous
  10326. 6.11
  10327. Superfluous icons in template definitions
  10328. 6.11
  10329. Mick Day has found numerous examples of template definitions in standard
  10330. RISCáOSá3 applications which contain extra unused icons. The ösaveò
  10331. window in Alarm is just one example: this has four superfluous icons.
  10332. (To see for yourself: find the template file inside Resources:$.
  10333. Resources, load it into FormEd, use the menu to assign vertical and
  10334. horizontal scroll bars and a size icon, then scroll around the window.)
  10335. He has also noted inconsistent naming of templates and numbering of
  10336. icons. If you use existing windows borrowed from existing applications,
  10337. beware that the templates may require more memory than you might expect
  10338. because of the space taken by the extra icon definitions and pay close
  10339. attention to the icon numbering. As Tim Nicholson comments: it is a
  10340. great pity that Acorn did not supply a suitable öcleanò set of templates
  10341. to work from.
  10342. 6.11
  10343. öOS_Findò and image filing systems
  10344. 6.11
  10345. In one of my programs, I need to be able to check that a specified
  10346. filing system object (which might be either a file or directory) is
  10347. actually present and, in particular, is not on a floppy disc that has
  10348. been removed. In RISCáOSá2, I found that the following code seemed
  10349. fairly foolproof:
  10350. 6.11
  10351. ON ERROR LOCAL:PROCReport(öCanæt find ò+Object$):ENDPROC
  10352. 6.11
  10353. SYS öOS_Findò,&40,Object$ TO FileHandle%
  10354. 6.11
  10355. IF FileHandle%<>0 THEN SYS öXOS_Findò,0,FileHandle%
  10356. 6.11
  10357. RESTORE ERROR
  10358. 6.11
  10359. This relied on the fact that the SWI call öOS_Findò,&40 (which is the
  10360. general routine for opening a file) should öopenò Object$ whether it is
  10361. a directory or a file. However, with the arrival of öimageò filing
  10362. systems such as DOSFS and SparkFS, I found that this wouldnæt work,
  10363. because an attempt to öopenò a directory inside an image filing system
  10364. (e.g. a directory inside a SparkFS archive) resulted in an error
  10365. (contrary to the rules set out in the Programmeræs Reference Manual).
  10366. 6.11
  10367. David Pilling says öthere are two entry points to SparkFS, one via the
  10368. OS image filing system, the other via a traditional FS entry. The code
  10369. in these after the entry point is the same. So it looks like it is the
  10370. OS that is faulting your operation and not SparkFS.ò
  10371. 6.11
  10372. I have now rewritten my code so that it checks to see whether Object$ is
  10373. a directory and, if it is, it looks inside it for a file and tries to
  10374. open that. This seems to work with image filing systems as well as
  10375. others, but is a bit cumbersome to say the least (and as David Pilling
  10376. observes is still open to being fooled by cacheing). Does anyone know of
  10377. a simple and genuinely foolproof way of ensuring that a filing system
  10378. object is present?
  10379. 6.11
  10380. Applications that refuse to Shutdown
  10381. 6.11
  10382. Keith Gardner has experienced problems with applications that interfere
  10383. with the Shutdown process and cause the computer to hang. He refers to
  10384. advice in the June issue of Risc User, according to which the Shutdown
  10385. routine in RISCáOSá3 (which can be selected from the Acorn icon or by
  10386. pressing <ctrl-shift-F12>) cannot cope if more than one Run file is open
  10387. at the time of Shutdown. Run files are left open while applications are
  10388. running if there are any lines after the line that calls RunImage. One
  10389. way to avoid the problem is to remove surplus blank lines or lines
  10390. containing remarks (prefaced with a | ). However, applications sometimes
  10391. contain tidying up commands such as RMKill commands to get rid of
  10392. modules: in these cases, it may be necessary to Quit one or more
  10393. applications before selecting Shutdown.
  10394. 6.11
  10395. Matters arising
  10396. 6.11
  10397. Testing a printeræs on-line status
  10398. 6.11
  10399. (Archive 6.9 p12) Mick Day found that the printer test routine published
  10400. in the June edition of Archive lied! It told him that the printer was
  10401. not on line whether it was or not, and the printer beeped if it was on
  10402. line. Tim Nicholson says that the routine (as previously published) can
  10403. fail for two reasons: Firstly, it assumes a printer buffer of 1024
  10404. bytes, but the actual size depends upon the setting of *Configure
  10405. PrinterBufferSize, which may be different from the default of 1Kb.
  10406. Secondly, the first line of the program redirects the whole output
  10407. stream to the printer, thus if the program is run from the desktop, the
  10408. output which normally goes to the Task window that the desktop
  10409. generates, goes to the printer instead as well as the test byte of
  10410. CHR$(0). Typically this stream will contain several control codes to
  10411. open the task window display and the Task window title, e.g. RUN
  10412. ADFS::DiscName.$.PrintTest. Although this stream is sent before running
  10413. the program, the FX 3 call at the top of the program is executed in time
  10414. to redirect this part way through and upset the printer.
  10415. 6.11
  10416. Tim suggests the following variant of the routine:
  10417. 6.11
  10418. *FX21,3
  10419. 6.11
  10420. empty%=ADVAL(-4)
  10421. 6.11
  10422. PRINT öPrinter is ò;
  10423. 6.11
  10424. *FX3,10
  10425. 6.11
  10426. PRINTCHR$(0);
  10427. 6.11
  10428. a%=INKEY(20)
  10429. 6.11
  10430. a%=ADVAL(-4)
  10431. 6.11
  10432. *FX3,0
  10433. 6.11
  10434. *FX21,3
  10435. 6.11
  10436. IF a%<>empty% THEN
  10437. 6.11
  10438. PRINT önot on lineò
  10439. 6.11
  10440. ELSE PRINT öon lineò
  10441. 6.11
  10442. ENDIF
  10443. 6.11
  10444. END
  10445. 6.11
  10446. This deals with the first problem by comparing the buffer length
  10447. immediately after flushing with the length after inserting the test byte
  10448. and pausing to allow throughput, and with the second by including a
  10449. PRINT statement before redirecting the output stream.
  10450. 6.11
  10451. Tim notes that the original program would run correctly (subject to the
  10452. buffer size being correct) from the command line, i.e. after pressing
  10453. <f12>, and CHAINing or LOADing and RUNning.
  10454. 6.11
  10455. Tim does not understand the supposed warning from Acorn about the use of
  10456. ADVAL(Ö4) (see Archive 6.7 p41) since it is a use specified in the Basic
  10457. manual. He can only assume it is a confusion with the use of positive
  10458. ADVAL parameters, which are only meaningful if a podule with an analogue
  10459. input which mimics that of the original BBC Micro is fitted. He has
  10460. experienced no difficulties using negative ADVAL parameters to inspect
  10461. the condition of buffers and is not aware of any differing action under
  10462. RISCáOSá3.1x as opposed to 2.0 with this facility.
  10463. 6.11
  10464. Basic program compaction
  10465. 6.11
  10466. (Archive 6.9 p65) Rex Palmer says that in his experience compacted
  10467. programs only cause problems when you try to alter them. The problem
  10468. seems to occur with both Edit and BasicEdit. If a compacted program is
  10469. loaded into either of these and any alterations made, then when the
  10470. program is re-saved, the line that has been altered will generate the
  10471. error even if the resulting error is not part of the line that was
  10472. altered!
  10473. 6.11
  10474. Altering the keyboard status
  10475. 6.11
  10476. (Archive 6.8 p27 and 6.9 p65) Rex Palmer has written to explain the
  10477. purpose of bit 7 (the öShift enableò bit) of the keyboard status byte.
  10478. When this bit is set, the <Shift> key reverses the action of the
  10479. <CapsLock> key. Thus, if you hold down <Shift> while pressing <CapsLock>
  10480. then release both keys, you put the computer in a state where pressing
  10481. the <Shift> key with a letter key gives you lower case letters. The
  10482. computer can be configured to start up in this state. Alternatively, the
  10483. command *FX202,128,111 will achieve the same effect ... since 111 = 255
  10484. Ö 128 Ö 16 the command sets bit 7 (Shift Enable on) and unsets bit 4
  10485. (Caps Lock on).
  10486. 6.11
  10487. To recap, the most useful commands are likely to be:
  10488. 6.11
  10489. *FX202,0,239 to set Caps Lock on
  10490. 6.11
  10491. *FX202,16,239 to set Caps Lock off
  10492. 6.11
  10493. *FX202,128,111 to select ShiftCaps
  10494. 6.11
  10495. Programmeræs Reference Manual
  10496. 6.11
  10497. The increase in the number of pages is not önearly 50%ò, as I said last
  10498. month, but is in fact over 70% (excluding the indexes, there were 1,882
  10499. pages in the RISCáOSá2 manual and there are over 3,200 in the new
  10500. edition.) Sorry about the mistake!
  10501. 6.11
  10502. Arm3 hare and tortoise (again)
  10503. 6.11
  10504. (Archive 6.6 p59, 6.8 p30 and 6.10 p63) With the help of Jim Nottingham,
  10505. I have found out the source of my problem. The Run file of the Aleph One
  10506. !Arm3 application should read:
  10507. 6.11
  10508. IconSprites <Obey$Dir>.!Sprites
  10509. 6.11
  10510. |Use only one of the lines
  10511. 6.11
  10512. |below, comment out the other.
  10513. 6.11
  10514. |Load <Obey$Dir>.CMdlUnix
  10515. 6.11
  10516. Load <Obey$Dir>.CacheMdl
  10517. 6.11
  10518. Load <Obey$Dir>.IconMdl
  10519. 6.11
  10520. <Obey$Dir>.Kick CacheIcon
  10521. 6.11
  10522. In my file, the CacheMdl line had somehow got REMæd out. I vaguely
  10523. remember that when I first tried to install !Arm3 with RISCáOSá3, I read
  10524. the instruction about öusing only one of the lines belowò as meaning
  10525. that only one of the following three lines should be used and, since I
  10526. assumed that I no longer needed öCacheMdlò because RISCáOSá3 now had a
  10527. module to deal with this, I removed it as well as the CMdlUnix line. On
  10528. looking at the file again, I now presume that you are only supposed to
  10529. remove one of these two lines, so I have reinstated the CacheMdl line
  10530. and everything seems fine. A case of trying to be too clever, it seems.
  10531. 6.11
  10532. Redraw problems (and an alternative)
  10533. 6.11
  10534. (Archive 6.8 p29 and 6.10 p63) Richard Hallas confirms that the problem
  10535. of incorrect screen redrawing in Edit and DeskEdit is indeed due to a
  10536. bug in the Shared C Library and that the problem seems to occur with
  10537. particularly long lines. He says that any program which uses the C
  10538. libraryæs text object feature will suffer from the bug until Acorn
  10539. corrects it in a future version of CLib. He adds that Acorn has been
  10540. aware of the problem for some time, so hopefully a fix should not be too
  10541. far off.
  10542. 6.11
  10543. Richard used to use DeskEdit to produce files for input to PMS which
  10544. frequently involved very long input lines indeed (up to several hundred
  10545. characters). He would occasionally reposition the caret and start
  10546. typing, only to find that his input had gone into a separate part of the
  10547. file which was not on the screen! Partly because of this bug, he has now
  10548. moved over to using the public domain text editor, Zap, which he
  10549. thoroughly recommends: öIt has its own redraw routines, which are
  10550. unbelievably fast and totally accurate: plus you can get twice as much
  10551. text on the screen in multisync modes.òááA
  10552. 6.11
  10553. Using RISC OS 3
  10554. 6.10
  10555. Program points
  10556. 6.10
  10557. Å    QuicKey ù Last month (Archive 6.9 p 61), we reported a problem with
  10558. this program. Ian Copestake has written to say that this problem was
  10559. cured by an update released in April 1992 ù over a year ago! ù and was
  10560. caused by a bug in RISCáOSá3. He says that customers can always obtain
  10561. minor updates like this by returning their original disc plus ú1 worth
  10562. of postage stamps (or a reasonable overseas equivalent). He also asks if
  10563. contributors can check that they have up-to-date versions before
  10564. reporting problems.
  10565. 6.10
  10566. Å    Fourth Dimension games ù A. H. Hunt had a problem with Black Angel
  10567. (öone of the casket segments was missing at the Planet Valve (23%)ò) but
  10568. this was rectified by 4D immediately. He also says that Break147 and
  10569. Saloon Cars run (for him) without any problems.
  10570. 6.10
  10571. However, Arthur Taylor found that the hint by D. S. Allen in Archive 6.9
  10572. p62 on Break147 and SuperPool didnæt work for him. Perhaps
  10573. significantly, the relevant line of the Basic program was line 100 not
  10574. line 90 in his copy, and also his program wasnæt compressed but was
  10575. heavily protected. (I wonder whether the version of Break147 which A. H.
  10576. Hunt has would work on his machine, and whether Fourth Dimension can
  10577. supply it?)
  10578. 6.10
  10579. Å    Rotor Ö This game from Arcana does not work on RISCáOS 3 and Arcana
  10580. have, apparently, gone bust. Fortunately, Superior Software have bought
  10581. out the rights to the program and sell it as part of their öPlay it
  10582. Again, Sam 1ò compilation. Apparently, if you send your Arcana version
  10583. of Rotor to Superior with a cheque for ú10, they will send you a copy of
  10584. Play it Again, Sam 1.á John Waddell, Renfrewshire.
  10585. 6.10
  10586. Å    Recommended programs (which do work) ù Arthur Taylor strongly
  10587. recommends Simon Burrowsæ FontsPlus: he has created four fonts
  10588. directories and with FontsPlus on the iconbar he can choose to have all
  10589. or none of them active (if none, the ROM fonts are still available); if
  10590. he doesnæt load FontsPlus, then they are all available ö... simple as
  10591. that!ò
  10592. 6.10
  10593. He says that other PD or shareware programs that seem to work fine with
  10594. RISCáOSá3.10 include: DiskBase v0.65, DiskCat v1.50 (disc cataloguers),
  10595. FuncKeys v2.02 and KeyWindow v1.40 (keystrips and keys from the desktop)
  10596. and a super neat new mode changer from Dave Thomas: !Mode v1.03 ù it can
  10597. store up to 8 modes in a small desktop window and seems very well
  10598. behaved.
  10599. 6.10
  10600. Å    Watford scanner Ö In Archive 6.8 p27, we reported problems with the
  10601. Watford Handscanner (1990, issue 2). Apparently, there is an upgrade to
  10602. the software (version 1.1) available from Watford.á D Webb, Cumbernauld.
  10603. 6.10
  10604. Disc drive problems
  10605. 6.10
  10606. Å    360Kb PC discs Ö Richard Fallas writes: öWhile trying to transfer data
  10607. to the hard drive of an old PC recently, I discovered that there are no
  10608. hard and fast rules about compatibility with 40 track discs. Previously,
  10609. I had used my switchable 40/80 track 5╝ö drive (with Beebug Interface)
  10610. under the emulator, having set up a suitable device in the config.sys
  10611. file. This no longer works under RISCáOS 3.10, so I tried to transfer
  10612. directly.
  10613. 6.10
  10614. öThe disc format was correctly identified and the files written (with
  10615. switch set to 80 track) without hitch, but the PC didnæt want to read
  10616. them (using copy *.*), although it would give me the directory listing.
  10617. 6.10
  10618. öBeing stubborn, I tried again, saving and copying file by file. This
  10619. worked... sometimes! The longer the file the greater the chance of a
  10620. glitch, but eventually I got all the files across. This worked on files
  10621. up to 75Kb in size, so persevere!ò
  10622. 6.10
  10623. Å    IDE drives ù Arthur Taylor advises that you should not assume that the
  10624. IDE support built into RISCáOSá3 will work with an IDE drive that has
  10625. been added to a pre-A5000 computer. He found with his IDE drive supplied
  10626. by DT that he had to set the number of IDE discs to zero in !Configure
  10627. and then run DTæs setup, after which he had no problems.
  10628. 6.10
  10629. Å    ST506 drive fitted to an A3000 ù Tony Flaherty was interested to read
  10630. of the hardware problem experienced by Colin Wood (Archive 6.9 p61) when
  10631. fitting a ARM3 to his A410, since he has recently experienced a similar
  10632. problem with his A3000. He writes:
  10633. 6.10
  10634. öI have a basic ARM2 machine with RISC OS 3.1 and an Orion 2 Mb upgrade.
  10635. I recently added an external 20 Mb ST506 hard disc using an ex-PC MFM
  10636. drive and an Acorn external controller. The drive and a suitable power
  10637. supply/fan sit in a home-made expansion box.  I suffer the usual A3000
  10638. problems with regard to the oxidation of the memory connectors.  The
  10639. hard disc also tends to generate defects if the system is powered down
  10640. in an abnormal way (i.e. not <ctrl-shift-f12>).
  10641. 6.10
  10642. öMy problem was symptomatically the same as Colinæs in that, initially,
  10643. the system froze completely while I was editing a First Word Plus
  10644. document eventually forcing me to press <reset>. The screen flashed red
  10645. then blue with no further action Ö a power down produced the same
  10646. results, I tried this several times to no avail. Finally in desperation,
  10647. I opened the box but nothing looked out of place (no charring or loose
  10648. leads).  I powered up the machine and this time all was well, however,
  10649. when I verified the disc 20 or defects were reported, when these were
  10650. added to the discæs defect list, using *DEFECT, some of the files within
  10651. the first Word Plus application directory where corrupt and this had to
  10652. be restored from a backup.ò
  10653. 6.10
  10654. Tony wonders, therefore, whether Colin Woodæs assumption that his
  10655. problem related directly to the ARM3 upgrade was correct.  Could the
  10656. problem lie with RISC OS 3.1?  Does anyone have any views on this?
  10657. 6.10
  10658. Other matters arising
  10659. 6.10
  10660. Å    Cache control Ö In response to the comments about difficulty on
  10661. RISCáOS 3 with hares, tortoises and ARM3s, David Percival has sent in an
  10662. application that controls it properly. It evens notices if you have
  10663. typed in a cache-on or cache-off command or have executed one within a
  10664. program and it still displays the correct icon on the iconbar!á David
  10665. Percival, Swanley.
  10666. 6.10
  10667. Å    Redraw problems (Archive 6.8 p29) Ö A problem of incorrect screen re-
  10668. drawing in !Edit was mentioned. Tim Nicholson has had the same problem
  10669. with Deskedit! He says it seems to be a particular problem with
  10670. unformatted text that only has carriage returns/line feeds as paragraph
  10671. breaks and nowhere else. Since both pieces of software have the same
  10672. problem, he wonders if the bug is in the SharedCLib? Has anyone else had
  10673. the same problem?
  10674. 6.10
  10675. Å    Printing after Artworks (Archive 6.5 p31 and 6.8 p24) ù Roger King
  10676. reported a problem with spurious fine horizontal lines about 4mm long
  10677. scattered throughout printouts when printing from another application
  10678. after printing from Artworks. Steve Hutchinson found that putting his
  10679. LaserDirect podule in a different slot (as recommended by Computer
  10680. Concepts) solved this problem for him. Unfortunately, this didnæt work
  10681. for Roger. However, he has now found a cure: after printing from
  10682. Artworks, select öQueue controlò from the printer icon and then select
  10683. öFlush bufferò. He observes that it would seem that Artworks is leaving
  10684. something önastyò in the printer buffer, although a CC representative
  10685. with whom Roger discussed the problem suggested that Acornæs printer
  10686. drivers might be at fault.
  10687. 6.10
  10688. Å    Photocopying via LaserDirect (Archive 6.8 p24) ù Tim Powys-Lybbe has
  10689. got version 2.10 of the LaserDirect printer driver which works quite
  10690. satisfactorily and he has no more problems öphotocopyingò from Scanlight
  10691. Plus.
  10692. 6.10
  10693. He adds cryptically that ösome things may not print totally as one would
  10694. expect in Paint or Scanlight Plus, particularly their positioning on the
  10695. page, but putting them into Draw or Impression totally solves the
  10696. problem.òááA
  10697. 6.10
  10698. Hints and Tips
  10699. 6.10
  10700. Å    Altering Impression frames Ö Here is another one of those hints that
  10701. everyone but me probably knew about all the time: If you want to change
  10702. the attributes of several different frames, (like making them all
  10703. transparent) all you do is click on the first frame, call up Alter frame
  10704. (with <ctrl-f10>), make the changes and then click OK with <adjust>
  10705. instead of <select>. This keeps the Alter frame dialogue box on screen.
  10706. Then click <select> on the next frame to be changed and make the change
  10707. in the Alter frame dialogue box which is still there on screen. This
  10708. speeds things up no end.á Jochen Konietzko, K÷ln, Germany.
  10709. 6.10
  10710. Å    Background printing Ö Various comments in Archive have suggested that
  10711. you need the Ace PROdriver in order to get background printing. However,
  10712. Keith Sloanæs PD program !Spooler (on Shareware 24) works with a
  10713. Panasonic 1124 + Impression II on RISCáOS 3.11 Ö cheaper than using a
  10714. PROdriver!á Chris Dawson, Derby.
  10715. 6.10
  10716. Å    Disc storage boxes Ö Looking for new disc storage boxes? Look no
  10717. further than your local Supermarket or D.I.Y. Superstore! I have
  10718. recently purchased the Moduleá2000 Box and Lid (Ref. noæs. Unitá2 and
  10719. Lidá2) manufactured by Addis, the plastic kitchen accessory
  10720. manufacturers. The size of the box is 450╫190╫127.5mm and comes in
  10721. various colours. The combined cost of the box and lid recently was ú4.78
  10722. and it holds approximately 144 discs. (I have arranged them in four
  10723. rows, each holding 36 discs). What is more, it is made in Britain, like
  10724. the Acorn Archimedes, and better in style and strength. Give me Addis
  10725. any time!á Timothy Brown, Kent.
  10726. 6.10
  10727. Å    Floptical drives Ö I offer the following as ÉHintsæ arising out of the
  10728. fairly extended process of getting my floptical drives to work (with
  10729. much help from Morley), in the hope that they will be useful to other
  10730. new owners.
  10731. 6.10
  10732. The drive will not work at all with older ROMs fitted to the SCSI
  10733. interface board Ö you need version 1.12 at least. If you already have a
  10734. SCSI hard disc (or other SCSI peripheral) there should be no termination
  10735. resistors in the floptical drive. They are easily removed but you have
  10736. to remove the drive from its case first Ö they are close to the ribbon-
  10737. cable connector on the underside of the drive.
  10738. 6.10
  10739. The drive is recognized as two devices. The 21Mb disc counts as a hard
  10740. disc and appears as SCSIDrive5 in my case (as I already had a SCSI
  10741. drive), while the facility for reading and writing to ADFS discs counts
  10742. as a floppy drive. I could not get the floppy device to be recognized at
  10743. all using the SCSI_conf program on Morleyæs support disc, but had to do
  10744. it manually, using: *configure scsifslink 0 2 (followed by a reset).
  10745. This gives a Éfloppyæ icon called SCSIDrive0. (My drive arrived set up
  10746. as SCSI device 2 Ö you would need to modify the configure command if it
  10747. was set up to be another number.) There is no conflict between the SCSI
  10748. and ADFS floppy drives, although they are both called 0, and anyway the
  10749. computer will not allow you to call the SCSI floppy drive 1 if there is
  10750. no SCSI floppy drive 0.
  10751. 6.10
  10752. The writing under the SCSI drive icons changes from the drive name to
  10753. the disc name when a disc is mounted. This is potentially confusing
  10754. until you know about it, because the default name of the 21Mb disc is
  10755. the number of the drive. I got into even worse confusion because I had
  10756. tested the Floptical on its own, so the disc became labelled ödisc4ò.
  10757. When I restored the real SCSI hard disc as well as the Floptical, I got
  10758. an error message saying there was a conflict of disc names.
  10759. 6.10
  10760. By the way, since the floptical drive will not format discs, does anyone
  10761. know of a source of high-density floppies formatted ADFS 1.6Mb? Philip
  10762. Draper, Borehamwood.
  10763. 6.10
  10764. In view of this problem with flopticals being unable to format 1.6Mb
  10765. discs, we are offering pre-formatted discs at ú17 for 10. Ed.
  10766. 6.10
  10767. Å    Pocket Book battery connections Ö The middle battery connector on the
  10768. Pocket Book/Psion 3 does not allow the use of AA batteries with indented
  10769. positive and/or negative terminals (e.g. Ever Readyæs rechargeable
  10770. cells.)á Paul Bisonnette, Otterfing, Germany.
  10771. 6.10
  10772. Å    SigmaSheet does not return to the desktop neatly. If programs such as
  10773. Ovation are running, their Alt-key combinations will be lost when
  10774. SigmaSheet returns. To solve this, amend the SIGSHEET program as
  10775. follows. Look at the end and find DEFPROCexit and change it to read:
  10776. 6.10
  10777. DEFPROCexit
  10778. 6.10
  10779. *FX 4
  10780. 6.10
  10781. ON:*FX 225,1
  10782. 6.10
  10783. *RMReInit InternationalKeyboard
  10784. 6.10
  10785. IF INKEYÖ2 : END : ELSE *Quit
  10786. 6.10
  10787. John Waddell, Renfrewshire.ááA
  10788.  
  10789. Hints and Tips
  10790. 6.9
  10791. Å    Anti-aliased fonts Ö I find that anti-aliasing on a standard
  10792. resolution monitor gives a far too blurred image. My hint is to use the
  10793. outline version of the System font at an unexpanded point size. A bit of
  10794. experimentation is needed to get it right if you habitually use the
  10795. screen at some scale other than one to one but when you get it right,
  10796. the result is a nice fast, clean and clear font on any DTP or
  10797. wordprocessing package while you work on the text. Remember to change
  10798. the font to your preferred version for the final print. I am afraid I
  10799. canæt remember where I obtained the Outline System font.
  10800. 6.9
  10801. On my Pentoms game, I changed the transfer coefficients to sharpen up
  10802. the edges of my fancy fonts but that does not work well/at all on
  10803. RISCáOS 3. Is there a way of getting a program to automatically check
  10804. which OS it is running under so that I can disable this facility where
  10805. it wonæt work? Or is there another way of sharpening RISCáOS 3 fonts?
  10806. Yes I know about turning off anti-aliasing but that is not quite the
  10807. same thing at all Ö bits of the letters are missed if you do that.á
  10808. Simon Anthony, Nottingham.
  10809. 6.9
  10810. Å Backing up in one pass Ö The öNextò slot in the Task Manager can be
  10811. set from a !Boot file in RISC OS 3 to make backing up and copying of
  10812. full 800Kb discs occur in a single pass. Use the command
  10813. 6.9
  10814. WimpSlot -next 864K
  10815. 6.9
  10816. inside your !Boot file.á Barry Thompson,
  10817. 6.9
  10818. Alternatively (for RISC OS 2 owners) you can allocate more memory to the
  10819. Next Task slot by issuing the Wimp_SlotSize SWI call from Basic. All
  10820. that you need is a Basic program containing the line:
  10821. 6.9
  10822. SYS öWimp_SlotSizeò,-1,<slotsize>
  10823. 6.9
  10824. where <slotsize> is in bytes (e.g. use 65536 for 64Kb.)
  10825. 6.9
  10826. Simon Moy, NCS.
  10827. 6.9
  10828. Å    !Boot files are not strictly necessary within applications. They use
  10829. up disc space and slow down the opening of windows (especially over a
  10830. network). If an applicationæs !Boot file only contains the IconSprites
  10831. command, then this can be moved to the !Run file, and the !Boot file can
  10832. be deleted. The only effect is that the application will not show the
  10833. correct icon in the filer window until the application is actually run.á
  10834. Keith Harja, Derby.
  10835. 6.9
  10836. Å    Gods passwords Ö On this monthæs program disc is all you need for
  10837. getting the passwords for Gods. Andrew Ferguson, London N15.
  10838. 6.9
  10839. Å    Mono TIFF files Ö In reply to help for Ray Dawson in Archive 6.5 p18
  10840. for producing mono TIFF files from B&W scanned sprites. I have used
  10841. !MakeTiff version 2.00 by John Kortink to do exactly that. I examined
  10842. the resulting Tiff file using Graphics Workshop (under the emulator) and
  10843. Translator, and they both showed the converted sprite as a B&W image.á
  10844. Chris Bass, Grimsby.
  10845. 6.9
  10846. Å    Symbols for Impression Ö When using Impression, or even more so
  10847. Junior, it can sometimes be tedious to find a desired symbol from a font
  10848. such as Dingbats. Therefore, I have created a number of text files which
  10849. can be dragged into any Impression document. The format for such files
  10850. is ö« ò, without the quotes. This returns the type to its default size,
  10851. selects the desired font, inserts the character with ASCII code 174 and
  10852. resets the font to its default. N.B. The space at the end is essential.
  10853. This is so that one can do a <ctrl-right> to end of text. Without this
  10854. space, the font is not reset. I have given a number of pre-prepared ones
  10855. to Paul for inclusion on this monthæs program disc.á Neil Walker,
  10856. Norwich.
  10857. 6.9
  10858. You need to be very careful with this one. I tried it on Impression 2.19
  10859. and it gave an internal error and Impression bombed out! This was
  10860. because I didnæt have the symbol font in my system. I tried it on
  10861. version 2.17 and it complained politely that it didnæt have Symbol font
  10862. and let me carry on. I presume that the difference is because
  10863. Impression, from 2.18 onwards, has no limit to the number of fonts it
  10864. can handle so that part of the code must have been changed. Donæt say we
  10865. didnæt warn you! Ed.
  10866. 6.9
  10867. Å    Testing printersæ on-line status Ö Here is a way of testing whether
  10868. the printer is on- or off-line:
  10869. 6.9
  10870.  10 *FX 3,10
  10871. 6.9
  10872.  20 PRINT CHR$(0);
  10873. 6.9
  10874.  30 a = INKEY(20)
  10875. 6.9
  10876.  40 a = ADVAL(-4)
  10877. 6.9
  10878.  50 *FX 3,0
  10879. 6.9
  10880.  60 *FX 21,3
  10881. 6.9
  10882.  70 IF a <> 1023 THEN
  10883. 6.9
  10884.  80    PRINT öPrinter not on lineò
  10885. 6.9
  10886.  90 ELSE
  10887. 6.9
  10888. 100   PRINT öPrinter on lineò
  10889. 6.9
  10890. 110 ENDIF
  10891. 6.9
  10892. 120 END
  10893. 6.9
  10894. Paul Ribworth, Gloucester
  10895. 6.9
  10896. Å    Using high density discs Ö Until the advent of the A5000, all
  10897. Archimedes computers had an 800Kb 3╜ö disc drive so the problems of
  10898. different disc densities didnæt really arise. With the introduction of
  10899. the new A3000 and A4000 series, 1.6Mb drives are becoming more common
  10900. and some users are trying to save a few pence by formatting normal
  10901. density discs to 1.6Mb.
  10902. 6.9
  10903. Users of BBC and Master computers learned that there is no point in
  10904. paying extra for 80 track discs as the cheaper 40 track were actually
  10905. identical. The same is NOT true of 800Kb and 1.6Mb discs. The magnetic
  10906. coating on high density discs uses finer particles than the coating used
  10907. on standard (double density) types. This is designed to accept higher
  10908. signal levels without distortion. When the higher capacity format is
  10909. used, the drive automatically uses a stronger magnetic field to imprint
  10910. the data on the discs surface.
  10911. 6.9
  10912. Sometimes, good quality normal density discs can accept this level but
  10913. it does represent a severe overload. Even if all appears well at the
  10914. time, the larger particles used in the normal density coating are
  10915. frequently unable to retain the high level of magnetism required so it
  10916. can leak away in time making part of the data unreadable.
  10917. 6.9
  10918. Also, you should not use high density discs in a normal density drive if
  10919. they have previously been formatted to 1.44 or 1.6Mb. The lower flux
  10920. levels used for the normal format may not be able to completely erase
  10921. the earlier data. This can then Ébreak throughæ and corrupt data saved
  10922. later at the lower flux levels used with the smaller format. It may
  10923. sometimes take more than a month for this to happen. So donæt be fooled
  10924. into thinking that everything is OK just because all seems to be well
  10925. when you first format the disc. Many Archimedes users who have
  10926. Éborrowedæ preformatted 1.44Mb discs from work to use in their 800Kb
  10927. drives have experienced this problem.
  10928. 6.9
  10929. There is no reason why you cannot use a NEW high density disc at 800Kb,
  10930. it will just be more expensive.
  10931. 6.9
  10932. Because of this, it is obviously useless to do what used to be common
  10933. practice with the old 40/80 track discs, namely try to format them to 80
  10934. tracks and if it didnæt work use them for 40 track. Once you have
  10935. attempted to format an 800Kb disc to 1.6 or 1.44 Mb there is no going
  10936. back. I have had some success using a tape head demagnetiser to
  10937. completely wipe out data on 800Kb discs which had been formatted to
  10938. 1.6Mb so that they could be reformatted to 800Kb, but not everyone has
  10939. one of these.
  10940. 6.9
  10941. PC drives all have a sensor which detects the extra hole in a high
  10942. density disc and wonæt allow you to specify the wrong format. For some
  10943. reason, Acorn didnæt implement this feature on the Archimedes although
  10944. the detector is present on all high density drives. It is therefore
  10945. possible, by accident, to format a normal density disc to 1.6Mb. On a
  10946. PC, to do this you need to drill a hole in the case of the disc so it
  10947. canæt happen unintentionally.
  10948. 6.9
  10949. The most pernicious thing about this problem is that it can lead you
  10950. into a false sense of security. A normal density disc may format
  10951. perfectly to 1.6Mb and, for months, everything will appear to be well.
  10952. Then suddenly some of the data may become slightly corrupt, although the
  10953. disc may not actually appear to have any errors.
  10954. 6.9
  10955. If your data is precious enough to be worth saving, itæs worth the extra
  10956. few pence that the proper discs cost. The only time that I have known
  10957. people use normal density discs successfully as high density was with
  10958. expensive branded discs costing about ú1.30 each. As this is
  10959. considerably more than the price of unbranded high density discs, it
  10960. seems a foolish risk to take.á David Holden, Sydenham.ááA
  10961. 6.9
  10962. Hints and Tips
  10963. 6.9
  10964. Å    Anti-aliased fonts Ö I find that anti-aliasing on a standard resolution monitor gives a far too blurred image. My hint is to use the outline version of the System font at an unexpanded point size. A bit of experimentation is needed to get it right if you habitually use the screen at some scale other than one to one but when you get it right, the result is a nice fast, clean and clear font on any DTP or wordprocessing package while you work on the text. Remember to change the font to your preferred version for the final print. I am afraid I canæt remember where I obtained the Outline System font.
  10965. 6.9
  10966. On my Pentoms game, I changed the transfer coefficients to sharpen up the edges of my fancy fonts but that does not work well/at all on RISCáOS 3. Is there a way of getting a program to automatically check which OS it is running under so that I can disable this facility where it wonæt work? Or is there another way of sharpening RISCáOS 3 fonts? Yes I know about turning off anti-aliasing but that is not quite the same thing at all Ö bits of the letters are missed if you do that.á Simon Anthony, Nottingham.
  10967. 6.9
  10968. Å Backing up in one pass Ö The öNextò slot in the Task Manager can be set from a !Boot file in RISC OS 3 to make backing up and copying of full 800Kb discs occur in a single pass. Use the command
  10969. 6.9
  10970. WimpSlot -next 864K
  10971. 6.9
  10972. inside your !Boot file.á Barry Thompson,
  10973. 6.9
  10974. Alternatively (for RISC OS 2 owners) you can allocate more memory to the Next Task slot by issuing the Wimp_SlotSize SWI call from Basic. All that you need is a Basic program containing the line:
  10975. 6.9
  10976. SYS öWimp_SlotSizeò,-1,<slotsize>
  10977. 6.9
  10978. where <slotsize> is in bytes (e.g. use 65536 for 64Kb.)
  10979. 6.9
  10980. Simon Moy, NCS.
  10981. 6.9
  10982. Å    !Boot files are not strictly necessary within applications. They use up disc space and slow down the opening of windows (especially over a network). If an applicationæs !Boot file only contains the IconSprites command, then this can be moved to the !Run file, and the !Boot file can be deleted. The only effect is that the application will not show the correct icon in the filer window until the application is actually run.á Keith Harja, Derby.
  10983. 6.9
  10984. Å    Gods passwords Ö On this monthæs program disc is all you need for getting the passwords for Gods. Andrew Ferguson, London N15.
  10985. 6.9
  10986. Å    Mono TIFF files Ö In reply to help for Ray Dawson in Archive 6.5 p18 for producing mono TIFF files from B&W scanned sprites. I have used !MakeTiff version 2.00 by John Kortink to do exactly that. I examined the resulting Tiff file using Graphics Workshop (under the emulator) and Translator, and they both showed the converted sprite as a B&W image.á Chris Bass, Grimsby.
  10987. 6.9
  10988. Å    Symbols for Impression Ö When using Impression, or even more so Junior, it can sometimes be tedious to find a desired symbol from a font such as Dingbats. Therefore, I have created a number of text files which can be dragged into any Impression document. The format for such files is ö« ò, without the quotes. This returns the type to its default size, selects the desired font, inserts the character with ASCII code 174 and resets the font to its default. N.B. The space at the end is essential. This is so that one can do a <ctrl-right> to end of text. Without this space, the font is not reset. I have given a number of pre-prepared ones to Paul for inclusion on this monthæs program disc.á Neil Walker, Norwich.
  10989. 6.9
  10990. You need to be very careful with this one. I tried it on Impression 2.19 and it gave an internal error and Impression bombed out! This was because I didnæt have the symbol font in my system. I tried it on version 2.17 and it complained politely that it didnæt have Symbol font and let me carry on. I presume that the difference is because Impression, from 2.18 onwards, has no limit to the number of fonts it can handle so that part of the code must have been changed. Donæt say we didnæt warn you! Ed.
  10991. 6.9
  10992. Å    Testing printersæ on-line status Ö Here is a way of testing whether the printer is on- or off-line:
  10993. 6.9
  10994.  10 *FX 3,10
  10995. 6.9
  10996.  20 PRINT CHR$(0);
  10997. 6.9
  10998.  30 a = INKEY(20)
  10999. 6.9
  11000.  40 a = ADVAL(-4)
  11001. 6.9
  11002.  50 *FX 3,0
  11003. 6.9
  11004.  60 *FX 21,3
  11005. 6.9
  11006.  70 IF a <> 1023 THEN
  11007. 6.9
  11008.  80    PRINT öPrinter not on lineò
  11009. 6.9
  11010.  90 ELSE
  11011. 6.9
  11012. 100   PRINT öPrinter on lineò
  11013. 6.9
  11014. 110 ENDIF
  11015. 6.9
  11016. 120 END
  11017. 6.9
  11018. Paul Ribworth, Gloucester
  11019. 6.9
  11020. Å    Using high density discs Ö Until the advent of the A5000, all Archimedes computers had an 800Kb 3╜ö disc drive so the problems of different disc densities didnæt really arise. With the introduction of the new A3000 and A4000 series, 1.6Mb drives are becoming more common and some users are trying to save a few pence by formatting normal density discs to 1.6Mb.
  11021. 6.9
  11022. Users of BBC and Master computers learned that there is no point in paying extra for 80 track discs as the cheaper 40 track were actually identical. The same is NOT true of 800Kb and 1.6Mb discs. The magnetic coating on high density discs uses finer particles than the coating used on standard (double density) types. This is designed to accept higher signal levels without distortion. When the higher capacity format is used, the drive automatically uses a stronger magnetic field to imprint the data on the discs surface.
  11023. 6.9
  11024. Sometimes, good quality normal density discs can accept this level but it does represent a severe overload. Even if all appears well at the time, the larger particles used in the normal density coating are frequently unable to retain the high level of magnetism required so it can leak away in time making part of the data unreadable.
  11025. 6.9
  11026. Also, you should not use high density discs in a normal density drive if they have previously been formatted to 1.44 or 1.6Mb. The lower flux levels used for the normal format may not be able to completely erase the earlier data. This can then Ébreak throughæ and corrupt data saved later at the lower flux levels used with the smaller format. It may sometimes take more than a month for this to happen. So donæt be fooled into thinking that everything is OK just because all seems to be well when you first format the disc. Many Archimedes users who have Éborrowedæ preformatted 1.44Mb discs from work to use in their 800Kb drives have experienced this problem.
  11027. 6.9
  11028. There is no reason why you cannot use a NEW high density disc at 800Kb, it will just be more expensive.
  11029. 6.9
  11030. Because of this, it is obviously useless to do what used to be common practice with the old 40/80 track discs, namely try to format them to 80 tracks and if it didnæt work use them for 40 track. Once you have attempted to format an 800Kb disc to 1.6 or 1.44 Mb there is no going back. I have had some success using a tape head demagnetiser to completely wipe out data on 800Kb discs which had been formatted to 1.6Mb so that they could be reformatted to 800Kb, but not everyone has one of these.
  11031. 6.9
  11032. PC drives all have a sensor which detects the extra hole in a high density disc and wonæt allow you to specify the wrong format. For some reason, Acorn didnæt implement this feature on the Archimedes although the detector is present on all high density drives. It is therefore possible, by accident, to format a normal density disc to 1.6Mb. On a PC, to do this you need to drill a hole in the case of the disc so it canæt happen unintentionally.
  11033. 6.9
  11034. The most pernicious thing about this problem is that it can lead you into a false sense of security. A normal density disc may format perfectly to 1.6Mb and, for months, everything will appear to be well. Then suddenly some of the data may become slightly corrupt, although the disc may not actually appear to have any errors.
  11035. 6.9
  11036. If your data is precious enough to be worth saving, itæs worth the extra few pence that the proper discs cost. The only time that I have known people use normal density discs successfully as high density was with expensive branded discs costing about ú1.30 each. As this is considerably more than the price of unbranded high density discs, it seems a foolish risk to take.á David Holden, Sydenham.ááA
  11037. 6.9
  11038. Using RISCáOSá3.10
  11039. 6.9
  11040. Hugh Eagle
  11041. 6.9
  11042. More encouragement for the faint-hearted!
  11043. 6.9
  11044. Stuart Bell says: öHaving read the RISCáOS Column for the past few months, I approached the upgrade with caution, afraid of all sorts of installation and compatibility problems. I guess that by the nature of the things, itæs those people who encounter problems who write in, thereby giving a false impression of the true situation. So, if youære still with RISCáOS 2 and thinking about upgrading, be encouraged. Installing RISCáOS 3 on my A310, including removing the main board and installing the IFEL ROM carrier board took about an hour from start to finish, and I experienced no unforeseen problems.
  11045. 6.9
  11046. öHaving been warned of problems with Compression 1.1, I de-compressed all files first. I await the free upgrade from CC. There is the reported problem with early versions of Font-FX and thatæs in hand.
  11047. 6.9
  11048. öA couple of warnings, though: As well as powering up with <Delete> depressed, also make sure that youæve re-connected the keyboard first. (Donæt laugh ù it could have been you! That cost me several minutes of panic.) Secondly, alter the Font Size figure before loading your first Impression document, which otherwise can take several minutes to load with a 32Kb buffer.ò
  11049. 6.9
  11050. Å Avie Electronics 4Mb A310 upgrade Ö The following information has come from Avie: LK12 should be altered to 1-3 and 2-4. Issue 1 PCBs do not have LK12 and require modification as follows:
  11051. 6.9
  11052. Option 1: pins 2 and 24 on all of the ROMs are to be swapped. Remove pins 2 and 24 from each ROM socket by bending them up. Join pin 24 on all ROMs to GND. Join pin 2 on all ROMs to LA18 on IC28, pin 18.
  11053. 6.9
  11054. Option 2: remove pin 2 from each stamped socket on PCB and strap a wire between the pins and LA18. Likewise, pin 24 can be strapped to GND after removing the pins in the stamped sockets.
  11055. 6.9
  11056. Hardware problems
  11057. 6.9
  11058. Watford Electronics ARM3 Ö When Colin Wood fitted a Watford Electronics ARM3 upgrade to his A410 it didnæt work. öThe screen flashed red/blue, but no beep. Just dead.ò As he had recently fitted RISCáOSá3, he decided to replace the RISCáOSá2 chips and everything seemed OK, but when he put the RISCáOSá3 chips back, again it didnæt work. Watfordæs help line couldnæt help, so he returned the ARM3 and since they were (again) out of stock he cancelled his order and got most (but not all, apparently) of his money back. Another ARM3, from CJE Microæs, worked first time.
  11059. 6.9
  11060. Watford A310 RAM upgrades Ö Watford Electronics say that they are aware that their early A305/310 RAM upgrades do not work with RISCáOS 3 but they do not have any solution. They simply recommend that you buy one of their newer RAM upgrades instead because they do work with RISCáOS 3. Fortunately, IFEL have stepped into the breach. They can offer new PAL chips to plug into the Watford boards that will solve the problem. These PAL chips are ú3 +VAT each from IFEL and you need to state whether you have the 2Mb or the 4Mb version. (This refers to the upgrades that consisted of two PCBs with a ribbon cable along the RHS of the machine.)
  11061. 6.9
  11062. Program problems
  11063. 6.9
  11064. QuicKey clash Ö J. Nichols reports that, if QuicKey is loaded from within a !Boot file, it can remove the *Opt 4,2 status from the booted disc resulting in a disc which no longer runs a !Boot file.
  11065. 6.9
  11066. !Edit ù Following last monthæs reports of a öbugò in Edit we now have the following from Tom Rank: öThere seemed to be a rare problem with Edit the other day; my text (exported from Ovation) was displayed in a most corrupted way, with a large amount of blank screen to start with and then disintegrating words. I thought it was a problem with Ovation. However, when I tried to show it to John Wallace of Risc Developments at BETT, the file displayed without problems, as it did back on my own machine the next day. Any idea why?ò
  11067. 6.9
  11068. Fun School 4 (for the under 5s) ù Tom Rank found that this ran under RISCáOSá3.00 but not 3.10, but Europress Software supplied an updated disc very promptly which now works.
  11069. 6.9
  11070. Freddy Teddy ù Topologika supplied a new version to Tom Rank on the spot at BETT!
  11071. 6.9
  11072. Ovation ù Tom Rank says you are urged to obtain 1.37S (dated 17 January 1993). This overcomes the saving with <F3> problem ù which really was a problem, so do upgrade. They have also restored the Éselect allæ shortcut Ö but only if you use the right-hand <Ctrl> key along with A (to avoid the problem of catching <Ctrl-A> instead of <Ctrl-S> or just <A>).
  11073. 6.9
  11074. This version also contains three new printing options, not documented: Fit, Centre and Registration marks. These should be self explanatory, but Tom is not quite sure about them!
  11075. 6.9
  11076. Break147 and SuperPool ù D. S. Allen got these to work using the information provided by David Holden in the April column. He writes: öIn Break147 there is one Basic program called !Snook which contains the line
  11077. 6.9
  11078.  90SYSá26,64,64.
  11079. 6.9
  11080. A REM statement in front of the SYS will cure the problem and the program will then run under RISCáOSá3.1.
  11081. 6.9
  11082. öSimilarly, in SuperPool there is a Basic program !Pool in the Data directory in which line 60 has the same SYSá26,64,64 statement.
  11083. 6.9
  11084. öNote that to make these changes, people will require the read/write version of Mark Smithæs excellent ArcFS program.ò (Or, presumably, an equivalent utility such as SparkFS.)
  11085. 6.9
  11086. Superior Golf / Construction Set ù We reported in Archive 6.7 p43 that Dave Wilcox had found that these did not work in RISCáOSá3.10. Rob Brown, however, says he has had no problems with them.
  11087. 6.9
  11088. Corruption ù Rob Brown says that this can be made to work by modifying its !Run file to kill the RISCáOSá3 Shared C Library module and load the very old version of the module supplied with the game. To do this, include at the beginning of the !Run file the line:
  11089. 6.9
  11090. RMKill SharedCLibrary
  11091. 6.9
  11092. and then add at the end of the file the following two lines:
  11093. 6.9
  11094. RMKill SharedCLibrary
  11095. 6.9
  11096. RMLoad SharedCLibrary
  11097. 6.9
  11098. to remove the old version and reload the RISCáOSá3 version of the module. He points out that it may well be advisable to Quit any other applications that may be using the RISCáOSá3 Shared C Library module before running the game.
  11099. 6.9
  11100. Freddyæs Folly ù Rob Brown advises that this game contains a !Run file (in Basic) which includes an automatic Éauto-configurationæ of the computeræs memory as well as setting up a number of initial program parameters. The various auto-configuration elements should be deleted from this file. A further complication is that the disc is copy protected, but it should be possible to rename the original !Run file (to say !RunOLD) and re-save a new !Run file containing only the initial program parameters. He also advises that the game assumes that the default disc drive is 0. For users with a hard disc this can easily be set by typing:
  11101. 6.9
  11102.     Drive 0
  11103. 6.9
  11104. at the command line (accessed by pressing function key <F12>) before starting the game. Alternatively, the gameæs !Run file can be appropriately amended by including the ö<Obey$Dir>ò command.
  11105. 6.9
  11106. NOTE: the advice on Corruption and Freddyæs Folly is included in the program compatibility chart which Rob Brown has compiled and which has been included on the Archive monthly program disc. He will welcome any information which will help him to make the chart as comprehensive and up-to-date as possible. His address is öValtaneeò, Brighton Road, Lower Kingswood, Tadworth, Surrey, KT20 6UP.
  11107. 6.9
  11108. Aldebaran ù (see Archive 6.8 p23) Atle Mjelde Bσrdholt has contacted the author and has learned that, on his A310 with IFELæs 2Mb upgrade, he has to add 8Kb to the WimpSlot values in the !Aldebaran.!Run file (from 624Kb to 632Kb). Then everything works fine. He says this might be due to the RAM upgrade: Aldebaran seems to work fine on any other Archimedes with RISCáOSá3.1. He adds a final bit of advice: öGet a copy!ò
  11109. 6.9
  11110. Printing
  11111. 6.9
  11112. Printing to file
  11113. 6.9
  11114. Tom Rank has found that the hint from Simon Moy in Archive 6.2.7 about editing the number of text lines seems redundant under RISCáOSá3.10, and that printing to a file (at least with the Epson LQ-860 driver) resulted in a printout which aborted with an öaddress exception at &038B5BE0ò, a frozen printer and an incomplete document (the last few millimetres were lost). This is particularly irritating as printing to a file is the only way, apart from buying a direct laser printer or a CC Turbo Driver, to avoid the long wait for print out. (How about using the PROdriver shell for use with Acorn drivers? See the review on page 43. Ed.)
  11115. 6.9
  11116. Using fanfold paper
  11117. 6.9
  11118. Tom Rank comments: öFeeding single sheets into a printer soon becomes a pain, but sheetfeeders come expensive, so A4 fanfold paper seemed a good idea (even though itæs about four or five times more expensive than better quality photocopy paper at a discount stationer!). However, with RISCáOS 3.00, I could never get the settings right, so the print always crept up or down the page until it crossed the fold. With RISCáOS 3.10, Iæve finally got it to work, whether by fluke Iæm not sure. Using the LQ-860 printer driver with my Epson LQ-550 printer, the correct settings from the paper sizes menu are: top margin 8mm and bottom margin 15mm; save these with a name like ÉA4 Fanfoldæ and the margins can be automatically set each time. These settings seem to work OK with single sheets too.ò
  11119. 6.9
  11120. Filing Systems
  11121. 6.9
  11122. Beebug 5╝ö disc interface
  11123. 6.9
  11124. Stuart Bell writes: öI got my Beebug 5╝ö disc interface (date 1989) to work by setting the step rate for an 80 track double-sided drive to 12ms (lower values may well work; Iæm just cautious), and whereas RISCáOSá2 worked with öReadyò (switch 6 on the interface) supplied by the on-board PAL, RISCáOSá3 works more reliably with it passed through from the drive.ò
  11125. 6.9
  11126. Dismounting between filing systems
  11127. 6.9
  11128. According to Mike Sawle, applications which frequently switch between filing systems seem to require the *DISMOUNT command before selecting an alternative filing system in order to ensure correct execution. Common error messages are Ambiguous Disc Name and Bad Error Block.
  11129. 6.9
  11130. Miscellaneous Hints & Tips
  11131. 6.9
  11132. Å    Faster copying, etc. ù Rob Davison recommends that if there is nothing else you want to do when copying files, then click <Menu> over the filer action window and choose ÉFasteræ.
  11133. 6.9
  11134. Å    In the midnight hour ù Atle Mjelde Bσrdholt found that, whenever he switched his computer on between midnight and 1áa.m., a day was added to the internal clock. He then found that this seemed to be caused by the presence in his !Boot file of the command *SetáSys$Yeará1993 (which he had included because he has some programs that set the year back to 1988). When this command is removed, the midnight hour problem goes away. Does anyone know the reason?
  11135. 6.9
  11136. Å    Fan filters and the A5000 ù Tom Rank found that, although magazines mention the need to change the filter from time to time, there was no mention of how to do this and on fitting the RISCáOS 3.10 upgrade he could see no filter anyway. Is there one, he asks? The Acorn representative at BETT told him that the design of the machine made it superfluous; he couldnæt quite follow why, but it was something to do with the direction of airflow.
  11137. 6.9
  11138. Å    Flippinæ objects in Draw ù Having travelled all the way from Derbyshire to the Acorn User Show, Tom Rank öasked the man on one of the other magazinesæ stall if there was an equivalent in Draw to the Éflipæ option in Paint, as itæs sometimes useful to turn a picture round to face the other way. The expert, although helpful about other items, couldnæt tell me, but my son revealed the following tip, which he said he thought was obvious. Must talk to him more often....
  11139. 6.9
  11140. öTo flip an object in Draw, select it and, from the Étransformæ menu (RISCáOS 3), set x scale (or y scale or both) to Ö1 (minus 1). This also works in the RISCáOS 2 version of Draw but there the Étransformæ option is chosen from the Select menu.ò
  11141. 6.9
  11142. Å    Lost lines in Edit Ö Eric Ayers has found that double-clicking on large text files to load them into Edit has caused several lines to be missing from the middle of the text. Apparently, this does not happen if he drags the files to the Edit icon on the icon bar. Any ideas?
  11143. 6.9
  11144. Å    More fonts in RISC-OS 3 Ö Gary Atkinson of KudlianSoft recommends the following additions to the !Fonts.!Boot and !Fonts.!Run files to enable one or more separate font directories to be added to and removed from the font path simply by double-clicking on the fonts application directory.
  11145. 6.9
  11146. The !Fonts.!Boot file should be amended as follows:
  11147. 6.9
  11148. | Boot file for !Fonts.
  11149. 6.9
  11150. | Nothing happens if you put this in | a RISCáOS 2 machine except that
  11151. 6.9
  11152. | the !Fonts sprite is set up Ö this | means that, when a RISCáOS2 !Fonts
  11153. 6.9
  11154. | directory is seen the !Boot file
  11155. 6.9
  11156. | will not be run; double clicking
  11157. 6.9
  11158. | on the appropriate !Fonts will
  11159. 6.9
  11160. | force installation.
  11161. 6.9
  11162. |
  11163. 6.9
  11164. | Take care when merging RISCáOS 2
  11165. 6.9
  11166. | fonts with these (RISCáOS 3) fonts
  11167. 6.9
  11168. | - many fonts are contained in the
  11169. 6.9
  11170. | RISCáOS 3 ROM and thus do not
  11171. 6.9
  11172. | appear in !Fonts; normally you
  11173. 6.9
  11174. | should not copy the corresponding
  11175. 6.9
  11176. | RISCáOS 2 fonts!
  11177. 6.9
  11178. Iconsprites <Obey$Dir>.!Sprites
  11179. 6.9
  11180. RMEnsure FontManager 2.89 Obey
  11181. 6.9
  11182. | The next command boots up your
  11183. 6.9
  11184. | normal font directory
  11185. 6.9
  11186. FontInstall <Obey$Dir>.
  11187. 6.9
  11188. SetEval MoreFonts 0
  11189. 6.9
  11190. The !Fonts.!Run file should be amended as follows:
  11191. 6.9
  11192. | !Run file for !Fonts,
  11193. 6.9
  11194. | version 1.05 (20-Aug-91)
  11195. 6.9
  11196. RMEnsure FontManager 2.89 Error These fonts are for use with
  11197. 6.9
  11198.  RISCáOS 2.12 or later
  11199. 6.9
  11200. |Obey <Obey$Dir>.!Boot
  11201. 6.9
  11202. | The extra *FontInstall means that,
  11203. 6.9
  11204. | if you double-click the Fonts
  11205. 6.9
  11206. | directory, all such directories
  11207. 6.9
  11208. | will be re-searched for any new
  11209. 6.9
  11210. | fonts.
  11211. 6.9
  11212. SetEval MoreFonts MoreFonts EOR 1
  11213. 6.9
  11214. IF MoreFonts=1 THEN FontInstall <Obey$Dir>. ELSE FontRemove <Obey$Dir>.
  11215. 6.9
  11216. |FontInstall
  11217. 6.9
  11218. The !Boot file is only run on the first time that the filer sees the !Fonts application, hence the initialisation of MoreFonts to zero. Every time the directory is double-clicked, the !Run file will toggle the value of this variable between 0 and 1. This is done in the line:
  11219. 6.9
  11220. SetEval MoreFonts MoreFonts EOR 1
  11221. 6.9
  11222. If the value is 1, the FontInstall command adds the new directory to the font path and initialises all of the fonts. If the value is 0, the FontRemove command removes the temporary font directory from the font path.
  11223. 6.9
  11224. If you require more than one spare directory, you will need to use different variables, such as MoreFonts2 or FancyFonts.
  11225. 6.9
  11226. In practice, it is better to have a directory called fonts inside your !Fonts application which contains your preferred normal fonts at switch-on, and a directory called spare (for example) which contains the set of fonts that you wish to switch in and out. Then in your !Boot file, the FontInstall command becomes
  11227. 6.9
  11228. FontInstall <Obey$Dir>.fonts.
  11229. 6.9
  11230. and the IF...THEN statement in the !Run file has <Obey$Dir>.spare. in place of the two occurrences of <Obey$Dir>. .
  11231. 6.9
  11232. Miscellaneous Comments
  11233. 6.9
  11234. FontEd
  11235. 6.9
  11236. When Tom Rank spoke to an Acorn representative he was told that they were not contemplating the release of FontEd and that it is NOT public domain. An early version got there by mistake via SID and it really ought not, he said, to be distributed by PD libraries.
  11237. 6.9
  11238. The Acorn representative acknowledged that Acorn were unlikely to do anything about this situation, as it was öonly an early version and wonæt work on RISCáOS 3ò. According to Tom this is partially true; a friend of his has had problems with version 0.28, but at least some of the time it runs on an A5000. However, he observes that it is a pity that Acorn actually seem to be discouraging anyone else from working on fonts. (There is a version of FontEd on Careware 7, released in May 1990, but it has been updated since then. Acorn havenæt objected, presumably because of the charitable aspect. Ed.)
  11239. 6.9
  11240. Screen blanking during floppy disc access
  11241. 6.9
  11242. Stuart Bell writes: öMany things are very much more elegant in RISCáOS 3 but with one notable exception. I couldnæt believe my eyes when I saw what happens to the screen during floppy disc accessing. Whether my ARM3 cache is dis- or enabled, in mode 24 the screen either flashes or is blanked when loading, saving or formatting. If RISCáOS 2 didnæt need to do this, why is it allowed now? (It did, in fact, happen in mode 21 under RISCáOSá2 ù HE.) Some re-coding is needed, even if the resultant code is a little slower. More significantly, who was the Acorn person in authority who thought that it is acceptable in 1993 to produce a computer which professes to be a Éworld-beateræ which, when using floppy discs, looks like the Sinclair Spectrum (or was it the ZX81?) reading from cassette tape circa 1983? This just looks so tacky. I know that serious use demands a hard disc, but first impressions count for a lot, and a lot of demonstrations will be on floppy-based A3010æs. This is not good enough, Acorn.ò
  11243. 6.9
  11244. Basic program compaction errors
  11245. 6.9
  11246. R. W. Darlington writes: öI am writing on a matter of utmost urgency.
  11247. 6.9
  11248. öThere seems to be a growing urge amongst programmers to use a program compactor on Basic RunImage files. Unfortunately, I know of no Basic compactor program that does not exhibit a certain disastrous fault.
  11249. 6.9
  11250. öIf, for instance, a Basic program contains any floating point or pseudo variables followed by a Basic keyword or statement, then when it is compacted and the space between the variable and the keyword is removed, that line will generate an error.
  11251. 6.9
  11252. öFor instance, if the program contained the line
  11253. 6.9
  11254. 10 IF TRUE THEN VDU7
  11255. 6.9
  11256. which when compacted becomes
  11257. 6.9
  11258. 10IFTRUETHENVDU7
  11259. 6.9
  11260. the lack of space between TRUE and THEN will generate an error.
  11261. 6.9
  11262. öThe same is true for any line containing a floating point variable:
  11263. 6.9
  11264. 10 ha=TRUE
  11265. 6.9
  11266. 20 IF    ha    THEN    VDU7
  11267. 6.9
  11268. will crash when compacted because of a lack of space between ha and THEN.
  11269. 6.9
  11270. öI have come across numerous examples of RunImage files which have these errors in them. One of them is Acornæs new RISCáOS 3 !SciCalc. Others are new versions of Translator and Creator.
  11271. 6.9
  11272. öPlease can you draw Archive readersæ attention to these problems as soon as possible? Or, if any reader knows of a Basic compactor that does not produce these errors, please can they let us know where it may be obtained?ò
  11273. 6.9
  11274. Matters Arising
  11275. 6.9
  11276. Setting Caps Lock (*FX 202)
  11277. 6.9
  11278. Unfortunately, the advice I gave last month about using *FX 202 may have been a bit confusing because, after explaining that Peter Young wanted a command to turn Caps Lock on, I then described how to turn it off! The command to turn Caps Lock on, leaving the other settings unchanged, is *FXá202,0,239.
  11279. 6.9
  11280. The shortened form *FXá202,32 should turn Caps Lock on, but may have side effects.
  11281. 6.9
  11282. Note also that, to make sure that the LED indicators are correctly updated after a *FXá202 command, it is a good idea to follow it with the simple command *FXá118.
  11283. 6.9
  11284. The bits of the keyboard status byte have the following meanings:
  11285. 6.9
  11286.     bit    value    meaning
  11287. 6.9
  11288.     0 (1)    0    Alt off
  11289. 6.9
  11290.         1    Alt on
  11291. 6.9
  11292.     1 (2)    0    Scroll Lock off
  11293. 6.9
  11294.         1    Scroll Lock on
  11295. 6.9
  11296.     2 (4)    0    Num Lock on
  11297. 6.9
  11298.         1    Num Lock off
  11299. 6.9
  11300.     3 (8)    0    Shift off
  11301. 6.9
  11302.         1    Shift on
  11303. 6.9
  11304.     4 (16)    0    Caps Lock on
  11305. 6.9
  11306.         1    Caps Lock off
  11307. 6.9
  11308.     5 (32)        (öNormally setò)
  11309. 6.9
  11310.     6 (64)    0    Ctrl off
  11311. 6.9
  11312.         1    Ctrl on
  11313. 6.9
  11314.     7 (128)    0    Shift enable off
  11315. 6.9
  11316.         1    Shift enable on
  11317. 6.9
  11318. (This information is taken from the RISC¡OSá2 Programmersæ Reference Manual.)
  11319. 6.9
  11320. Boot-up options (Archive 6.8 p26)
  11321. 6.9
  11322. Peter Young has suggested that it might be better to use INKEY$ with a delay of, say, 5 to 10 seconds instead of GET$ so that, if nobody presses a key, the computer will continue with the boot file after a short delay.
  11323. 6.9
  11324. Unexpected messages from IDE filing system (Archive 6.8 p24)
  11325. 6.9
  11326. Peter Young (who has a Beebug IDE interface) has confirmed that, even after creating space for a directory cache, he still gets unexpected messages unless he uses full pathnames. For instance, if he starts with the commands
  11327. 6.9
  11328. *DIR IDEFS::IDEDisc4.$.BASIC.B
  11329. 6.9
  11330. *CAT
  11331. 6.9
  11332. he gets a catalogue of the subdirectory ÉBæ as expected. However, if he uses the abbreviated pathname instead:
  11333. 6.9
  11334. *DIR $.BASIC.B
  11335. 6.9
  11336. *CAT
  11337. 6.9
  11338. he gets a catalogue of the directory ÉBASICæ even though the heading of the directory listing correctly says that the CSD is IDEFS::IDEDisc4.$. BASIC.B. The computeræs confusion is further demonstrated by the fact that if he then enters:
  11339. 6.9
  11340. *DIR ^
  11341. 6.9
  11342. *CAT
  11343. 6.9
  11344. it replies Directory É@æ not found.
  11345. 6.9
  11346. ÉInterruptæ module (Archive 6.6 p55)
  11347. 6.9
  11348. In March, we reported M. P. Sawleæs request for help in getting the Interrupt module (Archive Shareware disc 6) working under RISCáOSá3, but since then neither he nor we have heard anything. Does no-one else use this module? Can its author help?
  11349. 6.9
  11350. Using RISCáOSá3.10
  11351. 6.9
  11352. Hugh Eagle
  11353. 6.9
  11354. More encouragement for the faint-hearted!
  11355. 6.9
  11356. Stuart Bell says: öHaving read the RISCáOS Column for the past few
  11357. months, I approached the upgrade with caution, afraid of all sorts of
  11358. installation and compatibility problems. I guess that by the nature of
  11359. the things, itæs those people who encounter problems who write in,
  11360. thereby giving a false impression of the true situation. So, if youære
  11361. still with RISCáOS 2 and thinking about upgrading, be encouraged.
  11362. Installing RISCáOS 3 on my A310, including removing the main board and
  11363. installing the IFEL ROM carrier board took about an hour from start to
  11364. finish, and I experienced no unforeseen problems.
  11365. 6.9
  11366. öHaving been warned of problems with Compression 1.1, I de-compressed
  11367. all files first. I await the free upgrade from CC. There is the reported
  11368. problem with early versions of Font-FX and thatæs in hand.
  11369. 6.9
  11370. öA couple of warnings, though: As well as powering up with <Delete>
  11371. depressed, also make sure that youæve re-connected the keyboard first.
  11372. (Donæt laugh ù it could have been you! That cost me several minutes of
  11373. panic.) Secondly, alter the Font Size figure before loading your first
  11374. Impression document, which otherwise can take several minutes to load
  11375. with a 32Kb buffer.ò
  11376. 6.9
  11377. Å Avie Electronics 4Mb A310 upgrade Ö The following information has come
  11378. from Avie: LK12 should be altered to 1-3 and 2-4. Issue 1 PCBs do not
  11379. have LK12 and require modification as follows:
  11380. 6.9
  11381. Option 1: pins 2 and 24 on all of the ROMs are to be swapped. Remove
  11382. pins 2 and 24 from each ROM socket by bending them up. Join pin 24 on
  11383. all ROMs to GND. Join pin 2 on all ROMs to LA18 on IC28, pin 18.
  11384. 6.9
  11385. Option 2: remove pin 2 from each stamped socket on PCB and strap a wire
  11386. between the pins and LA18. Likewise, pin 24 can be strapped to GND after
  11387. removing the pins in the stamped sockets.
  11388. 6.9
  11389. Hardware problems
  11390. 6.9
  11391. Watford Electronics ARM3 Ö When Colin Wood fitted a Watford Electronics
  11392. ARM3 upgrade to his A410 it didnæt work. öThe screen flashed red/blue,
  11393. but no beep. Just dead.ò As he had recently fitted RISCáOSá3, he decided
  11394. to replace the RISCáOSá2 chips and everything seemed OK, but when he put
  11395. the RISCáOSá3 chips back, again it didnæt work. Watfordæs help line
  11396. couldnæt help, so he returned the ARM3 and since they were (again) out
  11397. of stock he cancelled his order and got most (but not all, apparently)
  11398. of his money back. Another ARM3, from CJE Microæs, worked first time.
  11399. 6.9
  11400. Watford A310 RAM upgrades Ö Watford Electronics say that they are aware
  11401. that their early A305/310 RAM upgrades do not work with RISCáOS 3 but
  11402. they do not have any solution. They simply recommend that you buy one of
  11403. their newer RAM upgrades instead because they do work with RISCáOS 3.
  11404. Fortunately, IFEL have stepped into the breach. They can offer new PAL
  11405. chips to plug into the Watford boards that will solve the problem. These
  11406. PAL chips are ú3 +VAT each from IFEL and you need to state whether you
  11407. have the 2Mb or the 4Mb version. (This refers to the upgrades that
  11408. consisted of two PCBs with a ribbon cable along the RHS of the machine.)
  11409. 6.9
  11410. Program problems
  11411. 6.9
  11412. QuicKey clash Ö J. Nichols reports that, if QuicKey is loaded from
  11413. within a !Boot file, it can remove the *Opt 4,2 status from the booted
  11414. disc resulting in a disc which no longer runs a !Boot file.
  11415. 6.9
  11416. !Edit ù Following last monthæs reports of a öbugò in Edit we now have
  11417. the following from Tom Rank: öThere seemed to be a rare problem with
  11418. Edit the other day; my text (exported from Ovation) was displayed in a
  11419. most corrupted way, with a large amount of blank screen to start with
  11420. and then disintegrating words. I thought it was a problem with Ovation.
  11421. However, when I tried to show it to John Wallace of Risc Developments at
  11422. BETT, the file displayed without problems, as it did back on my own
  11423. machine the next day. Any idea why?ò
  11424. 6.9
  11425. Fun School 4 (for the under 5s) ù Tom Rank found that this ran under
  11426. RISCáOSá3.00 but not 3.10, but Europress Software supplied an updated
  11427. disc very promptly which now works.
  11428. 6.9
  11429. Freddy Teddy ù Topologika supplied a new version to Tom Rank on the spot
  11430. at BETT!
  11431. 6.9
  11432. Ovation ù Tom Rank says you are urged to obtain 1.37S (dated 17 January
  11433. 1993). This overcomes the saving with <F3> problem ù which really was a
  11434. problem, so do upgrade. They have also restored the Éselect allæ
  11435. shortcut Ö but only if you use the right-hand <Ctrl> key along with A
  11436. (to avoid the problem of catching <Ctrl-A> instead of <Ctrl-S> or just
  11437. <A>).
  11438. 6.9
  11439. This version also contains three new printing options, not documented:
  11440. Fit, Centre and Registration marks. These should be self explanatory,
  11441. but Tom is not quite sure about them!
  11442. 6.9
  11443. Break147 and SuperPool ù D. S. Allen got these to work using the
  11444. information provided by David Holden in the April column. He writes: öIn
  11445. Break147 there is one Basic program called !Snook which contains the
  11446. line
  11447. 6.9
  11448.  90SYSá26,64,64.
  11449. 6.9
  11450. A REM statement in front of the SYS will cure the problem and the
  11451. program will then run under RISCáOSá3.1.
  11452. 6.9
  11453. öSimilarly, in SuperPool there is a Basic program !Pool in the Data
  11454. directory in which line 60 has the same SYSá26,64,64 statement.
  11455. 6.9
  11456. öNote that to make these changes, people will require the read/write
  11457. version of Mark Smithæs excellent ArcFS program.ò (Or, presumably, an
  11458. equivalent utility such as SparkFS.)
  11459. 6.9
  11460. Superior Golf / Construction Set ù We reported in Archive 6.7 p43 that
  11461. Dave Wilcox had found that these did not work in RISCáOSá3.10. Rob
  11462. Brown, however, says he has had no problems with them.
  11463. 6.9
  11464. Corruption ù Rob Brown says that this can be made to work by modifying
  11465. its !Run file to kill the RISCáOSá3 Shared C Library module and load the
  11466. very old version of the module supplied with the game. To do this,
  11467. include at the beginning of the !Run file the line:
  11468. 6.9
  11469. RMKill SharedCLibrary
  11470. 6.9
  11471. and then add at the end of the file the following two lines:
  11472. 6.9
  11473. RMKill SharedCLibrary
  11474. 6.9
  11475. RMLoad SharedCLibrary
  11476. 6.9
  11477. to remove the old version and reload the RISCáOSá3 version of the
  11478. module. He points out that it may well be advisable to Quit any other
  11479. applications that may be using the RISCáOSá3 Shared C Library module
  11480. before running the game.
  11481. 6.9
  11482. Freddyæs Folly ù Rob Brown advises that this game contains a !Run file
  11483. (in Basic) which includes an automatic Éauto-configurationæ of the
  11484. computeræs memory as well as setting up a number of initial program
  11485. parameters. The various auto-configuration elements should be deleted
  11486. from this file. A further complication is that the disc is copy
  11487. protected, but it should be possible to rename the original !Run file
  11488. (to say !RunOLD) and re-save a new !Run file containing only the initial
  11489. program parameters. He also advises that the game assumes that the
  11490. default disc drive is 0. For users with a hard disc this can easily be
  11491. set by typing:
  11492. 6.9
  11493.     Drive 0
  11494. 6.9
  11495. at the command line (accessed by pressing function key <F12>) before
  11496. starting the game. Alternatively, the gameæs !Run file can be
  11497. appropriately amended by including the ö<Obey$Dir>ò command.
  11498. 6.9
  11499. NOTE: the advice on Corruption and Freddyæs Folly is included in the
  11500. program compatibility chart which Rob Brown has compiled and which has
  11501. been included on the Archive monthly program disc. He will welcome any
  11502. information which will help him to make the chart as comprehensive and
  11503. up-to-date as possible. His address is öValtaneeò, Brighton Road, Lower
  11504. Kingswood, Tadworth, Surrey, KT20 6UP.
  11505. 6.9
  11506. Aldebaran ù (see Archive 6.8 p23) Atle Mjelde Bσrdholt has contacted the
  11507. author and has learned that, on his A310 with IFELæs 2Mb upgrade, he has
  11508. to add 8Kb to the WimpSlot values in the !Aldebaran.!Run file (from
  11509. 624Kb to 632Kb). Then everything works fine. He says this might be due
  11510. to the RAM upgrade: Aldebaran seems to work fine on any other Archimedes
  11511. with RISCáOSá3.1. He adds a final bit of advice: öGet a copy!ò
  11512. 6.9
  11513. Printing
  11514. 6.9
  11515. Printing to file
  11516. 6.9
  11517. Tom Rank has found that the hint from Simon Moy in Archive 6.2.7 about
  11518. editing the number of text lines seems redundant under RISCáOSá3.10, and
  11519. that printing to a file (at least with the Epson LQ-860 driver) resulted
  11520. in a printout which aborted with an öaddress exception at &038B5BE0ò, a
  11521. frozen printer and an incomplete document (the last few millimetres were
  11522. lost). This is particularly irritating as printing to a file is the only
  11523. way, apart from buying a direct laser printer or a CC Turbo Driver, to
  11524. avoid the long wait for print out. (How about using the PROdriver shell
  11525. for use with Acorn drivers? See the review on page 43. Ed.)
  11526. 6.9
  11527. Using fanfold paper
  11528. 6.9
  11529. Tom Rank comments: öFeeding single sheets into a printer soon becomes a
  11530. pain, but sheetfeeders come expensive, so A4 fanfold paper seemed a good
  11531. idea (even though itæs about four or five times more expensive than
  11532. better quality photocopy paper at a discount stationer!). However, with
  11533. RISCáOS 3.00, I could never get the settings right, so the print always
  11534. crept up or down the page until it crossed the fold. With RISCáOS 3.10,
  11535. Iæve finally got it to work, whether by fluke Iæm not sure. Using the
  11536. LQ-860 printer driver with my Epson LQ-550 printer, the correct settings
  11537. from the paper sizes menu are: top margin 8mm and bottom margin 15mm;
  11538. save these with a name like ÉA4 Fanfoldæ and the margins can be
  11539. automatically set each time. These settings seem to work OK with single
  11540. sheets too.ò
  11541. 6.9
  11542. Filing Systems
  11543. 6.9
  11544. Beebug 5╝ö disc interface
  11545. 6.9
  11546. Stuart Bell writes: öI got my Beebug 5╝ö disc interface (date 1989) to
  11547. work by setting the step rate for an 80 track double-sided drive to 12ms
  11548. (lower values may well work; Iæm just cautious), and whereas RISCáOSá2
  11549. worked with öReadyò (switch 6 on the interface) supplied by the on-board
  11550. PAL, RISCáOSá3 works more reliably with it passed through from the
  11551. drive.ò
  11552. 6.9
  11553. Dismounting between filing systems
  11554. 6.9
  11555. According to Mike Sawle, applications which frequently switch between
  11556. filing systems seem to require the *DISMOUNT command before selecting an
  11557. alternative filing system in order to ensure correct execution. Common
  11558. error messages are Ambiguous Disc Name and Bad Error Block.
  11559. 6.9
  11560. Miscellaneous Hints & Tips
  11561. 6.9
  11562. Å    Faster copying, etc. ù Rob Davison recommends that if there is nothing
  11563. else you want to do when copying files, then click <Menu> over the filer
  11564. action window and choose ÉFasteræ.
  11565. 6.9
  11566. Å    In the midnight hour ù Atle Mjelde Bσrdholt found that, whenever he
  11567. switched his computer on between midnight and 1áa.m., a day was added to
  11568. the internal clock. He then found that this seemed to be caused by the
  11569. presence in his !Boot file of the command *SetáSys$Yeará1993 (which he
  11570. had included because he has some programs that set the year back to
  11571. 1988). When this command is removed, the midnight hour problem goes
  11572. away. Does anyone know the reason?
  11573. 6.9
  11574. Å    Fan filters and the A5000 ù Tom Rank found that, although magazines
  11575. mention the need to change the filter from time to time, there was no
  11576. mention of how to do this and on fitting the RISCáOS 3.10 upgrade he
  11577. could see no filter anyway. Is there one, he asks? The Acorn
  11578. representative at BETT told him that the design of the machine made it
  11579. superfluous; he couldnæt quite follow why, but it was something to do
  11580. with the direction of airflow.
  11581. 6.9
  11582. Å    Flippinæ objects in Draw ù Having travelled all the way from
  11583. Derbyshire to the Acorn User Show, Tom Rank öasked the man on one of the
  11584. other magazinesæ stall if there was an equivalent in Draw to the Éflipæ
  11585. option in Paint, as itæs sometimes useful to turn a picture round to
  11586. face the other way. The expert, although helpful about other items,
  11587. couldnæt tell me, but my son revealed the following tip, which he said
  11588. he thought was obvious. Must talk to him more often....
  11589. 6.9
  11590. öTo flip an object in Draw, select it and, from the Étransformæ menu
  11591. (RISCáOS 3), set x scale (or y scale or both) to Ö1 (minus 1). This also
  11592. works in the RISCáOS 2 version of Draw but there the Étransformæ option
  11593. is chosen from the Select menu.ò
  11594. 6.9
  11595. Å    Lost lines in Edit Ö Eric Ayers has found that double-clicking on
  11596. large text files to load them into Edit has caused several lines to be
  11597. missing from the middle of the text. Apparently, this does not happen if
  11598. he drags the files to the Edit icon on the icon bar. Any ideas?
  11599. 6.9
  11600. Å    More fonts in RISC-OS 3 Ö Gary Atkinson of KudlianSoft recommends the
  11601. following additions to the !Fonts.!Boot and !Fonts.!Run files to enable
  11602. one or more separate font directories to be added to and removed from
  11603. the font path simply by double-clicking on the fonts application
  11604. directory.
  11605. 6.9
  11606. The !Fonts.!Boot file should be amended as follows:
  11607. 6.9
  11608. | Boot file for !Fonts.
  11609. 6.9
  11610. | Nothing happens if you put this in | a RISCáOS 2 machine except that
  11611. 6.9
  11612. | the !Fonts sprite is set up Ö this | means that, when a RISCáOS2
  11613. !Fonts
  11614. 6.9
  11615. | directory is seen the !Boot file
  11616. 6.9
  11617. | will not be run; double clicking
  11618. 6.9
  11619. | on the appropriate !Fonts will
  11620. 6.9
  11621. | force installation.
  11622. 6.9
  11623. |
  11624. 6.9
  11625. | Take care when merging RISCáOS 2
  11626. 6.9
  11627. | fonts with these (RISCáOS 3) fonts
  11628. 6.9
  11629. | - many fonts are contained in the
  11630. 6.9
  11631. | RISCáOS 3 ROM and thus do not
  11632. 6.9
  11633. | appear in !Fonts; normally you
  11634. 6.9
  11635. | should not copy the corresponding
  11636. 6.9
  11637. | RISCáOS 2 fonts!
  11638. 6.9
  11639. Iconsprites <Obey$Dir>.!Sprites
  11640. 6.9
  11641. RMEnsure FontManager 2.89 Obey
  11642. 6.9
  11643. | The next command boots up your
  11644. 6.9
  11645. | normal font directory
  11646. 6.9
  11647. FontInstall <Obey$Dir>.
  11648. 6.9
  11649. SetEval MoreFonts 0
  11650. 6.9
  11651. The !Fonts.!Run file should be amended as follows:
  11652. 6.9
  11653. | !Run file for !Fonts,
  11654. 6.9
  11655. | version 1.05 (20-Aug-91)
  11656. 6.9
  11657. RMEnsure FontManager 2.89 Error These fonts are for use with
  11658. 6.9
  11659.  RISCáOS 2.12 or later
  11660. 6.9
  11661. |Obey <Obey$Dir>.!Boot
  11662. 6.9
  11663. | The extra *FontInstall means that,
  11664. 6.9
  11665. | if you double-click the Fonts
  11666. 6.9
  11667. | directory, all such directories
  11668. 6.9
  11669. | will be re-searched for any new
  11670. 6.9
  11671. | fonts.
  11672. 6.9
  11673. SetEval MoreFonts MoreFonts EOR 1
  11674. 6.9
  11675. IF MoreFonts=1 THEN FontInstall <Obey$Dir>. ELSE FontRemove <Obey$Dir>.
  11676. 6.9
  11677. |FontInstall
  11678. 6.9
  11679. The !Boot file is only run on the first time that the filer sees the
  11680. !Fonts application, hence the initialisation of MoreFonts to zero. Every
  11681. time the directory is double-clicked, the !Run file will toggle the
  11682. value of this variable between 0 and 1. This is done in the line:
  11683. 6.9
  11684. SetEval MoreFonts MoreFonts EOR 1
  11685. 6.9
  11686. If the value is 1, the FontInstall command adds the new directory to the
  11687. font path and initialises all of the fonts. If the value is 0, the
  11688. FontRemove command removes the temporary font directory from the font
  11689. path.
  11690. 6.9
  11691. If you require more than one spare directory, you will need to use
  11692. different variables, such as MoreFonts2 or FancyFonts.
  11693. 6.9
  11694. In practice, it is better to have a directory called fonts inside your
  11695. !Fonts application which contains your preferred normal fonts at switch-
  11696. on, and a directory called spare (for example) which contains the set of
  11697. fonts that you wish to switch in and out. Then in your !Boot file, the
  11698. FontInstall command becomes
  11699. 6.9
  11700. FontInstall <Obey$Dir>.fonts.
  11701. 6.9
  11702. and the IF...THEN statement in the !Run file has <Obey$Dir>.spare. in
  11703. place of the two occurrences of <Obey$Dir>. .
  11704. 6.9
  11705. Miscellaneous Comments
  11706. 6.9
  11707. FontEd
  11708. 6.9
  11709. When Tom Rank spoke to an Acorn representative he was told that they
  11710. were not contemplating the release of FontEd and that it is NOT public
  11711. domain. An early version got there by mistake via SID and it really
  11712. ought not, he said, to be distributed by PD libraries.
  11713. 6.9
  11714. The Acorn representative acknowledged that Acorn were unlikely to do
  11715. anything about this situation, as it was öonly an early version and
  11716. wonæt work on RISCáOS 3ò. According to Tom this is partially true; a
  11717. friend of his has had problems with version 0.28, but at least some of
  11718. the time it runs on an A5000. However, he observes that it is a pity
  11719. that Acorn actually seem to be discouraging anyone else from working on
  11720. fonts. (There is a version of FontEd on Careware 7, released in May
  11721. 1990, but it has been updated since then. Acorn havenæt objected,
  11722. presumably because of the charitable aspect. Ed.)
  11723. 6.9
  11724. Screen blanking during floppy disc access
  11725. 6.9
  11726. Stuart Bell writes: öMany things are very much more elegant in RISCáOS 3
  11727. but with one notable exception. I couldnæt believe my eyes when I saw
  11728. what happens to the screen during floppy disc accessing. Whether my ARM3
  11729. cache is dis- or enabled, in mode 24 the screen either flashes or is
  11730. blanked when loading, saving or formatting. If RISCáOS 2 didnæt need to
  11731. do this, why is it allowed now? (It did, in fact, happen in mode 21
  11732. under RISCáOSá2 ù HE.) Some re-coding is needed, even if the resultant
  11733. code is a little slower. More significantly, who was the Acorn person in
  11734. authority who thought that it is acceptable in 1993 to produce a
  11735. computer which professes to be a Éworld-beateræ which, when using floppy
  11736. discs, looks like the Sinclair Spectrum (or was it the ZX81?) reading
  11737. from cassette tape circa 1983? This just looks so tacky. I know that
  11738. serious use demands a hard disc, but first impressions count for a lot,
  11739. and a lot of demonstrations will be on floppy-based A3010æs. This is not
  11740. good enough, Acorn.ò
  11741. 6.9
  11742. Basic program compaction errors
  11743. 6.9
  11744. R. W. Darlington writes: öI am writing on a matter of utmost urgency.
  11745. 6.9
  11746. öThere seems to be a growing urge amongst programmers to use a program
  11747. compactor on Basic RunImage files. Unfortunately, I know of no Basic
  11748. compactor program that does not exhibit a certain disastrous fault.
  11749. 6.9
  11750. öIf, for instance, a Basic program contains any floating point or pseudo
  11751. variables followed by a Basic keyword or statement, then when it is
  11752. compacted and the space between the variable and the keyword is removed,
  11753. that line will generate an error.
  11754. 6.9
  11755. öFor instance, if the program contained the line
  11756. 6.9
  11757. 10 IF TRUE THEN VDU7
  11758. 6.9
  11759. which when compacted becomes
  11760. 6.9
  11761. 10IFTRUETHENVDU7
  11762. 6.9
  11763. the lack of space between TRUE and THEN will generate an error.
  11764. 6.9
  11765. öThe same is true for any line containing a floating point variable:
  11766. 6.9
  11767. 10 ha=TRUE
  11768. 6.9
  11769. 20 IF    ha    THEN    VDU7
  11770. 6.9
  11771. will crash when compacted because of a lack of space between ha and
  11772. THEN.
  11773. 6.9
  11774. öI have come across numerous examples of RunImage files which have these
  11775. errors in them. One of them is Acornæs new RISCáOS 3 !SciCalc. Others
  11776. are new versions of Translator and Creator.
  11777. 6.9
  11778. öPlease can you draw Archive readersæ attention to these problems as
  11779. soon as possible? Or, if any reader knows of a Basic compactor that does
  11780. not produce these errors, please can they let us know where it may be
  11781. obtained?ò
  11782. 6.9
  11783. Matters Arising
  11784. 6.9
  11785. Setting Caps Lock (*FX 202)
  11786. 6.9
  11787. Unfortunately, the advice I gave last month about using *FX 202 may have
  11788. been a bit confusing because, after explaining that Peter Young wanted a
  11789. command to turn Caps Lock on, I then described how to turn it off! The
  11790. command to turn Caps Lock on, leaving the other settings unchanged, is
  11791. *FXá202,0,239.
  11792. 6.9
  11793. The shortened form *FXá202,32 should turn Caps Lock on, but may have
  11794. side effects.
  11795. 6.9
  11796. Note also that, to make sure that the LED indicators are correctly
  11797. updated after a *FXá202 command, it is a good idea to follow it with the
  11798. simple command *FXá118.
  11799. 6.9
  11800. The bits of the keyboard status byte have the following meanings:
  11801. 6.9
  11802.     bit    value    meaning
  11803. 6.9
  11804.     0 (1)    0    Alt off
  11805. 6.9
  11806.         1    Alt on
  11807. 6.9
  11808.     1 (2)    0    Scroll Lock off
  11809. 6.9
  11810.         1    Scroll Lock on
  11811. 6.9
  11812.     2 (4)    0    Num Lock on
  11813. 6.9
  11814.         1    Num Lock off
  11815. 6.9
  11816.     3 (8)    0    Shift off
  11817. 6.9
  11818.         1    Shift on
  11819. 6.9
  11820.     4 (16)    0    Caps Lock on
  11821. 6.9
  11822.         1    Caps Lock off
  11823. 6.9
  11824.     5 (32)        (öNormally setò)
  11825. 6.9
  11826.     6 (64)    0    Ctrl off
  11827. 6.9
  11828.         1    Ctrl on
  11829. 6.9
  11830.     7 (128)    0    Shift enable off
  11831. 6.9
  11832.         1    Shift enable on
  11833. 6.9
  11834. (This information is taken from the RISC¡OSá2 Programmersæ Reference
  11835. Manual.)
  11836. 6.9
  11837. Boot-up options (Archive 6.8 p26)
  11838. 6.9
  11839. Peter Young has suggested that it might be better to use INKEY$ with a
  11840. delay of, say, 5 to 10 seconds instead of GET$ so that, if nobody
  11841. presses a key, the computer will continue with the boot file after a
  11842. short delay.
  11843. 6.9
  11844. Unexpected messages from IDE filing system (Archive 6.8 p24)
  11845. 6.9
  11846. Peter Young (who has a Beebug IDE interface) has confirmed that, even
  11847. after creating space for a directory cache, he still gets unexpected
  11848. messages unless he uses full pathnames. For instance, if he starts with
  11849. the commands
  11850. 6.9
  11851. *DIR IDEFS::IDEDisc4.$.BASIC.B
  11852. 6.9
  11853. *CAT
  11854. 6.9
  11855. he gets a catalogue of the subdirectory ÉBæ as expected. However, if he
  11856. uses the abbreviated pathname instead:
  11857. 6.9
  11858. *DIR $.BASIC.B
  11859. 6.9
  11860. *CAT
  11861. 6.9
  11862. he gets a catalogue of the directory ÉBASICæ even though the heading of
  11863. the directory listing correctly says that the CSD is IDEFS::IDEDisc4.$.
  11864. BASIC.B. The computeræs confusion is further demonstrated by the fact
  11865. that if he then enters:
  11866. 6.9
  11867. *DIR ^
  11868. 6.9
  11869. *CAT
  11870. 6.9
  11871. it replies Directory É@æ not found.
  11872. 6.9
  11873. ÉInterruptæ module (Archive 6.6 p55)
  11874. 6.9
  11875. In March, we reported M. P. Sawleæs request for help in getting the
  11876. Interrupt module (Archive Shareware disc 6) working under RISCáOSá3, but
  11877. since then neither he nor we have heard anything. Does no-one else use
  11878. this module? Can its author help?
  11879. 6.9
  11880. Using RISCáOSá3.10
  11881. 6.8
  11882. Hugh Eagle
  11883. 6.8
  11884. Encouragement for the faint-hearted!
  11885. 6.8
  11886. Peter Young says that he is not only electronically illiterate but also
  11887. notoriously clumsy and so he left fitting the upgrade for over three
  11888. months. When he finally did dare to do it, he found it a lot easier than
  11889. he had dreaded Ö he broke nothing and it all worked first time. The only
  11890. worrying bit was changing the links, because the diagram was not clear
  11891. but a quick call to the suppliers (Beebug) soon put him right. So his
  11892. advice for others is: donæt be scared!
  11893. 6.8
  11894. RISC OSá3.11
  11895. 6.8
  11896. Newer machines and upgrades are now being shipped with version 3.11 of
  11897. the operating system. Barry Thompson says that this clears up a NetUtils
  11898. problem which occurs when computers equipped with RISCáOSá3.10 are used
  11899. on a network. The problem was that if you opened or extended a file
  11900. longer than 64Kb, anything beyond 64Kb was filled with null characters.
  11901. Existing network users can obtain a module (NetUtils) from their local
  11902. Acorn dealer.
  11903. 6.8
  11904. Comparing the 3.11 and 3.10 Release Notes, the only other differences I
  11905. could find were the following brief notes:
  11906. 6.8
  11907. Å    DOS partition size ù DOSFS cannot be used with DOS partitions of 32Mb
  11908. or larger.
  11909. 6.8
  11910. Å    Acorn Lisp ù you must issue a *FXá13,11 command before loading Acorn
  11911. LISP.
  11912. 6.8
  11913. Å    Inspiration ù versions of Inspiration up to 1.03 will not run with
  11914. RISCáOSá3.10 or later.
  11915. 6.8
  11916. (I gather that 3.11 also improves the situation with the ADFSbuffers
  11917. problem. On a 1Mb machine with 3.10, you are still advised to set
  11918. ADFSbuffers to 0. This is no longer necessary with 3.11. Ed.)
  11919. 6.8
  11920. Programs that work
  11921. 6.8
  11922. Mah Jong, The Game: Peter Young reports that the problem he mentioned
  11923. last month was caused by an inappropriate *FX call which he had inserted
  11924. in the !Run file ù so there seems to be nothing wrong with Mah Jong
  11925. itself.
  11926. 6.8
  11927. Hard Disc Companion: Peter Young says that setting an IDEFS cache (see
  11928. below) has speeded this up considerably.
  11929. 6.8
  11930. Ovation: In Archive 6.3 p14, we reported a problem with the printing of
  11931. indented lines from Ovation. Ken Cowap has now received a new version of
  11932. the program (version 1.37S) which, amongst other things, specifically
  11933. cures this particular problem. He says the problem turned out to be due
  11934. not to Ovation but to the RISCáOSá3 printer drivers. Although Acorn
  11935. acknowledged this, they saw no immediate possibility of a fix, and Risc
  11936. Developments very commendably undertook to rewrite part of Ovation.
  11937. 6.8
  11938. Program problems
  11939. 6.8
  11940. Aldebaran: Atle Mjelde Bσrdholt says that you must quit all application
  11941. tasks first (enter the Task display and Quit all tasks including
  11942. Pinboard), then run the game and it will install itself on the iconbar.
  11943. He says another solution is to exit the desktop and then type
  11944. *!Aldebaran at the command prompt. (Surely, Aldebaran is one of the most
  11945. recent games. Can it be true that it doesnæt run from the desktop?)
  11946. 6.8
  11947. Atle Mjelde Bσrdholt also says that old Minerva games generally
  11948. reconfigure your machine. To avoid this, skip the !Boot file and click
  11949. on the next file in the sequence (e.g. in Hoverbod BS1 and in Missile
  11950. Control Title).
  11951. 6.8
  11952. Ralph Gibbons finds that Break147 doesnæt work and would like to know if
  11953. there is a fix.
  11954. 6.8
  11955. Mike Cook of Musbury Consultants repeats the point made by David Holden
  11956. last month: one reason older programs may not work is that the
  11957. abbreviations for some * commands have changed (e.g. *CHA. used to be
  11958. *ChannelVoice but is now *ChangeDynamicArea). Running the Obey file
  11959. Commands on the RISCáOSá3 support disc is supposed to help but if that
  11960. doesnæt, he suggests editing the program. This affects the PD sample
  11961. player !DSedit and his own !Sample.
  11962. 6.8
  11963. Mike Cook also says that another change in the new operating system
  11964. resulted in the sampling part of his software not working. This also
  11965. affected the real time sound manipulator !Echo and the !Scope storage
  11966. oscilloscope. Any readers with the original programs can send him a disc
  11967. for a free upgrade. His address is 5áHelmshoreáRoad, Haslingden,
  11968. Rossendale, Lancashire, BB4á4BG.
  11969. 6.8
  11970. Last month, we listed Powerband and Saloon Cars as not working. Rob
  11971. Brown says that Fourth Dimension can supply RISCáOSá3 compatible
  11972. replacements (for ú2 per program, he thinks).
  11973. 6.8
  11974. Donæt forget that Rob Brown would welcome any contributions to his
  11975. compatibility chart, periodic updates of which will be included on the
  11976. Archive monthly program disc. His address is öValtaneeò, BrightonáRoad,
  11977. LoweráKingswood, Tadworth, Surrey, KT20á6UP.
  11978. 6.8
  11979. Printing
  11980. 6.8
  11981. öVDU 2ò printing
  11982. 6.8
  11983. David Holden says that, although VDU 2 printing still works with
  11984. RISCáOSá3, it appears to monopolise the computer until printing is
  11985. finished. He has noticed that a couple of his programs that used to
  11986. multi-task, no longer do so and BBC emulator programs take a lot longer
  11987. to return control to the operator, even if using a printer buffer.
  11988. 6.8
  11989. Printer buffering
  11990. 6.8
  11991. Are the points in the previous paragraph perhaps connected to the non-
  11992. functioning of the RISCáOSá3 printer buffer mentioned last month? Or are
  11993. there further problems? Has anyone got a fix for it or them? The
  11994. questions seem endless!
  11995. 6.8
  11996. Ralph Gibbons used to find a printer buffer routine (written by Anton
  11997. Calver and on Careware 5 & 7) very useful under RISCáOSá2. Does Anton
  11998. read Archive? Has he updated his routine to run under RISCáOSá3?
  11999. 6.8
  12000. BJ330
  12001. 6.8
  12002. In answer to Tord Erikssonæs plea (Archive 6.6 p56), Brian Cocksedge
  12003. recommends the Computer Concepts Turbo Driver (ú53 through Archive).
  12004. This produces much quicker printouts. The printer should be set to IBM
  12005. emulation (he understands this gives a better quality printout). The
  12006. stripes in graphics areas are a feature of the BJ printers due to minor
  12007. mechanical errors in the feed mechanism and the momentum of the print
  12008. head.
  12009. 6.8
  12010. To print A3, as well as setting the paper size in the printer
  12011. preferences window, you have to tell the printer the size. Brian does
  12012. this by sending öEsc,C,99ò to the printer via a small Obey file
  12013. containing the commands:
  12014. 6.8
  12015. *FX 138,27
  12016. 6.8
  12017. *FX 138,67
  12018. 6.8
  12019. *FX 138,99
  12020. 6.8
  12021. LaserDirect
  12022. 6.8
  12023. Steve Hutchinson experienced the same spurious lines that Roger King
  12024. reported in Archive 6.5 p31. He was told by CC that this was due to the
  12025. LaserDirect card not being happy in its podule slot. Rearranging podules
  12026. solved it for him.
  12027. 6.8
  12028. Photocopying via LaserDirect
  12029. 6.8
  12030. Tim Powys-Lybbe received version 2.09b of the LaserDirect software,
  12031. which cleared up the problems with print quality. However, his scanner
  12032. will now not do a photocopy at all, reporting (even with 3 Mb free) that
  12033. there is not enough free memory to do a photocopy. If he reverts to
  12034. version 2.05a, photocopying continues to work fine.
  12035. 6.8
  12036. Disc drives
  12037. 6.8
  12038. Speeding up an IDE drive
  12039. 6.8
  12040. After he upgraded to RISCáOSá3, Peter Young initially found his IDE
  12041. drive (with a Beebug interface) to be very slow but eventually
  12042. discovered that setting an IDE cache speeded things up considerably. The
  12043. command to set it is:
  12044. 6.8
  12045. *Configure IDEFSDirCache 16k
  12046. 6.8
  12047. Before he created the cache, Peter was getting strange messages like dir
  12048. ö@ò not found when he specified directories at the command line with
  12049. references like $.xxx... rather than IDEFS:: IDEDisc4.$.xxx.... Since he
  12050. is now religiously using full pathnames, he doesnæt know whether
  12051. creating the cache might have solved the problem.
  12052. 6.8
  12053. Peter says he still doesnæt really know whether what he wants is a cache
  12054. or a buffer. Can anyone throw any light on exactly what they do and what
  12055. the optimum sizes are for each in different circumstances? (Since
  12056. configuration options are provided, presumably one is expected to use
  12057. them, but when and how?)
  12058. 6.8
  12059. SCSI discs
  12060. 6.8
  12061. Andrew Shell encountered the same problems as Philip Lardner (Archive
  12062. 6.6 p56) with copying, moving or deleting files to, from, or in the root
  12063. directory. By resetting his configuration so that *Status reads:
  12064. 6.8
  12065.     SCSIFSDirCache     16k
  12066. 6.8
  12067.     SCSFSdisks         1
  12068. 6.8
  12069.     SCSIFSDrive        4
  12070. 6.8
  12071.     File System    SCSI
  12072. 6.8
  12073. (and using !Configure to set öSCSI hard discsò toá1) he thought he had
  12074. solved the problem. All now seems to work correctly so far as saving,
  12075. copying and deleting are concerned. However, when he tried the Find
  12076. command on the !FONTS directory he got a sequence of finds reading
  12077. ö...!Boot.!FONTSò, ö...!Boot.!FONTS.!FONTSò, ... ,
  12078. ö.....!FONTS.!FONTS,!FONTSò, etc. He also had a similar problem with the
  12079. Stamp command. Does anyone have any solutions?
  12080. 6.8
  12081. SCSIFiler and Set Alias$Free
  12082. 6.8
  12083. Following the hints in past months involving these, P. N. Cousins would
  12084. like to know: what is the SCSIFiler module for and how does the Set
  12085. Alias$Free hint (Archive 6.5 p27) work?
  12086. 6.8
  12087. Tim Nicholson has noted that using the SCSIFiler module (as recommended
  12088. in Archive 6.7 p44 and elsewhere) has the added advantage that it gives
  12089. the interactive window for Verify and reads the disc name at start-up
  12090. and shows the name under the iconbar icon.
  12091. 6.8
  12092. 5╝ö drive interfaces
  12093. 6.8
  12094. Gordon Lindsay-Jones has found, with the help of his dealer, a
  12095. replacement for his Watford interface: the one from Risc Developments
  12096. works and is, he feels, a superior product. Apart from other advantages,
  12097. it has seven switches with which to set the external drive
  12098. configurations and comes with instructions on the settings required.
  12099. 6.8
  12100. D. S. Allen and Philip Foster have both written to say that the Watford
  12101. interface can be fixed by cutting some wires! D. S. Allen knows of ötwo
  12102. people that have cut the right hand two wires (as viewed facing the
  12103. computer front) of the cables from the Watford board to the computer
  12104. board and also the one from the Watford board to the internal disc
  12105. drive. Both drives work all right after this.ò Philip Foster describes
  12106. the solution as öcutting through the two end wires (furthest from the
  12107. red marker wire and next to the 20ápin removable PAL ROM) of the ribbon
  12108. cable running from the mother board to the interface board.ò He adds
  12109. that öas this is clearly a somewhat irreversible actò he would suggest
  12110. ringing Watford to confirm before you do it.
  12111. 6.8
  12112. Miscellaneous hints and tips
  12113. 6.8
  12114. Use of the Copy key
  12115. 6.8
  12116. Richard Torrens writes: öWe all know that, in a writable icon, <Copy>
  12117. deletes the character to the right of the caret. Did you know that
  12118. <Shift-Copy> deletes to the end of the current word and <Ctrl-Copy>
  12119. deletes to the end of the current line?ò
  12120. 6.8
  12121. How much space for a desktop program?
  12122. 6.8
  12123. P. N. Cousins would like to know how you know how much memory you need
  12124. to use when writing programs that run under the desktop. In my
  12125. experience, allocating too small a WimpSlot can lead to some most
  12126. perplexing error messages, so I would certainly like to know if there is
  12127. a foolproof answer. My solution is trial and error: first I estimate how
  12128. much space is needed for the program code plus variables and workspace
  12129. for sprites, etc, then I set the WimpSlot somewhat larger than my
  12130. estimate and repeatedly reduce it (32Kb at a time) until the program
  12131. crashes. Not very scientific, but it generally works.
  12132. 6.8
  12133. Miscellaneous
  12134. 6.8
  12135. All these hints are from Rob Davison:
  12136. 6.8
  12137. I have a couple of lines in my application !Run files like this...
  12138. 6.8
  12139. SET Titler$RiscOs3 yep
  12140. 6.8
  12141. RMENSURE UtilityModule 3.10 SET Titler$RiscOs3 nope
  12142. 6.8
  12143. ...and near the start of !RunImage, something like the following:
  12144. 6.8
  12145. DIM block% &C00
  12146. 6.8
  12147. SYS öXOS_GSTransò,ö<Titler$RiscOs3>ò,block% ,&C00 TO,,l%
  12148. 6.8
  12149. block%?l%=&0D
  12150. 6.8
  12151. IF $block%=öyepò THEN newos%= TRUE ELSE newos%=FALSE
  12152. 6.8
  12153. SYSöXOS_CLIò,öUNSET Titler$RiscOs3ò
  12154. 6.8
  12155. Å    There are several other configuration options which are not accessible
  12156. in !Configure that allow you to setup your system more exactly in the
  12157. area of double-click delays, etc.
  12158. 6.8
  12159. One of the more interesting ones which may be useful to those people who
  12160. are new to RISCáOS, is WimpMenuDragDelay which sets the time in 1/10
  12161. second units for which menu activity is disabled after a menu has been
  12162. automatically opened. This enables the pointer to move over other menu
  12163. entries without cancelling the submenu. To change it, you need to use
  12164. the command line (remember that thing?) Syntax:
  12165. 6.8
  12166. *Configure WimpMenuDragDelay <delay>
  12167. 6.8
  12168. Å    There is an in-built rolling credit list of all the people involved in
  12169. the creation of the Operating System. It is accessed by bringing up the
  12170. Éinfoæ dialog box for the operating system (accessible from the task
  12171. manager menu) and clicking with <menu> on the characters Étæ Éeæ ÉAæ and
  12172. Émæ in that order in the string É⌐ Acorn Computers Ltd 1992.æ If nothing
  12173. happens after a couple of seconds, re-open the menu and try again.
  12174. 6.8
  12175. (Click with <menu>? Ö thatæs against Acornæs guidelines surely?!)
  12176. 6.8
  12177. However, if you just bring up the dialog box and click <menu> off any of
  12178. the icons (e.g. on the grey window background) then the Task Manager
  12179. aborts and the only way to recover a normal machine is to press <ctrl-
  12180. reset>. (Oops!)
  12181. 6.8
  12182. Boot-up options
  12183. 6.8
  12184. An item on Peter Youngæs wish list for RISCáOSá4 is the ability to call
  12185. different !Boot sequences by pressing user-defined keys at power-on. I
  12186. agree that it would be useful to have this built into the operating
  12187. system. However, it is already quite easy to achieve a similar result. I
  12188. know that some people find Ian Copestakeæs !TWO very useful for this
  12189. purpose. Alternatively, you can ödo it yourselfò without too much
  12190. difficulty. Assume, for example, that you have saved two Desktop boot
  12191. files called Plain and Fancy in a directory called BootFiles. Then
  12192. create a Basic file in the root directory called !Boot reading as
  12193. follows:
  12194. 6.8
  12195. CLS
  12196. 6.8
  12197. PRINTÉæöChoose one of the
  12198. 6.8
  12199. following sets of
  12200. 6.8
  12201. Boot-up preferencesöÉæ
  12202. 6.8
  12203. PRINTö   1.  Plainò
  12204. 6.8
  12205. PRINTö   2.  Fancyò
  12206. 6.8
  12207. PRINTÉæöType 1 or 2ò
  12208. 6.8
  12209. A$=GET$
  12210. 6.8
  12211. CASE A$ OF
  12212. 6.8
  12213.  WHEN ö1ò:OSCLI(öDesktop -File $.BootFiles.Plainò)
  12214. 6.8
  12215.  WHEN ö2ò:OSCLI(öDesktop -File $.BootFiles.Fancyò)
  12216. 6.8
  12217.  OTHERWISE: OSCLI(öDesktopò)
  12218. 6.8
  12219. ENDCASE
  12220. 6.8
  12221. There are numerous variations on this theme. You can use negative INKEY
  12222. values to test for a key being held down rather than waiting for a
  12223. keypress with GET$. If you like, you can put Plain and Fancy in, say,
  12224. the !System directory instead of creating a new directory, or you can
  12225. rename the Basic file !Run, create a directory called !Boot and move
  12226. !Run into it along with Plain and Fancy.
  12227. 6.8
  12228. Obviously, you can adapt this idea to suit your purposes, but beware of
  12229. pressing R or <Delete> when you switch the computer on, since these will
  12230. reset your configuration!
  12231. 6.8
  12232. Splitting the boot sequence into two parts like this was recommended
  12233. last month for making sure that the SCSIFiler module is properly
  12234. installed before the desktop is initialised.  It also opens up a number
  12235. of other possibilities....
  12236. 6.8
  12237. It has always seemed to me that the usefulness of the facility for
  12238. automatic saving of desktop boot files is limited (a) because they tend
  12239. to get cluttered up with unnecessarily opened directories and booted
  12240. applications, and (b) because they omit necessary things like virus
  12241. protection modules, extra screen modes, etc. Problem (a) can be reduced
  12242. by making sure that you only open those directories that you want open
  12243. and boot those directories that you want booted before you save the
  12244. desktop boot file (the equivalent of Plain or Fancy in the above
  12245. example); (b) can be solved by following the two-stage approach and
  12246. putting the more technical bits in a hand-crafted pre-desktop !Boot
  12247. file, which you will probably not want to change very often, while the
  12248. desktop boot file is left simply to run applications, open directories
  12249. and fire up the pinboard.
  12250. 6.8
  12251. So far as I can see, you will still need to do some hand-editing of the
  12252. desktop boot file if you want a nonö-RISCáOSá3 awareò application to be
  12253. booted or run automatically. Alternatively, you can get an application
  12254. to auto-boot by having the desktop boot file automatically open the
  12255. directory that the application is in. Furthermore, you can get the
  12256. application to run automatically by editing its own !Boot file to run
  12257. the !Run file.
  12258. 6.8
  12259. Tim Nicholson notes that you must also split the boot sequence into two
  12260. parts if you want to follow the suggestion in the March Acorn User for
  12261. altering the desktop initialisation banner.
  12262. 6.8
  12263. In Archive 6.5 p33, Colin Singleton reported problems with trying to
  12264. switch from one öworldò to another by double-clicking on a second boot
  12265. file. He has concluded that you must reset the computer first, since
  12266. running the second boot file doesnæt clear memory first: it simply tries
  12267. to add the applications listed in it to those that are already running.
  12268. 6.8
  12269. Finally, to end this section on boot files, a quote from Colin
  12270. Singleton, with whom I have a lot of sympathy: öThe autoboot facility is
  12271. not much use if it does only half the job. I need to be able to
  12272. understand what it has produced and to patch it up accordingly. I might
  12273. as well carry on using my old boot file, which is what I am doing. The
  12274. new feature is useless (and very confusing) for those users who do not
  12275. know how to build a boot file. Perhaps in time all software will be
  12276. Éawareæ of boot files, then the feature will be useful.ò
  12277. 6.8
  12278. ARM3 too fast for Watford scanner (?)
  12279. 6.8
  12280. Mr A. Shell found that, after he upgraded to RISCáOSá3 and installed an
  12281. ARM3, his Watford Electronics Hand Scanner 1990, Issue 2 (using a Geni
  12282. Scan-4500) stopped working. However, he has found that after entering
  12283. the command *Cacheáoff, the scanner works perfectly. When the scanning
  12284. is finished, *Cacheáon  speeds the processing up.
  12285. 6.8
  12286. Zooming in Draw
  12287. 6.8
  12288. When I acquired Artworks, I thought one of its neatest features was the
  12289. ability to use the mouse to mark the area into which you want to zoom.
  12290. Now, I have found while reading the manual (Applications Guide p48) that
  12291. Draw does just the same ù in fact, it goes one better, because you donæt
  12292. need to select a zoom tool first, you just hold down <shift> and drag
  12293. with <adjust>. To return to your previous scaling you use <Ctrl-R>; the
  12294. manual also describes various other hot-key combinations to adjust the
  12295. scaling.
  12296. 6.8
  12297. Turning CapsLock off
  12298. 6.8
  12299. Peter Young has a few old, and some not so old, programs which will only
  12300. take upper case input, and putting *FX202,1 into the !Run file meant,
  12301. with RISCáOSá2, that he didnæt have to remember to press capslock first.
  12302. In RISCáOSá3, this call seems to turn off keyboard input entirely,
  12303. though it occasionally produces input different from what is typed for a
  12304. couple of presses before it crashes the machine.
  12305. 6.8
  12306. I think, if I have interpreted the Programmersæ Reference Manual
  12307. correctly (pages 511-512 in the RISCáOSá2 manual), that the correct code
  12308. to turn capslock off while leaving the other keyboard settings unaltered
  12309. is *FX 202,16,239; the command *FX 202,16 will turn capslock off but may
  12310. alter some of the other settings.
  12311. 6.8
  12312. What *FX 202 does is to alter the ökeyboard status byteò. If the command
  12313. is given in the form *FXá202,R1,R2 then R2 controls which bits of the
  12314. status byte are changed and R1 supplies the new bits. In technical
  12315. terms, the new value of the status byte is made equal to
  12316. 6.8
  12317. (the old value AND R2) EOR R1
  12318. 6.8
  12319. Therefore, to force a particular bit in the status byte to adopt value n
  12320. (either 0 or 1) you leave that bit unset in R2 and made equal to n in
  12321. R1; to leave a bit unchanged you set it in R2 and unset it in R1.
  12322. 6.8
  12323. Capslock is controlled by bit 4 (the one with value 16), so to set it
  12324. (thus turning capslock off) you use the values 239 (= 255 minus 16) and
  12325. 16 for R2 and R1 respectively.
  12326. 6.8
  12327. The shortened form of the command, *FX 202,R1 has the same effect as *FX
  12328. 202,R1,0
  12329. 6.8
  12330. (Itæs not clear to me why *FX 202,1 should have worked either in
  12331. RISC¡OSá2 or on the BBC.)
  12332. 6.8
  12333. Editing !Run files
  12334. 6.8
  12335. Peter Young asks if one is allowed to amend the !Run files of commercial
  12336. programs. My answer is that there is no reason at all why you shouldnæt,
  12337. so long as you know what you are doing. You could, for instance, include
  12338. a command to turn capslock off (see above) or a command to run a printer
  12339. driver automatically. Some programs allow you to change preferences by
  12340. setting up system variables in the !Run file. In RISCáOSá2, some people
  12341. even amended the !Run file of Acornæs !Edit to make it run on a system
  12342. with lots of fonts.
  12343. 6.8
  12344. ROM Speed
  12345. 6.8
  12346. Seßn Kelly writes that the old ROM speed up trick still works on some
  12347. computers with RISCáOS 3.1. On an Archimedes, the ROM speed can be read
  12348. with the following Basic lines:
  12349. 6.8
  12350. SYS öOS_UpdateMEMCò,0,0 TO R%
  12351. 6.8
  12352. PRINT (R% AND &C0) DIV &40
  12353. 6.8
  12354. The lowest speed is 0, the highest 2 Ö the MEMC data sheet defines a
  12355. value of 3 as Énot meaningfulæ although it appears to have the same
  12356. effect as 2. The speeds are not absolute, but depend on the computeræs
  12357. memory clock speed. On old A440, RISCáOS 3.1 selects a value of 2, so no
  12358. speed up is possible, but on an A5000, a value of 1 is set by RISCáOS
  12359. 3.1 and changing this to 2 increases the machineæs speed by about 5%.
  12360. 6.8
  12361. The ROM speeds can be set by using:
  12362. 6.8
  12363. SYS öOS_UpdateMEMCò,&00,&C0: REM slowest, speed 0
  12364. 6.8
  12365. SYS öOS_UpdateMEMCò,&40,&C0: REM speed 1
  12366. 6.8
  12367. SYS öOS_UpdateMEMCò,&80,&C0: REM fastest, speed 2
  12368. 6.8
  12369. These lines are included as programs on the monthly program disc,
  12370. together with the short program called ACK which, on Seßnæs un-sped-up
  12371. A5000, executes in about 1 second. Double-clicking on one of the speed
  12372. changers followed by ACK will show how the different speeds affect your
  12373. computer. An A5000 appears to run at speed 2 with no problems. Program
  12374. Speed2 can be automatically run by !Boot, providing a slight performance
  12375. boost to A5000s.
  12376. 6.8
  12377. RMFaster-ing
  12378. 6.8
  12379. Seßn Kelly also reports that *RMFaster on certain modules, such as
  12380. Basic, can produce a useful increase in speed for applications that read
  12381. the ROM a lot. Without an ARM3, the speed increase can be very large Ö
  12382. with the cache off, he has found Basic programs that run over 30% faster
  12383. with Basic in RAM. With the cache on, the increase tends to be about 5%,
  12384. so RMFaster-ing on an ARM3 machine is really a waste of memory unless
  12385. time is really important.
  12386. 6.8
  12387. Interestingly, both ROM speed-ups and RMFaster-ing only produce a slight
  12388. speed increase, typically 5%, on an ARM3 machine. This appears to show
  12389. that the cacheæs hit rate is very high.
  12390. 6.8
  12391. Also on the program disc ...
  12392. 6.8
  12393. Also on the monthly program disc are a number of utilities from Rob
  12394. Davison: SmoothM ù a relocatable module which averages mouse coordinates
  12395. and is ideal for use in pixel-based art packages such as Paint or
  12396. Artisan. To use it, double click on the module and enable averaging with
  12397. the command *SmoothON. To restore normal use, enter the command
  12398. *SmoothOFF. This module is public domain and is, in fact, based on an
  12399. article which appeared in Archive 1.5 (February 1988) by Malcom
  12400. Banthorpe.
  12401. 6.8
  12402. SolDrag and NormDrag are short programs to turn solid sprite dragging on
  12403. and off.
  12404. 6.8
  12405. Tools and 22Sprites are modified toolsprites and high resolution icon
  12406. sprites.
  12407. 6.8
  12408. Some Bugs
  12409. 6.8
  12410. First, from Rob Davison:
  12411. 6.8
  12412. There are quite a number still in the operating system. Most are very
  12413. obscure, but some are quite serious and one may be slightly embarrassing
  12414. to Acorn! Hopefully, they will do a ÉRISCáOS 3 Extras discæ to fix the
  12415. more important ones.
  12416. 6.8
  12417. Å    Impression style icons Ö There is a serious bug in this part of the
  12418. window manager. If the application you are writing uses a dialog box
  12419. similar to the in-built applications (e.g. Edit) when quitting, but
  12420. including the new style icons, the operating system reports an abort on
  12421. Data transfer after the application has quit. The solution is to close
  12422. and delete all windows yourself and call Wimp_Poll enough times to
  12423. ensure that they have all gone before quitting.
  12424. 6.8
  12425. Å    Paint Ö Load the application and repeatedly create 256 colour sprites
  12426. of 128x64 pixels. Paint bombs (usually) when the sixth sprite is created
  12427. with an ÉUnrecoverable internal error SpriteExtend: Bad pixel
  12428. translation tableæ.
  12429. 6.8
  12430. The only good point is that your file is preserved in Wimp$ScrapDir
  12431. before Paint dies.
  12432. 6.8
  12433. The problem mentioned in Archive, where the name in the save dialog box
  12434. is corrupted in some circumstances, still exists.
  12435. 6.8
  12436. Å    !Edit Ö This is a fairly worrying one (R.áW.áDarlington has found
  12437. similar problems). Edit has had the same bug since its first release in
  12438. RISCáOS 2.00. Sometimes, the text window is not redrawn properly and the
  12439. caret can appear to be on a different line. Text is deleted or inserted
  12440. at the wrong place and it can sometimes be quite a while before you
  12441. realise what is going on. I encounter this problem much more now because
  12442. of the excellent facilities for editing Basic programs. If Acorn canæt
  12443. get windows to redraw correctly in all circumstances, what chance do the
  12444. rest of us have? (Quick fix: press <f12>, <return>, <return> before
  12445. doing any major editing.)
  12446. 6.8
  12447. Å    Operating system bugs Ö I have one (and only one) 800Kb ÉEæ format
  12448. disc which works and verifies fine on RISCáOS 2.00 whereas RISCáOS 3.00
  12449. and 3.10 absolutely refuse to look at it and tell me ÉDisc not
  12450. formattedæ.
  12451. 6.8
  12452. I have managed to get the dreaded ÉAbort on Data transferæ while using
  12453. interactive file copying but only under extreme provocation. It was much
  12454. more common in 3.00!
  12455. 6.8
  12456. There is another problem where, if you set the MOUSE RECTANGLE to allow
  12457. the pointer off the left of the screen and then record button clicks,
  12458. the y-coordinate is set to Ö1 with the first returned button click. E.g.
  12459. 6.8
  12460. *POINTER 1
  12461. 6.8
  12462. MOUSE RECTANGLE -1000,-1000,2000 ,2000
  12463. 6.8
  12464. MOUSE TO 100,500
  12465. 6.8
  12466. REPEAT
  12467. 6.8
  12468. MOUSE x%,y%,b%
  12469. 6.8
  12470. PRINTTAB(0,0);öx=ò;x%;ö  ò
  12471. 6.8
  12472. PRINTTAB(0,1);öy=ò;y%;ö  ò
  12473. 6.8
  12474. PRINTTAB(0,2);öb=ò;b%;ö  ò
  12475. 6.8
  12476. UNTIL b%<>0
  12477. 6.8
  12478. END
  12479. 6.8
  12480. Run this and move the pointer off the left of the screen. Click a button
  12481. and the displayed y coordinate changes to Ö1 regardless of the last
  12482. position. (The solution is to do another mouse read immediately after
  12483. the UNTIL and use the values returned from that.)
  12484. 6.8
  12485. Next, from Seßn Kelly:
  12486. 6.8
  12487. !Paint has two bugs related to deleting rows and columns in sprites. The
  12488. first is that when columns to delete are selected by dragging right with
  12489. the mouse, it is not possible to delete the rightmost column of the
  12490. sprite (no matter how far it is zoomed in). The second is that, when
  12491. dragging rows to delete downwards, the topmost row (where the operation
  12492. was started) is not deleted.
  12493. 6.8
  12494. If there is data in the RAM filing system, RISCáOS 3.1 complains if you
  12495. attempt to leave the desktop by selecting EXIT from the task manager
  12496. menu, although the RAMFS is not affected.
  12497. 6.8
  12498. Sometimes, a RAMFS filer window stays on screen when the RAMFS has been
  12499. killed.
  12500. 6.8
  12501. Finally, from R. W. Darlington:
  12502. 6.8
  12503. When I load so many items on the iconbar that it has to scroll to reach
  12504. opposite ends and I then delete an item from the middle of the list, I
  12505. sometimes finds that as well as the deleted one disappearing, other
  12506. icons disappear leaving only their names. Also, all the directory icons
  12507. and application icons disappear from directory viewers leaving only
  12508. their names as reminders as to what is there.
  12509. 6.8
  12510. In !Paint, when I try to x-scale or y-scale a sprite, I find that it
  12511. takes one column off the right hand edge and puts it at the left hand
  12512. edge.
  12513. 6.8
  12514. Has anyone else experienced these or other bugs?
  12515. 6.8
  12516. Matters Arising
  12517. 6.8
  12518. Alarm (switching between GMT and BST)
  12519. 6.8
  12520. (Archive 6.3p15 / 6.5p35) Colin Singleton confirms that the alarm set
  12521. for 1áa.m. on 7th Februaryá1994 is to remind you to set the BST on and
  12522. off dates in 1994.
  12523. 6.8
  12524. Donæt worry: you donæt have to stay up to catch this alarm: it will come
  12525. up when you next switch the computer on.
  12526. 6.8
  12527. Ken Cowap has sent in a description which he hopes will complement the
  12528. rather brief instructions in the Applications Guide (p132) on this
  12529. rather convoluted facility:
  12530. 6.8
  12531. When this option is selected, Alarm will automatically switch between
  12532. GMT and BST times on the dates you specify. Click on the arrows to
  12533. change the time, day, month and year.
  12534. 6.8
  12535. Entries must be for one calendar year only even though the öBST starts
  12536. on:ò date may already have passed. Any such past date will be ignored
  12537. but must be entered nevertheless.
  12538. 6.8
  12539. As the changeover dates are liable to undefined variation from year to
  12540. year, Alarm will issue a warning during the month prior to that of the
  12541. next yearæs first expected changeover.
  12542. 6.8
  12543. The warning will be recorded in the Alarm Browser Window as öApplication
  12544. alarm set by Alarmò, and the dates/times of valid changeover(s) will
  12545. still be activated. These alarms appear in dark grey and cannot be
  12546. selected. When the warning is activated, a message appears saying: öThe
  12547. dates for entering and leaving BST are no longer valid and should be
  12548. reset as soon as possible.ò and two options are offered: öReset them
  12549. laterò and öReset them now.ò The warning will be repeated automatically
  12550. at 24 hour intervals until öReset them nowò is selected and the dates
  12551. and times are reset.
  12552. 6.8
  12553. Ken warns that anyone wanting to experiment by setting the system clock
  12554. into the future should take care to back up their alarms first, since a
  12555. ömove into the futureò will activate and lose all alarms set to go off
  12556. before that date. Also note that there is a long delay accompanied by
  12557. unexplained hourglass activity before the warning notice appears.
  12558. 6.8
  12559. Impression dongle
  12560. 6.8
  12561. (Archive 6.5 p32) Colin Singleton has been assured by Computer Concepts
  12562. that shorting the pins of the Impression dongle can do no harm.
  12563. Switching the computer off while Impression is running can cause
  12564. problems. Apparently, the reason is that Impression continually checks
  12565. that its dongle is present and, if it happens to be checking when power
  12566. is lost, the dongle is liable to receive a burst of static which renders
  12567. it inoperable. This will drain away if you leave it for a time (perhaps
  12568. a few hours) but the quick cure, according to CC, is to short the lines
  12569. to each other using a small coin rubbed against the rows of male pins.
  12570. Colin recommends removing the dongle from both the machine and the
  12571. printer first.
  12572. 6.8
  12573. Getting the hare and tortoise into step
  12574. 6.8
  12575. (Archive 6.6 p59) Jim Nottingham has written in response to my plea...
  12576. öthe solution is to fire up the computer in slow mode with a *Configure
  12577. Cache off command and run the !Arm3 application in the Boot file. This
  12578. brings up the computer with the cache on and the hare on the iconbar. If
  12579. you want the computer to boot up with the Arm3 cache off, add *Cache off
  12580. to his Boot file after running the Arm3 application.ò
  12581. 6.8
  12582. Well! I must be completely dense. Iæve tried to follow these
  12583. instructions to the letter. I have typed *Configure Cache off at the
  12584. command line (and *Status confirms that the cache configuration is
  12585. öoffò) and I have a !Boot file (file type öDesktopò) the first two lines
  12586. of which read:
  12587. 6.8
  12588. Filer_Boot ADFS::Four.$.!System
  12589. 6.8
  12590. RUN system:!Arm3
  12591. 6.8
  12592. When I boot up, the cache is off and the tortoise on the iconbar. When I
  12593. click once on the tortoise, the cache is turned on, but the tortoise
  12594. stays. When I click a second time, the hare appears but the cache is
  12595. turned off. Adding Cache on as the next line of the !Boot file doesnæt
  12596. seem to help. What do I do next (apart from swapping the names of the
  12597. two icons as Iæve suggested before!)?
  12598. 6.8
  12599. Pinboard backdrop sprites
  12600. 6.8
  12601. In Archive 6.4 p12, R. W. Darlington gave a suggested modification to
  12602. the !Boot file which results in a different backdrop being shown each
  12603. time the computer is reset. His method causes the available sprites to
  12604. be chosen in strict rotation. Geoffrey Rimmer has suggested a variation
  12605. of the same idea which would choose one of the sprites at random.
  12606. 6.8
  12607. Assuming, as before, that there are 75 sprites called Sprit00 to Sprit74
  12608. in the directory PinSp, his suggested code is:
  12609. 6.8
  12610. Set S$ <Sys$Time>
  12611. 6.8
  12612. SetEval S$ S$ RIGHT5
  12613. 6.8
  12614. SetEval NN STR(VAL(S$ RIGHT2 + S$ LEFT2)MOD 75)
  12615. 6.8
  12616. If LEN(NN)=1 Then SetEval NN ö0ò +NN
  12617. 6.8
  12618. SetEval Tile$Name öSpritò+NN
  12619. 6.8
  12620. Pinboard
  12621. 6.8
  12622. Backdrop -T ADFS::4.$.PinSp. <Tile$Name>
  12623. 6.8
  12624. Finally ...
  12625. 6.8
  12626. Page 140 of the User Guide says that the example commands to set
  12627. Alias$@PrintType and Alias$@RunType variables must have trailing spaces.
  12628. Does anyone know why?ááA
  12629. 6.8
  12630. Supermarket Ö In Four Languages
  12631. 6.8
  12632. Alex Thomas
  12633. 6.8
  12634. This review is a language teacheræs perspective on the ÉSupermarketæ
  12635. language programs produced by New Era Software in four languages
  12636. (English, French, German and Spanish).
  12637. 6.8
  12638. Surely, I thought, this must be every modern language teacheræs dream
  12639. software for the Archimedes. Just think of the realistic situations set
  12640. against the background of shopping in a supermarket which could meet the
  12641. demands of the National Curriculum (Modern Languages and IT) and the
  12642. GCSE syllabuses. This disc must, I thought, deal with asking for
  12643. particular items, quantities, containers, problems at the checkout,
  12644. queries about the bill, breakages, complaints, special offers, coupons,
  12645. shoplifting, advertising, job vacancies Ö the potential is tremendous.
  12646. 6.8
  12647. With my mind buzzing with such expectations, I was eager to try out this
  12648. program with a class, so I sat down after school to run through it and
  12649. plan some meaningful tasks. I was hoping to use the German version, so
  12650. that was where I started. I needed to enter the shop name and a message
  12651. to go on the till receipts Ö everything was in German, so I was feeling
  12652. very positive about the program. (The function keys are used for accents
  12653. in all the languages.) The next screen asked for information about what
  12654. is bought, the price, the amount tendered, method of payment Ö still all
  12655. in German, as are the print commands, etc.
  12656. 6.8
  12657. Having entered some information, I printed it out Ö a very basic till
  12658. receipt with my list of items and prices, which are totalled with the
  12659. amount of change calculated and my message from the first screen (thank
  12660. you). It was much the same as all those till receipts I have brought
  12661. back from various trips in recent years, except that at least the pupil
  12662. has to enter the items bought and understand approximately twenty items
  12663. of vocabulary which appear on the screen for each öcustomerò.
  12664. 6.8
  12665. I began to plan tasks for my beginners using the printouts. One pupil
  12666. could produce one and the others ask questions to find out the prices.
  12667. We could produce them for different shops and compare prices.... but
  12668. then, I have a cupboard full of attractive, colourful supermarket
  12669. advertising leaflets from Germany, in class sets, surely it would be
  12670. better to use them!
  12671. 6.8
  12672. I decided to go back to the program to see what else it has to offer
  12673. which the GCSE sets could use. I pressed öclearò to see what happened Ö
  12674. the chance to enter another list of items and prices! Since the computer
  12675. totals the prices and works out the change, you canæt even work on
  12676. complaints at the checkout, except by pretending that the wrong price
  12677. was entered.
  12678. 6.8
  12679. There is no list of acceptable items, so there is no spellcheck, it
  12680. accepts complete nonsense Ö an item is any set of letters, a price any
  12681. number. There are no graphics, no variations on the basic layout and
  12682. content, nothing which will interest the pupils or give them a sense of
  12683. achievement, unless the teacher spends hours devising speaking tasks
  12684. based on till receipts.
  12685. 6.8
  12686. Is it worth taking the whole class to the computer room to produce a
  12687. till receipt, or devising a flexible learning lesson with a variety of
  12688. small group activities so that this program can be used on the one
  12689. computer in my room? No, definitely not. I have some much better ideas
  12690. based on my wide selection of realia!
  12691. 6.8
  12692. The programæs handbook suggests many sophisticated possibilities using
  12693. product files and bar codes which may be valid for teachers of
  12694. Technology, etc to develop. However, as a language teacher, I have not
  12695. yet found the time to work on these areas which seem to have little to
  12696. do with communication, verbal or written. In case I was too hasty in my
  12697. rejection of this program, I decided to use it with a class anyway. The
  12698. first pupil (below average year 9) got to the printing stage and said
  12699. öNow what?ò Ö öThatæs all it doesò, I replied. He returned to his group
  12700. to do the structured oral tasks I had set up, showed them his till
  12701. receipt and the rest asked, öWouldnæt it be quicker if we just wrote one
  12702. out miss?òááA
  12703. 6.8
  12704. Hints and Tips
  12705. 6.8
  12706. Å    A5000 serial port problems Ö Several of you will have experienced
  12707. problems with dead or dying serial ports on their A5000s. Acorn are
  12708. aware of problems on early A5000 p.c.b.s and have a fix for them.
  12709. However, there are still some problems with static. Until Acorn find a
  12710. solution, the best we can do is take suitable precautions. (1) Use
  12711. braid-screened cable and connect the braid to the connector shells at
  12712. both ends. Also, never connect a cable when the machine at either end is
  12713. switched on. Always switch on both devices after the cable has been
  12714. connected.
  12715. 6.8
  12716. Å    Filer_CloseDir Ö On my 4Mb A3000, I like to open Érelatedæ windows to
  12717. various programs and then close them again when finished, by using
  12718. Filer_OpenDir <pathname> <position> and Filer_ CloseDir <pathname>
  12719. respectively. I put these commands in the !Run file of !BJ10e Turbo
  12720. Drivers, one before the command to run !Runimage and the other after.
  12721. Readers should be warned that the command Filer_CloseDir clashes with
  12722. CCæs Turbo Driver (v2.09b) when using their Compression filing system
  12723. (CFS) (v1.17). If the Turbo driver is loaded first and then CFS, you
  12724. will find that, when trying to quit the Turbo Driver, it goes into an
  12725. error loop with SWI &43303 not known and only a <ctrl-break> or <reset>
  12726. will release the computer so you lose all unsaved files, etc. No problem
  12727. occurs when they are loaded in reverse order or when Filer_ CloseDir is
  12728. deleted from the !Run file of !BJ10e.
  12729. 6.8
  12730. Does anyone know whether any other programs clash with Filer_CloseDir?á
  12731. Brian Cocksedge, Midhurst.
  12732. 6.8
  12733. Å    Filofax printing Ö We had a letter printed on a piece of Filofax paper
  12734. which proved that you can do so with a Canon BJ200 with CCæs Turbo
  12735. Driver software using a custom page size of 95 ╫ 165 mm. If you use
  12736. Impression (II or Junior), it shows the print area so it is easy then to
  12737. create a suitable frame and choose a small typeface (say, 8 pt) and view
  12738. the page at 200%.á Brian Stewart, Nairn.
  12739. 6.8
  12740. Å    Inkjet printing Ö When inkjet/bubblejet printouts need a relatively
  12741. large amount of ink, the paper can become a little wrinkled. To remove
  12742. the wrinkles, pass the paper through a laser printer by printing a blank
  12743. page. This calendars the paper to its original smooth finish.á George
  12744. Foot, Oxted.
  12745. 6.8
  12746. Å    Laser toner cartridges Ö The first sign you get that a laser toner
  12747. cartridge is about to run out is a line down the paper which is
  12748. obviously very low on toner. If you örock the cartridge gentlyò, you may
  12749. be able to spread the toner out sufficiently to get a few more sheets
  12750. out of it. Try rocking first but then eventually, try shaking. Beware,
  12751. if you shake too soon, you can end up with toner all over the place!á
  12752. Colin Singleton, Sheffield.
  12753. 6.8
  12754. Å    ShowPage confusion Ö It has been said within the pages of Archive that
  12755. öShowPage does not work with RISCáOS 3ò. This is not entirely correct.
  12756. It will not work with RISCáOS 3 fonts, i.e. those which have their own
  12757. kerning tables, and it will not work with RISCáOS 3æs ROM fonts.
  12758. However, if you want to use ShowPage, all you need to do is to replace
  12759. the in-built fonts (Corpus, Homerton and Trinity) with ones within your
  12760. own font folder and included a FontRemove command to remove the ROM
  12761. fonts.ááA
  12762. 6.8
  12763.  
  12764. Using RISC¡OSá3.1
  12765. 6.7
  12766. Hugh Eagle
  12767. 6.7
  12768. I know that RISC¡OSá3 has caused some problems, but to claim, as one of
  12769. my correspondents does, that the upgrade from RISC¡OSá2 to RISC¡OSá3 has
  12770. caused ömore incompatibilities than the upgrade from 8-bit to 32-bit
  12771. machinesò is taking things just a teeny bit too far. People will be
  12772. blaming Acorn for the performance of the England cricket team next!
  12773. 6.7
  12774. I have recently set up an A4000 from scratch. It comes with the
  12775. operating system and the RISC¡OSá3 Apps already installed, and
  12776. everything is beautifully logical and straightforward. If you stick to
  12777. up-to-date software and use a standard printer in a straightforward way,
  12778. everything is perfectly simple to use. On the strength of this
  12779. experience, I have no doubt that, for new machines and new users,
  12780. RISC¡OSá3 is a considerable step forward. (The A4000 Home Office also
  12781. comes with a good wordprocessor, Easiwriter, and with the very easy-to-
  12782. use Desktop Database installed and ready to run. Itæs a very far cry
  12783. from my A310, which was configured to start up on the command line and
  12784. it took me two hours to find out how to get to the ödesktopò!)
  12785. 6.7
  12786. As for us hardened upgraders, the question whether it was worth the
  12787. hassle is harder to answer. Perhaps Acorn should have waited until the
  12788. new operating system was more thoroughly tested before they released it,
  12789. but then they would have been criticised for keeping us waiting. Perhaps
  12790. they should have incorporated more radical improvements, but then the
  12791. incompatibility problems would doubtless have been far greater. In this
  12792. situation, they couldnæt win!
  12793. 6.7
  12794. Anyhow, rather than complaining, we should direct our thoughts towards
  12795. the changes we would like to see next time round. I am accumulating a
  12796. number of suggestions for the RISC¡OSá4 wish list which I hope to come
  12797. back to in a future column; please let me know if you have any to add.
  12798. 6.7
  12799. Enough of the waffle, and on with the business ...
  12800. 6.7
  12801. I am afraid that, again, I havenæt had time or space to use all your
  12802. contributions. I will in due course. Many thanks for them all.
  12803. 6.7
  12804. Printing
  12805. 6.7
  12806. Paper X and Y offsets and margins
  12807. 6.7
  12808. This subject seems to have caused a lot of confusion, not least, I
  12809. imagine, because there is no reference to the Paper X and Y offsets in
  12810. the manual. (These were added after RISC¡OSá3.0, I think, and seem to
  12811. postdate the manual, although they are mentioned briefly on page 20 of
  12812. the RISC¡OSá3.10 Release Note.)
  12813. 6.7
  12814. Before I go any further, I feel I should point out that this is a
  12815. technical area that the vast majority of users (who are happy to use the
  12816. supplied drivers and page settings) never need bother about.
  12817. 6.7
  12818. The following explanation is based on contributions from Bruce Brown and
  12819. Tom Hughes and on some of the Read_Me files inside !Printers. It is also
  12820. based mainly on experience with HP Laserjets, although most of the
  12821. principles should apply equally to most other printers. I hope I have
  12822. got it right ...
  12823. 6.7
  12824. The purpose of the Paper X and Y Offsets is to tell the printer driver
  12825. which part of the paper the printer is physically capable of printing on
  12826. or, in other words, to define where the printer will print if it is told
  12827. to print at the top left corner of the paper. These are set via the
  12828. !PrintEdit application. The Top and Left Margins, by contrast, define in
  12829. which part of the paper the user wants graphics to be printed. These are
  12830. set via the Paper Size window in the !Printers application. (It is these
  12831. that determine where the grey border appears when you choose the öShow
  12832. paper limitsò or öShow print bordersò option in Draw, Impression, etc.)
  12833. 6.7
  12834. When the printer driver is asked to start printing at the top left
  12835. corner of the area defined by the margins: (1) first a printer reset
  12836. code is sent, then (2) the start of job codes are sent to the printer,
  12837. (3) the printhead (or the imaginary cursor in the case of a laser
  12838. printer) is told to move to the top left of the printable area (which,
  12839. if the X and Y offsets have been properly defined for the particular
  12840. printer, will be the same as the place which they define ù i.e. point A
  12841. in the diagram below), (4)áthe printhead will then be moved down by
  12842. (TopámargináÖáYáoffset) and towards the right by
  12843. (LeftámargináÖáXáoffset) to point B, (5) the page will be printed.
  12844. 6.7
  12845. If either of the margins has been incorrectly defined to be less than
  12846. the equivalent offset, i.e. so that the formula in (4) gives a negative
  12847. result, it will be ignored and the cursor will not be moved at all in
  12848. that direction.
  12849. 6.7
  12850. How do you find out what the X and Y offsets should be? If itæs not
  12851. clear from your printer manual, the file called TopLeft in the Printers
  12852. directory on Applications disc 2 (together with the instructions in the
  12853. Read_Me file) might help. Alternatively, you could try deliberately
  12854. setting X and Y greater than the margins, so that the cursor movement in
  12855. (4) defaults to zero (as explained) and the top left of the image will
  12856. be printed at the default printhead position.
  12857. 6.7
  12858. Under RISC¡OSá2 only the ömarginsò could be defined and, for practical
  12859. purposes, these had to be set to match the physically printable area.
  12860. One of the advantages of the new approach is that if you only want to
  12861. print on a small part of the page you can set very wide margins and the
  12862. printer driver wonæt waste time trying to print nothing (i.e. lots of
  12863. white space) in the unused area.
  12864. 6.7
  12865. According to Archive 6.5 p37, Paul Skirrow has suggested setting
  12866. negative offsets to force the printer to start printing near the middle
  12867. of the page when, for instance, printing labels. Arithmetically this
  12868. will achieve the right effect, but not in the intended way! What you are
  12869. supposed to do is leave the X and Y offsets unchanged and increase the
  12870. margins.
  12871. 6.7
  12872. What will happen if you try to set the margins to less than the paper
  12873. offsets? Bruce Brown says you must not do so, because this will cause
  12874. the driver to send more data to the printer than it can handle on one
  12875. page. The Printers.Read_Me file says that if you do, and if you then try
  12876. to print something right up to the top left of the margins, the image on
  12877. the paper will be shifted down and to the right of where it is supposed
  12878. to be, since you have tried to get the printer to print on the section
  12879. of the paper that it physically cannot print on.
  12880. 6.7
  12881. The Printers.Read_Me file also notes that the paper offsets can be
  12882. negative. Apparently, the natural print position of some printers is
  12883. above the top and/or to the left of the top corner of the paper.
  12884. 6.7
  12885. Contrary to what has been said in this column before, you can apparently
  12886. set the X and Y offsets to zero.
  12887. 6.7
  12888. Owen Smith says: öYou may be caught out by the way !PrintEdit stores the
  12889. paper offsets. Having changed the offsets in the main window, you then
  12890. have to open up every graphics resolution one by one and click OK in
  12891. each of them and then save the new printer definition file. This is
  12892. because the paper offsets are stored in the per graphics resolution data
  12893. (in pixels) and the graphics resolution data is encoded when OK is
  12894. clicked in the graphics window.ò
  12895. 6.7
  12896. Background printing
  12897. 6.7
  12898. It doesnæt work ù and thatæs official!... Iæve been sent a copy of a
  12899. Technical Information news sheet from Acorn, which says: öThe printer
  12900. buffer module supplied as part of RISC¡OSá3 does not work correctly.
  12901. Even though the buffer has been configured to a large size, e.g. 2
  12902. Mbytes, the buffer module waits for the printer to complete its print
  12903. job before returning control to the user. Acorn is currently looking
  12904. into this problem and details will be made available if a fix is
  12905. produced.ò
  12906. 6.7
  12907. Jochen Konietzko, however, wonders what all the fuss is about. He
  12908. writes: öOn my machine, an A410/1 (ARM 3), with the Ace ProDriver and
  12909. the HP DeskJet 500C, there is no problem at all! All I have to do is
  12910. configure a sufficiently large printer buffer. Iæve just tried it again
  12911. and, with a buffer of 1Mb, I can work in a database with just a slight
  12912. reduction in speed.ò
  12913. 6.7
  12914. The only reason I donæt use this option is that, unlike the font cache,
  12915. it is not possible to drag the task manager slider for the system heap/
  12916. stack below the limit set by the configuration of the buffer, so that
  12917. the memory is lost completely until a reset.
  12918. 6.7
  12919. My standard setting for the printer buffer is 128 Kb, because that does
  12920. not slow printing down (with a 1024 Kb buffer, printing takes about 25%
  12921. longer than at 4 Kb, even if I donæt touch the keyboard at all) and yet
  12922. I have a kind of öemergency multitaskingò; at least, when I decide to
  12923. cancel an Impression printout, the button responds almost instantly.
  12924. 6.7
  12925. If I have to print several copies of a text, the print from a file is
  12926. better, anyway, because then the printer doesnæt try to hog all
  12927. available RAM.ò
  12928. 6.7
  12929. Perhaps the reason he has no problems is that the Ace ProDriver doesnæt
  12930. use the Acorn buffer module.
  12931. 6.7
  12932. LaserDirect and TurboDrivers
  12933. 6.7
  12934. Computer Concepts say that version 2.09b is now available as a free
  12935. upgrade to registered owners, as an interim measure. This fixes a few
  12936. minor problems (e.g. the patterning effects and the problems with
  12937. sprites with palettes attached) but is not a full RISC¡OSá3 version. öCC
  12938. have a team working on the printer drivers but the amount of work
  12939. involved should not be underestimated ù itæs going to take a couple of
  12940. months yet.ò (This was written on 11th February.)
  12941. 6.7
  12942. Printer driver space requirement
  12943. 6.7
  12944. Acorn advises that you can reduce the amount of disc space taken up by
  12945. !Printers by removing (if you have a dot matrix printer) the following
  12946. directories from within the !Printers directory: lj, ps and PDumpers.
  12947. 6.7
  12948. Checking if a printer is online
  12949. 6.7
  12950. Acorn also warns of a problem that sometimes affects programs originally
  12951. written for the BBC micro. If these use the command ADVAL(-4) to check
  12952. if a printer is on- or off-line, this can cause the computer to crash
  12953. because the program will not be able to understand the information
  12954. returned by the command.
  12955. 6.7
  12956. Problems with VDU2 printing
  12957. 6.7
  12958. Roger Power has used a Basic program for years, which now refuses to
  12959. print, causing the computer to hang as if the printer had not been
  12960. switched on. The program just has a VDU2 command to cause the screen
  12961. output to be sent to the printer and doesnæt use any printer driver. (I
  12962. wonder if this problem might be connected to the one mentioned in the
  12963. previous paragraph?)
  12964. 6.7
  12965. He then successfully printed a listing from Basic, using <Ctrl-B>, but
  12966. when he entered the command:
  12967. 6.7
  12968. VDU2:PRINT TAB(10,5)öArchiveò :VDU3
  12969. 6.7
  12970. the word öArchiveò was printed on the next line down in the first
  12971. column. In other words, the TAB was ignored.
  12972. 6.7
  12973. He has an HP Deskjet 500C. (He normally uses a ProDriver and has no
  12974. problems with that.)
  12975. 6.7
  12976. Richard Torrens uses Calligraphæs ArcLaser so doesnæt have a RISC¡OSá3
  12977. driver installed. He also has a Basic program which uses VDU2 and worked
  12978. OK under RISC¡OSá2, but now gives an error. He says the solution is to
  12979. type
  12980. 6.7
  12981. Unset PrinterType$1
  12982. 6.7
  12983. before entering the program (which doesnæt run in the desktop) and reset
  12984. on exit from the program.
  12985. 6.7
  12986. 1st Word Plus driver for Deskjet 550C
  12987. 6.7
  12988. Barry Thompson has an answer from Acorn to the question he posed last
  12989. month: since the Acorn JP150 printer is an HP Deskjet compatible, use
  12990. the 1st Word Plus driver supplied on the JP150 support disc. This driver
  12991. also works with Laserjets. This driver supports all the printing effects
  12992. from 1st Word Plus but will not support the printing of graphics.
  12993. 6.7
  12994. Programs That Work
  12995. 6.7
  12996. The following programs have been reported as working without any
  12997. problems:
  12998. 6.7
  12999. Fun School 4 (Under 5æs) ù a new version works with RISC¡OSá3
  13000. 6.7
  13001. Manchester United Europe (Peter Youngæs son thinks the football plays
  13002. faster)
  13003. 6.7
  13004. Intersheet II
  13005. 6.7
  13006. Wordwise A Plus
  13007. 6.7
  13008. Mah Jong, The Game (the latest version ù but Peter Young found that it
  13009. needed deleting from his hard disc and reloading before it would accept
  13010. keyboard input)
  13011. 6.7
  13012. Hard Disc Companion from Risc Developments (but Peter Young has found it
  13013. to be much slower)
  13014. 6.7
  13015. Thesaurus from Risc Developments
  13016. 6.7
  13017. Chess, CrossStar and Spell from David Pilling.
  13018. 6.7
  13019. It is interesting to observe that all but two of the programs that
  13020. Frances Obee asked about (Archive 6.5 p25) have been reported as working
  13021. fine. Of the other two: some problems with Atelier were mentioned last
  13022. month but I imagine that the publishers of a leading program such as
  13023. this must be able to supply a fix if one is needed; and Prime Art hasnæt
  13024. been mentioned at all and I imagine no news is good news.
  13025. 6.7
  13026. Dave Wilcox has sent in a huge list of games that work, which serves to
  13027. illustrate two points: first, that most programs do work and second,
  13028. that lists of this kind are likely to lead to contradictions since he
  13029. reports some programs as working which have previously been reported as
  13030. giving trouble.
  13031. 6.7
  13032. Rob Brown has begun compiling a database showing which programs work
  13033. (showing version numbers) and reporting compatibility problems that he
  13034. is aware of. So far, he has only included programs that he is familiar
  13035. with, and already the list is far too long to include in the magazine so
  13036. Paul is going to include it on the monthly magazine disc. If you have
  13037. anything to add to his database, his address is öValtaneeò, Brighton
  13038. Road, Lower Kingswood, Tadworth, Surrey, KT20 6UP.
  13039. 6.7
  13040. Program Problems
  13041. 6.7
  13042. David Holden has offered a couple of tips which may help you to get
  13043. programs working, especially demos Ö which seem to be the biggest
  13044. offenders.
  13045. 6.7
  13046. Many demos speed up the system ROMs so that they can run faster. If itæs
  13047. a Basic demo, try looking for:
  13048. 6.7
  13049. SYS öUpdate_MemCò,64,64
  13050. 6.7
  13051. If you find it, either remove it or ÉREMæ it out. This call wonæt work
  13052. with RISC-OS 3 and will make the computer hang. Symptoms are a complete
  13053. lock-up Ö even the mouse pointer wonæt move.
  13054. 6.7
  13055. Another is that the old minimum abbreviation for *CHANNELVOICE was
  13056. É*CHA.æ and for *BASIC É*BA.æ. These no longer work and require more
  13057. letters to be properly identified. There is a utility on one of the
  13058. RISC-OS 3 Applications discs which is supposed to cure these problems
  13059. but his experience is that this doesnæt always work, so you might need
  13060. to actually change the program.
  13061. 6.7
  13062. David adds that RISC-OS 3 is also less tolerant of sloppy disc
  13063. identifiers, so filenames should always have a full filing system/path
  13064. name.
  13065. 6.7
  13066. He also says that many programs give problems when Acornæs !Alarm
  13067. application is running. This seems to be denied by everyone at Acorn but
  13068. it is a fact that he has verified for himself. This applies to a lot of
  13069. commercial software as well, so it isnæt just a PD problem but something
  13070. that !Alarm is doing. If you normally use !Alarm then try again without
  13071. it. If that solves the problem there are plenty of PD equivalents.
  13072. 6.7
  13073. David also points out that many PD programs appear to be written in
  13074. machine code because, when you look in the application directory, you
  13075. see the ÉApplication Codeæ icon instead of a ÉBasic Codeæ icon. However,
  13076. these programs are quite often not written in machine code or a compiled
  13077. language but have been disguised by a PD utility and are in fact Basic.
  13078. This doesnæt matter unless you want to make one of the changes described
  13079. above.
  13080. 6.7
  13081. To restore this type of code to normal Basic, first load it into Edit.
  13082. If you have RISC-OS 3 Edit, you just need to hold down SHIFT and double-
  13083. click on the program icon to do this, if not you will need to drag the
  13084. program icon to the Edit icon. Donæt do anything to the original, but
  13085. work on a backup copy in case anything goes wrong. Now look at the first
  13086. line of the program. If it is disguised Basic, you will see the words
  13087. ÉBasic -quitæ somewhere in this line. To change it back to normal Basic,
  13088. look for the first [0d] in the file Ö this will normally be at the end
  13089. of the first line. Delete everything up to but not including the [0d] so
  13090. that it becomes the first character in the file. Now re-save the file
  13091. and change its filetype to Basic (&FFB). If you now try reloading the
  13092. program into Edit (assuming you have the RISC-OS 3 version) you should
  13093. find that you have a normal Basic program to which you can make the
  13094. required changes.
  13095. 6.7
  13096. One cause of compatibility problems that I have found is that !SparkFS
  13097. is, by default, configured to use the system sprite area for workspace.
  13098. Some older programs expect to have this all to themselves. In these
  13099. cases, a simple *SNEW command can help to get the program running.
  13100. (Obviously you must first make sure that SparkFS has saved any work-in-
  13101. progress!)
  13102. 6.7
  13103. Dave Wilcox writes: öThis is probably stating the obvious but, if you
  13104. have a hard disc system and normally boot up on the hard disc, it may
  13105. help to get games working properly if you configure the machine to Drive
  13106. 0 instead of the Hard Disc and press <reset>. Also, before starting to
  13107. play a game, it is a good practice to open the drive holding the !System
  13108. directory, so that it enters the !System path into memory. Also, with
  13109. some games, it may be necessary to switch off the cache for ARM 3.ò
  13110. 6.7
  13111. Dave Wilcox also says that the following will NOT work under RISC-OS
  13112. 3.10:
  13113. 6.7
  13114. Powerband Mk2   (4th Dimension)
  13115. 6.7
  13116. Saloon Cars      (4th Dimension)
  13117. 6.7
  13118. Rotor      (Arcana)
  13119. 6.7
  13120. Fireball      (C.I.S.)
  13121. 6.7
  13122. Interdictor I (ver 1.01)   (Clares)
  13123. 6.7
  13124. Corruption      (Magic Scrolls)
  13125. 6.7
  13126. Thundermonk   (Minerva)
  13127. 6.7
  13128. Ibix the Viking   (Minerva)
  13129. 6.7
  13130. Brain Drain      (Minerva)
  13131. 6.7
  13132. Grid Lock      (Minerva)
  13133. 6.7
  13134. Freddyæs Folly   (Minerva)
  13135. 6.7
  13136. Superior Golf & Const. Set   (Superior
  13137. Software)
  13138. 6.7
  13139. Filing Systems
  13140. 6.7
  13141. No floppy or hard drive icons?
  13142. 6.7
  13143. Acorn advise: first of all, check that you have the correct number of
  13144. drives configured! Secondly, newer machines (A5000 onwards), on startup,
  13145. check to ensure that the configured drives are connected and if a drive
  13146. is not connected properly its icon may not be displayed Ö so check the
  13147. cable connections to the floppy drive.
  13148. 6.7
  13149. ICS IDE hard drive
  13150. 6.7
  13151. David Shepherdson found that, after he upgraded his A3000, his hard
  13152. drive didnæt work. Baildon Electronics, who are the service centre for
  13153. ICS, quickly fixed it. He adds, öIn fact, as I also have a Calligraph
  13154. Laser Podule fitted, this also messed up my hard disc and Baildon fixed
  13155. that as well.ò
  13156. 6.7
  13157. Watford 5╝ö interface
  13158. 6.7
  13159. Gordon Lindsay-Jones wrote to Watford (as Paul Beverley suggested) about
  13160. his problems with their buffer and has had no reply. He has come to the
  13161. conclusion that it does not work with RISC¡OSá3.10! Can any readers help
  13162. by telling him which buffer(s) do work, please?
  13163. 6.7
  13164. SCSI filer
  13165. 6.7
  13166. Seßn Kelly has discovered that his tip (Archive 6.5 p27) does not always
  13167. work. He writes: öPlease allow me to apologise and to explain a proper
  13168. way to make the free space window work with SCSIFS.
  13169. 6.7
  13170. öOriginally, I advised adding a command to load the new SCSIFiler module
  13171. to the desktop boot file. This did work, but only Ö I have since
  13172. discovered Ö because my desktop boot file was also creating a RAMFS
  13173. disc. This forced the initialisation of the replacement module.ò He
  13174. suggests that the answer is to split the boot process into two stages so
  13175. that the SCSI filer is initialised before the desktop is entered. (Tim
  13176. Nicholson confirms this.)
  13177. 6.7
  13178. To do this first, rename the existing !Boot file as Deskboot, say, and
  13179. create an application directory called !Boot in the root directory and
  13180. move the Deskboot file into it. Then create an obey file called !Run
  13181. inside !Boot containing the following commands:
  13182. 6.7
  13183. RMLoad SCSI::4.$.!System.
  13184. 6.7
  13185. Modules.SCSIFiler
  13186. 6.7
  13187. Desktop -file <obey$Dir>. Deskboot
  13188. 6.7
  13189. (replacing 4 by the appropriate disc name).
  13190. 6.7
  13191. If you want to smarten up the appearance of the !Boot application, you
  13192. can copy the sprites file_fea and small_fea from Resources:$.Wimp.
  13193. Sprites into a !Sprites file inside !Boot and rename the sprites !boot
  13194. and sm!boot.
  13195. 6.7
  13196. The above is the approach which is also recommended on page 16 of the
  13197. RISC¡OSá3.10 Release Note. An alternative way of achieving the same end
  13198. is (1) to rename the existing !Boot file (the one that contains all the
  13199. Filer_Boot and Filer_Run commands, etc) DeskBoot, say, (2) to copy it to
  13200. a safe place like the !System directory, (3) to create a new !Boot file
  13201. in the root directory, (4) to move into this new file the command to
  13202. RMLoad the SCSIFiler module and to add the command:
  13203. 6.7
  13204. *Desktop -file SCSI::4.$.!System.DeskBoot
  13205. 6.7
  13206. (replacing 4 by the appropriate disc name). To my mind, this way is
  13207. simpler because it avoids the necessity for creating sprite files,
  13208. renaming sprites, etc.
  13209. 6.7
  13210. The $.!Boot.!Run file (under the Kelly/Acorn approach) or the !Boot file
  13211. (under mine) can now also be used to load or initialise all sorts of
  13212. things before the desktop is started Ö e.g. extra mode modules, virus
  13213. protection, ROM speed up programs, etc.
  13214. 6.7
  13215. Miscellaneous Hints & Tips
  13216. 6.7
  13217. Newlines in !Run files
  13218. 6.7
  13219. P N Cousins says that if there is more than one linefeed at the end of
  13220. the !Run file of an application, if he tries öto use the menu button on
  13221. the iconò the machine locks up. I presume that he means that, if you
  13222. choose the Quit option on the iconbar menu, the application wonæt quit.
  13223. This is something that I have noticed from time to time. (Invariably,
  13224. when it has happened to me, simply pressing <escape> has put things to
  13225. rights.) However, I have tried adding newlines galore to the ends of
  13226. !Run files without being able to repeat the phenomenon. Can anyone tell
  13227. us what is happening?
  13228. 6.7
  13229. On page 16 of the RISC¡OSá3.10 Release Note there is a cryptic
  13230. instruction that you should not enter any newlines after the second line
  13231. in a particular two-line !Run file. I wonder if this is connected.
  13232. 6.7
  13233. Ian Hamilton says that, according to Acorn, Obey files with blank lines
  13234. aggravate what he calls a bug which can cause applications not to return
  13235. from their Obey files. He suspects that this may be the cause of the
  13236. problem that was blamed on Compression in Archive 6.5 p28.
  13237. 6.7
  13238. Newlines at the end of !Boot files
  13239. 6.7
  13240. P N Cousins also says that you must have a newline at the end of a !Boot
  13241. file or else the last line will be ignored. So, if you find that an
  13242. application which ought to be run by your !Boot file but isnæt, this
  13243. might be the answer.
  13244. 6.7
  13245. Hiding the Apps in Resources
  13246. 6.7
  13247. We have mentioned in a previous month that you can hide !Configure and
  13248. other ROM-based applications from prying eyes by typing *Unplug
  13249. !Configure (or whatever). Acorn advise that, if you do not want users to
  13250. see the Resources filing system, you can remove it from the iconbar by:
  13251. 6.7
  13252. *Unplug ResourceFiler
  13253. 6.7
  13254. Setting up an application
  13255. 6.7
  13256. Tim Powys-Lybbe offers the following hints based on how he sets up
  13257. applications (using Impression as an example).
  13258. 6.7
  13259. The technique I use is to construct an outer directory to hold (a) the
  13260. filer of work for the application and into which outer directory I also
  13261. place (b) the application as delivered from the supplier. I copy (c) the
  13262. !Sprite file from the application, give the outer directory the same
  13263. name as the application and make the !Run file do various things
  13264. including opening up the directory of working documents, the application
  13265. itself and then back up the working documents on exiting the
  13266. application. The !Boot file is more or less copied from the application
  13267. though you do need to choose a different system variable name for this
  13268. outer directory. (I just add Top to the applicationæs system variable
  13269. name for its directory.)
  13270. 6.7
  13271. I have had several problems getting this working on RISC-OS 3, though
  13272. the end result is far better as I now have control over where the
  13273. directories open on the desktop and I get a nice clean view of the
  13274. Impression start-up picture.
  13275. 6.7
  13276. 1. Extension of Filer_OpenDir command
  13277. 6.7
  13278. This command, which opens up a directory on the desktop, otherwise known
  13279. to Acorn as a filer, has been extended in RISC-OS 3 to allow you to
  13280. decide both where you want to place the filer on the desktop and how
  13281. large it is to be (the user guide gives details). For example, in the
  13282. !Run file, to open up Impression:
  13283. 6.7
  13284. Filer_OpenDir <ImpressTop$Dir>. Templates 1000 700
  13285. 6.7
  13286. This places the Templates filer with its top left at 1000 OS units
  13287. across the desktop from the left and 700 OS units up from the base line.
  13288. Acorn define 180 OS units as 1 inch on the screen though this must
  13289. presumably depend on the size of the monitor. You will have to
  13290. experiment with values for the directory position to get it where you
  13291. want on your desktop.
  13292. 6.7
  13293. You can add information about the width and height of the directory by
  13294. adding two more numbers:
  13295. 6.7
  13296. Filer_OpenDir <ImpressTop$Dir>. Templates 1000 700 1200 130
  13297. 6.7
  13298. The third number is the width of the directory and the fourth number is
  13299. its height. In mode 39, 130 OS units high just accommodates a single row
  13300. of the large icon size. (Isnæt the height of an icon, in screen units,
  13301. mode-independent?)
  13302. 6.7
  13303. 2. Opening an ArcFS directory
  13304. 6.7
  13305. I have had some correspondence with Mark Smith, the ever-helpful author
  13306. of this excellent package, and have at last found how to make ArcFS
  13307. directories open up from within the !Run file. It is done in two stages,
  13308. first:
  13309. 6.7
  13310. OpenArchive <ImpressTop$Dir>. Documents
  13311. 6.7
  13312. Documents is the name of an ArcFS archive that is stored within the
  13313. Impression outer directory. Note that ArcFS should already be on the
  13314. iconbar for this Open_Archive command to work as it is an ArcFS module
  13315. command; you can of course start up ArcFS from within this same !Run
  13316. file.
  13317. 6.7
  13318. The second command is:
  13319. 6.7
  13320. Filer_OpenDir ArcFS#Documents:$ 600 1400 1800 260
  13321. 6.7
  13322. The syntax is fairly obvious if you look at the top of the directory for
  13323. your archive once it is open!
  13324. 6.7
  13325. 3. Backing up to a floppy
  13326. 6.7
  13327. I have a little application tagged on to the end of the Impression !Run
  13328. file to cause a back up of the Documents archive after exiting
  13329. Impression (or any other application I hasten to add). With RISC-OS 2 it
  13330. would work with:
  13331. 6.7
  13332. *COPY <ImpressTop$Dir>.Docu-
  13333. 6.7
  13334. ments :0.Documents
  13335. 6.7
  13336. In RISC-OS 3 this produces an error and one must use instead:
  13337. 6.7
  13338. *COPY <ImpressTop$Dir>.Docu-
  13339. 6.7
  13340. ments ADFS::0.Documents
  13341. 6.7
  13342. Setting up Pinboard without a hard disc
  13343. 6.7
  13344. Brian Fielding has developed an interesting use of the Pinboard, which
  13345. he says is especially useful for those without a hard disc:
  13346. 6.7
  13347. After Éplayingæ with RISC-OS 3 for a few days and realising some of the
  13348. benefits of the PinBoard, which are obviously more beneficial if you
  13349. have a Hard Disc, I worked out a mechanism to fully utilise the PinBoard
  13350. so that, when the system was first booted, it would contain all the
  13351. applications I would want to access.
  13352. 6.7
  13353. The mechanism described below will display the Applications and when an
  13354. icon is double-clicked the appropriate disc will be requested and the
  13355. application will be loaded.
  13356. 6.7
  13357. This should be read in conjunction with Chapter 7 of the RISC-OS 3 User
  13358. Guide, öDesktop Boot Filesò.
  13359. 6.7
  13360. Setting up pseudo-applications
  13361. 6.7
  13362. For each application you wish pinned to or loaded onto your pinboard,
  13363. set up a pseudo-application as follows:
  13364. 6.7
  13365. Copy the application, say !AppName, to an empty disc and, using <shift>
  13366. and double-click <select>, display the contents of the application.
  13367. 6.7
  13368. Delete all files and directories except !Boot, !Run and !Sprites.
  13369. 6.7
  13370. Edit !Boot to contain the four lines, in the order given:
  13371. 6.7
  13372. IconSprites <Obey$Dir>.!Sprites
  13373. 6.7
  13374. Set AppName$Dir ADFS::DiscName. $.!AppName
  13375. 6.7
  13376. Set Alias$@RunType_fff Run <AppName$Dir>.!Run %%*0
  13377. 6.7
  13378. Set File$Type_fff FileName
  13379. 6.7
  13380. AppName is the name of your application e.g. PipeDream
  13381. 6.7
  13382. DiscName is the name of the disc containing the original application.
  13383. 6.7
  13384. fff is the applicationæs FileType. (This line should be present in the
  13385. original !boot file. There may be other Alias$@RunType_fff lines and
  13386. these should also be left.)
  13387. 6.7
  13388. FileName is the Filetype name, e.g. PDream. (This is not essential.
  13389. Again there may be others and should be left if desired.)
  13390. 6.7
  13391. Note: <Obey$Dir> must only be used as a pathname to !Sprites. The full
  13392. pathname to the original Application must be established, including the
  13393. disc name.
  13394. 6.7
  13395. Edit !Run to contain (or create an Obey file):
  13396. 6.7
  13397. Run <AppName$Dir>.!Run
  13398. 6.7
  13399. Do not alter !Sprites. Copy !AppName to your Desktop Boot Disc. Add the
  13400. following lines to the !Boot file on your Desktop Boot Disc
  13401. ÉDskTopBootæ. (See note below if using a RAM disc.):
  13402. 6.7
  13403. Filer_Boot ADFS::DskTopBoot.$. !AppName
  13404. 6.7
  13405. Pin ADFS::DskTopBoot.$.!AppName 100 300
  13406. 6.7
  13407. 100 300 represents the position on the PinBoard. With the origin at the
  13408. bottom left of your screen, this represents 100 units to the right and
  13409. 300 units up. Your next application should be placed at 300 300. You
  13410. can, of course, pin your applications anywhere on the board.
  13411. 6.7
  13412. If you wish your application to be ready for use, use ÉRun ...æ instead
  13413. of ÉPin ...æ.
  13414. 6.7
  13415. RAM disc available
  13416. 6.7
  13417. Unfortunately, the above will require you to load the Boot disc each
  13418. time you load any application.
  13419. 6.7
  13420. If you have sufficient space available in memory, create a RAM disc of
  13421. at least 64Kb. You need, on average, 7 Kb per application.
  13422. 6.7
  13423. Prepare as above but copy your pseudo-applications to a directory, say,
  13424. PseudoApps, on your Boot Disc.
  13425. 6.7
  13426. You will then need to modify your !Boot file as follows:
  13427. 6.7
  13428. Ensure you have a large enough RAM disc.
  13429. 6.7
  13430. Change DynamicArea -RamFsSize 64K.
  13431. 6.7
  13432. Add the line
  13433. 6.7
  13434. COPY ADFS::DskTopBoot.$. PseudoApps.* RAM::RamDisc0. $.* ~CQR~V
  13435. 6.7
  13436. Modify both the Filer_Boot and the Pin (or Run) lines from
  13437. ÉADFS::DskTopBootæ to read ÉRAM::RamDisc0æ.
  13438. 6.7
  13439. Notes
  13440. 6.7
  13441. Ensure that you have configured the system to boot from Disc by loading
  13442. your Boot disc and executing *Opt4,2 in command line mode.
  13443. 6.7
  13444. Some applications, e.g. Lemmings, are set up to delete RAM disc on
  13445. startup and tidy up when QUITed, e.g. UnSet Directories. These should be
  13446. altered:
  13447. 6.7
  13448. For Lemmings, the file !Lemmings.!Run should add | at the start of the
  13449. line TequeMen and Unset Lem$Dir.
  13450. 6.7
  13451. If memory is a problem, the amount of RAM space can be reduced by adding
  13452. a line Delete RAM::RamDisc0.!AppName.!Sprites after the corresponding
  13453. Filer_Boot line. This will approximately halve the required space.
  13454. 6.7
  13455. If you have sufficient RAM disc space, it would be helpful to place
  13456. !Scrap in it.
  13457. 6.7
  13458. ROM/RAM podule available
  13459. 6.7
  13460. If you have a ROM/RAM podule, with battery backup, then setting up the
  13461. pseudo-applications onto the RAM will make application selection much
  13462. more user-friendly.
  13463. 6.7
  13464. If you have a ROM/RAM podule, make this your Boot system. Simply follow
  13465. the above but change ÉADFS::DskTopBoot.æ to ÉRFS:æ and remember, in
  13466. Command Line mode, to:
  13467. 6.7
  13468. *Configure FileSystem RFS
  13469. 6.7
  13470. *RFS
  13471. 6.7
  13472. *OPT4,2
  13473. 6.7
  13474. *ADFS
  13475. 6.7
  13476. Examples
  13477. 6.7
  13478. The monthly program disc has examples for disc, RAMDisc and for the ROM/
  13479. RAM podule.
  13480. 6.7
  13481. Matters Arising
  13482. 6.7
  13483. Backing up in one pass (Archive 6.5 p36)
  13484. 6.7
  13485. Put the following command in your !Boot file:
  13486. 6.7
  13487. Wimpslot -next 800K
  13488. 6.7
  13489. Solid sprite dragging (Archive 6.6 p61)
  13490. 6.7
  13491. (This gets even more bizarre!) Would you believe that, to turn sprite
  13492. dragging off, your new friendly operating system requires you to issue
  13493. the following commands?
  13494. 6.7
  13495. SYS öOS_Byteò,161,28 TO ,,R2
  13496. 6.7
  13497. R2=R2 AND 253
  13498. 6.7
  13499. SYS öOS_Byteò,162,28,R2
  13500. 6.7
  13501. (Thanks to David Shepherdson for that!)
  13502. 6.7
  13503. !CMOS_Edit: WARNING!
  13504. 6.7
  13505. Bruce Brown warns that, although !CMOS_Edit can be used as I mentioned
  13506. last month (Archive 6.6 p60) to save, load and view the CMOS RAM
  13507. effectively, if you use the Edit and Update feature, you will be in
  13508. trouble. This is because Acorn have now implemented the (previously
  13509. reserved) checksum byte at the end of the CMOS RAM. When you öUpdateò,
  13510. !CMOS_Edit will overwrite the correct value with the old incorrect
  13511. value. Since the checksum routine is relative, it will then always be
  13512. wrong until the power on/delete routine is performed. Until then,
  13513. whenever you startup, the operating system will find that the checksum
  13514. is wrong and will use default settings rather than those stored in the
  13515. CMOS.
  13516. 6.7
  13517. !CMOS_Edit is easily fixed to overcome this: look in the !RunImage
  13518. (Basic) file for the loop which writes the values to CMOS RAM and change
  13519. the loop counter from 0áTOá239 to 0áTOá238. Leave the loops for saving
  13520. and loading alone Ö they obviously must load and save everything as
  13521. previously.ááA
  13522. 6.7
  13523. Hints and Tips
  13524. 6.7
  13525. Å   Configuring the main Edit window Ö The RISC-OSá3 version of Edit makes
  13526. no provision for preferences concerning the size and the place on the
  13527. screen of a newly opened Edit window.
  13528. 6.7
  13529. However, this can easily be rectified. If you run Edit from your hard
  13530. disc, the Templates file can be edited according to taste. The nice
  13531. thing is that, even from the hard disc, Edit still occupies the same RAM
  13532. space (64 Kb on a 4 Mb machine).
  13533. 6.7
  13534. Here is what you do: drag the Edit application from the Apps directory
  13535. to your hard disc, click <menu> on the Apps icon, then <select> to open
  13536. the root directory, open the Resources directory and copy the three
  13537. files inside the Edit subdirectory into your new Edit application. (For
  13538. Acorn newcomers, you open an application directory by double clicking
  13539. while holding down <shift>.)
  13540. 6.7
  13541. Then drag the Templates file on to the iconbar icon of FormEd (an
  13542. application available from N.C.S. on Sharewareá20) and drag the Text
  13543. window (the one which is filled with a web of diagonal lines) into the
  13544. desired position. Save the edited Template file.
  13545. 6.7
  13546. If you always use Edit, donæt forget to change your configuration so
  13547. that, after power-on, the correct version of Edit is loaded.
  13548. 6.7
  13549. Jochen Konietzko, K÷ln, Germany
  13550. 6.7
  13551. Å   Faxpack Ö Did you know that if you manually dial 0336Ö400Ö445 and
  13552. then, at the prompt, select ÉReceive Faxæ, you will receive a 24 Hour
  13553. Surface Forecast Chart from The Met. Office. It is very useful if you
  13554. want to know what the weather is going to do. Dial 0336Ö400Ö401 for the
  13555. Marine Index Page of all the forecasts and charts that are available.
  13556. Although it is a bit expensive (calls are charged at 36p per minute
  13557. cheap rate and 48p per minute at all others times) I find them
  13558. invaluable. This only works with FaxPack v2.00 Ö with earlier versions,
  13559. it causes öA Line Error occurredò fault. Steve Monks, Tobermory.ááA
  13560. 6.7
  13561.  
  13562. Hints and Tips
  13563. 6.6
  13564. Å   Applications launcher Ö When working on various tasks on my
  13565. Archimedes, I often find that I need to launch more than one
  13566. application. For example, I have a wide selection of regularly used
  13567. clipart stored in Library format within Draw Plus. These clipart items
  13568. form regular input while using Ovation or Impressions. Therefore, when
  13569. working on DTP materials I will, on most occasions, be running Draw Plus
  13570. as well. The following ÉPseudo Applicationæ was therefore devised to
  13571. automate the launch of the required cluster of applications (in this
  13572. case Ovation & Draw Plus).
  13573. 6.6
  13574. Begin by creating an application directory (i.e. one where the name
  13575. begins with a !) with a name to suite the task cluster (e.g. !DTP).
  13576. Within this you need to create a !Boot and a !Run file, both Obey files,
  13577. using !Edit. The !Boot file only needs to contain the single line ....
  13578. 6.6
  13579. IconSprites <Obey$Dir>.!Sprites
  13580. 6.6
  13581. while the !Run file should contain the following...
  13582. 6.6
  13583. IconSprites <Obey$Dir>.!Sprites
  13584. 6.6
  13585. Desktop -FILE <Obey$Dir>.
  13586. 6.6
  13587. FileLaunch
  13588. 6.6
  13589. In each case, the IconSprites command directs the system to the !Sprites
  13590. file for the pseudo-application while the Desktop command in the !Run
  13591. file instructs the system to execute a series of commands held within
  13592. the file called ÉFileLaunchæ.
  13593. 6.6
  13594. Again within !Edit, create a new textfile, to be called ÉFileLaunchæ. It
  13595. is the contents of this file that will determine which applications are
  13596. to be launched by your pseudo-application. For example, the following
  13597. will launch both Ovation and Draw Plus as well as opening the directory
  13598. viewer to my ÉFilesæ folder and my Draw Plus Library folder. The exact
  13599. contents being dependent on the organisation of your own system.
  13600. 6.6
  13601. Filer_CloseDir ADFS::4
  13602. 6.6
  13603. ADFS::4.$.MoreApps.!Ovation
  13604. 6.6
  13605. ADFS::4.$.!DrawPlus
  13606. 6.6
  13607. Filer_OpenDir ADFS::4.$.Files
  13608. 6.6
  13609. Filer_OpenDir ADFS::4.$.Files. DrawLibs
  13610. 6.6
  13611. Save this as ÉFileLaunchæ within the pseudo-application.
  13612. 6.6
  13613. The final job is to create an appropriate sprite to represent your new
  13614. pseudo-application. This should be 34 ╫ 17 units in size. For mine, I
  13615. have merged the small display icons from Ovation and Draw Plus. Once all
  13616. is completed, double clicking on the application will, as if it were a
  13617. normal application, launch the specified applications and open the
  13618. required directory viewers.
  13619. 6.6
  13620. Although this was initially developed on a hard disc based system, it
  13621. can be just as useful to floppy based systems. For example, it can be
  13622. set up to launch an application along with an appropriate printer driver
  13623. or launch a collection of floppy disc based utilities. For users still
  13624. working with Risc-OS 2, if the application is given the name !Boot and
  13625. placed on the root directory, with the drive set to *OPT 4 2, it gives
  13626. many of the same basic facilities as the new Desktop Boot of RISC-OS
  13627. 3.10.
  13628. 6.6
  13629. NOTE: This system does not effect the normal action when you double
  13630. click on an applications file. This will, as always, launch its own
  13631. application and load in the file clicked on.á Mike McNamara, Dunstable.
  13632. 6.6
  13633. Å   ArcLaser 1.68 and PipeDream Ö With ArcLaser installed, PipeDream
  13634. (3.14) wonæt print using its own driver. It is necessary not only to
  13635. quit ArcLaser but to RMkill the LQEmulator module.á Richard Torrens,
  13636. Cambridgeshire.
  13637. 6.6
  13638. Å   BJ10e/ex with CC Turbo Driver Ö Under Risc-OS 3/3.10 there is a
  13639. conflict between the Turbo Driver and the new !Printers system. If you
  13640. contact CC, they will tell you to issue the following from the * prompt
  13641. ....
  13642. 6.6
  13643. RMKill PDriver
  13644. 6.6
  13645. RMREInit PDriver
  13646. 6.6
  13647. A far more elegant way is to place these two commands within the !Run
  13648. file of the !Printers application. They should be added immediately
  13649. before the line which reads ....
  13650. 6.6
  13651. RMEnsure PDriver 3.16 Error etc
  13652. 6.6
  13653. You will now be able to switch between the two systems without further
  13654. problems!
  13655. 6.6
  13656. Mike McNamara, Dunstable.
  13657. 6.6
  13658. Å   Dongle problems Ö Various people have found that, on occasion, they
  13659. cannot print from other applications when using an Impression or
  13660. Artworks dongle. The situation seems to be worse under RISC-OS 3. The
  13661. (temporary) solution is to run Impression or Artworks and quit it. All
  13662. should then work OK. (Hint offered by various readers.) (For more
  13663. discussion, see the Comment Column on page 18.)
  13664. 6.6
  13665. Å   FoxPro version2 Ö Anyone who has tried to run FoxPro version2 under
  13666. version 1.8 of the PC Emulator will have found that it does not work. If
  13667. you still have an earlier version of the Emulator, try using that
  13668. because it is said to run under some of the earlier versions.á David
  13669. Wild, Hemel Hempstead.
  13670. 6.6
  13671. Å   Pocket Book power supply Ö Maplin sell a 300mA regulated transformer
  13672. for ú8.95 (+ú1.20 p&p) which will do the same job as the Pocket Book
  13673. mains adaptor and more besides. Maplinæs code is YB23A and the
  13674. polarisation should be negative at the tip at 9V.
  13675. 6.6
  13676. You cannot format Flash SSDs above 256Kb unless the Pocket Book is
  13677. connected to an adaptor.  Apparently, the Flash SSDs require 12-15V when
  13678. formatting.á Mark Goodwin, Worcester.
  13679. 6.6
  13680. (N.B. You canæt just use any old transformer for the PocketBook and we
  13681. canæt, of course, be held responsible for any damage which occurs if a
  13682. particular power supply does not work. We still cannot get the Acorn
  13683. Pocket Book mains adaptors but are buying some Psion ones which we will
  13684. be able to sell at the same price Ö ú15 inclusive. Ed)
  13685. 6.6
  13686. Å Printers, margins, etc Ö I disagree with the statement in Archive 6.5
  13687. p37 that the X Y origin is not stored. There seems to be a fundamental
  13688. lack of understanding in this area. If you want a full explanation, I
  13689. will do one but, in brief, the offsets should be set using the technique
  13690. described in the readme file in the Printers directory using the TopLeft
  13691. printer file. Paper margins should then be set to be at least as big as
  13692. the X Y values, then when the printer tries to print, it says to itself,
  13693. öleft margin 20mm (say) so I have to move the printer head 20mm before I
  13694. start printing. Ah, but wait a minute, the print head is already Xmm
  13695. from the edge, so I only need to move another (20 Ö X)mm before I start
  13696. printing.ò
  13697. 6.6
  13698. The same is true for Y. None of the default definitions I have looked at
  13699. are anywhere near right which doesnæt help. BJ330 printers auto sense
  13700. the left hand edge of the paper so goodness knows what happens then! á
  13701. Tim Nicholson, Cranleigh.
  13702. 6.6
  13703. Å   Scrap file Ö Floppy disc users may be pleased to know that the
  13704. Wimp$Scrap file, used for in-memory transfer, does not have to be on a
  13705. physical medium. I have included the line:
  13706. 6.6
  13707. Set Wimp$Scrap RAM::RamDisc0.$ .ScrapFile
  13708. 6.6
  13709. in my !System.!Boot file. I have configured the machine to automatically
  13710. create a RAM disc on switching on and have since avoided much disc
  13711. swapping. The !Scrap folder can be avoided, though the Printers (RISC-OS
  13712. 3) application needs to see it. It can be placed inside the Printers
  13713. directory, and the line:
  13714. 6.6
  13715. Obey <Obey$Dir>.!Scrap.!Boot
  13716. 6.6
  13717. included near the beginning of the !Printers.!Run file.á Robert Fuller,
  13718. Basingstoke.
  13719. 6.6
  13720. Å   !Squash Ö This program is a side product of the new printer drivers Ö
  13721. the printer definition files are held in squash format. If you change
  13722. the filetype of a printer definition file to Squash (filetype_FCA) and
  13723. drag it into Squash, it will be unsquashed. Loading into Edit will
  13724. reveal a file not unlike the old OS2 PrDataSrc files, although the
  13725. graphics data is held differently. RISC-OS 3 requires the definition
  13726. files in the unsquashed format. PrintEdit will happily edit files in
  13727. either format but always produce Squashed output.
  13728. 6.6
  13729. Å   Squirrel and Compression Ö If, like me, you routinely run your
  13730. Squirrel tables from a Compression window, you may eventually get an
  13731. error message, öBad File Formatò. If you then open the tableæs
  13732. directory, you will find that some of the files inside show the white
  13733. File_xxx icon.
  13734. 6.6
  13735. Setting the filetype to Squirrelæs DB7 format, will still result in an
  13736. error message.
  13737. 6.6
  13738. Here is what Digital Services told me: There is Ö they think Ö a bug in
  13739. Compression, which causes this effect very intermittently. The thing to
  13740. do then is to set the filetype to CFSlzw and then uncompress those
  13741. files.á Jochen Konietzko, K÷ln.
  13742. 6.6
  13743. Å   Symbolic links Ö If you want to have a program in more than one
  13744. folder, it is easy enough to store the program once and then create a
  13745. link to this program in other folders. In RISC OS 3.1: load !Edit and
  13746. create a new Obey file. Shift-drag the program into this window. Save
  13747. the Obey file where you want to have the link. Then a double click on
  13748. the link-Obey file executes the original program. This works with any
  13749. filetype Ö not just applications.á Thomas Goseberg, Germany.ááA
  13750.  
  13751. 6.6
  13752. Using RISC¡OSá3.1
  13753. 6.6
  13754. Hugh Eagle
  13755. 6.6
  13756. öDonæt blame it all on RISC-OS 3!ò Archive staff have, on a number of
  13757. occasions recently, given this advice to Archimedes users. öBut it has
  13758. only happened since I changed to RISC-OS 3...ò Yes, but that doesnæt
  13759. mean itæs the fault of RISC-OS 3. Often itæs a hardware fault that was
  13760. set off by fiddling with the p.c.b. of an old computer Ö or, as in some
  13761. of the cases in Hughæs column this month, it is caused by a change in
  13762. configuration that occurred when you did a <delete-powerup> (or because
  13763. you didnæt do one!). The final reason is that you havenæt read the
  13764. manual Ö if I had a pound for every time I have had to give advice that
  13765. was basically, öRead the manualò... Ed.
  13766. 6.6
  13767. Once again Iæve been nearly overwhelmed by the flood of correspondence.
  13768. However, do keep the letters coming, please; Iæll try to use them all in
  13769. due course, I promise! My address remains: 48áSmithbarn, Horsham,
  13770. Sussex, RH13á6DX.
  13771. 6.6
  13772. Paul says, öTry to be briefò, so Iæll get started.
  13773. 6.6
  13774. Programmersæ Reference Manual
  13775. 6.6
  13776. I was told at the BETT show in January that the new PRM will be ready in
  13777. öthe second quarterò of 1993.
  13778. 6.6
  13779. Programs and hardware that work
  13780. 6.6
  13781. Some additions to the lists of previous months:
  13782. 6.6
  13783. Ö Chocks Away
  13784. 6.6
  13785. Ö Conqueror
  13786. 6.6
  13787. Ö DrawBender
  13788. 6.6
  13789. Ö öMost 4Mation softwareò
  13790. 6.6
  13791. ÖáTaskAnsi (from David Pilling) (However, Tord Eriksson adds that you
  13792. may want to upgrade it anyway to take advantage of enhancements.)
  13793. 6.6
  13794. ÖáScanlight Junior 256 (it öseems to thriveò)
  13795. 6.6
  13796. Ö Pendown and Pendown+
  13797. 6.6
  13798. Ö PC emulator (öthe oldestò version)
  13799. 6.6
  13800. ÖáPineapple Digitiser (another confirmation that it works, contrary to
  13801. the report in Archive 6.3 p15)
  13802. 6.6
  13803. ÖáXOB Remote Logon (Correction!) Ray Wright has found that the problem
  13804. he reported last month (Archive 6.5 p29) was in fact a fault in his BBC
  13805. Micro, and that Remote Logon works fine. Apologies to XOB.
  13806. 6.6
  13807. ÖáAcorn DTP (Needs to be patched using the Patch from the Support disc.)
  13808. 6.6
  13809. Problem programs
  13810. 6.6
  13811. ShowPage Ö Tord Eriksson says this öworks fine so long as there is no
  13812. on-screen text! Not much use for ShowPage therefore, you might say, but
  13813. some stunning graphics are possible as shown by the examples supplied
  13814. with the program.ò
  13815. 6.6
  13816. Atelier Ö Andrew Campbell has found that Atelier causes his A5000 to
  13817. hang whether he uses RISC¡OSá3.0 or RISC¡OSá3.10. (The sequencer loads
  13818. but not the main program. He has tried old modules to no effect.)
  13819. However, Atelier does still run on his A3000 after the upgrade to
  13820. RISC¡OSá3.10.
  13821. 6.6
  13822. The following have been reported as not working:
  13823. 6.6
  13824. Fun School 4 (Under 5æs)
  13825. 6.6
  13826. Satfoot (a satellite tracker from AMSAT-UK)
  13827. 6.6
  13828. Copy Opts (öa handy little utilityò) Ö Tord Eriksson has problems using
  13829. his version of ArcFS and the Pinboard: if he glues an arcæd directory to
  13830. the Pinboard then tries to open it, the computer freezes! (Perhaps this
  13831. is a problem that has been solved in a more recent version of ArcFS.)
  13832. 6.6
  13833. Tord has also found that Ballarena works perfectly but messes up all the
  13834. configuration settings (so see the section below called öSaving the
  13835. configurationò before you run it!)
  13836. 6.6
  13837. Tord says that he made Powerband work by öediting out lines 430 and
  13838. following setting up the voices, and a line further on checking the
  13839. voices.ò
  13840. 6.6
  13841. Some games, like 4th Dimensionæs Saloon Cars, crash with a
  13842. öWindowManager:Sprites24ò error. What is a öSprites24ò anyway?
  13843. 6.6
  13844. !Psion
  13845. 6.6
  13846. Chris Dawson says that the Psion to Archimedes data transfer program by
  13847. Mark Taylor (v 1.65) no longer works with his Psion II. He has tried
  13848. everything he can think of, even three different re-wiring
  13849. configurations that he has seen. Can anyone help?
  13850. 6.6
  13851. Interrupt (Archive Shareware disc no. 6)
  13852. 6.6
  13853. M. P. Sawle has, up to now, made good use of the Interrupt module, with
  13854. the commands *RMLoad Intmodule and *Interrupt 0 in a loading file to
  13855. enable subsequent access to the command line with <ctrl-@> from within
  13856. both Basic programs and the original version of First Word Plus.
  13857. 6.6
  13858. Having installed RISC¡OSá3.10 he finds that:
  13859. 6.6
  13860. Å   within Basic programs: <ctrl-@> still works, but <Esc> has the same
  13861. effect and this takes priority over the normal programmed effect of the
  13862. Escape key at the time.
  13863. 6.6
  13864. Å   within First Word Plus: <ctrl-@> works but he cannot return to 1wp
  13865. properly (sometimes the current document is lost), also two presses of
  13866. <Esc> take him to the command line but the document is always totally
  13867. lost.
  13868. 6.6
  13869. Å   Lemmings wonæt run unless he RMKills the Interrupt module first.
  13870. 6.6
  13871. Can anyone help?
  13872. 6.6
  13873. Investigator II works on the older machines, but not on the A3010/A3020/
  13874. A4000/A5000 (presumably because the hardware is different).
  13875. 6.6
  13876. LaserDirect and ROM fonts
  13877. 6.6
  13878. The reason why LaserDirect (and presumably the Turbo Drivers) have
  13879. problems with the Corpus and Homerton Oblique fonts in ROM is that the
  13880. Outlines files for these fonts do not contain full descriptions of the
  13881. letters but simply contain cross-references to the related upright
  13882. fonts. (Because these two fonts are simply slanted versions of the
  13883. upright fonts, not proper öitalicò fonts, all the new font manager needs
  13884. to know is where to find the outlines of the upright fonts and what
  13885. angle to slant them at.)
  13886. 6.6
  13887. So far as I can tell, it is not necessary to disable the ROM fonts (with
  13888. a FontRemove command in the !Boot and/or !Run files of !Fonts) and
  13889. include full descriptions of Corpus, Homerton and Trinity on disc (they
  13890. would need about 250Kb); I have found that Impression and LaserDirect
  13891. manage perfectly well if I just include the following sub-directories in
  13892. my !Fonts directory on disc:
  13893. 6.6
  13894. Corpus.Bold.Oblique
  13895. 6.6
  13896. Corpus.Medium.Oblique
  13897. 6.6
  13898. Homerton.Bold.Oblique
  13899. 6.6
  13900. Homerton.Medium.Oblique
  13901. 6.6
  13902. (the files add up to 108924 bytes).
  13903. 6.6
  13904. Turning anti-aliasing off
  13905. 6.6
  13906. Tord Eriksson finds that a, Σ and σ are rather difficult to distinguish
  13907. with anti-aliasing on, so he turns it off by setting FontMax1 to
  13908. FontMax5 all to 0, except FontMax 3, which determines the maximum size
  13909. of font that is cached and which he sets to 200.
  13910. 6.6
  13911. Replacing the system font
  13912. 6.6
  13913. R. W. Darlingtonæs prayer in Archive 6.4 p11 has been answered! Rob
  13914. Davison has sent in an application (included on this monthæs program
  13915. disc) called !DeskFonts, which will allow you to replace the system font
  13916. on the desktop with an outline font of your choice.
  13917. 6.6
  13918. Electronic Font Foundry RISC¡OSá3 fonts
  13919. 6.6
  13920. Colin Singleton thinks that last monthæs comment may have been a bit
  13921. unfair to EFF in referring to their new fonts as ömore expensiveò. He
  13922. suspects that the old fonts have been reduced in price and the new ones
  13923. introduced at the previous price of the old.
  13924. 6.6
  13925. What is ökerning dataò?
  13926. 6.6
  13927. Colin Singleton says that he had read about this several times before he
  13928. found out what it meant. Kerning is the process of adjusting the space
  13929. between letters so that they look more natural. A common example is the
  13930. word AWAY. When printed like that, the letters appear too widely spread,
  13931. but with kerning the word can be made to look like AWAY. (I have
  13932. exaggerated the kerning to make it more obvious.) This can be done
  13933. manually in applications like Impression.
  13934. 6.6
  13935. The RISC¡OSá3 font manager provides the facility for automatic
  13936. adjustment of the spacing between any pair of letters, but in order for
  13937. this to work firstly the font has to contain a ökerning tableò
  13938. indicating the preferred spacing for each possible pair of letters and
  13939. secondly the application has to be aware of this facility and to make
  13940. the appropriate calls to the font manager. (Archive 5.11 pp5/6 give
  13941. details of the font manager calls, showing how you can use them in your
  13942. programs.)
  13943. 6.6
  13944. Kerning tables are built into the ROM fonts as well as the newer fonts
  13945. from EFF (and other suppliers?) I donæt know which applications use
  13946. them; presumably newer versions of Impression, etc. will.
  13947. 6.6
  13948. Filing systems: SCSI
  13949. 6.6
  13950. C. Purvisæs problems (icon in wrong place, öbad driveò error, etc ù see
  13951. 6.5 p26) have been solved by a new ROM for his SCSI podule, supplied
  13952. free of charge by Oak.
  13953. 6.6
  13954. Tord Eriksson at first had problems that sounded similar to C. Purvisæs,
  13955. then happened to find that his SCSI drive had been öset to 0ò and after
  13956. öresetting to 4ò everything worked perfectly. (I explained this last
  13957. month, p27. Ed.)
  13958. 6.6
  13959. Philip Lardner, who has a Brainsoft SCSI podule, is having great
  13960. difficulties in copying, moving or deleting files to, from or in the
  13961. root directory. It generates all sorts of error messages such as: öCanæt
  13962. create ÉSCSI::SCSI.$æ ... ò. Philip has found that he can get round the
  13963. problem by copying via the RAM disc and deleting using a trash-can
  13964. application but he would obviously be interested in a proper öfixò. (I
  13965. donæt know whether it might be relevant but he has put öSet Alias$Free
  13966. ShowFree -FS scsi %0ò, as recommended last month, in his !Boot file in
  13967. order to activate the free space window.)
  13968. 6.6
  13969. Philip has also found that his PC Emulator 1.8 sometimes suddenly hangs
  13970. the machine either during or shortly after booting up, or after quitting
  13971. the emulator.
  13972. 6.6
  13973. HCCS HardCard 45
  13974. 6.6
  13975. Barry Thompson says this needs a ROM and PAL change by HCCS costing ú10
  13976. plus VAT.
  13977. 6.6
  13978. IDE
  13979. 6.6
  13980. John Birchenough was initially unable to access his Risc Developments
  13981. IDE disc drive. However, with a third (free) replacement ROM fitted in
  13982. his podule, it is now working!
  13983. 6.6
  13984. Allan Woods says that the tip given last month for getting the Free
  13985. Space window to work with SCSI drives doesnæt work with his Risc
  13986. Developments IDE drive. Bernard Perry says he knows someone with an ICS
  13987. IDE drive with the same problem. Has anyone got any ideas?
  13988. 6.6
  13989. Barry Thompson says the early Orion IDE drives do not function and
  13990. wonders whether the new proprietors at Orion are going to support them.
  13991. 6.6
  13992. Watford 5╝ö drive interface
  13993. 6.6
  13994. Gordon Lindsay-Jones has found that his problem is not with his Watford
  13995. buffer, as reported last month. The buffer worked properly with another
  13996. disc drive. However, he is still trying to find out what is wrong with
  13997. his drive.
  13998. 6.6
  13999. Printing Ö HP Paintjet, Draw and Poster
  14000. 6.6
  14001. Christopher Price (Sidcup) is having constant problems trying to print
  14002. from the RISC¡OSá3.10 version of Draw and Poster 1.21 via an Ace printer
  14003. driver (he doesnæt know which version) to an HP Paintjet on his A420.
  14004. The printer appears not even to acknowledge Draw and refuses to output.
  14005. With Poster he gets output sometimes, though white text generally
  14006. appears black and the printer öseems to bug out if the artwork involves
  14007. clipartò imported from elsewhere. Can anyone help?
  14008. 6.6
  14009. Carriage returns and linefeeds
  14010. 6.6
  14011. Philip Woodward uses a bubblejet printer and often prints direct (i.e.
  14012. not via a RISC¡OSádriver). He finds that if he makes the slightest
  14013. error, such as trying to print a non-existent file, when he next tries
  14014. to print, everything gets printed on one line. Does anyone have any
  14015. suggestions?
  14016. 6.6
  14017. BJ-330
  14018. 6.6
  14019. Tord Eriksson has had numerous difficulties printing on his Canon BJ330.
  14020. Using the LQ-860 driver is agonisingly slow (it makes four passes for
  14021. each line) and it sometimes gives stripes in graphics areas. He also had
  14022. a printer head (costing ú200!) written off as a result of a öprintout
  14023. crashing.ò Also he finds that printing can abort before the job is
  14024. finished ù if he uses 180╫180 dpi there are no problems but with 180╫360
  14025. or higher just part of the page gets printed. He comments that the
  14026. printer driver seems to work differently in that it now seems to
  14027. calculate the entire bitmap before starting printing and he wonders if
  14028. he now needs more than 4 Mbytes just to print an A4 page. Any hints or
  14029. tips would be very welcome indeed!
  14030. 6.6
  14031. Tord asks if there is any Archive reader who has tested the plotter
  14032. version of the BJ-330.
  14033. 6.6
  14034. Non direct drive laser printers
  14035. 6.6
  14036. Tord also asks for suggestions about laser printers that work well with
  14037. RISC¡OSá3. Direct drive lasers are out of the question because all his
  14038. podule slots are full! What printer drivers exist for Canon laser
  14039. printers that use Canonæs own page description language? (How about the
  14040. Ace Pro-Driver for LBP4/8 at ú44 through Archive?)
  14041. 6.6
  14042. Printing in the background
  14043. 6.6
  14044. Tord Eriksson says that the tip in Archive 6.3 p16 about having two
  14045. printer drivers loaded is impossible: if he loads a second !Printers the
  14046. first is erased. However, I think he has misunderstood the point: you
  14047. should only run !Printers once, but within that application you should
  14048. have two drivers loaded and active. (See p62 of the RISC¡OSá3 User Guide
  14049. for details.)
  14050. 6.6
  14051. Keith Matthews spells out the procedure in more detail: you should drag
  14052. two copies of the appropriate printer driver into the Printer control
  14053. window of !Printers. Then click <menu> over the Printer control window,
  14054. choose the Connection option and connect the first driver to a suitable
  14055. file, then give the driver a name ending in Éfæ. The second copy should
  14056. be connected to the printer and named with a Épæ. When the printer
  14057. manager is subsequently loaded, two icons appear: the first is selected
  14058. by default, so applications will öprintò to the file. To produce hard
  14059. copy as a background task, just drag the file icon onto the ö......pò
  14060. icon (you donæt need to select it first.) (I still maintain this is a
  14061. ridiculous palaver: why isnæt there a setup option whereby you can tell
  14062. the print manager to print first to a file and then automatically send
  14063. it to the printer?)
  14064. 6.6
  14065. Keith points out that (although he hasnæt tried queueing printouts) the
  14066. printer queue window provides one queue for each printer icon.
  14067. Obviously, print image files would have to be created under different
  14068. file names and you would need a hard disc to accommodate them all.
  14069. 6.6
  14070. LaserDirect and Turbo Driver news
  14071. 6.6
  14072. Michael Lowe has received a copy of version 2.09 of the LaserDirect
  14073. driver which has fixed the speckling problem (see Archive 6.5 pp30/31).
  14074. 6.6
  14075. Computer Concepts have also told both him and Dave Leckie that RISC¡OSá3
  14076. drivers öare under development and might be available as early as April
  14077. but the amount of work involved shouldnæt be underestimated.ò Presumably
  14078. these will handle rotated text and sprites and work under the RISC¡OSá3
  14079. printer manager. (Dave Leckie notes, however, that CC have said that
  14080. they will not support RISC¡OSá3.0.)
  14081. 6.6
  14082. Using a RISC¡OSá3 driver after LaserDirect, etc.
  14083. 6.6
  14084. In Archive 6.5 p30 there was a tip that, in order to use a RISC¡OSá3
  14085. driver after using a RISC¡OSá2 driver such as LaserDirect, ArcLaser or
  14086. the Turbo drivers you should use the two * commands:
  14087. 6.6
  14088. RMKill PDriver
  14089. 6.6
  14090. RMReinit PDriver
  14091. 6.6
  14092. Maurice Edmundson has pointed out that a convenient place to put these
  14093. commands is in the !Run file of !Printers before the first of the
  14094. RMEnsure commands.
  14095. 6.6
  14096. Saving paper size settings
  14097. 6.6
  14098. Acorn have advised that there is a fault in RISC¡OSá3.0 whereby, if you
  14099. alter the page sizes and save them, the new settings are not saved. The
  14100. work-around is to <shift-double-click> on !Printers then load the file
  14101. PaperRW into !Edit, manually change the settings then save the altered
  14102. file. This bug has been fixed in RISC¡OSá3.10.
  14103. 6.6
  14104. First Word Plus driver for Deskjet 550C?
  14105. 6.6
  14106. Can anyone supply a printer definition file (Barry Thompson asks)?
  14107. 6.6
  14108. PC Emulator
  14109. 6.6
  14110. John Birchenoughæs emulator, version 1.7, will only access the internal
  14111. drive A. Even when he makes the default drive B or C, the computer
  14112. insists on having a disc in drive A and then operates on the contents of
  14113. that drive. Also, it always asks for a disc to be inserted in B even
  14114. though it means A. He tried the patch supplied on the Support disc, but
  14115. that refused to work with a version higher than 1.6. He has also tried
  14116. changing his Config.sys file with variations of the Driver.sys and
  14117. Drivparm commands but to no effect. Can anyone help?
  14118. 6.6
  14119. Is RISC¡OSá3 faster or slower?
  14120. 6.6
  14121. Some think one, some the other! A number of people have commented that
  14122. the machine seems to take longer to redraw the desktop screen or to go
  14123. through its initialisation routine. Relying on memory, it is obviously
  14124. difficult to tell. Raymond Wright says Pipedream 3.1 appears to take
  14125. longer to get spreadsheets loaded. He finds that, initially, he gets a
  14126. screen full of zeros which are slowly replaced by real data. (I wonder
  14127. if this is because of the way he has got it set up? Robert Macmillan
  14128. from Colton said ù see Archive 6.3 p12 ù that all versions from 3.10 on
  14129. work better in RISC¡OSá3.) Raymond is sure that RISC¡OSá2 was quicker
  14130. but heæs not going to reinstall it just to find out.
  14131. 6.6
  14132. Ken Gardner has, however, done just that. He did some controlled timings
  14133. before updating to RISC¡OSá3.10 and reverted back to RISC¡OSá2 to
  14134. confirm the anomaly that he found. The timings are as shown below
  14135. 6.6
  14136. For the tests, ADFS buffers were set to zero for both RISC¡OSá2 and
  14137. RISC¡OSá3.10. When Ken changed ADFSBuffers to 2K the time to read the
  14138. serial file fell from 48 secs to 19 secs but the Multistore random
  14139. access read only dropped from 176 secs. to 170ásecs. This is a logical
  14140. result but it prompts Ken to ask why we have been instructed to set
  14141. ADFSBuffers to zero when this gives so much slower a result than in
  14142. RISC¡OSá2. Can anyone tell us for sure whether there is a bug or not?
  14143. (Is there a danger of losing data if the Buffers are set to a non-zero
  14144. value?) (Yes, but only on a 1Mb machine. In 3.11, this has been improved
  14145. over 3.10. Ed.)
  14146. 6.6
  14147. Miscellaneous Hints & Tips
  14148. 6.6
  14149. How to avoid continual disc swapping,
  14150. 6.6
  14151. and more on !Scrap files
  14152. 6.6
  14153. Philip Woodward recommends that, on a floppy-disc only system, if you
  14154. have several discs for different classes of work and include a !Scrap
  14155. file on each, donæt forget to click on the !Scrap icon when you insert a
  14156. new disc. If you do forget, you will find that whenever you load a
  14157. printer driver, or try to print a drawing, the operating system will ask
  14158. you to insert some other disc which has no apparent relevance.
  14159. 6.6
  14160. Draw crashing
  14161. 6.6
  14162. Philip Woodward finds, like a number of others, that Draw crashes quite
  14163. frequently reporting an öaddress exceptionò error. Does anyone know if
  14164. there is anything he can do to avoid this? The error message goes on to
  14165. say:
  14166. 6.6
  14167. preserving files in <Wimp$ScrapDir>.Draw before exiting.
  14168. 6.6
  14169. This means that !Draw will attempt to save the work-in-progress as a
  14170. file called Draw in the scrap directory. (If it is successful, you will
  14171. be able to retrieve the file by opening that directory and double-
  14172. clicking on the drawfile icon to run !Draw again and load the file in ù
  14173. after first making a backup copy of the file if it is important. To find
  14174. where the scrap directory is, press <ctrl-f12> to open a Task window and
  14175. type the command *Show Wimp$ScrapDir)
  14176. 6.6
  14177. Positioning drawings imported into Draw
  14178. 6.6
  14179. Philip Woodward has also found that, whereas in the RISC¡OSá2 version of
  14180. Draw, one could superimpose a previous drawing (e.g. one saved on a RAM
  14181. disc) in exactly the position it originally occupied in the window by
  14182. setting the grid lock on and dragging the file onto the new drawing and
  14183. positioning the pointer at the bottom left of the window, this no longer
  14184. works. The minimum bounding frame of the old drawing is placed with its
  14185. bottom left corner at the mouse position, regardless of the original
  14186. position in the old drawing. To reproduce the RISC¡OSá2 behaviour, you
  14187. have to put something, such as a dummy rectangle, at the bottom left
  14188. corner of the old drawingæs window.
  14189. 6.6
  14190. Alarm options
  14191. 6.6
  14192. Philip Woodward has pointed out that, if you include a line in your
  14193. !Boot file to set Alarm$Options, you must include % in front of each of
  14194. the -format parameters (see Applications Guide p137 for details). Also,
  14195. you must put the format string in quotes (which is not, perhaps,
  14196. emphasised sufficiently strongly in the Manual.) In both these respects,
  14197. it differs from Edit$Options, Draw$Options, etc.
  14198. 6.6
  14199. To illustrate the point, consecutive lines in !Boot might read:
  14200. 6.6
  14201. Set Alarm$Options -format ö%w3 %z12:%mi %m3 %zdyò
  14202. 6.6
  14203. Set Edit$Options B12 M99 L1 D
  14204. 6.6
  14205. To get the Alarm$Options to take effect, you also have to choose the
  14206. öUser definedò option in the Alarm setup window (choose the Setup...
  14207. option from the iconbar menu.) Itæs not clear from the manual but I
  14208. assume that the choice of this option is saved in the CMOS RAM so
  14209. doesnæt have to be included in the !Boot file. Itæs all a bit confusing,
  14210. isnæt it?
  14211. 6.6
  14212. Arm3 hare and tortoise icons
  14213. 6.6
  14214. I didnæt have enough time last month to try out G÷tz Kohlbergæs tip
  14215. (Archive 6.5 p33) about the hare and tortoise module. Now I have, and
  14216. Iæm totally confused! Whatever combination of commands I use, I seem to
  14217. be unable to get the machine to boot up with the cache on without the
  14218. hare and tortoise swapping jobs. One thought Iæve had is that I might
  14219. swap the names of the hare and tortoise icons inside the !Arm3.!Sprites
  14220. file. (Another thought is that perhaps youære meant to click on the hare
  14221. to get the machine to go faster, and that this never worked properly in
  14222. RISC¡OSá2!) Help!
  14223. 6.6
  14224. Faster filer operations
  14225. 6.6
  14226. If you click <menu> over a filer operation window (e.g. the window that
  14227. pops up when you copy files which keeps you informed of progress) and
  14228. choose öFasterò, screen update will be less frequent and the filer
  14229. operation will be faster. (Marc Evans)
  14230. 6.6
  14231. Copying a large directory to floppy
  14232. 6.6
  14233. If you run out of space when copying a directory or application to a
  14234. floppy, insert a new disc, rename it with the same name as the full disc
  14235. and click on öRetryò. (Marc Evans) (Someone else has already suggested
  14236. that but when I tried it, it said öambiguous filenameò. Ed.)
  14237. 6.6
  14238. <Shift-select> on toggle size icon
  14239. 6.6
  14240. If you click <shift-select> on the toggle size icon, the window will
  14241. open as far as it can without obscuring the icon bar. (Marc Evans) (This
  14242. seems to depend on the application. Draw windows behave as described,
  14243. but Impression windows donæt.)
  14244. 6.6
  14245. False sprites on the Pinboard
  14246. 6.6
  14247. Marc Evansæ Pinboard seems to get confused over icon sizes and sprites
  14248. under certain conditions. For instance, it sometimes makes icons three
  14249. times bigger and uses the wrong sprites. Tord Eriksson says that in mode
  14250. 78 (from Computer Concepts NewModes?) some icons disappear, some hide
  14251. behind others and some appear twice; a single click on each one restores
  14252. peace, but should he have to? Has anyone else found this?
  14253. 6.6
  14254. Configured modes
  14255. 6.6
  14256. Marc Evans has found that *Configure Mode and *Configure Wimpmode seem
  14257. to be interlinked ù whatever one is configured to the other one follows.
  14258. He used to have Mode configured to 0 to save memory when outside the
  14259. Desktop, but canæt anymore.
  14260. 6.6
  14261. Tord Eriksson had great problems until he discovered that you canæt
  14262. öconfigureò a non-standard mode. If you want to start up in, say, mode
  14263. 78 from the Computer Concepts Newmodes module, you have to include in
  14264. your !Boot file first a command to load the NewModes module then a
  14265. *WimpMode 78 command.
  14266. 6.6
  14267. Icon button types
  14268. 6.6
  14269. A comment for WIMP programmers is that when icons have the double click
  14270. flag set, they invert at the first click and group with adjust (like
  14271. Filer icons). To get around this, your program must trap for any icon
  14272. clicked on and unset the selected bit. (Marc Evans)
  14273. 6.6
  14274. Saving the configuration
  14275. 6.6
  14276. Mike Williams finds that the configuration file saved by !Configure
  14277. doesnæt cover all the things he needs to restore after having attempted
  14278. to run a rogue program that changes the configuration. He has therefore
  14279. built himself a command file containing all the *Configure commands
  14280. required to get back to normal plus *RMReinit commands for all the
  14281. modules. He created it by doing
  14282. 6.6
  14283. *Spool cfgfile
  14284. 6.6
  14285. *Status
  14286. 6.6
  14287. *ROMModules
  14288. 6.6
  14289. *Spool
  14290. 6.6
  14291. then editing the resulting file into the correct syntax and changing the
  14292. filetype to öCommandò. (The pukka way of creating such a file is not to
  14293. use the pre-RISC-OS *Spool command, but to press <ctrl-f12> to open a
  14294. Task window, type Status, <return>, ROMModules and <return>, then press
  14295. <menu>, choose the öUnlinkò option and save the contents of the Task
  14296. window.)
  14297. 6.6
  14298. Several years ago, Risc User published a program called !CMOS_Edit which
  14299. allows easy saving and reloading of all the CMOS settings. This seems to
  14300. work fine.
  14301. 6.6
  14302. Opening sub-menus automatically
  14303. 6.6
  14304. Richard Hallas has noticed that, if you choose the öOpen submenus
  14305. automaticallyò configuration option, then if the pointer is resting to
  14306. the left of the öparentò menu item (in the space where a tick would
  14307. appear) when the submenu opens it appears on top of the parent menu
  14308. rather than to its right. Also, moving around a single menu with several
  14309. submenu pointers can have some peculiar effects: sometimes the submenu
  14310. pointers are ignored, and it is even possible to have two copies of the
  14311. same submenu open.
  14312. 6.6
  14313. Preventing access to !Configure and !Alarm
  14314. 6.6
  14315. Last month we gave the hint that you can prevent users from interfering
  14316. with the configuration by unplugging the !Configure module so that they
  14317. canæt access the !Configure application. In Acornæs education newsletter
  14318. Arc, there is a hint that you can do the same with !Alarm.
  14319. 6.6
  14320. Opening a directory without booting
  14321. 6.6
  14322. Richard Hallas reports that, if you open a directory with <ctrl> held
  14323. down to stop the Filer executing all the !Boot files inside the
  14324. applications within the directory, then copying, renaming or deleting
  14325. files will cause the directory to be booted unless you remember to press
  14326. <ctrl> again.
  14327. 6.6
  14328. Also, if you open a directory with <ctrl> held down and then copy an
  14329. application out of it to another directory, then (assuming the Filer has
  14330. not already seen the !Sprites file for the application) a ö!Sprites not
  14331. foundò error will be reported. This doesnæt have any ill effects: itæs
  14332. just a nuisance.
  14333. 6.6
  14334. Various Matters Arising
  14335. 6.6
  14336. Screen blanker (Archive 6.4 p12)
  14337. 6.6
  14338. Keith Raven has found (in p163 of the User Guide) that *Blanktime sets
  14339. the time (in seconds) before the screen goes blank. *Blanktime 0 turns
  14340. the screen blanker off. (What I would like to know is: does the
  14341. operating system provide any easy means of firing up a graphical routine
  14342. as an alternative to the blank screen?)
  14343. 6.6
  14344. Shift key behaviour (Archive 6.5 p34)
  14345. 6.6
  14346. John Woodgate suggests that the ú/ñ key may be acting as if it were
  14347. pressed as well as the <shift> key. He suggests cleaning with iso propyl
  14348. alcohol or proprietary switch cleaner. (For details on how to clean a
  14349. keyboard, see 5.1 p25. Ed.)
  14350. 6.6
  14351. Solid sprite dragging (Archive 6.5 p36)
  14352. 6.6
  14353. Barry Thompson writes that the way to turn this on is to use the *
  14354. command *FX162,28,3 (It seems really weird to me that a feature like
  14355. this, quite a selling point one would have thought, has been implemented
  14356. in such a half-hearted way!)
  14357. 6.6
  14358. Spaces in *Set commands
  14359. 6.6
  14360. Brian Fielding has found that whereas in RISC¡OSá2 you could use spaces
  14361. in *Set or *SetMacro, RISC¡OSá3.10 does not allow you to do so:
  14362. 6.6
  14363. SET PipeDream$Path ADFS::Dream_ file.$.,<PipeDream$Dir>.
  14364. 6.6
  14365. was permissible in RISC¡OSá2 but you must use
  14366. 6.6
  14367. SET PipeDream$Path ADFS::Dream_ file.$.,<PipeDream$Dir>.
  14368. 6.6
  14369. in RISC¡OSá3.10.
  14370. 6.6
  14371. Locked directories in ROM/RAM podule
  14372. 6.6
  14373. Brian Fielding also reports that if you create a New directory in
  14374. Computer Conceptæs ROM/RAM podule, it creates the directory with a lock.
  14375. This lock cannot be removed and the directory can never be deleted
  14376. except by re-initialising the Podule.Other problems occur when copying
  14377. files into directories on the Podule but these can be ÉSKIPedæ. He has
  14378. written to CC about this but they have no plans to alter the podule
  14379. software to work fully with RISC-OS3.ááA
  14380.  
  14381. 6.6
  14382. Timings for various operations (RISC-OS 2 v RISC-OS 3.10)
  14383. 6.6
  14384.  
  14385. 6.6
  14386.       RISC-OS 2   RISC-OS 3.10   relative
  14387. speed
  14388. 6.6
  14389.       (secs)   (secs)   RO3.1 : RO2
  14390. 6.6
  14391. Read a serial file to a string array (50,000 items)   25.4
  14392.    48.4   half as fast
  14393. 6.6
  14394. Sort 50,000 strings (using Armsort)   8.0
  14395.    8.0   same
  14396. 6.6
  14397. load and sort a Multistore file (2,400 items):
  14398. 6.6
  14399.    load   166   176   slightly slower
  14400. 6.6
  14401.    sort   221   214   slightly faster
  14402. 6.6
  14403.    total   387   390   same
  14404. 6.6
  14405. Print a Draw file (with 32Kb buffer in printer)
  14406. 6.6
  14407.    release computer   500   239
  14408.    twice as fast
  14409. 6.6
  14410.    release printer   533   289
  14411.    twice as fast
  14412. 6.6
  14413. Mandelbrot (recalculate Clessidra)   90.3
  14414.    90.5   same
  14415. 6.6
  14416.  
  14417.  
  14418.  
  14419. Hints and Tips
  14420. 6.05
  14421. Å   A4 pointer loss Ö Using Impression on an A4, it is very easy to lose
  14422. the text pointer. If the pointer is somewhere over the text, it takes
  14423. the form of a caret and is very difficult to see. The simple solution is
  14424. to click <adjust>. This marks a block of text and your pointer is at one
  14425. or other end of the block! Ed.
  14426. 6.05
  14427. Å   Ace printer drivers Ö Many people have asked about the differences
  14428. between Risc Developmentsæ printer drivers and the Ace Computing drivers
  14429. (including the Pro-Drivers.) In practice, the standard Ace drivers (ú17)
  14430. and Risc Developmentsæ drivers (ú23) are the same. However, the Pro-
  14431. Drivers (ú44) are somewhat enhanced: they support full background
  14432. printing, true 24-bit colour, half-toning, dithering and colour
  14433. separations. Ace Computing have also recently upgraded their DJ500C
  14434. driver to include facilities for the DJ550C. Simon Moy, Archive.
  14435. 6.05
  14436. Å   Background printing with RISC-OS printer drivers Ö Yes it is possible!
  14437. RISC-OS printer drivers are capable of printing in the background far
  14438. better than third party software due to the fact that the ROM printing
  14439. routines are designed to multitask. However, this is not documented and
  14440. requires a particular way of printing. Set your printer driver to print
  14441. to a file (choose Connection from the Printer Control menu, select File
  14442. and enter a pathname to a temporary file). Print the file in question by
  14443. the normal method for the application in question Ö this bit doesnæt
  14444. multitask! When it has finished, reset the driver to print to the
  14445. parallel (or serial) port. Find the temporary printout file and drag it
  14446. on to the printer icon on the iconbar. The printer will begin printing
  14447. and you will have full control of the machine. If you are using a RAM
  14448. disc or a hard disc, you shouldnæt notice any slowing down at all. Simon
  14449. Moy, Archive.
  14450. 6.05
  14451. Å   Dating Ö I can never remember what the time is and so, in common with
  14452. a lot of others, I used to have the date and time on the iconbar. This
  14453. was not completely satisfactory as it was frequently obscured by
  14454. windows. Browsing in the User Guide, I discovered that you could alter
  14455. the format of the command line prompt and have the date and or time
  14456. displayed before the *. You can do this with:
  14457. 6.05
  14458. SetMacro CLI$Prompt <Sys$Time>, <Sys$Date> *
  14459. 6.05
  14460. This went in my boot file. Now whenever I want the date or time all I do
  14461. is, <f12>, read the date and time and press <return>.á Edward Naish,
  14462. Gwynedd.
  14463. 6.05
  14464. (On RISC-OS 3, all you do is press <shift-f12> to bring the iconbar
  14465. forwards and then <shift-f12> to put it back again. Ed.)
  14466. 6.05
  14467. Å   Draw to sprite conversion Ö In answer to Roger Darlingtonæs plea in
  14468. Archive 6.3, several people gave us the öobviousò way of converting
  14469. drawfiles to sprites Ö you display the drawfile on screen and use the
  14470. screen grab facility within Paint to create a sprite. (This emphasises
  14471. again the need for a ÉThis is Obvious But...æ column, as mentioned in
  14472. the Help!!! Column this month. None of the Éexpertsæ at N.C.S. thought
  14473. of it. Ed.)
  14474. 6.05
  14475. One other solution was mentioned... Drawfile to sprite conversion can be
  14476. done with the program Revxtra which is supplied with the Revelation
  14477. package. However, this is a copyright program and I donæt know of any PD
  14478. equivalent.á Ted Lacey, Southampton.
  14479. 6.05
  14480. To add to that... If you have Revelation ImagePro, you can just drop
  14481. drawfiles onto a Revelation picture and save it out again as a sprite Ö
  14482. no need for a separate program.á Gabriel Swords, Norwich.
  14483. 6.05
  14484. Å   Easiword Ö The printed effects (bold, italics, etc) only start working
  14485. if you go into !Printers configuration window and, in the OptionsÖText
  14486. Quality, select NLQ rather than No Highlights which is the default.á
  14487. Steve Hutchinson, Gloucester.
  14488. 6.05
  14489. Å Filename dragging Ö If you have version 1.21 of Edit, you can shift-
  14490. drag any object into an edit window and the pathname of the object
  14491. appears at the cursor position. This is just the job for constructing
  14492. command files. Avoid all those typing errors!
  14493. 6.05
  14494. I read in another magazine that this facility is only available in OS3.
  14495. This is not the case, although it does not work with version 1 of Edit.á
  14496. Edward Naish, Gwynedd.
  14497. 6.05
  14498. Å   Fun School Ö All of the Fun School series (3 and 4) have now been
  14499. upgraded to work with RISC-OS 3.10 although some tweaks are still
  14500. necessary. For the Fun School 3 range, it is necessary to start in mode
  14501. 15 before running the programs. In the Fun School 4 range, you will need
  14502. to RMKill any VIDC enhancer modules that are running as these cause the
  14503. music and graphics to work too fast. Simon Moy.
  14504. 6.05
  14505. Å   Inserting RISC-OS (or any other) chips Ö With the recent introduction
  14506. of RISC-OS 3, many Archimedes computers are being returned to dealers
  14507. with the pins of the ROM chips damaged. Here is how to avoid that!
  14508. Usually, ROM chips are delivered with the pins looking like this...
  14509. 6.05
  14510.  
  14511. 6.05
  14512. They will not go into the computeræs ROM sockets with the pins splayed
  14513. out like this.
  14514. 6.05
  14515. Before handling the ROM chips, make sure that you are not carrying a
  14516. static charge. This is easily accomplished by touching an earthed metal
  14517. object. You will need a flat area to work on Ö a formica-topped table is
  14518. ideal. Grasp each end of the ROM chip with finger and thumb of both
  14519. hands, so that the sharp ends of the ROM pins are facing you horizon
  14520. tally. Place the bottom row of pins onto the formica table top and press
  14521. down gently but firmly and move the body of the ROM slightly towards
  14522. you. Repeat this operation until the pins are exactly at right angles to
  14523. the chip body. Turn the ROM over and repeat the above exercise. You
  14524. should now have a ROM with the pin layout like this...
  14525. 6.05
  14526.  
  14527. 6.05
  14528. With the chip just above its socket and the chip notch orientated with
  14529. the diagram supplied with your computer, insert one side of the chip
  14530. pins slightly into the corresponding side of the socket. Once you are
  14531. sure that all pins on that side do align correctly then lower the other
  14532. row of pins into the other side of the socket. Again make sure that all
  14533. the pins are aligned and then press the chip completely home.
  14534. 6.05
  14535. If you have been unfortunate enough to have broken a pin off of a ROM
  14536. chip, there is a solution providing that a small amount of pin is left
  14537. on the chip. You will need a öturned pinò, wire-wrap header socket with
  14538. the same number of pins as the damaged ROM. Before inserting the damaged
  14539. chip into this socket, cut down each pin of the header socket to about
  14540. 4mm length. Insert the damaged ROM into this socket, and with a very
  14541. fine-tipped soldering iron solder a jumper wire from the damaged pin
  14542. directly to the empty socket on the header. Once this has been achieved
  14543. do not ever remove the ROM from this socket. The completed assembly may
  14544. be mounted with care into the original ROM socket. I have repaired
  14545. several ROMs by this method.á Mike King, Guernsey.
  14546. 6.05
  14547. Å   JPEG Ö Under RISC-OS 3, JPEG only works providing the hourglass is
  14548. switched off. This can be carried out by inserting the SWI call SYS
  14549. "Hourglass_Off" at the appropriate place.á Marc Evans.
  14550. 6.05
  14551. Å   Paper for inkjets Ö Daler Superline paper produces excellent results
  14552. on my Canon BJ10ex Ö I bought it a long time ago, so I hope itæs still
  14553. available.á S Freeman, Middlewich.
  14554. 6.05
  14555. Å   Printer drivers Ö RISC-OS 3 printer drivers assume that there is
  14556. enough öscrapò space on a disc to store any temporary files during a
  14557. printing operation. In practice, a hard disc is assumed. If you have a
  14558. system without a hard disc, then !Scrap can be either on a floppy disc
  14559. or a RAM disc. If there is not enough space for the temporary printout
  14560. file, !Printers will crash with no warning. To avoid this, keep !System
  14561. and !Scrap on a separate disc on their own. Simon Moy, Archive.
  14562. 6.05
  14563. Å   Standard crest in Impression letters Ö In Archive 6.3 p28, Brian Cowan
  14564. asks how he can save floppy disc space with his Impression letters where
  14565. he has a college crest, the drawfile of which  takes up 10Kb of memory
  14566. per letter Ö much more than the text Ö and he fills a floppy disc with
  14567. such multiple copies of the crest.
  14568. 6.05
  14569. Surely the answer is to have an empty frame in the standard letter file
  14570. into which he drags the drawfile of the crest. All he has to do is to
  14571. remember to drag the drawfile whenever he starts a new letter and drop
  14572. into the frame a simple dummy drawfile Ö a single square or circle will
  14573. do Ö that will occupy far less space, before saving to disc. If he needs
  14574. to re-load and re-print the document, all he has to do is drop a copy of
  14575. the crest in again Ö surely not a fag. The crest and dummy drawfiles can
  14576. be held on the pinboard.á Steve Kirkby, Sutton. (Well, it was his idea
  14577. modified by Ed.)ááA
  14578. 6.05
  14579.  
  14580. 6.05
  14581. Using RISC-OSá3
  14582. 6.05
  14583. Hugh Eagle
  14584. 6.05
  14585. Iæve received such a flood of letters in response to my first column
  14586. that I probably wonæt have time to refer to them all. I apologise in
  14587. advance if I donæt use your contribution; I am very grateful for them
  14588. all and will try to use them next month. In the meantime, please keep
  14589. the hints, tips, comments, suggestions, etc flowing.
  14590. 6.05
  14591. A number of the problems mentioned only seem to affect a few users and
  14592. may result from unusual combinations of circumstances which could be
  14593. difficult to diagnose. If you think you might be able to help by talking
  14594. directly to the people affected, please let me know and I will put you
  14595. in contact.
  14596. 6.05
  14597. Fitting the Upgrade
  14598. 6.05
  14599. Several people have commented favourably on the service they have
  14600. received from dealers. IFEL has been mentioned a number of times. Nik
  14601. Kelly was specially impressed by Simtecæs facilities.
  14602. 6.05
  14603. G÷tz Kohlberg received his upgrade surprisingly quickly but then had to
  14604. wait several weeks for the fitting instructions for his carrier board.
  14605. When the instructions arrived, he found the IFEL carrier board very easy
  14606. to fit, taking only about 20 minutes. He didnæt have to remove the
  14607. backplane or take out the main board.
  14608. 6.05
  14609. Programs That Do Work
  14610. 6.05
  14611. Microdrive ù A number of people have noticed that, while the new version
  14612. requires you to keep the program disc in the floppy drive while you play
  14613. the game, the new courses work with the original program which will run
  14614. properly from a hard disc.
  14615. 6.05
  14616. Others ù various people have reported that the following work without
  14617. any problems:
  14618. 6.05
  14619. FontFX 5.05 (latest upgrade, free from Data Store, recognises the ROM
  14620. fonts)
  14621. 6.05
  14622. Flexifile 1.04
  14623. 6.05
  14624. Eureka (has someone found it?)
  14625. 6.05
  14626. Home Accounts
  14627. 6.05
  14628. SigmaSheet
  14629. 6.05
  14630. Arcendium (R.áE.áLeo says he finds it works, contrary to the report from
  14631. Mike Williams in December)
  14632. 6.05
  14633. ArcScan III
  14634. 6.05
  14635. DiscTree 2.30
  14636. 6.05
  14637. Art Nouveau (Tim Nicholson says he uses it a lot, and doesnæt need the
  14638. fix I gave two months ago.)
  14639. 6.05
  14640. Investigator 2 works on an A310, but not an A5000.
  14641. 6.05
  14642. Elite (although Raymond Wright says that it did once seize up after
  14643. about an houræs play, which had never happened in RISC¡OSá2.)
  14644. 6.05
  14645. Arc-Comm
  14646. 6.05
  14647. Fortran 77 (Acorn)
  14648. 6.05
  14649. Acorn DTP
  14650. 6.05
  14651. Speech!
  14652. 6.05
  14653. Frances Obee is keen to know whether her most used programs will work:
  14654. Pendown Plus, Atelier, Prime Art, Chocks Away and Extra Missions, Elite,
  14655. Saloon Cars, and Man Utd. Europe. (I can vouch for two on her list: Draw
  14656. Plus v2.12 and Lemmings.)
  14657. 6.05
  14658. Richard Burnell says that a small modification will make version 1.00 of
  14659. !Define (the Watford VIDC screen mode definer) work: add to line 17760
  14660. of !RunImage ELSE tk%=FALSE so that it reads:
  14661. 6.05
  14662. IF INKEY(Ö256)=162 THEN tk%=TRUE ELSE tk%=FALSE
  14663. 6.05
  14664. Rob Brown says that the original version of Quazer supplied by the
  14665. author Julian Rockey, not Impact Software or Fourth Dimension, needs the
  14666. screen memory to be set to exactly 160Kb.
  14667. 6.05
  14668. He also says that Corruption and Jinxter will only work with the very
  14669. old version of the Shared C Library supplied with the games. You need to
  14670. RMKill the RISC¡OSá3 version and RMLoad the old version from disc. (He
  14671. recommends that you quit any application that uses the Shared C Library
  14672. first!)
  14673. 6.05
  14674. He adds that you can run Terramex by first ensuring that öFreeò memory
  14675. is at least 400Kb then using the command *Run Terracode.
  14676. 6.05
  14677. Programs that May Need to be Upgraded
  14678. 6.05
  14679. From the hints I have received, the general message seems to be that if
  14680. a program doesnæt work (and this is more likely to apply to older
  14681. programs, especially games) it is worth contacting the supplier or the
  14682. manufacturer because they can often supply upgrades (sometimes for quite
  14683. nominal sums).
  14684. 6.05
  14685. Among those that have been mentioned are:
  14686. 6.05
  14687. Arcade 3 games compilation from Clares
  14688. 6.05
  14689. Artisan, Artisan 2 and ProArtisan
  14690. 6.05
  14691. Interdictor
  14692. 6.05
  14693. a number of Fourth Dimension games (but Boogie Buggy is apparently
  14694. incompatible with an A5000, according to Rob Brown.)
  14695. 6.05
  14696. Droom
  14697. 6.05
  14698. Avon/Murdac (adventure compilation from Topologika)
  14699. 6.05
  14700. ChartDraw, GraphDraw and KeyStrip (excellent PD applications from Chris
  14701. Johnson).
  14702. 6.05
  14703. Fonts
  14704. 6.05
  14705. Colin Singleton points out that, although Electronic Font Foundry are
  14706. selling (more expensive) öRISC¡OSá3ò fonts, the old ones work perfectly
  14707. well. The only difference is that the new ones have automatic kerning
  14708. information built in (for the use of programs that know how to use it).
  14709. 6.05
  14710. Alan Gentle warns that the way FontMax settings are defined has changed.
  14711. They used, in RISC¡OSá2 to be quoted in pixels, but in RISC¡OSá3 are now
  14712. quoted in points. The maximum point size for anti-aliasing seems to
  14713. refer to the apparent point size on the screen. Thus to make sure that,
  14714. say, 15 point text displayed at 130% is anti-aliased he has to set the
  14715. appropriate FontMax to 15╫1.3, i.e. at least 20.
  14716. 6.05
  14717. David Shepherdson reports that DrawPlus version 2.00 cannot convert
  14718. Trinity, Homerton or Corpus to paths and suggests using Draw to do the
  14719. conversion and ösavingò the result into DrawPlus. (The same seems to be
  14720. true of version 2.12. A possible alternative would be to ignore the ROM
  14721. fonts and load those you want into a disc !Fonts directory.)
  14722. 6.05
  14723. Marc Evans recommends, contrary to Acornæs instructions, keeping the
  14724. !Fonts directory in a sub-directory, not the root, to save memory and
  14725. time if you are not using the disc fonts. (I would suggest you only do
  14726. this if you are sufficiently experienced to understand the
  14727. implications.)
  14728. 6.05
  14729. John Winter says that Impression (2.17) and LaserDirect (2.05) work as
  14730. well ù if not faster ù with FontSize set to 128Kb.
  14731. 6.05
  14732. (For more on fonts and LaserDirect see the section headed LaserDirect
  14733. further on in this column!)
  14734. 6.05
  14735. Filing Systems
  14736. 6.05
  14737. IDE drives
  14738. 6.05
  14739. R.áD.áAttwood noticed that the hard disc icon on his iconbar had öIDEá4ò
  14740. underneath it rather than öIDEDisc4ò. On trying to access the disc, he
  14741. got an error box with öBad free space mapò. Watford Electronics have
  14742. advised him that he needs another chip (cost ú16) for the hard disc
  14743. podule.
  14744. 6.05
  14745. D. T. Software recommended alternative courses of action for one
  14746. customer whose IDEFS wouldnæt work with RISC¡OSá3.10: either (a)
  14747. reformat the hard disc using the formatter supplied with the system or
  14748. (b) fit a replacement EPROM incorporating a work-around for a ömarginal
  14749. infelicity in the way RISC¡OSá3 mounts discs.ò
  14750. 6.05
  14751. SCSI drives
  14752. 6.05
  14753. C. Purvis has an A3000 with an external 5╝" floppy drive and an Oak SCSI
  14754. external interface (fairly old). When he turns his computer on, the SCSI
  14755. icon is to the right of the RAM discæs and when clicked on gives a öBad
  14756. driveò error. He then runs the following file from a floppy:
  14757. 6.05
  14758. *Mount 4
  14759. 6.05
  14760. *RMLoad $.!System.Modules. SCSIFiler
  14761. 6.05
  14762. *RMReinit SCSI
  14763. 6.05
  14764. *RMREINIT SCSIFiler
  14765. 6.05
  14766. *RMReinit SCSIFS
  14767. 6.05
  14768. *ADFS
  14769. 6.05
  14770. after which the SCSI icon disappears from the iconbar. If he then
  14771. presses <shift-break> to reset the computer, SCSIDisc4 appears at the
  14772. left end of the iconbar and all is well.
  14773. 6.05
  14774. It has been suggested to me that he needs a new ROM on his SCSI
  14775. interface. Can anyone confirm this?
  14776. 6.05
  14777. (One thing we have noticed with the Oak SCSI interfaces is that after a
  14778. <delete-power-up>, the SCSIdrive configuration is set to 0 and not 4.
  14779. What then happens is that the first time you click the hard drive icon,
  14780. it says öBad driveò but then if you click again, it works OK. The
  14781. solution is simple: press <f12> and type Configure SCSIDrive 4 <return>
  14782. and then do a <ctrl-break>. I think you will find that all is well after
  14783. that. Ed.)
  14784. 6.05
  14785. Mike Williams says the Shutdown routine wonæt complete unless he has all
  14786. his various SCSI drives mounted, so he has to put a disc into his
  14787. removable disc drive and spin it up just so that the system can dismount
  14788. it for him! He therefore ignores Shutdown, but asks whether there is a
  14789. recommended way of safely shutting down a system such as his?
  14790. 6.05
  14791. Mike has also found that if, after switching off, he changes his mind
  14792. and switches on again his computer gets stuck half-way through its
  14793. initialisation sequence. Is this a RISC¡OSá3 feature, a hardware fault,
  14794. or just because he didnæt shut down nicely?
  14795. 6.05
  14796. Using öFree spaceò viewer on SCSI drives
  14797. 6.05
  14798. (This hint from David Lenthall was originally published in Archive 5.5.)
  14799. 6.05
  14800. If choosing the öFreeò option from a SCSI drive icon gives an old RISC-
  14801. OSá2 style textual report and you would prefer to get the new RISC-OSá3
  14802. window with sliders, include the following line in your boot file:
  14803. 6.05
  14804. Set Alias$Free ShowFree -FS scsi %0
  14805. 6.05
  14806. SΘan Kellyæs alternative solution (which works beautifully with his A440
  14807. and Oak SCSI interface, driver version 1.16) is to copy the SCSIFiler
  14808. module from Applications Disc 1 into his !System.Modules directory and
  14809. to add the following line to his !Boot file:
  14810. 6.05
  14811. RMLoad SCSI::SCSIDisc4.$.!System .Modules.SCSIFiler
  14812. 6.05
  14813. ArcDFS / DFSReader
  14814. 6.05
  14815. In response to S. J. Furnellæs problem with ArcDFS mentioned in Archive
  14816. 6.3 p14, Keith Raven recommends !DFSReader on Archive Shareware 31. This
  14817. needs one slight adjustment: in line 210 of the !RunImage Basic program,
  14818. there is a SYS call that is expected to return 0, 1 or 2 to indicate
  14819. whether large or small icons or full directory information are selected
  14820. for directory windows. Under RISC¡OSá3 this actually returns 64, 65 or
  14821. 66. If the next three lines of the program are adjusted to reflect this,
  14822. it seems to run perfectly. (Richard Burnell suggests adding a new line
  14823. instead:
  14824. 6.05
  14825. 215 a=a MOD 64
  14826. 6.05
  14827. to achieve the same effect.) (Keith wonders how many similar minor
  14828. changes between RISC¡OSá2 and RISC¡OSá3 will come to light.)
  14829. 6.05
  14830. The Wakefield Acorn Computer Group writes:
  14831. 6.05
  14832. Regarding S.áJ.áFurnellæs problem with ArcDFS there is some good news
  14833. here. (These errors are liable to occur when you click on the drive icon
  14834. to display a directory window.) The most common error is ÉBad driveæ and
  14835. you can overcome this simply by Naming the disc with a blank name, i.e.
  14836. press <space> and then <return>. The ArcDFS Name option is selected via
  14837. the ÉMiscæ menu option, followed by ÉName discæ.
  14838. 6.05
  14839. This doesnæt cure the other (less common) error which is ÉBuffer
  14840. overflowæ. In that case, the only option seems to be to use the command
  14841. line, i.e, press <f12> to get a É*æ prompt or bring up a task window
  14842. with <ctrl-f12> and type DIRáDFS: (not *DISC as you might expect),
  14843. followed by DIRá:1 to select drive 1, (if required), then CAT for a
  14844. directory listing, etc. You can then use the manual *COPY command to
  14845. move files around, e.g.
  14846. 6.05
  14847. Copy DFS::1.$.Index ADFS::HardDisc4.$.Junk.MyIndex
  14848. 6.05
  14849. copies a file called $.Index on the DFS drive 1 into the $.Junk
  14850. directory of an ADFS hard disc, renaming it MyIndex in the process.
  14851. 6.05
  14852. You can just as easily copy onto SCSI, IDE and RAM discs of course. Note
  14853. that you should use *COPY and not *CopyDFS. The very good news is that
  14854. operations such as Format, Backup and Verify work fine, as they donæt
  14855. need to display a directory!
  14856. 6.05
  14857. 5╝" discs
  14858. 6.05
  14859. Peter Prewett has been horrified to find that since upgrading to RISC-
  14860. OSá3 he can no longer read any of his 5╝" discs (which he uses for
  14861. backing up his hard disc) via his Watford interface. He has tried
  14862. resetting the step rate to 6 without success. Luckily, he can still read
  14863. discs from his BBC via a DFS to ADFS file transfer.
  14864. 6.05
  14865. Gordon Lindsay-Jones also reports problems with his Watford buffer which
  14866. used to work well under RISC¡OSá2. Can anyone help? (Have you asked
  14867. Watford?)
  14868. 6.05
  14869. Richard Wells initially found that the Beebug DFS Reader refused to work
  14870. under RISC¡OSá3, but he has now found that if he runs the Commands
  14871. utility from the Support disc first then it will run.
  14872. 6.05
  14873. Richard also says he configures his 40-track 5╝" drive (drive 1) with
  14874. 6.05
  14875. *Configure Step 12 1
  14876. 6.05
  14877. and comments that perhaps
  14878. 6.05
  14879. *Configure Step 6 1
  14880. 6.05
  14881. would work for 80-track discs. He says that to restore normal step delay
  14882. you should use
  14883. 6.05
  14884. *Configure Step 3
  14885. 6.05
  14886. In response to Roger Poweræs query last month, Howard Snow points out
  14887. that the syntax is
  14888. 6.05
  14889. *Configure <Step delay> [<drive>]
  14890. 6.05
  14891. Rather confusingly, the information on the step delay given by *Status
  14892. is just the step delay for each of the drives, so if drive 0 is
  14893. configured to the normal delay of 3, after typing *Configure Step 6 1
  14894. *Status would give Step 3 6.
  14895. 6.05
  14896. W.áN.áRodger has written with a similar hint and also suggests that
  14897. perhaps all floppy drives on a system have to be set if any one is to be
  14898. changed.
  14899. 6.05
  14900. Mr Rodger has also noted that he has to leave his Cumana switchable 40/
  14901. 80 track drive switched to 80-track before selecting Format DOS 360Kb to
  14902. format a 40-track MS-DOS disc. When he then runs the PC Emulator, he has
  14903. to switch the drive to 40-track to read the disc he has just formatted!
  14904. 6.05
  14905. Compression
  14906. 6.05
  14907. S.áR.áFreeman reports that, when using Compression version 1.10 with his
  14908. A400/1, if he launches an application from CFS and subsequently quits
  14909. CFS without first quitting the application, the computer can hang.
  14910. Otherwise he has no problems with it.
  14911. 6.05
  14912. Mike Kinghan says that his system hangs when he tries to kill any CFS
  14913. filesystem from the iconbar. He only has to do this, however, in order
  14914. to free up the Filecore when shutting his machine down. Now he uses the
  14915. operating system Shutdown routine (via <shift-ctrl-f12>) instead and has
  14916. no problems.
  14917. 6.05
  14918. Mike also observes that öit is not a clever wheezeò to compress CFS
  14919. files using the !Squash application supplied with RISC-OSá3. This will
  14920. report a gratifying reduction in the logical byte count but when the
  14921. actual size of the new file is checked, it will usually be found that
  14922. the file has got larger. (Has anyone found a use for !Squash?)
  14923. 6.05
  14924. Dave Livsey has been told by Computer Concepts, in response to a query
  14925. about CFSæs use of a temporary file as an intermediate step in the
  14926. decompression process, that they ö ... are working on an upgrade to deal
  14927. with this ... ò
  14928. 6.05
  14929. Marc Evans says CFS version 1.10 has problems with large jobs ù 10
  14930. Mbytes, for example ù and suggests turning off interactive filer
  14931. operations during a large compression, otherwise you may lose files.
  14932. 6.05
  14933. He also writes: Filer_Run can be used in an alias to run CFSæd files
  14934. directly from the normal Filer window. To perform this trick, issue the
  14935. command:
  14936. 6.05
  14937. Set Alias$@Runtype D96 !Filer_Run CFS#%0
  14938. 6.05
  14939. and just double click on the file to load it.
  14940. 6.05
  14941. Confusing MS-DOS and ADFS discs
  14942. 6.05
  14943. Marc Evans warns that if you regularly use both DOS and ADFS floppy
  14944. discs, it is easy to get confused about which is which. You can easily
  14945. find yourself copying to a DOS disc thinking it is ADFS; file and
  14946. application icons appear in the destination window just as normal and
  14947. you can be none the wiser (apart from the copying being rather slower)
  14948. until you run out of space after 720Kb.
  14949. 6.05
  14950. Disc corruption
  14951. 6.05
  14952. Keith Raven has experienced two strange floppy disc faults since
  14953. upgrading. After deleting the font manager from a PD fonts disc (E
  14954. format), he found that three letters from one font had disappeared
  14955. although the disc was otherwise intact and verified OK. He was able to
  14956. load the font into !FontEd successfully for patching. The other problem
  14957. was a öbroken directoryò on a D format disc, just after deleting a
  14958. couple of redundant items (including a !System directory) left over from
  14959. RISC¡OSá2. The disc verified properly, but a disc sector editor showed
  14960. two chunks of continuous Ns in sector 1 (on track 0 head 0). He has
  14961. noticed that ADFS buffers is set to 8 (the default?) and wonders whether
  14962. there is still a bug there.
  14963. 6.05
  14964. (We reported two months ago Acornæs telephone help line comment that the
  14965. bug which made it advisable to configure the ADFS buffers to zero had
  14966. been fixed. We also reported Computer Conceptsæ claim that, unless the
  14967. buffers are configured to zero, it is vital to dismount disks before
  14968. removing them for good from the machine because, otherwise, there may be
  14969. trouble later. Does anyone have any proof either way?)
  14970. 6.05
  14971. XOB Remote Logon
  14972. 6.05
  14973. Raymond Wright says that XOB Remote Logon, which allows a BBC Micro or
  14974. another Archimedes to access a hard disc attached to an Archimedes via
  14975. Econet, is in trouble. He thinks that it is not loading binary files to
  14976. the correct locations in the BBCæs memory.
  14977. 6.05
  14978. Printing!!!
  14979. 6.05
  14980. (This seems to be the area that is causing the greatest grief. If anyone
  14981. thinks he knows the answers, please get in touch! A number of people
  14982. have commented favourably on the Ace drivers. Perhaps, if the people at
  14983. Ace think they have got printing sussed, they might be able to help with
  14984. some of these problems.)
  14985. 6.05
  14986. (Funnily enough, Tony Cheal of Ace Computing was hoping to write us an
  14987. article about printer drivers. As I well know, when you are running your
  14988. own business, things can get very hectic. Anyway, if you do get time,
  14989. Tony, your fans are waiting in eager anticipation! Ed.)
  14990. 6.05
  14991. Printer buffer
  14992. 6.05
  14993. Several people have commented that the printer buffer doesnæt work
  14994. properly. Can this be true or is it that we donæt understand how to use
  14995. it properly?
  14996. 6.05
  14997. Richard Burnell says that if he configures the buffer to, say, 300Kb and
  14998. tries to print a draw file with lots of text, the computer hangs and not
  14999. even the escape key works. (He owns a KX-P1081 dot matrix printer.)
  15000. 6.05
  15001. Mike Kinghan writes: The RISC-OS 3 feature that I had longed for most
  15002. was background printing. Running off a manual on my LaserJet II under
  15003. RISC-OS 2 could monopolise the computer for half a day. How annoying
  15004. then to discover that prints executed from familiar applications are not
  15005. automatically run in background under the new OS. A partial remedy,
  15006. however, is to use the new Print Manageræs capability to substitute a
  15007. file for any installed printer. First take the Printer Control option
  15008. from your printeræs iconbar menu. Then select the Connection dialogue
  15009. and nominate a file of your choice in place of the installed printer.
  15010. This will make applications write to that file when they think they are
  15011. printing, and they will do this much more speedily. At your convenience,
  15012. redirect the printer connection to your physical printer and drag your
  15013. print files to the printer icon. Now they will be printed in background,
  15014. allowing you to get on with your work. (But what a palaver! Surely there
  15015. must be a simpler way?)
  15016. 6.05
  15017. Change in printer initialisation behaviour
  15018. 6.05
  15019. T. J. Bennett uses First Word Plus version 1 with an A3000 and a Citizen
  15020. Swift 24. In order to make best use of this combination, he has written
  15021. a !Boot file which redefines screen characters using VDU23 and also
  15022. defines some characters not available in the standard printer character
  15023. set as download characters to the printer. He has also modified his
  15024. printer driver. This all worked in RISC¡OSá2, the printer buffer
  15025. allowing the booting process to continue to completion whether the
  15026. printer was on line or not. In RISC¡OSá3, however, the !Boot will not
  15027. finish until the printer is connected, switched on and on line. (öA
  15028. giant step towards the Neanderthal,ò Mr Bennett comments.) He has tried
  15029. setting PrinterBufferSize to ridiculous sizes with no discernable
  15030. effect, also RMASize and SystemSize. Does anyone have any suggestions?
  15031. (I wonder if this problem is related to that described by Mick Day last
  15032. month ù see Archive 6.4 p9.)
  15033. 6.05
  15034. Mr Bennett has noticed that there is a limit to the amount of data in
  15035. the printer driver for defining each character (contrary to what the
  15036. manual says) so this cannot be used as the source of download character
  15037. data.
  15038. 6.05
  15039. Disc swapping
  15040. 6.05
  15041. Peter Prewett reports that, after loading the !Printer application on
  15042. the iconbar and then loading Impression Junior, whenever he tries to
  15043. print, he is required to insert the floppy disc from which he loaded the
  15044. original printer application. He says he ötried loading system and scrap
  15045. from the printer and other discs, none of which makes any difference.ò
  15046. (My suggestion is that the problem is a misunderstanding of the purpose
  15047. of the !Scrap application: the result of running this is simply to tell
  15048. the computer that the disc it is on is the place to store temporary
  15049. öscrapò files. Thus by öloadingò !Scrap from a floppy you tell the
  15050. computer to use that floppy for temporary storage during operations like
  15051. printing. If you have a hard disc, it is best to copy !Scrap onto its
  15052. root directory and to ensure that the first thing you do each time you
  15053. turn the computer on or reset it is to open a Filer window on that root
  15054. directory so that the location of !Scrap will be öseen.ò)
  15055. 6.05
  15056. Peter goes on to comment that system and scrap files are difficult to
  15057. use and must be made totally transparent to the end user. öNobody should
  15058. have to set up the computer with these files as it is certainly not
  15059. user-friendly.ò Does anyone want to volunteer to write a user-friendly
  15060. article about system and scrap files? Does anyone have any ideas about
  15061. how these might be better organised in a future version of the operating
  15062. system?
  15063. 6.05
  15064. Mono greyscales (!?)
  15065. 6.05
  15066. A number of people have noticed that the so-called ömonoò option in the
  15067. RISC-OSá3 printer drivers actually produces grey scales when rendering
  15068. drawfiles (although sprites are printed in black and white as might be
  15069. expected).
  15070. 6.05
  15071. LaserDirect
  15072. 6.05
  15073. I may have given the impression in the December column that it is
  15074. impossible to print rotated text out of a LaserDirect. John Winter has
  15075. pointed out that this can be done fairly easily by creating the text in
  15076. Draw and using the Convert to path menu option; this will then print
  15077. like any drawfile. Furthermore, the rotated text can be imported into
  15078. Impression, again just like any drawfile.
  15079. 6.05
  15080. John Winter has also found that in order to run the RISC¡OSá3 !Printers
  15081. application after using a Computer Concepts RISC¡OSá2 driver, you have
  15082. to run the following * commands (either at the command line or in a Task
  15083. window or in an Obey or Command file):
  15084. 6.05
  15085. *RMKill PDriver
  15086. 6.05
  15087. *RMReinit PDriver
  15088. 6.05
  15089. Several more people have reported problems with the quality of print
  15090. from LaserDirect printers. Michael Lowe says he has considerable
  15091. problems printing sprites, mostly incorporated into Impression docu
  15092. ments: black areas are often patterned, grey areas sometimes donæt print
  15093. and occasionally the whole of the text area breaks up giving a granular
  15094. appearance. However, the worst thing, he says, is the unpredictability
  15095. of the behaviour.
  15096. 6.05
  15097. There may, however, be an answer to this (but no solution until the new
  15098. drivers appear sometime this year, with luck): Computer Concepts have
  15099. written to Tim Powys-Lybbe saying: öWe are now(!) aware of a problem
  15100. with the combination of our LaserDirect drivers 2.05 and RISC¡OSá3.1.
  15101. The first Landscape page will print correctly, but on subsequent prints,
  15102. black output will be speckled. This only occurs when QuickText is off.
  15103. 6.05
  15104. öI would recommend that you turn on QuickText. If necessary, you should
  15105. install RISC¡OSá2 versions of Corpus and Homerton into your !Fonts
  15106. application on disc. If you get a speckled output, changing printing
  15107. resolution or reloading the driver will restore a black image.
  15108. 6.05
  15109. öThe next release of our drivers should clear up this problem.ò
  15110. 6.05
  15111. Timæs comment is that the output and the problem is a little worse than
  15112. their letter concedes.
  15113. 6.05
  15114. (And the problem also occurs fairly predictably on the BJ10 Turbo
  15115. Driver. Ed.)
  15116. 6.05
  15117. Alan Gentle recommends inserting a FontRemove statement in the !Boot
  15118. file, removing the ROM fonts, and to add Corpus, Homerton and Trinity to
  15119. the !Fonts directory on disc, i.e. the boot file should end:
  15120. 6.05
  15121. FontRemove Resources:$.Fonts.
  15122. 6.05
  15123. FontInstall <Obey$Dir>.
  15124. 6.05
  15125. (N.B. the dots at the end of each line are significant.)
  15126. 6.05
  15127. Alan also says Computer Concepts have sent him an update of PrinterLD,
  15128. version 2.05s (10-Aug-1992) which seems to work OK!
  15129. 6.05
  15130. When I started printing from Artworks, I found that the greyscales at
  15131. 600 dpi were rather distinctly graduated. At 300 dpi, the gradation is
  15132. much smoother but the individual colours have a much dottier appearance.
  15133. On CCæs recommendation, I have found that 600╫300 using Screen 2 gives a
  15134. good compromise.
  15135. 6.05
  15136. On the question of how long the upgraded printer drivers are taking to
  15137. produce, CC said (in a letter dated 17th December 1992): öWe have only
  15138. just received the source code (weæd have preferred proper documentation,
  15139. but there isnæt any) from Acorn. All our drivers require significant
  15140. changes to allow full RISC¡OSá3 compatibility. Since the RISC¡OSá2
  15141. drivers work with RISC¡OSá3, their conversion is not a priority.ò
  15142. 6.05
  15143. Printing after Artworks
  15144. 6.05
  15145. Roger King has found that, after printing from Artworks, computers need
  15146. to be switched off (<ctrl-reset> is not enough) before using new
  15147. applications that need to print hard copy. If this is not done, spurious
  15148. fine horizontal lines of about 4mm length are scattered throughout the
  15149. printed page. Has anyone any clues about this?
  15150. 6.05
  15151. Unwanted form feeds
  15152. 6.05
  15153. G. T. Smithæs means of preventing his Brother (Epson FX80 compatible
  15154. printer) from spewing out extra pieces of blank paper was to load the
  15155. driver into !PrintEdit, delete the formfeed code ö12ò from the End of
  15156. Text Job and to add ESCö8ò (öignore paper emptyò) in the Start of Job
  15157. line.
  15158. 6.05
  15159. Unwanted line feeds in First Word Plus
  15160. 6.05
  15161. Dave Livsey suggests that the printer driver needs doctoring to remove
  15162. the extra line feed that it sends to the printer. Can anyone give
  15163. details?
  15164. 6.05
  15165. Editing printer drivers
  15166. 6.05
  15167. G. T. Smith says that he made the mistake of assuming that, having
  15168. copied his modified printer driver onto his hard disc, !Printers would
  15169. find it and the modification would take effect, but it didnæt. He says
  15170. you need to load !Printers onto the iconbar and re-install the driver by
  15171. dragging it into the Printer Control window from the !Printers menu.
  15172. 6.05
  15173. Tim Nicholson says that if you change the configuration settings of a
  15174. printer which is not the currently selected one (i.e. its icon is greyed
  15175. out), then the next time you print, the print manager uses the driver
  15176. you have reconfigured not the selected one.
  15177. 6.05
  15178.  
  15179. 6.05
  15180. PC Emulator
  15181. 6.05
  15182. Mike Small has found that PC programs such as Tetris run first time but
  15183. when they get to the point where they ought to re-load, i.e. when he
  15184. ödiesò, he gets the messages:
  15185. 6.05
  15186. M2ExHandle abort - Bad Entry Sequence
  15187. 6.05
  15188. *CD \Tetris
  15189. 6.05
  15190. FileCore in use (Error number &108A0)
  15191. 6.05
  15192. *Tetris
  15193. 6.05
  15194. He is using version 1.34 of the emulator, patched in accordance with the
  15195. Support instructions. (He assumes that the altering of the filetype of
  15196. the DOS partition to DOSDisc doesnæt apply to him because he uses
  15197. floppies.) He has a user port and MIDI on a basic A3000. Does anyone
  15198. have any ideas?
  15199. 6.05
  15200. Nik Kelly finds that his Quick Basic editor scrolls at a useful speed
  15201. now that he has an ARM3 and RISC¡OSá3, but has found that the freebie,
  15202. QB, that comes with MS-DOSá5, does not read his .BAS files.
  15203. 6.05
  15204. He also says that his real-time clock is now always wrong (using PC
  15205. emulator 1.6 and MS-DOS 3.3) and asks why?
  15206. 6.05
  15207. Richard Burnell says that version 1.81 of the emulator wonæt read Atari
  15208. format discs with RISC¡OSá3.10 and asks when the new version of the
  15209. emulator is due for release.
  15210. 6.05
  15211. Miscellaneous Hardware Tips
  15212. 6.05
  15213. Ground Control teletext adaptor
  15214. 6.05
  15215. Mike Williams found that his problem with this was a hardware problem
  15216. and nothing to do with RISC¡OSá3. He had changed to an A5000 and there
  15217. is a subtle difference in the hardware of the printer port. Ground
  15218. Control are offering an upgrade to a podule version Ö but he doesnæt
  15219. know where he is going to find a fifth podule slot!
  15220. 6.05
  15221. SCSI podule and MIDI board conflict
  15222. 6.05
  15223. Richard Burnell found that his Vertical Twist A3000 Econet MIDI/sampler
  15224. board would not work with his 8-bit Lingenuity SCSI podule because they
  15225. were competing for use of fast interrupts. Version 2.45 of the SCSI
  15226. firmware is now available and the MIDI port now works fine. (This
  15227. doesnæt sound like a RISC-OSá3 problem to me, but I will include it
  15228. anyway!)
  15229. 6.05
  15230. Pineapple digitiser
  15231. 6.05
  15232. The problem Tim Nicholson mentioned in Archive 6.3 p15 was cured by the
  15233. addition of an öextra decoupling capacitorò.
  15234. 6.05
  15235. Brainsoft expansion card
  15236. 6.05
  15237. Tim Nicholson reported (Archive 6.3 p15) that this didnæt work. Raymond
  15238. Wright says he thinks his works OK, but he has had problems with the
  15239. software in RISC¡OSá2, some of which have righted themselves in
  15240. RISC¡OSá3! (The sound module still seems to want to hog all available
  15241. memory, though.)
  15242. 6.05
  15243. Maths co-processor
  15244. 6.05
  15245. Raymond Wright says there is no built-in support in RISC¡OSá3 for the
  15246. maths co-processor card so he still has to load FPEmulator 3.2 from
  15247. disc.
  15248. 6.05
  15249. Impression dongle
  15250. 6.05
  15251. Roger Poweræs problem mentioned last month turned out to be a defective
  15252. dongle (apparently it was one of the very early ones), which CC have
  15253. replaced.
  15254. 6.05
  15255. G. T. Smith had a similar problem and while he was waiting for a
  15256. replacement dongle it was suggested that he should try öshorting all the
  15257. pins of the dongle with a piece of earthed kitchen foil.ò Apparently it
  15258. worked! (I suggest you only try this if you are confident you know what
  15259. you are doing.)
  15260. 6.05
  15261. Roger King reports that he had a problem with both laser printers and a
  15262. Deskjet 500 ejecting blank sheets of paper with spurious characters on
  15263. the first line of the new page, especially when printing from PipeDream
  15264. 4 documents. When the Impression dongles were removed the problem went
  15265. away.
  15266. 6.05
  15267. Keith Raven agrees that there is something strange. Once, after
  15268. switching off the computer and restarting, he tried printing from Basic
  15269. using <ctrl-B> but the computer locked up as if the printer wasnæt on
  15270. line. Loading !Printers and trying to print from !Edit caused the system
  15271. disc to run and the iconbar to flash but no output. Loading Impression
  15272. then caused most, but not all, of the previously öprintedò output from
  15273. !Edit to arrive at the printer. However, he could not repeat this. Since
  15274. he had previously used the printer successfully in similar circums
  15275. tances, he wonders if the problem might be something to do with printer
  15276. initialisation.
  15277. 6.05
  15278. Miscellaneous Hints & Tips
  15279. 6.05
  15280. Screen modes
  15281. 6.05
  15282. Peter Prewett says that mode 31 öflashes fastò on his A440/1 with an
  15283. Eizo 9060s Multiscan. He also says that mode 27 will not run on an A310
  15284. with an NEC Multiscan. (I also find that mode 31 is unusably flickery on
  15285. my Taxan 770 Plus, but surely one of the purposes in giving us such a
  15286. wide variety of modes is to give each user a greater chance of finding
  15287. some that suit his own particular monitor.)
  15288. 6.05
  15289. Marc Evans recommends non-multisync users to use mode 35 as their
  15290. configured mode because it gives a bit more room to work in without
  15291. decreasing resolution in the way mode 16 does.
  15292. 6.05
  15293. Desktop Boot files
  15294. 6.05
  15295. Colin Singleton has been puzzled to find that, after creating a Boot
  15296. file and rebooting, a number of applications that were running at the
  15297. time he created the Boot file failed to start up. The reason for this is
  15298. that only öRISC¡OSá3 awareò applications will be inserted automatically
  15299. into a !Boot file. (Apart from any other reason, the operating system
  15300. needs to be able to find out where on disc each application was loaded
  15301. from and it canæt do this unless the application is programmed to be
  15302. able to tell the operating system when asked. Originally, RISC¡OSá3
  15303. applications werenæt programmed to behave in this way.)
  15304. 6.05
  15305. If you want your Boot file to run an older application (including, for
  15306. instance, current versions of Impression) you have to edit !Boot and add
  15307. the appropriate instructions by hand. To do this (assuming you have
  15308. already created a Desktop Boot file), load !Boot into !Edit (the quick
  15309. way is to <shift-double-click> on it) and you will probably find a
  15310. number of lines reading öFiler_Boot ... ò followed by some reading
  15311. öFiler_Run ... ò. Immediately after these, add another line reading
  15312. öFiler_Run ò followed by the full path name of the application, and
  15313. repeat for each application you want to run. The process is described in
  15314. more detail in the User Guide starting at page 112.
  15315. 6.05
  15316. Colin Singleton has also tried, as the manual suggests, creating two
  15317. !Boot files so that he can switch at will from one öworldò to another.
  15318. However, when he tries to run them he gets a message öYou cannot have
  15319. two copies of !Alarm at once.ò Does anyone have any suggestions?
  15320. 6.05
  15321. When G÷tz Kohlberg had created a Boot file and tried rebooting, he got
  15322. an error message: önot enough memory or not within desktop worldò.
  15323. (Could this happen if the configured ölanguageò is not Desktop? (Number
  15324. 10 in RISC-OS 3.))
  15325. 6.05
  15326. Control of ARM3 cache
  15327. 6.05
  15328. G÷tz Kohlberg found that the *Cache on command turned the cache off and
  15329. *Cache off turned it on! He also found that when he installed the Aleph
  15330. One hare and tortoise module, the effect of clicking on the iconbar
  15331. icons was also reversed. His work-around for this problem is to include
  15332. *Cache on as the very first command in his !Boot file and to include the
  15333. command *Cache off immediately before the line that runs the !Arm3
  15334. application.
  15335. 6.05
  15336. ROM modules
  15337. 6.05
  15338. R. D. Attwood asks how he can find out which modules are in ROM so that
  15339. he doesnæt duplicate them in the system directory on disc. Simple: press
  15340. <ctrl-f12> to open a Task window and type RomModules at the star command
  15341. prompt. A list of modules in the system ROM and in the ROMS on any
  15342. podules installed on the machine will scroll past. To read the list and
  15343. print it or save it: bring up the Task window menu and choose the
  15344. öSuspendò option then treat the contents of the window just like any
  15345. other Edit window.
  15346. 6.05
  15347. To see what else is in ROM ...
  15348. 6.05
  15349. ... bring up the menu over the Apps icon on the iconbar and choose the
  15350. öOpen É$æò option. You can now explore all the resources stored in ROM.
  15351. 6.05
  15352. Toolsprites
  15353. 6.05
  15354. Several months ago, the Archive monthly disc included a nice collection
  15355. of ötoolò sprites designed to smarten up the appearance of window icons
  15356. (including things like 3D-effect sliders that look pushed-in when you
  15357. drag them). I found that the original set didnæt quite work properly,
  15358. but that simply by adding one extra sprite (öblicon22ò) copied from a
  15359. similar set on a recent Acorn User disc, I got a set which seems to work
  15360. fine. This set is on this monthæs program disc in a file called
  15361. öWin3Toolsò. To use it, I suggest you copy it into your !System
  15362. directory and include the command
  15363. 6.05
  15364. ToolSprites System:Win3Tools
  15365. 6.05
  15366. in your !Boot file. (Note: this file only includes ö22ò definitions for
  15367. ösquare-pixelò high resolution modes.)
  15368. 6.05
  15369. Shift key behaviour
  15370. 6.05
  15371. R. D. Attwood has found his left shift key giving a ñ symbol. On
  15372. investigation, he has found that under the key there are two contacts:
  15373. one gives ñ, the other ú. The !IntKey module on the Support disc seems
  15374. to solve the problem but, as he says, it should not be necessary to run
  15375. this. Has anyone any ideas?
  15376. 6.05
  15377. Shift-double-clicking into editors
  15378. 6.05
  15379. Marc Evans says that if you shift-double-click on a file to load it into
  15380. an editor, the editor can be confused about what filetype it is and can
  15381. save an Obey file as Text. (This doesnæt seem to happen with !Edit, but
  15382. it does with !StrongEd II. Without the PRM, I canæt be sure but I would
  15383. guess that what is happening is that a shift-double-click causes the
  15384. Filer to broadcast a message inviting applications to load the file as
  15385. if it were a text file. If !Edit picks it up, it presumably then reads
  15386. the directory information to find out what the filetype is, whereas
  15387. !StrongEd carries on assuming it is a text file. I wonder what other
  15388. editors like DeskEdit do?)
  15389. 6.05
  15390. Fix for SciCalc
  15391. 6.05
  15392. Colin Dean, one of the authors of SciCalc, has written in with a fix for
  15393. the bug in the +/Ö operator mentioned in Archive 6.3 p18.
  15394. 6.05
  15395. The +/Ö operator should always change the sign of the currently
  15396. displayed value, unless you are in the middle of entering an exponent,
  15397. in which case it should change the sign of the exponent. In practice, it
  15398. can produce bizarre results: e.g.
  15399. 6.05
  15400. enter    display
  15401. 6.05
  15402. 1E13   1E13
  15403. 6.05
  15404. +/Ö   1E-13
  15405. 6.05
  15406. =   1E-13
  15407. 6.05
  15408. +/Ö   3E-30
  15409. 6.05
  15410. The last displayed result should be Ö1EÖ13!
  15411. 6.05
  15412. To fix this alter the lines that read:
  15413. 6.05
  15414. 5340 IF entry$=ö0ò THEN entry$= FNtobase(dreg)
  15415. 6.05
  15416. 5350 IF base%=1 THEN
  15417. 6.05
  15418. 5360 IF (INSTR(entry$,öEò)=0) OR (F%=TRUE) THEN
  15419. 6.05
  15420. to read, instead:
  15421. 6.05
  15422. 5340 IF F%=TRUE THEN entry$= FNtobase(dreg)
  15423. 6.05
  15424. 5350 IF base%=1 AND F%=FALSE THEN
  15425. 6.05
  15426. 5360 IF (INSTR(entry$,öEò)=0)THEN
  15427. 6.05
  15428. Copying a directory into itself
  15429. 6.05
  15430. You canæt any more! (Marc Evans says.) (For those who donæt remember the
  15431. heady days when RISC¡OSá2 was young, one of its features was that it was
  15432. quite easy to fill a disc by recursively copying a directory into
  15433. itself!)
  15434. 6.05
  15435. Unplugging !Configure
  15436. 6.05
  15437. !Configure can be unplugged if you do not want the machine altered Ö
  15438. useful in a school situation! (Marc Evans)
  15439. 6.05
  15440. Bug in BASIC64
  15441. 6.05
  15442. A. G. Rimmer reports that there is a fault in BASIC64 in that the format
  15443. specification given by @% frequently behaves incorrectly for fixed
  15444. format (but not for E or G format). This is illustrated by the following
  15445. program:
  15446. 6.05
  15447. 10 REM >Double precision test
  15448. 6.05
  15449. 20 @%=öF30.2ò
  15450. 6.05
  15451. 30 PRINT; öWith @% = &ò;STR$~(@%);ö:òÉ
  15452. 6.05
  15453. 40 REPEAT
  15454. 6.05
  15455. 50 INPUT öNumber input: ò x
  15456. 6.05
  15457. 60 PRINT ö prints as ò x
  15458. 6.05
  15459. 70 UNTIL FALSE
  15460. 6.05
  15461. This produces the following output:
  15462. 6.05
  15463. Number input: 102.63
  15464. 6.05
  15465. prints as 1.03E2
  15466. 6.05
  15467. Number input: 1234.5678
  15468. 6.05
  15469. prints as 1.23E3
  15470. 6.05
  15471. Number input: 12.25
  15472. 6.05
  15473. prints as 12.25
  15474. 6.05
  15475. Number input: 0.16
  15476. 6.05
  15477. prints as 1.60E-1
  15478. 6.05
  15479. Acorn have acknowledged the fault and have told Mr Rimmer that there is
  15480. no work-around or fix for this problem at the moment.
  15481. 6.05
  15482. Limited precision of SciCalcæs display
  15483. 6.05
  15484. Mr Rimmer also observes that, whereas SciCalc calculates using floating
  15485. point numbers with 52 binary digits, which are equivalent to 15.7
  15486. decimal digits, you can only input decimal numbers with up to 10 digits
  15487. plus a two digit exponent and the program can only display results with
  15488. 10 significant figures (and 3-digit exponents up to the maximum possible
  15489. 308). What is wanted is a display for both input and results of a 15 or
  15490. 16 digit mantissa plus an exponent of up to 3 digits (up to the limit of
  15491. 308).
  15492. 6.05
  15493. Again Acorn has acknowledged the limitation but has said that a version
  15494. with extended display is not available. (I wonder whether Colin Dean
  15495. might be able to help?)
  15496. 6.05
  15497. Legible menus in 1st Word Plus
  15498. 6.05
  15499. In Archive 6.3 p12 there was a hint on altering the palette for First
  15500. Word Plus release 1.1 so that the menus are legible. This involved a
  15501. special Obey file. Gordon Lindsay-Jones suggests a different solution.
  15502. He first changed colour 14 to black and saved the altered palette in the
  15503. Library directory on the 1wp disc. Before he runs 1wp, he opens the
  15504. Library window and double-clicks on this palette, then when he finishes,
  15505. he opens the menu on the iconbar palette icon and selects Default to
  15506. restore the palette.
  15507. 6.05
  15508. (Mike Williams says version 0.01 of First Word Plus works fine!)
  15509. 6.05
  15510. Using RMFaster
  15511. 6.05
  15512. Mike Williams points out that C programs run much faster if you perform
  15513. *RMFaster SharedCLibrary and, similarly, programs that use the FPE a lot
  15514. (e.g. ray tracers) will benefit from *RMFaster FPEmulator. Under
  15515. RISC¡OSá2, these modules were loaded from disc so always ran in RAM. In
  15516. RISC¡OSá3, we can choose whether to put them in RAM for speed or leave
  15517. them in ROM to save memory.
  15518. 6.05
  15519. Draw crashing
  15520. 6.05
  15521. A number of people have had !Draw crash out on them but luckily it saves
  15522. work in progress as a valid drawfile in the Scrap directory before it
  15523. exits. Therefore, you should be able to recover your work by opening
  15524. !Scrap (shift-double-click on its icon), then opening the directory
  15525. called ScrapDir inside it.
  15526. 6.05
  15527. Wimp drag and double-click defaults
  15528. 6.05
  15529. Mike Williams finds that settings of 5 for WimpDoubleClickDelay and 10
  15530. for WimpDoubleClickMove make detailed work in !Draw much more manage
  15531. able. He wonders if anyone knows how to set them exactly like they were
  15532. in RISC¡OSá2.
  15533. 6.05
  15534. Mouse menu button behaviour
  15535. 6.05
  15536. In response to my tip in Archive 6.3 p19, Tim Nicholson says his mouse
  15537. menu button still returns a continuous 2. I then wondered if it was my
  15538. tracker ball that was at fault so plugged in my clapped out mouse, but
  15539. no: both mouse and tracker ball still return 2 for a moment then 0 when
  15540. the menu button is held down. Tim wonders if the mouse response is
  15541. configurable.
  15542. 6.05
  15543. Opening a root directory without running all the !Boot files (and
  15544. avoiding viruses)
  15545. 6.05
  15546. Tim Nicholson points out that just as control-double-clicking on a
  15547. directory icon opens a filer window on the directory without running the
  15548. boot files of all the applications in the directory, control-double-
  15549. clicking on a drive icon does the same for a root directory. As he says,
  15550. this is jolly useful for inspecting discs of unknown origin if you
  15551. suspect they might contain viruses.
  15552. 6.05
  15553. Keys that donæt work
  15554. 6.05
  15555. Tim Nicholson says that he ökeeps losing his Caps Lock buttonò and
  15556. occasionally <ctrl-shift-f12> doesnæt work. Is this a problem with an
  15557. application? (Or has he been dropping his porridge into the keyboard,
  15558. again?)
  15559. 6.05
  15560. Task manager
  15561. 6.05
  15562. (Tim Nicholson warns: before trying this save all your work!) Try
  15563. clicking <menu> over the Task Manager and choosing the Info option, then
  15564. click <menu> in the grey area where it says NAME: VERSION: AUTHOR:.
  15565. (Donæt get too excited.)
  15566. 6.05
  15567. Alarm
  15568. 6.05
  15569. Colin Singleton writes, in response to Ken Cowapæs comments on !Alarm
  15570. (Archive 6.3 p15): öI think he is wrong in claiming that it contains a
  15571. malfunction, but it is certainly less friendly than it might be. It does
  15572. indeed appear to insist that the start and finish dates are in the same
  15573. year when setting summertime, so you cannot set Off Oct 1992 and On
  15574. March 1993. Since we have now finished with BST for 1992, this is not
  15575. now a problem.ò
  15576. 6.05
  15577. He has found that after setting the two dates for 1993, the Alarm file
  15578. contains three dates, the third date being 7th February 1994. He
  15579. presumes that at 1 a.m. on that day, an alarm will go off to remind him
  15580. to set the summertime dates for that year! Does anyone know what the
  15581. date is for?
  15582. 6.05
  15583. Change in behaviour of !Boot files
  15584. 6.05
  15585. Under RISC¡OSá2, J.áLageu used to protect directories using the
  15586. principle that, whenever a directory was opened, all the boot files in
  15587. it were actioned (unless, I think, a sprite with the name of the
  15588. application had been loaded into the Wimp sprite pool). He finds that
  15589. RISC¡OSá3.10 on an A5000 only sees the !Boot file the first time it
  15590. öseesò the application. I wonder whether it is possible to tell the
  15591. operating system to forget that it has seen the application?
  15592. 6.05
  15593. JPEG
  15594. 6.05
  15595. Steve Dommett has written, in response to Roger Darlingtonæs query in
  15596. Archive 6.3 p28, to point out that there is a very useful implementation
  15597. of JPEG included in !ChangeFSI on the Support Disc. The required files
  15598. are cjpeg, djpeg and JPEGinfo (which provides instructions). !ChangeFSI
  15599. will read JPEG files in the same way as other file types but will need
  15600. plenty of spare space on the !Scrap disc. He has converted many sprites,
  15601. saving megabytes of disc space, with no appreciable loss of quality.
  15602. 6.05
  15603. Peter Sturdy adds that if you want to use JPEG from the command line, it
  15604. is helpful to add the following lines to your !Boot file:
  15605. 6.05
  15606. Set Alias$cjpeg <Obey$Dir>.cjpeg %%*0
  15607. 6.05
  15608. Set Alias$djpeg <Obey$Dir>.djpeg %%*0
  15609. 6.05
  15610. JPEG files can then be manipulated from a Task window without changing
  15611. directory or moving the files into the Library directory.
  15612. 6.05
  15613. (The point of JPEG is that it gives much greater savings in filing space
  15614. but the compression process is not completely reversible so the
  15615. decompressed image will not be identical to the original. For sprites
  15616. this doesnæt normally matter.)
  15617. 6.05
  15618. Directory catalogue display
  15619. 6.05
  15620. Raymond Wright has found an irritating change in the display of a
  15621. catalogue listing (outside the Desktop): on an 80 column screen you only
  15622. get three columns of files instead of 4 and in a 40 column mode you only
  15623. get one. Can there be a good reason for the change, he
  15624. asks?ááááááááááááááááááááá áááááááááááááááááááááá
  15625. 6.05
  15626. Two Questions
  15627. 6.05
  15628. Backup and the önextò slot
  15629. 6.05
  15630. If you back up an 800Kb floppy with the öNextò slot set to the standard
  15631. 640Kb, the backup will take two passes. In order to make the computer
  15632. copy the whole disc in one go, you have to set the Next slot to more
  15633. than 800Kb. Can it be told to use more than the current Next slot if the
  15634. memory is available?
  15635. 6.05
  15636. Icon dragging from filer windows
  15637. 6.05
  15638. There is a configuration option (which I canæt find now that I want it!)
  15639. that instructs RISC¡OSá3 öawareò applications to drag the whole icon
  15640. rather than just an empty square box when saving a file. Why on earth
  15641. isnæt the Filer programmed to do the same when you drag an icon from a
  15642. Filer window? ááááááááááááááááááááááááááááááááááááá
  15643. áááááááááááááááááááááá á
  15644. 6.05
  15645. Improvements over RISC¡OSá3.0
  15646. 6.05
  15647. Paul Skirrow lists the following improvements:
  15648. 6.05
  15649. Å   after a Shutdown the Restart button works properly and restarts the
  15650. Pinboard correctly
  15651. 6.05
  15652. Å   the ADFSBuffers configuration now works correctly and speeds up disc
  15653. access significantly (although there may still be a problem in 1Mb
  15654. machines).
  15655. 6.05
  15656. Å   Paint handles 256 grey scale sprites correctly and also 256 colour
  15657. sprites can have any of their colours changed independently (Iæd
  15658. appreciate an article on the changes in colour handling in RISC¡OSá3 ù
  15659. starting with the basics like the points mentioned here.)
  15660. 6.05
  15661. Å   an HP Laserjet / Deskjet bug has been cured.
  15662. 6.05
  15663. Å   there is a new X, Y offset facility in the printer driver system,
  15664. separated from the öpaper marginsò (which now specify which area the
  15665. printer driver should allow printing in, although it would make more
  15666. sense to set the top left values to be the same). Paul says this could
  15667. have some other benefits: you should be able to specify negative offsets
  15668. to indicate that the printer must move the print head some distance to
  15669. actually reach the paper, which might be useful when printing on labels.
  15670. Unfortunately, there is a bug: the X, Y origin is not stored and always
  15671. defaults to zero! (My mind goes numb when I read this sort of descrip
  15672. tion. Can anyone help with an idiotsæ guide to printer margins?) (Gerald
  15673. Fitton, in Archive 6.4 p39, admitted to not really understanding how it
  15674. all worked but gave an empirical approach in his PipeLine column. Ed.)
  15675.  
  15676. 6.05
  15677. Å   Printer drivers now set the page length from the önumber of text
  15678. linesò specification, and a number of other printer problems have been
  15679. cured.
  15680. 6.05
  15681. Å   Starting up is quicker (10 seconds quicker on an A5000).
  15682. 6.05
  15683. Å   Some useful extra screen modes are provided.ááA
  15684.  
  15685.  
  15686.  
  15687. Hints and Tips
  15688. 6.4
  15689. Å   Refilling BJ300/330 Ink Cartridges Ö The cartridges have a ösoak upò
  15690. pad in them as well as the ink sachet so if the pad is black and full of
  15691. waste ink you canæt refill them! or can you? This is how to do it.
  15692. 6.4
  15693. Split the cartridge along the seam and lift off the top. It is only
  15694. lightly tacked together so its quite easy to prise apart.
  15695. 6.4
  15696. (The next bit is messy so use disposable gloves so you do not get ink
  15697. over your hands.)
  15698. 6.4
  15699. Lift out the ink sachet (keep it the same way up) and then the pad and
  15700. wipe clean the cartridge. Dispose of the pad in a plastic bag, trying
  15701. not to get too messy.
  15702. 6.4
  15703. I used kitchen roll for the new pad. Cut about 12 pieces to the size and
  15704. shape of the pad then place in the cartridge, now place the sachet on
  15705. top. Keep it the same way round to make sure the needle hole lines up
  15706. with the needle in the printer.
  15707. 6.4
  15708. Thatæs what the safety flap is for that drops down when you remove the
  15709. cartridge so you donæt jab yourself.
  15710. 6.4
  15711. Replace the top of the cartridge, securing it with just a couple of
  15712. drops of glue so it can be removed again, it is now ready to be filled.
  15713. 6.4
  15714. I took the advice of Stuart Bell (Archive 4.5 page 7) and used Quink
  15715. Permanent Black @ ú1.70p for 54ml. The sachet takes 40ml, so donæt over-
  15716. fill it. Obtain a 20ml syringe and 21 gauge needle from your chemist. (A
  15717. 20ml syringe is about the best as larger ones tend to be very
  15718. expensive.)
  15719. 6.4
  15720. Carefully fill the sachet making sure the needle goes in the same hole.
  15721. If you make another hole, air can get in and cause problems.
  15722. 6.4
  15723. Donæt forget to wash out the syringe and needle afterwards.
  15724. 6.4
  15725. So, at the cost of approx ú1.70p plus the syringe and a few sheets of
  15726. kitchen roll, you now have a refilled ink cartridge which would normally
  15727. cost about ú10 to refill and between ú15 Ö ú20 for a new one.
  15728. 6.4
  15729. If any of you wonder what the soak up pad is for, when the printer is
  15730. switched on, ink is jettisoned through the nozzles to clean them and
  15731. this then runs down into the cartridge.
  15732. 6.4
  15733. Å   D-type connector problems Ö In Archive 4.8 p7, there was a tip about
  15734. taking the washers from under the hexagonal pillars of the D-type
  15735. connectors. I think it is worth re-stating it for those readers who
  15736. missed it. My A310 was in a Énot workingæ state the other day Ö it
  15737. refused to produce any green. I checked that the two screws holding the
  15738. D-plug into the socket were tight and checked out the monitor and lead
  15739. which worked fine, but still no green. A few days later, I remembered
  15740. the tip, removed the washers and the green returned.á Les May,
  15741. Rochdale
  15742.  
  15743. Using RISC-OSá3
  15744. 6.4
  15745. Hugh Eagle
  15746. 6.4
  15747. I hope that all who have ordered RISC-OSá3 upgrades will have received
  15748. them by the time this issue is published and that those who have been
  15749. waiting to make up their minds about upgrading will have been suffi
  15750. ciently encouraged by now to go ahead. There will be considerable
  15751. advantages to all Archimedes users if we all use the same operating
  15752. system: above all programmers will be able to use the new improved
  15753. features without having to worry about backwards compatibility.
  15754. Inevitably, this column will tend to contain quite a lot of negative
  15755. material about difficulties that some people have had, but it is
  15756. important to appreciate that most upgraders have had very little real
  15757. trouble (some inconvenience, perhaps, but not insuperable problems).
  15758. There are genuine advantages in RISC-OSá3, most programs work well and I
  15759. believe that most users are pleased with it.
  15760. 6.4
  15761. The deadlines for the December and January editions of Archive have been
  15762. concertinaæd close together (because of Christmas, etc) so there has
  15763. been no time for any reactions to the first RISC-OSá3 column. However,
  15764. contributions have continued to arrive in response to the original
  15765. request ù several more problems, criticisms, etc but also some interest
  15766. ing hints & tips.
  15767. 6.4
  15768. Please send anything that you think may be relevant either to Archive or
  15769. to me, Hugh Eagle at 48áSmithbarn, Horsham, Sussex  RH13á6DX.
  15770. 6.4
  15771. Fitting the chips to an A310
  15772. 6.4
  15773. The upgrade to my A310 with an IFEL carrier board was quite straightfor
  15774. ward, with the help of good instructions. IFEL recommend that you remove
  15775. the motherboard, as a fairly good pressure is required to insert the
  15776. carrier board. I encountered no problems but the soldering of three
  15777. wires from the carrier board on to the legs of a chip, is not for the
  15778. faint hearted. (Memories of my Beeb days came flooding back). (Roger
  15779. Power.)
  15780. 6.4
  15781. Configuring for a SCSI hard drive
  15782. 6.4
  15783. The configure application is OK apart from the settings appertaining to
  15784. my Oak SCSI filing system. I have overcome this by a separate !Config
  15785. Obey file that I run as well as Configure and which reads as follows:
  15786. 6.4
  15787. *configure drive 4
  15788. 6.4
  15789. *configure filesystem SCSI
  15790. 6.4
  15791. *SCSI
  15792. 6.4
  15793. *configure SCSIDrive 4
  15794. 6.4
  15795. *OPT 4,2
  15796. 6.4
  15797. This is obviously only needed after a factory reset which shouldnæt be
  15798. very often. Unfortunately, at the moment it is, as further problems have
  15799. now occurred. Namely my Impression doesnæt read the Dongle all the time
  15800. and appears to require a factory reset. This is only since the arrival
  15801. of RISC-OS 3.1 and I have yet to find out whether or not the Dongle (or
  15802. maybe even RISC-OS 3.1) is at fault. Obviously I have checked all the
  15803. connections over and over again. (Roger Power.)
  15804. 6.4
  15805. (Roger, I suspect itæs more likely to be a hardware problem on the
  15806. p.c.b. after fitting the I.F.E.L. ROM upgrade in your A310. There are no
  15807. problems, that we know of, with dongles. Ed.)
  15808. 6.4
  15809. 5╝ö floppy drive
  15810. 6.4
  15811. My external 5╝ö floppy drive is too slow for my Archimedes, with the
  15812. result of the heads chattering alarmingly. I had previously got round
  15813. this problem with the command *Configure STEP 3 6. However, RISC-OS 3.1
  15814. does not appear to accept this, only STEP 3 3. Can anyone help, please?
  15815. (Roger Power.)
  15816. 6.4
  15817. LaserDirect printer driver
  15818. 6.4
  15819. (Incidentally, Computer Concepts have told me that öRISC-OSá3 compatible
  15820. printer drivers should be available around the middle of next year. This
  15821. will cover TurboDrivers, FaxPack and LaserDirectò HE)
  15822. 6.4
  15823. In RISC-OS 2, I solved the problems of using a LaserDirect printer on a
  15824. machine to which a parallel printer is also attached, by including a
  15825. simple driver in an application which resides on the iconbar and does
  15826. lots of idiosyncratic things which suit my personal use of the machine.
  15827. The driver stores data dragged to it in a buffer and outputs it to the
  15828. dot-matrix line by line on each Wimp_Poll with reason code 0. This
  15829. enables me to leave the LaserDirect on the iconbar. If I want to print
  15830. some text or Basic, the data is dragged with <shift> held down,
  15831. otherwise the data is presumed to represent an address, which is
  15832. formatted for the 9-line labels with which, by default, the printer is
  15833. loaded. This is very handy, because I can drag the address directly out
  15834. of a DeskEdit or Impression window. My beef is that my routine orig
  15835. inally tested for a connected printer, thus:
  15836. 6.4
  15837. DEFPROCChPr:*FX5,1
  15838. 6.4
  15839. VDU2,1,0,3
  15840. 6.4
  15841. SYSöOS_Byteò,152,3 TO ;f%: f%=f%AND2
  15842. 6.4
  15843. IFf%=0SYSöOS_Byteò,145,3
  15844. 6.4
  15845. *FX5,5
  15846. 6.4
  15847. ENDPROC
  15848. 6.4
  15849. Thus, if the 0 byte inserted into the printer buffer is still there, the
  15850. printer is not on and the data are output to screen via a command
  15851. window; otherwise, they go to the printer; f% being the determining
  15852. flag. Now, I can understand that it is an enhancement to RISC-OS to wait
  15853. if the printer is off, but I find it is wholly unacceptable that the
  15854. machine is locked up by so simple an event. The OS_Byte no longer works,
  15855. since presumably the machine is stuck at the end of line 3200! Now, the
  15856. RISC-OS driver is not stopped by such an event, but multitasks happily
  15857. waiting for the printer to be switched on. Clearly some routine is
  15858. available to deal with the situation; why could the release documenta
  15859. tion not give a clue?
  15860. 6.4
  15861. I have had to abandon the routine temporarily because, if I wished to
  15862. display a file on screen, the printer was incidentally tested first.
  15863. This is no longer possible, unless I validate <escape> with *FX229
  15864. before calling the routine and reset on exit; this means exiting via the
  15865. error handler, however, and is one of the more difficult parts of Wimp
  15866. programming, I find! Any suggestions? (Mick Day.)
  15867. 6.4
  15868. LaserDirect and ROM fonts
  15869. 6.4
  15870. As mentioned last month, the current version of the Computer Conceptsæ
  15871. LaserDirect printer drivers are not fully RISC-OS 3 compatible. Thus
  15872. they will not cope with the extra features of Draw such as rotated text
  15873. or sprites. Furthermore, they will not find all of the fonts in the ROM-
  15874. based resources filing system. In particular, the italic versions of
  15875. both Homerton and Corpus are not seen. It is necessary to have the old
  15876. copies of the Homerton and Corpus fonts installed in the disc !Fonts
  15877. directory. (Brian Cowan.)
  15878. 6.4
  15879. (I find that if I try to print these fonts from Impression, it refuses
  15880. to print but does allow me to carry on, whereas Draw locks up the
  15881. machine. If this is a printer driver problem it makes Computer Conceptsæ
  15882. apparent lack of interest in bringing out new drivers all the more
  15883. frustrating. If they do appear in öthe middle of next yearò that will be
  15884. about 20 months after the original release of RISC-OSá3! HE)
  15885. 6.4
  15886. Dot matrix printers: formfeeds
  15887. 6.4
  15888. I have yet to find a way of stopping the RISC-OS dot-matrix printer
  15889. driver from issuing a concluding formfeed when a short piece of text is
  15890. dropped on the icon and printed. I prefer to control such things myself;
  15891. any ideas? or am I, after all, an idiot? (Mick Day.)
  15892. 6.4
  15893. DFS discs: donæt try öfreeò space
  15894. 6.4
  15895. Put a DFS disc in drive 0 and click; the error window tells you it is an
  15896. unrecognised format. However, if you put a DFS disc in drive 0 and click
  15897. on ÉFreeæ you will crash the machine with ÉFile core in useæ rearing its
  15898. ugly head! Couldnæt the existing disc checking routines have been
  15899. invoked before plunging into the ÉFreeæ sequence? (Mick Day.)
  15900. 6.4
  15901. Naming the RAM disc
  15902. 6.4
  15903. RISC-OS 2 used RAM:$ as the prefix on the RAMdisc filer window and
  15904. Filer_OpenDir worked with it quite happily. However, you had to find out
  15905. by trial and error what discname to use in order to get sense out of,
  15906. e.g.
  15907. 6.4
  15908. SYS öRamFS_FreeSpaceò,öRamDisc0ò TO room% : IFroom%>X% room%=0 : ENDPROC
  15909. 6.4
  15910. Acorn could have detailed this irritating time-waster somewhere (like
  15911. the PRM). Now, I appreciate that RAM::RamDisc0.$ is generically the
  15912. correct format to use in the Acorn file system protocols and clicking on
  15913. the icon in RISC-OS 3 opens a window with that title. For backwards
  15914. compatibility, *Filer_OpenDir RAM:$ still works; jolly good. However, if
  15915. your software issues the command and you have already opened a window,
  15916. RAM::RamDisc0.$, from the iconbar, you get a second window identical in
  15917. all save the title, RAM:$! (Mick Day.)
  15918. 6.4
  15919. Operating system version
  15920. 6.4
  15921. The PRM tells us that SYSöXOS_Byteò,0,0 prints the version string: so it
  15922. does. However, SYSöOS_Byteò,0,1 TO ,A is supposed to return the OS
  15923. version number in A but it does not seem to do so. RISC-OS 2 and RISC-OS
  15924. 3 on my machines both return 6 (the SYS number for OS_Byte)! However,
  15925. SYSöXOS_Byteò,0,0 TO A does return, in (A+4), the address of the version
  15926. string, so it can be extracted in the time-honoured manner. (Mick Day.)
  15927. 6.4
  15928. MS-DOS: file extensions and formatting
  15929. 6.4
  15930. The MultiFS utility is not required in RISC-OS 3; DOS discs and DOS
  15931. partitions on hard discs may be read directly with the new operating
  15932. system. I think that what Acorn have done is to integrate MultiFS into
  15933. the machineæs filers as an Image filing system. However, I cannot obtain
  15934. all the old facilities of MultiFS. In particular, it is not clear
  15935. whether the hierarchical method of dealing with file extensions can be
  15936. used; this was particularly useful. Also, I see that you can copy the
  15937. boot sectors from one DOS disc to another from the command line using
  15938. *CopyBoot, but I donæt know if this can be done from the desktop as an
  15939. option while formatting. Does anyone know? (Brian Cowan.)
  15940. 6.4
  15941. Compression
  15942. 6.4
  15943. CC have told me that there is a bug in version 1.10 of Compression which
  15944. can cause a corruption if a file is dragged between a CFS window and the
  15945. corresponding uncompressed filer window. If this is not done, Compres
  15946. sion should work OK. (Brian Cowan.) (See also the comment by Jochen
  15947. Konietzko in last monthæs column.)
  15948. 6.4
  15949. Wish list for RISC-OSá4 (R. W. Darlington)
  15950. 6.4
  15951. Å   When I use Name Disc from desktop, I want to see it display the
  15952. present disc name in the writable icon. (With my setup it does display
  15953. the name of the hard disc but not that of a floppy! HE)
  15954. 6.4
  15955. Å   When I copy across a group of files from one directory to another, I
  15956. want to see the Filer check that there is sufficient disc space for the
  15957. copied files to fit before it starts to copy them. (Also, in the case of
  15958. D format discs, that the disc wonæt need compacting.)
  15959. 6.4
  15960. Å   I want to see it copy a group of files from one disc to another a
  15961. little more intelligently than it does at the moment. I wish to see it
  15962. write all the directory information in one go, then write all the files,
  15963. instead of continually moving the heads across the surface of the disc
  15964. for each little file it writes to disc, which takes it an age!
  15965. 6.4
  15966. Å   When I Set Type from Desktop, I want to see a list of possible
  15967. options, along with their icons, like !SetType by Emmet Spier.
  15968. 6.4
  15969. Å   In !Edit, I want to see an option to ÉSelect Allæ.
  15970. 6.4
  15971. Å   In !SciCalc, which uses BASIC64, I want to see it display figures to
  15972. the full precision of the Basic, 18 significant figures or so and not
  15973. the 10 displayed at present. Also, I want to see it display exponents
  15974. like this ö╫1018ò and NOT öE18ò. I also want to see an option to select
  15975. engineering or scientific notation.
  15976. 6.4
  15977. Å   When deleting columns at the far right hand edge of a sprite, it
  15978. deletes too many columns.
  15979. 6.4
  15980. Å   If I save a sprite (using !Paint) of just one pixel in height (any
  15981. length?) and colour it a different colour than desktop grey, then when I
  15982. use this sprite to create a backdrop using the !Pinboard, not only does
  15983. it take an incredible amount of time to draw the backdrop, it also uses
  15984. the wrong colour. It comes out in desktop grey! Is this a problem with
  15985. !Paint or !Pinboard? (Or is the user making unreasonable demands? HE)
  15986. 6.4
  15987. Å   In the Set Copy Options, I want to see an option whereby it can be
  15988. made to ask for confirmation only if a deletion is being made, rather
  15989. than just an access request or a copy command.
  15990. 6.4
  15991. Å   Now that some fonts are inside RISC-OSá3 itself, I want to see a
  15992. configure option to set the desktop default font to other than the
  15993. system font.
  15994. 6.4
  15995. Å   I also want to see a new MODE equivalent to MODE 31 in every way
  15996. except that the pixel units are set such that all icons and everything
  15997. on screen appears half the size. Or, do the same for MODEs 18, 19, 20,
  15998. and 21.
  15999. 6.4
  16000. Å   When I insert a disc with a foreign format, e.g. an IBM formatted
  16001. disc, into the drives, I want to see a little more obviously that it is
  16002. a foreign format. Why not have the window header in a different colour,
  16003. e.g. red! Or do it some other way if you must, but make it immediately
  16004. obvious that it is not a native format disc.
  16005. 6.4
  16006. Å   When a window now goes off screen and the bottom right-hand Ésizeæ
  16007. control is grabbed, the window increases in size upwards when it should
  16008. not. (Isnæt this one of the intended improvements in RISC-OSá3? HE)
  16009. 6.4
  16010. Pinboard backdrop sprites
  16011. 6.4
  16012. R. W. Darlington has also sent in a collection of 74 sprites suitable
  16013. for tiling the backdrop, a voice module (which sounds to me as if it
  16014. might have been generated not a billion light years from the Sirius
  16015. Cybernetics Corporation) and some suggested modifications to the !Boot
  16016. file which will sound the voice module and display a different backdrop
  16017. each time the computer is re-booted.
  16018. 6.4
  16019. The modifications to the !Boot file read as follows:
  16020. 6.4
  16021. RMEnsure PinVoice 0 RMLoad PinVoice
  16022. 6.4
  16023. CHANNELVOICE 1 10
  16024. 6.4
  16025. SOUND 1 &FFF1 60 160
  16026. 6.4
  16027. WimpMode 31 :REM to suite my sprites
  16028. 6.4
  16029. Run ADFS::HD4.$.PinSp.RenSprites
  16030. 6.4
  16031. Pinboard
  16032. 6.4
  16033. Backdrop -T ADFS::HD4.$.PinSp .Sprit01
  16034. 6.4
  16035. This assumes that the PinSp directory contains the backdrop sprites and
  16036. an Obey file called RenSprites which simply cycles the sprite names and
  16037. reads as follows:
  16038. 6.4
  16039. Rename ADFS::HD4.$.PinSp.Sprit01 ADFS::HD4.$.PinSp.Sprit00
  16040. 6.4
  16041. Rename ADFS::HD4.$.PinSp.Sprit02 ADFS::HD4.$.PinSp.Sprit01
  16042. 6.4
  16043. ......
  16044. 6.4
  16045. Rename ADFS::HD4.$.PinSp.Sprit00 ADFS::HD4.$.PinSp.Sprit74
  16046. 6.4
  16047. Screen blanker configuration
  16048. 6.4
  16049. Does anyone know which *configuration command sets the blank out time,
  16050. or where this appears in the *Status data. I can set it using Acorns
  16051. !Configure program in the Apps directory, but cannot find it elsewhere
  16052. for use by a star command. (Roger Darlington.)
  16053. 6.4
  16054. *Filer_Run syntax
  16055. 6.4
  16056. My tip last month about using *Filer_Run with a variable application
  16057. name was unnecessarily convoluted. Although *Filer_Run <App$Dir> doesnæt
  16058. work, *Filer_Run <App$Dir>.!Run does.
  16059. 6.4
  16060. Fitting RISC-OS 3.1 to Computerware/Avie/Atomwide RAM upgrades
  16061. 6.4
  16062. The new RISC-OS ROMs are easily fitted into the four sockets provided on
  16063. the main RAM board. The ROMs should be fitted as described in the
  16064. instructions supplied with the RISC-OS upgrade.
  16065. 6.4
  16066. Locate the two links on the RAM board and swap the jumper to position B
  16067. for both.
  16068. 6.4
  16069. Locate LK12 on the main PCB, this is just under the RAM PCB where the
  16070. cable enters from the left. There should be two links placed in the
  16071. east-west postion. Remove these links and replace them in the north-
  16072. south position.
  16073. 6.4
  16074. LK12 is not always fitted and exists as a pair of PCB tracks on the
  16075. topside of the main PCB. These can be cut using a small sharp knife. The
  16076. new links can then be made on the underside of the PCB using tinned
  16077. copper wire and a soldering iron Ö as shown below.
  16078. 6.4
  16079. A310 Issue 1 PCBæs do not have LK12 fitted at all and require more
  16080. difficult modification. Please contact Avie for assistance.
  16081. 6.4
  16082. The fitting of RISC-OS 3 will be performed by Avie for ú6.50 + VAT Ö
  16083. this charge is simply to cover return carriage.ááA
  16084. 6.4
  16085. Å   ABC Compiler Ö Iæve followed the discussions in Archive about the
  16086. relative merits of the RiscBasic and ABC compilers with interest
  16087. (Archive 6.1 p49). I donæt feel that there is much weight to the
  16088. argument that ABC is compiling a language different from Basic V. The
  16089. differences are quite small. The evening I received the ABC package, I
  16090. got a program of over a thousand lines running with the compiler in
  16091. about an hour which included writing some code to initialise several
  16092. arrays and removing some redundant code. When I write programs under the
  16093. Basic V interpreter, I just take the differences into account.
  16094. 6.4
  16095. My major grumble is that even when I bought the ABC package a year ago,
  16096. it had a minor bug which shows itself sometimes when the object code
  16097. icon is dragged to a directory Ö it requires the machine to be reini
  16098. tialised. An upgrade to the latest version, which presumably will have
  16099. corrected this bug, will cost me ú40, which I think is a bit steep if
  16100. itæs only the bug fix that is any help to me.á Les May, Rochdale
  16101. 6.4
  16102. Å   EasiWord 2 up(?)grade Ö I did have version 1.07 of Minervaæs EasiWord
  16103. and, after seeing the adverts for the WYSIWYG version, EasiWord2, I
  16104. decided to go for the upgrade.
  16105. 6.4
  16106. Now, I do not know anything about 1st Word Plus, so the fact that
  16107. EasiWord2 was similar conveyed nothing to me. However, when I tried this
  16108. new version, I was niggled to find that I couldnæt print without a RISC-
  16109. OS printer driver being installed.
  16110. 6.4
  16111. What was much worse was the fact that I could no longer send control
  16112. codes to my printer! Horror of horrors Ö I had lost the ability to print
  16113. in double height and in a choice of seven colours on my old Epson
  16114. LQ2500+. Let readers be warned!
  16115. 6.4
  16116. I wrote to Minerva and expressed my dismay about their new package. They
  16117. very kindly invited me to return version 2 for a refund or part
  16118. exchange. I took up their offer and they even gave me a new package of
  16119. their old EasiWord 1.07. Well done, Minerva!
  16120. 6.4
  16121. So, before you upgrade, be sure that it actually is an UPgrade for your
  16122. purposes.á Keith Lowe, Pickering
  16123. 6.4
  16124. Å   Scheme Ö If Sue Lawley asks me which book I want to take to a desert
  16125. island, without hesitation I will have to say ÉStructure and Interpreta
  16126. tion of Computer Programsæ by Abelson and Sussman. I reckon that after a
  16127. few years of studying it without any distractions, I would know how to
  16128. set about programming a computer. The language used by these authors is
  16129. Scheme, a stripped down, elegant and refined version of Lisp.
  16130. 6.4
  16131. If you think Lisp is just an acronym for ÉLots of Irritating Single
  16132. Parenthesesæ, think again. With even a simple parentheses-matching text
  16133. editor as supplied with EdScheme, that bogey disappears and you quickly
  16134. come to realise that the apparently strange syntax of Lisp-like
  16135. languages such as Scheme is in fact a very consistent and clear way of
  16136. expressing a computer program. Indeed, just as we in Britain are used to
  16137. seeing a Pascal-like pseudo-code used to express a fragment of code, US
  16138. books aimed at the academic community often use Lisp for the same
  16139. purpose.
  16140. 6.4
  16141. I had read about the first third of the Abelson book before taking the
  16142. plunge and buying EdScheme. What arrived was the Scheme optimising
  16143. incremental compiler and associated editor on a single disc, a thinnish,
  16144. 100 pages plus, User Guide and Reference Manual, and a thick, 300 pages
  16145. plus, Schemeræs Guide. This package is, in fact, a complete programming
  16146. course at a total cost of ú60 plus p&p.
  16147. 6.4
  16148. The guide is aimed rather firmly at the late secondary school market and
  16149. starts with a deceptively simple approach to programming by asking the
  16150. programmer to construct pencil and paper machines capable of performing
  16151. given tasks. Even when programming has been introduced, the guide
  16152. continues to use the Émachineæ diagrams alongside the Scheme code.
  16153. 6.4
  16154. This approach has much to commend it. We are familiar with the idea of a
  16155. machine which carries out some operation on the raw materials fed into
  16156. it. Cans of beans are constructed from a supply of beans and empty cans.
  16157. The filled cans are transported as a package but, to make use of them,
  16158. we need another machine, a can opener, to open the package and get at
  16159. the contents. Much of Scheme programming is concerned with building the
  16160. machines to construct packages of data, machines to check their contents
  16161. and machines to open up the packages and make use of the contents.
  16162. 6.4
  16163. One quickly comes to realise that within those intimidating parentheses
  16164. is the name of a machine which carries out some operation and the names
  16165. of items upon which it operates. That applies to arithmetic operations
  16166. too, so the label for the operation comes before the operands, so called
  16167. Polish or pre-fix notation.
  16168. 6.4
  16169. By chapter 3, you are being asked to write an interpreter to add
  16170. fractions (try that in Basic!) and have been introduced to the concepts
  16171. of data abstraction and recursion. On the way, you have visited some
  16172. slightly eccentric ways of representing numbers in Lisp which, though
  16173. really of historical interest only, do force you to sharpen up your
  16174. programming skills. Gradually, a mental tool box is built up containing
  16175. procedures for selecting, removing, counting, substituting and reversing
  16176. elements in lists. The inner workings of the interpreter, ÉThe Scheme
  16177. Machineæ, are explained in chapter 5.
  16178. 6.4
  16179. The machine analogy is explored further in chapter 6 and the problems of
  16180. handling infinitely large objects in chapter 7. As a finale, a game is
  16181. developed in the last chapter which embraces topics like artificial
  16182. intelligence and object-oriented programming.
  16183. 6.4
  16184. Scheme seems to me to be one of the best kept secrets of the computing
  16185. world. This implementation is inexpensive and, though not multitasking,
  16186. can be entered from the desktop and cleanly exits back to it. It is
  16187. hoped that a RISC-OS compliant version will be released during 1993
  16188. though the cost will be slightly higher. This will enable Scheme to run
  16189. at the same time as other applications and allow code to be dragged into
  16190. a Scheme window and compiled. At present, there do not seem to be any
  16191. plans for a version which enables the user to create, close or resize
  16192. windows from Scheme, though the Macintosh version allows this to be
  16193. done.
  16194. 6.4
  16195. I have learned a lot from my experiences with Scheme. Even when
  16196. programming in Basic, it has forced me to ask questions like, ÉIf I
  16197. store data in this way, how much of the code which accesses this data
  16198. will I have to rewrite if I decide I want to store my data in a
  16199. different way?æ My appreciation of the virtues of a highly consistent
  16200. syntax, with few exceptions, has made me more critical of other
  16201. languages to which I have access. It has also made me realise just how
  16202. much code I have to write which has nothing to do with expressing how I
  16203. want the data to be operated on (my model) but is necessary just to tell
  16204. the machine how to do it. I think Iæm a better programmer for having
  16205. taken the time to study Scheme.
  16206. 6.4
  16207. It has also left me with a profound sense of despair. When I was
  16208. involved in education, I consoled myself with the notion that, for all
  16209. its faults, the A level system produced students who were much better
  16210. educated than a High School student in the USA, where the EdScheme
  16211. package has its origins. Yet Scheme seems to have made a negligible
  16212. impact in this country, probably because those who control education
  16213. believe that so long as we can produce GKOs (pronounced Geckos) Ö
  16214. Glorified Keyboard Operators Ö everything will be all right. With that
  16215. in mind, the decision has been taken to ignore the discipline of
  16216. programming and concentrate on IT Ö whatever that is. I think we are
  16217. making a big mistake.
  16218. 6.4
  16219. EDScheme is available from Lambda Publications at a cost of ú60 plus
  16220. ú2.50 p&p. A 300 page copyable Resources Pack and a Teacheræs Guide is
  16221. also available at additional cost.
  16222. 6.4
  16223.  Les May, Rochdale.ááA
  16224. 6.4
  16225.  
  16226.  
  16227. Hints and Tips
  16228. 6.3
  16229. Å   A3010 joystick ports Ö several A3010s have been returned to Acorn with
  16230. complaints of faulty joystick ports. They are not faulty. The A3010 is
  16231. the first Archimedes to have a built-in digital (i.e. Atari-style)
  16232. joystick port and because of this, many of the games already available
  16233. do not cater for digital joysticks. This is a fairly major problem and
  16234. hopefully someone will soon produce some sort of patch (either hardware
  16235. or software) which allows digital joysticks to be used in place of the
  16236. more common proportional joysticks (such as the Voltmace Delta). Until
  16237. then, two sources of information about digital joystick interfaces are
  16238. The Leading Edge and Beebug.
  16239. 6.3
  16240. Å   A4 Portable Guide Ö on page 31 of this guide, the pin-out diagram for
  16241. the AKF18 monitor is slightly incorrect. Pins 13 and 14 (horizontal and
  16242. vertical sync) have been reversed.
  16243. 6.3
  16244. Å   Artworks & Impression dongles Ö There appears to be a clash between
  16245. these two dongles when using an A5000 and a JP-150: printouts appear
  16246. with spurious information across them. Computer Concepts say that the
  16247. problem only occurs between A5000s and JP-150 printers and add that they
  16248. are looking into the problem.
  16249. 6.3
  16250. Å   Banner-making Ö I have just seen, in Archive 6.1, a review of a
  16251. program called Banner.
  16252. 6.3
  16253. If you own a printer which takes fanfold paper, there is an alternative
  16254. way for making banners. (By the way, fanfold paper does not need
  16255. sprocket holes if you are careful about the line-up and select friction
  16256. feed, so normal paper rolls can be used. For example, the Colourjet 132
  16257. users can print banners in this way.)
  16258. 6.3
  16259. The print margins on all the Acorn printer drivers are user-definable
  16260. and as long as you want to print out banners shorter in length than A0,
  16261. extending the appropriate print margin and setting Draw to A0 landscape
  16262. will normally allow satisfactory banners to be produced. (Changing the
  16263. print margins is described in the manuals; change only the height of the
  16264. page to whatever you wish and leave the width alone.) If print margins
  16265. are shown, keeping to these will ensure that none of the picture is
  16266. lost.
  16267. 6.3
  16268. The additional flexibility of Draw, especially in conjunction with the
  16269. drawfile utilities (!FontFX, !DrawBender, etc) would, in my opinion,
  16270. offset most of the ease of use of Banner, except perhaps in primary
  16271. schools.
  16272. 6.3
  16273. Note that the printer should not be set to skip perforations, or
  16274. problems will result, but I have had no difficulty in printing banners
  16275. on an Epson LX and even a Colourjet 132 in this manner.
  16276. 6.3
  16277. For those requiring longer banners, !Draw╜ and, I believe, !Draw+
  16278. (Careware 13) allow an option to set the work area to the print margins,
  16279. which will then enable them to use the longer pages which the printer
  16280. driver can handle but, again, for a banner you should set the page to be
  16281. much taller than normal in the printer driver and edit the display in
  16282. landscape mode. I have used this to produce banners several metres long.
  16283. 6.3
  16284. I am sure Banner is a very useful package and I have not attempted to
  16285. use it but I would be unwilling to spend ú15 when the same effect seems
  16286. to be available from the software supplied with the machine and
  16287. Careware.áá Andrew Garrard, Cambridge.
  16288. 6.3
  16289. Å   Banner-making again Ö Recently I needed to print up a large banner for
  16290. a meeting, and wondered how I should go about it. Of course, I could
  16291. always have bought ÉBanneræ for ú15 but, for a once off job, I thought
  16292. this just a touch extravagant. This set me thinking... Impression can
  16293. define master pages as big as you like... hmm... This is what I did, and
  16294. it works!
  16295. 6.3
  16296. 1.   Open a new document in Impression
  16297. 6.3
  16298. 2.   Create a new Master Page (Custom Job) Ö Width: 1000 and Depth: 210
  16299. 6.3
  16300. 3.   Return to the document and set the Master Page in Alter Chapter
  16301. 6.3
  16302. 4.   Set the Font Size to 500
  16303. 6.3
  16304. 5.   Type in öHello World!ò or whatever
  16305. 6.3
  16306. 6.   Set the printer driver page size to Ö Height: 1000 and Width: 210
  16307. 6.3
  16308. 7.   Set the Impression Print Dialogue to print sideways, and fire away
  16309. 6.3
  16310. Warning Ö this is not Éprinter ribbon friendlyæ... in fact, it is
  16311. positively Éprinter ribbon hostileæ!á Philip Lardner, Co. Wicklow,
  16312. Ireland.
  16313. 6.3
  16314. Å   CC BJ10ex Turbo Driver Ö It seems that the only method of using the
  16315. Turbo Driver with the PC Emulator is to load !BJ10e and quit it again
  16316. before loading the emulator.á Chris McIntosh, Blackheath.
  16317. 6.3
  16318. Å   Programming the Serial Port (Vertical Twist) graphics board Ö On the
  16319. monthly program disc is a series of programs which, in themselves, do
  16320. nothing much. However, they show how the 65000 colour modes can be
  16321. accessed from Basic and C.
  16322. 6.3
  16323. They mainly show how to draw lines, circles and fill shapes. Most do not
  16324. need any interaction. Fill requires five mouse selections to create to
  16325. outline Ö the sixth should be inside the box.
  16326. 6.3
  16327. Lines Ö just move the mouse and press <select> to change colour.
  16328. 6.3
  16329. 15_120ASM converts mode 15/21 sprites to mode 120. Copy the sprite image
  16330. to the floppyæs root directory before running. Itæs not very fast. Jim
  16331. Bailey, Sunderland.
  16332. 6.3
  16333. Å   Squirrel update Ö Digital Services have upgraded Squirrel from version
  16334. 1.07. Currently, Squirrel is being supplied with the original V1.07 disc
  16335. and manual and a V1.20 upgrade disc. A new manual is due out soon and
  16336. Digital Services will send all existing Squirrel owners this new copy
  16337. providing they have registered.
  16338. 6.3
  16339. Å   VIDC enhancer & RISC-OS 3.10 Ö There can be problems using very early
  16340. Atomwide VIDC enhancer hardware with RISC-OS 3.10. It appears that if
  16341. the enhancer is software switched, RISC-OS 3.10 will automatically
  16342. switch it on which prevents the computer from starting up correctly. To
  16343. solve the problem, you have two choices: (a) at the command line, type
  16344. *FX 162,&BC,&80 and switch your machine off, then on again, to check
  16345. that the command has worked (full details are on page 14 in the RISC OS
  16346. 3.10 release note) or (b) return the enhancer hardware to Atomwide with
  16347. ú5 and they will modify the hardware so that it works correctly.
  16348. 6.3
  16349. Å   Vision Digitiser. As I concluded in my review of the monochrome
  16350. version of this product (Archive 5.12.42), the package is amazing value
  16351. for money. However, the supplied software is a little basic. Further
  16352. more, Robert Golightly at HCCS tells me that the software module
  16353. (promised in the !ReadMe file) to provide * commands and SWIs for users
  16354. to write their own programs has a priority below that of the 512-line
  16355. upgrade, and is not likely to appear in the near future.
  16356. 6.3
  16357. All is not lost, for the software ù at least the monochrome version ù is
  16358. written using Basicæs in-line assembler, and so can be modified by the
  16359. careful user.
  16360. 6.3
  16361. For example, as it stands, the !Vision application always demands 450Kb
  16362. of memory. For those with 1M machines, or those who like to multi-task
  16363. it with other memory-demanding applications, it would be useful to be
  16364. able to reduce this. Examination of the code reveals that a 320Kb screen
  16365. buffer is reserved, whatever screen mode you are using. 320Kb will be
  16366. needed for mode 21, but only 160Kb for modes 15 and 20, and 80Kb for
  16367. mode 12. If you havenæt a multi-sync monitor and want to save 160Kb of
  16368. memory when using !Vision, change the following lines of a copy of
  16369. !RUNIMAGE, having first checked that the first line of the !Run file
  16370. shows that you have Version 1.0, dated March 1992.
  16371. 6.3
  16372.   130 DIM M% 210000
  16373. 6.3
  16374.  8650 BNE mode_error
  16375. 6.3
  16376. 23260 EQUD 163840
  16377. 6.3
  16378. 23460 FN_work (163840)
  16379. 6.3
  16380. Then amend line 2 of !Run to read:
  16381. 6.3
  16382. wimpslot -min 288K -max 288K
  16383. 6.3
  16384. Iæm working on other possible improvements to the software, such as mode
  16385. 67 compatibility, but it occurs to me that others might be doing the
  16386. same. If you are interested in participating in an informal user-group
  16387. for the Vision Digitiser, please send an SAE to Stuart Bell, 23 Ryecroft
  16388. Drive, Horsham, West Sussex RH12 2AW.ááA
  16389. 6.3
  16390. TechSoft
  16391. 6.3
  16392. From 6.2 page 19
  16393. 6.3
  16394. TechSoft
  16395. 6.3
  16396. From 6.2 page 15
  16397. 6.3
  16398. Risc Developments (2)
  16399. 6.3
  16400. New Artwork
  16401. 6.3
  16402. Using RISC-OS 3
  16403. 6.3
  16404. Hugh Eagle
  16405. 6.3
  16406. Many thanks to all those who have sent in material about RISC-OS 3.10.
  16407. Hugh has done a lot of work for us in collating all this information, so
  16408. read it carefully, check it out on your own systems and let us know if
  16409. you find solutions to some of the problems and/or see more problems.
  16410. This kind of information is very valuable indeed in terms of helping
  16411. other people who have to go through the same learning curve as you, with
  16412. the new operating system.
  16413. 6.3
  16414. I think it would also be good to send in a few ÉI hadnæt realised that
  16415. you could... ...but it makes life much easieræcomments.
  16416. 6.3
  16417. By the way, as at 28/11/92, N.C.S. actually has the ú50 upgrades in
  16418. stock although A5000 owners will still have to be patient, Iæm afraid.
  16419. Ed.
  16420. 6.3
  16421. (Throughout the column, references to RISC-OS 3 mean RISC-OS 3.10 unless
  16422. otherwise stated. HE)
  16423. 6.3
  16424. After ÉThe Long Waitæ and an acute dose of ÉBent Pin Anxietyæ, I had, to
  16425. cap it all, ÉThe Hunt For The Missing Apps 1 Discæ. After all that, I
  16426. was quite surprised to find that the machine actually worked when I
  16427. turned it on!
  16428. 6.3
  16429. Reconfiguring it so that it ran as well as it did before the upgrade,
  16430. was quite a fiddly process. The main hint I would give to anyone who
  16431. hasnæt yet done the upgrade is: watch your Fontmax settings!
  16432. 6.3
  16433. Å   In the Memory section of !Configure donæt be misled by the illustra
  16434. tion on page 94 of the manual. You can not safely leave the öFont cache
  16435. limitò setting at zero and expect the operating system to default to a
  16436. sensible limit as you can with most of the other memory settings. Unless
  16437. you set öFont cacheò to a reasonably large amount, you must set a larger
  16438. öFont cache limitò. (On a 4Mb machine, I have them set to 128Kb and
  16439. 512Kb respectively.)
  16440. 6.3
  16441. Å   If you have a multisync monitor, read the bit on page 119 (in the
  16442. section on screen modes!) when deciding what settings to use for anti-
  16443. aliasing and cached bitmaps in the Fonts section of !Configure.
  16444. 6.3
  16445. Å   Keith Lowe adds Ö Where the upgrade instructions tell you to hold down
  16446. the Delete key until the power-on self-test has been completed, they
  16447. mean donæt release the key until text has appeared on the screen!
  16448. Otherwise your old configuration will still be there and that can cause
  16449. no end of confusion!
  16450. 6.3
  16451. Å   Ed Harris encountered problems in installing the user fit ROM carrier
  16452. board from IFEL to his A310. IFEL were very helpful in providing advice
  16453. and when Keith was still unable to track down his mistake, they sorted
  16454. it out and returned it by return with only a nominal charge to cover
  16455. their costs. Many thanks to IFEL.
  16456. 6.3
  16457. Å   Mark Lambert reports problems trying to install RISC-OS 3 in an A310
  16458. fitted with a Watford 4Mb RAM upgrade (the second edition with a
  16459. vertical daughterboard holding the processor). Watford have told him
  16460. that a simple wire link is required on the RAM board but, as yet, they
  16461. have not told him the exact details. Does anyone happen to know the
  16462. details of the link required?
  16463. 6.3
  16464. Å   Steve Hutchinson writes: I was assured that it was quite simple to do
  16465. the necessary hardware upgrade to my old A440. In the event, I managed
  16466. it without hiccup but it was not quite so simple. I had to remove the
  16467. main circuit board from the case Ö which means unplugging loads of
  16468. things in my machine with all its upgrades. If you havenæt reasonable
  16469. electronic experience, think twice!
  16470. 6.3
  16471. And is the upgrade worth it? For 1Mb or floppy disc only users, the
  16472. answer must surely be yes. It must be a godsend to have the standard
  16473. applications, plus fonts, plus modules, all in ROM. For hard disc owners
  16474. .... well, what do you think? Some readers have no doubts.
  16475. 6.3
  16476. Ed Harris, for instance, writes: All in all, I have found RISC-OS 3.1 to
  16477. be a great improvement on an already excellent operating system (RISC-OS
  16478. 2) and well worth the cost of the upgrade. However, I wonder whether
  16479. others share my disappointment that the improvements were not more
  16480. dramatic? Perhaps now is the time for us to begin to compile a Wish List
  16481. of things we would like to see in RISC-OS 4.
  16482. 6.3
  16483. Why not send your thoughts either to Archive or to me at the address at
  16484. the end of this column?
  16485. 6.3
  16486. Most programs work well in RISC-OS 3
  16487. 6.3
  16488. Robert Macmillan of Colton Software has written to point out (further to
  16489. Gerald Fittonæs comments in the Pipeline Column of Archive 6.1) that not
  16490. only do all versions of Pipedream from 3.10 onwards work in RISC-OS 3,
  16491. they all work better with RISC-OS 3. This is because RISC-OS 3 has the
  16492. latest versions of system software built in and these perform better
  16493. than the old versions supplied with RISC-OS 2. In particular, the font
  16494. manager is much, much faster and the benefits of having the fonts built
  16495. in make it possible for floppy disc users to make good use of fonts
  16496. without inordinate disc swapping.
  16497. 6.3
  16498. Robert suggests that Archive should publish a table showing which of the
  16499. most popular software packages work, and which donæt work or need
  16500. upgrading. Judging by the number of needless phone calls he has been
  16501. receiving, this would be of great benefit to users considering the
  16502. upgrade to RISC-OS 3.
  16503. 6.3
  16504. I think the drawback with this idea is that although most people will
  16505. report that most programs work perfectly well (and the list could
  16506. potentially fill much of the magazine) some programs that do work well
  16507. for most people seem to cause problems for some others.
  16508. 6.3
  16509. However, I do agree that it is important to emphasise that most programs
  16510. do work and so, to set the ball rolling, I confirm that, from my limited
  16511. experience and that of my friends, the following generally seem to work
  16512. well:
  16513. 6.3
  16514.    all the standard Acorn applications
  16515. 6.3
  16516.    Impression 2.17 (but see below)
  16517. 6.3
  16518.    Poster 1.21
  16519. 6.3
  16520.    Artworks (all versions)
  16521. 6.3
  16522.    Vector
  16523. 6.3
  16524.    TWO
  16525. 6.3
  16526.    Squirrel
  16527. 6.3
  16528.    Pacmania
  16529. 6.3
  16530.    E-Type
  16531. 6.3
  16532.    Twin World
  16533. 6.3
  16534.    Lemmings
  16535. 6.3
  16536.    Gods
  16537. 6.3
  16538. Programs that need minor modifications
  16539. 6.3
  16540. Å   Sigmasheet (Minerva) must have FPEmulator in the same directory, even
  16541. though that module is in ROM. (John Waddell)
  16542. 6.3
  16543. Å   First Word Plus release 1.1 Ö As my current word processor is First
  16544. Word Plus release 1, I was worried by the assertion in the release notes
  16545. that this was unuseable under RISC-OS 3.1. This happily proved not to be
  16546. the case. If colour 14 within the WIMP palette is redefined, the menus
  16547. become legible. I have created an obey file to invoke 1WP (on the
  16548. monthly program disc) which loads a modified palette on entry and
  16549. restores the default palette on exit. Using this, I have experienced no
  16550. problems running 1WP. (Ed Harris)
  16551. 6.3
  16552. Å   DiscTree does not work correctly under RISC-OS 3. Oak Solutions are
  16553. working on the problem.
  16554. 6.3
  16555. Å   InterWord ù My copy of InterWord has its own directory in the hard
  16556. disc root directory. It runs in 65Tube, which isnæt where it used to be
  16557. under RISC-OS 2, and appears under a different name. To get InterWord
  16558. going again, copy the new App2.!65Tube.!RunImage to the InterWord
  16559. directory and rename it as 65Tube; it should now be sitting alongside
  16560. !IWord in that directory. In the I/WORD.!IWORD.!RUN file, insert the
  16561. following line after Set Interword$Dir <Obey$Dir>:
  16562. 6.3
  16563. RMLoad ADFS::HD4.$.IWORD.65Tube
  16564. 6.3
  16565. (where HD4 is the name of the hard disc). Double click on !IWORD in the
  16566. usual way to start it.
  16567. 6.3
  16568. A similar method should apply to single floppy machines by substituting
  16569. the appropriate floppy name for that of the hard disc above. (Ken Cowap)
  16570. 6.3
  16571. Å   Holed Out ù I have a boot file on the hard disc which sets up the
  16572. machine with some applications on the iconbar and some more on the
  16573. pinboard. The golf game öHoled Outò finds this environment disagreeable
  16574. and wonæt start. The following gets it going:
  16575. 6.3
  16576. *CONFIGURE DRIVE 0
  16577. 6.3
  16578. *MOUNT :0
  16579. 6.3
  16580.    <shift-break> (machine re-boots to bare-bones iconbar)
  16581. 6.3
  16582.    Click Drive 0 icon to get öHoled Outò filer
  16583. 6.3
  16584.    Double click !Boot
  16585. 6.3
  16586. Terminate the game with:
  16587. 6.3
  16588.    Shift/Break
  16589. 6.3
  16590. *CONFIGURE DRIVE 4
  16591. 6.3
  16592. *MOUNT:4
  16593. 6.3
  16594.    <ctrl-break> (machine re-boots to populated iconbar, etc) (Ken Cowap)
  16595. 6.3
  16596. Å   Chocks Away ù The flight simulator Chocks Away isnæt quite so fussy
  16597. about a populated iconbar and will generally start normally. However, if
  16598. it does object, it may help to try a <ctrl-break> followed immediately
  16599. by <escape>, which re-boots to an unpopulated iconbar, then double click
  16600. on !Chocks. (Ken Cowap)
  16601. 6.3
  16602. Other program problems
  16603. 6.3
  16604. Mike Williams has supplied a list of programs that he has found donæt
  16605. work under RISC-OS 3.1:
  16606. 6.3
  16607.    Ground Control Teletext Adaptor (At the A.U. áááááShow, Ground Control
  16608. said they werenæt áááááaware of any problems. HE.)
  16609. 6.3
  16610.    Claresæ Arcade Games
  16611. 6.3
  16612.    Quazer
  16613. 6.3
  16614.    StarTrader
  16615. 6.3
  16616.    Arcendium
  16617. 6.3
  16618.    Corruption
  16619. 6.3
  16620.    Terramex
  16621. 6.3
  16622.    Boogie Buggy
  16623. 6.3
  16624. Ed Harris has found several public domain applications that have failed
  16625. to run:
  16626. 6.3
  16627.    Mandelplot (garbage on screen Ö machine ááááálocks)
  16628. 6.3
  16629.    ChartDraw (öillegal window handleò error)
  16630. 6.3
  16631.    Hyper (öillegal window handleò error)
  16632. 6.3
  16633. Å   Computer Concepts admit that ShowPage does not work with RISC-OS 3 and
  16634. say that they have no plans to get it working with RISC-OS 3. There just
  16635. is not the demand for this product to make it worthwhile doing the
  16636. upgrade which is more like a complete re-write for the new operating
  16637. system.
  16638. 6.3
  16639. Denis Fox reports problems with:
  16640. 6.3
  16641. Å   Impression (2.17) and LaserDirect (2.05) work much more slowly, even
  16642. with Fontsize set to 256Kb and Fontmax to 512Kb. There are regular poor
  16643. printouts, sometimes with patterned effects in what should be black
  16644. areas, hang ups when transferring lots of text between documents and
  16645. continual error messages when printing. (I have a similar setup but have
  16646. not noticed any deterioration in performance. HE.)
  16647. 6.3
  16648. To help the speed, I suggest you try NOT using the ROM fonts Ö then you
  16649. can have Quick Text switched on. To do this, add a FontRemove
  16650. Resources:$.Fonts. in the !Fonts.!Boot file before the FontInstall
  16651. <Obey$Dir>. command.
  16652. 6.3
  16653. I have once had the patterned effect in black areas but quitting and
  16654. restarting the printer driver cleared it. Ed
  16655. 6.3
  16656. Å   Multistore V11 not printing with a Star LC24-200. (At the AU Show,
  16657. Minerva said there may be problems with earlier versions and that users
  16658. experiencing such difficulties should contact them quoting their version
  16659. number. HE.)
  16660. 6.3
  16661. Å   Scanlight Plus 256 not working at all. (There are no known problems.
  16662. Are you sure you have a power supply connected to the board? You do need
  16663. the p.s.u. connected even on the A5000. Ed.)
  16664. 6.3
  16665. Å   A number of people have had problems (mainly öillegal window handleò
  16666. errors) with versions up to 1.07 of my PD application PickAPic. I found
  16667. that there was an error in the code that only occasionally caused
  16668. problems in RISC-OS 2, but caused the program to crash quite often in
  16669. RISC-OS 3, presumably because of a change in the way the window manager
  16670. numbers its windows. Anyone who wants an upgrade to the latest version
  16671. please write to me at the address at the bottom of this column. (Hugh
  16672. Eagle)
  16673. 6.3
  16674. Å   Droom ù I canæt get Droom to work. It reports öNot enough system
  16675. sprite memoryò whether I use Memalloc and the *Spritesize command (this
  16676. used to work in RISC-OS 2), or the new *ChangeDynamicArea command, or
  16677. whether I set the System sprites slider in the Task Manager window.
  16678. (Hugh Eagle)
  16679. 6.3
  16680. Å   Compression Ö Computer Concepts have informed me that the release note
  16681. for version 3.10 is slightly too pessimistic when it claims that
  16682. Compression (up to version 1.10) does not work on RISC_OS 3.10. What
  16683. apparently happens is that sometimes when you compress a directory with
  16684. several files, the last file, instead of being processed, produces an
  16685. error message. It can then be compressed singly. (In the first two weeks
  16686. of working with the new OS, I have had no trouble with Compression, so
  16687. the problem appears to be marginal. HE) (Jochen Konietzko)
  16688. 6.3
  16689. Å   Impression and the Pinboard Ö Can anyone tell me why the Pinboard has
  16690. such problems with Impression documents?
  16691. 6.3
  16692. When I drag a compressed document onto the desktop, the next reset will
  16693. produce an error message öSprite does not existò. Without Compression,
  16694. the document does appear on the desktop but the Impression icon is
  16695. replaced by the standard application icon. (Jochen Konietzko) (I seem to
  16696. have no difficulty with Impression icons on the Pinboard in my
  16697. Compression-less setup. HE)
  16698. 6.3
  16699. Å   PC Emulator (version 1.6) ù I applied the patch to my copy of the PC
  16700. Emulator (Version 1.6) and changed the filetype of the DOS partitions to
  16701. DOSDisc as recommended in the release notes. I then found that the
  16702. machine locked whenever I ran the emulator, even after a <ctrl-break>.
  16703. Things worked perfectly, however, after the machine had been powered off
  16704. and restarted. (Ed Harris)
  16705. 6.3
  16706. Å   Trouble with !FontFX Ö It has already been documented, at least twice,
  16707. that !FontFX will not run under RISC-OS 3 and the suggested öfixò is to
  16708. reset Font$Path using *SetMacro. Having done this, I still canæt get it
  16709. to use the Trinity and Homerton fonts supplied in ROM. To get round the
  16710. problem, I have renamed the original RISC-OS 2 versions OldTrinity and
  16711. OldHomertn and installed them in my !Fonts directory on disc. Now
  16712. choosing these from the fonts list in !FontFX works beautifully. So far
  16713. there have been no side effects!
  16714. 6.3
  16715. It occurs to me that the problem may be that !FontFX is looking for
  16716. files called IntMetric and Outlines (there are lots of references to
  16717. these names in the !RunImage) whereas the files in ResourcesFS are
  16718. stored as IntMetric() and Outlines(). The real answer would be for the
  16719. program to be amended to accept either version of the filenames. I shall
  16720. speak to DataStore to find out if they intend to make the necessary
  16721. alterations. (Tom Harkness)
  16722. 6.3
  16723. The release notes say that FontFX must be more recent than 4.31 to work.
  16724. My version, 4.08, works fine so long as you donæt use ROM fonts. If you
  16725. do try to, it reports ÉCanæt find outlinesæ and promptly exits from the
  16726. iconbar! All other fonts seem fine, even from multiple directories.
  16727. (Steve Hutchinson)
  16728. 6.3
  16729. Å   Ovation ù Ovation meets a problem or two with RISC-OS 3 despite its
  16730. recent update (version 1.35S). If text is indented (e.g. at the start of
  16731. a paragraph) and is also justified, the correct format is presented on
  16732. screen but when printed, the indented line projects to the right beyond
  16733. the text frame. It is understood that Risc Developments are working on
  16734. this. Also, if Ovation encounters a faulty outline font (e.g. containing
  16735. a zero-width character, not uncommon in some PD fonts) it puts out an
  16736. incorrect error message saying that the font cache is full. This bug is
  16737. more likely to be purely Ovationæs rather than in conjunction with RISC-
  16738. OS 3, but hasnæt been resolved as yet (except of course by ensuring that
  16739. outline fonts are fault-free). (Ken Cowap)
  16740. 6.3
  16741. Å   ArcDFS ù Since fitting the RISC-OS 3 upgrade, ArcDFS no longer works
  16742. correctly and consistently comes up with error messages. This causes me
  16743. great problems since, throughout our group of companies, we possess some
  16744. 50+ Acorn BBC units ranging from the old BBC Model Bæs (yes, theyære
  16745. still going strong after eight years of service) through to Master
  16746. 128æs.
  16747. 6.3
  16748. We are only just moving on to Archimedes and to maintain our wealth of
  16749. information accumulated on our Beebs, I am transferring files from DFS
  16750. to ADFS via a set of external 5╝ö disc drives I have had connected to my
  16751. A3000. This has worked perfectly in the past with complete surfaces of
  16752. DFS discs being transferred to ADFS in seconds. Without ArcDFS, I am
  16753. left with only one solution Ö to *MOVE individual DFS files to 640Kb
  16754. ADFS discs using a Master Series Computer and then transferring these
  16755. 640Kb discs to the Archimedes. Clearly, this is a retrograde step after
  16756. the convenience of ArcDFS.
  16757. 6.3
  16758. I have been in contact with Dabs Press and, although they are aware of
  16759. the problem, they could not tell me whether or not they were going to
  16760. make the necessary modifications to their software! I sincerely hope
  16761. they receive a large enough response from their users to persuade them
  16762. to produce an upgrade for this product. (S. J. Furnell)
  16763. 6.3
  16764. Å   !Alarm ù A couple of tricky little bugs exist in the new Alarm
  16765. application. Iæve already reported these to Risc User and trust they
  16766. will advise Acorn in turn. If the Repeating Alarm facility is used to
  16767. operate, say, every first Monday of every month, it malfunctions when
  16768. the next month comes up to December. It advances a year instead of a
  16769. month, going from November 1992 to December 1993.
  16770. 6.3
  16771. Perhaps less important, but still a nuisance if you want to use it, is
  16772. the bug in the automatic BST to GMT facility. It refuses to accept
  16773. entries for two different years such as were needed at the recent change
  16774. on 25th October. Before that date, it should have been in order to enter
  16775. 6.3
  16776.    BST starts on Sunday 28th March 1993 at 01:00
  16777. 6.3
  16778.    BST ends on Sunday 25th October 1992 at 01:00
  16779. 6.3
  16780. but Alarm invalidates such an entry by altering the östartsò date to be
  16781. earlier than the öendsò date. If one capitulates and enters the two real
  16782. changeover dates for 1992, (hoping that Alarm will calculate forward
  16783. into 1993) Alarm does indeed respond with a date in 1993 but only about
  16784. 11 months ahead, on 1st March 1993. There is a fundamental difficulty
  16785. for the programmer here. The changeover date doesnæt, as far as I know,
  16786. follow a properly defined rule and tends to be arbitrary. I suspect that
  16787. the programmer intended to issue a reminder to the operator 11 months
  16788. after the last change so that the true date, known by then, could be
  16789. entered. However, the algorithm obviously needs re-examination. (Ken
  16790. Cowap)
  16791. 6.3
  16792. Can readers (or the manufacturers) offer any advice on how to overcome
  16793. problems with these programs (or any others that have proved
  16794. troublesome)?
  16795. 6.3
  16796. Hardware problems
  16797. 6.3
  16798. Å   Oak SCSI öFree Spaceò display ù My Oak SCSI hard disc wonæt use the
  16799. new ÉFree Spaceæ window but uses the old RISC-OS 2 Éstop-everything-and
  16800. press-spaceæ window. The Release notes suggest that SCSIFiler will fix
  16801. this for the Acorn SCSI card, but it doesnæt appear to for my Oak
  16802. (v.1.16). Any thoughts? (Steve Hutchinson) (The solution to this was
  16803. explained in Archive 5.5 p40. Ed.)
  16804. 6.3
  16805. Å   Digitisers, SCSI and the RS232 port ù I managed to get RISC-OS 3
  16806. fitted to my faithful A440 only to discover that my Technomatic
  16807. (Brainsoft) Multipod Professional digitiser not only does not work with
  16808. RISC-OS 3.10 but the computer will not work with the podule fitted.
  16809. Richard Brain says that he was not aware of a problem and there are
  16810. currently no plans for an upgrade, but he will have a look when he gets
  16811. time to see if an upgrade is possible. In the meantime, I have no video
  16812. digitiser, no stereo digitiser and no extra RS232 ports.
  16813. 6.3
  16814. I mentioned the problem to Malcolm Banthorpe and he tells me that his
  16815. Pineapple digitiser is now öunwellò with RISC-OS 3.10. I wonder whether
  16816. there are some differences in the way that podules download their ROM
  16817. modules and initialise under RISC-OS 3.10?
  16818. 6.3
  16819. I also hear rumours that people are experiencing interrupt problems with
  16820. SCSI interfaces causing data loss on the RS232 port (interrupts not
  16821. returning quickly enough to avoid loss of incoming data on the port).
  16822. Apparently, uncached Morley cards may be particularly prone but I have
  16823. no first hand experience. It certainly fits in with Malcolm Banthorpeæs
  16824. experience on his digitiser which seems to be suffering from an overdose
  16825. of interrupts. (Tim Nicholson)
  16826. 6.3
  16827. Laser Direct RISC-OS 3 printer driver?
  16828. 6.3
  16829. It seems barely credible, but a whole year after RISC-OS 3 was first
  16830. released, the Rolls Royce of Archimedes printers still lacks a RISC-OS 3
  16831. printer driver. For many purposes this doesnæt matter, but rotated fonts
  16832. seem a bit pointless if you canæt print them out, and users with more
  16833. than one printer would like to be able to access their LD using the
  16834. Print Manager.
  16835. 6.3
  16836. Readers have been getting contradictory explanations from Computer
  16837. Concepts: one was told that theyæve been too busy writing Artworks,
  16838. while another was told that Acorn havenæt given them a printer driver
  16839. specification yet! (Thereæs an element of truth in both. Letæs just say
  16840. that it is a non-trivial task to write a printer driver to work with
  16841. Acornæs Print Manager. Ed.)
  16842. 6.3
  16843. Other printer problems
  16844. 6.3
  16845. Å   Epson MX100-III ù My printer is an ageing Epson MX100-III. Using the
  16846. standard settings provided by the Acorn printer driver, I find thin
  16847. lines can disappear. e.g. the staves in a Rhapsody score. Using the
  16848. highest resolution setting (120 x 216 dpi dithered) produces an
  16849. excellent standard of output but 1.5 to 2 times slower than the RISC-OS
  16850. 2 driver (at a resolution of 120 ╫ 144 dpi). (Ed Harris)
  16851. 6.3
  16852. Å   Print buffering ù I have an Archimedes 420/1 expanded to 4Mb memory,
  16853. with twin Cumana 5╝ö disc drives and recently equipped with ARM3 and
  16854. RISC-OS 3.1. Ever since I installed RISC-OS 3.1, I have had a problem
  16855. with printing. I use Impression most of the time but the same problem
  16856. arises with Draw, Acorn DTP, DrawPlus, etc, etc. I shall put the problem
  16857. in the form of a question: What is the point of a printer buffer that
  16858. does not release control of the machine back to the user until the print
  16859. job is finished?
  16860. 6.3
  16861. I wrote to Acorn as follows: Whatever setting I use for PrinterBuffer
  16862. Size, it just does not seem to make any difference. I have 4Mb of memory
  16863. and use Impression a great deal. Sometimes I set the PrinterBufferSize
  16864. as high as 512Kb but the computer does not return control to the desktop
  16865. until the document is completely printed. Under RISC-OS 2, I used a
  16866. printer buffer program and found that I was able to work on a new
  16867. document within a minute or two of sending the previous one to the
  16868. printer provided the buffer was set high enough to accommodate all of
  16869. the data being sent to the printer. Now the machine is always tied up
  16870. until the printing is complete. How does one get the printer buffer to
  16871. work? I use *Configure PrinterBufferSize to set the size of the buffer.
  16872. Is there another command that I can use to make it operational and is it
  16873. possible to turn it off (*Configure PrinterBufferSize 0Kb sets it to the
  16874. default of 1Kb) and use one of the many printer buffer programs that are
  16875. available?
  16876. 6.3
  16877. Acorn (Peter Dunn) replied: öAlthough the printer buffer does work in
  16878. that data is passed into the buffer, control is not released back to the
  16879. user until the print job is finished.ò
  16880. 6.3
  16881. I have tried RMKilling the BufferManager but that stops all data being
  16882. sent to the printer.
  16883. 6.3
  16884. I have devised a work-around but it is a little long-winded:
  16885. 6.3
  16886. 1. Have two versions of the chosen printer driver on the iconbar and
  16887. make them active.
  16888. 6.3
  16889. 2. Set one (F) to send the data for the printer to a file on the hard
  16890. disc and set the other (P) to send the data to the parallel or serial
  16891. printer.
  16892. 6.3
  16893. 3. Select (F) by clicking on it and Éprintæ the document. A file called
  16894. Printout will appear on the hard disc.
  16895. 6.3
  16896. 4. Change the name of the file called Printout to, say, Printoutx.
  16897. 6.3
  16898. 5. Select (P) by clicking on it and drag Printoutx onto the Printer icon
  16899. that is yellow.
  16900. 6.3
  16901. The file will now print in the background and control is instantly
  16902. returned to the user. Step 4 is not strictly necessary but is useful if
  16903. you are printing longish documents and wish to, as it were, stack them
  16904. ready for sending to the printer. If one does not change the name to
  16905. something unique, there is a danger of overprinting one file with
  16906. another. Instead of the hard disc one may, of course, use a floppy or
  16907. RAMFS.
  16908. 6.3
  16909. This is quite a laborious work-around when one has a printer buffer
  16910. built in (so one would think) to RISC-OS 3.1. A better arrangement must
  16911. be possible and so I should be grateful for any hints or tips the
  16912. readers can give. (M. P. Ireland)
  16913. 6.3
  16914. Å   Epson FX-105 ù The driver for the Epson FX-85 does not work with the
  16915. Epson FX-105 even though the printer manual suggests that they are
  16916. virtually identical apart from the carriage width. The printout is
  16917. always aligned along the left hand side even when it is supposed to be
  16918. centered, etc. Furthermore, large letters, being sent in several
  16919. separate lines, are often incorrectly aligned from top to bottom. When I
  16920. raised this in my letter to Acorn, they replied as follows:
  16921. 6.3
  16922. öThe Epson FX-105 does not support the ESC $ (remove leading white
  16923. space) options supported by the FX-85 but does however support NLQ text
  16924. printing. The decision by Epson not to support ESC $ in its newer
  16925. printers has only recently come to light when testing the Epson LX-100.
  16926. We have written a driver for the LX-100 which I am sure you will find
  16927. works correctly with your printer.ò
  16928. 6.3
  16929. A copy was sent to me and I can confirm that it does indeed work. (M. P.
  16930. Ireland)
  16931. 6.3
  16932. Å   Bug in !Printers Ö If you configure two printers of the same type
  16933. (e.g. a 300dpi HPLJ-2 and a 150dpi HPLJ-2) then delete the first one,
  16934. !Printers crashes with an address error. (Mike Williams)
  16935. 6.3
  16936. Å   LaserJetII printer driver and Qume Crystalprint Series II ù My problem
  16937. concerns the LaserJet II printer driver. Quite simply, I always get an
  16938. extra blank sheet for every page printed. Also stray characters appear
  16939. in the left margin. The Qume CrystalPrint Series II printer is very
  16940. similar to that used initially by Computer Concepts for their Laser
  16941. Direct series, but mine isnæt a Laser Direct model.
  16942. 6.3
  16943. In the early days of RISC-OS 2, I vaguely remember I had a similar
  16944. problem that was solved only when Acorn (fairly quickly) brought out
  16945. another printer driver.
  16946. 6.3
  16947. In my efforts to solve the problem, Iæve tried lots of things ù like
  16948. changing margins, etc, etc. Iæve had long discussions with Gerald
  16949. Fitton, too. From him, I know that others have plenty of problems,
  16950. though perhaps not quite like mine. The silly thing is that all was OK
  16951. with the RISC-OS 2 driver but, despite the impression given in Risc
  16952. User, neither of us thinks that RISC-OS 2 drivers can be used with RISC-
  16953. OS 3. Is this correct, I wonder? If they can be used, that would be a
  16954. good temporary solution. (John Jordan)
  16955. 6.3
  16956. Å   Getting the page length right ù After quite a number of abortive
  16957. attempts to set the page length for 12 inch fanfold paper, I finally
  16958. found out that any changes I make become effective (at least on my
  16959. combination of machines) only after I have saved all changes, quit and
  16960. then reloaded the printer driver. (By the way, the correct setting for
  16961. my Fujitsu DL1100 printer, using the Epson LQ860 emulation is, for some
  16962. inscrutable reason, 12.309 inches, 72 lines). (Jochen Konietzko)
  16963. 6.3
  16964. Å   Panasonic KX-P1124 ù Probably my most difficult problem was with the
  16965. printer drivers. The old RISC-OS 2 drivers just have to be abandoned Ö
  16966. they merely generate an error message. My printer happens to be a
  16967. Panasonic KX-P1124 (24-pin dot matrix, monochrome) but Acorn havenæt
  16968. seen fit to include any Panasonic printers at all. Though they blandly
  16969. say that one of the others will probably be near enough, in fact, it
  16970. requires a considerable amount of research to be confident that the
  16971. range of control codes is (a) sufficient to fully exploit the machineæs
  16972. capabilities and (b) doesnæt contain any alien codes to cause unwanted
  16973. results. At the end of the day (or several!) I reduced the probables to
  16974. two, the Epson LQ860 and the NEC P6+ (despite the fact that both
  16975. machines are colour printers). I had misgivings about the NEC which
  16976. includes, in its control code repertoire, some which started with 28
  16977. instead of the old familiar 27 (Escape). The matter was finally clinched
  16978. when I was able to question an Acorn representative at the Acorn User
  16979. Show. He told me that quite definitely I should use the Epson LQ860. So
  16980. this I do, and without any problems so far. I havenæt even edited out
  16981. the control codes for the colours Ö the driver is used, unmodified. (Ken
  16982. Cowap)
  16983. 6.3
  16984. Where are the hare and the tortoise?
  16985. 6.3
  16986. Can I get the hare and tortoise icons that came with my ARM3 back on the
  16987. iconbar? Or do I have to tell people that if they want E-Type to go at a
  16988. playable pace they have to press <F12> then type öCache offò then press
  16989. <return> twice before running it?! (I just use
  16990. 6.3
  16991. RMEnsure Arm3Icon 0.9 Run scsi::4 .$.<leafname>.!Arm3
  16992. 6.3
  16993.  in my !boot file and... hare presto! Ed.)
  16994. 6.3
  16995. Programmersæ Reference Manual
  16996. 6.3
  16997. At the Acorn User Show, a öbetaò copy of the new PRM was on sale in
  16998. photocopy form for ú120. The final version will apparently be available
  16999. öin the first quarterò of 1993. It is about 50% bigger than the RISC-OS
  17000. 2 manual and will fill six volumes. From my brief inspection, it looks
  17001. as if it contains quite a lot more explanatory material than its
  17002. predecessor. I was told that neither the price of the final version nor
  17003. details of the trade-in arrangements (if any!) have yet been fixed.
  17004. 6.3
  17005. Various hints and tips:
  17006. 6.3
  17007. Å   Problem with Impression dongle Ö You canæt write to a printer when the
  17008. Impression dongle is fitted unless you have run the Impression appli
  17009. cation first. (Mike Williams)
  17010. 6.3
  17011. Å   Summer time blues Ö Some C programs (e.g. PVray) get the time wildly
  17012. wrong when *BST is configured. (Mike Williams)
  17013. 6.3
  17014. Å   Bug in !SciCalc Ö It gives wildly inaccurate results to the <▒>
  17015. function for some values, e.g. if you enter ö1<Exp>56ò then press <1/x>
  17016. to give ö10EÖ57ò then press <▒> you get the surprising result: ö10EÖ58ò.
  17017. If you press <▒> again, you get ö10EÖ41ò. (Mike Williams)
  17018. 6.3
  17019. Å   Where did this file come from? Ö There are quite a few ways in which
  17020. <adjust> clicking can be very helpful. Iæm sure you all know that
  17021. <adjust> double-clicking a directory opens it and closes the parent and
  17022. that using <adjust> to close the directory opens up the parent. You may
  17023. even know that clicking the close icon with <adjust> while holding down
  17024. <shift> actually opens the parent without closing the directory. What
  17025. you may not have noticed is that you can do the same with (some)
  17026. applications. With most applications, it seems, <adjust> double-clicking
  17027. a file loads the file and closes the directory from which it came. (I
  17028. think this is a function of the Filer and is therefore true for all
  17029. applications and files. HE.) Then, if you click in the close box with
  17030. <adjust>, holding <shift> at the same time, the directory from which the
  17031. file came appears on screen without the file disappearing from view.
  17032. With Impression, however, there is no need to hold <shift> as well Ö
  17033. just using <adjust> on the close box brings up the directory viewer in
  17034. which the file is saved.
  17035. 6.3
  17036. Oh, and Iæve only just discovered that if you draw a windowæs scroll bar
  17037. with <adjust>, you can move about in both x and y directions! (Paul
  17038. Beverley)
  17039. 6.3
  17040. Å   Rubber-banding Ö Those who have gone straight to RISC-OS 3 without
  17041. reading the manual (like Ed!) may not have noticed that you can use
  17042. rubber-banding to select a group of files. So instead of <adjust>
  17043. clicking every individual file you want to select, you can click
  17044. <select> in the space between two file icons and, as you drag, a red
  17045. bounding box appears which you can release when it is over the files you
  17046. want. Using <adjust> instead of <select> simply adds files to those
  17047. already selected but note that if you go over a file that is already
  17048. selected, it is then de-selected. (Paul Beverley)
  17049. 6.3
  17050. Å   SerialDeviceDriver module Ö On an A5000, never unplug the module
  17051. called öSerialDevice Driverò, as the following strange things will
  17052. happen. After a power off/on the machine will boot up but, during
  17053. booting, an error message öError from Task Managerò will appear and
  17054. there is only a öCancelò button to click on. Then the boot up is
  17055. finished correctly but no Taskmanager is present! It will only reappear
  17056. if you double-click on any file with the new Desktop filetype (&FEA),
  17057. even if this is 0 bytes long! In addition, the Taskmanager will not
  17058. function correctly in all cases: try to get an ö!Edit Task Windowò now.
  17059. Bug or not? (Carsten Bussman)
  17060. 6.3
  17061. Å   Double-clicking into Basic Ö On my first machine (which was killed by
  17062. my dealer while trying to fit a SCSI hard drive) I was able to enter BBC
  17063. Basic V directly by double-clicking into the systemæs start-up message
  17064. window (öRISC-OS ... initialisingò). This does not work with my current
  17065. machine (Serial no. 1009939); I donæt know why. This was a nice feature
  17066. which Iæm missing now, so why isnæt it implemented in all RISC-OS 3
  17067. ROMs? (Carsten Bussman)
  17068. 6.3
  17069. Å   Inserting path names into !Edit Ö Try dragging any file or directory
  17070. into an !Edit window while pressing the Shift key. This will give the
  17071. fileæs pathname. (Carsten Bussman)
  17072. 6.3
  17073. Å   öMenu Area Fullò error in FormEd ù Captain K.áJ.áTompkins reports the
  17074. error öMenu Area Full (Internal code 6560,1)ò from his version of
  17075. !FormEd. This is probably because he has one of the earlier versions of
  17076. this program which only allows limited space for building its menus and
  17077. is defeated if there are too many fonts installed. If so, it is fairly
  17078. easy to cure: in the Basic program called !RunImage inside the !FormEd
  17079. directory there is a line that reads something like:
  17080. 6.3
  17081. DIM menufree% &1800: menuend% = menufree%+&1800
  17082. 6.3
  17083. (this is at line 790 in the version Iæm now looking at). If each of the
  17084. two &1800æs is replaced by &2000, so that the line reads:
  17085. 6.3
  17086. DIM menufree% &2000: menuend% = menufree%+&2000
  17087. 6.3
  17088.  the program should work.
  17089. 6.3
  17090. (Note: this hint does not apply to all versions of FormEd) (Hugh Eagle)
  17091. 6.3
  17092. Å   Filer_Run syntax Ö it seems that the command
  17093. 6.3
  17094. *Filer_Run <App$Dir>
  17095. 6.3
  17096. (where App$Dir is a system variable set to the name of an application)
  17097. doesnæt run the application as you might expect. What it does is to open
  17098. a filer window on the applicationæs directory with ö<App$Dir>ò (not the
  17099. actual pathname) in the title bar.
  17100. 6.3
  17101. The following syntax, however, does seem to work:
  17102. 6.3
  17103. *Set Alias$FR Filer_Run <App$Dir>
  17104. 6.3
  17105. *FR
  17106. 6.3
  17107. *UnSet Alias$FR
  17108. 6.3
  17109. (this is equivalent to the old trick that used to be needed in RISC-OS 2
  17110. to open a directory viewer with *Filer_OpenDir). (Hugh Eagle)
  17111. 6.3
  17112. Å   *FontRemove syntax Ö The FontRemove star command seems to be very
  17113. fussy. You have to tell it the name of the directory that you want to
  17114. remove in exactly the form in which it is included in the Font$Path
  17115. system variable. For instance, if you want to remove
  17116. RAM::RamDisc0.$.!Fonts. from Font$Path you must type
  17117. 6.3
  17118. *FontRemoveáRAM::RamDisc0.$. !Fonts.
  17119. 6.3
  17120. including both the disc name (RamDisc0) and the full stop at the end.
  17121. (Robert Chrismas has sent in a handy application called !FontsCut which
  17122. lists the directories currently included in Font$Path with numbers
  17123. beside them and all you have to do is type in the number corresponding
  17124. to the directory you want to remove. This is included on the monthly
  17125. program disc.) (Hugh Eagle)
  17126. 6.3
  17127. Å   Configuring Shift Caps Ö In the Caps lock section of the Keyboard
  17128. window of !Configure, the effects of öCaps lock onò and öShift capsò
  17129. seem to be reversed. In other words, selecting öCaps lock onò means that
  17130. holding down <shift> reverts to lower case whereas selecting öShift
  17131. capsò means that you get upper case regardless of whether <shift> is
  17132. held down or not. (Hugh Eagle)
  17133. 6.3
  17134. Å   Mouse button codes ù If you enter and run the following simple Basic
  17135. program:
  17136. 6.3
  17137. REPEAT
  17138. 6.3
  17139.   MOUSE X,Y,B
  17140. 6.3
  17141.   PRINT TAB(10,10)B
  17142. 6.3
  17143. UNTIL FALSE
  17144. 6.3
  17145. then watch what number is displayed on the screen as you press the
  17146. various mouse buttons you will see:
  17147. 6.3
  17148. no button   0
  17149. 6.3
  17150. Select      4
  17151. 6.3
  17152. Menu        2 for an instant, followed by 0
  17153. 6.3
  17154. Adjust      1
  17155. 6.3
  17156. The behaviour of the menu button has changed from RISC-OS 2, I think.
  17157. Those programs that are interested only in detecting whether the button
  17158. has been clicked wonæt be affected, but the change can cause problems
  17159. for programs that want to detect whether the Menu button remains held
  17160. down. Luckily, there is a simple solution: the function
  17161. 6.3
  17162. INKEY(-11)
  17163. 6.3
  17164. will return the value TRUE however long the Menu button is held. (Hugh
  17165. Eagle)
  17166. 6.3
  17167. Å   Getting Art Nouveau to run ù Hands up those who remember Art Nouveau?
  17168. Well, this excellent old program has one quirk, namely that you have to
  17169. hold down the menu button while you move round the menu tree until you
  17170. make your selection. So, because of the changed functioning of the mouse
  17171. button (see above), it doesnæt work in RISC-OS 3.1 unless you make a
  17172. slight modification. In the Basic program called ArtNouveau from the
  17173. directory ANfiles at line 30950 in my version there is a line that
  17174. reads:
  17175. 6.3
  17176. WHILE stayopen AND mbut=2
  17177. 6.3
  17178. I have found that altering this to:
  17179. 6.3
  17180. WHILE stayopen AND INKEY-11
  17181. 6.3
  17182. restores the program to health. (Hugh Eagle)
  17183. 6.3
  17184. Å   Using a TaskObey file to display a message ù The new filetype
  17185. öTaskObeyò is useful if you want the !Run file of an application to pop
  17186. up a message in a window without halting the whole system. You might use
  17187. this for instance to display a warning to change the setting of your
  17188. printer. Thus, to display öThis is a messageò in a window, create a file
  17189. called, say, Message containing:
  17190. 6.3
  17191. Echo This is a message
  17192. 6.3
  17193. set the filetype to TaskObey and include, in the applicationæs !Run
  17194. file, the line
  17195. 6.3
  17196. Filer_Run <Obey$Dir>.Message
  17197. 6.3
  17198. If you had set the filetype to Obey, the message would pop up moment
  17199. arily then disappear before the application loaded. (Hugh Eagle)
  17200. 6.3
  17201. Å   Deskboot files and the Pinboard ù The User Guide explains how to
  17202. create a !Boot file to boot the computer in your desired configuration.
  17203. It adds that, when saving the !Boot file, information to start up
  17204. applications produced before RISC-OS 3 is not saved automatically. To
  17205. get round this, it explains how to rename the !Boot file as Deskboot and
  17206. to incorporate it in a !Boot application. It goes on to explain how to
  17207. edit the Deskboot file, either to remove or to add lines as necessary.
  17208. 6.3
  17209. If you use the Pinboard as I do, some icons will be changed on a regular
  17210. basis. For example, I have regularly used files which change each month.
  17211. If the Deskboot file is saved each time the Pinboard is changed, a
  17212. certain amount of what the User Guide calls öhand editingò would have to
  17213. be done each time a change is made, to remove or add relevant
  17214. instructions.
  17215. 6.3
  17216. There is an easy solution. Set up your Desktop once and save the
  17217. Deskboot file. Then click <menu> over an empty space on the desktop and
  17218. save the Pinboard settings in the Pinboard file in your root directory.
  17219. Now drag your Deskboot file into !Edit (or Shift-double-click on it) and
  17220. delete all the lines which begin öPinò. Alter the line öPinboardò or
  17221. öPinboard -Gridò to read öRun Pinboardò or öRun Pinboard -Gridò.
  17222. 6.3
  17223. Future changes to the Pinboard setting now need be saved only to the
  17224. Pinboard file in your root directory. (John Waddell)
  17225. 6.3
  17226. Ken Cowap warns that a DeskBoot file can easily be unnecessarily
  17227. cluttered if, for instance, there are a number of unwanted items on the
  17228. screen when it is made. This will incur a penalty in the time taken to
  17229. boot up Ö his started at two and a half minutes before he trimmed it
  17230. ruthlessly.
  17231. 6.3
  17232. Å   ADFS buffers Ö According to Acornæs telephone help line, the bug which
  17233. made it advisable to configure the adfs buffers to zero has been fixed!
  17234. (According to Computer Concepts, unless the buffers are configured to
  17235. zero, it is vital to dismount disks before removing them for good from
  17236. the machine, because otherwise there may be trouble later.) (Jochen
  17237. Konietzko)
  17238. 6.3
  17239. Å   OS_Byte calls and the serial port ù I use my A3000 for many purposes,
  17240. one of the more important being as a terminal to our mainframe computer.
  17241. The software for this I have written myself in Basic. After the upgrade,
  17242. my terminal program wouldnæt work. It would not accept characters from
  17243. the serial port. I tried using the serial port utility module supplied
  17244. with the upgrade, but this did not help.
  17245. 6.3
  17246. After a lot of experimenting, we finally discovered that if we changed
  17247. all the *FX calls for SYS öOS_Byteò calls, then the program would work.
  17248. It still puzzles me why two supposedly similar commands should give
  17249. different results! (S.áJ.áFurnell)
  17250. 6.3
  17251. Å   Z88 Filers ù The Release Note says that the !Z88 filer supplied with
  17252. Pipedream requires interactive filing to be off. Youæll be pleased to
  17253. know that David Holdenæs !Z88 filer (Careware 7) suffers from no such
  17254. problems. (Steve Hutchinson)
  17255. 6.3
  17256. Å   Programs that call machine code from Basic ù An application I used a
  17257. lot, !BPrint (Risc User) wouldnæt run with RISC-OS 3, and the cure for
  17258. this may well apply to other applications organised in a similar layout,
  17259. i.e. using a central Basic program calling a separate piece of machine
  17260. code. The cure was to re-assemble the code under RISC-OS 3; obviously
  17261. there is some small difference between its assembler and that of RISC-OS
  17262. 2. In this particular application, its öancestorò (the program developed
  17263. over a period of time), a program called FileList from vol.2 issue 5 was
  17264. rerun to produce the assembled file BLIST which was substituted for the
  17265. original. (Ken Cowap)
  17266. 6.3
  17267. Å   Mode number conflicts ù A program for plotting Mandelbrot diagrams
  17268. failed with RISC-OS 3 and the manner of its failure may indicate a cure
  17269. for others. This particular program called a Mode 40 which didnæt exist
  17270. under RISC-OS 2 but which was specially designed and provided with the
  17271. program. RISC-OS 3 of course does have a native Mode 40 and a clash
  17272. between it and the öspecialò gave rise to the error report. The cure was
  17273. to rename the öspecialò to a mode number outside the range provided with
  17274. RISC-OS 3, in this case Mode 50. (Ken Cowap)
  17275. 6.3
  17276. Å   Setting !Alarm options ù This is a minor matter, unless you are trying
  17277. to set your own !Alarm display format in a !Boot file. This you do with
  17278. a Set Alarm$Options line (p136 App Guide). The quotes are omitted. This
  17279. is my (working) line:
  17280. 6.3
  17281. Set Alarm$Options -format ö%z24:%mi %zdy.%zmn.%zyrò
  17282. 6.3
  17283. If you use a !Boot file and !Alarm, put it in to see my favourite
  17284. display format! (Steve Hutchinson)
  17285. 6.3
  17286. Miscellaneous comments
  17287. 6.3
  17288. Å   Surely a Égrown upæ operating system shouldnæt say, öDisc error 10 at
  17289. :0/00000000ò when you try to read an unformatted disc?
  17290. 6.3
  17291. Å   It seems strange that !Configure requires you to press <return> after
  17292. typing into a writable icon. This is not normal RISC-OS convention.
  17293. 6.3
  17294. Å   Itæs a shame that they didnæt manage to squeeze some suitable backdrop
  17295. sprites onto one of the RISC-OS 3 discs. Those who have access to
  17296. Windows 3 might like to know that its wallpaper bitmaps seem to work
  17297. very well on the RISC-OS 3 Pinboard, and it is very easy to transfer
  17298. them from an MS-DOS floppy, via !ChangeFSI (on the Support disc), into
  17299. sprite format on an Archimedes disc. The file called öleaves.bmpò makes
  17300. an excellent seasonal backdrop (Iæm writing this in October!).
  17301. 6.3
  17302. Alt-key combinations
  17303. 6.3
  17304. The last couple of issues of Archive have contained lists of Alt-Key
  17305. combinations in RISC-OS 3.1. To complete the picture I would add:
  17306. 6.3
  17307. To get accents ( ┤ ` ¿ ^ ░ ╕ ) on their own, press the appropriate Alt-
  17308. key combination (e.g. Alt-[ for aá┤á) then the space bar.
  17309. 6.3
  17310. Alt-Spacebar gives a öhard spaceò or önon-breaking spaceò (the sort you
  17311. put between öNR2ò and ö2SDò if you donæt want Archiveæs postcode
  17312. öNR2á2SDò to be split over two lines.)
  17313. 6.3
  17314. I have put a diagram of the keyboard showing the Alt-key combinations
  17315. below, and I hope that Paul will put the drawfile on the monthly program
  17316. disc.
  17317. 6.3
  17318. Incidentally, I am a bit puzzled about the character (code 173) that is
  17319. produced by the Alt-hyphen combination. Whatæs it for? I thought at
  17320. first that it was the ösoft hyphenò that is described on page 109 of the
  17321. Impression 2 manual, but I now see that this is produced by Ctrl-hyphen
  17322. (this character ù code 31 ù is normally invisible but indicates a
  17323. preferred place for breaking a word with a hyphen at the end of a line;
  17324. it works even if the hyphenation module is not present). By contrast,
  17325. character 173 is, so far as I can see, always visible (as a hyphen if
  17326. the font follows the Acorn standard) but its effect is to prevent a word
  17327. into which it is inserted ever being broken over the end of a line even
  17328. if hyphenation is switched on. Am I correct in describing it as a öhard
  17329. hyphenò? (Well, I can think of one application. Suppose you want to use
  17330. a word like öpray¡ersò where you deliberately hyphenate the word to
  17331. refer to the people doing the praying. In that case, if it were an
  17332. ordinary hyphen, the word might get split at the end of a line. Using a
  17333. Éhard hyphenæ avoids the split. Ed)
  17334. 6.3
  17335. The upgrade again
  17336. 6.3
  17337. Finally, I thought it would be good to take a slightly light-hearted
  17338. look at the subject as we hear the experiences that Rob Wears had in
  17339. fitting and using RISC-OS 3 on an A310...
  17340. 6.3
  17341. I finally managed to get my grubby mitts on the RISC-OS 3 upgrade at the
  17342. Acorn User show, and arrived back home with that odd mixture of terror
  17343. and excitement that comes from having to take the lid off the machine.
  17344. Iæve fitted one or two things in the past, like the soldered 4MByte RAM
  17345. upgrade, but no matter how many times I do it, itæs still a bit like
  17346. performing neurosurgery on a close friend. Will Archie pull through,
  17347. Doc? Actually, fitting was a lot easier than Iæd thought. I used the
  17348. IFEL carrier board, as their memory upgrade has proven so reliable. My
  17349. only source of concern was the discrepancy between their fitting
  17350. instructions and the ones supplied by Acorn which alluded to changing
  17351. links on the mother board. I followed the IFEL guidelines, which had the
  17352. link changes on their board, and waited anxiously for the machine to
  17353. explode when I switched it on. No problem, apart from the fact that I
  17354. bypassed the desktop and ended up at the command line. Still, the
  17355. desktop was easily accessible with a simple ö*ò command.
  17356. 6.3
  17357. The hard drive icon was where it should be (and no longer jumped around
  17358. when I mounted or dismounted the disc!) and I am pleased to say that I
  17359. encountered no problems with the Oak SCSI board (version 1.16 of SCSI
  17360. driver).
  17361. 6.3
  17362. I couldnæt resist the urge to delve into the Apps directory, and here I
  17363. encountered my first problem. Initially, I couldnæt get !Edit to load
  17364. from Apps and was greeted with the wonderfully informative message ÉFile
  17365. öBasicò not foundæ. Fighting the sudden tide of panic (öIt wouldnæt work
  17366. at all if the ROM legs were snapped off, idiot!ò) I checked the module
  17367. list via the command line and found that I was apparently the lucky
  17368. owner of the one set of chips which Acorn had shipped without putting
  17369. Basic on board first. I was about to fall on my soldering iron in
  17370. despair when I thought of checking the status of the system modules
  17371. using *ROMModules and found that the Basic module was unplugged. I
  17372. reinitialised the module, and !Edit worked fine. There, that wasnæt too
  17373. bad Ö the hair will probably grow back and nobody will notice the
  17374. teethmarks on the manual....
  17375. 6.3
  17376. Incidentally, the ARM3Support module was also unplugged and therefore
  17377. the *Cache command wouldnæt work, but Iæd got the hang of things by now,
  17378. and pressed on happily. I then UNPLUGged the modules that I thought I
  17379. wouldnæt need (old habits die hard) like the Econet and NetFS modules Ö
  17380. each unplug command was greeted with the comment öxxxx module not foundò
  17381. yet a subsequent check revealed that the module had been unplugged
  17382. correctly Ö odd! Archie hadnæt behaved like this before his lobotomy. It
  17383. was a bit unnerving, like suddenly finding the Queen Mother skateboard
  17384. ing down your front drive.
  17385. 6.3
  17386. I then set about gingerly reconstructing the !Boot option for the hard
  17387. disc, feeding the bits to my new Archie in small, digestible chunks.
  17388. Compression (version 1.10) and !Spark both worked fine, after I
  17389. remembered not to set the öNewerò option for copying. However, Archie no
  17390. longer likes the öOS_UpdateMEMCò call which I had used to speed up the
  17391. ROMs. This is now treated with the same degree of horror as if Iæd just
  17392. offered it deep-fried weevil for tea, and the machine has to be kicked
  17393. out of its sulk with a hard reset. I initially and unjustly blamed the
  17394. old OSSys module, but this actually seems to be fine and is the only
  17395. real survivor from my old collection of useful bits and pieces Ö have
  17396. they STILL forgotten to put a *SYS command in?
  17397. 6.3
  17398. The next little gem was the öChangeDynamic Areaò calls which are
  17399. automatically saved in the desktop !Boot file Ö these override the CMOS
  17400. RAM settings and I couldnæt work out why the system sprite area remained
  17401. so large despite all my efforts to shrink it. And remember, Gentle
  17402. Reader, not to save the !Boot file in a Compression directory because,
  17403. despite what they all say, those teethmarks in the manual do show! On
  17404. the brighter side, I found that the configured startup language was not
  17405. the desktop, which explained Archieæs new enthusiasm for the command
  17406. line. The number for the configured language of your choice is now
  17407. obtained by counting down the list of modules Ö how simple. Not a
  17408. mention of alchemy or the Black Arts. Good grief, if itæs that simple,
  17409. anybody will be able to do it...
  17410. 6.3
  17411. The !FontsPlus application caused some frontal headaches (actually,
  17412. these may have been caused by sudden and repeated violent contact
  17413. between the forehead and the monitor) as I could not persuade it to
  17414. recognise the ROM based fonts. Off it went to the great filestore in the
  17415. sky, and back I went to using multiple directories with original names
  17416. (!Fonts, !Fonts2, !Fonts3, !Fonts4, etc.). How quaint!
  17417. 6.3
  17418. On to some serious computing. Impression works! (Actually, I cheated. I
  17419. got the upgrade from those nice CC people at the show). And there are
  17420. more screen modes available from startup, and a *WimpMode command to
  17421. simplify my DTP !Boot sequence. On the down side, I have found printing
  17422. to be a bit of a pain Ö my old !PBuffer application doesnæt work anymore
  17423. and even making the PrinterBufferSize HUGE using *CONFIGURE doesnæt seem
  17424. to do anything. However, there are many more options available for
  17425. printed output. I can even get 360╫360 dpi on the Panasonic and it only
  17426. takes about 30 minutes a page!
  17427. 6.3
  17428. I seem to have more space on the hard disc now. I used to have lots of
  17429. little applications that Iæd collected over the years which now have
  17430. their functions in ROM, such as SetType, FileFind, StickyBD and
  17431. ShutDown. Being ruthless, and having no more need for them, I erased
  17432. them completely. Who knows, one day, I might even erase the backups of
  17433. the backups.
  17434. 6.3
  17435. So am I sorry to have upgraded? Not at all. It was just that the scale
  17436. of the change surprised me. I suppose that the change was more compli
  17437. cated because I had my system set up exactly the way I wanted it, and
  17438. had to restructure virtually the whole hard disc. It was just as
  17439. traumatic as upgrading from Arthur to RISC-OS2 had been, but Iæm very
  17440. pleased with my new machine. Of course, 3.1 goes into 310, and it may
  17441. even be 100 times better!
  17442. 6.3
  17443. (Actually, this has an important moral Ö if Rob had followed Acornæs
  17444. instructions and done a <delete-power-up> in the first place, he
  17445. wouldnæt have had half the problems he did. Ed.)
  17446. 6.3
  17447. And finally ...
  17448. 6.3
  17449. Send your comments, suggestions, queries, complaints, hints and tips
  17450. either to me, Hugh Eagle, at 48 Smithbarn, Horsham, Sussexá RH13 6DX.ááA
  17451. 6.3
  17452.  
  17453.  
  17454. Hints and Tips
  17455. 6.2
  17456. Å   3D icons for RISC-OS 3.1 Ö Here are some tips for those of you who
  17457. upgraded from RISC-OS 3.00 to RISC-OS 3.10 (and for anyone else who is
  17458. interested in a fancy desktop).
  17459. 6.2
  17460. If you have used the fancy 3D-like window borders on your A5000, you
  17461. will probably have noticed that, with RISC-OS 3.1, the borders will not
  17462. install properly. This is because RISC-OS 3.0 programs used the
  17463. ÉIconSpritesæ command to install the wimpæs tool sprites (i.e. borders),
  17464. while in RISC-OS 3.1 there is a new command to install user defined
  17465. window tools:
  17466. 6.2
  17467. *ToolSprites <spritefile>
  17468. 6.2
  17469. This is, I think, because the border sprites are now held in a separate
  17470. sprite area for faster redrawing. So, the only thing you have to do is
  17471. to change the command ÉIconSpritesæ into ÉToolSpritesæ at the appropri
  17472. ate places in your files. Note that you can also re-install the default
  17473. window tools by entering ÉToolSpritesæ on the command line.
  17474. 6.2
  17475. The small utility I use to install enhanced icons (a modified version of
  17476. !SetIcons), shows another minor modification of RISC-OS 3.1. It is now
  17477. assumed that some icons have the same dimension. For example, some
  17478. border elements are painted from two sets of sprites Ö one that is
  17479. normally used and one that is used when you select this particular
  17480. border element. If corresponding sprites within these sets are different
  17481. in size, you will see that some parts of the elements are not painted
  17482. when you select them. To overcome this problem, you can adjust the sizes
  17483. with !Paint.
  17484. 6.2
  17485. For those programmers who liked the Impression-style dialogue boxes,
  17486. there exists a module called ÉInterfaceæ. This module takes care of most
  17487. of the code to generate fancy icon borders. RISC-OS 3.0 has some in-
  17488. built extras to achieve the same thing without the need to insert extra
  17489. lines of code into your program. (The programmer only has to define some
  17490. validation strings which contain the information to generate the desired
  17491. effect.) However, because the validation string command syntax was
  17492. essentially the same as the syntax used by the Interface module, there
  17493. were sometimes problems when using the Interface module with RISC-OS
  17494. 3.0.
  17495. 6.2
  17496. After I installed the new RISC-OS 3.1 ROMs, I was surprised to see that
  17497. my own (RISC-OS 3.0!) programs didnæt have fancy borders any more. After
  17498. some experimenting with the validation strings, I discovered that the
  17499. command syntax is now different from the syntax used by the Interface
  17500. module. To be more specific, RISC-OS 3.1 makes use of Ér<int><colour>æ
  17501. (where <int> is a number between 0 and 8 and <colour> is a WIMP colour
  17502. number), instead of Éb<int>, ...æ. This modification probably has been
  17503. made to overcome the incompatibility problems with the Interface module.
  17504. The simplicity with which you can use this prompts a question: Why donæt
  17505. the ROM based applications like Draw use this facility? I guess this is
  17506. just another ÉAcorn-mysteryæ.á Paul Groot, Holland.
  17507. 6.2
  17508. Å Editing paper sizes in RISC-OS 3 Ö If attempts are made to edit the
  17509. paper sizes contained within the standard RISC-OS 3 printer driver
  17510. files, it will be found that any changes made to the Text Margins
  17511. section will revert to 0 when the window is closed, even if Save
  17512. Settings is selected. This is due to a bug, but can be rectified by
  17513. editing the paper files directly.
  17514. 6.2
  17515. Editing any of the paper sizes results in a new file called PaperRW
  17516. being generated in the Printers application directory. This file can be
  17517. modified using Edit. Make sure that the Printers application is not
  17518. running (i.e. Choose Quit from the iconbar menu if it is). Find the
  17519. !Printers application (normally in the App1 directory) and open it using
  17520. Shift-double-click. Open the file called PaperRW by Shift-double-
  17521. clicking on it. Scroll down the file until you find the name of the
  17522. paper setting which you defined or modified. It will look something like
  17523. æpn: Fanfold A4æ. At the bottom of the set of numbers relevant to this
  17524. paper setting are five values (called tb, tt, tl, tr, th) which
  17525. correspond to the text bottom, top, left and right margins and the
  17526. height (in lines) respectively. Alter the values from 0 to your required
  17527. numbers and save the file. When you re-run the Printers application,
  17528. your paper sizes will be rectified.á Simon Moy, N.C.S.
  17529. 6.2
  17530. Å   How NOT to treat your SCSI hard disk Ö A few weeks ago I found a new
  17531. way to get rid of all those files that clogged my external hard disk(!)
  17532. 6.2
  17533. Every verify I did showed up one questionable sector, so I decided to
  17534. map it out as defective. The *Defect command applies only to ADFS, so I
  17535. browsed through the SCSI diskæs manual and, finally, found what I was
  17536. looking for (or so I thought).
  17537. 6.2
  17538. Morley supply their hard disks with a formatter application which,
  17539. amongst other things, can add defects to a list. There is a warning that
  17540. a low level format would result in total loss of data but, later in the
  17541. description, an option was mentioned to decide whether or not to do the
  17542. low level format while running the application.
  17543. 6.2
  17544. This led me to believe that clicking on ÉNoæ would keep my data intact Ö
  17545. alas, I was wrong!
  17546. 6.2
  17547. The Morley hotline informed me that I had in fact done a high level
  17548. format which wipes out the information about the addresses for each
  17549. file. As the passage in the manual could be misunderstood, they very
  17550. kindly offered to restore my data for me free of charge (just p&p).
  17551. (Great service!!)
  17552. 6.2
  17553. However, it was not to be: I forgot to inform them that I use Computer
  17554. Conceptsæ Compression on most of my files and this, I was told later,
  17555. encodes the files in such a way that retrieval becomes virtually
  17556. impossible.
  17557. 6.2
  17558. I learned two things from my self-made disaster:
  17559. 6.2
  17560. 1)áEven the excellent Compression is not proof against all kinds of
  17561. fools.
  17562. 6.2
  17563. 2)á800 Kb floppy disks are just not good enough as a backup medium! I
  17564. shudder at the thought that I will have to feed 112 floppies into my
  17565. machine, once the hard disk returns from England.
  17566. 6.2
  17567. As a consequence, for future backups I have ordered a 20Mb floptical
  17568. drive from Morley, to be sent as soon as it is able to read and write
  17569. Acorn floppy formats.á Jochen Konietzko, K÷ln, Germany.
  17570. 6.2
  17571. Å   Humour in RISC-OS 3.1! Ö You will be pleased to hear that humour still
  17572. exists within Acorn. If you load ÉResources:$.Resources.
  17573. Switcher.Templatesæ into the template editor, FormEd, you get an
  17574. interesting message.á Knut Folmo, Norway
  17575. 6.2
  17576. Å   Loading multiple Impression documents Ö If you want to load a number
  17577. of Impression files at once, just select them (with rubber band dragging
  17578. on RISC-OS 3, if you like) and drag them down onto the Impression icon
  17579. on the iconbar.
  17580. 6.2
  17581. Å Memory size from Basic Ö In Basic, there is no specific way to find
  17582. out how much physical memory is fitted to the host machine. However, it
  17583. can be calculated using a SWI call as in this example:
  17584. 6.2
  17585. 10 SYS öOS_ReadMemMapInfoò TO PageSize%, NumOfPages%
  17586. 6.2
  17587. 20 TotalMemory% = PageSize% * NumOfPages%
  17588. 6.2
  17589. 30   REM This value is in bytes
  17590. 6.2
  17591. 40 Total% = TotalMemory% / 2^20
  17592. 6.2
  17593. 50   REM This value is in Mbytes
  17594. 6.2
  17595. Simon Moy, N.C.S.
  17596. 6.2
  17597. Å   More RISC-OS 3.1 Alt Characters The current A5000 Welcome Guide
  17598. mentions some additional Alt-key characters. These alt-keys donæt
  17599. actually produce a character themselves, they just set up an accent, so
  17600. that the following character is changed into an accented character. This
  17601. only happens if the accent is suitable for the following character.
  17602. 6.2
  17603. For example to type an Éeæ with an acute accent (Θ): Whilst holding down
  17604. the Alt key, press and release <[>. Release <alt> and the press and
  17605. release <E>. Thus:-
  17606. 6.2
  17607. Alt-[  E     Θ
  17608. 6.2
  17609. Alt-]  E     Φ
  17610. 6.2
  17611. Alt-;  E     δ
  17612. 6.2
  17613. Alt-æ  E     Ω
  17614. 6.2
  17615. Alt-,  N   ±
  17616. 6.2
  17617. Alt-.  A     σ
  17618. 6.2
  17619. Alt-/  C     τ
  17620. 6.2
  17621. The only other Alt-key character missing from the previous list is Alt-
  17622. hyphen which gives character 173, which, in the Acorn fonts, looks
  17623. exactly like a normal hyphen, but is often different in fonts from other
  17624. suppliers.á Simon Moy, N.C.S.
  17625. 6.2
  17626. Å MS-DOS 5, PC Emulators and the Archimedes keyboard Ö (This excerpt
  17627. from a reply to an Archive readeræs letter may prove useful to others.)
  17628. The cursor keys do not work correctly with the PC emulators due to a
  17629. bug. They will not work properly with either QBasic or DOS Edit. They
  17630. can be used to move around the text but, to select text, you must use
  17631. the cursor and editing keys which are mapped on the numeric keypad (as
  17632. on a normal PC AT-style keyboard). Therefore, when inside the editors,
  17633. make sure that NumLock is off and use <shift> and the following keys (on
  17634. the numeric keypad):
  17635. 6.2
  17636. 6.3
  17637. 6.2
  17638. AMOUSE.COM is fully compatible with MS-DOS 5. However, as with all PCs,
  17639. you cannot display the mouse pointer at the DOS prompt. Also, not all PC
  17640. programs support the mouse. However, if the AMOUSE command is present in
  17641. your AUTOEXEC.BAT file and the program you want to use accepts a mouse
  17642. (e.g. QBasic, EDIT and DOSSHELL), you must start the appropriate
  17643. application first and then select Connect Mouse (by pressing <menu> over
  17644. the PC emulator window) if you are running the emulator from a window in
  17645. the RISC-OS desktop. If you are using the emulator under Single Task
  17646. mode, the mouse should automatically connect itself. (If the mouse does
  17647. not connect itself automatically when running the emulator under Single
  17648. Task mode, then this is a further bug in the PC emulator.) Typing AMOUSE
  17649. at the DOS prompt or selecting Connect Mouse from the windowæs menu will
  17650. not display the DOS mouse pointer, as DOS itself does not support a
  17651. mouse. If you do this, the RISC-OS pointer will disappear (because
  17652. control has passed to DOS) and you must press <menu> on the mouse to
  17653. relinquish control from the emulator back to RISC-OS.á Simon Moy, N.C.S.
  17654. 6.2
  17655. Å Pound sign problems Ö The pound sign has always been a difficult
  17656. character to print and display on the screen. To make the pound sign
  17657. appear in the PC Emulator, press and hold <alt> and type 156 on the
  17658. numeric keypad. When you release <alt>, the pound sign will appear.
  17659. 6.2
  17660. If you are printing a file as text (i.e. from Edit or PipeDream for
  17661. instance) then the pound sign will print as a hash (#). You can reverse
  17662. this by using a hash symbol in your text in place of the pound sign,
  17663. although it is important that your printer is set up with a UK character
  17664. set Ö see the DIP switch settings for your specific printer. If you are
  17665. printing a file produced using bitmaps (e.g. Impression) then the pound
  17666. sign will print correctly anyway. Basically, any program which defaults
  17667. to printing on the screen using the system font will print characters as
  17668. plain text Ö there is a section on plain and fancy text in the RISC-OS
  17669. User Guide.
  17670. 6.2
  17671. By the way, does anybody know why you canæt access the pound sign
  17672. (either from the keyboard or <alt-156>) in a Task Window under RISC-OS
  17673. 3.0?á Simon Moy, N.C.S.
  17674. 6.2
  17675. Å RISC-OS 3.1: A310 Ö There is a problem when fitting RISC-OS 3.1 to
  17676. A310 machines fitted with the Arcram 434 ARM3 + 4Mb upgrade from Watford
  17677. Electronics. It causes the machine to hang on power-up. Replacement PAL
  17678. chips and more information are available from Watford Electronics on
  17679. 0923Ö37774 (Fax: 33642).á Simon Moy, N.C.S.
  17680. 6.2
  17681. Å RISC-OS 3.1: SCSI drives Ö There may be problems accessing the SCSI
  17682. drive using the HCCS Hard Card interface with RISC-OS 3.1. Contact HCCS
  17683. for details.á Simon Moy, N.C.S.
  17684. 6.2
  17685. Å Rotated fonts and sprites using Laser Direct Ö With the advent of
  17686. RISC-OS 3.1, there are problems with printing rotated text and graphics
  17687. using the currently existing RISC-OS 2 printer drivers such as that
  17688. supplied with Laser Direct. To overcome the problem, transform the text
  17689. or sprite to any angle in Draw, make sure that the item is selected and
  17690. choose the Convert to Path option from the Select submenu. This will
  17691. allow rotated text or sprites to be printed correctly using the RISC-OS
  17692. 2 printer driver supplied with Laser Direct. This does not mean that it
  17693. will work with all RISC-OS 2 printer drivers Ö you will have to
  17694. experiment! Steve Costin, Ramsgate.
  17695. 6.2
  17696. Å   TV interference Ö In response to Chris Bassæ enquiry in Archive 6.1
  17697. p36, here is a general procedure which covers almost all cases:
  17698. 6.2
  17699. 1. Does the computer interfere with your own TV, when it is as close/
  17700. closer to your computer than your neighbouræs TV is? (On either side of
  17701. a party wall they could be less than 1 m apart!)
  17702. 6.2
  17703. If YES, go to 2. If NO, go to 3.
  17704. 6.2
  17705. 2. Does the interference disappear when the computer is 3 m or more from
  17706. the TV?
  17707. 6.2
  17708. If YES, agree with your neighbour to move your computer and his TV so
  17709. that they are more than 3 m apart. If moving them apart is inconvenient,
  17710. you could try sticking cooking foil on to the party wall (under the wall
  17711. covering, eventually). You need a minimum of about 2 m by 2 m, and there
  17712. is usually no point in earthing it, but you could try the effect.
  17713. 6.2
  17714. In some types of building, your computer might be too close to your
  17715. neighbouræs TV aerial, in which case moving them apart is the best bet.
  17716. 6.2
  17717. If NO, the computer may be faulty. Many dealers may not be able to cope
  17718. with this type of fault, so you, or your dealer, should contact Acorn
  17719. with a FULL description of the problem.
  17720. 6.2
  17721. 3. If NO to question 1, your neighbouræs TV has either an inadequate
  17722. aerial or inadequate Éimmunityæ. (This is a technical term describing
  17723. Éresistance to electromagnetic disturbancesæ.) An inadequate aerial
  17724. usually also gives Éfuzzyæ pictures and/or ghosts (outlines of images
  17725. displaced sideways). The aerial itself may be OK; the fault may be in
  17726. the downlead. They tend to fill up with water and deteriorate after a
  17727. time. A new aerial (and downlead) is quite inexpensive, even a large
  17728. one. If the aerial is not the problem, the manufacturer of the receiver
  17729. should be contacted, either directly or through the TV dealer or rental
  17730. company, regarding the probable lack of immunity of the TV. Manufac
  17731. turers (of TVs and computers) are quite concerned about this at present,
  17732. because of an EC Directive on the subject.
  17733. 6.2
  17734. 4. If all else fails, the DTI Radio Investigation Service will look at
  17735. the problem and give advice but there is a fee of about ú21 involved.
  17736. The Service has much information and experience of such problems and
  17737. their cures, including private information about know immunity problems.
  17738. For Lincolnshire, the address is (or was) PO Box 2500, Nottingham NG8
  17739. 3SS. The head office is at Waterloo Bridge House, Waterloo Road, London
  17740. SE1 8UA. A book, ÉHow to improve Television and Radio Receptionæ is/was
  17741. available from the Service, and gives a good deal of information on
  17742. interference problems (some of it technical).á John Woodgate, Rayleigh,
  17743. Essex.ááA
  17744.  
  17745.  
  17746.  
  17747. Hints, Tips and Letters
  17748. 6.2
  17749. A combined selection this month, since the hints and tips stem from
  17750. letters I have received recently.
  17751. 6.2
  17752. ÅáKey Windowá/áImpression problem:ááI am grateful to Jack Evans of
  17753. Bristol for pointing out this problem to me, particularly since I am the
  17754. author of the program in question. Key Window (available on Shareware 47
  17755. ù see review in Archive 6.1 p31) is a program which displays keystrips
  17756. in a window, and the strips update themselves as you move the caret
  17757. between tasks.
  17758. 6.2
  17759. The problem is that if you have Key Window running at the same time as
  17760. you are editing a document in Impression which is set to auto-save, the
  17761. auto-save doesnæt work. You can still save manually of course, but this
  17762. is something which is easy to forget about. The solution is easily
  17763. effected, if not very satisfactory. You have to de-select ÉSense caretæ
  17764. in Key Windowæs Options menu. Unfortunately, this will prevent Key
  17765. Window from changing keystrips as you move between applications. If you
  17766. use Impressionæs auto-save a lot, and want to disable Key Windowæs
  17767. interference permanently, you can edit the !Run file to disable the
  17768. Ésense caretæ option via a system variable. Full instructions for doing
  17769. this are provided in the file.
  17770. 6.2
  17771. Users may be interested to know that I have just started work on version
  17772. 2 of Key Window, and am re-writing it from scratch to make it a much
  17773. better program with enhanced facilities. I intend to approach Computer
  17774. Concepts about the problem, to see if a satisfactory solution can be
  17775. found. Other programs with auto-save facilities, such as Ovation and
  17776. Vector, do not appear to suffer from the problem.
  17777. 6.2
  17778. ÅáProtecting Impression files:ááCharles Martin from the Isle of Wight
  17779. has been having a few problems with some Impression Étemplateæ files ù
  17780. empty documents with standard formats. He wants to make them Delete- and
  17781. Write-protected via the fileræs Access menu but has found that setting
  17782. the files (which are, of course, in the form of application directories)
  17783. to Élockedæ does not protect their contents. Similarly, opening the
  17784. directories and choosing ÉSelect allæ does not have the desired effect.
  17785. 6.2
  17786. This situation actually applies to all applications and directories, not
  17787. just Impression files. However, under RISC-OS 3, the Access menu is
  17788. completely redesigned and works much better, so the problem only really
  17789. affects RISC-OS 2 users. The difficulty arises because of the distinc
  17790. tion that the filer makes between directories (be they normal
  17791. directories or application directories) and actual files. This is one of
  17792. those Éfeaturesæ of RISC-OS 2 which needs a bit of care.
  17793. 6.2
  17794. Under RISC-OS 3, if you select a directory or application directory
  17795. (such as an Impression file) and set it to ÉProtectedæ, the filer will
  17796. protect all the files within it, no matter how many sub-directories
  17797. there are. Under RISC-OS 2, however, it will only set the status of the
  17798. directory itself. You therefore need to open the directory, select all
  17799. the files within it and set their attributes via the Access menu.
  17800. However, there is a further complication: if the selection of files
  17801. contains any directories, the process will be upset Ö the directories
  17802. need to be deselected first.
  17803. 6.2
  17804. Under RISC-OS 2, to protect an Impression file, you would need to open
  17805. it up, choose ÉSelect allæ from the filer menu, deselect any directories
  17806. in the selection by clicking on them with <adjust>, and finally set all
  17807. the filesæ attributes via the Access menu. Then repeat the process for
  17808. each of the directories which you had deselected (ÉMasterChapæ,
  17809. ÉChapter1æ, etc). There is simply no point in protecting the directories
  17810. themselves, since it is impossible to delete a directory which contains
  17811. locked files, and locking a directory (under RISC-OS 2) does not affect
  17812. the access status of the files within it in any case.
  17813. 6.2
  17814. All in all, itæs probably easiest to upgrade to RISC-OS 3!
  17815. 6.2
  17816. ÅáApplause for Ovation:ááA highly enthusiastic letter about Ovation has
  17817. been received from Tony Greenfield of Birmingham. He has the following
  17818. to say:
  17819. 6.2
  17820. ö[Ovation] does just what I had hoped for and more. The manual is
  17821. brilliant! It is a work book on DTP, quite good enough as an introduc
  17822. tion to the subject to beginners and as an encouraging tutorial for more
  17823. experienced users. I found it much more useful than First Impression. I
  17824. have learnt much about Impression II and much about how a manual should
  17825. be presented. I wonder if the reason that there are not many hints and
  17826. tips on using Ovation [in Archive] is because the user manual is so
  17827. clear? (It may also have something to do with the relative numbers of
  17828. people using the two packages. Ed.) There are many features which I like
  17829. about the program. In fact, there is not very much missing ù I wonder
  17830. if, for most people, Impression is not really required Ö after all, itæs
  17831. more expensive than Ovation. Iæm sure that, for schools who have yet to
  17832. purchase a DTP package, Ovation would be a must better buy than
  17833. Impression, for many reasons Ö perhaps most of all for the ease of use,
  17834. and I guess it would be easier to learn than Impression.ò
  17835. 6.2
  17836. Tony goes on to list various features which he likes in Ovation, notably
  17837. its wide range of effects such as word underline, small caps and
  17838. tracking, and its system of basing font styles on one family name, so
  17839. that changing the base family will also alter the italic and bold fonts.
  17840. 6.2
  17841. I would certainly agree with Tonyæs comments about the manual, which is
  17842. indeed a very helpful document, although I think Impression is the
  17843. easier of the two to learn, as Ovation has a quite unwieldy menu
  17844. structure. Perhaps the quality of the manual really is the reason why we
  17845. havenæt received more tips on using the program from readers. Anyway,
  17846. things are set to change from this month in Archive, with the advent of
  17847. Maurice Edmundsonæs dedicated Ovation column. (We also have a new DTP
  17848. editor, Ray Dawson, whose first column will appear next month.) For
  17849. further comments about Ovation, see my Ovation/Impression comparison
  17850. article which follows on page 33.ááA
  17851.  
  17852.  
  17853. Hints and Tips
  17854. 6.1
  17855. Å   Alt characters Ö On upgrading from RISC-OS 2 to RISC-OS 3.1, I thought
  17856. I had lost my É╫æ character. I eventually found that it had moved from
  17857. <alt-,> to <shift-alt-,>. (Even on RISC-OS 3.0 on the A5000 it is still
  17858. <alt-,>.) So I investigated all the possible ALTernatives(!). Here are
  17859. all the ALT characters I found. They are laid out in QWERTY order but
  17860. where no special character appeared, the key is not included in the
  17861. list.
  17862. 6.1
  17863. key   ALT   shift ALT
  17864. 6.1
  17865. `   ¼   ░
  17866. 6.1
  17867. 1   ╣   í
  17868. 6.1
  17869. 2   ▓
  17870. 6.1
  17871. 3   │
  17872. 6.1
  17873. 4   ╝
  17874. 6.1
  17875. 5   ╜
  17876. 6.1
  17877. 6   ╛
  17878. 6.1
  17879. 9      ▒
  17880. 6.1
  17881. r   ╢   «
  17882. 6.1
  17883. y      Ñ
  17884. 6.1
  17885. o   °   ╪
  17886. 6.1
  17887. p   ■   ▐
  17888. 6.1
  17889. \      ª
  17890. 6.1
  17891. a   µ   ╞
  17892. 6.1
  17893. s   ▀   º
  17894. 6.1
  17895. d   ≡   ╨
  17896. 6.1
  17897. f      ¬
  17898. 6.1
  17899. z   ½
  17900. 6.1
  17901. x   ╗
  17902. 6.1
  17903. c   ó   ⌐
  17904. 6.1
  17905. m   ╡   ║
  17906. 6.1
  17907. ,      ╫
  17908. 6.1
  17909. .      ≈
  17910. 6.1
  17911. /      ┐
  17912. 6.1
  17913. I think that is all there is, but if anyone finds any more, let us know.
  17914. Ed.
  17915. 6.1
  17916. Å   Annual service kit Ö In answer to Paulæs comment about hard drives in
  17917. Archive 5.12, p.8, Iæd like to sing the praises of the Alarm application
  17918. (on one of the support disks or in ROM on RISC-OS 3). (You will see the
  17919. link if you read on! Ed)
  17920. 6.1
  17921. I, too, would have forgotten completely about the annual replacement of
  17922. filter and batteries, but for this application (which, thanks to my Boot
  17923. file, always resides on the iconbar): When my machine was a year old,
  17924. Alarm reminded me of this fact in no uncertain terms, (Éurgentæ alarm,
  17925. repeating every hour), so there was very little chance of overlooking
  17926. this necessary bit of maintenance. Jochen Konietzko, K÷ln, Germany.
  17927. 6.1
  17928. Å   Apple Laser Writer II NT Ö Here is some information for anyone wanting
  17929. to make a cable link from an Archimedes to an Apple Laser Writer II NT.
  17930. The connections are as follows...
  17931. 6.1
  17932.    Archimedes   LaserWriter II NT
  17933. 6.1
  17934.    Pin         Pin
  17935. 6.1
  17936.    2   (RXD)   ÖÖÖÖ   3   (TXD)
  17937. 6.1
  17938.    3   (TXD)   ÖÖÖÖ   2   (RXD)
  17939. 6.1
  17940.    5   (0V)   ÖÖÖÖ   7   (0V)
  17941. 6.1
  17942.    6   (DSR)   ÖÖÖÖ   20   (DTR)
  17943. 6.1
  17944. The Archimedes pins DCD (1), DTR (4) and CTS (8) are all linked
  17945. together.
  17946. 6.1
  17947. When using a RISC-OS printer driver you should choose the Serial
  17948. connection with 9600 baud rate, 8 data bits, no parity and 1 stop bit.
  17949. XOn/XOff protocol should also be used.
  17950. 6.1
  17951. Å   DDE Pascal Ö Some would-be users of DDE !Pascal (on Careware 17) will
  17952. have discovered that it wonæt function in Computer Conceptsæ Compressed
  17953. Filing System (CFS), where it generates the error ÉSpecial field not
  17954. allowed in filesystem prefix to OS_CLIæ. This means that the command
  17955. line interpreter, which is invoked to run the Pascal tool, objects to
  17956. some pathname which begins with the prefix ÉCFS#æ. The offending
  17957. pathname turns out to be the <Pascal$Dir>.Pascal, as assigned into
  17958. Alias$Pascal by the !Run file with the apparent function of enabling the
  17959. compiler to be located in the application directory. The remedy is to
  17960. comment out the line which assigns Alias$Pascal and move the compiler
  17961. (i.e. <Pascal$Dir>.Pascal) to your library. This brings the configura
  17962. tion into line with that of the C compiler and other DDE tools and
  17963. causes É*Pascalæ commands to be serviced by default from the current
  17964. library without any explicit reference to a filesystem.ááMike Kinghan,
  17965. Oxford
  17966. 6.1
  17967. Å   DDE Pascal (Careware 17) Ö The release of the public-domain Norcroft
  17968. Pascal compiler for the Archimedes is potentially extremely useful,
  17969. since, although ISO-Pascal is very good, it does not interface well with
  17970. the operating system. More seriously, programs compiled with ISO-Pascal
  17971. do not interface well either.
  17972. 6.1
  17973. The Norcroft system is easy to use and install and does everything that
  17974. is claimed of it. Unfortunately, users should be aware of some problems,
  17975. especially since Acorn obviously does not wish to maintain the product.
  17976. 6.1
  17977. I have some extra severe tests for Pascal, which I have used to test the
  17978. compiler. This shows that the compiler has some errors in the evaluation
  17979. of set expressions: the following program failed (printing True rather
  17980. than False):
  17981. 6.1
  17982. {4 5 6 4 0 3    3000 }
  17983. 6.1
  17984. {the parameters from the full test which failed. }
  17985. 6.1
  17986. program test (output);
  17987. 6.1
  17988. const
  17989. 6.1
  17990.    ten = 10;
  17991. 6.1
  17992. var
  17993. 6.1
  17994.    i: 1..ten;
  17995. 6.1
  17996. begin
  17997. 6.1
  17998. i := 11; (compilation error here?)
  17999. 6.1
  18000. i := ten + 1; (compilation error here?)
  18001. 6.1
  18002. writeln(ÉError not detectedÉ) ;
  18003. 6.1
  18004. end.
  18005. 6.1
  18006. The first error is caught at compile-time by almost all Pascal com
  18007. pilers, including ISO-Pascal. The second error is caught by almost all
  18008. compilers at run-time, and a few at compile-time.
  18009. 6.1
  18010. When using the quit option in the Pascal menu, the system still allows
  18011. command line usage of Norcroft Pascal, although the icon is removed.
  18012. 6.1
  18013. The final significant problem is that programs written in ISO-Pascal do
  18014. not necessarily compile without the ISO option being set. This is
  18015. annoying, since many programs will wish to use some extensions. I donæt
  18016. know of any other Pascal compiler for which the extension option means
  18017. less (in some cases). áBrian Wichmann, NPL.
  18018. 6.1
  18019. Å   Directory size Ö Regarding the issue on directory sizes, etc in the
  18020. hints & tips section, there are a few other points...
  18021. 6.1
  18022. RISC-OS 2 has some problems with certain combinations of disk size and
  18023. allocation unit, so beware. The problem usually causes the machine to
  18024. hang when entering a directory. I have only experienced this using large
  18025. allocation units on small disks.
  18026. 6.1
  18027. The fact that a new dir appears to take 38Kb isnæt the whole story, as I
  18028. believe that there is a facility for small files within a directory to
  18029. use some of the Éwastedæ space. However, if you tend to have lots of
  18030. directories with few files, space does tend to get wasted.
  18031. 6.1
  18032. The best solution as far as both disk, space and speed is concerned is
  18033. to use D format, which uses the Écorrectæ amount of space for direc
  18034. tories and hardly anything for the map. (Remember that there are two
  18035. copies of the map in E format.) D format disks are also MUCH easier to
  18036. recover files from if the root directory or map gets corrupted and files
  18037. can never be fragmented (which slows down access). The only disadvantage
  18038. is the occasional need to compact but I find this a small price to pay.
  18039. I would only recommend E format for non-technical users.
  18040. 6.1
  18041. The same issues will apply to all FireCore based filling systems such as
  18042. IDE, etc. áMike Harrison
  18043. 6.1
  18044. Å   Impression/Squirrel Ö CCæs !Importer (also in their Business Supple
  18045. ment) is supplied by Digital Services with Squirrel. Here is some
  18046. experience that might help other people.
  18047. 6.1
  18048. Using Squirrel, I created a database with 22 fields. I then tried to
  18049. mail merge the resultant report CSV file using !Importer. I got an error
  18050. message saying ÉSubscript out of range (Code 6150).æ After some hours of
  18051. fiddling, I eventually found that if I reduced the number of fields in
  18052. the CSV file to 16, !Importer worked OK. Nick Horn, Thetford.
  18053. 6.1
  18054. Å   Second internal hard drive in an A410/1 Ö I fitted a 40Mb ST506 hard
  18055. drive to my A410, thinking it would be more than adequate. However, with
  18056. the acquisition of the PC Emulator and the formation of a 10Mb DOS
  18057. partition, I was rapidly running out of room. I subsequently purchased a
  18058. second hand 20Mb ST506 drive, which I decided to fit internally rather
  18059. than buy a p.s.u., case and fan. I thought of making some mounting
  18060. brackets but, having seen an advert for a SPACE kit from PRES which
  18061. included brackets and all the leads, I changed my mind and went for
  18062. that. Price was ú38.72 inc VAT. The work involved was to:
  18063. 6.1
  18064. 1)   Remove top two podule blanking plates.
  18065. 6.1
  18066. 2)   Fit metal brackets to drive using screws supplied.
  18067. 6.1
  18068. 3)   Remove the 34 way data cable and replace it with the one supplied,
  18069. connecting it to the existing drive and mother board (SK11), leaving
  18070. spare connector to connect to the second drive later.
  18071. 6.1
  18072. 4)   Connect the supplied 20 way control cable to the spare connector
  18073. (SK8) on the mother board, leaving the other end to be connected to the
  18074. second drive later.
  18075. 6.1
  18076. 5)   Remove the power cable from the psu and existing drive and replace
  18077. it with the supplied cable, leaving the spare connector for the second
  18078. drive.
  18079. 6.1
  18080. 6)   Lead all three cables to the back of the computer and through the
  18081. space left by removing the blanking plates and connect them to the
  18082. second drive.
  18083. 6.1
  18084. 7)   Attach the blanking plates to the metal brackets on the second
  18085. drive using nuts & bolts supplied.
  18086. 6.1
  18087. 8)   Ensure second drive is set to É1æ by changing the appropriate DIP
  18088. switch or DS-Jumper.
  18089. 6.1
  18090. 9)   Insert the drive through the back of computer until the front of
  18091. the brackets rests on backplane connectors (psu side) and the blanking
  18092. plates line up with the back of the computer. Screw in blanking plate
  18093. screws.
  18094. 6.1
  18095. 10)   Once computer is up and running it will have to be configured for
  18096. a second hard drive.
  18097. 6.1
  18098. The work was very easy to carry out and the instructions supplied were
  18099. very good. The drive then has to be formatted using Acornæs HFORM
  18100. program. The program had to be modified to do the Éslowæ formatting by
  18101. altering the following lines:
  18102. 6.1
  18103. 7530 REMmed out
  18104. 6.1
  18105. 7540 REMmed out
  18106. 6.1
  18107. 7550 REM removed
  18108. 6.1
  18109. 7560 REM remove
  18110. 6.1
  18111. Once this was done, the drive formatted with no problems and, using the
  18112. PC Emulatoræs configure program, I created a 19 Mb DOS partition.
  18113. 6.1
  18114. I would recommend this solution of gaining extra drive capacity if you
  18115. have access to a cheap drive and do not mind losing the space of two
  18116. half width podules. áChris Bass, Grimsby
  18117. 6.1
  18118. Å   Mah Jong from CIS Ö If you have recently purchased the Mah Jong game
  18119. from Cambridge International Software, you may wish to check for the
  18120. presence of a Ébenignæ virus. This can be done by double-clicking on the
  18121. !MahJong game while holding the <shift> key down. Choose the ÉDisplay >
  18122. Full Infoæ option on the filer window. If the MemAlloc module is larger
  18123. that 2608 bytes then your copy is infected and you should contact CIS
  18124. directly at Unit 2a, Essex Road, London  N1á3QP or telephone
  18125. 071Ö226Ö3340.
  18126. 6.1
  18127. Å   Measuring free space Ö I would like to say a big thank you to all the
  18128. people who wrote in response to my plea for help in finding a way of
  18129. checking, from within a program, whether there is enough space for a
  18130. file before it is saved.
  18131. 6.1
  18132. The most ingenious suggestion was to use the following commands:
  18133. 6.1
  18134. *FREE {ram:ccc }
  18135. 6.1
  18136. X=OPENUP(öRAM:CCCò)
  18137. 6.1
  18138. REPEAT B=BGET#X: UNTIL B=ASCö=ò
  18139. 6.1
  18140. REPEAT B=BGET#X
  18141. 6.1
  18142.  IF B>47 AND B<58 B$=B$+CHR$B
  18143. 6.1
  18144. UNTIL B=ASCöBò
  18145. 6.1
  18146. *SHUT
  18147. 6.1
  18148. to put the free space in the variable B$.
  18149. 6.1
  18150. Some people pointed me to ÉADFS_FreeSpaceæ (also RamFS_FreeSpace,
  18151. SCSIFS_FreeSpace, etc.) which can be used with syntax such as:
  18152. 6.1
  18153. SYS öADFS_FreeSpaceò,Drive$ TO Free%,Largest%.
  18154. 6.1
  18155. The same information was given on page 7 of the Archive 5.12.
  18156. 6.1
  18157. Although all these answers have been very helpful, they have also taught
  18158. me a salutary lesson, namely that you have to be very precise when
  18159. describing your problem: because, although they have answered the
  18160. question (and told me things that I did not know) they havenæt actually
  18161. told me what I needed to know!
  18162. 6.1
  18163. What I actually want is a filing system independent way of finding out
  18164. whether a file with any given path name can be saved. For instance, if
  18165. the user of my program indicates (by dragging an icon to a filer window
  18166. or typing into a save box) that he wants to save a file with the path
  18167. name ÉXXXFS::$....Filenameæ and if my program knows how long the file
  18168. will be, I want my program to be able to find out whether the file will
  18169. fit in the specified place, without knowing in advance whether ÉXXXFSæ
  18170. stands for ADFS or CFS or SCSIFS or RamFS or whatever. The program also
  18171. has to work if a path is not specified and the file is simply to be
  18172. saved to the CSD.
  18173. 6.1
  18174. A couple of correspondents have pointed out that there is an SWI called
  18175. ÉFileCore_FreeSpaceæ (on page 1021 of the PRM). However, in order to use
  18176. this you have to know the Éprivate wordæ of the filing system in
  18177. question and, so far as I can see, this SWI can only therefore be called
  18178. by a filing system module, which is not much use to a mere mortal
  18179. programmer!
  18180. 6.1
  18181. I still, therefore, believe that the only generalised way of doing what
  18182. I want is to use syntax like the following :
  18183. 6.1
  18184. X%=OPENOUT(Filename$)
  18185. 6.1
  18186. SYS öXOS_Argsò,6,X%,Length% TO ,,Allocated%
  18187. 6.1
  18188. IF Allocated% >= Length% THEN ... go ahead and save it.
  18189. 6.1
  18190. This is hardly elegant but it seems to work.
  18191. 6.1
  18192. I understand that RISC-OS 3 will include the generalised SWI that I
  18193. want. However, this will not be much use, of course, in a program that
  18194. is designed to work in RISC-OS 2 as well!á Hugh Eagle, Horsham
  18195. 6.1
  18196. Å   Formatting numbers (continued) Ö Over the last two months, I have been
  18197. following the correspondence on Basicæs number formatting ability (PRINT
  18198. and STR$) with some interest. Has the increased size and complexity of
  18199. RISC-OS caused the oversight of some of the slightly esoteric but very
  18200. powerful features of BBC Basic? One such feature is the @% variable in
  18201. Basic. The @% variable controls the format of the PRINT and STR$
  18202. functions and much of last monthæs discussions could have been settled
  18203. by altering the @% variable so that STR$ was formatted in the same way
  18204. as PRINT.
  18205. 6.1
  18206. @% is fully discussed in the manuals that accompany the computer under
  18207. the PRINT command but I will try to give some useful pointers here. As
  18208. with all Basic integers, the @% variable is four bytes long. When Byte 4
  18209. (the left-most byte) is zero Basic ignores @% when using the STR$
  18210. function (this is the default and the source of last monthæs problems)
  18211. otherwise STR$ is formatted exactly the same as PRINT. Byte 3 allows the
  18212. choice of three different formatting types: 0 Ö general (the default), 1
  18213. Ö exponent and 2 Ö fixed. Byte 2 specifies the number of digits printed
  18214. and Byte 1 gives the print field width when you use comma separators in
  18215. PRINT.
  18216. 6.1
  18217. Our problem arises from two areas: the way computers represent numbers
  18218. and the value of @%. At this point, I think it is necessary to take an
  18219. aside into the nature of real number representation in computers so, if
  18220. you are only interested in how to circumvent Basicæs printing problems,
  18221. skip to the end of this article.
  18222. 6.1
  18223. Common advice to novice programmers is not to use real variables unless
  18224. you really have to. Speed and storage reasons are normally given for
  18225. simplicity but a far more important reason is that real numbers are not
  18226. exact in the same way as integers and they must be treated differently.
  18227. A classic example is the problem in mathematics of dealing with two
  18228. representations of, say, the number one: which could be 1.000... or
  18229. 0.999.... As far as we are concerned both are the same but if we ask a
  18230. computer whether or not they are equal, we find not. This is due to no
  18231. fault of the computer or the programmer but the acceptance that
  18232. computers cannot store the infinite expressions for real numbers but
  18233. must approximate to a number of decimal places and so springs up the
  18234. subject of numerical analysis.
  18235. 6.1
  18236. How then do we equate real numbers? Well, we must choose a value for a
  18237. zero! That is a number where any number smaller than it we consider to
  18238. be Éas good as zeroæ. An example for Basic is 10Ö7, any smaller and the
  18239. errors in calculations become significant. So when we want to check
  18240. equality of two numbers a and b we use the expression (ABS(a¡b)á<á1E-7).
  18241. If this is true then the two numbers are Éas good as equalæ. (ABS is
  18242. used since we are only interested in the magnitude of the difference
  18243. between the numbers.)
  18244. 6.1
  18245. The second important point with numbers stored in computers is that they
  18246. are stored in binary. Yes, of course, you all knew that but fewer people
  18247. are aware how computers store fractions. Much like in decimal when we
  18248. have a decimal point, computers use a binary point where the digits to
  18249. the right of the point have place values 1/2, 1/4, 1/8, etc. In decimal
  18250. there is a problem of representing fractions like 1/3 or 1/6 because the
  18251. prime factors of 3 or 6 are not divisible by the factors of 10 (2, 5) so
  18252. you get infinite decimal expansions for them. In binary, the problem is
  18253. greater because there is only one factor of two (unlike two factors of
  18254. ten) so even more numbers have infinite representations (this is why
  18255. some people advocate using base 12 instead of base 10 for day to day
  18256. life Ö it makes mental arithmetic so much easier). This means that
  18257. simple decimal numbers like 0.6 have an infinite expansion in binary.
  18258. 6.1
  18259. What has all this got to do with printing numbers in Basic? Well, an
  18260. appreciation of what is going on when you store numbers will help you
  18261. avoid the pitfalls that last monthæs contributors highlighted. Now that
  18262. we are aware that innocuous looking numbers like 2.1 can have infinite
  18263. expansions when stored in binary, it becomes clear that 2.1 ╫ 10 may not
  18264. equal 21 but, perhaps, 20.99999999!
  18265. 6.1
  18266. Is there anything that we can do about this? Yes, indeed there is. We
  18267. can tell Basic to round off the number to nine decimal places instead of
  18268. attempting to print 10 which extends the precision beyond the accuracy
  18269. (in general Basic is accurate to nine decimal places unless you are
  18270. using the floating point version where I believe 19 is the limit but not
  18271. having a RISC-OS 3...).
  18272. 6.1
  18273. Now we come back to @%. At default, @% specifies 9 decimal places but it
  18274. only affects PRINT and not STR$ which defaults to ten. To alter this,
  18275. all we need to do is set the byteá4 flag in @% to one. Try PRINT
  18276. STR$(0.6) and then set @% = &0100090A and try again (by the way, &90A is
  18277. the default value for @% whereas STR$ uses &A0A if byteá4 is unset).
  18278. 6.1
  18279. If we want to print money then we can set @% to two decimal places by
  18280. &0002020A (remember to set byte 4 to one if you want to use STR$). This
  18281. has the added bonus of allowing you to print the number rounded off but
  18282. still maintain the extra places for further calculations.
  18283. 6.1
  18284. I hope you can now see the power and simplicity of using @%. My only
  18285. warning is that if you wish to use several formats in your program, then
  18286. either save the previous @% or declare it as a local variable.á Emmet
  18287. Spier, Guildford.
  18288. 6.1
  18289. This subject seems to have opened up quite a debate. Emmet has agreed to
  18290. edit any comments regarding rounding errors for us and so if your wish
  18291. to add to the debate you should write to him directly. Emmet Spier, 6
  18292. Parklands Place, Guildford, Surreyá GU1 2PS.
  18293. 6.1
  18294. Å   PC keyboards for A4 Ö A word of warning Ö not all PC type keyboards
  18295. work on the A4 (or all PCs for that matter!), so take the A4 to the shop
  18296. and try before you buy! Reasonable ones can be had for about ú40 at some
  18297. computer fairs. Note that non PS/2 type keyboards (with the 5 pin DIN
  18298. plug) can be used with an adaptor or by changing the plug. áMike
  18299. Harrison
  18300. 6.1
  18301. Å   RISC-OS 3 DOS partitions Ö Because DOS filenames (including exten
  18302. sions) are in general longer than the maximum length of a valid ADFS
  18303. filename (10), it is not always possible to copy or move DOS files from
  18304. hard or floppy discs directly to the ADFS.
  18305. 6.1
  18306. The !MultiFS utility as supplied with the PC Emulator solves this by
  18307. allowing you to truncate the DOS filename while the translation process
  18308. takes place. Another very useful option (which I often use when copying
  18309. files from C programs) is to force !MultiFS to handle DOS extensions as
  18310. (hierarchical) directories.
  18311. 6.1
  18312. However, when the filetype of a DOS partition on your ADFS hard disc is
  18313. set to ÉDOSdiscæ, RISC-OS 3 will display a filer window for the
  18314. partition when you try to open the folder, while !MultiFS just ignores
  18315. it (i.e. no :C drive on the iconbar.) This is all very nice but RISC-OS
  18316. 3 doesnæt offer the nice name translation options mentioned above. To
  18317. enable !MultiFS to display your DOS partitions, just set their filetype
  18318. to Édataæ before you start !MultiFS. Remember to use the command line
  18319. and not the filer menu because the latter doesnæt allow you to change
  18320. the the filetype of DOSdiscs. I inserted 3 lines for each DOS partition
  18321. in the !MultiFS !Run file to swap between ÉDOSdiscæ and Édataæ type
  18322. partitions when !MultiFS is started:
  18323. 6.1
  18324.    *Filer_CloseDir    <PCe$Drive_X>
  18325. 6.1
  18326. *SetType    <PCe$Drive_X> Data
  18327. 6.1
  18328. directly after setting the system variable <PCe$Drive_X>, and
  18329. 6.1
  18330.    *SetType    <PCe$Drive_X> DOSDisc
  18331. 6.1
  18332. at the end of the !Run file (although the comment tells us not to do
  18333. so).
  18334. 6.1
  18335. Unfortunately, there are some bugs in !MultiFS: When you copy to a
  18336. MultiFS filer window, you must ensure name translation is not set to
  18337. hierarchical or you will end up with wildcards (É?æ) in filenames. When
  18338. this happens you must use DOS itself to delete the file because RISC-OS
  18339. fails to wipe those objects. Another bug appears if you shut down your
  18340. system after using !MultiFS. This results in an error report and a task
  18341. manager crash.á Paul Groot, Holland.
  18342. 6.1
  18343. Å   Saloon Cars Deluxe Ö If you are having problems running Saloon Cars
  18344. Deluxe, it may be worth knowing that you must have the Font Manager
  18345. installed for it to run.
  18346. 6.1
  18347. Å   Shareware 44 (Fortran Friends) update Ö There is a small bug in the
  18348. !Fortran77. DesktopF77 program. Line 1400 should read:
  18349. 6.1
  18350. 1400 IF INSTR(b$,örrorò) THEN E%+=1
  18351. 6.1
  18352. This allows errors in the code generator part of the compiler to be
  18353. detected. Kate Crennell, Oxon.
  18354. 6.1
  18355. Å   Zelanites cheat Ö The following program provides a cheat for
  18356. Zelanites. It stops the number of lives decreasing below 9. áSteve
  18357. Edwards, Stourbridge.
  18358. 6.1
  18359.  10áREM >:0.$.hints.zelcheat
  18360. 6.1
  18361.  20áREM Archive hints & tips section
  18362. 6.1
  18363.  30áREM (c) S.EDWARDS 1992
  18364. 6.1
  18365.  40áREM infinite lives for Zelanites
  18366. 6.1
  18367.  50áREM ****************************
  18368. 6.1
  18369.  60áREM * When you have run the program the game should *
  18370. 6.1
  18371.  70áREM * then be run as normal. This time when you dieáá*
  18372. 6.1
  18373.  80áREM * you will have not gone down one life but upáá *
  18374. 6.1
  18375.  90áREM * to NINE lives, which stay with you for ever.áá*
  18376. 6.1
  18377. 100áREM *ááááááááááááááááááááááááá *
  18378. 6.1
  18379. 110áREM ****************************
  18380. 6.1
  18381. 120á:
  18382. 6.1
  18383. 130áDIM store% &400
  18384. 6.1
  18385. 140áMODE 0
  18386. 6.1
  18387. 150áPROCDisc_op
  18388. 6.1
  18389. 160áPRINTÉ********FINISHED********æ
  18390. 6.1
  18391. 170áPRINT
  18392. 6.1
  18393. 180áPRINTÉ****NOW GET BLASTING****æ
  18394. 6.1
  18395. 190áEND
  18396. 6.1
  18397. 200á:
  18398. 6.1
  18399. 210áDEF PROCDisc_op
  18400. 6.1
  18401. 220áPRINT ÉPut !ZELANITE disc into drive 0æ
  18402. 6.1
  18403. 230áPRINT Éáááand press a key.æ
  18404. 6.1
  18405. 240áA=GET
  18406. 6.1
  18407. 250áPRINT ÉLoadingáásector informationæ
  18408. 6.1
  18409. 260áSYS ÉADFS_DiscOpæ,0,1,&50400, store%,&400
  18410. 6.1
  18411. 270ástore%?&67=&6A:REM Original code =&2A
  18412. 6.1
  18413. 280áINPUTÉAre you are ready to make the change ?æ;A$
  18414. 6.1
  18415. 290áIF LEFT$(A$,1)=ÉNæ OR LEFT$(A$,1)=Énæ THEN END
  18416. 6.1
  18417. 300áIF LEFT$(A$,1)=ÉYæ OR LEFT$(A$,1)=Éyæ THEN
  18418. 6.1
  18419. 310áááPRINTÉSaving cheat back to diskæ
  18420. 6.1
  18421. 320áááSYS ÉADFS_DiscOpæ,0,2,&50400, store%,&400
  18422. 6.1
  18423. 330áENDIF
  18424. 6.1
  18425. 340áENDPROCááA
  18426.  
  18427. Hints and Tips
  18428. 5.12
  18429. Å   Free Space Ö (Ref to Archive 5.11 p21) Ö The call to check the amount
  18430. of free space on a disc is ADFS_FreeSpace. On entry, R0 points to the
  18431. disc specifier and on exit R0 contains the free space and R1 contains
  18432. the size of the largest object that can be created. E.g.
  18433. 5.12
  18434. SYSöADFS_FreeSpaceò,ö:0ò to free%,largest%
  18435. 5.12
  18436. Change the ADFS to RamFS, SCSIFS or whatever youære using.
  18437. 5.12
  18438. Å   Free space on hard discs Ö For some time I had been concerned by the
  18439. apparent discrepancy between the figures returned by COUNT and FREE for
  18440. the space used by files on my SCSI discs. I was aware that COUNT only
  18441. counts the actual files and that FREE counts all the space used but I
  18442. still felt uneasy and my discs seemed to fill up alarmingly quickly.
  18443. 5.12
  18444. ADFS floppies use 2k for every directory and there is an initial 4k
  18445. overhead for the map on E format discs. My impression was that the same
  18446. amount of space would be used for each directory in all Filecore
  18447. systems, including SCSI, but that the map would take more space
  18448. depending on the size of the disc.
  18449. 5.12
  18450. So the first thing I did was to estimate the number of directories on my
  18451. 120M disc. I make full use of the directory structure to organise my
  18452. data, not to any great depth but with some width. RISC-OS encourages
  18453. this and, of course, applications are directories too. I reckoned there
  18454. were well over 1000 directories on the disc, but at 2k per directory,
  18455. this did not account for the difference.
  18456. 5.12
  18457. With a little experiment of adding a directory and looking for the
  18458. change in free space, I found that a directory was taking a staggering
  18459. 28k! This was where the space was going, but why?
  18460. 5.12
  18461. My Oak SCSI card is managed by their SCSIForm program which allows some
  18462. flexibility in defining the format of the disc. Having backed-up, I did
  18463. some experimenting with the parameters.
  18464. 5.12
  18465. I changed the sector size, but the minimum value for the 120M disc was
  18466. 512 bytes and, for a 42M removable was 256 bytes. I imagine the lowest
  18467. possible value of 128 bytes is only for small discs. Anyway, the changes
  18468. I made had only very small effects on space or disc transfer times. The
  18469. default is 512 bytes per sector, so I left it at that.
  18470. 5.12
  18471. Next I changed the file allocation size. This defaults to 2k on the
  18472. large disc and 1k on the other. The minimum is 256 bytes. The larger
  18473. values are chosen, I believe, to speed up transfer times to large files
  18474. on larger discs. I did not think this parameter would have an effect on
  18475. the structure, but look at the table below. The results were impressive.
  18476. For a loss of transfer time of less than 5% I was gaining a saving on
  18477. structure of 7 times! There were similar results for the smaller disc.
  18478. 5.12
  18479.    File Allocæn  (bytes)   2048
  18480.    1024   512   256
  18481. 5.12
  18482.    Map Space (k)   57   47
  18483.    68.5   124
  18484. 5.12
  18485.    Diræy Space  (k each)   28   15
  18486.    7.5   4
  18487. 5.12
  18488.    Mode 0   (k/sec)   1959   1864
  18489.    1864   1864
  18490. 5.12
  18491.    Mode 21  (k/sec)   994   955
  18492.    955   955
  18493. 5.12
  18494. I have not delved any further into why more than 2k per directory is
  18495. taken in SCSI but the figures suggest 14 blocks are used: 13 are <256
  18496. bytes and the other is 512-768 bytes.
  18497. 5.12
  18498. When I settled on a file allocation size of 256 bytes, I recovered about
  18499. 30M of extra space on the larger disc Ö about ú200 worth, perhaps. Some
  18500. of this saving comes from taking much less space for the multitude of
  18501. small !Run,!Boot and !Sprites files.
  18502. 5.12
  18503. The only other make of SCSI of card I have access to is a Cumana one in
  18504. school, running in a fileserver for 600 users. This too has 1000+
  18505. directories. The Cumana SCSIManager program only offers formatting with
  18506. default values, so I changed the format using my Oak card and made
  18507. similar impressive savings. The disc runs happily with the Cumana card,
  18508. as you would expect, but will not dismount. This is no penalty with
  18509. self-parking heads.
  18510. 5.12
  18511. I then found an old ADFS hard drive and did the same check, finding that
  18512. a new directory takes 12k. RAMFS takes a straight 2k. I would be
  18513. interested to know if the same problem applies to IDE discs and what
  18514. formatting is possible with other SCSI cards.  Steve Drain, Portland.ááA
  18515. 5.12
  18516.  
  18517.  
  18518.  
  18519.  
  18520. Impression Hints & Tips
  18521. 5.12
  18522. àÅ   Problems with version 2.17 Ö If you are having problems with version
  18523. 2.17 Ö such as the machine hanging up when you select large areas of
  18524. text Ö donæt blame Impression! Basically, what is happening is that CC
  18525. have implemented message-passing via the Wimp for their thesaurus and
  18526. these messages are rather large. This is a perfectly valid thing to do
  18527. under Acornæs RISC-OS programming guidelines but not all filing systems
  18528. have been written to allow for such large messages and they end up over-
  18529. writing areas of memory Ö hence the crashes. Filing system versions
  18530. known to be a problem are:
  18531. 5.12
  18532.    Oak SCSI version 1.11
  18533. 5.12
  18534.    Ian Copestake IDE version 1.13,
  18535. 5.12
  18536.    Serial Port IDE version 1.01, March æ91
  18537. 5.12
  18538. CC say... öIf your Archimedes gives problems, contact your Acorn
  18539. supplier or the appropriate company. Please do not contact Computer
  18540. Concepts Ö these problems are not caused by Impression but by the filing
  18541. system.ò
  18542. 5.12
  18543. The Oak SCSI filer 1.11 has been replaced by version 1.16 but this Énewæ
  18544. version (actually two years old!) is available through Archive as an
  18545. upgrade for ú12 inc VAT.
  18546. 5.12
  18547. The ICS filer 1.13 can be swapped for version 1.14 as a free EPROM
  18548. exchange from ICS. They also have a completely re-written IDE filer
  18549. (version 2) which is available from them for ú15 +VAT. The customer
  18550. returns the old EPROM afterwards.
  18551. 5.12
  18552. The Serial Port filer 1.01 can be replaced with 1.02 as a free upgrade Ö
  18553. in this case, just send the floppy disc back to The Serial Port and they
  18554. will replace it.
  18555. 5.12
  18556. Å Using borders Ö From David Wooldridge comes one of those tips that is
  18557. obvious to the initiated but might be new to some users. When choosing a
  18558. border in the Alter Frame window (view mode), donæt forget you can see
  18559. the various borders by pointing at the white border in the window and
  18560. pressing menu. A border picker window opens, allowing you to select from
  18561. all the available borders. This tip is in the manual but, as we all
  18562. know, not everyone reads manuals Ö own up, please, if this is new to
  18563. you! (Me for one! Ed.)
  18564. 5.12
  18565.  
  18566.  
  18567.  
  18568. The Readers Write!
  18569. 5.12
  18570. Å Laser Jet printing with RISC-OS3 Ö Gerald Fitton (of Pipeline fame!)
  18571. has experienced a problem when using RISC-OS 3, !Printers, Laser Jet II
  18572. and Impression. He has found that documents in the portrait format print
  18573. 7 mm out of position on the vertical axis and are offset 5mm to the
  18574. right. This occurs even when the page borders are set to 0 mm. If he
  18575. increases the latter figure, the print out is further out of position.
  18576. As Gerald says, ÉWhat I need is a minus value for my borders. Help!æ Has
  18577. anyone else come across this particular problem?
  18578. 5.12
  18579. Å Keeping track of Draw and Sprite files Ö In Archive 5.9 p37 Steve
  18580. Hutchinson was asking advice on keeping track of his Draw and sprite
  18581. files and was recommended two viewing applications. There is also an
  18582. easy hardcopy method namely !PicList which was on the Acorn User October
  18583. 1991 disc after being upgraded from the May version. The application
  18584. makes a set of sprite öpagesò containing any Draw or sprite pictures
  18585. that are dropped into it. The pictures are displayed in a grid and are
  18586. labelled with their name/path above them. The application is easy to use
  18587. from the iconbar having options to:
  18588. 5.12
  18589. Å   Set up the size of the öpageò (defaults to print size if a driver is
  18590. loaded),
  18591. 5.12
  18592. Å   Set the number of columns and rows required Ö depending on the
  18593. required detail of each picture,
  18594. 5.12
  18595. Å   Set the screen mode for the resultant öpagesò,
  18596. 5.12
  18597. Å   Choose the path/name format to name each picture.
  18598. 5.12
  18599. You can drop directories onto the icon and several pages are generated.
  18600. The pages can be stepped through to view and saved to make a hardcopy of
  18601. each page. Alan Wilburn, Hartlepool.
  18602. 5.12
  18603. Å Auto destruct! Ö In the Hints and Tips section of the June edition of
  18604. Archive, there was a mention of possible problems with the auto-save
  18605. facility of Impression under the title öAuto-destruct!ò. Version 2.16
  18606. (and 2.17) of Impression does not appear to be as dangerous in this
  18607. respect. If the auto-save facility is turned on but with the öWith
  18608. promptò switch left off, a prompt will still appear on-screen before the
  18609. first time the document is auto-saved.
  18610. 5.12
  18611. This also occurs the first time the document is auto-saved after it has
  18612. been reloaded. It is mentioned in the Impression 2.15 release notes on
  18613. pages 1 and 3.
  18614. 5.12
  18615. Still on the subject of Impression, I have two problems that readers of
  18616. Archive may be interested in:
  18617. 5.12
  18618. Spelling checker Ö If you check and replace a misspelled word by using
  18619. <Ctrl-W> to invoke the spelling checker, this appears to work correctly
  18620. except that if you have typed nothing after the word, it also has the
  18621. effect of <Ctrl-B> and returns you to basestyle. Obviously the solution
  18622. is to always type at least a space after the word before using <Ctrl-W>.
  18623. 5.12
  18624. PrintBJ (the extension module to print draft text) Ö This makes a
  18625. reasonable attempt at interpreting styles as far as different fonts and
  18626. font sizes are concerned but seems unable to cope with rulers or effects
  18627. that control the position of the text on the page. Tabs it gets
  18628. completely wrong, right aligned text is centred, centred text is centred
  18629. but using a page width about three quarters of the actual width. This is
  18630. using the Canon BJ-10e. I have phoned Computer Concepts who suggested I
  18631. wrote enclosing example documents both printed and on disc. This I did
  18632. several months ago and have not received a reply. Has anyone else
  18633. experienced these problems or indeed found a solution? Nick Edgar,
  18634. Doncaster.
  18635. 5.12
  18636. I can understand Nickæs problems and only print out in graphics format.
  18637. My method of working for proofing documents is always to print at a
  18638. lower resolution Ö and hence achieve a quicker print out. Users of the
  18639. Deskjet 500 have the option of using the draft mode on the printer for
  18640. this purpose and leaving the resolution set on the driver unchanged.
  18641.  
  18642.  
  18643.  
  18644. Hints and Tips
  18645. 5.11
  18646. Å   A5000 hard disc replacement Ö One drawback with the A5000 is that the
  18647. 40M hard disc quickly fills up. Being in this position, I decided to
  18648. replace mine with a larger one.
  18649. 5.11
  18650. Researching prices, I found that IDE drives bought direct from suppliers
  18651. advertising in magazines such as Personal Computer World are much
  18652. cheaper than the same drives advertised in the specialist Acorn
  18653. magazines. Would any IDE drive work? A friend told me that Seagate IDE
  18654. drives did not work correctly on A5000s but Connor (as already fitted to
  18655. my A5000) and Maxtor (as fitted to another A5000 I know of) should be
  18656. OK, as well as Quantum. Another friend recently bought and fitted an NEC
  18657. drive to his A5000.
  18658. 5.11
  18659. I bought a 120M cached Quantum drive (the GM120AT). The drive, from SMC
  18660. who advertise in PCW, arrived the day after I ordered it.
  18661. 5.11
  18662. The fitting was extremely simple. After a backup and power off I removed
  18663. the cables, undid the four screws under the old drive (it is necessary
  18664. to remove all the drive cables and lift out the metal bracket to which
  18665. the drives are fastened) to release it and slotted in the new one Ö no
  18666. problems! The drive was already low-level formatted and, although the
  18667. hard disc formatter supplied with RISC-OS 3 didnæt recognise the disc
  18668. shape, I just selected ÉInitialiseæ and that was it. The drive worked a
  18669. few seconds after switching on.
  18670. 5.11
  18671. In use, the drive feels very fast. I have measured a data transfer rate
  18672. of 1060k/sec, compared to 800k/sec for the original drive and an average
  18673. access time of 7ms(!) as compared to 18ms.
  18674. 5.11
  18675. Similar drives advertised specifically for the A5000 in the Acorn press
  18676. are ú50¡ú100 more. Some of these include splitter cables, allowing the
  18677. old drive to remain (there are already mounting holes for a second drive
  18678. on the A5000, drilled in the case below the floppy disc drive). I intend
  18679. to make my own in the next few days Ö it will cost about ú10.
  18680. 5.11
  18681. So I would recommend anyone wishing to upgrade their A5000æs internal
  18682. disc drive to do it themselves. Just obey the following rules:
  18683. 5.11
  18684. ÖááShop around for the best deal in the general computer and PC press.
  18685. 5.11
  18686. ÖááBuy a low profile 3╜ö AT IDE drive made by Quantum, Conner, Maxtor or
  18687. NEC.
  18688. 5.11
  18689. ÖááMake a backup of your old hard disc before commencing the changeover.
  18690. 5.11
  18691. ÖááUse the RISC-OS 3 hard disc formatter to initialise the new disc, no
  18692. need to format.
  18693. 5.11
  18694. ÖááIf you want to use both drives, Maplin Electronics sell everything
  18695. you need to make the splitter cables.
  18696. 5.11
  18697. Perhaps a list of known A5000-friendly IDE drives could be compiled?á
  18698. Seßn Kelly, Leighton Buzzard
  18699. 5.11
  18700. Å   Acorn SCSI card Ö If you buy the CDFS/FSCSI upgrade for the Acorn SCSI
  18701. card, there is a link change to be made on the AKA31 version of the card
  18702. but if you have one of the older AKA30 cards, it is slightly more
  18703. complicated.
  18704. 5.11
  18705. The upgrade consists of putting a 27512 EPROM in place of the existing
  18706. 27256 EPROM. To enable the extra address lines, hardware modifications
  18707. are needed. Links 1, 3, 4 and 5 remain unchanged but link LK2 was open
  18708. and has to be closed and link LK12 was closed and has to be opened. On
  18709. the AKA31 boards, these changes can be made by moving a link but on the
  18710. AKA31, this will involve cutting a track on LK12 and soldering a link on
  18711. LK2. This should not be attempted unless you are competent to make such
  18712. a modification and it will, in any case, invalidate the warranty on the
  18713. board. Acorn dealers should do the modification for you although there
  18714. may be a charge unless you buy the upgrade from them. Tudor Jones,
  18715. Barnet.
  18716. 5.11
  18717. Å   Automatic kerning and RISC-OS 3 Ö The font manager has this facility.
  18718. Currently it is only available with the standard ROM fonts (Trinity,
  18719. etc.). Presumably, EFF will update their fonts to include kerning pairs.
  18720. To use auto-kerning, simply set bit 9 of R2 in all calls to SYS
  18721. öFont_Paintò.
  18722. 5.11
  18723. 10 REM >KernDemo
  18724. 5.11
  18725. 20 REM Example of automatic kerning
  18726. 5.11
  18727. 30 REM For RISC-OS 3 ROM fonts only
  18728. 5.11
  18729. 40 MODE 15:OFF
  18730. 5.11
  18731. 50 SYS öColourTrans_SetFontColoursò,0,0,
  18732. 5.11
  18733. &F0F00000,14
  18734. 5.11
  18735. 60 SYS öFont_FindFontò,,öTrinity. Mediumò,50*16,50*16 TO hdl%
  18736. 5.11
  18737. 70 SYS öFont_SetFontò,hdl%
  18738. 5.11
  18739. 80 REM Kerning off first
  18740. 5.11
  18741. 90 SYS öFont_Paintò,,öWAWA no
  18742. 5.11
  18743. kerning here!ö,%0000010000,10,500
  18744. 5.11
  18745. 100 REM Kerning on now
  18746. 5.11
  18747. 110 REM Set bit 9 in R2
  18748. 5.11
  18749. 120 SYS öFont_Paintò,,öWAWA this is kerned.ò,%1000010000,10,300
  18750. 5.11
  18751. 130 SYSöFont_LoseFontò,hdl%
  18752. 5.11
  18753. The ease with which this can be done leads me to wonder why CC havenæt
  18754. provided it as an option in Impression.
  18755. 5.11
  18756. To rotate fonts, set bit seven of R2 in öFont_ Paintò and pass the (draw
  18757. style) transformation matrix in R7. Note that old style calls to
  18758. öFont_StringWidthò, etc donæt take account of kerning or transformation.
  18759. A new SWI öFont_ ScanStringò is used to do this. Rob Davison, New
  18760. Zealand
  18761. 5.11
  18762. Å   Basic 1.05 Bug Ö A really annoying bug exists in all versions of Basic
  18763. except the floating point version supplied on the RISC-OS 3 application
  18764. discs.
  18765. 5.11
  18766. Consider the following two statements (type them in if you feel like
  18767. it.)
  18768. 5.11
  18769. a=210
  18770. 5.11
  18771. b=2.10*100
  18772. 5.11
  18773. These two variables should hold the same value. They seem to be the
  18774. same, as you can check with:
  18775. 5.11
  18776. PRINT a,b
  18777. 5.11
  18778. IF a=b PRINT öSAMEò
  18779. 5.11
  18780. etc.
  18781. 5.11
  18782. If you have RISC-OS 2 then both the above checks will say that they are
  18783. the same. RISC-OS 3 Basic 1.05 will not print ÉSAMEæ in the second test.
  18784. The reason for this can be revealed by trying the following:
  18785. 5.11
  18786. PRINT INT(a),INT(b)
  18787. 5.11
  18788. PRINT STR$(a),STR$(b)
  18789. 5.11
  18790. These problems seem to occur because of the limited accuracy of floating
  18791. point numbers in Basic. My program stored times at centisecond resolu
  18792. tion internally and I wanted to scale these times to seconds for the
  18793. user. I did a usertime=centitime/100 but ran into problems when I tried
  18794. converting the usertime variable back into a string with STR$(usertime)
  18795. 5.11
  18796. My solution (and Iæm not saying itæs a good one) is as follows:
  18797. 5.11
  18798. A short ARM code routine intercepts the WRCHV vector and stores
  18799. characters printed in a buffer. The routine is linked in just before a
  18800. PRINT realvar statement and killed off just afterwards. You can then
  18801. extract the string from the buffer via normal means. An example program
  18802. follows:
  18803. 5.11
  18804. 10 REM >string
  18805. 5.11
  18806. 20 REM provides a STR$( function
  18807. 5.11
  18808. 25 REM that avoids some floating
  18809. 5.11
  18810. 30 REM point problems in Basic
  18811. 5.11
  18812. 40 REM By Rob Davison, May 1992
  18813. 5.11
  18814. 50 REM Public Domain
  18815. 5.11
  18816. 60 REM
  18817. 5.11
  18818. 70 PROCassy
  18819. 5.11
  18820. 80 PRINT öFirst the old way -ò
  18821. 5.11
  18822. 90 PRINT STR$(2.10*100)
  18823. 5.11
  18824. 100 PRINT öShould be ò;FNstr(2.10 *100)
  18825. 5.11
  18826. 110 PRINTæöAnother exampleò
  18827. 5.11
  18828. 120 PRINT STR$(0.6)
  18829. 5.11
  18830. 130 PRINT öShould be ò;FNstr(0.6)
  18831. 5.11
  18832. 140 PRINTæöBye now.ò
  18833. 5.11
  18834. 150 END
  18835. 5.11
  18836. 160 DEFPROCassy
  18837. 5.11
  18838. 170 DIM code% &100
  18839. 5.11
  18840. 180 REM æpossyæ is a buffer. Can be scratch space but MUST
  18841. 5.11
  18842.  be big enough.
  18843. 5.11
  18844. 190 DIM possy &100
  18845. 5.11
  18846. 200 FOR opt=0 TO 2 STEP2
  18847. 5.11
  18848. 210 P%=code%
  18849. 5.11
  18850. 220 [OPT opt
  18851. 5.11
  18852. 230 .intercept
  18853. 5.11
  18854. 240 STMFD R13!,{r0-r3 }
  18855. 5.11
  18856. 250 LDR R1,posaddr
  18857. 5.11
  18858. 260 STRB R0,[R1]
  18859. 5.11
  18860. 270 ADD R1,R1,#1
  18861. 5.11
  18862. 280 STR R1,posaddr
  18863. 5.11
  18864. 290 LDMFD R13!,{r0-r3 ,PC}
  18865. 5.11
  18866. 300 .posaddr EQUD possy
  18867. 5.11
  18868. 310 ]
  18869. 5.11
  18870. 320 NEXT
  18871. 5.11
  18872. 330 ENDPROC
  18873. 5.11
  18874. 340 REM this is the string function
  18875. 5.11
  18876. 350 DEFFNstr(number)
  18877. 5.11
  18878. 360 LOCAL ERROR
  18879. 5.11
  18880. 370 ON ERROR LOCAL SYS öXOS_Releaseò ,3,intercept,0:REPORT:PRINT ERL:END
  18881. 5.11
  18882. 380 !posaddr=possy:REM reset pointer to start of buffer
  18883. 5.11
  18884. 390 SYS öXOS_Claimò,3,intercept,0 :REM claim the vector
  18885. 5.11
  18886. 400  PRINT number
  18887. 5.11
  18888. 410 SYS öXOS_Releaseò,3,intercept,0 :REM and release it immediately
  18889. 5.11
  18890. 420 REM Extract the string and get rid of leading/trailing rubbish
  18891. 5.11
  18892. 430 str$=$possy:WHILE LEFT$(str$,1)= CHR$32:str$=RIGHT$(str$,
  18893. 5.11
  18894. LEN(str$)-1):ENDWHILE
  18895. 5.11
  18896. 440 WHILE ASC(RIGHT$(str$,1))<32: str$=LEFT$(str$,LEN(str$)-1)
  18897. 5.11
  18898. :ENDWHILE
  18899. 5.11
  18900. 450 =str$
  18901. 5.11
  18902. Rob Davison, New Zealand
  18903. 5.11
  18904. Å   Basic V rounding errors Ö Last month, (Archive 5.10 p19) Mr E. Hollox
  18905. asked for help with the STR$ rounding. I hope that the following will
  18906. help solve his problem. No actual specifics were given on his problem,
  18907. so Iæve assumed that heæs working with monetary units (i.e. two decimal
  18908. places). This may not be correct in this instance, but will probably be
  18909. relevant to a large number of users and should provide Mr Hollox with a
  18910. starting point for the solution he wants.
  18911. 5.11
  18912. In simple terms, the solution is to avoid decimals; to work only with
  18913. integer variables. At first glance this may sound like an odd solution
  18914. when a number of decimal places are required, but itæs not as strange as
  18915. you may think.
  18916. 5.11
  18917. Firstly, the use of integer variables does not restrict you to the use
  18918. of integer numbers Ö not when you are making use of STR$, anyway.
  18919. 5.11
  18920. Secondly, integers make for faster programs, as Iæm sure everyone
  18921. realises (unless they program an Atari ST in GFA or Atari Basic!)
  18922. 5.11
  18923. Thirdly, and more importantly, integers are far more accurate than real
  18924. numbers due to the way in which they are stored. The method of storage
  18925. does have a negative effect, however, in that your range of numbers is
  18926. restricted Ö though the range available should be enough for most
  18927. peopleæs needs. Page 21 of the Archimedesæ BBC Basic Guide details this.
  18928. Remember that the more decimal places you require, the lower the range
  18929. becomes.
  18930. 5.11
  18931. So, onto the solution to the problem...
  18932. 5.11
  18933. Your Érealæ number must be stored as an integer 100 (for 2 dp users)
  18934. times as big. Whenever any output is required, a routine must be used to
  18935. convert it to a string and insert a decimal point at the correct place.
  18936. For inputting, the reverse is required; the decimal point must be
  18937. removed.
  18938. 5.11
  18939. The function FN_Int_To_Str carries out the decimalisation of your
  18940. integer number:
  18941. 5.11
  18942. DEF FN_Int_To_Str(Int%)
  18943. 5.11
  18944. LOCAL Real$
  18945. 5.11
  18946. Int%=ABS(Int%)
  18947. 5.11
  18948. IF Int%<10 THEN Real$=
  18949. 5.11
  18950. ö      00ò+STR$(Int%)
  18951. 5.11
  18952. IF Int%>=10 AND Int%<100 THEN Real$=ö      0ò+STR$(Int%)
  18953. 5.11
  18954. IF Int%>=100 THEN Real$=RIGHT$
  18955. 5.11
  18956. (ö        ò+STR$(Int%),9)
  18957. 5.11
  18958. Real$=LEFT$(Real$,7)+ö.ò+
  18959. 5.11
  18960. RIGHT$(Real$,2)
  18961. 5.11
  18962. =Real$
  18963. 5.11
  18964. You must call the function with string$=FN_Int_ To_Str(number%) where
  18965. string$ is your variable to hold the decimalised string and number% is
  18966. your variable holding the stored number. The routine returns the number
  18967. as a string with two decimal places, and right justified (in a ten
  18968. character field).
  18969. 5.11
  18970. The minus symbol ruins the simplicity of the routine, so an absolute
  18971. value is taken of the number. Minus numbers arenæt difficult to cope
  18972. with but, as they werenæt part of the problem....
  18973. 5.11
  18974. The function works by converting the integer number to a string and then
  18975. adding spaces to the left in order to right align it. This is done by
  18976. the three IF statements and, possibly, is the more complex part of the
  18977. routine.
  18978. 5.11
  18979. In the first case, the number is lower than ten (i.e. 0 to 9) so the
  18980. final figure will be of the form öáááááá0.0xò Ö hence six spaces and two
  18981. zeros are added.
  18982. 5.11
  18983. In the second case, the number is in the range 10 to 99, so the figure
  18984. will be ö      0.xxò Ö six spaces and one zero are added.
  18985. 5.11
  18986. In the third case, the number is over 100 (over 1.00). In this case,
  18987. rather than add the correct number of spaces for its size (6 for 100 to
  18988. 999, 5 for 1000 to 9999, etc.) we add the maximum required and truncate
  18989. the resulting string to its rightmost nine characters.
  18990. 5.11
  18991. The result, in all three cases, is a right aligned integer number in a
  18992. nine character string.
  18993. 5.11
  18994. Then we have the easy bit. The first seven characters of the string are
  18995. taken, a decimal point added, then the last two digits Ö problem solved.
  18996. 5.11
  18997. The reverse function is even simpler:
  18998. 5.11
  18999. DEF FN_Str_To_Int(Real$)
  19000. 5.11
  19001. LOCAL Int%
  19002. 5.11
  19003. Real$=FN_FormatNumber(Real$)
  19004. 5.11
  19005. Int%=VAL(LEFT$(Real$,7))*100+
  19006. 5.11
  19007. VAL(RIGHT$(Real$,2))
  19008. 5.11
  19009. =Int%
  19010. 5.11
  19011. This function is called with number%=FN_Str_ To_Int(string$) where
  19012. string$ is your variable containing the string and number% is the
  19013. variable that will contain the integer number.
  19014. 5.11
  19015. The first thing the function does is to pass the string to another
  19016. function in order to ensure it is of the correct format before convert
  19017. ing it to a number. This is dealt with below.
  19018. 5.11
  19019. The function then calculates the integer part of the number (positions 1
  19020. to 7 within the string), multiplies this by 100, and adds the fractional
  19021. part of the number (positions 9 to 10 Ö after the decimal point.) The
  19022. result, an integer number 100 times the real number, is returned to the
  19023. calling routine.
  19024. 5.11
  19025. I could have simply used Int%=VAL(Real$)*100, making the routine much
  19026. simpler. Then the inaccuracy of real numbers is risked once more. In
  19027. between Real$ and Int%, the number is stored as real until it is
  19028. multiplied by 100 and put in the integer variable. The method Iæve used
  19029. circumvents this risk, but introduces another factor. The format of the
  19030. number within the string must be correct. For the above conversion to
  19031. work, this must be a two decimal place number, with the decimal point as
  19032. the eighth character of the string. This is where the third formula
  19033. comes in:-
  19034. 5.11
  19035. DEF FN_FormatNumber(Number$)
  19036. 5.11
  19037. LOCAL Length%,Point%
  19038. 5.11
  19039. Length%=LEN(Number$)
  19040. 5.11
  19041. Point%=INSTR(Number$,ö.ò)
  19042. 5.11
  19043. IF (Point%=Length%-1) AND
  19044. 5.11
  19045. (Point%>0) THEN Number$=Number$+ö0ò
  19046. 5.11
  19047. IF (Point%=Length%) AND (Point%>0) THEN Number$=Number$+ö00ò
  19048. 5.11
  19049. IF Length%=0 THEN Number$=ö0ò
  19050. 5.11
  19051. IF Point%=0 THEN Number$=Number$+ ö.00ò
  19052. 5.11
  19053. IF Point%=1 THEN Number$=ö0ò+ Number$
  19054. 5.11
  19055. Number$=RIGHT$(ö       ò+Number$ ,10)
  19056. 5.11
  19057. =Number$
  19058. 5.11
  19059. This routine looks far more complicated than it actually is. The second
  19060. routine, above, passes its Real$ to this function which formats it to
  19061. two decimal places and ensures that the final string is 10 characters
  19062. long.
  19063. 5.11
  19064. In this sense, it is a routine that can be used independently of the
  19065. other two; by calling it with New$=FN_FormatNumber(Old$) where Old$ is
  19066. the unformatted number and New$ is the result.
  19067. 5.11
  19068. It works by determining first the length of the string, then the
  19069. position of the decimal point within the string. With a two decimal
  19070. place number, the position of the point would be 2 less than the length
  19071. of the string.
  19072. 5.11
  19073. The first IF statement adds a single zero if the position of the point
  19074. is 1 less than the stringæs length but only if the decimal pointæs
  19075. position is larger than zero Ö in which case the number is an integer
  19076. and would have been accidentally multiplied by ten.
  19077. 5.11
  19078. The second IF adds a double zero if the point is at the end of the
  19079. string. This is not done if the position of the point is zero, in which
  19080. case the string is null and represents nothing.
  19081. 5.11
  19082. The third makes the string equal to ö0ò if it is found to be null.
  19083. 5.11
  19084. The fourth adds ö.00ò to the end of the string if there is no decimal
  19085. point Ö i.e. if the number is an integer.
  19086. 5.11
  19087. The combination of the third and fourth IFæs result in the null string
  19088. (öò) becoming ö0.00ò
  19089. 5.11
  19090. The fifth IF adds a zero to the string if the decimal point is at the
  19091. very beginning Ö if the number is lower than one and is lacking the
  19092. leading zero.
  19093. 5.11
  19094. Finally, before returning the result, a number of spaces are added to
  19095. the left of the number which is then truncated to the rightmost ten
  19096. characters. Hey presto, a nicely formatted number.
  19097. 5.11
  19098. The three routines are on the enclosed disk, in the form of a procedure
  19099. library Ö details of how to use such are on page 92 of the BBC Basic
  19100. Guide.
  19101. 5.11
  19102. Though the routines, as given, are for numbers with two decimal places Ö
  19103. and with a field width of ten Ö it shouldnæt be too difficult to alter
  19104. them for other requirements. Unfortunately, the higher the number of
  19105. decimal places, the more (and more complicated) IFæs are required. It
  19106. shouldnæt be too difficult to write routines that accept the number for
  19107. conversion, together with the number of decimal places and the field
  19108. width but, as I said before, this was just intended to provide Mr Hollox
  19109. with a starting point for his solution. Vince Hudd, Soft Rock Software.
  19110. 5.11
  19111. Å   Bible Master with RISC-OS 3 Ö Having found a list of verses or cross
  19112. references, it is possible to import the text into an Archimedes word
  19113. processing (or DTP) package.
  19114. 5.11
  19115. (i) Load the PC text into !Edit and then
  19116. 5.11
  19117. (ii) Use the wildcard search and replace option searching for %[ $x76-
  19118. xFF] (note that the square brackets start with a space) and replacing
  19119. with a space.
  19120. 5.11
  19121. This will remove all the screen control characters and multiple spaces.
  19122. The resulting text can then be saved and/or loaded into most word
  19123. processors.  S Wright, Basingstoke
  19124. 5.11
  19125. Å   Deskjet 500C and RISC-OS 3 Ö Recent contributors on the subject of the
  19126. HP Deskjet 500C have tended to concentrate on the best type of paper to
  19127. use. I will not attempt to further that debate, but rather recount my
  19128. efforts to produce envelopes to match the quality of their contents.
  19129. This turned out to be less straightforward than I had expected but I
  19130. eventually succeeded. Most of my printing is from Impression Junior, so
  19131. the following will apply to Impression II users and, although I am using
  19132. an A5000,  the RISC-OS 2  drivers are not crucially different.
  19133. 5.11
  19134. Using the Alter Pages sub-menu in Junior, create a custom page the same
  19135. size as the envelope. A standard A4 envelope seems to be 218mm by 110mm.
  19136. Create a suitable frame for the name and address and save the file as
  19137. Éenvelopeæ. Load the !Printers application and create a custom page of
  19138. the same size, also called Éenvelopeæ. I have used margins of 10mm all
  19139. round which show up unambiguously in the Junior window. Click on <Save
  19140. Settings> in the page set-up menu and <Save Choices> from the main menu.
  19141. Go to the Éconfigureæ option from the printer control menu, select the
  19142. new Éenvelopeæ option and click on OK. The printer margins will now be
  19143. visible in the Junior window. Insert an envelope face down in the out-
  19144. tray of the printer, sliding it into the guide slots provided and
  19145. keeping the right hand edge against the edge of the tray. At this point,
  19146. the HP manual is misleading. Do NOT press the envelope button on the
  19147. printer. Simply press <Print> on the computer and then <Return>. The
  19148. envelope will now be properly printed. If the envelope button on the
  19149. printer has been pressed, the envelope will be passed disdainfully
  19150. through the printer and the address will appear on the next sheet of
  19151. paper from the in-tray.
  19152. 5.11
  19153. In the prison where I work, I have recently been involved in running an
  19154. Anger Control Programme which required a couple of dozen overhead
  19155. projector transparencies. These can be produced to a high standard on
  19156. the 500C and, of course, in full colour. The transparencies used must be
  19157. designed for use with inkjet printers since they require a special
  19158. material to absorb the ink. There is, however, one major problem Ö the
  19159. appropriate material is rather expensive. Hewlett Packardæs own
  19160. transparencies cost about ú75 inc. VAT for a box of 100. For me, this is
  19161. too many and far too much money. Eventually, I found that NOBO produce a
  19162. box of 50 for a slightly lower price per transparency and these should
  19163. be available from a good office supplies firm. The inadequate black
  19164. produced by the colour cartridge on the 500C is particularly noticeable
  19165. on an OHP and I found that a more satisfactory result could be obtained
  19166. by printing each transparency twice; once for black and once for the
  19167. coloured areas. Registration seems not to be a problem for the bold text
  19168. and graphics which are the norm for this kind of presentation. This
  19169. technique also saved an awful lot of expensive, coloured ink.
  19170. 5.11
  19171. Incidentally, the UNDO facility on RISC-OS3 !Draw(or in !DrawPlus) was a
  19172. considerable help in creating the colour Éseparationsæ for this process.
  19173. I could delete either the black or the coloured areas of the image
  19174. before printing and restore them by pressing <F8>.  A Trout, Lancs.
  19175. 5.11
  19176. Å   Deskjet 500 DIP switches Ö For those just buying Deskjet 500 printers,
  19177. it may be worth knowing that the default setting of the DIP switches is
  19178. not too helpful. Try the following settings instead...
  19179. 5.11
  19180.            Bank A                         Bank B
  19181. 5.11
  19182. 1 2 3 4 5 6 7 8   1 2 3 4 5 6 7
  19183. 5.11
  19184. »  »  ¡  ¡  »  ¡  »  ¡áá      »  ¡  »  »  »  »  »
  19185. 5.11
  19186. This seems to work OK Ö it sets things like skip-over-perforation OFF
  19187. and A4 paper instead of some US size.á Steve Hutchinson, Gloucester.
  19188. 5.11
  19189. Å   Dragging solid sprites Ö RISC-OS 3 has, built in, the ability to solid
  19190. drag sprites from save dialog boxes. The solid drag option is stored in
  19191. CMOS in a Éhiddenæ location on bit 1 of byte 28. The following commands
  19192. will set bit 1 without disturbing anything else in this byte.
  19193. 5.11
  19194. *Basic
  19195. 5.11
  19196. SYS öOS_Byteò,161,28 TO ,,v%
  19197. 5.11
  19198. v%=v% OR %10
  19199. 5.11
  19200. SYS öOS_Byteò,162,28,v%
  19201. 5.11
  19202. Now try saving a file from Draw/Edit/Paint, etc.
  19203. 5.11
  19204. (Comparing the A5000 to an A440/1+30Mhz ARM3, the 440 runs at about the
  19205. same speed as the A5000 in mode 12, but at about 1/3 of the speed in
  19206. mode 28.)  Rob Davison, New Zealand
  19207. 5.11
  19208. Å   Personalised application templates Ö Many users may not have realised
  19209. that it is often possible to alter the windows and templates used by an
  19210. application. Most programmers use the FormEd application or one of its
  19211. derivatives to create a Template file which contains the window
  19212. definitions used by the program and this can often be seen in the
  19213. application directory normally called, not surprisingly, Templates.
  19214. 5.11
  19215. If you have a copy of FormEd, which is supplied with all Acornæs
  19216. compilers but is also available from most PD libraries (Shareware Disc
  19217. 20, Ed), you can load these templates and alter them to suit your own
  19218. ideas and preferences. What you must not do is change the number of any
  19219. of the icons or the program wonæt behave properly. You must also be
  19220. careful if you create any extra icons that they donæt overlay any
  19221. existing button icons since the Wimp doesnæt report clicks on icons
  19222. which are hidden behind others with a higher number.
  19223. 5.11
  19224. As an illustration, I have included a set of modified windows for Edit.
  19225. Since some of these now use sprites there is also a sprite file and you
  19226. must insert a line to load these in the !Run file or the windows will
  19227. look rather bare. For simplicity, I have included a !Run file with the
  19228. extra line in it.
  19229. 5.11
  19230. Rename your existing !Run and Templates files something else (in case
  19231. you donæt like mine) and copy the files !Run, Templates and sprites2
  19232. into the !Edit application directory. Now when you run Edit the new
  19233. windows will be used.
  19234. 5.11
  19235. Note that the main text window is also changed. When Edit opens a new
  19236. file the main text window opens in whatever form the template was
  19237. created. Just load the Templates file into FormEd and drag the text
  19238. window around the screen and resize it until you are satisfied. Then
  19239. save the templates. Next time you open an Edit window, that is the size
  19240. and position it will assume.
  19241. 5.11
  19242. I donæt claim that these examples are particularly brilliant but they
  19243. are certainly an improvement on the original and will help to show how
  19244. you can customise standard programs. David Holden, Sydenham.
  19245. 5.11
  19246. Å   Pinboard problems Ö Several people (well, at least two anyway!) appear
  19247. to have had problems with Pinboard running under RISC-OS 3. It would
  19248. seem that the Pinboard module is automatically UNPLUGged following an
  19249. exit from the desktop. One solution involves using an alias to re-
  19250. initialise the Pinboard. If you have a desktop !Boot file then, before
  19251. the Pinboard command (if there is one), insert something like the
  19252. following:
  19253. 5.11
  19254. Set Alias$NewDesktop %RMreinit Pinboard |m %Desktop |m
  19255. 5.11
  19256. Obviously, in place of NewDesktop you can use any name that you like
  19257. (note that abbreviations still work so, in this case, you could use New.
  19258. to carry this out.)  If you wish to re-run the !Boot file on exiting
  19259. from command line mode, add -F !Boot after the %Desktop command.  If you
  19260. do not have a desktop !Boot file, use the Desktop Boot function from the
  19261. Acorn menu on the iconbar.
  19262. 5.11
  19263. From now on, to get back from the command line (after using the Exit
  19264. option), type New.  (or your appropriate alias) rather than Desktop.
  19265. 5.11
  19266. Simon Moy, Norwich Computer Services.
  19267. 5.11
  19268. Å   Truncated filenames and RISC-OS 3 Ö It took me a long time to discover
  19269. that you type *Configure Truncate off  to stop the O.S. automatically
  19270. truncating filenames when saving and therefore (possibly) overwriting an
  19271. old version of a file which I wanted to keep!ááA
  19272. 5.11
  19273. 5.11
  19274. Colton
  19275. 5.11
  19276. From 5.10 page 20
  19277. 5.11
  19278. 5.11
  19279.  
  19280.  
  19281. Hints and Tips
  19282. 5.10
  19283. Å   RISC-OS 3 & DOS filenames Ö DOS filenames (including extensions) are,
  19284. in general, longer than the maximum length of a valid ADFS filename (10
  19285. characters). It is not always possible to copy or move DOS files from
  19286. hard disc partition or floppy discs directly to the ADFS.
  19287. 5.10
  19288. The !MultiFS utility, as supplied with the PC Emulator, solves this by
  19289. allowing you to truncate the DOS filename while the translation process
  19290. takes place. Another very useful option (which I often use when copying
  19291. files from C programs) is to force !MultiFS to handle DOS extensions as
  19292. directories (hierarchical).
  19293. 5.10
  19294. However, when the filetype of a DOS partition on your ADFS hard disc is
  19295. set to ÉDOSdiscæ, RISC-OS 3 will display a filer window for the
  19296. partition when you try to open the folder, while !MultiFS just ignores
  19297. it (i.e. no :C drive on the iconbar). This is all very nice but RISC-OS
  19298. 3 doesnæt offer the nice name translation options mentioned above. To
  19299. enable !MultiFS to display your DOS partitions just set their filetype
  19300. to Édataæ before you start !MultiFS. Remember to use the command line
  19301. and not the filer menu, because the latter doesnæt allow you to change
  19302. the filetype of DOSdiscs. I inserted three lines for each DOS partition
  19303. in the !MultiFS !Run file to swap between ÉDOSdiscæ and Édataæ type
  19304. partitions when !MultiFS is started:
  19305. 5.10
  19306. *Filer_CloseDir <PCe$Drive_X>
  19307. 5.10
  19308. *SetType <PCe$Drive_X> Data
  19309. 5.10
  19310. directly after setting the system variable <PCe$ Drive_X>, and
  19311. 5.10
  19312. *SetType <PCe$Drive_X> DOSDisc
  19313. 5.10
  19314. at the end of the !Run file (although the comment tells us not to do
  19315. so).
  19316. 5.10
  19317. Unfortunately, there are some bugs in !MultiFS: When you copy to a
  19318. MultiFS filer window, you must ensure name translation is not set to
  19319. hierarchical, otherwise you will end up with wildcards (É?æ) in
  19320. filenames. When this happens, you must use DOS itself to delete the file
  19321. because RISC-OS fails to wipe those objects. Another bug appears if you
  19322. shut down your system after using !MultiFS. This results in an error
  19323. report and a task manager crash.á Paul Groot, Holland.
  19324. 5.10
  19325. Å   Sprite does not exist error Ö In answer to last monthæs query in the
  19326. Help! section, the ÉSprite does not existæ error only occurs with the
  19327. old version of the printer drivers. It can be solved by simply using a
  19328. later version of the printer driver e.g. v2.44 or later (as per
  19329. Shareware Disc 17).
  19330. 5.10
  19331. Progammers take note: The error is cause by programs that print sprites
  19332. using their names and not their pointers.
  19333. 5.10
  19334. Many thanks to all those who called Ö too numerous to mention!
  19335. 5.10
  19336. Å   High resolution PostScript? When printing sprites to !PrinterPS, the
  19337. resulting output may be lower quality than, for example, a 600 dpi
  19338. LaserDirect (using !ShowPage), even when printing at 300 dpi. A solution
  19339. is to change the configuration file of !PrinterPS to make it think the
  19340. resolution is higher e.g. change the Épxresæ and Épyresæ parameters to
  19341. 600.á J Thorn, Cardiff.
  19342. 5.10
  19343. Å   Problem with Font$Path Ö I recently experienced a problem with
  19344. Impression 2.16 that took a long time to solve. The problem manifests
  19345. itself by Impression, on starting, reporting an error ÉNot Foundæ. If
  19346. you select OK to continue, the following error is reported ÉIllegal
  19347. window handleæ and at this point you have to quit, because continuing
  19348. results in the second error message. After about two hours of trying to
  19349. find the problem Ö as the error messages are not particularly helpful Ö
  19350. I discovered that the problem lay with Font$Path.
  19351. 5.10
  19352. I have two !Fonts directory, one with a small number of outline fonts
  19353. and one with a large number. Also, my second font directory pulls in the
  19354. fonts in my first directory by use of the Font$Path variable. I had
  19355. moved the locations of these directories from an Apps folder to the root
  19356. folder of my hard disc and this was causing the problems. The ÉNot
  19357. Foundæ error is caused by Impression not finding the first directory in
  19358. the Font$Path and the second error is caused by the fact that a Font
  19359. Menu canæt be created, as the specified directory does not exist.
  19360. Indeed, most applications that support outline fonts will also give
  19361. similar error messages.
  19362. 5.10
  19363. I have written a small program (on this monthæs program disc) that will
  19364. test the validity of Font$Path and a call to this program should be
  19365. placed as the last line in any !Fonts.!Run file. A copy of FontTest will
  19366. need to be copied into all !Fonts directories i.e.
  19367. 5.10
  19368. | !Run file for !Fonts (version 0.11, 10-May-89)
  19369. 5.10
  19370. |
  19371. 5.10
  19372. Iconsprites <Obey$Dir>.!Sprites
  19373. 5.10
  19374. |
  19375. 5.10
  19376. | Kill newer versions of Font Manager
  19377. 5.10
  19378. |
  19379. 5.10
  19380. RMKill FontManager
  19381. 5.10
  19382. RMKill SuperSample
  19383. 5.10
  19384. |
  19385. 5.10
  19386. RMEnsure FontManager 2.42 RMLoad <Obey$Dir>.Fonts
  19387. 5.10
  19388. RMEnsure SuperSample 0.04 RMLoad <Obey$Dir>.Super
  19389. 5.10
  19390. |
  19391. 5.10
  19392. SetMacro Font$Path adfs::
  19393. 5.10
  19394. HardDisc.$.!Fonts., <Font$Prefix>.
  19395. 5.10
  19396. Set Font$Prefix <Obey$Dir>
  19397. 5.10
  19398. |
  19399. 5.10
  19400. <Obey$Dir>.FontTest
  19401. 5.10
  19402. The program firstly checks that Font$Path exists and then reads the
  19403. environment variable and checks its size. The length of this variable
  19404. has to be greater than zero for it to point to a valid !Fonts directory.
  19405. 5.10
  19406. It then checks that every reference in Font$Path points to a valid
  19407. directory. This is done by an OS_File call (line 680) which will return
  19408. 2 if the filename given is a directory. If the file reference does not
  19409. exist, an error will be generated and the Fonts directory !Run file
  19410. needs to be modified.
  19411. 5.10
  19412. I have included an example of the problem on the program disc in the
  19413. ÉExampleæ directory. If you click on !Fonts2 an error will be generated
  19414. as the Font$Path contains a reference to a file !Fonts3 (not a direc
  19415. tory). Andrew Ferguson, London.
  19416. 5.10
  19417. Å   ArcFS and sticky backdrops Ö I have a backdrop application on my
  19418. machine with all the sprites for the various applications held in an
  19419. archive in order to save disc space. In order that the sprites can be
  19420. seen, in theory they should be de-archived first. Thanks to my son,
  19421. Neil, I have the following set of ArcFS commands in the !Run file of my
  19422. !Boot application on the hard disc.
  19423. 5.10
  19424. RMEnsure ArcFS 0 RMLoad System: Modules.ArcFSMod
  19425. 5.10
  19426. RMEnsure ArcFS 0 Error I cannot find the module
  19427. 5.10
  19428. OpenArchive <Boot$Dir>.SpriteLib Sprites
  19429. 5.10
  19430. IconSprites ArcFS#Sprites:$. !Sprites
  19431. 5.10
  19432. CloseArchive Sprites
  19433. 5.10
  19434. C Walker, Wymondham.
  19435. 5.10
  19436. Å   Elite Commanders Ö On this monthæs program disc, there is a program
  19437. which allows you to edit Elite commander files. There are also three
  19438. commander files with missions to accomplish. S Edwards, StourbridgeááA
  19439. 5.10
  19440. 5.10
  19441.  
  19442. Vector Hints Ö not in the manual!
  19443. 5.10
  19444. If the paths rotate the wrong way, you get...
  19445. 5.10
  19446. 5.10
  19447. If the paths rotate the örightò way, you get...
  19448. 5.10
  19449. 5.10
  19450. If the paths originate at the same point, you get...
  19451. 5.10
  19452. 5.10
  19453. Remember, always have the same number of points in the paths. The
  19454. interpolation in the first example was without reversing or flipping
  19455. either of the paths.
  19456. 5.10
  19457. 5.10
  19458. The paper margins are shown on the main window and the printer setup
  19459. menu is used to deselect those pages you donæt need.
  19460. 5.10
  19461. The Eppler profile was öplottedò on an A0 page. The paper margins shown
  19462. are A4 size.
  19463. 5.10
  19464.  
  19465. 5.10
  19466. 5.10
  19467.  
  19468.  
  19469.  
  19470. Impression Hints & Tips
  19471. 5.10
  19472. Å   Mailmerge in Impression: So it seems that there are no tips like old
  19473. tips (Archive 3.9 p20). I claim that Charles Moir learned the trick he
  19474. uses from me! Just one point to add, though. You have a choice between
  19475. linking frames on a master page and not linking. If you link, the text
  19476. flows through the frames on a page and then on to the first frame of the
  19477. next page. This is probably convenient for small mailing lists without
  19478. use of a database. If you do not link frames, text flows from page to
  19479. page within the homologous frame. I recently helped to run a biggish
  19480. scientific meeting which involved mail shots to about a thousand
  19481. potential delegates and a full feedback of booking information to about
  19482. 450. The database resided on a Mac, the most widely-used computer in the
  19483. lab, and an output file was generated in <Tab> separated format, ported
  19484. to a DOS disk, then to PipeDream. Individual columns (fields) or groups
  19485. of columns were then extracted, linefeeds replaced by
  19486. 5.10
  19487. s, and the fields dropped into the right frames of the first page.
  19488. Perfect registration was retained: the last personæs details did belong
  19489. to him! All I had to do was to edit some of the less wise entries in the
  19490. öcommentsò field of the database, which might have been taken as casting
  19491. aspersions on the intelligence, rationality and financial or moral
  19492. rectitude of some the participants! This method obviates the need to
  19493. generate a report format for your database. You just extract the data
  19494. you want for each of your frames and drop it in. Some fields get used
  19495. twice, such as parts of names, once for the address (lined up with an
  19496. envelope window), and once for the Dear... line.
  19497. 5.10
  19498. We also produced sheets of individualised meal tickets. The purpose here
  19499. was to ensure that none of the three eating places got all the dele
  19500. gates. We operated a öswap-shopò but needed to know who was swopping
  19501. with whom. Named tickets solved this. In this case, I extracted the
  19502. names once and dropped then into the first (unlinked) frame. To make a
  19503. copy in the next frame (╫450), <Ctrl-T> to mark all the text in the
  19504. frame, 450 pages deep, <Ctrl-C> to copy it and then <Ctrl-V> to paste it
  19505. into each frame. The printer who perforated the sheets was quite
  19506. impressed by the product: he had never seen the like. He certainly had
  19507. no idea how easy it was (save for feeding 450 sheets of card into the
  19508. laser printer).á Mike Hobart, Cambridge.
  19509. 5.10
  19510. Image setting Ö Another firm which does image setting is Stylus
  19511. Publications Bureau of 98 Wilberforce Road, Finsbury Park, London N4
  19512. 2SR. They also do colour slides and CibaChrom prints and overheads from
  19513. Draw and Impression. However, they covered so much of their literature
  19514. with gold leaf that I wonder if they are still trading!á Mike Hobart,
  19515. Cambridge.
  19516. 5.10
  19517.  
  19518.  
  19519.  
  19520. Hints and Tips
  19521. 5.9
  19522. Å   Auto-destruct! Ö There are applications, like Impression, that have an
  19523. auto-save facility. Auto-save is a very helpful facility and I use it
  19524. myself but, with Impression (and perhaps other applications), there is
  19525. an option to auto-save without prompt. In other words, every few
  19526. minutes, without you being able to stop it, it will save the current
  19527. document on top of the original document on disc. If you canæt already
  19528. see the danger of this, an anecdote might help...
  19529. 5.9
  19530. Tord Eriksson sent an article (over 400k long including various draw
  19531. files) all the way from Sweden on a single floppy disc and there was no
  19532. space on the disc for a duplicate copy of the document. I loaded the
  19533. article and was playing around with it prior to editing it for the
  19534. magazine. I was trying to see if the text was all one story and so had
  19535. cut and pasted various bits when suddenly I got the message öThe file
  19536. has just been savedò. Fortunately, I hadnæt actually deleted anything
  19537. important just prior to the auto-save, but it does go to show that you
  19538. should never send a file to someone else having left the preferences set
  19539. to auto-destruct, sorry, I mean auto-save. Ed.
  19540. 5.9
  19541. Å   Compression Ö Contrary to the review of Compression in Archive 5.2
  19542. (page 57) it is possible to initiate cfs directory displays from script
  19543. files. This might prove useful for those who want to use cfs as the
  19544. default filing system and who want to automatically display the root
  19545. directory on switching on the Archimedes. The problem is that the line,
  19546. 5.9
  19547. Filer_OpenDir CFS#SCSI::Work.$
  19548. 5.9
  19549. will not work unless the CFSmodule is active and it is inadequate to
  19550. simply run the !CFS application before this line in the script file. The
  19551. trick is to set up a !Boot application (as always) and to use this
  19552. applicationæs !boot (or !run) file to load the CFSmodule and activate it
  19553. before calling the script file. Assuming the !CFS application is hidden
  19554. away on the hard disc in the directory $.Utils. Filehndlng, this can be
  19555. achieved using the following commands:
  19556. 5.9
  19557. |Load CFS
  19558. 5.9
  19559. RMEnsure CFSModule 1.10 RMLoad $.Utils.Filehndlng.!Cfs .CFSModule
  19560. 5.9
  19561. RMEnsure CFSModule 1.10 Error CFSModule not loaded
  19562. 5.9
  19563.  
  19564. 5.9
  19565. |Initialise CFS and set the
  19566. 5.9
  19567. |scratch dir for it to use
  19568. 5.9
  19569. |in handling files
  19570. 5.9
  19571. NewCFS SCSI:4
  19572. 5.9
  19573. CFStemp SCSI::Work.$.!System
  19574. 5.9
  19575. |The !cfs !boot file should be
  19576. 5.9
  19577. | run to allow the correct icons
  19578. 5.9
  19579. | to be öseenò by the system:
  19580. 5.9
  19581. $.Utils.Filehndlng.!Cfs.!Boot
  19582. 5.9
  19583.  
  19584. 5.9
  19585. | run desktop, load applications
  19586. 5.9
  19587. | and display root directory
  19588. 5.9
  19589. Desktop -file <HardBoot$Dir> DeskBoot
  19590. 5.9
  19591. The script file, in this case called DeskBoot, used to load the
  19592. applications and open the root directory should be something like this:
  19593. 5.9
  19594. Run <r>!System
  19595. 5.9
  19596. Run <r>!Scrap
  19597. 5.9
  19598. Run <r>!FontsPlus
  19599. 5.9
  19600. Run <us>!StickyBD
  19601. 5.9
  19602. Run <um>!Alarm
  19603. 5.9
  19604. Run <uf>!Dustbin
  19605. 5.9
  19606. Filer_OpenDir CFS#SCSI::Work.$
  19607. 5.9
  19608. The commands ö*Newcfsò and ö*CFStempò are not documented in the
  19609. Compression manual but are explained in sufficient detail in the *Help
  19610. feature of the CFSmodule itself. (Type *help cfsmodule for a list of the
  19611. commands, then do a *help for each individual command for more details.)
  19612. 5.9
  19613. There is an example !boot application on the monthly program disc.á Rob
  19614. Wears, Birmingham.
  19615. 5.9
  19616. Å   Speeding up SQuirreL Ö If, like me, you often have lengthy queries and
  19617. reports for the SQuirreL database to perform, you may have wondered why
  19618. it makes no difference at all when you drag the table in question onto a
  19619. RAM disc.
  19620. 5.9
  19621. The reason for this is that SQuirreL makes extensive use of the !Scrap
  19622. application; if you copy this, too, to the RAM disc and double click on
  19623. it, the hard disc will be silent.
  19624. 5.9
  19625. Just donæt forget to double click onto the version of !Scrap on your
  19626. hard disc when you remove the RAM disc!á
  19627. 5.9
  19628. Jochen Konietzko, K÷ln, Germany.ááA
  19629. 5.9
  19630. 5.9
  19631.  
  19632. Ovation Hints & Tips
  19633. 5.9
  19634. The following was submitted by Hilary Ferns, for which we are very
  19635. grateful. She adds that the Ovation manual is full of hints and tips
  19636. like these (and identical to some we have already published Ö oops!).
  19637. 5.9
  19638. Å   Selecting tools Ö Using <select> to choose from the toolbox will
  19639. automatically return you to the text insertion icon after you have
  19640. performed one action with that tool. Using <adjust>, however, will allow
  19641. you to remain with your chosen tool until you decide to select the next
  19642. tool again yourself. This is useful when you want to draw several lines
  19643. or frames, or link a number of successive boxes.
  19644. 5.9
  19645. Å   Using picture frames Ö The default Éinsetæ for a picture frame is 0
  19646. mm. (For a text frame it is 1 mm.) Ovation will scale your imported
  19647. picture with the bottom and left sides aligned to the frame. I have
  19648. discovered on many occasions these sides of a picture (Draw or Sprite
  19649. format) to have been slightly cropped. This is not always obvious on
  19650. screen but is quite noticeable when printed. I now offer various answers
  19651. to this problem.
  19652. 5.9
  19653. 1. Set inset to 1mm before importing the picture.
  19654. 5.9
  19655. 2. If you want to move the picture within the frame, whatever the inset
  19656. you are ln danger of losing a fragment on any edge. You can give
  19657. yourself more space by either increasing the frame size (often not
  19658. suitable) or by decreasing the size of the picture by 1% in each
  19659. direction.
  19660. 5.9
  19661. 3. Remember too that holding down shift while moving the picture will
  19662. restrict movement to horizontal and vertical directions only, thus
  19663. enabling you to move the picture more accurately.
  19664. 5.9
  19665. I find the keyboard short-cuts for scaling a picture within a frame
  19666. particularly useful <shift-ctrl-G> to scale and <shift-ctrl-H> to fill
  19667. the frame.
  19668. 5.9
  19669. Å   Text to Draw path object Ö The character selection application
  19670. (!CharSel) supplied with Ovation, apart from offering access to
  19671. alternative characters, also allows a single character to be changed to
  19672. Drawfile format. To do this, you select the character with <adjust>. The
  19673. resulting Drawfile icon can then be dropped into an Ovation picture
  19674. frame. Various interesting effects can be obtained by using these
  19675. characters in headings (together with a bit of imagination!).
  19676. 5.9
  19677. Å   Default style-sheet Ö In the !Ovation application directory is a
  19678. style-sheet called ÉDefaultæ. This is the one used each time you load
  19679. Ovation and click on the icon to open up a document. This can be
  19680. replaced with a style-sheet of your own choice, e.g. one you use
  19681. regularly, but it must be called ÉDefaultæ. This would mean that you
  19682. will always have your own particular choice of paragraph styles defined
  19683. when Ovation is run. This is a very useful facility not to be missed.
  19684. 5.9
  19685. The next few hints and tips were sent by Aneurin Griffiths from Trefin,
  19686. Dyfed. Again we are most grateful and are glad to see a number of
  19687. readers redressing the Impression/Ovation balance by sending in some
  19688. really useful Ovation tips.
  19689. 5.9
  19690. Å To draw short lines using the öline-toolò Ö Draw a long line, even
  19691. passing through text, and press <select>. Now shorten the line by
  19692. placing the pointer on the red box at the Élong endæ of the line, and,
  19693. using <select>, shorten the line to the required length.
  19694. 5.9
  19695. Å Printing labels using computer sheets with 2 or 3 rows of labels Ö If
  19696. the sheets are not A4 size, adjust the page size on the printer menu.
  19697. Carefully measure the distance from the top of the sheet to a point half
  19698. way between the first label and the second label. Use ÉView 200%æ and
  19699. mark a horizontal guide line by placing the pointer on the side ruler
  19700. and pressing <select>. (Fine adjustment is possible using <adjust>.)
  19701. Measure the distance from the mid point previously taken to one mid-way
  19702. between label 2 and 3. Carefully draw a guide line as before. Other
  19703. guide lines can now be drawn with the same spacing.
  19704. 5.9
  19705. Vertical guide lines can now be drawn in the same way. Now draw a text-
  19706. frame in the first of the rectangular spaces, allowing space for the
  19707. margins around the label. At this stage it is a good idea to save the
  19708. layout as öBlnk_xyò, where values for the label size could be coded.
  19709. 5.9
  19710. Enter the text in the text frame. Then select Object Ö Duplicate Frame,
  19711. and enter the appropriate number (Érequirementæ Ö 1!). Without changing
  19712. the instructions further, a stack of labels will be shown. These are now
  19713. easily moved to their positions on the grid using <adjust>. Obviously,
  19714. the labels on one printed sheet may be all the same or assorted. It is
  19715. sensible to make the first printout on an A4 sheet and then the A4 and
  19716. the sheet of labels may be matched from the top and left margins. Any
  19717. necessary adjustments can be easily made. Using this method the sheet
  19718. feed system is used. This works very well with a Canon BJ130e printer.
  19719. 5.9
  19720. Å Using Ovationæs spelling checker Ö It is important to realise that the
  19721. checker must be started at the beginning of each Chapter when checking a
  19722. document composed of more than one Chapter. After Ch.1, select the first
  19723. page of Ch.2 and start the spell check again.
  19724. 5.9
  19725. This from Albert Kitchenside, Addlestone, Surrey:
  19726. 5.9
  19727. Å Importing Text from PipeDream Ö The Ovation manual recommends
  19728. importing PipeDream text by holding down <ctrl> while dragging the
  19729. PipeDream text file into an Ovation frame. This has the effect of
  19730. converting single line terminators into spaces to allow Ovation to
  19731. reformat text within a frame. However, Albert finds that lines between
  19732. paragraphs and headings are erroneously removed using this method. He
  19733. has sent a Basic program which processes files correctly prior to import
  19734. into Ovation. They are in the directory PD/OV on the monthly program
  19735. disc.
  19736. 5.9
  19737. Impression
  19738. 5.9
  19739. Hintsá&áTips
  19740. 5.9
  19741. Å   More than 76 graphics per chapter Ö If you really want to have more
  19742. than 76 graphics per Impression chapter, then use David Pillingæs ArcFS
  19743. to store your document. You will then be able to store an unlimited
  19744. number of graphic files, but you may find the access times a bit slow!
  19745. Also, RISC-OS 2 users should be aware that a bug manifests itself after
  19746. the 9358th file and filenames become confused. Ö Martin Sperl, Austria.
  19747. 5.9
  19748. Å   More than 76 fonts available at once Ö Continuing the Étrickæ above,
  19749. it is also possible to have an unlimited number of fonts available
  19750. simultaneously by copying all files from your !Fonts directory into an
  19751. ARCFS archive (plus all the extra fonts that you have always wanted to
  19752. use), and then insert the following line (for example, assuming the new
  19753. archive is called öFontò) into your !Boot file within the new archived
  19754. font directory:
  19755. 5.9
  19756. Set Font$Path ARCFS#Font:$
  19757. 5.9
  19758. You can then cause the new set of fonts to be loaded automatically by
  19759. inserting the following line within your system startup sequence (after
  19760. ArcFS has been run!):
  19761. 5.9
  19762. OpenArchive SCSIdisc4::ARCFS#Font
  19763. 5.9
  19764. (You need to substitute the name for your own hard disc in place of
  19765. SCSIdisc4.) Also, please note that to avoid a speed penalty in system
  19766. startup, you do not have to use compression when creating the font
  19767. archive and you will still save approximately 2k of disc storage per
  19768. font. Ö MS
  19769. 5.9
  19770. Å   Viewing the screen without moving the cursor Ö Hold down <Shift> and
  19771. <Ctrl> and then use the arrow keys. It changes your view on the
  19772. document, left, right, up and down, without moving the cursor position.
  19773. This is useful if you donæt want to have to change the magnification to
  19774. something smaller, and thus lose the legibility of the screen font. Ö
  19775. David Crofts, Bury St Edmunds
  19776. 5.9
  19777. Å Large capitals in normal text Ö If you like having a large letter to
  19778. add emphasis to the start of a paragraph but have found that the
  19779. subsequent line is spaced too far beneath, there is a solution:
  19780. 5.9
  19781. Edit the Main Heading style (or create a new style), clicking on the
  19782. 120% button, and then changing the Line Spacing box to the same as the
  19783. Font Size box e.g. 24pt as default. The problem, as you can see above,
  19784. is solved! Ö DC
  19785. 5.9
  19786. Å   Substitute for colour in documents Ö Try a little variety in Black and
  19787. White. For a poster I did recently, I redefined some of the font colours
  19788. in styles to grey palettes. This gives an interesting variety to the
  19789. print density if you have a decent printer driver. Ö DC
  19790. 5.9
  19791. Å   Bullet point Ö <shiftÖbackspace> is a short-cut to enter a Å bullet in
  19792. the text. Ö DC
  19793. 5.9
  19794. Å   Deleting styles from the menu Ö another of those hints that everyone
  19795. else probably knew about all along...
  19796. 5.9
  19797. When you merge pieces from several old documents into one new text, this
  19798. often means that your style menu becomes unnecessarily long.
  19799. 5.9
  19800. You can delete those unwanted styles in the öedit styleò window, with
  19801. one snag:
  19802. 5.9
  19803. If you click first onto a style in the style list, then on öedit styleò,
  19804. any attempt to delete that style will bring up an error message.
  19805. 5.9
  19806. This is because clicking into the style list automatically selects a
  19807. style at the cursor position.
  19808. 5.9
  19809. Therefore, after you open the edit window, you must first deselect the
  19810. style before it can be deleted!á Ö Jochen Konietzko, K÷ln, Germany
  19811. 5.9
  19812. Å   Installing Impression on the A5000 Ö While helping a relative to setup
  19813. his A5000/Impression system, we discovered that the installation program
  19814. for the DTP installs the old Font Manager (v2.44) onto the !Fonts
  19815. directory and all the old files associated with it. The ability of the
  19816. new Font Manager (v2.49) to address multiple font directories is lost
  19817. and Impression only Éseesæ either the ROM fonts or the hard disc fonts.
  19818. I suggest that anyone installing Impression is urged to remove the
  19819. support files in the fonts directory after the installation process
  19820. (leaving the actual fonts themselves behind) and reload the files within
  19821. the fonts directory on the Apps 1 disc. Hopefully, Computer Concepts
  19822. will alter the !Install program to take account of the changes in RISC-
  19823. OS 3.áÖ David Woods, Glasgow
  19824. 5.9
  19825. Å More on Impression styles Ö Various readers have written with queries
  19826. on styles called Étableæ and Édefaultæ that appear on the style menu
  19827. with Impression version 2.16. These are not (in themselves) new program
  19828. features or bugs Ö they are just extra styles stored as part of the
  19829. !Default document stored in !Impress.Auto. The facilities provided by
  19830. the Étableæ style are all as documented in the very first Impression-2
  19831. User Guide and are automatically set up for you if you import spread
  19832. sheet data using the LoadCSV+ loader which comes with the business
  19833. supplement. If the extra styles cause you problems or conflict with any
  19834. of your own style names, all you have to do is open a blank document,
  19835. edit the offending styles and click on the delete button to remove them
  19836. and save the document with the name !Default in one of your own
  19837. directories. Now quit Impression, open !Impress.Auto and move the
  19838. öoriginalò !Default document elsewhere and replace it with the one you
  19839. just created. Now when you start Impression, the offending styles will
  19840. not appear. You may like also to set up your most frequently used master
  19841. pages and other styles using the same method. Ö Rob Sherratt,
  19842. Felixstowe.
  19843. 5.9
  19844. Å   !Impression with !Compression Ö The message from Impression
  19845. öIncompatible document versionò means you are trying to load the adfs
  19846. icon into the application rather than the compressed icon!!á Ö Ned
  19847. Abell, Kidderminster
  19848.  
  19849.  
  19850.  
  19851.  
  19852.  
  19853. Hints and Tips
  19854. 5.8
  19855. Å   A5000 filing system problems Ö There have been more comments about
  19856. problems with losing files on the A5000. We suggested last month that
  19857. you take Acornæs advice and configure the ADFSbuffers to zero. In the
  19858. light of further experience, we would suggest it even more strongly.
  19859. This problem occurred with Impression but we have had reports that it
  19860. also happens with other software. You have been warned. Ed.
  19861. 5.8
  19862. David Pilling adds... In the last Archive, you had a piece from someone
  19863. saying that it is necessary to *configure ADFSBuffers 0 to make Acorn
  19864. DTP and Impression work properly. The official line according to Beebug,
  19865. is that unless A5000æs are configured like this, they will corrupt their
  19866. hard discs sooner or later. There are well documented cases of this
  19867. occurring. In addition, many programs, ArcFS and the Beebug hard disc
  19868. backup for example, wonæt work unless ADFSbuffers are set to zero.
  19869. 5.8
  19870. It is also common advice to load the SerialUtils module before attempt
  19871. ing to use comms programs. The naive point of view is that SerialUtils
  19872. does something clever that allows buffers to work. That is not so,
  19873. SerialUtils actually prevents buffers from doing anything. It is
  19874. therefore much more efficient to stop your comms program from loading
  19875. any buffer and not bother with SerialUtils. SerialUtils will apparently
  19876. also prevent things like printer buffers from working.
  19877. 5.8
  19878. New versions of Hearsay cope with all this automatically and there is a
  19879. version that uses the buffer manager built into RISC-OS 3. However, we
  19880. are still having discussions with Acorn over whether this works properly
  19881. in RISC-OS 3 as fitted to the A5000.á David Pilling, Blackpool.
  19882. 5.8
  19883. Å   A5000 second floppy drive Ö In Archive 5.6 p12, it said that if you
  19884. were putting an external 5╝ö drive onto an A5000 it should be connected
  19885. into the middle socket of the three. That is not correct. It should go
  19886. into the one farthest East. The internal drive goes in the middle one.
  19887. The other point to note is that it said the external drive can be set to
  19888. ID zero or one. That it true but it should perhaps should have been
  19889. spelt out more clearly that it should NOT be set to either two or three.
  19890. If it is, it will not work properly. Ed.
  19891. 5.8
  19892. Å   Adjust clicking (RISC-OS 3) Ö Most people will, by now, have cottoned
  19893. on to the idea that clicking open a directory with <adjust> closes the
  19894. parent directory viewer and that clicking the close button with <adjust>
  19895. opens up the parent. One extension of this on RISC-OS 3 is that clicking
  19896. the close button with <adjust> while holding down <shift> doesnæt
  19897. actually close the window but does open up the parent directory.
  19898. 5.8
  19899. Å   Directory date stamps Ö When copying a directory and its contents, the
  19900. destination directory is created with the current date stamp, as opposed
  19901. to being created and then stamped with the date of the source object.
  19902. (Looking through the PRMáI havenæt been able to find a way of stamping a
  19903. file to a date other than that held in the real time clock.)
  19904. 5.8
  19905. In the case of application directories, the application directoryæs date
  19906. stamp appears to be copied through, but on closer inspection this is not
  19907. so. The application directory is created with the current date stamp (as
  19908. for normal directories) however, the date which the filer presents the
  19909. user (for the date of the application directory) is actually the date
  19910. stamp of the !RunImage file.
  19911. 5.8
  19912. RISC-OS 3 automatically detects an attempt to move from one directory to
  19913. another on the same media, and performs a Rename operation instead of a
  19914. copy, whereby the date is retained. (Possibly, RISC-OS 3 also has a
  19915. facility for stamping a filer object with a specified date, although I
  19916. will not know about this until the RISC-OS PRMáis released!)á D
  19917. Lenthall, London.
  19918. 5.8
  19919. Å   Exiting the desktop (RISC-OS 3) Ö With RISC-OSá2, you could set up an
  19920. obey that would exit the desktop by making the last line:
  19921. 5.8
  19922. FX 138,0,252
  19923. 5.8
  19924. and as long as no text was output by the obey file, the desktop would be
  19925. exited. The same can be done with RISC-OSá3 by placing the above line in
  19926. the obey file twice. It also works with the keys, press <shiftÖctrlÖF12>
  19927. twice and the desktop is exited. Also when <shiftÖctrlÖF12> has been
  19928. pressed F12 (*Commands) and <ctrlÖF12> (Task Window) still work!
  19929. Warning: If you do use this then the ADFS will be reset, losing the
  19930. current directory.á P Bedford, Peterborough.
  19931. 5.8
  19932. Å   Extra validation flags Ö With RISC-OS 3, a number of new validation
  19933. flags are available for when you are designing window templates. So far
  19934. I have found the following:
  19935. 5.8
  19936. Border Flags Ö these require the border flag to be set on and give an
  19937. icon a 3D border similar to Impressionæs, they all begin with a B (or b)
  19938. and are followed by a number to give the border type:
  19939. 5.8
  19940. 0   Single raised border.
  19941. 5.8
  19942. 1   Double border for grouping.
  19943. 5.8
  19944. 2   Triple border for default action icons.
  19945. 5.8
  19946. 3   Triple border for writable icons.
  19947. 5.8
  19948. 4   Single recessed border.
  19949. 5.8
  19950. 5   Standard single line border.
  19951. 5.8
  19952. 6   Triple recessed border similar to type 3.
  19953. 5.8
  19954. Border type 0 and 3 can be followed by a comma and then a number between
  19955. 0 and 15 to define the colour to slab to.
  19956. 5.8
  19957. Pointer definition Ö you can define an icon so that the pointer changes
  19958. shape when over the icon. This is done by placing a P (or p) in the
  19959. validation string followed by the name of the sprite containing the
  19960. pointer shape. Try sprite ptr_double.
  19961. 5.8
  19962. Many others may be available with other parameters for the above options
  19963. but until the RISC-OSá3 Programmersæ Reference Manual is available we
  19964. wonæt really know. Most of the above is available in RISC-OSá2 by using
  19965. the Interface module by Simon Huntington.á P Bedford, Peterborough.
  19966. 5.8
  19967. Å   Iconised windows with Impression (RISC-OSá3) Ö If you want to
  19968. distinguish Impression documents that have had their windows iconised,
  19969. generate an icon called Éic_impressioæ and place it in the !Sprites file
  19970. in the !Impress directory. Mine is the Impression quill & pot in a
  19971. window (ic_?).á P Bedford, Peterborough.
  19972. 5.8
  19973. Å   Menon hotkey Ö If you use Menonæs hotkey facility, a problem can arise
  19974. in that it may not work if you have a window open that contains the
  19975. caret (e.g. Impression). However, it will work if you hold the alt key
  19976. down at the same time as the hotkey i.e. <alt-ctrl-H>. P Bedford,
  19977. Peterborough.
  19978. 5.8
  19979. Å   Oak drives with Acorn SCSI card Ö If you are using an Oak drive with
  19980. an Acorn SCSI card (e.g. if you own an A540), you may find that you are
  19981. unable to dismount the drive and that you get a ÉBad parametersæ error.
  19982. 5.8
  19983. Hard drives that are formatted using an Oak SCSI card include additional
  19984. information in the boot block which the Acorn card objects to. To solve
  19985. these problems (especially annoying with removable hard drives!), you
  19986. will have to format the disc with Acornæs SCSIDM.
  19987. 5.8
  19988. Unfortunately, it is not that simple. When the desktop is started up,
  19989. the Acorn card looks at all of the drives that are available. Once it
  19990. sees an Éincorrectlyæ formatted Oak disc, it will not allow SCSIDM to
  19991. access the drive. This means that you will have to start up outside of
  19992. the desktop in order to format the disc. This can be done by typing
  19993. *Configure Language 0 <return> from the command line and then pressing
  19994. <ctrl-break>.
  19995. 5.8
  19996. Once this has been done, you can format your drive in the usual way Ö
  19997. see pages 11-12 of the SCSI Expansion Card User Guide.
  19998. 5.8
  19999. To start up in the desktop again, simply type *Configure Language 4
  20000. <return> from the command line and then press <ctrl-break>.á Adrian
  20001. Look, N.C.S.
  20002. 5.8
  20003. Å   PC file transfer revisited Ö When transferring text files from PC to
  20004. the Archimedes (or vice versa), it is necessary to convert the carriage
  20005. returns (CRs) to line feeds (LFs) and vice versa. This can be done using
  20006. the search and replace facility of Edit, but it is much quicker just to
  20007. use the in-built transfer ÉCR<->LFæ which is available from the ÉEditæ
  20008. submenu or to press <F8>.á GáRiley, Cheshire.
  20009. 5.8
  20010. Å   PC screen fonts revisited Ö In Archive 4.12 p10 there was a hint that
  20011. explained how to change the screen font of the PC Emulator to any BBC
  20012. screen font. Since then, the program has been updated to include EGA+
  20013. and ECD definitions.
  20014. 5.8
  20015. The EGAROM looks to contain two sets of character definitions: EGA+ 16╫8
  20016. cells and ECD 14╫8 cells, as opposed to the ROM file which (amongst
  20017. other things) contains the 8╫8 cells used in the other modes. The
  20018. following program will convert these character sets for EGA+ and ECD
  20019. modes in a similar manner to my previous program:
  20020. 5.8
  20021. REM >EGAFONT
  20022. 5.8
  20023. REM Merge BBC FONT file into !PC EGAROM file
  20024. 5.8
  20025. REM NB. *** COPY ORIGINAL EGAROM FILE BEFORE RUNNING THIS ***
  20026. 5.8
  20027. :
  20028. 5.8
  20029. ON ERROR REPORT:PRINTö at line ò;ERL :CLOSE#0:END
  20030. 5.8
  20031. DIM rom% &2000,C%(7)
  20032. 5.8
  20033. R$=ö:4.!PCEM.EGAROMò
  20034. 5.8
  20035. OSCLI(ö*LOAD ò+R$+ö ò+STR$~rom%)
  20036. 5.8
  20037. :
  20038. 5.8
  20039. F%=OPENIN(ö:4.BBCFONTS.NEWFONTò):REM File of type &FF7
  20040. 5.8
  20041. :
  20042. 5.8
  20043. REPEAT
  20044. 5.8
  20045. A%=BGET#F%
  20046. 5.8
  20047. IFA%<>23THENPRINTöThis is not a BBC font file!ò:END
  20048. 5.8
  20049. O%=BGET#F%:PRINTöChar &ò;~O%;ö ò;: VDU23,255
  20050. 5.8
  20051. REM  EGA+ chars 16x8 Ö double horiz. thickness
  20052. 5.8
  20053. P%=O%*16
  20054. 5.8
  20055. FORI%=0TO7
  20056. 5.8
  20057. C%(I%)=BGET#F%:C%=C%(I%):VDUC%
  20058. 5.8
  20059. REM Ö assemble 8x8 char array
  20060. 5.8
  20061. rom%?(P%+2*I%)=C%
  20062. 5.8
  20063. rom%?(P%+2*I%+1)=C%
  20064. 5.8
  20065. NEXT
  20066. 5.8
  20067. VDU255:PRINT
  20068. 5.8
  20069. REM  ECD chars 14x8 Ö blank first and last three rows
  20070. 5.8
  20071. P%=&1000+O%*14
  20072. 5.8
  20073. rom%?(P%+0)=0:rom%?(P%+1)=0
  20074. 5.8
  20075. rom%?(P%+2)=0
  20076. 5.8
  20077. FOR I%=0TO7:rom%?(P%+3+I%)=C%(I%): NEXT
  20078. 5.8
  20079. rom%?(P%+11)=0:rom%?(P%+12)=0
  20080. 5.8
  20081. rom%?(P%+13)=0
  20082. 5.8
  20083. UNTIL EOF#F%
  20084. 5.8
  20085. CLOSE#0
  20086. 5.8
  20087. :
  20088. 5.8
  20089. OSCLI(ö*SAVE ò+R$+ö ò+STR$~rom%+
  20090. 5.8
  20091. ö + 2000ò)
  20092. 5.8
  20093. END
  20094. 5.8
  20095. This program has been tested in both modes by squeezing every last byte
  20096. out of my A3000 and through the use of the PD multisync Éemulatoræ Ö I
  20097. could just about stand the flickering! The ECD characters are a little
  20098. smaller due to the difficulty in mapping the default 8 onto 14 rows,
  20099. however, it does result in greater line spacing and arguably improves
  20100. readability.
  20101. 5.8
  20102. Finally, I suppose that if anyone needs to redefine the MDA1 outline
  20103. font (has anyone found anything which uses the MDA mode?), they could
  20104. use !FontEd or a similar application to change the font name of their
  20105. preferred outline font to MDA1. The MDA0 font would appear to contain
  20106. definitions for the Éadditionalæ IBM character set and, as such, is less
  20107. likely to require redefinition.á PáBready, Glasgow.
  20108. 5.8
  20109. Å   Printer buffers Ö RISC-OS 3 provides a configurable printer buffer.
  20110. Use the command:
  20111. 5.8
  20112. *Configure PrinterBufferSize <n>K
  20113. 5.8
  20114. to set the buffer size to <n> K in length. This does not seem to be used
  20115. by the RISC-OSá3 printer drivers but is used outside the desktop
  20116. environment. To check the buffer has been configured, perform a <ctrl-
  20117. reset> after the configure command, go into Basic and type:
  20118. 5.8
  20119. PRINT ADVAL(-4)
  20120. 5.8
  20121. the result will be the size of your printer buffer.á PáBedford,
  20122. Peterborough.
  20123. 5.8
  20124. Å   Translator tips Ö Translator can easily be used to convert a sprite
  20125. from one screen mode to another. From the Translator menu, simply
  20126. deselect the ÉPop upá>áAuto modeæ option, and then select the ÉProcess >
  20127. Sprite output > Output mode > Currentæ. Select the desktop mode for the
  20128. output sprite and drag the sprite to be converted onto the Translator
  20129. icon. Finally, save the converted sprite from ÉMiscá>áSaveá>áFullæ
  20130. option.
  20131. 5.8
  20132. When printing foreign graphics files on a monochrome printer, better
  20133. results can be obtained by selecting the ÉBlack and whiteæ option from
  20134. the Translator menu i.e. the sprite is converted into 256 grey scales.
  20135. (I think this is because there is less distortion of the colours than
  20136. when fitting the sprite to the 256 desktop colours available and then
  20137. the printer driver using ColourTrans to convert them to monochrome
  20138. information.) CáPaul, Manchester.
  20139. 5.8
  20140. Å   Waiter and MultiFS clash Ö You canæt run The Data Storeæs Waiter with
  20141. the version of MultiFS that comes with the new PC Emulator. You must
  20142. quit Waiter before running MultiFS.á JáThompson.
  20143. 5.8
  20144. Å   Window bug (RISC-OSá3) Ö There is a bug in the windows redraw routine.
  20145. If you use !FormEd to define a window with a vertical scroll bar, no
  20146. horizontal scroll bar and no size icon, then turn on the horizontal
  20147. scroll bar, being careful not to cover where the size icon would be with
  20148. the menu, you will see that no box is redrawn in the area where the size
  20149. icon should be. If you drag other windows over this window the result is
  20150. a mess in the area where the size icon should be. As this example shows,
  20151. the result is not as expected.á P Bedford, Peterborough.
  20152. 5.8
  20153. Å   Window movement (RISC-OSá3) Ö If you use <adjust> in the scroll bar
  20154. areas to provide reverse movement, you may find useful the facility for
  20155. complete window scrolling. If you click adjust and hold on either slider
  20156. bar, the pointer vanishes and if you move the mouse, the window is
  20157. scrolled in the same direction. This only works if both scroll bars are
  20158. on a window.á P Bedford, Peterborough.ááA
  20159. 5.8
  20160. 5.8
  20161.  
  20162.  
  20163.  
  20164. Image-setting
  20165. 5.8
  20166. Hints & Tips
  20167. 5.8
  20168. Å   Make sure you ask the image-setting bureau to produce films in a form
  20169. that your printer can use. e.g. Can he use Éright reading positiveæ?
  20170. 5.8
  20171. Å   Only use high quality PostScript fonts such as the range from EFF ù
  20172. mistakes can be expensive.
  20173. 5.8
  20174. Å   Ensure that the client Éacceptsæ a bromide Éproofæ before having the
  20175. work printed.
  20176. 5.8
  20177. Å   Scanning Ö if you do your own scanning, rather than having it done via
  20178. a bureau, use the lowest possible scanning resolution that is consistent
  20179. with the screen resolution being used by the printer Ö i.e. a 150 l.p.i.
  20180. screen (a typical value for high quality magazines) requires no more
  20181. than 150 dots per inch scan, assuming a reproduction ratio of 1:1.ááA
  20182. 5.8
  20183. 5.
  20184.  
  20185.  
  20186. Hints and Tips
  20187. 5.7
  20188. Å   A5000 floppy drive problems Ö There have been a number of comments in
  20189. Archive about the slowness of the A5000æs floppy drive. Could this be
  20190. due to a bug which RISC-OS 3 has with the ADFS buffers. There was a note
  20191. with my machine when it was delivered saying that the ADFS Buffers
  20192. should be configured to zero due to a bug which causes occasional data
  20193. errors. Configuring thus makes the floppy drive incredibly slow during
  20194. copy operations with a track access taking more than 2 seconds. I
  20195. preferred to have the speed and I spoke to Peter Dunn of Acorn at an
  20196. Open Day in Glasgow recently who told me that the adfs buffers problem
  20197. had only appeared with the Acorn DTP and that it shouldnæt be a problem
  20198. with other programs like Impression. Indeed they had their A5000s
  20199. configured with ADFS Buffers set to 16k so I copied them.
  20200. 5.7
  20201. Then just the other day, Impression 2.16 dropped through my letter box.
  20202. A couple of days later, I had two relatively complex newsletters to
  20203. typeset. The first crashed during a save operation, losing most of the
  20204. text. I thought ÉThat will teach me to make back-up copies in future.æ I
  20205. remade the document successfully. The next job was done with two copies
  20206. on the hard disk, a main and a back-up. The main would auto-save and I
  20207. would make a back-up by adding a Ébæ to the filename. Well into this
  20208. job, it crashed. Both copies were corrupted, so I gave up and returned
  20209. to version 2.14f. No further problems. A word with Computer Concepts and
  20210. they suggested that I return the ADFSbuffers to zero.
  20211. 5.7
  20212. Iæd be interested to hear if other A5000 and Impression users have had
  20213. similar or other experiences with their setup.á David Woods, Glasgow
  20214. 5.7
  20215. Å   ArcDFS and !65Host Ö If you try to use ArcDFS with the 6502 emulator,
  20216. you may get a öBad DFS emulationò error. John Fletcher of Dabs Press
  20217. says: öThis is because the manual does not fully explain how to use
  20218. ArcDFS with the emulator. The way to access a DFS disc, is not to type
  20219. *DISC, but to type: *Dir dfs::<drive number>. You should also change
  20220. drive using the above command instead of *Drive.òá P Northing, Sheffield
  20221. 5.7
  20222. Å   Bringing windows to the front Ö To move a window to the front, you
  20223. must click on its title bar. This often involves moving other windows to
  20224. get to it. However, I have just discovered that clicking on the windowæs
  20225. adjust size icon (bottom right) also brings the window to the front.
  20226. This Éobviousæ hint may help prevent too much window shuffling!á R
  20227. House, Andover
  20228. 5.7
  20229. Å   Canon Bubblejets BJ300 & BJ330 Ö There are some undocumented features
  20230. on these machines that make cleaning and changing ink cartridges a bit
  20231. easier. The normal cleaning cycle is started by pressing the shift then
  20232. the cleaning keys. An extended cycle is started by pressing shift then
  20233. pressing and holding cleaning and then pressing shift again.
  20234. 5.7
  20235. There is a function called reference aging which sprays ink all over the
  20236. printed area of the paper. Be warned though that this uses a lot of ink
  20237. and the ink is very difficult to remove from hands, etc so have a poly-
  20238. bag handy to pop the sheet in!! The sequence can be stopped by turning
  20239. the printer mains off. Press shift then press and hold cleaning and then
  20240. press card and paper together and release cleaning.
  20241. 5.7
  20242. Iæve been using öReportò photocopier paper in my BJ300 and the print
  20243. quality is superb.á Ned Abell, Kidderminster
  20244. 5.7
  20245. Å Changing the file allocation of a hard Disk Ö My A410/1 is equipped
  20246. with an internal 40M ST506 hard disk (NEC). Recently I added an external
  20247. SCSI hard disk (cached Morley öCheetahò, 100M, fitted with a Rodime
  20248. R3000 disk). When I compared those two drives, I made some very
  20249. unexpected discoveries.
  20250. 5.7
  20251. I copied the entire content of the internal disk (39M) to the new drive,
  20252. because I wanted to soak test the old disk. To my amazement the SCSI
  20253. öfreeò window showed that I had already used up no less than 62M of
  20254. space! I phoned the (very friendly and competent) Morley help line, and
  20255. they told me that larger drives usually were formatted differently from
  20256. small ones (with larger blocks), because this improved their speed
  20257. performance.
  20258. 5.7
  20259. They advised me that if the extra space was more important to me than
  20260. speed, I should use the formatter on the Morley support disk to alter
  20261. the size of allocated blocks. I fiddled around with this application and
  20262. found that it is indeed possible to change the space needed for a file
  20263. quite considerably; in the configuration that I finally chose, the 39M
  20264. from my old disk actually occupied slightly less space Ö below 38M!
  20265. 5.7
  20266. What is more, the speed tester showed a slightly worse performance, but
  20267. any improvised speed tests I did myself (like copying 3M of files from
  20268. RAM disk to hard disk and back) showed these differences to be quite
  20269. negligible.
  20270. 5.7
  20271. So: If you buy a new (second) hard disk, it might be a good idea to
  20272. check how it administrates data, before you do any serious work with
  20273. it!á Jochen Konietzko, K÷ln, Germany
  20274. 5.7
  20275. Å   DFS reader and A5000 Ö When the DFS reader (Shareware 31) is run on
  20276. the A5000, it fails with öUnknown or missing variable at or about line
  20277. 260ò. This can be cured by adding the following line:
  20278. 5.7
  20279. 215 large% = TRUE : full% = TRUE
  20280. 5.7
  20281. M Pullin, Cheltenham.
  20282. 5.7
  20283. Å   Econet interface faults Ö We had a big mains spike that Étook outæ
  20284. twelve BBC B Econet interfaces. At first, the Masters and Archimedes
  20285. machines seemed OK but further investigation proved otherwise. The
  20286. findings may prove useful to others.
  20287. 5.7
  20288. There are two types of Acorn Econet cards, (plus the XOB one) an old one
  20289. and a newer one. All the machines with the old type of cards seemed fine
  20290. after the spike but none of the newer ones worked! Our first thought was
  20291. that they were zapped by the spike. However, on closer examination, when
  20292. we disconnected the old type machines from the network, the ones with
  20293. the newer type card started to work. Looks like some of the old type
  20294. cards are faulty but still working. The old style cards definitely seem
  20295. more fault tolerant than the new ones! A faulty old style card can still
  20296. work but it will stop other machines with the new style cards from
  20297. working!á Dave Leckie, Fort William.
  20298. 5.7
  20299. Å   HP Deskjet 500 & RISC-OS 3 Ö Here is a tip about the RISC-OS3 printer
  20300. drivers and the HP Deskjet 500. The graphics margins given in the HP
  20301. configuration for the A4 (Generic Deskjet) are a bit conservative.
  20302. 5.7
  20303.    Top Ö 12.5mm
  20304. 5.7
  20305.    Bottom Ö 19.9mm
  20306. 5.7
  20307.    Left Ö 5.0mm
  20308. 5.7
  20309.    Right Ö 7.0mm
  20310. 5.7
  20311. From the manual and from my own experiences of using the printer and
  20312. seeing where it can print to, I have come up with new values which are:-
  20313. 5.7
  20314.    Top Ö 1.5mm
  20315. 5.7
  20316.    Bottom Ö 10.5mm
  20317. 5.7
  20318.    Left Ö 3.2mm
  20319. 5.7
  20320.    Right Ö 3.2mm
  20321. 5.7
  20322. I have used these values very successfully ever since I got the machine.
  20323. The RISC-OS 2 printer driver for the Laserjet/Deskjet has problems when
  20324. it has different values for top and bottom margins because it prints out
  20325. in landscape mode in the opposite direction to the way the margins have
  20326. been set. i.e. it prints out last, the part of the sheet which is shown
  20327. by the print borders to be the top! RISC-OS 3 has sorted this out
  20328. allowing the maximum printing area to be available. It can be very
  20329. important when using Impressionæs Éfit lotsæ facility to reduce pages to
  20330. have as much room as possible as margins are reduced as well.á David
  20331. Woods, Glasgow
  20332. 5.7
  20333. Å   Paper for inkjets Ö I too have had much trouble obtaining good paper
  20334. for my HP Deskjet 500. The manual recommends photocopy paper and that
  20335. you should use the paperæs correct side (as marked by the arrow on the
  20336. end of the packet). I have found photocopy paper to be poor no matter
  20337. what side I try. The results usually come out Éfurryæ where the
  20338. absorbency of the paper has caused the ink to creep by capillary action.
  20339. Prior to the type of ink sold by Hewlett Packard being changed to a more
  20340. permanent one, some photocopy paper gave white patches within areas of
  20341. black which I think was due to a degree of waxiness repelling the ink
  20342. from spots but this phenomenon happens no more.
  20343. 5.7
  20344. (Acorn Inkjet owners can also benefit by using the HP DJ 500 cartridges
  20345. as they are the same fitting. Ed.)
  20346. 5.7
  20347. The new ink seems to give good results with some types of paper but
  20348. rather Éfurryæ with others. Interestingly, I found that Croxley Script
  20349. 80gsm, similar to that mentioned by Paul Bamberger in Archive to be very
  20350. poor. I have settled on two paper types for Écheap and goodæ and
  20351. Éexpensive and excellentæ printouts. The cheaper paper is ÉPlus Fabric
  20352. 70gsmæ from Empire Fine Papers at about ú7.50 for 500 sheets. This gives
  20353. consistently sharp, even results although it does wrinkle if there are
  20354. large printed dark areas.
  20355. 5.7
  20356. For printouts intended for further copying by a photocopier or at a
  20357. printing company (or for making letterheads for small businesses) I have
  20358. found that a type of paper generally described as Élaidæ paper,
  20359. available in various brands, is excellent, costing about ú15 a box. It
  20360. is smooth on one side and has a fine, ribbed pattern on the other. Both
  20361. sides accept ink very well and you often see the paper used for
  20362. prestigious company printed letterheads. I have used both ÉGB Classic,
  20363. White Laid, 100gsmæ and ÉConqueror, High White Laid, 100 gsmæ.á David
  20364. Woods, Glasgow
  20365. 5.7
  20366. Å Printing on labels or A3 paper Ö Most RISC-OS printer drivers have
  20367. difficulty with anything other than A4 paper. Although they have a page
  20368. length setting, they do not tell the printer the page length to expect,
  20369. so the printer still assumes that it has 11ö or A4 size paper (usually
  20370. determined by a DIP switch). This is fine when printing on individual
  20371. sheets or when using a sheet feeder to feed labels or envelopes but it
  20372. causes serious problems with tractor feed labels or with A3 paper.
  20373. Imagine printing on 1ò tractor feed labels from Impression. The
  20374. Impression master page must be defined to be 1ö length and, similarly,
  20375. the printer driveræs page length must be set to 1ò. The first label is
  20376. printed and the printer driver sends a form feed character telling the
  20377. printer to advance to the next form (page). Unfortunately, the printer
  20378. driver assumes that it is using 11ö paper and feeds over the next 10
  20379. labels, simply because the printer driver did not define the printeræs
  20380. page length. Similarly, printing on A3 paper (using a Canon BJ330 for
  20381. example) fails because the printer thinks it is using A4 paper. The
  20382. solution is for the printer driver to pass on the page length setting to
  20383. the printer and this is a very simple change for Acorn to make.
  20384. Meanwhile, it is necessary to modify the page start and end strings
  20385. manually. With RISC-OS 2 drivers this can be difficult, but with RISC-OS
  20386. 3 the printer driver editor allows it.
  20387. 5.7
  20388. With an Epson compatible printer, the page length can be defined by
  20389. putting ESC,öCò,n in the page start string, where n is the page length
  20390. in lines (1/6ö per line). With an IBM compatible printer, an extra
  20391. ESC,ö2ò is needed on the end. Furthermore, it is sometimes necessary to
  20392. change the page end string which is often set to perform a printer reset
  20393. (ESC,ö@ò on Epson printers) after every page Ö this should be removed
  20394. completely. Note that these changes must be applied for each resolution
  20395. setting that is to be used and that a new printer driver file should be
  20396. saved with its name and type set appropriately to indicate that it is a
  20397. different version for a special page size.áá Paul Skirrow, Ipswich
  20398. 5.7
  20399. (Acorn are aware of the problem and have found at least a partial
  20400. solution Ö see the comments below, page 9. Ed.)
  20401. 5.7
  20402. Å   Mandelbrot bakeware Ö I have written a short PROC to improve Basilæs
  20403. Mandelbrot program (Archive 5.6 p57):
  20404. 5.7
  20405. DEFPROCdebug
  20406. 5.7
  20407. WHILE flour=flour+weevils
  20408. 5.7
  20409.   REPEAT
  20410. 5.7
  20411.     GETweevil
  20412. 5.7
  20413.     BPUT# weevil ON blockA%
  20414. 5.7
  20415.     BEAT blockB%
  20416. 5.7
  20417.   UNTIL dead%=TRUE
  20418. 5.7
  20419.   weevils-=1
  20420. 5.7
  20421. ENDWHILE
  20422. 5.7
  20423. ENDPROC
  20424. 5.7
  20425. The variable declaration: Mouth_Open=FALSE is the best Iæve seen so far!
  20426. I have another for anyone who typed the program in:
  20427. 5.7
  20428. Egg_on_face=TRUE.
  20429. 5.7
  20430. Joseph Seelig, Harrow.
  20431. 5.7
  20432. Å   Ten tips for larger memories Ö The article on better use of available
  20433. memory (Archive 4.6 p52) set me thinking and hereæs a tip for those of
  20434. us who donæt have a hard disc. I have 4M in a 310, two 3╜ö internal
  20435. floppies and an external 5╝ò drive.
  20436. 5.7
  20437. If you look at what you use your computer for, it breaks down into a few
  20438. task areas as well as playing games. I create a Task disk for each
  20439. activity and that sits in the 5╝ö drive and I have one each for DTP,
  20440. business and drawing. Each disc has !System, different !Fonts and the
  20441. appropriate applications that I can cram on using !Compression.
  20442. 5.7
  20443. Each task disc has two Obey type files called !boot and startlist to get
  20444. everything up and running and here I put in a plug for the excellent
  20445. !DeskEdit utility from Beebug which allows even me to get this working
  20446. quickly.
  20447. 5.7
  20448. Letæs look at the business Task disc which is called öLrgeBus1ò.
  20449. 5.7
  20450. The !boot obey file consists of one line...
  20451. 5.7
  20452. Desktop-File adfs::LrgeBus1.$ .startlist
  20453. 5.7
  20454. and clicking on this runs the second file called startlist. As you
  20455. probably know, if this Task disc were in drive 0 it could be set to auto
  20456. start each time the computer was turned on, by setting the disc to *OPT
  20457. 4,3 and the computer to *Configure Boot.
  20458. 5.7
  20459. The second obey file called startlist sets up the essential tasks that
  20460. you will need but some of these are squeezed on the disc under the
  20461. !Compression filing system. If you specify öcfs#adfsò as a filing system
  20462. to get them to load, the computer throws a wobbly so I set up two
  20463. aliases as the first lines of startlist.
  20464. 5.7
  20465. Set Neds$Dir adfs::LrgeBus1.$
  20466. 5.7
  20467. and
  20468. 5.7
  20469. Set NedsCFS$Dir cfs#adfs:: LrgeBus1.$
  20470. 5.7
  20471. you can then get the computer to find the bits you want by using:
  20472. 5.7
  20473. <Neds$Dir>.!System
  20474. 5.7
  20475. and to load various fixes found in the system modules directory into
  20476. memory like..
  20477. 5.7
  20478. RMLoad<Neds$Dir>.!System.
  20479. 5.7
  20480. modules.WimpUtils
  20481. 5.7
  20482. and then to get !Compression up and running
  20483. 5.7
  20484. <Ned$Dir>.!CFS
  20485. 5.7
  20486. Now a word about !Fonts. I use Swiss as my main business font. You need
  20487. to edit the run file of !Fonts and put in a ödesktopò command at the end
  20488. after öFontCatòor it will stop and ask you to press space. I also tailor
  20489. the run file after the line öEcho Font Manager 2.42 installed.ò with the
  20490. lines
  20491. 5.7
  20492. Echo Neds Business Fonts now available:
  20493. 5.7
  20494. Echo
  20495. 5.7
  20496. because I like to personalise things!!
  20497. 5.7
  20498. Back in startlist, we can now run...
  20499. 5.7
  20500. <NedsCFS$Dir>.!Fonts
  20501. 5.7
  20502. which are compressed and then in a compressed directory called resources
  20503. 5.7
  20504. <NedsCFS$Dir>.resources.
  20505. 5.7
  20506. !PrinterDM
  20507. 5.7
  20508. <NedsCFS$Dir>.resources.!Alarm
  20509. 5.7
  20510. and anything else you need and the last line is
  20511. 5.7
  20512. desktop
  20513. 5.7
  20514. The whole process is very easy to achieve and each task disc can be
  20515. tailored. The drawback is that its a bit on the slow side and all my
  20516. fonts have to be uncompressed before I use them but I do set a large
  20517. Fontsize.á Ned Abell, Kidderminster
  20518. 5.7
  20519. Å Transferring PC files with the Emulator Ö It is true that the multi-
  20520. tasking PC Emulator does prevent access to the PC hard disc partition
  20521. while it is running and it is therefore necessary to quit the emulator
  20522. before a file created by a PC program can be read in RISC-OS. This is
  20523. because RISC-OS does not know whether the PC hard disc partition is in a
  20524. valid state or not (i.e. a PC program may be writing to an open file).
  20525. However, it is possible to transfer files between RISC-OS and the PC
  20526. emulator by using floppy discs. After the PC has written a file to the
  20527. floppy it may be necessary to dismount the floppy disc (using the menu
  20528. item) and re-open it by clicking on the floppy icon to make RISC-OS read
  20529. the directory again (otherwise it may not realise that it has been
  20530. changed). This works with RISC-OS 3, but should also work with any of
  20531. the various PC disc readers.á Paul Skirrow, Ipswich
  20532. 5.7
  20533. Å   Watford mouse Ö If you need to replace the plug on a Watford mouse
  20534. (old version) my experience may be useful. The original plug is moulded
  20535. onto the cable, and it took careful dismantling with a sharp knife to
  20536. discover where each wire went.
  20537. 5.7
  20538. I purchased the replacement plug from Maplin Electronics (code JX19V
  20539. 0.82p, page 177). This plug has three disadvantages; firstly it has no
  20540. cable strain relief, so you must be sure of your wiring, secondly, it is
  20541. extremely difficult to disassemble and thirdly you need to shave a small
  20542. amount from the front to fit it into the socket of an A310. (I donæt
  20543. think it would fit too well on an A3000!) The wire colours are as
  20544. follows (functions as on p469 of the A310 User Guide):
  20545. 5.7
  20546.  Pin   Function   Colour
  20547. 5.7
  20548. 1   X Reference      white
  20549. 5.7
  20550. 2   Switch 1      yellow
  20551. 5.7
  20552. 3   Switch 2      red
  20553. 5.7
  20554. 4   0V return      brown
  20555. 5.7
  20556. 5   X Direction      green
  20557. 5.7
  20558. 6   5V supply      black
  20559. 5.7
  20560. 7   Y Reference      blue
  20561. 5.7
  20562. 8   Switch 3      orange
  20563. 5.7
  20564. 9   Y Direction      purple
  20565. 5.7
  20566. M Angove, Caerphilly
  20567. 5.7
  20568. Å   Wonderland on SCSI Ö Iæve managed to get Wonderland to work on SCSI.
  20569. What you do is:-
  20570. 5.7
  20571. Obtain the SCSI öfixò, which Archive will supply if you send them a
  20572. charity donation (minimum ú2). However, itæs also on this monthæs
  20573. program disc.
  20574. 5.7
  20575. Run the INSTALL program on the öfixò disk, using the öfixò disk when
  20576. asked for disk öONEò, then the original disk öTWOò, öTHREEò and öFOURò.
  20577. 5.7
  20578. When the installation is complete, use !Edit to modify the öwinò
  20579. application code. Look for the second occurrence of the text öadfsò and
  20580. replace it with öscsiò. (If you replace the first one, it all seems to
  20581. work until you save or restore a game position.)
  20582. 5.7
  20583. To get it to work on SCSI with 1M memory you need to unplug more modules
  20584. than you would with ADFS, because SCSI, SCSIFiler and SCSIDirCache take
  20585. up some space. I find that I need to unplug:Ö Debugger, Draw, EcoNet,
  20586. FontManager, IIC, NetFS, NetPrint, NetStatus, PaletteUtil, Percussion,
  20587. RAMFS, RAMFSFiler, ShellCLI, SoundChannels, SoundDMA, SoundScheduler,
  20588. StringLib, SystemDevices, WaveSynth.
  20589. 5.7
  20590. Mike Williams, London N16.
  20591. 5.7
  20592. The following hints and tips are taken from the February Acorn Customer
  20593. Services Newsletter.
  20594. 5.7
  20595. Å   RISC-OS 2 printer drivers
  20596. 5.7
  20597. 1)áWe have had reports of the release 2 printer drivers producing the
  20598. following error message:
  20599. 5.7
  20600.    öInvalid number of output bitsò
  20601. 5.7
  20602. This error is produced when you attempt to print a sprite that was
  20603. created in a 256 colour screen mode such as MODE 15 in a 16 colour mode
  20604. such as MODE 12. The solution to the problem is to print in MODE 15 if
  20605. this error occurs, or to print the sprite in the mode in which it was
  20606. created.
  20607. 5.7
  20608. 2)áWhen attempting to load any of the many RISC-OS 2 desktop printer
  20609. drivers the following error message may be displayed:    öFiling
  20610. System or path ÉPrinter:æ not present internal error xxxxò
  20611. 5.7
  20612. The error is caused by one of the printer driver support modules
  20613. becoming unplugged from the operating system. To resolve the problem,
  20614. the first action to take is to find out which modules are unplugged.
  20615. This information can be found by typing the following command from the
  20616. command line:
  20617. 5.7
  20618. *UNPLUG
  20619. 5.7
  20620. It is then necessary to re-insert the modules that *UNPLUG has shown as
  20621. being unplugged with the following command:
  20622. 5.7
  20623. *RMREINIT <ModuleName>
  20624. 5.7
  20625. Once you have used *RMREINIT to re-initialise all the modules, you
  20626. should then perform a <ctrl-break> to ensure all the modules have
  20627. started correctly.
  20628. 5.7
  20629. 3)áPrinting labels on small page lengths can sometimes cause problems.
  20630. 5.7
  20631. a)á!PrinterDM (2.46) reads a system variable called PDriver$DMExtra at
  20632. the start of each print job and sends it to the printer before the
  20633. actual data stream. PDriver$DMExtra has to be set using GSTrans format
  20634. so, to set a page length of nine lines, you would use:
  20635. 5.7
  20636. *SET PDriver$DMExtra |[C|I
  20637. 5.7
  20638. You would use |[C|J for ten lines and |[C|K for eleven lines and so on.
  20639. This command can be executed explicitly from the command line (after
  20640. !PrinterDM has been loaded) or incorporated in the !Run file.
  20641. 5.7
  20642. b) Set the (Graphics) clip window to the appropriate size from
  20643. !PrinterDMæs icon bar menu. If the stationery is continuous, you can
  20644. leave the top and bottom graphics margins set to zero.
  20645. 5.7
  20646. c)áFinally, you need to tell the Wordprocessor you are using, the page
  20647. size of each label.
  20648. 5.7
  20649. Å   RISC-OS 3 printer drivers Ö Loading RISC-OS 2 printer drivers into
  20650. Acorn A5000s with RISC-OS 3 can cause problems if an attempt is then
  20651. made to load the RISC-OS 3 !Printers application from the Applications 1
  20652. disc or directory if stored on the hard disc.
  20653. 5.7
  20654. !Printers will report the error ö!Printers requires PDriver 3.16 or
  20655. laterò.
  20656. 5.7
  20657. The error occurs because the RISC-OS 2 printer driver loads an older
  20658. PDriver module than 3.16. The solution to the problem is to type from
  20659. the command line.
  20660. 5.7
  20661. *RMKILL PDriver
  20662. 5.7
  20663. *RMREINIT PDriver
  20664. 5.7
  20665. This will allow you to load the new !Printer application supplied with
  20666. RISC-OS 3 on the A5000.
  20667. 5.7
  20668. Å   Maestro Ö Version 1.75 has a problem where notes are displayed at
  20669. double-height in certain modes. This may be fixed in the field by
  20670. deleting or renaming the sprites22 and !sprites 22 files.
  20671. 5.7
  20672. Å   PC Emulator hints & tips
  20673. 5.7
  20674. 1)áDeleting an unformatted or non-system PC Emulator hard disc partition
  20675. on an A5000.
  20676. 5.7
  20677. RISC-OS 3 looks at the PC hard disc partition (DOSDisc, &FC8) as if it
  20678. were a filing system and therefore before it will delete the partition,
  20679. it must look inside to find out what files are there. To be able to
  20680. delete an unformatted partition it is necessary to fool the operating
  20681. system into believing that it is not a PC partition, by changing its
  20682. filetype. However, it is not possible to change its filetype from within
  20683. the desktop and the following information gives details of how to change
  20684. the filetype from outside the desktop. The file can then either be
  20685. deleted from the command line as shown below or from the desktop.
  20686. 5.7
  20687. a) Press <F12> from the desktop to get the command line (*Prompt)
  20688. 5.7
  20689. b) Type:
  20690. 5.7
  20691. *SETTYPE ADFS::4.$.PC.Drive_C TEXT <return>
  20692. 5.7
  20693. *DELETE ADFS::4.$.PC.DRIVE_C <return>
  20694. 5.7
  20695. 2)áThe Archimedes keyboard has a U.S. style PC layout. You should not
  20696. therefore use KEYBUK or KEYB UK in the Autoexec batch file. Also, the ú
  20697. sign on an Archimedes keyboard doesnæt exist on a PC keyboard, so to get
  20698. a ú sign you will need to enter its ASCII code 156:
  20699. 5.7
  20700. Under the emulator, hold down the ALT key and type 1 5 6 on the numeric
  20701. keypad. (Remember to have Num Lock on).
  20702. 5.7
  20703. 3)áConfiguration Ö ÉStartup Textæ Ö The startup text is only intended
  20704. for use with a hard disc partition, not for floppy based systems. The
  20705. problem is that the first characters of the startup text are lost
  20706. because they are taken as a reply to the ÉInsert DOS Boot Disc and press
  20707. any keyæ message which you get when running the emulator from floppy
  20708. discs.
  20709. 5.7
  20710. The startup text should also not be used unless you have an Autoexec.Bat
  20711. and Config.Sys file. If you do not have these, the startup text is taken
  20712. as a reply to confirming the date.
  20713. 5.7
  20714. 4)áPC Software compatibility Ö there are some screen redraw problems
  20715. with WordStar 4 using the !PCEmS emulator. However, no problems have yet
  20716. been reported using the large !PCEm emulator.ááA
  20717. 5.7
  20718. 5.7
  20719.  
  20720.  
  20721.  
  20722. Impression Hints & Tips
  20723. 5.7
  20724. Thereæs no shortage of hints and tips this month and there is a special
  20725. emphasis on mail merging, printing and uses of Impressionæs ösave
  20726. graphicsò facility.
  20727. 5.7
  20728. Å    Mailmerge (1) Ö There have been some queries about mail merging
  20729. with Impression, so Rob Sherratt contacted Computer Concepts to outline
  20730. the problems. Rob wrote, öI have tried to use the Business Supplement
  20731. (Importer) and Impression to mailmerge a set of addresses to generate a
  20732. sheet of laser labels where each label contains successive fields from
  20733. the database. I have come to the conclusion that it canæt be done at
  20734. present Ö unless you tell me otherwise! I can print, say, a sheet of 24
  20735. labels for the same addressee (using a variety of methods) Ö but I
  20736. cannot print 24 labels for different addressees unless I enter the data
  20737. manually. Isnæt this a normal requirement for mailmerge programs?
  20738. 5.7
  20739. öIt seems to me that Impulseæs ÉMergeæ command causes Impression to do a
  20740. ÉDelete then mergeæ operation, coupled with a small change to Importeræs
  20741. user interface to toggle the ÉDelete vs Duplicateæ option on and off. As
  20742. well as, or instead of this, you might like to consider adding a new
  20743. pair of methods to Importer ù :Importer Next record and :Importer
  20744. PrevRecord ù which would allow the user to build a composite É24-upæ
  20745. merge template where each frame in the template might contain the
  20746. following merge commands;
  20747. 5.7
  20748.    :Importer Getfield 1
  20749. 5.7
  20750.    :Importer Getfield 2 etc
  20751. 5.7
  20752.    :Importer Next Record
  20753. 5.7
  20754. On receiving the Next Record message, the Importer application would
  20755. reset its field counter to 1 and would scan forward for the start of the
  20756. next record.ò
  20757. 5.7
  20758. Charles Moir agreed that !Importer would not allow different names and
  20759. addresses to be imported into different frames and thought that Robæs
  20760. new command to move onto the next record would work, but again thatæs
  20761. another improvement that will have to wait for Impression 3 (if that is
  20762. the correct title!).
  20763. 5.7
  20764. However, Charles did have this useful suggestion, öwhenever we have had
  20765. a requirement to produce labels in this fashion (e.g. for mailing the
  20766. Archimedean magazine) we have gone about it in a different, and I would
  20767. suggest, a simpler way. First we create a master page that has separate
  20768. frames for each label. These are then linked together so they all form
  20769. part of one flowing story, so text will flow from one frame to another.
  20770. Presuming you have the name and address list in ASCII form with some
  20771. identifier between records Ö all you do is drop the file into the first
  20772. frame. All the names and addresses then flow into successive frames,
  20773. creating new pages as required. If the names and address are fixed
  20774. length records it is only a matter of making sure the label is the
  20775. correct size to hold exactly one record and it should all format
  20776. correctly. Even if the records are not the same length all that is
  20777. required is a single search and replace operation to replace the record
  20778. separator with a
  20779. 5.7
  20780.  command to make sure each new record starts in a new label.
  20781. 5.7
  20782. (If you use label sheets that have no selvedge, i.e. the whole A4 page
  20783. is divided into exactly 24 equal spaces, you just create one simple
  20784. master page whose size is just 70mm ╫ 37.1mm. Then all you do is ensure
  20785. you have öignore page bordersò set and öfit lotsò and it prints
  20786. beautifully. Ed.)
  20787. 5.7
  20788. öThe only disadvantage of this system is that it loads all the names and
  20789. addresses in one go. However, we use this system for mailing 10,000
  20790. names and addresses on a standard 4M machine and so space is not a
  20791. problem. In fact, I donæt think something like !Importer would cope with
  20792. anything like that number of records satisfactorily. This method has the
  20793. advantage that you can see and edit each record individually if
  20794. required, and you can print any required range of pages or multiple
  20795. copies, etc.ò
  20796. 5.7
  20797. Å    Mailmerge (2) Ö Stuart Bell had more modest needs. He wanted to
  20798. send a basic letter with a customized öDear ...ò beginning, and an
  20799. address in a box at the bottom of each letter. His solution to create
  20800. the skeleton letter as a master page <ctrl-F2 Ö Edit Ö New Master Page>.
  20801. In this master page type everything, except the names for the salutation
  20802. (the öDear . . .ò bit). Then create two frames on the master page, one
  20803. for the name, the other for the address box, and make text flow from one
  20804. to the other.
  20805. 5.7
  20806. Now, leave the editing of the master page and return to your document.
  20807. Alter the chapter so that your newly created master page is the one for
  20808. that chapter and you will see your letter appear, with boxes for the
  20809. name and address. Type in the name of the first person, and their
  20810. address, using <ctrl-G> to advance to the next frame, as required.
  20811. Impression will generate new pages as necessary, each containing the
  20812. same letter.
  20813. 5.7
  20814. In order to make the salutation look neat, you may need to move the
  20815. Énameæ frame on the master page, to line up öDearò with the name. Check
  20816. this with a large scale view of your document.
  20817. 5.7
  20818. Now, the whole point of a mailing list is not to send one letter, but to
  20819. make it easier the next time you write to the same people. To change
  20820. your letter, save the original document under another name ù e.g. if
  20821. originally öLetter1ò, save it now as öLetter2ò to avoid losing the
  20822. original letter. Then simply change the letter on the master page of
  20823. Letter2 to produce your new letter. Alternatively, create another new
  20824. master page and alter your chapter to use it.
  20825. 5.7
  20826. To produce a simple listing of your mailing list, create a master page
  20827. with many frames stacked in a vertical line (or any other close pattern
  20828. for that matter). You will then have a simple list of the names and
  20829. addresses in a tabular form.
  20830. 5.7
  20831. I know that most mailmerge packages offer more complex facilities than
  20832. this penny-pinching approach, such as selecting certain names out of a
  20833. list. However, if your needs are as basic as mine, then it certainly
  20834. beats the laborious task of producing twenty (or two hundred) virtually
  20835. identical letters manually!
  20836. 5.7
  20837. Å A merge program? Ö On a related note, identical pleas from Peter
  20838. Blenkinsop and P Closier: öhas anyone written a merge program for
  20839. Impression?ò Peter has several two page documents he would like to merge
  20840. into one (longer) document, mainly for ease of printing, although he
  20841. admits that a printer queue system might do just as well. No doubt other
  20842. users would also find this useful, so has anyone cracked this particular
  20843. nut? Batch printing would undoubtedly be useful for the next release of
  20844. Impression (with perhaps the incoming document forming a new chapter),
  20845. but we do also need a proper printer queueing system for Acorn printer
  20846. drivers. (Laser Direct owners already have one. Ed)
  20847. 5.7
  20848. Å Viewing clip art ù Impressionæs ease of manipulating and printing
  20849. Sprite and Draw files has been touched on by others but the following
  20850. may be of interest. Just as with fonts, one really needs to see a print-
  20851. out of oneæs collection of clip-art files in order to pick out the one
  20852. thatæs just right for a particular job. I have done this by setting up
  20853. my collection on a set of standard Impression pages laid out with 5 rows
  20854. of 4 frames, each frame filled with a clip-art object. The sheets when
  20855. printed out then provide a ready reference and can be saved economically
  20856. as Impression documents using ArcFS/Spark/Compression.
  20857. 5.7
  20858. The beauty of this is that in future you can ignore the individual clip-
  20859. art files and work from the saved Impression document. You choose the
  20860. frame you want and save it as a graphic to the RAM disc. Then drag the
  20861. icon from RAMFS to the Impression frame you have set up to receive it.
  20862. Note that you have to use the RAM disc as an intermediate stage for the
  20863. transfer. If you drag the icon directly across to the new Impression
  20864. frame you get a message to the effect that Impression cannot save a file
  20865. to itself. (Jack Evans)
  20866. 5.7
  20867. Donæt forget though that there are a number of commercial programs that
  20868. allow you to view clip art and these might be more useful if you are
  20869. constantly adding new images to your collection. Incidentally, an
  20870. earlier version of Glimpse (Sherston Software) used to hang up the
  20871. computer if presented with a DrawPlus file. I am glad to report that
  20872. this was fixed (v1.02 and later) and, although the program ignores
  20873. unknown file types, it will not cause any other problems. If you have an
  20874. early issue of Glimpse, Sherston advise you to call them for advice and
  20875. they tell me that they are further developing the program.
  20876. 5.7
  20877. Å Taking graphics from documents ù Paul Skirrow writes in response to
  20878. the Impression Hints & Tips by Jochen Konietzko (Archive 5.5 page 41)
  20879. and also makes use of the save graphics facility. It is true that
  20880. graphics cannot be edited within Impression, but it is a simple matter
  20881. to click on the graphic frame to select it and then use the <save
  20882. graphic> option on the document menu (or use <shift-ctrl-T>). I rarely
  20883. bother keeping separate copies of graphics files now, I just save them
  20884. from Impression directly into Draw, modify them and then save them back
  20885. again. (With PipeDream, things are different as it does not take its own
  20886. copy of the graphics file, but simply stores the filename, so modifying
  20887. the file on disc will change the image in the PipeDream document.)
  20888. 5.7
  20889. It is true that the draw files are stored within the document directory
  20890. (called story1, story2, etc), but they should not be edited because
  20891. Impression stores information about them elsewhere (in the !DocData
  20892. file). It is possible to crash the entire system by modifying a graphics
  20893. file within an Impression document. I have always regarded Impression
  20894. documents as no-go areas Ö they belong to Impression and use Computer
  20895. Conceptsæ own format which is not published and which could be changed
  20896. between Impression versions.
  20897. 5.7
  20898. The only disadvantage with using the <save graphic> option is that it
  20899. always saves the graphic as a draw file, even if it is a sprite. If you
  20900. want to edit a sprite, you must therefore drag the draw file from
  20901. Impression to Draw, select the object and then use the <save sprite>
  20902. option on the save menu to save into Paint. This is clumsy, especially
  20903. if memory is short, in which case you will have to save the intermediate
  20904. files to disc before loading into Paint. Computer Concepts do this
  20905. mainly to simplify the inner working of Impression (it means everything
  20906. can be regarded as a Draw file which may contain sprites). Another
  20907. argument for using Draw files to hold sprites is that they contain
  20908. absolute size information, whereas the sprite format does not. It
  20909. therefore makes a lot of sense for scanners to produce Draw files
  20910. containing the scanned sprite together with absolute size information
  20911. describing the resolution of the scanned image. The <save graphic> menu
  20912. item only appears when a graphic frame is selected (whereas the RISC-OS
  20913. guidelines suggest that unavailable menu items should be shaded so that
  20914. the user knows they are there).
  20915. 5.7
  20916. Could Impression be made to pass graphics files to Draw and Paint when
  20917. they are double clicked? Perhaps Computer Concepts would be prepared to
  20918. implement this. I also think that there should be an easy way of
  20919. transferring data between applications generally without bringing up a
  20920. save menu. I know that we are all used to it now, but it is not really a
  20921. ösaveò operation that you are doing when transferring things between
  20922. applications, and the filename is certainly irrelevant when you are not
  20923. saving to a filer window. One approach, adopted by Squirrel, is to make
  20924. a click-drag from a Squirrel window to another application transfer the
  20925. data by doing a save automatically. This is extremely useful in Squirrel
  20926. and means that an address can be transferred to a letter very quickly
  20927. without using a menu. I have also adopted this technique in some of my
  20928. programs where <click-drag> is not used for something else, but
  20929. unfortunately, many programs use <click-drag> for their own operation.
  20930. What do other people think? Could we standardise on a <shift-drag> or
  20931. <alt-drag> to do a save. (This would also work with filer windows using
  20932. the default or last filename).
  20933. 5.7
  20934. Å   Styles used and unused Ö When I am preparing the magazine, I use one
  20935. big file that contains all the things like hints & tips, comments, small
  20936. ads, products, etc, so I am forever importing new bits of text into it
  20937. and then exporting them back out into the magazine. This means that the
  20938. style list grows longer each month so, every now and then, I remove
  20939. unwanted styles. To do this, I select the whole text with <ctrl-T> and
  20940. pull up the edit styles window with <ctrl-F6>. I click on the style
  20941. selection menu button and there is a list showing which styles, in the
  20942. whole story, are used and which are unused. I can then select and delete
  20943. the ones that arenæt needed (remembering to click the delete button with
  20944. <adjust> so that the window stays on-screen).
  20945. 5.7
  20946. Sometimes, I want to remove a style completely even though it is being
  20947. used. If so, I select all the text, pull up the style menu and click on
  20948. the style to be removed. That will remove all occurrences of it. Donæt
  20949. forget though that a style may also be used on a master page, in which
  20950. case it will not delete. This can actually be put to good advantage
  20951. because I donæt want to accidentally delete, say, öboldò just because it
  20952. is not used in the file as it stands. To prevent accidental deletion,
  20953. create a new dummy master page, create a text frame and type in a few
  20954. choice words and give them the styles that you want to maintain
  20955. permanently within the document. They cannot now be deleted acciden
  20956. tally. Ö PB
  20957. 5.7
  20958. Å   Kerning Ö On Impression, kerning is extremely easy to achieve,
  20959. especially with the keyboard short-cuts. If you want to (R)educe the
  20960. space between adjacent characters, simply put the cursor between the two
  20961. characters and type <ctrl-R> a number of times. If you over do it,
  20962. simply (E)xpand the space a bit using <ctrl-E>. If you canæt make a fine
  20963. enough adjustment with <ctrl-R> and <ctrl-E>, go through the menu
  20964. options to call up the kerning menu and adjust the number. Remember that
  20965. if you want to try a particular number without losing the kerning
  20966. window, click on Set with <adjust>, not <select>. For vertical kerning,
  20967. use <ctrl-U> to move the text (U)p and <ctrl-J> to er... (J)ump
  20968. downwards?! (Can anyone think of a better mnemonic?)
  20969. 5.7
  20970. The trouble with kerning being so easily available is that itæs easy to
  20971. hit <ctrl-R, E, U or J> by accident. I have tried to use search and
  20972. replace to locate any spurious kerning in a document but cannot find any
  20973. way to do it. You can, of course, export the text with styles and load
  20974. the text into Edit and search for ö{but I would have liked a simpler
  20975. way. Any ideas? Still, if you can see roughly where the spurious kerning
  20976. appears, simply go through the menu to get the kerning window up on
  20977. screen and use cursor left and cursor right to move the cursor around
  20978. through the suspect areas. If you move past a kerning statement, the
  20979. numbers will flick up in the kerning window. To remove the kerning,
  20980. click <adjust> on the Clear button and go back to using the cursor keys
  20981. to search for other kerning statements, finally clicking <select> on
  20982. Clear. Ö PB
  20983. 5.7
  20984. Å   Impression speed usersæ tips Ö (Reprinted from Archive 5.5 where the
  20985. last two lines were accidentally omitted!) I find that having got into
  20986. the habit of using <adjust> for reverse scrolling, it really does save
  20987. time, especially when I am laying out the magazine and the screen is
  20988. cluttered with windows. Just press <select> to scroll down and switch
  20989. quickly to <adjust> to go back up again without having to move the mouse
  20990. and locate the other end of the scroll bar Ö which could be under
  20991. another window anyway.
  20992. 5.7
  20993. Also, <adjust> can be extremely useful, again with a cluttered screen,
  20994. for moving windows whilst keeping them where they are relative to the
  20995. other documents. It takes practice, but it speeds things up in the long
  20996. run. Ö PB
  20997. 5.7
  20998. Å   Search & replace on styles Ö Impression appears to have the facility
  20999. to search and replace on styles. Indeed, you can search for a style
  21000. using {nameò }@, where @ is the wildcard for öany textò but, sadly, you
  21001. cannot replace with another style name, despite the fact that there is a
  21002. menu button on the Search & Replace window to allow you to put a style
  21003. name into the Replace box. I donæt know why CC havenæt implemented this
  21004. facility. They obviously intended to do so because the menu button on
  21005. the Replace box has no other purpose Ö as it stands, it is totally
  21006. redundant. Perhaps it could be implemented in Impression III but, in the
  21007. meantime, you can do it in Edit, though itæs a bit cumbersome.
  21008. 5.7
  21009. Suppose, for example, that you have a document with various headings all
  21010. using öHeadingò (marked on <F2> as Sub-heading) and that you want to
  21011. change some of them to a sub-sub-heading, letæs call it öSubHeadò. What
  21012. you will have to do is to click somewhere in the text and use <shift-
  21013. ctrl-T> to save the text. Save it with styles, perhaps into a ram disc.
  21014. Then load that into !Edit and use search & replace to, selectively,
  21015. change  into . (The reason for using  is to catch, in one go,  ON} and
  21016. OFF} and } all of which can occur in the document.)
  21017. 5.7
  21018. To get it back into the original document, click back in the main text
  21019. in the Impression document, select the whole text with <ctrl-T>, set it
  21020. all back to base text with <ctrl-B>, delete it and then go back to the
  21021. Edit document and save the text into the Impression document. Remember
  21022. though to save the document before you start messing about with it in
  21023. this way. You can get in an awful mess if you edit the text file
  21024. incorrectly.
  21025. 5.7
  21026. If CC canæt add the style search & replace feature into Impression,
  21027. perhaps someone could produce a simple editing application for us. As
  21028. the Impression text is loaded into it, it would create a list of the
  21029. styles available then it would allow you to search and replace using a
  21030. menu to provide you with a list of the styles it knows about. Could
  21031. someone write that for us, please? If youæd like to have a go, get in
  21032. touch with me at Archive. Ö PB
  21033. 5.7
  21034. Å   Style problems Ö When I am preparing the magazine, I save the text of
  21035. each of the articles, with styles, as edit files in one directory. I
  21036. then have a dummy Archive magazine document into which I insert the
  21037. various edit files. If I have a particular space to fill, say about a
  21038. page and a half, I link together the title frame and the text frames
  21039. that are to make up the article. I know roughly how long each article
  21040. is, so I drop one of the edit files into the title frame. Sometimes, it
  21041. turns out to be just too short or too long and I want to delete it, but
  21042. if I just mark it with <ctrl-T> and delete it and then drop in another
  21043. edit file, I find that the whole text ends up in the same style as the
  21044. main heading Ö then it really is too long! As far as I am concerned,
  21045. this is a bug in Impression. Anyway, the öwork-aroundò is to mark the
  21046. whole text and press <ctrl-B> first, to change it all back to base
  21047. style, before deleting the text. On a long file, especially if a lot of
  21048. it is displayed on screen, this can take quite a time. Does anyone know
  21049. a quicker work-around?
  21050. 5.7
  21051. Also, I find that, fairly often, the title is left justified instead of
  21052. centred as its style specifies. If I click on the title, type a single
  21053. character and delete it, it springs back to the centre Ö another bug,
  21054. but one thatæs easy to get round. Ö PB
  21055. 5.7
  21056. Å   RTF loader Ö To transfer WP files from the Mac (or PC versions of
  21057. Microsoft Word, I guess) you can use the RTF (rich text format) loader
  21058. that comes with the Impression Business Supplement. The RTF loader is
  21059. fairly intelligent and knows to swap things like δ into æ because the
  21060. fonts on Mac and Archimedes use some different ASCII numbers. However,
  21061. unless it has been fixed, it sometimes hangs up with some of these ötop-
  21062. bit-setò characters. For example, I was trying to transfer a cook book
  21063. and it hung up (the whole machine!) every time it came across a degree
  21064. symbol as in 100░C. The answer was to search and replace the degree
  21065. symbol into, say, an equal sign or some other character not used in the
  21066. text, transfer with the RTF loader and then search and replace back
  21067. again. (Some of you may have noticed the repeated occurrence of δ
  21068. instead of æ in one of Risc Useræs articles last month Ö I guess they
  21069. are still using Macs for their magazine and the Archimedes to Mac
  21070. conversion is not as intelligent.) Ö PB
  21071. 5.7
  21072. Å Blank pages printed Ö If your printer sometimes prints blank pages (as
  21073. Patrick Dowling explained in Archive 5.6) it is probably because the
  21074. printer driveræs bottom margin is set too small. The printer drivers
  21075. send all the data they are told to send for the page and then send a
  21076. form feed character. If they send so much that the printer just goes on
  21077. to its next page and the driver then sends a form feed character the
  21078. printer will eject a sheet. Make sure that the printeræs DIP switches
  21079. are set to disable perforation skip and check any others which determine
  21080. the page size. When entering the bottom margin into the printer driveræs
  21081. paper size entry, it is important to be on the conservative side and
  21082. make this a fraction larger than you think it ought to be (by a couple
  21083. of mm). The only disadvantage to this is that you will lose the ability
  21084. to print in this borderline area, but at least you will avoid the
  21085. mysterious blank pages which can otherwise occur. Unfortunately, printer
  21086. manuals are notoriously awkward, especially when you are looking for the
  21087. top and bottom margins, and most of the printer drivers are supplied
  21088. with the incorrect default settings (to be fair, some drivers are
  21089. written for a range of printers which each have their own unique paper
  21090. margins).á Paul Skirrow.
  21091. 5.7
  21092. (I passed this hint on to one of our Technical Help Service members a
  21093. couple of weeks ago and she confirmed that it worked. All she did was to
  21094. increase the paper size from 297.00 mm to 299.00 mm and she got no more
  21095. blank pages. Ed.)
  21096. 5.7
  21097. Å Entering special characters into Impression Ö There is an updated
  21098. version of !Chars on this monthæs disc which can enter special charac
  21099. ters into Impression without needing to tell Impression which font they
  21100. came from. It works just like Chars (or NewChars2 to be precise) and
  21101. provides quick selection of common fonts (Dingbats, Symbol, System and
  21102. Trinity) as well as passing the font information to Impression in DDF
  21103. form. Note that RISC-OS 3 defines the system font to be the same as the
  21104. Latin 1 fonts, complete with the ö and ò characters, but RISC-OS 2
  21105. doesnæt, so it will help if you use the new System font provided on the
  21106. Archive 5.6 program disc if you are using RISC-OS 2.á Paul Skirrow.
  21107. 5.7
  21108. Å   PC file transfer Ö Impression saves text files with an LF-CR termina
  21109. tor rather than the CR-LF terminator which is used by most PC programs.
  21110. This can confuse a lot of PC programs which automatically ignore the
  21111. first character after a LF (which they expect to be a CR), and Computer
  21112. Concepts have agreed to fix this some time. áPaul Skirrow.
  21113. 5.7
  21114. In the meantime, you can presumably use !Editæs search & replace
  21115. facility to change \x0A\x0D into \x0D\x0A remembering to set the magic
  21116. characters to ON. Ed
  21117. 5.7
  21118. Ovation Hints and Tips
  21119. 5.7
  21120. Å Master documents ù Hilary Ferns has sent details of master documents
  21121. she has created for use with Ovation. Her design for A4 and A5 letters
  21122. will be particularly useful for newcomers to either DTP or Ovation, and
  21123. her templates for an A5 four sided leaflet, an A5 booklet, A6 leaflet
  21124. and a greetings card or notelet are valuable time savers. With Hilaryæs
  21125. permission they are on this monthæs program disc in Ovation format, but
  21126. here is just one example of how Hilary used Ovation to produce an A5
  21127. four sided leaflet.
  21128. 5.7
  21129.  
  21130. 5.7
  21131. This is the format of our weekly church news-sheet, which displays news
  21132. about all the events in bordered frames Ö rather like the ads page of
  21133. the local newspaper. It is printed on A4 paper, photocopied and folded
  21134. neatly in half.
  21135. 5.7
  21136. I use an HP Deskjet 500 printer, so all the margin settings are based on
  21137. this. Printer paper size is A4.
  21138. 5.7
  21139. 1. Set up a new document with the following settings:
  21140. 5.7
  21141.       A4
  21142. 5.7
  21143.       Landscape
  21144. 5.7
  21145.       Single-sided
  21146. 5.7
  21147.       2 columns
  21148. 5.7
  21149.       Gutter 24mm
  21150. 5.7
  21151. Margins ù Top 12mm, Left & Right 12mm, Bottom 8mm
  21152. 5.7
  21153. 2. Open up the Master page for your document and include on this any
  21154. regular heading, logo, etc. that you may require. We always have our
  21155. church logo at the top of the front page, together with a öwelcomeò
  21156. greeting. These are placed in picture frames at the top of the right-
  21157. hand column, i.e. the front of the leaflet when it is eventually folded.
  21158. 5.7
  21159. 3. Obviously, page two will not want these headings, so you will now
  21160. need to create a new chapter (öNew Chapter Ö After current Chapterò) and
  21161. specify chapter two starting at page two (öModify chapterò). Delete your
  21162. frames from page two. Remember too to think about any paragraph styles
  21163. that you are likely to use.
  21164. 5.7
  21165. 4. Go back to your document and delete the existing pages one and two.
  21166. You will now have a simple document with two A4 sheets, each with 2
  21167. columns and a wide gutter. Within this framework you can create text and
  21168. picture frames, making sure they do not overlap the central guidelines.
  21169. I tend to display most of my text in individual text frames with
  21170. borders, often with a nested picture frame for a picture or öFontFXò
  21171. generated heading. Only rarely do I type directly into the principal
  21172. text frame.
  21173. 5.7
  21174.  
  21175. 5.7
  21176. 5. You may want to have text which flows from one page to the next.
  21177. However, using the principal text frame, the text will not flow back up
  21178. to the öbackò page of the leaflet. To do this you will need to create a
  21179. text frame to fit within each column and use the ölinkò tool to flow the
  21180. text from the front, to the middle and onto the back. This is quite
  21181. simple to work out. (see diagram).
  21182. 5.7
  21183. 6. Save your stylesheet. Printing out such a document is straightfor
  21184. ward. Change to ölandscapeò on the öPrint setupò before saving
  21185. stylesheet.
  21186. 5.7
  21187.  
  21188.  
  21189.  
  21190. Hints and Tips
  21191. 5.6
  21192. Å   Alt key problems Ö (I think Iæll have to write this in six-foot high
  21193. letters. Weæve said it several times, but people keep missing out on
  21194. it.) If your <alt>-keypad numbers donæt give the special characters you
  21195. think they should, type *UNPLUG and youæll probably find that someone or
  21196. something has unplugged the InternationalKeyboard module. If so, do an
  21197. RMREINIT InternationalKeyboard and all will be well. Ed.
  21198. 5.6
  21199. Å   Copy key use Ö I had not realised until recently that the copy key has
  21200. the function of ödelete rightò (as it does in Impression) in most RISC-
  21201. OS applications.
  21202. 5.6
  21203. Å   Floppy backup ù (I know itæs obvious but...) On a single floppy disc
  21204. machine, if you want to backup up floppy discs in one chunk, i.e.
  21205. instead of having to take the discs in and out twice, call up the task
  21206. manager and increase the öNextò memory allocation to 800k or more. If
  21207. you donæt, it loads 640k into memory and copies that and then copies the
  21208. last 160k separately.
  21209. 5.6
  21210. Å   External floppy drives on A5000 Ö There seems to be some concern and
  21211. confusion over connecting extra floppy drives to the A5000 and over the
  21212. fact that ADFS treats the drives in a different way from previous
  21213. Archimedes computers. Let me try to explain.
  21214. 5.6
  21215. The A5000 motherboard can access two internal floppy drives and two
  21216. external drives. However, many modern 3╜ö drives can only be configured
  21217. as drive 0 or 1. Thus to allow a full complement of four drives, drive
  21218. selections 2 and 3 are transformed into 0 and 1 but on a separate ribbon
  21219. cable (as in a PC).
  21220. 5.6
  21221. Here is the problem: If one internal drive is fitted (physical drive 0/
  21222. 1) and an external drive is added (addressed as drive 3), then to access
  21223. the external drive you must É*configure floppies 4æ, with the result
  21224. that you have two useless floppy drive icons!
  21225. 5.6
  21226. The solution that Acorn has is: Logical to physical drive mapping,
  21227. whereby ADFS can be configured with two floppies but would access
  21228. physical drive 3 when requested to read from logical drive 1. In order
  21229. to achieve this, ADFS must determine which physical drives are present.
  21230. This is achieved after reset (or rmreinit) by performing a Érestoreæ
  21231. operation on each physical drive and then testing for a track 0
  21232. indication from a functional drive. The following table depicts a
  21233. typical example:
  21234. 5.6
  21235.      Physical Drive   Present    ADFS drive N║
  21236. 5.6
  21237.    0   Ö   Ö
  21238. 5.6
  21239.    1   Y   :0
  21240. 5.6
  21241.    2   Ö   Ö
  21242. 5.6
  21243.    3   Y   :1
  21244. 5.6
  21245. This has a benefit for production by permitting the single internal
  21246. drive to be physical drive 1, which is the default for the PC world, and
  21247. hence not requiring link changes. Note that the 82C710 controller fitted
  21248. to the A5000 has 48mA sink capability and therefore does not require a
  21249. buffer board to operate with 5╝ö drives fitted with 150R pullup
  21250. resistors.
  21251. 5.6
  21252. Drive mapping was the main reason for accessing the floppy after a
  21253. reset, but once this approach was adopted, several other features were
  21254. possible.
  21255. 5.6
  21256. (1) 40 track drive detection. MultiFS allows 40 track discs to be read
  21257. in 80 track drives but, if a real 40 track drive is fitted, the double
  21258. stepping mode is inhibited. This test is performed on all physical
  21259. drives detected and works by first seeking to track 44 (a 40 track drive
  21260. will block at track 40, 41 or 42) and then seeking to track 2 (42 step
  21261. pulses). A 40 track drive will indicate track 0 at completion. Thus, if
  21262. you have a 40/80 switchable drive, you should type É*rmreinit ADFSæ
  21263. after changing mode to ensure ADFS knows about the change.
  21264. 5.6
  21265. (2) During shipping, some floppy drives can have their heads shocked
  21266. beyond track 0 (negative track number). The 40 track drive detection
  21267. scheme ensures these drives will be recalibrated correctly.
  21268. 5.6
  21269. (3) If you É*configureæ too many floppies, ADFS will only install the
  21270. number detected. Conversely if you É*configureæ too few drives, ADFS
  21271. will not use the excess physical drives (the physically greater drive
  21272. numbers will be ignored). Lastly, if the configured floppies is 0 then
  21273. ADFS will not attempt to select any floppies.
  21274. 5.6
  21275. If you have configured the correct number of floppies, the extra time
  21276. spent Ébootingæ should normally be less than 250ms, that is 80 x 3ms
  21277. step pulses to detect a 40 track drive plus the time to initially
  21278. restore the head. Note that a configured 12ms step time is now trans
  21279. lated on an A5000 to 25ms to allow for very old/slow 40 track 5╝ö drives
  21280. sometimes found on prehistoric Beebs.
  21281. 5.6
  21282. I think this should explain the different behaviour of ADFS on A5000.
  21283. (Could this also explain why the A5000 floppies seem slow compared to my
  21284. A540? Ed) However, if you are trying to connect 5╝ö drives to the A5000,
  21285. one other factor needs to be taken into account. Unless they are
  21286. modified, 5╝ò drives cannot be mixed with 3╜ö drives on the same ribbon
  21287. cable because of differences in pin out of the Édisc changedæ and
  21288. Éreadyæ signals. To work correctly on the internal drive connector, pin
  21289. 34 must present the Édisc changedæ signal (or be disabled) and pin 2
  21290. carries the density select from the FDC.
  21291. 5.6
  21292. Therefore connect the 5╝ö drive on the external (middle) socket and make
  21293. the following link changes to the A5000:
  21294. 5.6
  21295. LK18 (north and west of socket) in the West position (viewed from front
  21296. of m/c); LK19 (north and east of socket) should be removed (park the
  21297. jumper on the centre pin only); LK21 (south and west of socket) should
  21298. be removed (park the jumper on either pin).
  21299. 5.6
  21300. These links only affect the external socket. To give the full informa
  21301. tion on it.
  21302. 5.6
  21303. LK18 selects logic hi (west) or logic lo (east) for the high density
  21304. signal from the FDC
  21305. 5.6
  21306. LK19 selects Édensityæ to drive (west) or Édisk changedæ from drive
  21307. (east) or neither (removed) on pin 2 of drive interface
  21308. 5.6
  21309. LK21 enables (jumper fitted) the disc changed signal from pin 34 of the
  21310. drive interface.
  21311. 5.6
  21312. Your drive should then be configured as drive 0 or 1, remembering to
  21313. *configure floppies 2
  21314. 5.6
  21315. The above information was culled from a bulletin board by Brian Debenham
  21316. of Chelmsford. One of our other subscribers got some help from Steve
  21317. Picton at IFEL who referred him to pages 1-23 and 1-26 in the A5000
  21318. Technical Reference Manual and included a useful table for link changes
  21319. as follows:
  21320. 5.6
  21321. Drive type   link 18   link 19
  21322. link 21
  21323. 5.6
  21324. PC-AT 1M / 2M   1-2   2-3   1-2
  21325. 5.6
  21326. PS/2 1M / 2M   2-3   2-3   1-2
  21327. 5.6
  21328. older 1M types   *   1-2   2-
  21329. 3
  21330. 5.6
  21331. most 5╝ drives   *   donæt fit   2-
  21332. 3
  21333. 5.6
  21334.    * = either position or donæt fit at all
  21335. 5.6
  21336. Itæs difficult to get at these links, so a pair of long nosed pliers is
  21337. extremely useful.  Bob Potter, Bath.
  21338. 5.6
  21339. Å   Lemmings Ö Did you know that a Éblockeræ can be released by hitting it
  21340. in the right place with a Édiggeræ and also by burrowing very closely
  21341. underneath with a Ébasheræ?
  21342. 5.6
  21343. Å   MS-DOS users Ö Even in CGA emulation, the latest emulator screen
  21344. updates can be very slow. However, some of the new utilities (like EDIT)
  21345. have a Éswitchæ to allow faster CGA updates so...
  21346. 5.6
  21347. EDIT MYFILE.TXT /G
  21348. 5.6
  21349. will edit the file with quicker screen updates (/G means öswitch Gò). In
  21350. true Archimedes style, HELP <command> now gives the syntax and meaning
  21351. of commands (about time, too!).  Paul Bamberger, Hinckley.
  21352. 5.6
  21353. Å   !MultiFS bug (with PCEmulator 1.70)? Ö Those of your readers using the
  21354. latest version (1.70) of the PCEmulator on RISC-OS 2 may be interested
  21355. in the following problem which I found recently. I have reported it to
  21356. Acorn, but have not had response yet. I understand that users of RISC-OS
  21357. 3 need not use !MultiFS with the PCEmulator because of their different
  21358. disc handler, so they need not read further into this hint.
  21359. 5.6
  21360. Following the correspondence in Archive about how to shut down a hard
  21361. disc reliably (See Archive 5.1 p26 ÉThe Engineer Speaksæ.) I now type
  21362. *SHUTDOWN just before turning off the power on my A540. After loading
  21363. !MultiFS on the icon bar, and then quitting it again, I found that when
  21364. I typed *SHUTDOWN, sometimes it just hung, sometimes I got an error
  21365. message, something like öAddress exception at &01889 CE0ò, and then I
  21366. could do nothing until after resetting the Archimedes, (<ctrl-break>
  21367. would not work). After the reset, *SHUTDOWN normally worked as usual,
  21368. occasionally, I had to turn off the power to reset it.
  21369. 5.6
  21370. After a little research I found that when !MultiFS quits, it removes the
  21371. MultiFS module, but leaves MultiFS in the list of filing systems held by
  21372. ÉFileSwitchæ. Thus when *SHUTDOWN is trying to shut down all filing
  21373. systems, it cannot cope with MultiFS as the module is no longer loaded.
  21374. 5.6
  21375. You can check which filing systems are known to ÉFileSwitchæ with the
  21376. following BASIC program:
  21377. 5.6
  21378.  10 REM >FScheck  test which filing
  21379. 5.6
  21380.  systems exist
  21381. 5.6
  21382.  20 PRINTöNumber Nameò
  21383. 5.6
  21384.  30 @%=6:DIM fsname% 20
  21385. 5.6
  21386.  40 FOR F%=3TO255
  21387. 5.6
  21388.  50 SYS öOS_FSControlò,33,F%,fsname% ,21
  21389. 5.6
  21390.  60 L%=Ö1:REPEAT:L%+=1
  21391. 5.6
  21392.  70 UNTIL fsname%?L%=0
  21393. 5.6
  21394.  80 IFL%>0 fsname%?L%=13:PRINTF%ö ò $fsname%
  21395. 5.6
  21396.  90 NEXT
  21397. 5.6
  21398. To make ÉFileSwitchæ forget about MultiFS use the program below:
  21399. 5.6
  21400.   10 REM >DelMultiFS  delete multifs filing system
  21401. 5.6
  21402.   90 REM  see whether MultiFS is still loaded, if not, exit
  21403. 5.6
  21404.  100 SYS öOS_FSControlò,13,öMultiFSò ,0 TO ,F%,T%
  21405. 5.6
  21406.  110 IF T%=0 END
  21407. 5.6
  21408.  120 REM  next line removes MultiFS
  21409. 5.6
  21410.  130 SYS öOS_FSControlò,16,öMultiFSò
  21411. 5.6
  21412.  140 END
  21413. 5.6
  21414. While reporting this problem to Acorn, they gave me a very helpful
  21415. statement of the essential differences between the various ways of
  21416. closing down a hard disc system, which I feel sure they will not mind my
  21417. passing on.
  21418. 5.6
  21419. *SHUTDOWN closes all open files on all filing systems, logs off all file
  21420. servers, causes hard discs to be parked.
  21421. 5.6
  21422. *DISMOUNT closes all files, unsets directories and parks the given disk
  21423. (The currently selected drive on the current filing system is assumed if
  21424. this command is given without specifying the disc.)
  21425. 5.6
  21426. *BYE closes all the files, unsets directories and parks the hard discs
  21427. on the currently selected filing system.
  21428. 5.6
  21429. So you see the engineer was quite right, they are different. It depends
  21430. what your current disc is, and only the *SHUTDOWN parks the disks on ALL
  21431. the filing systems.   Kate Crennell, Didcot.
  21432. 5.6
  21433. Å   Mysterious error message from Hard Disc Companion II Ö In Archive Vol
  21434. 5.4 page 3 you described the new version of the program from Risc
  21435. Developments. I upgraded from my old version recently and found that the
  21436. new version does not allow comments in the ÉIgnoreæ part of the file
  21437. used to specify which directories and files are not to be backed up. I
  21438. found this a very useful feature of the previous version, and I should
  21439. like any other users who regret its passing to join me in asking Risk
  21440. Developments to put this feature back as soon as possible.
  21441. 5.6
  21442. This is mildly annoying, but I found a more serious problem. The first
  21443. time I used the ÉHard Disc Companion IIæ it worked beautifully, but the
  21444. second time, it would not load onto the icon bar, instead I got the
  21445. usual Étraffic signæ warning window and a message öFile not found at
  21446. line 49ò. Neither the !Boot nor the !Run files had 49 lines in them. The
  21447. program is not written in Basic, so it has no line numbers. I eventually
  21448. found that since making my first full backup and trying to do the next
  21449. incremental backup, I had deleted one of the files which I had previ
  21450. ously said I wanted to Éignoreæ in the ÉChoicesæ file. Luckily, it is
  21451. possible to edit the ÉChoicesæ file with !Edit, so I just took out that
  21452. line. I have reported this error to RISC Developments and they said they
  21453. hope to make the error message more informative and tell you the name of
  21454. the file which is missing.  Kate Crennell, Didcot.
  21455. 5.6
  21456. Å   Paper for inkjets Ö I have a Hewlett Packard Deskjet 500 inkjet
  21457. printer. I have had great trouble finding good paper Ö the main problem
  21458. seems to be how absorbent the paper is; too absorbent and you will get
  21459. white patches in your black areas, but not absorbent and it will smudge
  21460. across the paper! If you go into most paper suppliers or printers, they
  21461. will be happy to give you various samples that you can try. Make sure
  21462. when you test the paper that you include very small text, thin and thick
  21463. straight lines at various angles, fine and thick curves, shading, large
  21464. black areas and bit mapped graphics. I have ended up using öMustang
  21465. Copier Ö Long grain 80gsmò for my draft printing (as it is cheap Ö about
  21466. 0╖5 pence per sheet) and Croxley Script 100gsm for quality work (this
  21467. works out at about 3 pence per sheet but is water marked and has a nice
  21468. feel to it). There is probably better paper available Ö I have only
  21469. tried about twenty types.  Paul Bamberger, Hinckley.
  21470. 5.6
  21471. Å   Pandoraæs Box problems? Ö There seems to be an incompatibility between
  21472. Pandoraæs Box and Acornæs AKA16 MIDI card (v3.14). Therefore, to load
  21473. the game, simply type: *RMKill Midi <return> before attempting to run
  21474. it.  Rob Brown, Surrey.
  21475. 5.6
  21476. Å   Psion Organiser and the Archimedes Ö The PD program !Download, written
  21477. by Emmet Spier, works very well with the Psion Organiser. To upload from
  21478. an Archimedes to an Organiser, I created an application called !Upload,
  21479. consisting of a suitable sprite and a !Run file as follows:
  21480. 5.6
  21481. IconSprites <Obey$Dir>.!Sprites
  21482. 5.6
  21483. Filer_OpenDir serial:
  21484. 5.6
  21485. C. Parker, Hong Kong.
  21486. 5.6
  21487. Å   Second internal 3╜ö drive on the A5000 Ö I have fitted a second 3╜ò
  21488. drive internally on my A5000 with no problems at all.
  21489. 5.6
  21490. The 3╜ö drive fitted to the A5000 is a Citizen model OSDA20C. These do
  21491. not seem to be generally available in the UK. The Citizen OSDA39C is
  21492. easy to get and the ONLY difference (according to my experience and
  21493. Citizen UK) is that the drive light is a different colour. They are
  21494. generally available for about ú75 + VAT but I got mine for ú35 + ú10
  21495. overnight delivery + VAT = ú52.88 from:
  21496. 5.6
  21497. CD2000, PO Box 1061, London Road, Slough, Berks SL3 8RE (0753Ö553366)
  21498. (fax 0753Ö 554661) who were super efficient and helpful.
  21499. 5.6
  21500. There is a power plug already inside the A5000, so all you need is a 9ö
  21501. drive cable. I have altered NO links or switches on the A5000. All I did
  21502. was set the tiny slider switch on the drive (next to the socket for the
  21503. data cable) to the opposite position on the drive already in the
  21504. machine. (Actually, this wouldnæt make any difference, as explained in
  21505. the section above about external floppies on the A5000. Ed)
  21506. 5.6
  21507. You need 4 off 18mm spacers and 4 off screws (6BA I think) to fit the
  21508. drive to the bottom of the A5000 case. I used various spacers and nuts
  21509. to make up the 18mm and the drive has worked faultlessly. With RISC-OS 3
  21510. being so slow at any disc backing up or copying, the second drive is
  21511. essential.  Colin Thompson
  21512. 5.6
  21513. Å   Shrinking windows Ö A rare bug has just Ébittenæ me while using
  21514. Impression. Itæs not a bug in Impression, in fact, but a bug in RISC-OS
  21515. 2. I was trying to change the size of the window on a large Impression
  21516. file by using the sizing icon in the bottom right-hand corner of the
  21517. window. The window jumped to about an inch high and would not go any
  21518. longer unless I clicked to open the window to full screen size Ö that
  21519. worked fine but as soon as I touched the sizing icon, the window
  21520. contracted! I tried various other Impression files but they were OK. I
  21521. restarted Impression, I cut and pasted the text, I saved the text and
  21522. created a new document but the window kept jumping back to this reduced
  21523. size! A phone call to CC revealed the reason. In RISC-OS 2, if the
  21524. window size is exactly 65,535 OS units in size, it gets confused and
  21525. loses the top bit of the window size number and thinks itæs a somewhat
  21526. shorter window. All I had to do was to create a new page in the document
  21527. and all was well. Alternatively, I could have changed the magnification
  21528. Ö even 1% change solves the problem. Presumably, the chances of it
  21529. happening are small (1 in 65,535?) and it has to be a large document Ö
  21530. mine was 28 pages displayed at 140% magnification.ááA
  21531. 5.6
  21532.  
  21533.  
  21534.  
  21535. Å   Virus Kit v1.17 Ö Some people have had a few problems running version
  21536. 1.17 of the virus killer, which is supplied on Shareware 17 and on the
  21537. Archive 5.5 program disc. Here are a few hints that might help you to
  21538. solve them:
  21539. 5.6
  21540. (i) You should let your Archimedes see either a !System folder or !Scrap
  21541. file before running the !Killer application.
  21542. 5.6
  21543. (ii) Some sticky backdrops clash with the !Killer application and so
  21544. should not be used at the same time.
  21545. 5.6
  21546. (iii)áIf you have caught the module virus, it is possible for the
  21547. VProtect module in the !Killer application to become infected and so
  21548. prevent the program from being run.
  21549. 5.6
  21550. Å Acorn Virus Kit (latest) Ö Acorn have decided to make the latest
  21551. version of The Virus Kit (currently 1.26) available through Pineapple
  21552. Software rather than Acorn Dealers. This will allow them to keep tighter
  21553. control over the version being distributed and any updates. Contact
  21554. Pineapple Software for availability though distribution isnæt due to
  21555. start until May.
  21556. 5.6
  21557. Å   Wimp programming oddities? In the process of developing a wimp utility
  21558. in 100% machine code, Iæve come across a few things that other program
  21559. mers might like to look out for...
  21560. 5.6
  21561. Menus Ö You can click the mouse in a menu one pixel above the first menu
  21562. item (and also one pixel below the last item). The result is that
  21563. Wimp_Poll returns a menu tree of zero length to your program i.e. the
  21564. first word is returned as Ö1. Once I had found this (it crashed my
  21565. program completely on random mouse clicks!) I tried it out on all the
  21566. programs I could find. The easiest test is to click the menu button and
  21567. then the adjust button without moving the mouse. Most commercial
  21568. programs weather it OK, just redrawing the menu. Some that donæt are
  21569. Menon 1.86 (which gives a öbad stringò error), Ian Copestakeæs IDEFS
  21570. (which comes up with öFile É:4æ not foundò), and the Cross-32 assembler
  21571. (which corrupts its menu title to öCrosr 32ò).
  21572. 5.6
  21573. Zooms Ö Iæve seen <adjust> reverse-scrolling mentioned several times,
  21574. but this applies (or should apply, anyway!) to just about anything with
  21575. arrow icons on it; notably the zoom-windows in Paint/Draw and all the
  21576. nudge arrows in Impression.
  21577. 5.6
  21578. Variable Filetype Variables Ö Regarding David Lenthallæs article in
  21579. Archive 5.5 p 63, Iæm using a user file type and have found that the way
  21580. round file type clashes is, in fact, already built into RISC-OS! You
  21581. donæt need to create extra system variables to shift file type numbers
  21582. about:
  21583. 5.6
  21584. SYS öOS_FSControlò,31, öFileTypeNameò TO ,,FileTypeNumber%
  21585. 5.6
  21586. works equally well (now we just have to persuade everyone to do this
  21587. rather than using absolute file types in their programs). Fred Williams,
  21588. Cannock WoodááA
  21589. 5.6
  21590.  
  21591.  
  21592.  
  21593. Impression Hints & Tips
  21594. 5.6
  21595. This monthæs hints and tips have been submitted by the following people:
  21596. Computer Concepts (CC), Richard Hallas (RH), Paul Beverley (PB), Patrick
  21597. Dowling (PD), Rob Sherratt (RS) and Steve Kirkby (SK). Many thanks to
  21598. all.
  21599. 5.6
  21600. Å   Hyphenation Ö If you want to be able to switch hyphenation on and off
  21601. easily, create a new style with <ctrl-F5>, give it a name such as
  21602. öhyphenatedò, go down to the section where it deals with hyphenation,
  21603. switch hyphenation ON, go to the bottom and select an unused key short-
  21604. cut, say <ctrl-shift-F1> and save the new style. Now, to switch
  21605. hyphenation on for a given paragraph, select the paragraph (using <ctrl-
  21606. @> or quad-click with <select>) and press <ctrl-shift-F1>. Alterna
  21607. tively, if you want hyphenation on for most of the document, edit the
  21608. definition of the basestyle to have hyphenation ON and create a new
  21609. style, in the same way, whose only attribute is that hyphenation is OFF.
  21610. (As an aside, I have always found it difficult to find the line dealing
  21611. with hyphenation in the edit style window but I now know why. If you
  21612. click in the scroll bar three times, half of the word öhyphenationò is
  21613. visible at the bottom of the window. Click again and half is visible at
  21614. the top of the window Ö very easy to miss. So, either slide the scroll
  21615. bar or simply remember that it is only just visible at the edge of the
  21616. window.) Ö PB.
  21617. 5.6
  21618. Å   Ligatures Ö The word Éligatureæ actually means Étieæ or Ébandageæ and,
  21619. in typesetting, it refers to groups of two or more letters which are
  21620. joined together. In professional typesetting, several exist but the
  21621. Archimedesæ font system has just two: ₧ and ƒ.
  21622. 5.6
  21623. Impression provides no handy short cut to access them, so if you wish to
  21624. use them, you need to do two separate searches through the entire text
  21625. as follows: bring up the find text box and enter fi into the first slot,
  21626. ensuring the Case sensitive switch is on. Then move the caret into the
  21627. second box, hold down <alt> and type 158 on the numeric keypad. A single
  21628. character will be entered which, when viewed in an outline font which
  21629. supports it, will appear as ₧. For ƒ, repeat the process, but replace
  21630. all occurrences of fl (obviously) with character 159. Remember to do a
  21631. case sensitive search, since replacing Fi and Fl with the ligatures will
  21632. make them lose their capital letters.
  21633. 5.6
  21634. Not all fonts (especially the PD ones) contain the ligatures, and some
  21635. PD fonts have them in the wrong places. You should replace the normal
  21636. letters with the ligatures after you have finished your document because
  21637. Impressionæs spell-checker does not take them into account and will
  21638. query any words containing them. This monthæs disc should contain a
  21639. system font file which I have created; it is identical to the standard
  21640. one, except that the previously undefined characters have been created
  21641. to look like the outline font characters they produce, so you can see
  21642. things like smart quotes and ligatures in Edit. Itæs useful to load this
  21643. in the boot-up sequence. Ö RH.
  21644. 5.6
  21645. Å   Rotated text in Impression Ö Those lucky enough to own an A5000 will,
  21646. of course, have the new versions of Draw and Font Manager. Charles Moir,
  21647. director of Computer Concepts, suggests the following tip: since the new
  21648. Font Manager can rotate text by itself, create some text in Draw, and
  21649. import it into an Impression graphic frame. Dragging in the frame with
  21650. <adjust> should now rotate the text or you can set the angle precisely
  21651. in the ÉAlter graphicsæ dialogue box. Ö RH
  21652. 5.6
  21653. Å   Hyphens and minus signs Ö Character 153 is very useful as a hyphen Ö
  21654. as you can see! In fact, it is really the minus sign (compare it with
  21655. the plus and you will find they are both the same width and their
  21656. crossbars are at the same horizontal position Ö see for yourself Ö+Ö+Ö);
  21657. the minus sign on the keyboard actually produces a short hyphen of the
  21658. sort which should be used to break words at the ends of lines. Anyway,
  21659. Impression provides handy access to this character: simply press <ctrl-
  21660. shift> in conjunction with the minus key. Characters 151 and 152 are the
  21661. en (ù) and em (ÿ) dashes respectively but, unfortunately, these have no
  21662. handy short cuts. Ö RS & RH.
  21663. 5.6
  21664. Å   Finding effects Ö If you want to be able to look through a document
  21665. and find where a particular effect occurs (as opposed to a style) all
  21666. you need to do is modify one line in the ÉUKæ file in the Resources
  21667. directory inside the !Impression application. As supplied, there is a
  21668. line that says öCnf1:ò Ö all you have to do is add an E making it
  21669. öCnf1:Eò. Next time you start up Impression, you will find that, when
  21670. you click on the arrow at the right of the search string box, it will
  21671. list not only the styles but also the effects. (In case you have
  21672. forgotten, I published a hint a year ago to explain that, to find a
  21673. particular effect or style, you should select it from the menu on the
  21674. search string box and follow it by an ö@ò. In other words, look for any
  21675. string following the place where that effect / style is first switched
  21676. on.) Ö PB.
  21677. 5.6
  21678. Å   Double scale Ö on later versions of Impression (about 2.14g onwards)
  21679. you will find that <shift-F12> no longer doubles the scale of the
  21680. current view. This is because <shift-F12> is used on RISC-OSá3 to toggle
  21681. the icon bar forwards and backwards. Double scale has now been moved to
  21682. <ctrl-shift-F11>. Ö PB.
  21683. 5.6
  21684. Å   Reverse characters Ö From 2.15 onwards, there is a keyboard short-cut
  21685. that I have been asking for since I started using Impression in earnest
  21686. Ö swap characters. If you press <ctrl-shift-Q>, the two characters
  21687. either side of the cursor swap places. This is very helpful because it
  21688. allows you to correct, very quickly, one of the most common tpying
  21689. errors! Ö PB
  21690. 5.6
  21691. Å   Single word spelling check Ö If you want to check the spelling of a
  21692. single word, you donæt need to select the whole word Ö just place the
  21693. cursor somewhere in the word and use <ctrl-W>. (I suppose everyone
  21694. except me knew that anyway!) I find that this speeds things up
  21695. especially if, as you are typing, you get to a word that you donæt know
  21696. how to spell; all you do is to have a go at typing the word and then,
  21697. before you press space or full-stop, press <ctrl-W>. If it is incor
  21698. rectly spelt, it is selected and the spelling box appears with,
  21699. hopefully, a guess at the right spelling. Click on öReplaceò and away
  21700. you go.
  21701. 5.6
  21702. Also, if, while you are typing, you get a spelling error bleep then, as
  21703. long as you havenæt started to type the next word, you can press <ctrl-
  21704. W> and correct the erroneous word. Ö PB.
  21705. 5.6
  21706. Å   Avoiding smart quotes Ö In the magazine, I like to use ösmart quotesò
  21707. rather than plain quotes but they look a little funny on program
  21708. listings. If I want to paste in an article which contains programs as
  21709. well as straight text, I have a problem. Either I can switch smart
  21710. quotes OFF on the Preferences list and then edit them into the text or I
  21711. can leave it ON but edit them out of the listing. Then I had a brain-
  21712. wave (-storm?). I realised that the only time I use the Corpus font is
  21713. for program listings, so I never need to have smart quotes in that font.
  21714. All I did, therefore, (well, Adrian did for me) was to load Corpus into
  21715. FontEd (Careware 7) and edit the smart quotes so that they are the same
  21716. as the normal quotes. This can be done by editing each smart quote in
  21717. turn and copying the plain quote into its place. Ö PB.
  21718. 5.6
  21719. Å Rotating sprites Ö Draw-files can be rotated within Impression but, in
  21720. the normal course of things, not sprites, scanned pictures or bit-image
  21721. clip-art etc, unless Enhanced Graphics is switched on. This is hidden
  21722. away in Preferences, the one in the icon-bar menu, not the one in the
  21723. Document sub-menu. It is effective immediately and does not need to be
  21724. saved as a preference option. (When switched on it also automatically
  21725. switches on Greyscale Dithering but that can be switched off again if
  21726. not wanted.) Scanned images etc can then be rotated inside Impression by
  21727. entering an angle in the Alter Frame box. Remember also, when subse
  21728. quently reloading the file, to switch on the Enhanced Graphics again,
  21729. (if itæs not saved as a preference) as this wonæt happen automatically.
  21730. Ö PD. You can also rotate the image by dragging within the graphic frame
  21731. using <adjust>. Ö RS.
  21732. 5.6
  21733. Å Spurious form-feeds Ö Using dot matrix printers (e.g. FX80) you may
  21734. get an extra form-feed between pages when printing a multi-page
  21735. document. The solution, (thanks to Alan Williams of Acorn, Melbourne,
  21736. for this one) is to set Scale in the ÉPrintæ box to 97 or 98%. No
  21737. further problem! Ö PD.
  21738. 5.6
  21739. Å The underline trap Ö If you set up underline when creating a Style,
  21740. maybe for a sub-heading, do not try later to remove the underline with
  21741. <shift-ctrl-U>. Probably nothing at all happens but, sometimes, the
  21742. screen goes inverse and panic reigns until Reset is pressed! Ö PD. I
  21743. tried without success to repeat this problem with release 2.16, but
  21744. <shift-ctrl-U> caused no ill effect. It did not cancel the underlined
  21745. style either, which I guess is correct. Ö RS.
  21746. 5.6
  21747. Å ╝ ╜ ╛ characters Ö These are available on <alt-188>, <alt-189> and
  21748. <alt-190> respectively in the main fonts Ö Trinity, Pembroke, Homerton
  21749. etc and several others but by no means all. Many fonts conform in
  21750. general, but with omissions, to the character set laid out in Appendix 5
  21751. of the manual. Most contain a bullet (Å) on <alt-143>, (or <shift-ctrl-
  21752. H>) and a decimal point (╖) on <alt-183>. The ones that donæt, Optima
  21753. and Hull for instance, have their bullet on <alt-183> and a different
  21754. set of characters in the row 128 to 159 including, for instance, TM. In
  21755. general, there seem to be two main variations for this row while System
  21756. is completely on its own. The characters in 160 to 255 appear more or
  21757. less standard across the board where they are present, though most fonts
  21758. omit some and some (PD and magazine fonts particularly) omit most if not
  21759. all the top-bit-set characters, save for the ú symbol. With <alt-215>
  21760. and <alt¡247> itæs a toss-up whether you get ╫ and ≈, or Ü and ¢, or
  21761. nothing at all. (!Chars in Impressionæs Utils directory is a useful
  21762. reference but much better is Beebugæs !CharSel which looks identical but
  21763. has a pointer showing the character number.) Ö PD.
  21764. 5.6
  21765. Å Fit lots Ö If you want to know or have forgotten what it means, it
  21766. does not appear in the index. You will find it on p.144 on the last, and
  21767. easily missed, page of ÉPrintæ. Ö PD.
  21768. 5.6
  21769. Å Frames Ö How to put a frame around an existing chunk of text? You
  21770. canæt! The only way is to move the chunk to the clipboard, create the
  21771. frame and then copy it back in. Ö PD. You can also create a number of
  21772. new frames which fill the area occupied by the old frame, click in the
  21773. old frame area and then press <adjust> in the new frames. Text will then
  21774. flow from the old frame into the new one and, if you stretch the new
  21775. frames so that there is no printable area left in the original frame,
  21776. the desired effect can be achieved. Ö RS.
  21777. 5.6
  21778. Å Master pages Ö It seemed perfectly logical to me to press ÉNew
  21779. Chapteræ on the key-strip when I wanted to start a fresh document with
  21780. other than the default master page. I got the new master page all right
  21781. Ö as well as the default page I didnæt want and found no way to get rid
  21782. of it. (You need to move to the unwanted chapter, then use <menu>
  21783. <Edit><Delete Chapter>. Ö RS) You can alter the current chapter to use a
  21784. different master page by using ÉAlter Chapteræ which is not on the key-
  21785. strip. The key short cut is <shift-ctrl-A>. Be aware that if you are
  21786. viewing the master pages when trying to do this, you will find ÉAlter
  21787. Chapteræ greyed-out on the Edit sub-menu. The answer is to go back to
  21788. the document page, remembering which number master page is wanted and
  21789. try again there. Also note that if you want to use one of the three-
  21790. column master pages, (numbers 7 or 8) remember the default frames are
  21791. only Guides and you must create new frames before anything can be typed
  21792. in. Ö PD.
  21793. 5.6
  21794. Å Guide frames Ö It is really most provoking, having carefully followed
  21795. the manual to find the screen blandly refusing to operate as stated. Can
  21796. anyone suggest why my guide frames do not remain visible? I create them,
  21797. (sub-menu New Frame) on the document page or on the master page, click
  21798. elsewhere and they just vanish. They are not a lot of use if I canæt see
  21799. them, so which little hidden detail in the manual have I failed to
  21800. register, please? Ö PD. Guide frames are always positioned as the
  21801. rearmost (back) frame on the page. If you make sure all text /graphic
  21802. frames on the page are local frames (<menu><frame> <alter frame><make
  21803. local>) and then reduce these in size, you will see the yellow guide
  21804. frames that you had created. Guide frames are mainly of use when setting
  21805. up a master page, though. Ö RS. Am I missing something here? Canæt you
  21806. just make it visible by using <ctrl-F10> to alter the frame and changing
  21807. from a white background to transparent? Ö PB.
  21808. 5.6
  21809. (By the way, I hadnæt come across the idea of turning a master frame
  21810. into a local frame. If you hadnæt either, read up in the Impression
  21811. manual on page 84 then have a play with it Ö it could prove a useful
  21812. facility. Ö PB)
  21813. 5.6
  21814. Å Font cache full error Ö Even with the cache set to a ridiculous size,
  21815. 750k or more, this error recurred and anyway, isnæt the cache itself
  21816. supposed to clear enough space for a new font if necessary? I found that
  21817. some silly PD game had unplugged SpriteUtils module and restoring it
  21818. seemed to resolve the difficulty. Itæs not only PD games that do this Ö
  21819. the demo version of Cataclysm sent out by Archimedes World unplugs
  21820. virtually everything including the Font Manager. Even a power off /on
  21821. will not restore unplugged modules. If you arenæt sure whether anything
  21822. has been unplugged, type *UNPLUG and it will list any unplugged modules.
  21823. Ö RS.
  21824. 5.6
  21825. Å Rule off errors Ö The Impression manual is a bit short on advice when
  21826. the package refuses to do what it should and it is totally silent on the
  21827. subject of errors. What do you do for instance when the machine throws
  21828. at you: öOverflow while transforming point, print abortedò ? I had been
  21829. trying to print a landscape document containing a few vertical rules.
  21830. Later, I noticed one of the rules slightly projecting beyond the edge of
  21831. the frame. I went to the Style Edit box and switched ÉRule-offæ on, and
  21832. set it to 0pt. I must have done something right Ö the next time I tried,
  21833. it produced a perfect print-out! Ö PD
  21834. 5.6
  21835. Å Shift and control symbols Ö Patrick sent a detailed account of using
  21836. !FontDraw to generate a graphical representation of the <shift> and
  21837. <control> keys Ö as they appear in Impression menus Ö and then continued
  21838. to incorporate these into embedded frames at 30 or so points in his
  21839. text. He also asked if there was an easier way? Ö PD. Yes there is. Use
  21840. the Acorn Font Editor and David Pillingæs D2Font Drawfile to font
  21841. converter which is on the same disk as his Trace program (now available
  21842. through Archive for ú6). You will end up with a new outline font which
  21843. can be used within Impression just like any other font and which can be
  21844. used within a style and assigned to a function key to turn it on and
  21845. off. If anyone has the time to do this, please would they send Archive a
  21846. copy of the resulting font for the magazine disk? Ö RS.
  21847. 5.6
  21848. Å Find within a group of frames Ö If the currently selected frame is a
  21849. group of frames then the <find text> menu option is unavailable. To make
  21850. it available, select a frame that does not contain a group and which
  21851. contains at least one letter, (or create such a frame and text character
  21852. if necessary). Then, to find or replace throughout the document
  21853. (including all grouped frames), turn on the <whole document> button in
  21854. the <find> dialogue box, and use find or replace as normal. Ö SK.
  21855.  
  21856.  
  21857.  
  21858. Hints and Tips
  21859. 5.5
  21860. Å   A5000 PC delete danger ù I found out the hard way that deleting the PC
  21861. directory (and probably Drive_C as well) gives a disc error over the
  21862. area of the deleted partition. The only solution is to reformat the hard
  21863. disc and restore the last backup. J.R.McLachlan, Hertford.
  21864. 5.5
  21865. Yes, there does appear to be a problem here. The same thing happened to
  21866. us. In theory, the idea is that Drive_C is a filetype that is not
  21867. deleteable. The trouble is that on the A5000, it seems to get confused
  21868. and half delete it, leaving a blank entry in the file table (seen as a
  21869. blank line in the filer window if you use öfull infoò). The answer is to
  21870. change the filetype to, say, FFF with
  21871. 5.5
  21872. *SETTYPE $.<pathname>.Drive_C FFF
  21873. 5.5
  21874. before you try to delete it. Ed.
  21875. 5.5
  21876. Å   BBC Tracker Ball Ö In Decemberæs Archive, Paul asked for a wiring
  21877. diagram to convert a BBC tracker ball to an Archimedes one. I have
  21878. converted an old Marconi tracker ball for use on the Archimedes using
  21879. the following diagram.
  21880. 5.5
  21881. The nine wires come out of the bottom of the tracker ball socket as I
  21882. have drawn it. Socket 1 is marked, or it is on mine.
  21883. 5.5
  21884. The connections are as follows...
  21885. 5.5
  21886.    9-pin   Trackerball
  21887. 5.5
  21888.    mini DIN   Socket
  21889. 5.5
  21890.    1   3   yellow
  21891. 5.5
  21892.    2   6   black
  21893. 5.5
  21894.    3   7   brown
  21895. 5.5
  21896.    4   9   grey
  21897. 5.5
  21898.    5   2   orange
  21899. 5.5
  21900.    6   1   red
  21901. 5.5
  21902.    7   4   green
  21903. 5.5
  21904.    8   8   white
  21905. 5.5
  21906.    9   5   blue
  21907. 5.5
  21908. The colours are the colours on mine. They may differ between various
  21909. tracker balls. A mark 1 Archimedes mouse lead will also fit this
  21910. particular tracker ball but two leads need swapping round.
  21911. 5.5
  21912. Connectors 6 and 7, in my case red and brown, need to be changed over.
  21913. This can be accomplished with a needle by gently lifting the black
  21914. plastic clip above the connector with the needle whilst pulling gently
  21915. on the wire to be removed.
  21916. 5.5
  21917. Decemberæs article was, I think, for a mark 1 AMX mouse. I have a later
  21918. AMX mouse which is the same design as the early Archimedes mouse and the
  21919. lead is a straight swap.
  21920. 5.5
  21921. Dave Morrell, Middlesbrough
  21922. 5.5
  21923. Å   Elite Cheat Ö Here is program that will create a commander file for
  21924. use with Elite. It gives you the most needed items to get around a
  21925. little better than before, especially the docking computer, (most
  21926. welcome). When you have successfully loaded it in, use galaxy map to see
  21927. where to go, a little bonus is waiting: Front beam laser, rear beam
  21928. laser, large cargo bay (35 tons), docking computer, E.C.M. system, four
  21929. missiles.
  21930. 5.5
  21931. REM>:0.$.Elite_com
  21932. 5.5
  21933. REM Program by Scott Edwards
  21934. 5.5
  21935. REM 3-1-92
  21936. 5.5
  21937. REM It is important that you have
  21938. 5.5
  21939. REM the correct checksums on the
  21940. 5.5
  21941. REM right line, the program will
  21942. 5.5
  21943. REM inform you if you have a wrong line.
  21944. 5.5
  21945. MODE0:OFF
  21946. 5.5
  21947. DIM store% &1000
  21948. 5.5
  21949. checkcode%=38901:code$=öò
  21950. 5.5
  21951. line%=390:inc%=0
  21952. 5.5
  21953. FOR l%=0 TO 17
  21954. 5.5
  21955. FOR blk%=0 TO 15
  21956. 5.5
  21957. READ code$
  21958. 5.5
  21959. dat%=EVAL(ö&ò+code$)
  21960. 5.5
  21961. checksum%=checksum%+dat%
  21962. 5.5
  21963. ?(store%+inc%)=dat%
  21964. 5.5
  21965. PRINT dat%,~dat%
  21966. 5.5
  21967. inc%+=1
  21968. 5.5
  21969. NEXT
  21970. 5.5
  21971. READ checkcode%
  21972. 5.5
  21973. IF checksum%<>checkcode% THEN
  21974. 5.5
  21975. PRINT öYou have a data byte incorrect at ò;line%
  21976. 5.5
  21977. STOP
  21978. 5.5
  21979. ENDIF
  21980. 5.5
  21981. line%+=10:finalcheck%=checksum%
  21982. 5.5
  21983. checksum%=0
  21984. 5.5
  21985. NEXT
  21986. 5.5
  21987. IF finalcheck%=checkcode% THEN
  21988. 5.5
  21989. PRINTöYou have a correct file for savingò
  21990. 5.5
  21991. REPEAT
  21992. 5.5
  21993. INPUTöEnter the commander name for your file  ò;A$
  21994. 5.5
  21995. UNTIL A$<>öò
  21996. 5.5
  21997. SYSöOS_Fileò,10,A$,&C87,,store%, store%+&11C
  21998. 5.5
  21999. ENDIF
  22000. 5.5
  22001. PRINTöProgram is Finished,now run ELITE and use your new commanderò
  22002. 5.5
  22003. END
  22004. 5.5
  22005. :
  22006. 5.5
  22007. REM Commander file for ELITE
  22008. 5.5
  22009. :
  22010. 5.5
  22011. DATA 16,B5,DC,72,DF,DD,20,C9,F2,3C, 54, EB,32,6F,EF,09,2244
  22012. 5.5
  22013. DATA E5,F9,61,E3,31,12,B8,70,85,F3, FE,A9,EB,11,02,DD,2439
  22014. 5.5
  22015. DATA 31,43,F2,80,D5,F6,81,FA,70,92, 9A, 72,B9,EB,FC,B9,2707
  22016. 5.5
  22017. DATA C9,B1,42,CE,85,DD,F6,7F,5D,00, D2,9A,92,D2,6F,FC,2553
  22018. 5.5
  22019. DATA B9,2F,F9,62,CF,B5,62,B8,7B,5E, 98,7E,AF,68,DC,AA,2413
  22020. 5.5
  22021. DATA DD,39,30,CD,40,D6,B5,EF,53,70, 9E,91,E9,99,EC,DB,2568
  22022. 5.5
  22023. DATA F1,2C,B1,50,C1,F5,4D,F7,EE,72, 97,52,A1,59,FC,A7,2558
  22024. 5.5
  22025. DATA FD,78,B2,CD,22,CA,AD,FF,54,7F, 3D,52,67,0A,66,D7,2204
  22026. 5.5
  22027. DATA F8,23,39,20,A2,B4,86,B4,6C,7D, 0B,1D,09,4A,D3,44,1663
  22028. 5.5
  22029. DATA D3,37,3F,07,0F,06,A6,63,23,E3, 1D,18,84,80,84,D4,1541
  22030. 5.5
  22031. DATA AA,8A,6B,10,8D,3B,39,43,EB,56, C6,B6,81,48,9F,1E,1846
  22032. 5.5
  22033. DATA 9A,77,2C,64,DC,BA,A5,49,10,CE, BD,17,33,EF,5E,D4,2091
  22034. 5.5
  22035. DATA A5,01,E8,E0,8D,12,71,30,6B,53, F9,F5,E9,47,02,B2,2110
  22036. 5.5
  22037. DATA 91,37,22,7D,F1,F6,A4,7A,DC,C2, 9C,8A,B5,FE,7C,CB,2602
  22038. 5.5
  22039. DATA 38,E2,DA,CF,49,E0,80,BF,CF,20, 6A,6E,E7,24,69,39,2207
  22040. 5.5
  22041. DATA 7E,74,89,36,A6,69,0B,36,B7,A9, 33,46,99,DD,35,07,1676
  22042. 5.5
  22043. DATA 34,D0,D6,93,1D,CF,F0,9B,03,0F, 61,EC,D6,13,E8,71,2181
  22044. 5.5
  22045. DATA 48,83,01,29,F7,5A,82,75,32,A8, BA,41,00,00,00,00,1298
  22046. 5.5
  22047. S Edwards, Stourbridge
  22048. 5.5
  22049. Å   First Word Plus 2 Ö In Archive 3.12 someone was bemoaning the lack of
  22050. a key that would toggle insert mode on and off. In fact the <insert> key
  22051. itself will do just that.
  22052. 5.5
  22053. Robert Fuller, Basingstoke.
  22054. 5.5
  22055. Å   Lemmings Passwords Ö For all you bald headed insomniacs....
  22056. 5.5
  22057. Taxing Leveláááá
  22058. 5.5
  22059. 02 Justforyou   03 Runandflee   04
  22060. Doortodoor
  22061. 5.5
  22062. 05 Stillalive   06 Fixedmyfix   07
  22063. Anurebevan
  22064. 5.5
  22065. 08 Helpmemate   09 Drinknwine   10
  22066. Tenpercent
  22067. 5.5
  22068. 11 Stickuptwo   12 DiginDelve    13
  22069. Hisbadluck
  22070. 5.5
  22071. 14 Teensforth   15 Teensfifth   16
  22072. Notsosweet
  22073. 5.5
  22074. 17 Driveukcar   18 Votesforme   19
  22075. Tenstonine
  22076. 5.5
  22077. 20 Doublesten   21 Lockandkey   22
  22078. Twoelevens
  22079. 5.5
  22080. 23 Justforme   24 Lemmingmore   25
  22081. Jiveanjive
  22082. 5.5
  22083. 26 Lemsinafix   27 Lemsheavon   28
  22084. Gardengate
  22085. 5.5
  22086. 29 Startowine   30 Fivexsixis
  22087. 5.5
  22088. Mayhem Leveláááá
  22089. 5.5
  22090. 02 Nearlygone   03 Spendspree   04
  22091. Onthefloor
  22092. 5.5
  22093. 05 Uncleclive   06 Clogclicks   07
  22094. Difference
  22095. 5.5
  22096. 08 Waitanwait   09 Eatanddine   10
  22097. Tentontess
  22098. 5.5
  22099. 11 Binisthree   12 Twotimesix   13
  22100. Returntome
  22101. 5.5
  22102. 14 Twicelucky   15 Nineandsix   16
  22103. Charitynum
  22104. 5.5
  22105. 17 Stillyoung   18 Comesofage   19
  22106. Olderstill
  22107. 5.5
  22108. 20 Numbtwenty   21 Olderlemms   22
  22109. Lemminduck
  22110. 5.5
  22111. 23 Soonbefree   24 Lemmsstore   25
  22112. Lemmsdrive
  22113. 5.5
  22114. 26 Yourinafix   27 Lemtodevon   28Twostoplay
  22115. 5.5
  22116. 29 Oneafterme   30 Lemmgfinal
  22117. 5.5
  22118. Robin Jefferies,  West Sussex.
  22119. 5.5
  22120. Å   Improving Logistix (v0.01) RISC-OS compatibility Ö As anyone who has a
  22121. copy of Logistix will be aware, the RISC-OS support files to öupgradeò
  22122. the package to run from the desktop do nothing except allow the
  22123. application to be launched from the desktop! (I do not know if there was
  22124. ever a subsequent release of Logistix since v0.01 Ö I assume not, as I
  22125. was a registered owner and was never informed of any update.)
  22126. 5.5
  22127. In the case of old programs upgraded through the support disk, itæs
  22128. likely that some of the software houses did not have any real experience
  22129. of RISC-OS before the deadline date for the disk, so they may be excused
  22130. for the minimal level of compliance. (Acorn could not be considered to
  22131. have had any such excuse, but Logistix wasnæt actually written by them,
  22132. they only marketed it for Grafox.)
  22133. 5.5
  22134. The directory structure of the öupgradedò !Logistix was rather messy,
  22135. and all pathnames were specific to the directory structure, therefore
  22136. not transportable from drive 0 and the $ directory. This makes it
  22137. impossible to install on a hard disk without some editing. The major
  22138. annoyance in using the application is that clicking on Logistix data
  22139. files does nothing except give an error message! Files can only be
  22140. loaded by first loading Logistix, then keyboarding through the menu
  22141. system.
  22142. 5.5
  22143. The application directory can be arranged far better for RISC-OS by the
  22144. movement of a few files, and a little editing with !Edit. Dealing with
  22145. the directory structure first...
  22146. 5.5
  22147. All that the user wants to see of Logistix is the !Logistix application
  22148. icon which can be double clicked on to start it. Your !System directory
  22149. should contain a directory called Modules which contains the latest
  22150. version of the FPE, Clib, Colours etc. As upgraded after using the
  22151. support disk, a Logistix floppy disk contains the following directories:
  22152. 5.5
  22153. !System Ö A system folder which still requires updating with the RISC-OS
  22154. extras disk for the newer versions of Clib etc. (The latest Floating
  22155. Point Emulator (2.80) should also be placed in the Modules directory
  22156. inside this.)
  22157. 5.5
  22158. !Logistix Ö The RISC-OS startup directory containing the !Boot,!Run and
  22159. !Sprites files.
  22160. 5.5
  22161. Logistix Ö The actual Logistix program files and a (now outdated)
  22162. Floating Point Emulator.
  22163. 5.5
  22164. MAKE A BACKUP COPY OF YOUR DISK then, using the backup copy...
  22165. 5.5
  22166. Move the Logistix directory into the !Logistix directory.
  22167. 5.5
  22168. Copy the latest FPEmulator you have into the !System.Modules directory.
  22169. 5.5
  22170. (You may then delete the copy in the Logistix directory.)
  22171. 5.5
  22172. Using !Edit, edit the !Logistix.!Boot file to contain the following
  22173. lines:
  22174. 5.5
  22175. | !Boot for !Logistix version 0.01
  22176. 5.5
  22177. | Updated to allow autoload
  22178. 5.5
  22179. | (This is an OBEY file)
  22180. 5.5
  22181. Set Logi$Dir <Obey$Dir>
  22182. 5.5
  22183. IconSprites <Logi$Dir>.!Sprites
  22184. 5.5
  22185. Set File$Type_DFF Logistix
  22186. 5.5
  22187. Set Alias$@RunType_DFF Obey <Logi$Dir>.InitFile %%*0
  22188. 5.5
  22189. Edit the !Run file so that it becomes:
  22190. 5.5
  22191. | !Run for !Logistix version 0.01
  22192. 5.5
  22193. | with better RISC-OS compatability
  22194. 5.5
  22195. | (This is an OBEY file)
  22196. 5.5
  22197. IconSprites <Logi$Dir>.!Sprites
  22198. 5.5
  22199. WimpSlot -min 500k
  22200. 5.5
  22201. RMEnsure FPEmulator RMLoad <System$Path>Modules.FPEmulator
  22202. 5.5
  22203. Dir <Logi$Dir>.Logistix
  22204. 5.5
  22205. LGX
  22206. 5.5
  22207. The use of ö<System$Path>Modules.ò to reach the FPEmulator and setting
  22208. up the system variable <Logi$Dir> allow proper transportability of the
  22209. application, and it can now quite happily be installed anywhere in the
  22210. directory structure on a hard disk. Clicking on a data file causes RISC-
  22211. OS to check if a command has been matched to that file type. The system
  22212. variable Alias$@RunType _xxx has to be set up for files of the type in
  22213. question. If it has not been set up then you will get the error message
  22214. öNo run action specified for this file typeò. This is exactly what
  22215. happens with Logistix and similar applications written before (and even
  22216. since!) RISC-OS made its appearance. The addition of the line Set
  22217. Alias$@RunType_ DFF Obey <Logi$Dir>.InitFile %%*0 in the !Boot file
  22218. corrects the original omission, along with the following Obey file.
  22219. 5.5
  22220. The file described here can be used with most applications which require
  22221. keyboard input to load files, the exceptions being those which clear the
  22222. keyboard buffer on start up. In principle, the method is simple. An Exec
  22223. file is used containing the commands or keystrokes to be executed as
  22224. though they had been entered at the keyboard. Due to the fact that only
  22225. Obey files can process the Obey$Dir system variable, it could get a
  22226. little bit confusing.
  22227. 5.5
  22228. One way around this is from an Obey file:
  22229. 5.5
  22230. 1. Collect the startup pathname from RISC-OS and put it in a system
  22231. variable.
  22232. 5.5
  22233. 2. Using an Obey file, create an Exec file (by using Spool and Echo)
  22234. containing all the commands which require to be carried out to start the
  22235. application and set it up for a load operation.
  22236. 5.5
  22237. 3. Echo the system variable containing the full pathname into the Exec
  22238. file.
  22239. 5.5
  22240. 4. Exec the file which has just been created.
  22241. 5.5
  22242. There is one small problem. When trying to write to the FIRST file being
  22243. created by a *Spool operation, extraneous data flows into it before the
  22244. data! A dummy file is spooled first to get rid of this before the real
  22245. file is created.
  22246. 5.5
  22247. Using !Edit, create a new Obey file as follows, (You may miss out the
  22248. comment lines, but please leave in the fact that it is public domain and
  22249. attributed to me.)
  22250. 5.5
  22251. | öInitFileò Ö Public Domain by
  22252. 5.5
  22253. | D.Potter 26/6/90
  22254. 5.5
  22255. | Allows keyboard emulated loading
  22256. 5.5
  22257. | by double-clicking on a data file
  22258. 5.5
  22259. | in the RISC-OS desktop.
  22260. 5.5
  22261. | Intended in this version for
  22262. 5.5
  22263. | Logistix, but the principal will
  22264. 5.5
  22265. | work for other programs which do
  22266. 5.5
  22267. | not clear the keyboard buffer at
  22268. 5.5
  22269. | startup.
  22270. 5.5
  22271. | This is an Obey File. (Exec files
  22272. 5.5
  22273. | do not allow passing of system
  22274. 5.5
  22275. | parameters.) To pass actual
  22276. 5.5
  22277. | commands to Logistix, (or any
  22278. 5.5
  22279. | similar application), an Exec file
  22280. 5.5
  22281. | must be used.
  22282. 5.5
  22283. | The Exec file is built by this
  22284. 5.5
  22285. | file, including the full path for
  22286. 5.5
  22287. | the startup file that was clicked
  22288. 5.5
  22289. | on.
  22290. 5.5
  22291. | The !Boot file for app. must be an
  22292. 5.5
  22293. | Obey file containing the commands
  22294. 5.5
  22295. |      Set Logi$Dir <Obey$Dir>
  22296. 5.5
  22297. |      Set Alias$@RunType_xxx Obey <Logi$Dir>.InitFile %%*0
  22298. 5.5
  22299. | (As well as any other commands
  22300. 5.5
  22301. | already there)
  22302. 5.5
  22303. | Where xxx is the filetype for the
  22304. 5.5
  22305. | data file (DFF for Logistix).
  22306. 5.5
  22307. | Logi$Dir will be the directory
  22308. 5.5
  22309. | where the application resides, and
  22310. 5.5
  22311. | is automatically set up when the
  22312. 5.5
  22313. | applicationæs !Boot is first seen.
  22314. 5.5
  22315. | Note : the | characters at the
  22316. 5.5
  22317. | start of the above lines should
  22318. 5.5
  22319. | NOT be in the !Boot file!
  22320. 5.5
  22321. |
  22322. 5.5
  22323. | Put the pathname information in
  22324. 5.5
  22325. | temporary system variable Lload$
  22326. 5.5
  22327. Set Lload$ %*0
  22328. 5.5
  22329. | Clear extraneous data which
  22330. 5.5
  22331. | appears when a file is written to
  22332. 5.5
  22333. | at this stage by dummy spooling.
  22334. 5.5
  22335. | This data is not needed here any
  22336. 5.5
  22337. | more!
  22338. 5.5
  22339. Spool <Logi$Dir>.!LoadFile
  22340. 5.5
  22341. Echo <Lload$>
  22342. 5.5
  22343. spool
  22344. 5.5
  22345. | Now create the actual Exec file
  22346. 5.5
  22347. | which will run LGX and issue the
  22348. 5.5
  22349. | commands.
  22350. 5.5
  22351. Spool <Logi$Dir>.!LoadFile
  22352. 5.5
  22353. Echo || !LoadFile Ö Transient program built by InitFile
  22354. 5.5
  22355.  (PD) by D.Potter 1990
  22356. 5.5
  22357. Echo *Run <Logi$Dir>.!Run
  22358. 5.5
  22359. |
  22360. 5.5
  22361. | Send the Logistix load sequence Ö
  22362. 5.5
  22363. | Note : NO SPACES in the sequence!
  22364. 5.5
  22365. | /L = load, L= Logistix data file,
  22366. 5.5
  22367. | <Lload$>= Full filename,
  22368. 5.5
  22369. | A= All to be loaded  (You might
  22370. 5.5
  22371. | want to use a different load
  22372. 5.5
  22373. | sequence)
  22374. 5.5
  22375. | (Where a return is required such
  22376. 5.5
  22377. | as after the filename here,
  22378. 5.5
  22379. | simply start a new Echo statement
  22380. 5.5
  22381. | for the next command.)
  22382. 5.5
  22383. |
  22384. 5.5
  22385. Echo /LL<Lload$>
  22386. 5.5
  22387. Echo A
  22388. 5.5
  22389. |
  22390. 5.5
  22391. | Close the file
  22392. 5.5
  22393. Spool
  22394. 5.5
  22395. |
  22396. 5.5
  22397. | Set its file type
  22398. 5.5
  22399. SetType <Logi$Dir>.!LoadFile Command
  22400. 5.5
  22401. |
  22402. 5.5
  22403. | Lose the temporary system variable
  22404. 5.5
  22405. UnSet Lload$
  22406. 5.5
  22407. |
  22408. 5.5
  22409. | And run the file just created!
  22410. 5.5
  22411. Exec <Logi$Dir>.!LoadFile
  22412. 5.5
  22413. Save the above file as InitFile in the !Logistix directory.
  22414. 5.5
  22415. Now click on the !Boot file in the !Logistix directory to set the system
  22416. variables. (You wonæt always have to do this, as the !Boot file will be
  22417. run the first time you open the directory containing !Logistix. You only
  22418. need to do it at this time because you have been messing about with the
  22419. files, and the !Boot file may be different now than when it was last
  22420. run.) Clicking on any Logistix data file will now load Logistix and the
  22421. data file ready for use. You will still have to set up any default
  22422. prefixes etc.
  22423. 5.5
  22424. It is not possible to do this automatically with a simple file such as
  22425. the above, because the full pathname would require to be split up to
  22426. provide the path to your file directory minus the filename. i.e. you
  22427. would require string handling facilities such as in Basic.
  22428. 5.5
  22429. Note: The Logistix application itself still sets the CSD to the Logistix
  22430. directory within the !Logistix application directory. Implementing a
  22431. fully RISC-OS compatible version would require rewriting of the actual
  22432. coded LGX file, which is not possible without both the source code file
  22433. and the full approval of both Acorn and Grafox.
  22434. 5.5
  22435. Other applications requiring a parameter block in memory Ö Other
  22436. programs (in Basic) written before RISC-OS, which will autoload a data
  22437. file at startup if a parameter block is set up in memory, could be made
  22438. to auto load using a version of the following routine. Again, this
  22439. builds an exec file which is run in Basic, using simple string handling
  22440. to split off the filename from the full pathname.
  22441. 5.5
  22442. This example file was built to implement auto loading under RISC-OS on
  22443. an old BBC program which was written for DFS, and without re-writing
  22444. could not handle full pathnames, therefore it includes a line to set the
  22445. current directory to the application directory.
  22446. 5.5
  22447. Note: This particular version works due to Basic being selected during
  22448. the execution of the Exec file and the memory accessible to both the
  22449. file and the program is that assigned by the selection of Basic. Any
  22450. other programs (e.g. integrated packages) which are to use the shared
  22451. parameter block must (obviously) use the same memory, so must not move
  22452. out of Basic (return to the desktop) in between the programs, but simply
  22453. chain each other.
  22454. 5.5
  22455. This actual file will be irrelevant to most users, but it does show a
  22456. method of getting around the conversion of system variables to actual
  22457. data therefore easing the amount of work involved in conversion of BBC B
  22458. and Master programs to Archimedes. I know that re-writing the appli
  22459. cations might be more sensible, but this is aimed at people who know how
  22460. an application works, but didnæt write it in the first place!
  22461. 5.5
  22462. |    öAutoloadò
  22463. 5.5
  22464. | A Customised version of öInitFileò
  22465. 5.5
  22466. | Ö  Public Domain by D.Potter
  22467. 5.5
  22468. |                             7/7/90
  22469. 5.5
  22470. |       ÿÿ Information ÿÿ-
  22471. 5.5
  22472. | Allows parameter block loading by
  22473. 5.5
  22474. | double-clicking on a data file
  22475. 5.5
  22476. | in the RISC-OS desktop.
  22477. 5.5
  22478. | Intended in this version for the
  22479. 5.5
  22480. | upgrade of an old BBC/Master
  22481. 5.5
  22482. | program called Datbase, but the
  22483. 5.5
  22484. | principal should work for other
  22485. 5.5
  22486. | Basic programs which when started
  22487. 5.5
  22488. | up check a parameter block in
  22489. 5.5
  22490. | memory, and if found to be valid,
  22491. 5.5
  22492. | will load the file referred to in
  22493. 5.5
  22494. | the block.
  22495. 5.5
  22496. | eg. Old öIntegratedò suites of
  22497. 5.5
  22498. | programs which allow files to be
  22499. 5.5
  22500. | left as active or current for each
  22501. 5.5
  22502. | program in the suite.
  22503. 5.5
  22504. |
  22505. 5.5
  22506. | This is an Obey File.
  22507. 5.5
  22508. | An Exec file is built by this file
  22509. 5.5
  22510. | including the filename for the
  22511. 5.5
  22512. | startup file that was double
  22513. 5.5
  22514. | clicked on.
  22515. 5.5
  22516. | The !Boot file for app. must be an
  22517. 5.5
  22518. | Obey file containing the commands
  22519. 5.5
  22520. |       Set DatBa$Dir <Obey$Dir>
  22521. 5.5
  22522. |       Set Alias$@RunType_xxx Obey <DatBa$Dir>.AutoLoad %%*0
  22523. 5.5
  22524. | (As well as any other commands
  22525. 5.5
  22526. | already there)
  22527. 5.5
  22528. | Where xxx is the filetype for the
  22529. 5.5
  22530. | data file. (DatBa$Dir will be set
  22531. 5.5
  22532. | to the directory where the program
  22533. 5.5
  22534. | & this file reside when the !Boot
  22535. 5.5
  22536. | file is run)
  22537. 5.5
  22538. |
  22539. 5.5
  22540. | Put the full pathname information
  22541. 5.5
  22542. | in system variable DBload$
  22543. 5.5
  22544. Set DBload$ %*0
  22545. 5.5
  22546. | Clear extraneous data which
  22547. 5.5
  22548. | appears when a file is written to
  22549. 5.5
  22550. | at this stage by dummy spooling.
  22551. 5.5
  22552. | This data is not needed here
  22553. 5.5
  22554. | anymore!
  22555. 5.5
  22556. Spool <DatBa$Dir>.!LoadFile
  22557. 5.5
  22558. Echo <DBload$>
  22559. 5.5
  22560. spool
  22561. 5.5
  22562. |
  22563. 5.5
  22564. | Now create the actual Exec file
  22565. 5.5
  22566. | which will run the program and
  22567. 5.5
  22568. | load file.
  22569. 5.5
  22570. Spool <DatBa$Dir>.!LoadFile
  22571. 5.5
  22572. Echo || !LoadFile Ö Transient program built by AutoLoad
  22573. 5.5
  22574.  (PD) by D.Potter 1990
  22575. 5.5
  22576. Echo *Basic
  22577. 5.5
  22578. Echo REM this particular application requires the CSD to be it -
  22579. 5.5
  22580. Echo *Dir <DatBa$Dir>
  22581. 5.5
  22582. Echo REM The startup parameter block for this application
  22583. 5.5
  22584.  is at &F000, with
  22585. 5.5
  22586. Echo REM the filename held at &F100, any conditions for
  22587. 5.5
  22588.  printing at &F110,
  22589. 5.5
  22590. Echo REM the record number to display at start up held in R%,
  22591. 5.5
  22592. Echo REM and HIMEM held in H%
  22593. 5.5
  22594. Echo HIMEM=&F000
  22595. 5.5
  22596. Echo H%=&F000
  22597. 5.5
  22598. |    Echoing a system variable
  22599. 5.5
  22600. |    causes it to be converted to
  22601. 5.5
  22602. |    the real data.
  22603. 5.5
  22604. Echo F$=ö<DBload$>ò
  22605. 5.5
  22606. Echo REM Split off the actual filename itself (This
  22607. 5.5
  22608.  particular example is
  22609. 5.5
  22610. Echo REM for conversion of a BBC B/
  22611. 5.5
  22612. Master program which
  22613. 5.5
  22614.  has restricted
  22615. 5.5
  22616. Echo REM filename length, and therefore canæt handle
  22617. 5.5
  22618.  full pathnames)
  22619. 5.5
  22620. Echo REPEAT:F$=MID$(F$,INSTR(F$,ö.ò)+1):UNTIL INSTR(F$,ö.ò)=0
  22621. 5.5
  22622. Echo $&F100=F$ : $&F110=öò:R%=1
  22623. 5.5
  22624. Echo MO.12
  22625. 5.5
  22626. Echo CHAINöDATBASEò
  22627. 5.5
  22628. |
  22629. 5.5
  22630. | Where a return is required after a
  22631. 5.5
  22632. | command such as L for load, simply
  22633. 5.5
  22634. | start a new Echo statement for the
  22635. 5.5
  22636. | next command Ö a return will be
  22637. 5.5
  22638. | put in.
  22639. 5.5
  22640. |
  22641. 5.5
  22642. | Close the file
  22643. 5.5
  22644. Spool
  22645. 5.5
  22646. |
  22647. 5.5
  22648. | Set its file type
  22649. 5.5
  22650. SetType <DatBa$Dir>.!LoadFile Command
  22651. 5.5
  22652. |
  22653. 5.5
  22654. | And do it!
  22655. 5.5
  22656. Exec <DatBa$Dir>.!LoadFile
  22657. 5.5
  22658. Douglas Potter, Glasgow
  22659. 5.5
  22660. Å   Oak SCSI on A5000 Ö Using the Éfreeæ menu option on a SCSI disc on the
  22661. iconbar doesnæt make use of the new Free module in the RISC-OS 3 ROM. To
  22662. correct this, include the following line in your hard disc boot file :
  22663. 5.5
  22664. Set Alias$Free ShowFree -FS scsi %0
  22665. 5.5
  22666. Thatæs all there is to it. Now, whenever you select Éfreeæ from the SCSI
  22667. menu, a Free window pops up. The É%0æ picks up the device (disc drive)
  22668. name. Should you then subsequently wish to use Free from the command
  22669. line, use :
  22670. 5.5
  22671. %Free [<disc spec>]
  22672. 5.5
  22673. Typing ShowFree at the command line (with no parameters) reports the
  22674. command syntax.
  22675. 5.5
  22676. David Lenthall, London
  22677. 5.5
  22678. Å   Refilling ink cartridges Ö We have, in past issues, published comments
  22679. about refilling inkjet cartridges with various types of ink. Tord
  22680. Eriksson sent in another such comment a while ago but I didnæt publish
  22681. it. He now writes....
  22682. 5.5
  22683. Remember my recommending using water or fountain pen ink to keep your
  22684. printer going when your ink supply is gone? You didnæt publish it
  22685. (sensibly enough!) and I ran into deep trouble with it. I thought the
  22686. printhead was a goner (and messed it up further...), as the printer
  22687. didnæt work properly. After buying a new ú100 head, with no improvement,
  22688. I found out that the reason you shouldnæt refill the cartridges is that
  22689. air easily leaks into the paint container if you disconnect it many
  22690. times (as when injecting ink) because the membrane gets worn. This means
  22691. that suction isnæt up to specification and you get uneven paint
  22692. delivery.
  22693. 5.5
  22694. You may publish this as a warning Ö water does not harm a Canon BJ-what-
  22695. ever printer Ö but the side-effects can be very troublesome! I could
  22696. have spent the ú100 on something more sensible!!!    Tord Eriksson,
  22697. SwedenááA
  22698. 5.5
  22699. Impression Hints & Tips
  22700. 5.5
  22701. Å   Function key changes (contæd) Ö In addition to Michael Ben-Gershonæs
  22702. excellent hint in Archive 5.2, p.12: Why not go the whole way and put
  22703. all those styles (like those fonts you use regularly to enhance your
  22704. texts) into your Impression default document, after you have assigned a
  22705. function key to each of them?
  22706. 5.5
  22707. There are quite a lot of possibilities; in addition to those fields on
  22708. the function key strip that are quite empty, you can remove the default
  22709. styles you may not need (like hanging indent) and if there are some of
  22710. those ten scales offered which you never use, you can simply take over
  22711. those keys for your own styles.
  22712. 5.5
  22713. You will find that the editable field which allows you to define a
  22714. keyboard short cut is slightly unusual: It accepts only certain entries
  22715. (function keys, <Shift>, <Return>,..), and it is not necessary to delete
  22716. the existing content with <Ctrl-U> Ö just click in the box, enter the
  22717. new combination and click on OK. (Donæt press <Return>, because that
  22718. simply means that the short cut for your style is the Return key!)
  22719. 5.5
  22720. Jochen Konietzko, K÷ln, Germany
  22721. 5.5
  22722. Å Sprite files in Impression Ö Kevin Beales told us (Archive 5.4 p5)
  22723. about Impressionæs ability to scale pictures in Draw format. In this
  22724. context, he forgot to mention something even more remarkable: Impression
  22725. can also scale sprites! This works in exactly the same way as he
  22726. described.
  22727. 5.5
  22728. Of course, due to the well known problems of jagged edges/loss of
  22729. detail, you shouldnæt scale up or down too much; but if you have a
  22730. sprite that is just slightly too big or too small for its intended
  22731. place, then this feature of Impression is certainly extremely useful!
  22732. 5.5
  22733. Jochen Konietzko, K÷ln, Germany
  22734. 5.5
  22735. Å   Illustrated Impression documents Ö I often include sprite and draw
  22736. files in my Impression documents (for test papers and the like).
  22737. 5.5
  22738. One minor problem is that one canæt really edit those graphic frames in
  22739. an Impression document. Therefore, to have the corresponding files
  22740. always on hand, I save them into the documentæs directory (after opening
  22741. a window on this directory by <shift>-double clicking).
  22742. 5.5
  22743. This is one more reason for buying Compression: A typical sketch I make
  22744. with DrawPlus is reduced from about 6k to about 2 kbytes. A screen shot
  22745. made of an oscilloscope application I use takes up 100 kbytes; Compres
  22746. sion reduces this to just about 5k bytes (!). This means that even
  22747. pictures that appear in several documents donæt clog up the hard disk
  22748. too much, if you always save them together with the documents they
  22749. appear in.
  22750. 5.5
  22751. (Surely, though, the Draw files are already in the Impression document
  22752. directory? Why not edit them directly from there? Two drawbacks, I
  22753. suppose... you donæt know which file is which because they have names
  22754. like Story2 and Story4 (but you could identify them if you have full
  22755. info set in the filer window because of their size) and secondly the
  22756. changes to the Drawfiles are only displayed then next time you load the
  22757. Impression document. Ed.)
  22758. 5.5
  22759. (By the way: Can anyone tell me whether this hint will become obsolete
  22760. once Computer Conceptsæ much vaunted Impulse II will be available, that
  22761. is, whether you will then be able to open a graphic file saved somewhere
  22762. by clicking on a graphic frame in an Impression document?)
  22763. 5.5
  22764. Jochen Konietzko, K÷ln, Germany
  22765. 5.5
  22766. Å   Tiny left hand margin Ö I often wondered why the default document on
  22767. the Impression disc has a left hand margin set on the base style of a
  22768. couple of millimetres. Because of my sense of symmetry, I reduced that
  22769. to zero as soon as I started using Impression. Surely, if you create a
  22770. new master page with, say, 10cm margins, you donæt want the lefthand
  22771. margin to be 10.2cm?
  22772. 5.5
  22773. Suddenly it dawned on me... yes, I know Iæm slow... the reason for the
  22774. small lefthand margin is to make it easier to position the cursor to the
  22775. left of the first character on a line. If, as I do, you have zero margin
  22776. in the base style, youæve got to judge the mouse cursor fairly accu
  22777. rately otherwise it goes onto the paper margin and turns into a hand.
  22778. Well, yer pays yer money... but I think Iæll stay as I am. I have too
  22779. many documents to change them all. Ed.
  22780. 5.5
  22781. Å   Impression speed usersæ tips Ö I find that if you can get into the
  22782. habit of using <adjust> reverse scrolling, it really does save time,
  22783. especially when I am laying out the magazine and the screen is cluttered
  22784. with windows. Just press <select> to scroll down and switch quickly to
  22785. <adjust> to go back up again without having to move the mouse and locate
  22786. the other end of the scroll bar Ö which could be under another window
  22787. anyway.
  22788. 5.5
  22789. Also, <adjust> can be extremely useful, again with a cluttered screen,
  22790. for moving windows whilst keeping them where they are relative to the
  22791. other documents. It takes practice, but it speeds things up in the long
  22792. run. Ed.ááA
  22793. 5.5
  22794.  
  22795.  
  22796.  
  22797. Hints and Tips
  22798. 5.4
  22799. Å   A5000 monitor problem Ö One problem which various people seem to have
  22800. had with the Acorn A5000 monitors is intermittent contact on the mains
  22801. cable but the solution is simple. When you plug the power cable into the
  22802. monitor, it seems to go in but actually, to get it fully home, you have
  22803. to push it very firmly.
  22804. 5.4
  22805. Å   Draw files in Impression Ö Did you know that when using Draw files in
  22806. Impression frames, it is possible to özoomò in on a part you want to
  22807. concentrate on and bring it up to öfill the frameò? This means you can,
  22808. for example, call up a file of, say, a fruit filled bowl and then choose
  22809. the apple to fill the space available in your document or show a group
  22810. of cartoon figures and, in the next frame, have a öclose upò of one
  22811. face. Since Draw files are capable of incredible scaling, their should
  22812. be no real loss of detail involved.
  22813. 5.4
  22814. The procedure is simple. Create a frame for the draw file. Open the
  22815. directory containing the Draw file. Drag it into the frame in the usual
  22816. way. Changing the shape of the frame with its handles using <select>
  22817. will öcropò the picture until only the part you require is visible. Then
  22818. enlarge the frame using the adjust button on the corner handles. The
  22819. cropped picture will ögrowò with your mouse movements. (Well, stone me!
  22820. I didnæt know that! Please keep sending these öobviousò hints Ö they are
  22821. not obvious to everyone. Ed.)
  22822. 5.4
  22823. Incidentally, donæt try moving a frame containing a Draw file around the
  22824. page using the usual method of pointing inside it, holding down <select>
  22825. and waiting for the blue lines to appear. If you donæt wait quite long
  22826. enough, the graphic moves inside the frame and bang goes your careful
  22827. alignment! Instead, hold down <ctrl> when you press <select> and the
  22828. frame can be moved safely and immediately. Kevin Beales, Shropshire.
  22829. (The latter hint was also sent in by Johannes Thordarson of  Ice
  22830. land.)ááA
  22831. 5.4
  22832.  
  22833.  
  22834. Hints and Tips
  22835. 5.3
  22836. Å   AMX mouse Ö To replace the Archimedes mouse with an AMX mouse from a
  22837. BBC computer, all that is necessary is to change the plug on the AMX
  22838. mouse for a miniature 9 pin DIN plug. The correct plug can be obtained
  22839. from Maplin Electronics (0702Ö554161). It is stock number JX19V (price
  22840. 82p +p&p). Cut the original 20 way IDC connector off the mouse cable and
  22841. then solder the wires onto the new plug. The pins are very close
  22842. together, so a fair amount of care is required. It is easiest to start
  22843. with the middle pins and work outwards. I found that the plastic housing
  22844. supplied with the plug was just too wide to fit into my A3000 but it can
  22845. easily be cut smaller with a sharp knife.
  22846. 5.3
  22847. Paul Marshall, Loughborough.
  22848. 5.3
  22849. (Has anyone got the connections to do the same sort of thing but with a
  22850. BBC Trackerball? Ed)
  22851. 5.3
  22852. Å   Cops and Plague Planet Ö I should like to pass on the following advice
  22853. received from Alpine.
  22854. 5.3
  22855. Both Cops and Plague Planet re-configure the character set used to their
  22856. own. If you have a copy of Alpine Softwareæs ALPS (Adventure Language
  22857. Programming System) this contains a copy of the default Archimedes
  22858. character set e.g. $.!ALPS. Resources.defaultchr.
  22859. 5.3
  22860. Copy this file to the appropriate games directory (e.g.
  22861. $.COPS.defaultchr), and add the following line at the very end of the
  22862. appropriate !Run file (e.g. for Cops):
  22863. 5.3
  22864. Print <Cops$Dir>.defaultchr
  22865. 5.3
  22866. This will then automatically reset the computer to the default system
  22867. font upon returning to the Desktop.      Rob Brown, Tadworth
  22868. 5.3
  22869. Å   Corruption and Jinxter Ö I have recently transferred a number of the
  22870. earlier Magnetic Scrolls adventure games from floppy to hard disc and
  22871. have encountered certain problems with their usage of the Shared C
  22872. Library !System module.
  22873. 5.3
  22874. Fish! does not use the Shared C Library at all. Both The Guild of
  22875. Thieves and The Pawn came with version 3.50 of the Shared C Library and
  22876. they function with more recent versions without any difficulty. However,
  22877. my copies of Corruption (version 1.12) and Jinxter (version 1.30) came
  22878. with version 1.01 of the Shared C Library and they will not function at
  22879. all with any of the more recent versions.
  22880. 5.3
  22881. What I wanted to achieve was an easy means of starting either program
  22882. straight from the Desktop and automatically loading the öoldò version of
  22883. the Shared C Library. After some trial and error I have found one way
  22884. round this by modifying the !Run files for both applications.
  22885. 5.3
  22886. Firstly, version 1.01 of the Shared C Library needs to be copied to a
  22887. suitable directory within the !System application on the hard disc (e.g.
  22888. $.!System.oldModules.CLib_v101).
  22889. 5.3
  22890. Unfortunately the command RMEnsure will not only check for a particular
  22891. version of a module but it will also accept more recent versions. In the
  22892. !Run file I have therefore used this command to check whether a
  22893. subsequent version (e.g. 1.02) of the Shared C Library is already loaded
  22894. and, if not, the most up to date version is loaded from the !System
  22895. application. The command RMKill is then used to delete this module
  22896. before loading the öoldò version 1.01 of the Shared C Library. Finally,
  22897. after exiting the program, the öoldò Shared C Library is deleted, the
  22898. latest version (currently 3.75) is re-loaded, and the !Run file finally
  22899. returns control direct to the Desktop.
  22900. 5.3
  22901. | !Run file for Corruption
  22902. 5.3
  22903. | (or Jinxter Ö change references from öCorruptionò to öJinxterò)
  22904. 5.3
  22905. | (requires Shared C library version 1.01 dated 13-Jun-88)
  22906. 5.3
  22907. |
  22908. 5.3
  22909. IconSprites <Obey$Dir>.!Sprites
  22910. 5.3
  22911. WimpSlot -min 512K -max 512K
  22912. 5.3
  22913. |
  22914. 5.3
  22915. Set Corruption$CLibLoaded 1
  22916. 5.3
  22917. RMEnsure SharedCLibrary 1.02 Set Corruption$CLibLoaded 0
  22918. 5.3
  22919. If Corruption$CLibLoaded=0 then If ö<System$Path>ò = öò then Error
  22920. System resources cannot be found
  22921. 5.3
  22922. If Corruption$CLibLoaded=0 then RMLoad System:Modules.Clib
  22923. 5.3
  22924. RMKill SharedCLibrary
  22925. 5.3
  22926. RMLoad System:oldModules.CLib_v101 .Clib
  22927. 5.3
  22928. RMEnsure SharedCLibrary 1.01 Error You need SharedCLibrary
  22929. 5.3
  22930. version 1.01 ONLY
  22931. 5.3
  22932. Unset Corruption$CLibLoaded
  22933. 5.3
  22934. |
  22935. 5.3
  22936. Set Corruption$Dir <Obey$Dir>
  22937. 5.3
  22938. Run <Corruption$Dir>.Corruption.f1 <Corruption$Dir>.Corruption.f2
  22939. 5.3
  22940. |
  22941. 5.3
  22942. |
  22943. 5.3
  22944. RMKill SharedCLibrary
  22945. 5.3
  22946. RMEnsure SharedCLibrary 3.75 RMLoad System:Modules.Clib
  22947. 5.3
  22948. RMEnsure SharedCLibrary 3.75 Error You need SharedCLibrary
  22949. 5.3
  22950. version 3.75 or later
  22951. 5.3
  22952. Desktop
  22953. 5.3
  22954. WARNING Ö any other programs active within the Desktop should be closed
  22955. down and any files saved before starting either Corruption or Jinxter Ö
  22956. especially those programs which use the Shared C Library! Perhaps
  22957. another reader can find a way round this?
  22958. 5.3
  22959. Rob Brown, Tadworth
  22960. 5.3
  22961. Å   Elite Ö When you start Archimedes Elite, it prompts you to enter a
  22962. word from the manual, as an anti-piracy precaution. When it says ötype
  22963. the word exactly as shownò it means the input is case sensitive. You
  22964. have to remember to take the Caps Lock off. This falls into the category
  22965. of öobvious to most peopleò but hopefully this hint will save somebody
  22966. the frustrating quarter of an hour which I spent trying to get the thing
  22967. to work when it first arrived.
  22968. 5.3
  22969. People who are used to the 8 bit version of the game should watch out
  22970. for little things which have changed. For example, furs are now illicit
  22971. cargo in the same way that narcotics and firearms are. You are told this
  22972. in the manual but you have to look for it pretty carefully!
  22973. 5.3
  22974. Neil Hoggarth, WinchesterááA
  22975. 5.3
  22976.  
  22977. 5.3
  22978. Impression Hintsá&áTips
  22979. 5.3
  22980. Å   Position holding Ö My repeated plea for a way of holding the current
  22981. position in a document when you expand and contract the window has been
  22982. answered! A box of four Archive mugs is winging its way to Bob Potter of
  22983. Bath. He gave me the basic idea which I have amplified slightly.
  22984. 5.3
  22985. Basically, as Bob pointed out, when you expand and contract the window,
  22986. Impression returns to the position that was current when the window was
  22987. small. (Surely, CC, this isnæt very sensible, is it? You are more likely
  22988. to change the current position when working in the full size window. Why
  22989. not change it whenever you move about within the document?) Anyway,
  22990. given that this is how it works at present, all you have to do to
  22991. maintain your position is, as soon as you have shrunk the window, press
  22992. <cursor-left> (and then <cursor-right> if you want to) so that the
  22993. current position will be displayed and remembered within the small
  22994. window. The only slight disadvantage with this is that if the small
  22995. window is very small, you will find the cursor near to the top of the
  22996. window when you expand it, not near the middle. Thanks, Bob!ááA
  22997. 5.3
  22998.  
  22999.  
  23000. The Engineer Speaks
  23001. 5.3
  23002. Ray Maidstone
  23003. 5.3
  23004. Å   Hard drive mounts Ö Several customers have had cause to ship their
  23005. Archimedi to me for repair, and a hardware problem has come to light.
  23006. Some of you have purchased hard drives that have been mounted on thin
  23007. aluminium brackets. These rather flimsy brackets easily distort under
  23008. small amounts of G stress and, unfortunately, a few harddrives have gone
  23009. to the great hard disc graveyard in the sky. Aluminium was used by the
  23010. Airforce because of its tensile properties, and should (due to this very
  23011. fact) not be used to anchor a hard drive. These small brackets deform
  23012. under stress and leave the drive öflappingò about.
  23013. 5.3
  23014. Another comment about brackets Ö a lot of them are fine for their
  23015. supporting properties but not very good when it comes to air circula
  23016. tion. This can be improved by either punching some 3/8ö holes in the
  23017. sides, or by buying a pair of Paulæs new nifty side brackets at ú4 a
  23018. pair. We have had a few instances of over-heating causing premature
  23019. decease of drives, particularly with back planes full of podules and a
  23020. partly blocked filter. It is possible that, by reducing the bracket
  23021. size, this could have been avoided.
  23022. 5.3
  23023. Å   *Shut and *bye Ö The last word! I have not, at any time in my
  23024. comments, stated that the suggestions I have made are law, I have merely
  23025. offered the result of my findings to those who hadnæt a clue of what was
  23026. going on. There are a few small, old drives that need both, but most
  23027. only need one command to park. The removables, however, most certainly
  23028. do not park, and only the operating lever finally parks the heads. These
  23029. findings came about from observations of partially dismantled units
  23030. operating under standard command use.
  23031. 5.3
  23032. Å   LBP4 laser printers Ö I have been asked about switch on/off procedures
  23033. for these, and I reckon that, to minimise öspikesò, the order should
  23034. be... when switching on, either do so all together or the printer last,
  23035. and turning off, either do it all altogether or switch off the printer
  23036. first.
  23037. 5.3
  23038. Å   Cooling Ö Following the success of quietening the fans on Archimedes,
  23039. external hard drives have now been added to the list, and no heat
  23040. problems have arisen (mainly because of 14 months of actual proving
  23041. before releasing). Whilst assessing the quietening for these drives, it
  23042. was surprising to find just how mechanically noisy some makes of fan
  23043. were, as nearly 50% of the noise from the unit was being conducted
  23044. through the chassis assembly.
  23045. 5.3
  23046. I have also been asked öIf I donæt like Acornæs cooling method, what
  23047. would I like instead?ò My reply is that, in my opinion, the current fan
  23048. with or without a quietener (that never lets the fan speed drop below
  23049. 75%) is not quite enough in the real world. Particularly if the filter
  23050. is on the inside, hardly anyone appears to pay much attention to keeping
  23051. the filter clean. Therefore, I have found a rather nice miniature fan
  23052. (currently being used by Morley in their external hard drives) that,
  23053. when introduced into the opposite side of the case to the present
  23054. arrangement, and being set to push air out of the case as the other
  23055. sucks it in, really gets some cooling done.
  23056. 5.3
  23057. A cautionary note about airflow is not to stand external floppy and hard
  23058. drive units too close to the sides of the Archimedes, or soft surfaces
  23059. under the A3000, as öwhat goes in must come outò and I have seen several
  23060. instances of hot machines being caused by the proximity of external
  23061. surfaces. The A3000 has a power supply that runs quite hot and, being
  23062. encased in fireproof cardboard, (on the earlier machines, anyway) made
  23063. things even more heated. I am using the miniature fan, aimed at the end
  23064. of the P.S.U., to assist temperature differences in this rather enclosed
  23065. environment. If anyone is interested in more details, let me know. This
  23066. small fan gives off very little sound and certainly improves longevity.
  23067. The lack of space inside the A3000 generally adds to the poor cooling in
  23068. the P.S.U. and any air movement is better than none.
  23069. 5.3
  23070. I made the comment above about fan quieteners not slowing the fan more
  23071. than 75% because, in the course of my development, I also tried systems
  23072. that reduced the fan speed to 40%, and also did one trial where I
  23073. stopped it all together for the first quarter hour, as no heat would
  23074. build up until after this. The fan would then thermostatically cut in
  23075. and then run in a varied way subject to temperature requirements. These
  23076. were all dropped due to the fact that, as the Archimedes box is not at
  23077. all aerodynamic, once the temperature began to build up, certain items
  23078. within it started to experience particularly large temperature rises
  23079. i.e. hard drive, P.S.U. and floppy drive. The final unit chosen simply
  23080. took the fan below the noise of air flare speed and, together with the
  23081. chassis decoupling grommets, removed so much noise that only the sound
  23082. of the hard drive rang in the ears. I would caution people against using
  23083. controllers that slow the fan excessively.
  23084. 5.3
  23085. Å   IDE cabling Ö I notice that IDE drive cables have been quoted as long
  23086. as 20ö. I have it on very good authority that in some cases, even 12ò is
  23087. pushing it. This is because IDE signals tend to be far more easily
  23088. corrupted than those on SCSI lines. So please be warned and keep them as
  23089. short as possible.ááA
  23090. 5.3
  23091.  
  23092.  
  23093.  
  23094.  
  23095. Hints and Tips
  23096. 5.2
  23097. Å   Fatal error type = 5 revisited (Archive 4.12 p9) Ö Itæs not only !Edit
  23098. that reports this error, !Draw and some other Applications abort with a
  23099. similar error, but you might want to use !Edit, for example, with fonts.
  23100. The version in Archive 4.12 p9 simply hides the !Font-folder, so the
  23101. idea is to have the Applications just to see part of the !Fonts folder.
  23102. The easiest thing to do is simply to split up the fonts-directory into
  23103. directories Ö i.e. create two directories within !Fonts Ö in the first
  23104. directory (maybe SmallFonts within your !Fonts Folder) just put the
  23105. really necessary fonts in (just Trinity, Homerton, Corpus or so), but
  23106. remember that there may only be up to 50 fonts (approximately) Ö
  23107. including styles (say Italic, Medium, Bold etc). In the second directory
  23108. (maybe LargeFonts) put every font that is not already included in the
  23109. first directory.
  23110. 5.2
  23111. The next thing to change is your !Boot and !Run-File from the !Fonts
  23112. application.
  23113. 5.2
  23114. The !Boot file should read as follows:
  23115. 5.2
  23116. | !Boot file for !Fonts
  23117. 5.2
  23118. | *********************
  23119. 5.2
  23120. IconSprites <Obey$Dir>.!Sprites
  23121. 5.2
  23122. RMEnsure FontManager 2.42 RMLoad <Obey$Dir>.Fonts
  23123. 5.2
  23124. RMEnsure SuperSample 0.04 RMLoad <Obey$Dir>.Super
  23125. 5.2
  23126. Set Small$Fonts <Obey$Dir>. SmallFonts.
  23127. 5.2
  23128. Set Large$Fonts <Small$Fonts> ,<Obey$Dir>.LargeFonts.
  23129. 5.2
  23130. If ö<Font$Prefix>ò=öò Then SetMacro Font$Path <Font$Prefix>
  23131. 5.2
  23132. If ö<Font$Prefix>ò=öò Then Set Font$Prefix <Large$Fonts>
  23133. 5.2
  23134. SET Alias$@RunType_745 RUN <Obey$Dir>.FontHelp -Obey %%*0
  23135. 5.2
  23136. SET File$Type_745 FontObey
  23137. 5.2
  23138.  
  23139. 5.2
  23140. The !Run file should read as follows:
  23141. 5.2
  23142. | !Run file for !Fonts
  23143. 5.2
  23144. | ********************
  23145. 5.2
  23146. Obey <Obey$Dir>.!Boot
  23147. 5.2
  23148. Echo Outline Font Manager 2.42 installed.
  23149. 5.2
  23150. Echo Fonts now available:
  23151. 5.2
  23152. Echo
  23153. 5.2
  23154. FontCat
  23155. 5.2
  23156.  
  23157. 5.2
  23158. In addition, you have to create a Basic program called Fonthelp, which
  23159. should be situated in the !Font folder and should read like this:
  23160. 5.2
  23161. REM >FontHelp  Version 1.00 20.1.91
  23162. 5.2
  23163. REM *******************************
  23164. 5.2
  23165. REM Written by: Martin Sperl
  23166. 5.2
  23167. REM             Nattergasse 12/32
  23168. 5.2
  23169. REM             A-1170 Vienna (Wien)
  23170. 5.2
  23171. REM             AUSTRIA
  23172. 5.2
  23173.  
  23174. 5.2
  23175. END=&A000
  23176. 5.2
  23177. DIM Data 255
  23178. 5.2
  23179. SYSöOS_GetEnvò TO ENV$
  23180. 5.2
  23181. ENV$=MID$(ENV$,INSTR(ENV$,ö-Obey ò) +6)
  23182. 5.2
  23183. *SET Font$Prefix <Small$Fonts>
  23184. 5.2
  23185. SYS öHourglass_Onò
  23186. 5.2
  23187. SYS öWimp_Initialiseò,200, &4B534154,ö**LoadMore**ò
  23188. 5.2
  23189.  TO ,TaskHandle%
  23190. 5.2
  23191. SYS öWimp_StartTaskò,öOBEY ò+ENV$
  23192. 5.2
  23193. REPEAT
  23194. 5.2
  23195. SYS öWimp_Pollò,0,Data TO R%
  23196. 5.2
  23197. UNTIL R%=0
  23198. 5.2
  23199. SYS öWimp_CloseDownò,TaskHandle%
  23200. 5.2
  23201. *SET Font$Prefix <Large$Fonts>
  23202. 5.2
  23203. SYS öHourglass_Offò
  23204. 5.2
  23205. END
  23206. 5.2
  23207. Then create a sprite called öfile_745ò (maybe the same sprite as for an
  23208. Obey-file, but another colour) and include it in the !Sprites file of
  23209. !Fonts.
  23210. 5.2
  23211. To start an application which can only handle some fonts without errors
  23212. just change the Filetype of the !Run-file with öSettype !Run FontObeyò
  23213. to FontObey. Then you can start the application as normal without having
  23214. to worry about fonts at all.
  23215. 5.2
  23216. Martin Sperl, Austria
  23217. 5.2
  23218. Å   Formatting PC disks Ö If, like me, you do not have a PC Filer on your
  23219. Archimedes you will have to format DOS diskettes (for use with the PC
  23220. Emulator) on a PC. If your PC has a 1.44M drive the standard FORMAT
  23221. command needs modifying. The command to use is
  23222. 5.2
  23223. FORMAT  A:  /N:9  /T:80
  23224. 5.2
  23225. This certainly works on the PS/2 55SX I have at work.  Richard Wheeler,
  23226. WokinghamááA
  23227. 5.2
  23228.  
  23229. 5.2
  23230. Impression Há&áT
  23231. 5.2
  23232. Å   Function key changes Ö Computer Concepts have chosen to use <ctrl-F3>
  23233. and <ctrl-F4> for Ésaveæ and Ésearch and replaceæ instead of the more
  23234. standard <F3> and <F4>. If you prefer to use the latter, simply go into
  23235. the edit styles dialogue (<ctrl-F6>), select first italic and then bold
  23236. and, on each, change the keyboard shortcut (or delete it altogether), as
  23237. follows... You could, for example, change from <F3> to <shift-ctrl-F3>
  23238. by clicking in the shortcut box, pressing <ctrl-U> to delete the
  23239. existing text and pressing <shift-ctrl-F3>, at which point the words
  23240. ö<shift-ctrl-F3>ò will appear in the box. Click OK and <F3> will now
  23241. produce the desired ösaveò effect.
  23242. 5.2
  23243. If you already have a lot of documents, this could prove a frustration
  23244. since you would have to do this with every document individually. Also,
  23245. you would need to go into Impressionæs Auto directory and edit the
  23246. default document. Michael Ben-Gershon, Israel.
  23247. 5.2
  23248. Å   Only 77 graphics frames allowed in a chapter Ö Impression wonæt allow
  23249. more than 77 graphics frames in a single chapter. This is due to the
  23250. ADFS limitation of 77 files per directory Ö earlier versions of
  23251. Impression (2.03) normally crashed after loading the offending file when
  23252. displaying. Impression 2.1 does not allow to save a file with more than
  23253. 77 graphics-frames per chapter. I mentioned it to CC but they told me
  23254. öThis is something that would be extremely difficult to overcome. It
  23255. should only affect a very small percentage of usersò. So beware of too
  23256. many frames in one chapter !!! Martin Sperl, Austria
  23257. 5.2
  23258. Couldnæt you get round this by putting several draw objects together in
  23259. a single file and then show different parts of the same file in
  23260. different frames? I havenæt tried it, but it should work. Ed.
  23261. 5.2
  23262. Å   Running Impression documents from !TinyDirs Ö If you use !TinyDirs to
  23263. install an Impression document on the icon bar and then click on it to
  23264. run it, a new copy of !Impress will be fired up even if one is already
  23265. running.
  23266. 5.2
  23267. This seems to be because of a small mistake in the !TinyDirs.!RunImage
  23268. programme. In the PROCdataopen procedure are two lines which read as
  23269. follows:
  23270. 5.2
  23271. 900 q%?(44+LEN$(q%+44))=0
  23272. 5.2
  23273. 910 q%!0=(48+LEN$(q%+44))ANDNOT3
  23274. 5.2
  23275. If you reverse the order of these two lines the program runs correctly.
  23276. Hugh Eagle, Horsham
  23277. 5.2
  23278. Å   Special Characters Ö The full list of ISO 8859 characters is included
  23279. in the Archimedes User Guide, e.g. page 455 for the Latin 1 alphabet.
  23280. However, itæs not too helpful in that it is listed in hexadecimal. If
  23281. you want to enter characters using <Alt> and the numeric keypad, you
  23282. need to know the decimal numbers. Those of you with EFF fonts will have
  23283. a manual that shows various of the character sets by decimal number.
  23284. This is particularly useful for Zapf Dingbats and MathGreek fonts. Jim
  23285. Nottingham, York.
  23286. 5.2
  23287. (For those without EFF fonts, I have put an Impression file on the
  23288. monthly program disc so that you can print out your own lists of
  23289. characters just by changing the font in the style definition. Ed.)
  23290. 5.2
  23291. Å Wrong sprite colours in Impression Ö If, when you drag a sprite into
  23292. an Impression frame, the colours come out all wrong, itæs probably
  23293. because the sprite has not got a palette. If so, the answer is to give
  23294. it a palette, which can be done as follows:
  23295. 5.2
  23296. 1.   Load the sprite file containing your sprite into !Paint.
  23297. 5.2
  23298. 2.   Double click on the thumbnail picture of the sprite you want to
  23299. alter.
  23300. 5.2
  23301. 3.   Click <menu> over the sprite window that now appears, then move to
  23302. the Edit submenu and click on the Palette item at the bottom.
  23303. 5.2
  23304. 4.   Save the amended sprite file.
  23305. 5.2
  23306. 5.   Load the amended sprite back into Impression.
  23307. 5.2
  23308. (Note: if you donæt want to keep the amended sprite, you can, if you
  23309. like, shortcut steps 4 and 5 and save the sprite direct from !Paint into
  23310. Impression.) Hugh Eagle, HorshamááA
  23311. 5.2
  23312.  
  23313.  
  23314.  
  23315. Finally, Andrew Scott...
  23316. 5.2
  23317. The following comments and hints are based on my first week of using the
  23318. machine which, from the outset, I must say is brilliant, especially
  23319. compared with my old Archimedes A310.
  23320. 5.2
  23321. During the time I have had the machine, I have tried quite a number of
  23322. applications. Now, whilst most of them have worked perfectly, I have had
  23323. problems with the following:  Atomwide Hi-Res. modes, Jinxter and
  23324. Corruption adventures (CIS Adventure pack), Beebug Toolbox disc sector
  23325. editor, Data Storeæs FontFX (version 4.04), Mitre Softwareæs DiscTree
  23326. (version 2.16) and !DSEdit, PD sound sample player.
  23327. 5.2
  23328. The Atomwide mode designer comes with a number of sets of modes for
  23329. various monitors, but none of these is completely suitable for the A5000
  23330. and Acornæs multisync monitor. The mode designer application, however,
  23331. works fine, provided you remember to select monitor type 1, and machine
  23332. A540/A5000. Using this, it is quite straightforward to modify the hi-
  23333. res. modes (SVGA, 102 etc.) to produce working versions of these.
  23334. However, make sure that you work in mode 27 while defining the new
  23335. modes, as some of the other modes (12, 15 etc.) are redefined by the
  23336. standard mode module (MegaModes), and this can produce some strange
  23337. effects Ö they appear as two letter box shaped screens one above the
  23338. other!!
  23339. 5.2
  23340. The adventures Jinxter and Corruption do not work with version 3.87 of
  23341. the SharedCLibrary which is in RISC-OS 3. However, they are supplied
  23342. with a very old version (1.01) which will work if you *RMKill the
  23343. version in RISC-OS 3 first. Better still, alter the !Run files to
  23344. automate this, and restore the RISC-OS 3 version afterwards. I have
  23345. included two suitable !Run files on the disc. On the monthly program
  23346. disc. Ed.)
  23347. 5.2
  23348. The disc sector editor in Beebugæs Toolbox (version 1.00) does not work
  23349. at all on the A5000, and hangs the machine!!
  23350. 5.2
  23351. FontFX from the Data Store (version 4.04) does not like the default
  23352. setting for the system macro Font$Path. However, if you edit out the
  23353. reference to Font$Prefix it works OK Ö not a perfect solution, but it
  23354. works. e.g.
  23355. 5.2
  23356. *SetMacro Font$Path adfs::IDEDis c4.$.!Fonts.,Resources:$.Fonts.
  23357. 5.2
  23358. DiscTree (version 2.16) from Mitre Software will load, but all attempts
  23359. to access a disc (hard or floppy) produce a fatal internal error.
  23360. 5.2
  23361. !DSEdit, the excellent PD sound sample player will not play samples.
  23362. This is because the author has been Énaughtyæ and used an abbreviation
  23363. for the ChannelVoice command. RISC-OS 3 wrongly interprets the abbrevia
  23364. tion as the new command *ChangeDynamicArea and hence causes an error.
  23365. This is easily corrected by changing the abbreviation to the full
  23366. command. Acorn have issued a warning with RISC-OS 3 that a number of
  23367. commands have different minimum abbreviations, and have provided a file
  23368. on the RISC-OS 3 Support Disc to change them all back to what they were
  23369. in RISC-OS 2.
  23370. 5.2
  23371. Something else that I have observed is that if you use the !Configure
  23372. application to auto-start any of the ROM based applications then this
  23373. will cease to work if you have a !Boot file on the hard disc which
  23374. includes a line like :
  23375. 5.2
  23376. *Desktop -file <Obey$Dir>.DeskS tart
  23377. 5.2
  23378. Instead you must include a line in the DeskStart file to run each of the
  23379. applications which you want to auto-start. e.g.
  23380. 5.2
  23381. Run Resources:$.Apps.!Alarm
  23382. 5.2
  23383. Hardware problems Ö (I have left this in to see if anyone has any ideas!
  23384. Ed.) I have discovered a fault with my machine, that concerns the real
  23385. time clock. Every time the machine is reset with either <ctrl-break>, or
  23386. turning it off and on again, the real time clock is reset back to the
  23387. last time that it was explicitly set too, e.g. using *Set Sys$Time or
  23388. the Set clock option on !alarm. The rest of the time, the clock appears
  23389. to function correctly.
  23390. 5.2
  23391. My first thought was a loose battery connection. However, on opening the
  23392. case, I found that the machine doesnæt even have a battery! While the
  23393. case was off, I checked for any loose connections, but could not find
  23394. any.
  23395. 5.2
  23396. Next, I thought that it might be a software fault and not a hardware
  23397. one, because the fault only occurs when the machine is reset, which is a
  23398. software function. I noticed that in the list of modules in RISC-OS 3
  23399. there is a new module called RTCAdjust which presumably stands for Real
  23400. Time Clock Adjust. Could this be causing the problem? The module
  23401. provides no star commands or software interrupts, only a service code
  23402. handler. I have not been able to confirm if this module is causing the
  23403. problem or not. Any ideas?ááA
  23404. 5.2
  23405.  
  23406. The Engineer Speaks (again)
  23407. 5.2
  23408. Ray Maidstone
  23409. 5.2
  23410. As there were several comments of appreciation received regarding the
  23411. hardware care section labelled öThe Engineer speaksò last month, further
  23412. points of interest have been forwarded and are listed here.
  23413. 5.2
  23414. Headphone sockets
  23415. 5.2
  23416. These stereo sockets are mechanically very delicate and several machines
  23417. have been in for repair. (This is presumably because these sockets are
  23418. getting used more now that there seems to be a little more notice being
  23419. taken of the fact that the Archimedes is capable of matching other makes
  23420. of computer, when it comes to music and sound effects.) The replacement
  23421. of these sockets is fairly simple but involves completely dismantling
  23422. your machine and getting the motherboard out.
  23423. 5.2
  23424. More serious is the fact that weæve had some machines in for repair with
  23425. the sound output chip blown. Although this is a very cheap repair, I can
  23426. only think that this was caused by people using the socket whilst music
  23427. was actually playing! Looking at the circuit diagram, I find it
  23428. difficult to see how shorting the contacts in the socket by plugging in
  23429. headphones, or whatever, whilst it is playing should be able to blow
  23430. anything up, but there it is. I suggest it would be for sensible to
  23431. cause your machine to be silent while plugging things into this socket.
  23432. 5.2
  23433. RGB video output failure
  23434. 5.2
  23435. Further to the question öDoes disconnection or connection to the RGB
  23436. socket while things are switched on blow the VIDC (Video Output) chip?ò
  23437. The answer is most definitely yes, even though several people have
  23438. expressed surprise, saying öWell, Iæve plugged and unplugged mine for
  23439. years and years, and Iæve never had any problems.ò
  23440. 5.2
  23441. The fact is that eventually it will blow up, as there simply isnæt any
  23442. static protection in the early machines. The modification I mentioned
  23443. last month has sparked a lot of interest. (Bad choice of words there,
  23444. Ray! Ed.) We can fit this for you and we can offer this item, fitted for
  23445. ú15, but you will have to sort out the carriage.
  23446. 5.2
  23447. This protection feature is already incorporated into the 400/1 series,
  23448. the 3000 and everything since, and will only be needed in the 300 series
  23449. and the early 440æs. To my certain knowledge, this modification has put
  23450. an end to the grief being caused by pupils öin the knowò at a couple of
  23451. schools, deliberately plugging and unplugging monitors and Arabellas
  23452. (thatæs what VIDCs are called) are not cheap.
  23453. 5.2
  23454. A3000 crashes and aborts
  23455. 5.2
  23456. My findings on this subject are a bit distressing and, to make matters
  23457. worse, I own one of these troublesome machines and can speak from
  23458. experience. We have had a slowly increasing number of people losing work
  23459. because their 3000 occasionally crashes with the öAbort on transferò, or
  23460. öAddress exceptionò captions coming up. These problems have been traced
  23461. to impedance peculiarities on the pin and socket connections of the
  23462. expansion ram cards. At first, the ram expansion itself was suspected
  23463. but we have finally discovered that these connections sometimes go high
  23464. impedance at the high frequencies of the ram access speeds. The
  23465. ösometimesò is whatæs giving the problem, as the bulk of these expan
  23466. sions run trouble free.
  23467. 5.2
  23468. My own belt and braces solution to this has been to remove the pins and
  23469. sockets, and replace them with gold plated counterparts Ö No more
  23470. problems! This, of course, is öopen heartò surgery and, if not done by
  23471. an Acorn Service Centre, will invalidate any guarantee and, if it is not
  23472. performed using the correct equipment, it can destroy the machine as
  23473. well. (Solder suckers are completely incapable of performing this task
  23474. and the 4 layer board is too delicate to risk damaging.)
  23475. 5.2
  23476. I have helped several people out with a temporary DIY tip that consider
  23477. ably improves the reliability of these connections. However, you should
  23478. only attempt this if you are familiar with opening your machine and
  23479. fiddling inside it. Locate the ram board, lift it off the P.C.B.
  23480. expansion pins and lay the board to one side. Take a can of WD40, or
  23481. Contek 9, but nothing else, and find a clean bottle top or small dish.
  23482. Spray some of this into the cup and, using a cotton bud, carefully rub
  23483. around all the expansion pins, taking care not to distort any. Do not
  23484. spray anything directly into the machine.
  23485. 5.2
  23486. This should be done in a well lighted area and at the end, the pins
  23487. should be slightly moist (not too much and not too little!). Take the
  23488. ram card, and offer it onto the pins, checking that all pins align
  23489. properly into their relevant socket, and press it down. (Check that the
  23490. speaker wires do not get in the way.) Once the board has öbottomedò,
  23491. pull it back up again about ╝ö (6mm), and then ease it down until it
  23492. still about 1/32ò (1mm) away from the bottom. Donæt push it all the way
  23493. down this time so that it leaves the connectors on öfreshò metal. This
  23494. procedure should temporarily relieve the crash situation but the
  23495. following test will reveal whether your problem is corrosive or
  23496. mechanical.
  23497. 5.2
  23498. Leaving the lid off, (beware of the high voltages in the power supply if
  23499. your machine has a cardboard p.s.u. cover) connect your machine up to
  23500. monitor and mains Ö no other connections are needed Ö and switch on. You
  23501. should now have the desktop visible on your monitor. If your expansion
  23502. is Atomwide then very slightly rocking it from front to back (Do not
  23503. exceed ╝ö movement) will not disturb the display if the fault was
  23504. corrosion. If the fault was mechanical, you will see the Address
  23505. Exception or Abort error flag, in which case the problem is mechanical
  23506. and you need to rush to your nearest Acorn Service Centre.
  23507. 5.2
  23508. If you have the Morley board, this is a little more difficult, as you
  23509. will have to carefully hinge up the keyboard and find a way of holding
  23510. it up (get someone to help you, as if you drop it you could short
  23511. something, or break the flexible connector strips) and now take hold of
  23512. the front edge of the board and raise and lower it about 3/8ö and watch
  23513. for the same effects as already mentioned.
  23514. 5.2
  23515. (This problem would probably have been averted if the pin and socket
  23516. components used at time of manufacture had been the gold flashed type,
  23517. but this obviously would have increased the product cost.)
  23518. 5.2
  23519. STOP PRESS
  23520. 5.2
  23521. After talking to another dealer at the recent Acorn User Show, I have
  23522. been able to find out from a couple of their personnel (unofficially)
  23523. that Acorn did indeed have a couple of batches of A3000æs that came with
  23524. oxidized expansion pins. So I suggest that either you offer your machine
  23525. to your dealer for him to sort out, or heed the above instructions, and
  23526. also try a light rub with a very small piece of öScotchbriteò or pan
  23527. scourer. Do not use anything metallic because that will leave a
  23528. residue.ááA
  23529. 5.2
  23530.  
  23531.  
  23532. Hints and Tips
  23533. 5.1
  23534. Å   FileUtils Ö Anyone using Ben Summersæ FileUtils should note that
  23535. <ctrl-shift-F2>, <ctrl-shift-F3> and <ctrl-shift-F4> will still call up
  23536. the FileUtils routines even when, say, working in Impression. This can
  23537. give a nasty shock if you are, for example, trying to insert preset
  23538. styles using <ctrl-shift-F4> and a öchange filetypeò dialogue window
  23539. pops up. Mike Hobart, Cambridge.
  23540. 5.1
  23541. Å   Installing Desktop C Ö If you have recently upgraded from C to Desktop
  23542. C, you may have a little difficulty installing Desktop C onto your hard
  23543. disc. When you first try to run the ÉInstallæ program, it will stop
  23544. abruptly half way through the second of the four discs, with no clues as
  23545. to what has happened. This is because the ÉInstallæ program tries to
  23546. create a directory called $.User. Cmodule, which already exists from
  23547. your previous installation of C and so the program crashes. The solution
  23548. is simple, just delete the old $.User.Cmodule directory before attempt
  23549. ing to install Desktop C.   D R Kennard, London.
  23550. 5.1
  23551. Å   LBP-4 CaSPL Ö Switching between Video output (for the CC Hi-Res board)
  23552. and CaSPL output of the LBP-4 doesnæt appear to be documented in the
  23553. manual. Here is how it can be done:
  23554. 5.1
  23555. From Video to CaSPL mode:
  23556. 5.1
  23557. 1.   Hold down öMenuò for 3 seconds until öMode=Videoò is displayed.
  23558. 5.1
  23559. 2.   Tap the öMenuò key once to display öMode=CaSPLò
  23560. 5.1
  23561. 3.   Tap öEnterò. The LCD will read ö01 Ex Exitò then ö00 Ready A4ò
  23562. 5.1
  23563. 4.   Tap the öOff-lineò key to take the machine off-line (if the green
  23564. on-line indicator is lit).
  23565. 5.1
  23566. 5.   Tap öFeeder Selectò.
  23567. 5.1
  23568. 6.   Tap öMenuò. The menu as described in the manual is now displayed.
  23569. 5.1
  23570. From CaSPL to Video:
  23571. 5.1
  23572. 1.   Take the printer off-line.
  23573. 5.1
  23574. 2.   Hold down the öMenuò for 3 seconds Ö öMode=CaSPLò is displayed.
  23575. 5.1
  23576. 3.   Tap öMenuò again Ö öMode=Videoò is displayed.
  23577. 5.1
  23578. 4.   Tap öEnterò.
  23579. 5.1
  23580. 5.   You are now back in Video mode.
  23581. 5.1
  23582. Mike, Bainbridge, Derby.
  23583. 5.1
  23584. Impression Hintsá&áTips
  23585. 5.1
  23586. Å   Adding a frame at beginning of a story Ö It is not immediately obvious
  23587. (well, it wasnæt to me!) how to add extra frames into a story that runs
  23588. through a number of frames. Suppose you have two frames, B and C (Iæll
  23589. get to A in a minute) Ö perhaps they are two main columns on this page Ö
  23590. and you want to split column B into two frames leaving a gap in the
  23591. middle. What you do is firstly shorten frame B using the frame handle at
  23592. the middle of the bottom of the frame. Then you use <ctrl-I> and create
  23593. a new frame wherever you want it under frame B (letæs call it frame B2).
  23594. Now click on frame B with <select> and then on frame B2 with <adjust>
  23595. and the text will flow into it so that it runs BÖB2ÖC.
  23596. 5.1
  23597. Now suppose you want the text to start in a frame before frame B. (Letæs
  23598. call it frame A.) The technique is to create the new frame, A, wherever
  23599. you want it using <ctrl-I>. Then click on frame B with <select> and then
  23600. on frame A with <adjust>. The text will now flow into it so that it runs
  23601. BÖAÖB2ÖCÖetc. (N.B. This wonæt work unless frames A and B are on the
  23602. same page because you cannot flow text backwards across a page bound
  23603. ary.) Then click on B and use <ctrl-X> to delete it. The flow is now
  23604. just AÖB2ÖCÖetc. Finally, you create a new copy of frame B by using
  23605. <ctrl-V>, click on frame A with <select> and the new B with <adjust> and
  23606. the flow will be AÖBÖB2ÖCÖetc.
  23607. 5.1
  23608. Å   Dual window problems solved? Ö A few issues ago, I mentioned the
  23609. problem that if you open a second window on a document and then expand
  23610. and contract that window (so that you can alternately use two different
  23611. scale views) each time you shrink view 2 using the icon at the top right
  23612. of the window, it doesnæt stay at the place in the document that you
  23613. have just been working on. It always seemed (in my case) to go back to
  23614. somewhere earlier in the document. No one has offered any solution but
  23615. it seems to me that it goes back to wherever you last added a frame into
  23616. that window. So if you want to ökeep your placeò in the second window,
  23617. use <ctrl-I> to create a new frame at that place in the document and
  23618. then use <ctrl-X> to delete it again. Crude, but it seems to work. (No,
  23619. it doesnæt, not always. Drat, I thought I had solved it! Come on,
  23620. someone must be able to solve this one Ö Iæll give a free Archive mug to
  23621. the first person to solve it. Ed.)
  23622. 5.1
  23623. Å Equasor and matrices Ö The biggest drawback Equasor has for me as a
  23624. mathematics teacher is its inability Ö at least in version 1.00 Ö to
  23625. handle vectors and matrices.
  23626. 5.1
  23627. There is, however, a way in which a very credible matrix can be created
  23628. Ö with a small amount of extra work:
  23629. 5.1
  23630. I build the columns as multiple fractions, and then enclose everything
  23631. in brackets; I drop the file into Draw, remove the fraction bars and
  23632. then align the brackets with the numbers.
  23633. 5.1
  23634. Jochen Konietzko, K÷ln, Germany
  23635. 5.1
  23636. Å   Special characters Ö Now Iæm sure you ALL knew this, but I didnæt
  23637. until I read this monthæs PipeLine article. The Alt key is extremely
  23638. useful for inserting special characters in the text. I had discovered
  23639. that <Alt-space> (thatæs holding the Alt key down and tapping on the
  23640. space bar) gave a Éhardæ space where you donæt what the words (e.g. the
  23641. halves of a postcode) to be split across the end of one line and the
  23642. beginning of the next, and I had discovered the idea of using Alt
  23643. together with the numbers on the numeric keypad to produce special
  23644. characters, but how about this...
  23645. 5.1
  23646.      a▓ + b▓ = c│
  23647. 5.1
  23648. I produced that in seconds without using superscript. The ▓ is produced
  23649. with <Alt-2> and the │ with (yes, youæve guessed) <Alt-3>. In other
  23650. words, you hold down the Alt key, as if it were the shift key, and type
  23651. 2 or 3. Here is a table of the ones I have found but note that this only
  23652. applies to Trinity font which I am using. Other fonts may be different
  23653. but, generally, they tend to stick to using the same symbols for the
  23654. same ASCII numbers which the Alt key produces. The third column is the
  23655. ASCII number produced.
  23656. 5.1
  23657. <Alt-1>   ╣   185
  23658. 5.1
  23659. <Alt-2>   ▓   178
  23660. 5.1
  23661. <Alt-3>   │   179
  23662. 5.1
  23663. <Alt-9>   ▒   177
  23664. 5.1
  23665. <Alt-0>   ░    176
  23666. 5.1
  23667. <Alt-C>   ó   162
  23668. 5.1
  23669. <Shift-Alt-C>   ⌐   169
  23670. 5.1
  23671. <Alt-M>   ╡   181
  23672. 5.1
  23673. <Alt-R>   «   174
  23674. 5.1
  23675. <Alt-S>   º   167
  23676. 5.1
  23677. <Alt-X>   ╗   187
  23678. 5.1
  23679. <Alt-Y>   Ñ   165
  23680. 5.1
  23681. <Alt-Z>   ½   171
  23682. 5.1
  23683. <Alt-`>   ¼   172
  23684. 5.1
  23685. (top left key under <esc>)
  23686. 5.1
  23687. <Alt-,>   ╫   215
  23688. 5.1
  23689. <Alt-.>   ≈   247
  23690. 5.1
  23691. <Alt-space>      160 (hard space)
  23692. 5.1
  23693. If you have found any that I have missed, perhaps in other fonts, let us
  23694. know. Ed.
  23695. 5.1
  23696. Å Spell checking Edit documents Ö Whenever I typed a longish Edit text
  23697. file, I used to regret the absence of a spell checker. For Impression
  23698. users, this poses no problem:
  23699. 5.1
  23700. Simply drop the Edit file in question into an empty Impression frame,
  23701. have Impression check the spelling, then export the text back into Edit
  23702. by saving just the text story without styles. You can drag the text
  23703. story onto the Edit icon to have another look at it or save it in the
  23704. usual way directly to a disk. The import/export takes just a few
  23705. seconds, so this is nearly as good as a spell checker built into Edit
  23706. itself. Jochen Konietzko, K÷ln, GermanyááA
  23707. 5.1
  23708.  
  23709. 5.1
  23710. Silicon Vision
  23711. 5.1
  23712. New
  23713. 5.1
  23714.  
  23715. 5.1
  23716. Colton
  23717. 5.1
  23718.  
  23719. 5.1
  23720. 4.12 p21
  23721. 5.1
  23722.  
  23723. 5.1
  23724. Matters Arising
  23725. 5.1
  23726. Å   Archimedesæ Tutor Ö Simon Anthony has produced a Beginneræs D.I.Y.
  23727. Introduction to the Archimedes using the !Hyper application on Shareware
  23728. Disc 19. If anyone is interested they should contact him directly at 62
  23729. Rutland Road, West Bridgford, Nottingham, NG2 5DG.
  23730. 5.1
  23731. Å   ArmSort Ö Fast Array Sorts Ö The author replies... The reviewer
  23732. (Ashley Bowden in Archive 4.12 p53) seems to have created a problem with
  23733. the flag values. The ArmSort documentation DID clearly state that for
  23734. the CALL sort öThe parameters must all be variables, but may be of any
  23735. nameò. If CALL sort,test%() ,128 is used, then it is Basic that objects
  23736. with öSyntax Errorò, ERR=16, because it is a Basic requirement that all
  23737. CALL parameters are variables not constants. Thus it is rather unfair
  23738. for the reviewer to claim that to have to use variables is ö.. very
  23739. unorthodox, and mention should be made in the documentation.ò ArmSort
  23740. errors are comprehensive and are very clearly documented.
  23741. 5.1
  23742. This Éproblemæ wasted about a third of the review, which could have been
  23743. better used to mention the PROCsort and SWI interfaces or the ability to
  23744. sort on absolute numeric values, or with null strings low or high.
  23745. 5.1
  23746. May I also suggest that all software reviews should clearly state what
  23747. version is being reviewed: the ArmSort review copy was Version 2.12,
  23748. sent to Archive in February. The current Version is 2.51, which has the
  23749. following improvements: sort time reductions of between 30% and nearly
  23750. 50%; the ability to sort strings from any position, or by length; the
  23751. ability to specify a key sequence; new procedures for a fast binary
  23752. search of sorted arrays; and all programs now do run easily from the
  23753. desktop. All users have had free upgrades and seem happy with the
  23754. product. Martin Avison, Avisoft.
  23755. 5.1
  23756. (Sorry if we seem to have reviewed an out-of-date product but when
  23757. someone sends software to us for review, we have to assume it is a
  23758. östableò version. If the software has gone from version 2.12 to version
  23759. 2.51 since February, this indicates continuous development. This is fine
  23760. but, if significant changes are made, the onus is on the software
  23761. supplier to send us the latest version. This product was still on the
  23762. ösoftware to be reviewedò list in the May edition of Archive. If Martin
  23763. had noticed this and sent us the latest version at that stage, the
  23764. difficulty might have been avoided. Ed.)
  23765. 5.1
  23766. Å   MidiVision Update Ö Koen Lefever has sent us an updated version the
  23767. MidiVision program on Shareware Disc 33. It is now compatible with the
  23768. new Acorn MIDI Podule ROM and capable of detecting real time messages.
  23769. The new version has been put on this monthæs program disc.
  23770. 5.1
  23771. Å   PRES Disc Interface & DFS Ö In the review in Archive 4.11 p27 we
  23772. referred to difficulties in reading 40 track BBC discs. PRES suggested
  23773. that the problem may be due to öresidual dataò on the discs. In other
  23774. words, they are suggesting that the problem may lie with discs that have
  23775. been written onto by different 40 track drives, some with narrow heads,
  23776. as in 40/80 drives, and some with wider tracks as in true 40 track
  23777. drives. It would be interesting to hear other peopleæs experiences on
  23778. this. We have also found that it is sometimes necessary to slow the head
  23779. stepping time right down as low as it will go in order to read 40 track
  23780. discs. (We also used a rather old address for PRES. It is currently P.O.
  23781. Box 319, Lightwater, Surrey, GU18 5PW. 0276Ö72046, fax 51427.)
  23782. 5.1
  23783. Å   RISC-OS Dreaming Ö I would like to reply to Oliver Gunasekaraæs
  23784. letter, RISC-OS Dreaming, published in Archive 4.12 p15. Many of
  23785. Oliveræs suggestions have been extensively discussed in the USENET news-
  23786. group dedicated to Acorn machines. Well-informed contributions from
  23787. Acorn staff (in a private capacity) and experienced programmers (RISC-OS
  23788. and otherwise) allow fairly definite predictions to be made as to the
  23789. likelihood of some of these suggestions being realised in later version
  23790. of RISC-OS.
  23791. 5.1
  23792. Firstly, there is almost no chance of proper demand paged virtual memory
  23793. being implemented under RISC-OS on current generation ARM processors.
  23794. The problem is that much (if not all) of RISC-OS runs with the ARM
  23795. processor in its supervisor mode. In this mode, the ARM-2 and ARM-3 are
  23796. unable to implement virtual memory. Not enough information is saved to
  23797. enable execution to be resumed after an attempt to access memory not
  23798. physically present causes the MEMC memory controller to interrupt
  23799. execution. Thus, virtual memory would require a drastic rewrite of RISC-
  23800. OS so that any code that might access virtual memory runs in user mode
  23801. or avoids memory not physically present. Acorn almost certainly do not
  23802. have the resources to do the necessary rewrite. Simpler, less effective
  23803. forms of virtual memory such as swapping out non-running programs are
  23804. possible, but would still be very complicated.
  23805. 5.1
  23806. Pre-emptive multi-tasking is, on the other hand, quite possible. It is
  23807. just that doing it without introducing subtle bugs into software written
  23808. under the assumption that multi-tasking is co-operative is fiddly. As
  23809. with virtual memory, the fact that RISC-OS did not allow for pre-emptive
  23810. multi-tasking, when originally written, makes it messy to implement
  23811. later on. Even running other tasks when the current task is blocked,
  23812. waiting for i/o, is rather tricky to implement though, according to the
  23813. grape-vine, this does indeed happen to some extent in RISC-OS 3.
  23814. 5.1
  23815. As to nicer system fonts, better design, TCP/IP file-sharing and hot-
  23816. linking Ö letæs hope it happens. Thereæs no technical obstacle and these
  23817. are definitely things necessary for Acorn to keep up with the state of
  23818. the art. A new file-system allowing more files in a directory and longer
  23819. filenames would also go down well. It would be a real boon to people
  23820. like myself who have to use RISC-OS machines in conjunction with UNIX or
  23821. MesS-DOS boxes.  Andrew Stevens, Overton.
  23822. 5.1
  23823. Å   RISC-OS Dreaming Ö I would agree with many of the points about RISC-OS
  23824. 2.0 put forward (in Archive 4.12 p15), by Oliver Gunasekara. However,
  23825. Iæm not sure that making RISC-OS look more like other graphical
  23826. interfaces will necessarily bring us much benefit.
  23827. 5.1
  23828. I am responsible for several different computer systems (micros and
  23829. minis) each of which has its own user interface from the quirkiness of
  23830. the Apple and Atari systems, to the smooth, powerful X-Windows systems.
  23831. Some of the staff prefer one system, some prefer another. Itæs a bit
  23832. like choosing your favourite car, you get the one that suits you.
  23833. 5.1
  23834. Strangely enough, considering its sales, the least popular GUI in our
  23835. department is Windows 3.0. Even allowing for its deficiencies, RISC-OS
  23836. seems to have become the preferred choice for more than half our
  23837. department. Whether this is due to RISC-OS itself, applications like
  23838. Impression or the speed of the ARM3 powered machines, Iæm not sure. What
  23839. I am sure of is that RISC-OS is quite capable of winning converts from
  23840. other systems.
  23841. 5.1
  23842. Even so, letæs hope that RISC-OS 3 contains a lot of those improvements
  23843. mentioned by Oliver. DáHutchinson, Sheffield.ááA
  23844. 5.1
  23845.  
  23846.  
  23847.  
  23848. The Engineer Speaks...
  23849. 5.1
  23850. Ray Maidstone
  23851. 5.1
  23852. For the last few months, Ray Maidstone has been, effectively, the N.C.S.
  23853. Service Centre. He has done a great job fixing dead or dying Archimedes
  23854. computers for us and upgrading the memory of A310s. In doing so, he has
  23855. come across various recurring problems which could be avoided if a few
  23856. precautions were followed.
  23857. 5.1
  23858. Here are some hints & tips which should help to keep your Archimedes in
  23859. tip-top condition. A word of warning though, some of the things I am
  23860. suggesting should not be attempted unless you really feel competent to
  23861. do so. The general rule is, if in doubt, ask for help!
  23862. 5.1
  23863. Å   300 and early 400 series keyboards Ö (See also the article on page 37)
  23864. These keyboards do not have sprung contacts coming together, but foil
  23865. closing over multiple contact points on sprung pads. Various people have
  23866. informed me that they have sprayed their keyboards with switch cleaner
  23867. to improve things when they have had intermittent contacts on one or
  23868. more keys. They may have got away with it, but it is my view that these
  23869. keyboards should never be sprayed with switch cleaner. The only
  23870. recommended method of servicing this item is to dismantle (but ONLY if
  23871. you feel competent to do so!) and remove foreign particles with a soft
  23872. brush and a vacuum cleaner. Anything sticky or difficult to remove is
  23873. best left to your Service Centre. WARNING: Using switch cleaner which
  23874. contains an organic solvent can destroy components within the keyboard
  23875. and slowly but surely render it useless. Be warned! (We have a dead
  23876. keyboard available for inspection if you are in any doubt! It was killed
  23877. by using Tandyæs Tix Electronic Switch Cleaner. Ed)
  23878. 5.1
  23879. Å   Mouse Ö If you unplug your mouse, the recommended procedure for
  23880. reconnection is to first disconnect the keyboard from the computer, plug
  23881. the mouse into the keyboard then reconnect to the computer. The reason
  23882. for this is that the mouse contains one solitary chip, which has no
  23883. protection from spikes at switch-on from the outside world, whereas the
  23884. keyboard has circuitry that is slightly better equipped to cope with any
  23885. misadventures. Plugging the mouse into the keyboard and then plugging
  23886. the keyboard into the computer is the safest method and could well save
  23887. you money.
  23888. 5.1
  23889. Å   Monitor smear Ö On the 400 series computers, it is possible to get a
  23890. composite video signal out of the sync socket which you can use for a
  23891. mono monitor. This is done by making links LK5 and LK6. However, if
  23892. these links are made, it can cause problems with certain high resolution
  23893. monitors. You get a certain amount of smearing on the ends of horizontal
  23894. lines. This effect is caused by the electronics of the Archimedes and
  23895. can only be cured by removing the links. (I have a confession to make.
  23896. Until we discovered this problem, we always tested our 400 series
  23897. computers using a mono monitor. We added links 5 and 6 but did not
  23898. remove them before sending out the computers. If you have had a 400
  23899. series computer from us, I suggest you check for this effect and remove
  23900. the links if necessary. Ed)
  23901. 5.1
  23902. Å   Video RGB outlet Ö On the 310 and early 400 series, it is possible to
  23903. destroy the VIDC chip by plugging in the video lead to either the
  23904. computer or the monitor if one or both of these items are switched on.
  23905. The electronics of this socket do not accept the slightest static
  23906. variation and any deviation will damage the VIDC chip. Whoops! Ö there
  23907. goes another ú30! I have designed a multiple diode module as a service
  23908. modification which upgrades these old machines to the new static-
  23909. protected specification. Whilst Acorn confirm that my modification is
  23910. öArchimedes-legalò, they will not put their name to it as yet. This
  23911. modification has been particularly well received by schools, as it stops
  23912. pupils being able to blow up their computers!
  23913. 5.1
  23914. Å   Fan filters Ö With the fan driving air into the filter (lower half of
  23915. the diagram below) it is possible for the filter, in its blocked state,
  23916. to completely eliminate all airflow within the computer. However, with
  23917. the fan sucking air through the filter (upper half of the diagram
  23918. below), even if the filter becomes totally blocked, residual air
  23919. currents will still flow within the computer, providing some ölast
  23920. resortò cooling. Also, with the filter on the outside of the fan,
  23921. cleaning couldnæt be easier. All that is needed is to slide the lid back
  23922. 10 cm (or 4 inches for those of us still in Imperial!) and suck the dust
  23923. off the filter with a vacuum cleaner.
  23924. 5.1
  23925. Å   Hard drive parking Ö After much debate and the dismantling of two
  23926. unserviceable hard drives, I have found that, in order to give your data
  23927. maximum protection at closedown, *BYE must be followed by *SHUTDOWN.
  23928. These two commands, although slightly similar, do not seem to perform
  23929. the same task and, to my satisfaction, have been proven to be necessary
  23930. in the order stated. The effects of closing the drive down can be
  23931. verified acoustically and visually, e.g. *BYE will produce one staccato
  23932. tick noise and a short flash on the hard drive LED, but this does not
  23933. mean the drive is fully parked. Typing *SHUTDOWN will produce a multiple
  23934. wink of the hard drive LED and a triple tick noise from the drive. Take
  23935. my word that this guarantees total shutdown of the drive. If *SHUTDOWN
  23936. is typed without having typed *BYE, a single tick will be heard and the
  23937. drive will simply have moved the head to a different track, but it will
  23938. not be fully parked. (Different effects happen on different drives under
  23939. this condition.)
  23940. 5.1
  23941. (Some may call this a öbelt & bracesò method, but when it comes to
  23942. protecting several hundred pounds worth of hard drive, I prefer to err
  23943. on the side of caution. Ed)
  23944. 5.1
  23945. Å   Removable hard drive parking Ö The command DISMOUNT brought up by
  23946. clicking <menu> on the SCSI icon, does not mean your drive is parked. It
  23947. simply means that the drive has shut its motor down and that the
  23948. software has öforgottenò about the drive in question. At this point, if
  23949. you switch the power off, the heads have been left out over the disc at
  23950. the last track you were using and will be in the same position next time
  23951. you switch on the power. In order to eliminate the possibility of power-
  23952. on destroying any data bits, the centre button on the removable drive
  23953. must be pressed and the drive fully disengaged with the lever. This
  23954. operation mechanically parks the heads off the disc and is the only way
  23955. to guarantee this.
  23956. 5.1
  23957. Å   Stray metalware Ö When removing the motherboard on the 300/400 series,
  23958. it is very possible to dislodge one or more of the spring speed nuts
  23959. (for the two rear self tapping screws that öget in the wayò when
  23960. removing the board). Make sure these are firmly in place when reassem
  23961. bling Ö better still, remove them, clamp them slightly more closed and
  23962. refit. This will prevent any further mishap which could cause shorting
  23963. under the main PCB.
  23964. 5.1
  23965. Å   Stuck floppy discs Ö It is unfortunately possible, now and again, for
  23966. a floppy disc to become stuck in the drive. This will be due to one of
  23967. the following causes, and if you wish to keep costs to a minimum, NEVER
  23968. tug at, or forcibly remove, the stuck item.
  23969. 5.1
  23970. (Again, we have u/s floppy drives available for inspection if you need
  23971. proof. Ed.)
  23972. 5.1
  23973. 1. The metal sliding cover on the disc can become widened, perhaps due
  23974. to being bent in the post, or being sat on or whatever. As the metalwork
  23975. of the slider opens, it will act like a ratchet allowing the disc to go
  23976. in but not to come out without difficulty.
  23977. 5.1
  23978. 2. The spring that returns the metal cover can become unlaced and behave
  23979. like a fish hook, snagging the unlocking post within the drive.
  23980. 5.1
  23981. 3. The metal screening plate on the upper disc reading head within the
  23982. drive can become dislodged and catching the plastic work of the disc
  23983. (particularly on the older Sony drives).
  23984. 5.1
  23985. In ALL cases, if the drive is removed by somebody competent to do so,
  23986. you should find that delicate easing will allow the disc to come out
  23987. again without damaging the drive and, 9 times out of 10, the disc can
  23988. also be saved.
  23989. 5.1
  23990. In the case of the metal head shield of the Sony drive, simply throw it
  23991. away as it was later found to be unnecessary. Where the metal gate of
  23992. the drive is distorted, it is quite acceptable to remove this item by
  23993. unfolding it and removing the spring. The disc will operate without the
  23994. metal cover but keep little fingers out Ö remember the 5╝ö floppies?ááA
  23995. 5.1
  23996.  
  23997.  
  23998.  
  23999. Hints and Tips
  24000. 4.12
  24001. Å   Basic line lengths revisited (Archive 4.10 p7) Ö The Basic line input
  24002. buffer is 238 characters and so this is the most you can type in from
  24003. the Basic prompt. Once entered, this line is tokenised before being
  24004. stored as part of a program. Most of the keywords are reduced to only
  24005. one byte, so the line ends up taking up much less room in a program. The
  24006. maximum length for a line in a program is 255 bytes, but four of these
  24007. bytes have special purposes (one is a line terminator, one the line
  24008. length and two the line number). This leaves 251 bytes for the rest of
  24009. the line. So whatæs the point in allowing bigger lines in the program if
  24010. you canæt type them in? Well, you can by being devious. Try typing the
  24011. following at the Basic prompt:
  24012. 4.12
  24013. 10E.:E.:E.: etc
  24014. 4.12
  24015. until you hit the line limit and then press Return. Listing your program
  24016. now should reveal:
  24017. 4.12
  24018. 10ENDPROC:ENDPROC:ENDPROC: etc
  24019. 4.12
  24020. up to a length of about 790 characters! This line is perfectly valid and
  24021. would run OK (although I canæt think of a program where 79 ENDPROCs in a
  24022. row would be useful!) but is much too long to edit at the Basic prompt
  24023. or in the Basic Editor. It wouldnæt be sensible for the Basic Editor to
  24024. limit you to 251 characters since, once tokenised, your line would be
  24025. much shorter, so it allows you to type up to 369 characters hoping that
  24026. tokenising will bring it back to 251. It objects if you try to type in
  24027. more than 369 characters; it also objects if you type a shorter line
  24028. which would be longer than 251 characters once tokenised (try REM
  24029. followed by 300 letters). As for solving the problem, if you have a copy
  24030. of Twin, you could try loading your Basic program into it. Twin has no
  24031. line length limit and will cope with anything. Returning to Basic will
  24032. always work provided the resulting tokenised lines would be no longer
  24033. than 251 characters. Lorcan Mongey
  24034. 4.12
  24035. Å   Citizen printer spare parts Ö You may be interested to know that you
  24036. can get spare parts for Citizen printers from XMA Ltd, Ruddington Lane,
  24037. Wilford, Nottingham, NG11 7EP. (0602 Ö818222) Rob Brown, Tadworth,
  24038. Surrey.
  24039. 4.12
  24040. Å   Fatal error type = 5 Ö !Edit will report this error if you have too
  24041. many outline fonts in your !Fonts folder. This will prevent you from
  24042. editing any documents within !Edit. The following Basic program will
  24043. solve this problem by hiding the !Fonts folder before running !Edit and
  24044. then restoring it once !Edit has been run.
  24045. 4.12
  24046. 1. Rename the É!RunImageæ file inside the É!Editæ folder as ÉEditImageæ.
  24047. 4.12
  24048. 2. Type the following program in and then save it as É!RunImageæ in the
  24049. É!Editæ folder.
  24050. 4.12
  24051. REM ><Edit$Dir>.!RunImage
  24052. 4.12
  24053. SYS öWimp_Initialiseò,200,&4B534154, öEditStartò TO ,taskid%
  24054. 4.12
  24055. *Set temp <Font$Prefix>
  24056. 4.12
  24057. *UnSet Font$Prefix
  24058. 4.12
  24059. *WimpSlot -min 160k -max 160k
  24060. 4.12
  24061. *WimpSlot -min 160k
  24062. 4.12
  24063. SYS öWimp_StartTaskò,öRun <Edit$Dir> .EditImage ò+FNenv_string
  24064. 4.12
  24065. *Set Font$Prefix <temp>
  24066. 4.12
  24067. *Unset temp
  24068. 4.12
  24069. SYS öWimp_CloseDownò,,taskid% ,&4B534154
  24070. 4.12
  24071. END
  24072. 4.12
  24073.  
  24074. 4.12
  24075. DEFFNenv_string
  24076. 4.12
  24077. LOCAL env$,x%
  24078. 4.12
  24079. SYS öOS_GetEnvò TO env$
  24080. 4.12
  24081. IF LEN(env$)<6 THEN =öò
  24082. 4.12
  24083. WHILE INSTR(env$,ö ò,x%)>0
  24084. 4.12
  24085. x%=INSTR(env$,ö ò,x%)+1
  24086. 4.12
  24087. ENDWHILE
  24088. 4.12
  24089. =RIGHT$(env$,LEN(env$)-x%+1)
  24090. 4.12
  24091. Å    Locating the I/O podule (a SWI number change) Ö Those writing code
  24092. for the I/O podule for use on different machines should note that Acorn
  24093. made a SWI number change between version 1.04 and 1.06 of the software
  24094. (use *Help Modules to find what version you have). Earlier issues of the
  24095. podule use &4043F for SWI öI/O _Podule_Hardwareò whereas the later
  24096. versions use &40500. ARM code assembled on a machine with one version of
  24097. the software will not work on another machine with a different version
  24098. without changing this SWI number. Richard House, Surrey.
  24099. 4.12
  24100. Å   PC screen fonts Ö If you are not overly fond of the chunky IBM
  24101. character set in the PC emulator, the following few lines of Basic will
  24102. modify the emulator ROM file with the BBC font of your choice.
  24103. 4.12
  24104. REM >PCFONT
  24105. 4.12
  24106. REM Merge BBC FONT file into !PC ROM file
  24107. 4.12
  24108. REM N.B. *** COPY ORIGINAL ROM FILE BEFORE RUNNING THIS ***
  24109. 4.12
  24110. :
  24111. 4.12
  24112. DIM rom% &2000 : offset%=&166E
  24113. 4.12
  24114. R$=ö:4.$.!PC.ROMò
  24115. 4.12
  24116. OSCLI(öLoad ò+R$+ö ò+STR$~rom%)
  24117. 4.12
  24118. A%=OPENIN(R$) : r1%=EXT#A% : CLOSE#A%
  24119. 4.12
  24120. :
  24121. 4.12
  24122. F%=OPENIN(ö4:.BBCFONTS.NEWFONTò) : REM file of type &FF7
  24123. 4.12
  24124. REPEAT
  24125. 4.12
  24126. A%=BGET#F%
  24127. 4.12
  24128. IF A%<>23 THEN PRINT öThis is not a BBC font file!ò : END
  24129. 4.12
  24130. C%=BGET%F%
  24131. 4.12
  24132. FOR I%=0 TO 7
  24133. 4.12
  24134. rom%?(offset%+((C%+128) MOD 256) *8+ I%)=BGET#F%
  24135. 4.12
  24136. NEXT I%
  24137. 4.12
  24138. UNTIL EOF#F%
  24139. 4.12
  24140. CLOSE#F%
  24141. 4.12
  24142. :
  24143. 4.12
  24144. OSCLI(öSave ò+R$+ö òSTR$~rom%+ ö + ò+STR$~r1%)
  24145. 4.12
  24146. END
  24147. 4.12
  24148. This program has been used successfully on the ROM files supplied with
  24149. version 1.33 and the latest 1.60 (large and small) Ö each version stores
  24150. its VDU 23 character definitions from offset &166E onwards. Pete Bready,
  24151. Glasgow.
  24152. 4.12
  24153. Å   Impression Junior styles? Ö In the June 1991 edition of Archive, it
  24154. was pointed out that Impression Junior does not have styles. Although it
  24155. does not have styles, it does have rulers. These are intended to define
  24156. margins and tab-stops, but they can be used for other things.
  24157. 4.12
  24158. If you save a text story with effects, you will see the definition of a
  24159. ruler, which looks like:
  24160. 4.12
  24161.  
  24162. 4.12
  24163. There will also be the definition of the BaseStyle, which contains a
  24164. number of additional commands. By copying some of these to the ruler
  24165. definition, you can create the equivalent of a style. As an example, a
  24166. Éstyleæ that changes the font of the text subject to the ruler to greek,
  24167. could be, for example:
  24168. 4.12
  24169.  
  24170. 4.12
  24171. As Impression Junior does not have the facility to create rulers with
  24172. these extensions, they must be written using an ordinary text editor
  24173. (such as !Edit) and imported into Impression where they become rulers.
  24174. 4.12
  24175. The commands that I know work are:
  24176. 4.12
  24177. font <font name>   Ö e.g. Greek, Trinity.Medium, etc
  24178. 4.12
  24179. fontsize <size>pt   Ö 8 to 20 is reasonable
  24180. 4.12
  24181. fontaspect <size>%      Ö
  24182. 100 normal, 200 stretches to twice size
  24183. 4.12
  24184. fontcolour rgb = (<n>,<n>,<n>)  Ö n is from 0 to 1 or 0 to 100 (both
  24185. appear to work)
  24186. 4.12
  24187. linecolour rgb = (<n>,<n>,<n>)  Ö as above
  24188. 4.12
  24189. justify [left, right, centre, full]  Ö full is to both margins
  24190. 4.12
  24191. underline [0,1]      Ö other
  24192. values also work but give strange underline
  24193. 4.12
  24194. strikeout [on, off]      Ö
  24195. writes É-æ over characters
  24196. 4.12
  24197. script [off, sub, super]      Ö
  24198. sub and super-scripts
  24199. 4.12
  24200. leader ö<text>ò      Ö overwrites
  24201. tab character
  24202. 4.12
  24203. By using these additional commands, it is possible to generate some very
  24204. useful rulers.
  24205. 4.12
  24206. Simon Callan, Borehamwood.ááA
  24207. 4.12
  24208.  
  24209.  
  24210.  
  24211.  
  24212. Hints and Tips
  24213. 4.11
  24214. Å   Running applications Ö Carrying on from Hugh Eagleæs tip about running
  24215. one application from inside another, on a A310, if you only have
  24216. floppies and have, say, a DTP !Impression disc with !PrinterDM ,
  24217. !FontDraw and !DrawPlus all at the same level, you can tailor the !run
  24218. file of, say, !Impression to load other applications at the same
  24219. directory level, dependant on memory, by using the command
  24220. 4.11
  24221. *desktop <obey$dir>.^.!second_
  24222. 4.11
  24223. application_name
  24224. 4.11
  24225. the <obey$dir> sets the filing system into the first selected appli
  24226. cation (!Impression.) and the .^. takes it back up to the level you were
  24227. at first! The next application then loads on the desktop ready for use.
  24228. Repeat the line with ö!third_ application_nameò and so on.  Ned Abell
  24229. 4.11
  24230. Å   Colour separations Ö Last month, there was a question from John
  24231. Oversby about a colour separation program for !Draw or sprite files. One
  24232. solution is to use DrawPlus (Careware 13), actually drawing different
  24233. colours on different ölayersò. Another possible solution revolves around
  24234. the Impression Business Supplement which provides colour separation for
  24235. PostScript files. However, the ideal solution is a simple öfilterò
  24236. program which takes in a !Draw file and selects all objects of a
  24237. particular colour and puts them into a new !Draw file. Does anyone know
  24238. of such a program? I would be interested in using this for producing
  24239. double-sided printed circuit boards using !Draw. It is easy to write a
  24240. Basic program to do this starting from the !Draw format as specified in
  24241. the PRM Ö I could even do this myself Ö but making it RISC-OS-ified is
  24242. another matter. Brian Cowan
  24243. 4.11
  24244. Impression H & T
  24245. 4.11
  24246. Å   Business Supplement Ö Like many of you I was excited about the release
  24247. of more software for serious users of Impression II. The addition of the
  24248. mail-merge facility is particularly useful. However, I have noticed that
  24249. it suffers from a problem that early versions of Impression had. Namely,
  24250. using the * print facility causes the print to crash after the first
  24251. document with öInvalid number of output bitsò in multiscan mode. The
  24252. problem is resolved by switching to mode 15. Also, beware of forgetting
  24253. to load your RISC-OS printer driver before requesting a print from
  24254. !Importer. This is because it wonæt warn you that you will receive a
  24255. draft copy Ö and worse, you have to close everything down and start
  24256. again.
  24257. 4.11
  24258. Another word of warning to those of you planning to buy the supplement
  24259. thinking that the WordStar loader will solve all your translation
  24260. problems Ö it doesnæt (not on my version, anyway)! If I had thought
  24261. about it, the result one gets is obvious. All the ASCII spaces that mess
  24262. up justification are stripped Ö but this is at the cost of losing a
  24263. space at the end of a line. Consequently, numerous words are joined
  24264. together. If you are prepared to use the spellchecker to separate the
  24265. words again the utility is fine and it does stop those messy spaces
  24266. appearing whenever you make an alteration to the text. However, itæs
  24267. still hard work!  John Brocks
  24268. 4.11
  24269. Å   Font usage Ö Is there a product or would someone like to write an
  24270. application which takes an Impression document and tells you what
  24271. fontsáare required? The reason for this is that some PD software
  24272. includes documentation prepared in Impression format. This is a great
  24273. idea but sometimes strange fonts are used. If you are using Adrian
  24274. Lookæs !FontDir (Shareware 36) then you need to know which fonts are
  24275. needed before Impression is booted up. Brian Cowan
  24276. 4.11
  24277. That should be easy enough. If you want to do it manually, you can save
  24278. the text of an Impression document with styles and look at it in Edit.
  24279. You can search for öfont  ò and look through all the references to
  24280. particular fonts as they occur in the style definitions and as effects
  24281. within the text. Mind you, that will give you the fonts that appear
  24282. within the style definitions regardless of whether those styles have
  24283. actually been used in the document. Anyone want to have a go at writing
  24284. such an application?
  24285. 4.11
  24286. Is anyone interested in / able to convert between the Impression
  24287. Document Description File format and TeX? I think it should be possible
  24288. since both contain the same sort of information. This would be useful
  24289. for scientific applications where many journals accept material on disc
  24290. or by wire in TeX format. Brian Cowan
  24291. 4.11
  24292. Å   Labels and tickets Ö When I was printing video cassette labels onto a
  24293. roll of adhesive labels they were printing too far to the right. I
  24294. failed to understand that !Impression is smart and says, öright, you are
  24295. printing a document 165mm wide. I will print it 82.5mm to the right and
  24296. left of the centre line of the printerò. I have a mark on the case of my
  24297. Citizen 120D printer to align the left hand side of A4 paper, when
  24298. putting in individual sheets but I canæt centre different rolls of
  24299. labels accurately without putting several marks on the case which would
  24300. be confusing so I got round the problem by designing new master pages
  24301. that are always A4 width (210 mm) and creating a frame on that page that
  24302. is the right width for the labels and off centred to the left. I
  24303. continue to put the label roll edge to the mark.
  24304. 4.11
  24305. I then had to change the !Printer DM page size to one 102mm by 210mm
  24306. wide which gives me the the right ögreyingò on the screen as I have
  24307. öPreferencesò, öShow page bordersò, switched on. This prints two perfect
  24308. sets of labels but I still get unwanted form feeds at the end of the
  24309. page! (Example supplied on monthly program disc.)  Ned Abell
  24310. 4.11
  24311. Å   Retaining styles Ö Hugh Eaglesæs question about setting a style in a
  24312. blank Impression frame (Archive 4.9 p11) can be answered in terms of
  24313. ÉPlace holdingæ in the same way as my hint on re-aligning lines starting
  24314. with a different font (Archive 4.8 page 11). Just set the style and type
  24315. a Énullæ character in the frame (i.e. one which is not defined in the
  24316. font you are using) by using Alt and the keypad numbers. (EFF fonts are
  24317. rapidly filling up, making null characters harder to find, but try 136
  24318. or 139.) Bruce Goatly
  24319. 4.11
  24320. Å   Un-deleting Ö As you probably know, you can highlight a passage, type
  24321. over it and thereby replace it. Well, if you have second thoughts
  24322. immediately afterwards, you can restore the original by highlighting the
  24323. replacement passage and typing <ctrl-V>. This deletes the replacement
  24324. altogether rather than cutting it to the clipboard; the clipboard still
  24325. contains the original version. Bruce GoatlyááA
  24326. 4.11
  24327.  
  24328. 4.11
  24329. Help!!!!
  24330. 4.11
  24331. Å   Mac Scanner Ö Does anybody know of software to use a Mac AppleScanner
  24332. with a SCSI interface on an Archimedes? Brian Cowan
  24333. 4.11
  24334. Å   Podule expansion Ö Does anyone know of an expansion box which allows
  24335. more than 4 podules to be attached to an Archimedes computer at any one
  24336. time? A G Duckett, Telford.ááA
  24337. 4.11
  24338.  
  24339. 4.11
  24340.  
  24341.  
  24342.  
  24343. ProTips
  24344. 4.11
  24345. Peter Jennings
  24346. 4.11
  24347. This is a column of hints and tips for users of Protext 5. It is not
  24348. intended as a regular feature to rival PipeLine as there are probably
  24349. not yet enough users of the Archimedes version of Protext to support it.
  24350. Arnor have promised to keep me informed of developments to Protext,
  24351. particularly the eagerly awaited RISC-OS version, and I will pass the
  24352. details on in future issues of Archive, along with any hints or tips
  24353. that pioneering users of this exciting new word processor may care to
  24354. send by way of Paul Beverley.
  24355. 4.11
  24356. In the meantime, here are a few hints of my own plus advice on an
  24357. irritating bug that has emerged from the software since I completed the
  24358. review in last monthæs Archive.
  24359. 4.11
  24360. First the bug, which has suddenly appeared after lying dormant during
  24361. three monthsæ constant use of Protext. It shows itself during attempts
  24362. to save a file, either manually or automatically, with two messages, one
  24363. saying that the file öPROTEXT!Xò or öPROTEXT!Tò cannot be found and the
  24364. other: öError creating fileò. More alarmingly, the text sometimes
  24365. disappears from the screen. Any further attempt to save brings a öFile
  24366. openò message. My description of this as öirritatingò may seem rather
  24367. inadequate but, in fact, it is not disastrous and can be dealt with
  24368. quite easily. When the message about PROTEXT!X appears just type öcloseò
  24369. at the command line, followed by ösò (for save). Your original file name
  24370. will then be offered and pressing <return> will duly save it.
  24371. 4.11
  24372. Arnor have not given me any fix for this fault but have just said,
  24373. rather uncertainly: öWe think we may have solved the problem in the next
  24374. version of Protext.ò Let us hope they have.
  24375. 4.11
  24376. Omissions
  24377. 4.11
  24378. Two strange omissions from Protext, so far, are a function key strip and
  24379. an icon. If you dislike the boring default applications icon, or the
  24380. blank squares representing files, you can always design your own icons,
  24381. using !Paint. First create a directory for them, called !Sprites, inside
  24382. the main !Protext directory. Then design an application icon named
  24383. !protext and a files icon called file_cdf, with additional small
  24384. versions if wanted. Finally, add an initial line to the !Boot file:
  24385. öIconSprites <Obey$Dir>.!Spritesò. If you are not sure how to create
  24386. icons there are instructions in the chapter on öPaintò in the User Guide
  24387. or you can find a set of ready-made sprites in a !Sprites directory on
  24388. this monthæs program disc. You can just copy !Sprites into the !Protext
  24389. directory but do not forget to add the IconSprites line to the !Boot
  24390. file. The ready-mades have a simple öP5ò design, with a border round the
  24391. files sprite, but are colourful enough to be readily identified in a
  24392. desktop directory.
  24393. 4.11
  24394. A do-it-yourself function key strip is also easily made, either using a
  24395. program which provides a template or by starting from scratch with
  24396. Protextæs excellent line drawing facility. One made this way is also on
  24397. this monthæs disc. It has to be printed in two sections, one below the
  24398. other, as Protext can not print down the paper in landscape form. Anyone
  24399. who has a wide-carriage printer can copy the second section beside the
  24400. first by using the Protext öboxò marking facility.
  24401. 4.11
  24402. Line drawing
  24403. 4.11
  24404. When making a grid by line drawing, the natural way is to begin by
  24405. drawing either the horizontal lines or the outside box shape and then
  24406. adding the verticals afterwards. If you do it this way, however, you may
  24407. find the vertical lines going slightly beyond the outside boundaries. To
  24408. correct this, draw the uprights with the up or down arrow key, as
  24409. normal, but use one of the horizontal, left or right, arrow keys for the
  24410. final stroke before reaching the horizontal boundary. The line will then
  24411. turn the corner to make a neat join instead of an intersection. Corners
  24412. are drawn in the same way.
  24413. 4.11
  24414. Although Protext comes with 48 printer drivers, there isnæt one for the
  24415. very popular Panasonic KX-P1081 printer, which I use. The FX80 printer
  24416. driver is suitable for it but will not print line drawings. So the
  24417. function key strip needs to have the IBM9 printer driver loaded and one
  24418. of the printeræs tiny DIP switches changed. These can be found below and
  24419. immediately to the right of the printer head when it is in its öhomeò
  24420. position on the extreme left. Lift up the thin strip of clear plastic
  24421. covering them and use a small screwdriver or similar implement to push
  24422. switch number one, on the extreme left, down (for off). The other
  24423. switches can probably be left as set but if you still have a problem try
  24424. putting either switch six or seven up (for on).
  24425. 4.11
  24426. Hopefully, Arnor will produce a key strip and their own official icons
  24427. when the RISC-OS version of Protext finally appears.
  24428. 4.11
  24429. Obvious when you know
  24430. 4.11
  24431. Finally, a few brief tips of the öitæs obvious when you knowò variety.
  24432. You can find your version number of Protext by pressing <escape> and
  24433. reading the bar above the command line. This also shows you the current
  24434. directory and the selected printer driver.
  24435. 4.11
  24436. The öSwapò line at the top of the colour configuration menu puzzled me
  24437. for a time as it does not seem to be explained anywhere. I eventually
  24438. discovered that selecting it and pressing <return> shows the colours
  24439. used for alternate documents when more than one is loaded.
  24440. 4.11
  24441. It is a good idea to lock the files of templates, such as letter
  24442. headings, to prevent them being overwritten if a document you are
  24443. working on is automatically saved with the templateæs name. If, for any
  24444. reason, you cannot lock the template, load it with the command ömò for
  24445. merge instead of ölò for load. The bar at the top of the screen will
  24446. show öNo fileò and you will be asked for a name before the document is
  24447. saved.ááA
  24448. 4.11
  24449.  
  24450.  
  24451.  
  24452. Hints and Tips
  24453. 4.10
  24454. Å   *Count command Ö In Archive 4.6 p8 the hint about *Count, is only
  24455. partly right. The *Count command only counts data. This means that
  24456. directories indeed donæt contribute, but also that only the amount of
  24457. data in a file is counted. However, all files must be an integer
  24458. multiple of the block-size (1k for D and E format), and for short files
  24459. this makes a huge difference. My 46Mb hard disc has about 8Mb difference
  24460. between space used from *Free and from *Count for these reasons!
  24461. 4.10
  24462. One implication of this is that when you archive a large number of small
  24463. files with !Spark you can save much more disc space than you might
  24464. expect. One thing I would suggest for hard disc users is to copy the
  24465. directory tree using *Copy :4.$ :0 T R, and then archive it, which will
  24466. compress it down to almost nothing. Think of all the time you spend
  24467. setting up the directory structure; this may be more important than
  24468. losing files, most of which you will (should?), after all, have on
  24469. floppies. As an added bonus this also gives you the location of all
  24470. applications, as these are just directories. If (perish the thought) you
  24471. have a disc crash, you can just drag the tree out of the archive and
  24472. onto a new hard disc.  Stephen Burke, Liverpool.
  24473. 4.10
  24474. Å   DataLoad problems? Ö The PRM says that if a DataLoad message isnæt
  24475. acknowledged, the sending task should delete <Wimp$Scrap> and give an
  24476. error. However, I think this is wrong. You arenæt guaranteed that the
  24477. scrap file used is, in fact, <Wimp$Scrap>. One case where this must
  24478. happen is with an application which can both load and save files of the
  24479. same type at the same time; it must not use <Wimp$Scrap> for both, or it
  24480. might get very confused! However, there might be other reasons. I
  24481. therefore think you should remember the name of the file you saved, and
  24482. delete that Ö you get told that it wasnæt a secure file, so this should
  24483. be safe.  Stephen Burke, Liverpool.
  24484. 4.10
  24485. Å   Hard Drive problems Ö BEWARE!!! If you have a fairly old computer Ö a
  24486. 310 or a 440 or even a vintage 410/1 or if you are working in a dusty
  24487. environment and you are putting in a new hard drive, check/replace the
  24488. fan filter. Why? Well, drive suppliers tell us that on more than one
  24489. occasion they have had a computer where the fan filter was blocked up
  24490. with dust, the customer has installed a new drive and not changed the
  24491. filter and, as a result of the lack of airflow, the drive has suffered a
  24492. fatal head crash. So, you have been warned. (Fan filters should be
  24493. available öfrom your local Acorn dealerò or they can be bought from
  24494. N.C.S. as part of an öAnnual Service Kitò Ö including a new pair of
  24495. batteries Ö priced ú3.)
  24496. 4.10
  24497. Å   How long is a line? Ö While editing an old program which I was
  24498. converting from the BBC Master to run on the Archimedes, I came across
  24499. some features of Basic line lengths which may be of interest. The
  24500. program was originally written for the BBC-B with the longest possible
  24501. lines to save space.
  24502. 4.10
  24503. On Page 16 of the ÉBasic User Guideæ issue 1 dated 1988, it says ÉA line
  24504. of Basic can contain up to 238 characters...æ but on page 386 it says
  24505. that ÉAs in a Basic program, the length of a line is limited (by the
  24506. Basic Editor) to 251 characters..æ. This implies that the system has two
  24507. different ideas of what the maximum line length should be, instead of
  24508. one. Unfortunately, the one it uses seems to depend on what you are
  24509. doing.
  24510. 4.10
  24511. My module ARMBasicEdit (version 1 21 August 87) allows the insertion of
  24512. many more than 238 characters in a line. I can get up to 369 before
  24513. there is a warning bell, but then neither <Escape> nor <Return> nor SAVE
  24514. work until there are only the 251 characters left. Programs containing
  24515. lines of length between 239 and 251 apparently run without problems.
  24516. However, if you try editing the lines with Basic loaded, just using the
  24517. Copy key, you find that there is a warning bell after 239 characters,
  24518. (excluding the line number), not after 251.
  24519. 4.10
  24520. Programs with lines longer than 239 characters can be converted to ASCII
  24521. using *SPOOL. However, when you attempt to read them back into a Basic
  24522. program using *EXEC, the lines are truncated to 239, so that the program
  24523. no longer runs. There is a warning bell but the *EXEC process does not
  24524. stop, so not allowing me to find which lines are at fault. I find this
  24525. very frustrating. The file Btest, on the monthly disc, is an example of
  24526. such a program. The file ÉCHECK240æ is a small program which reads a
  24527. file made using *SPOOL which cannot be successfully read back using
  24528. *EXEC. It lists the line numbers which are too long, allowing me to edit
  24529. them with the Basic Editor.
  24530. 4.10
  24531. CHAINöBtestò to see that it runs. Then try
  24532. 4.10
  24533. *SPOOL TEMP
  24534. 4.10
  24535. LIST
  24536. 4.10
  24537. *SPOOL
  24538. 4.10
  24539. *EXEC TEMP
  24540. 4.10
  24541. CHAIN öCHECK240ò
  24542. 4.10
  24543. and reply öTEMPò at the prompt. Kate Crennell, Didcot.
  24544. 4.10
  24545. Å   Printer drivers Ö Further to recent tips about altering the PrData
  24546. file within the printer driver, you can also alter the title of your
  24547. preferred driver and make it the default driver on loading. For example,
  24548. the amendments to !PrinterDM in Archive 4.8 could be made to read öStar
  24549. LC24-10ò by altering the line before the line öprinter number:2ò. The
  24550. default loading is achieved by amending the line öprinter:01ò to
  24551. öprinter:02ò. This line is found towards the end of the data file
  24552. immediately before the line ölocation:1ò. Note that the printer number
  24553. must be padded out with a zero (0). Pressing <select> after loading the
  24554. driver will confirm if your amendments have been correctly made.  Ted
  24555. Lacey, Southampton.
  24556. 4.10
  24557. Å   Printing A5 on an A4 printer Ö If you ask the manufacturers, they say
  24558. it is not possible to put A5 paper through either the Qume (300 d.p.i.)
  24559. or the Canon (600 d.p.i.) Laser Directs Ö or the LBP4æs for that matter
  24560. Ö but it is possible. All you need is a pile of A5 sheets of scrap paper
  24561. sellotaped up into a solid block about ╜ö thick (or ╛ò thick for the
  24562. Canons). You put them at the back of the A4 paper tray and put the A5
  24563. paper, sideways, of course, at the front. The paper usually goes through
  24564. OK but does occasionally stick. All you have to be careful of, presum
  24565. ably, is that you donæt print on the lower half of the (A4) paper that
  24566. is not actually there. Having said that, I have been using A5 paper on
  24567. Qumeæs, Canons and Mac Laserwriters for years and have occasionally left
  24568. the öA5ò tray in when printing A4 without any obvious damage to the
  24569. printers.
  24570. 4.10
  24571. We can now get hold of spare paper trays for Qume (ú66) and Canon LBP4
  24572. (ú57) and Canon LBP8 (ú54)
  24573. 4.10
  24574. (A possible alternative to the paper is a block of wood the same size
  24575. and thickness but I havenæt actually tried it.)
  24576. 4.10
  24577. Å   Psychedelic sound-to-light Ö Whilst playing a Tracker module, it is
  24578. possible to obtain some interesting effects on your monitor by typing
  24579. the following Basic command:
  24580. 4.10
  24581. SYS öOS_UpdateMEMCò,768,1792
  24582. 4.10
  24583. The screen can be returned to normal with either a MODE command or with:
  24584. 4.10
  24585. SYS öOS_UpdateMEMCò,1536,1792
  24586. 4.10
  24587. Rob Swain, Kent
  24588. 4.10
  24589. Å   Render Bender on SCSI hard disc drives revisited Ö In Archive 3.11 p6,
  24590. Neil Berry explains how to use Render Bender on SCSI hard disc drives
  24591. but leaves us with the problem of how to use *KILLADFS. This can be
  24592. achieved by changing all references made to SWI ADFS_Drives (&40242) to
  24593. SWI SCSI_Drives (&403C6). i.e.
  24594. 4.10
  24595. In the ÉRenderæ Basic listing: change the SWI &40242 to &403C6 in line
  24596. 15810
  24597. 4.10
  24598. In ÉAnirouteæ Basic listing: change the SWI &40242 to &403C6 in line
  24599. 6670
  24600. 4.10
  24601. Atle Mjelde Bσrdholt, Norway
  24602. 4.10
  24603. Å   Running one application inside another Ö The comment in Archive 4.9
  24604. page 6 seems to need some amplification. As explained on page 11 of the
  24605. May/June 1991 issue of öThe Archimedeanò from Computer Concepts, if you
  24606. want to run one application from inside the !Run file of another, you
  24607. should first enter the command
  24608. 4.10
  24609. *Desktop Run <sibling task name>
  24610. 4.10
  24611. and then repeat the *Wimpslot command from earlier in the !Run file to
  24612. ensure that there is enough memory available for the main application
  24613. before you run it.
  24614. 4.10
  24615. Thus, for example, to make Impression automatically load a printer
  24616. driver whenever it is run you should edit the !Impress.!Run file by
  24617. inserting two extra lines immediately before the last so that the last
  24618. three lines read:
  24619. 4.10
  24620. Desktop Run [...path...].!PrinterXX
  24621. 4.10
  24622. Wimpslot Ömin xxxK Ömax xxxK
  24623. 4.10
  24624. Run ö<Impression$Dir>.!RunImageò %*0
  24625. 4.10
  24626. The xxxK in the Wimpslot command should be exactly the same as used
  24627. earlier in the !Run file Ö the precise amount of memory needed will vary
  24628. from one version of Impression to another. Hugh Eagle, Horsham.
  24629. 4.10
  24630. Å   Sound improvements Ö A much improved sound, which is also more
  24631. controllable, can be obtained using the standard colour monitor supplied
  24632. with the Archimedes. A 3.5mm jack (Archimedes) to phono (monitor) cable
  24633. is required, and the speaker on the Archimedes should be turned off
  24634. using *SPEAKER OFF.  Sean Kelly, London
  24635. 4.10
  24636. Å   Sound voice changes Ö Among the (many) things that annoy me are those
  24637. professional programmers who alter your Sound Voice for their games
  24638. which otherwise claim to be öRISC-OS Compatibleò. They return you to the
  24639. desktop with their Sound Modules set up as ChannelVoice 1. Not everyone
  24640. likes the WaveSynth-Beep as default voice, and as for some of the sound
  24641. modules or digitised Voice Modules which are then sounded when an error
  24642. occurs, YUK!
  24643. 4.10
  24644. It is quite a simple matter to find out what ChannelVoice the user has
  24645. set up and the program could very easily, before exiting to the desktop,
  24646. restore it using the following code which is available for all program
  24647. mers to use, professional or amateur (please!).
  24648. 4.10
  24649. REM Find the Useræs ChannelVoice 1
  24650. 4.10
  24651. SYS öSound_AttachVoiceò,1,0 to ,user_voice%
  24652. 4.10
  24653.  
  24654. 4.10
  24655. REM Because ChannelVoice 1 now equal to 0, reset
  24656. 4.10
  24657. SYS öSound_AttachVoiceò,1,user_voice%
  24658. 4.10
  24659. REM Rest of program, Wimp Interface, whatever
  24660. 4.10
  24661. *ChannelVoice 1 Totally Fantastic Voice
  24662. 4.10
  24663.  
  24664. 4.10
  24665. REM Program at end, restore user voice
  24666. 4.10
  24667. SYSöSound_AttachVoiceò,1,user_voice%
  24668. 4.10
  24669. David Shepherdson
  24670. 4.10
  24671. Å   Toolkit Plus update Ö Claresæ Toolkit Plus usually produces a ÉBad
  24672. disc addressæ error when you try to edit E format floppy discs. This can
  24673. be rectified by performing the following:
  24674. 4.10
  24675. 1   RMLoad the Toolkit Plus module.
  24676. 4.10
  24677. 2   Type: *Modules <return> and take note of the Épositionæ address of the
  24678. Toolkit Plus module.
  24679. 4.10
  24680. 3   Use *WFIND &EF060240 <return> and ignore the first occurrence (i.e.
  24681. press <ctrl-tab> to go on to the next occurrence).
  24682. 4.10
  24683. 4   Locate the instruction seventeen lines down which reads BCC xxxxx.
  24684. 4.10
  24685. 5   Select Éword modeæ and zero this instruction.
  24686. 4.10
  24687. You should now be able to edit E format discs.
  24688. 4.10
  24689. S Edwards, Wordsley
  24690. 4.10
  24691. Å   Toolkit Plus with SCSI Ö Claresæ Toolkit Plus provides a disc sector
  24692. editor, which refused to work on my SCSI hard disc. A modified Toolkit
  24693. Plus may be produced by using !Edit on the Toolkit Plus module to
  24694. replace all occurrences of ÉADFSæ with ÉSCSIæ before saving the module
  24695. with a new name e.g. SCSITools.
  24696. 4.10
  24697. A drawback is that the modified version will not cope with ADFS
  24698. floppies. Changing the module name (e.g. from ÉToolkit+æ to ÉSCSIToolsæ)
  24699. using !Edit allows the modified and original modules to be present at
  24700. the same time, and changing the disc edit command names allows both ADFS
  24701. and SCSI discs to be edited Ö for instance, !Edit could be used to
  24702. replace ÉAEDITæ in Toolkit+ with ÉWEDITæ in SCSITools.
  24703. 4.10
  24704. Sean Kelly, London
  24705. 4.10
  24706. Impression HintsáandáTips
  24707. 4.10
  24708. Å   Abbreviations Ö I use abbreviations quite a lot such as öimpò for
  24709. Impression and just örò for Archimedes but I often want to say, for
  24710. example öá...using DrawPlus (Careware 13)...ò and although öcaò and öCaò
  24711. are both set up to expand to öCarewareò, using ö(caò doesnæt work. There
  24712. is no easy way round it as far as I know Ö you just have to put ö(caò
  24713. into the abbreviations dictionary to expand to ö(Carewareò.
  24714. 4.10
  24715. Å   Bullets Ö Weæve mentioned that <ctrl-shift-H> produces a bullet but
  24716. since <backspace> (immediately below <F12> and above <\>) produces the
  24717. same ASCII code as <ctrl-H>, you will find that <shift-backspace>
  24718. produces a bullet. Touch typists may well find it somewhat more natural
  24719. than <ctrl-shift-H>.
  24720. 4.10
  24721. Å   Creating tables Ö The release notes issued with Impression II describe
  24722. the new features of version 2.12 but they do less than justice to one of
  24723. those features, namely the capacity to create tables. It is possible to
  24724. vary the width of individual columns and individual rows in a table as
  24725. well as the thickness of the vertical and horizontal lines which form
  24726. the table.
  24727. 4.10
  24728. In addition, the many editing facilities of Impression can be used to
  24729. modify text which has been entered into the table so that the style and
  24730. size of the characters in any öcellò of the table can be varied as
  24731. desired.
  24732. 4.10
  24733. Moreover, in the manner usual with Impression II, another frame can be
  24734. superimposed on any selected part of the table with the effect that
  24735. lines of the table can be covered and will ödisappearò permitting text
  24736. of any size and nature to be introduced and adjusted to appear to be a
  24737. part of the structure of the table.
  24738. 4.10
  24739. In addition to text, any of the superimposed frames can be made graphics
  24740. frames permitting illustrations to be introduced. You can use left hand
  24741. tabulation in the some columns, right hand tabulation in others and
  24742. decimal point tabulation in others.
  24743. 4.10
  24744. Practical matters: First construct the empty table. Then determine which
  24745. cells will be visible in the completed table and enter text into those
  24746. cells, Finally, superimpose other frames as required. Proceeding in this
  24747. order prevents interference with tabulation.
  24748. 4.10
  24749. The usual procedure will be to construct a table of this kind within a
  24750. frame of its own so that it can be moved as a whole to any desired
  24751. position within the document of which it will form a part. Therefore, on
  24752. completion of the table, the various frames of which it is composed
  24753. should be Grouped so that the table occupies a single frame. George
  24754. Foot, Oxted.ááA
  24755. 4.10
  24756.  
  24757. 4.10
  24758.  
  24759. 4.10
  24760.  
  24761. 4.10
  24762. Oak
  24763. 4.10
  24764. From 4.9 page 12
  24765. 4.10
  24766.  
  24767. 4.10
  24768. Lindis International
  24769. 4.10
  24770. From 4.8 page 16
  24771. 4.10
  24772.  
  24773. 4.10
  24774. Computer Concepts
  24775. 4.10
  24776. New artwork
  24777. 4.10
  24778. Coming direct to you, hopefully!
  24779. 4.10
  24780. If not, use old one.
  24781. 4.10
  24782.  
  24783. 4.10
  24784. Computer Concepts
  24785. 4.10
  24786. New artwork
  24787. 4.10
  24788. Coming direct to you, hopefully!
  24789. 4.10
  24790. If not, use old one.
  24791. 4.10
  24792.  
  24793. 4.10
  24794. Graphics Galore on the Cheap!
  24795. 4.10
  24796. Tord Eriksson
  24797. 4.10
  24798. Reading with amazement about the latest version of Ventura Publisher Mac
  24799. that costs a cool ú695 (exclusive VAT!) and so-called Ébudgetæ DTP
  24800. programs for IBMs weighing in at ú70 to ú160, I wonder if we Archimedes
  24801. users really know how fortunate we are when it comes to good, cheap
  24802. software.
  24803. 4.10
  24804. The öbudgetò DTP programs for IBMs canæt even word-process Ö you have to
  24805. use a separate editor, just as you have to do if you do some DTP with
  24806. !Draw....
  24807. 4.10
  24808. Of course, the latest version of Ventura Publisher Mac can print fonts
  24809. in 23╜ size instead of just 23 or 24 point size Ö a revolution no doubt
  24810. but one that almost all DTP and word-processors for our Archimedes
  24811. machines manage easily!
  24812. 4.10
  24813. Archimedes Ö no master of colours!
  24814. 4.10
  24815. There is a difference between modern IBMs and Mac IIæs that puts all
  24816. Acorn computers at a disadvantage, even if it was once hailed as an
  24817. advance over said computers: Colours!
  24818. 4.10
  24819. In terms of colour, both Mac II computers and IBMs with VGA are better
  24820. than Archimedes and the sky is the limit as there are hundreds of
  24821. graphics cards that can be bought that improve things further Ö 24-bit
  24822. colours are available.
  24823. 4.10
  24824. RISC-OS has an upper limit of 8 bits per pixel, 256 colours Ö 24 bits
  24825. per pixel gives 16,777,216 different colours, quite a lot more!.
  24826. 4.10
  24827. For the Archimedes range, the limitations are built-in, through RISC-OS
  24828. and the fixed hardware. (There are some improvements possible with
  24829. hardware add-ons, but nothing major).
  24830. 4.10
  24831. Serious DTP is black & white!
  24832. 4.10
  24833. Fortunately, colour printers are very rare in everyday printing, mainly
  24834. due to the fact that such printers are very costly and/or requires
  24835. skilled staff to attend to them.
  24836. 4.10
  24837. So, for practical purposes, DTP will continue to be a mainly black &
  24838. white affair, maybe with some colour thrown in for good measure on
  24839. covers etc.
  24840. 4.10
  24841. The woes of illustrating....
  24842. 4.10
  24843. Being a former technical illustrator, I am painfully aware of the amount
  24844. of work needed to set text in a circular fashion as on a coin or an
  24845. official seal or make the logo on a fluttering flag look like the real
  24846. thing. Hours and hours of work, or in the case of the flag, take a photo
  24847. of the real thing and trace that with tracing paper....
  24848. 4.10
  24849. If the logo is new, you canæt print it first on a flag, so you try to
  24850. make do with crinkling a piece of paper upon which you put your text or
  24851. logo and take a photo of that....
  24852. 4.10
  24853. All this is now of the past, as long as your logo or text can be
  24854. transformed into a !Draw file.
  24855. 4.10
  24856. First Ö !FontFX
  24857. 4.10
  24858. Let us try an example: There used to be an oil company around this part
  24859. of the world called Caltex. Let us say we are going to do a drawing with
  24860. a flag fluttering with that name on it.
  24861. 4.10
  24862. First we have the text, set in Pembroke:
  24863. 4.10
  24864. To make it more interesting letæs add a shadow, with the shadow in the
  24865. north-east, and make the text itself a black outline filled with a light
  24866. grey and behind it, the dark grey shadow:
  24867. 4.10
  24868.  
  24869. 4.10
  24870.  
  24871. 4.10
  24872.  
  24873. 4.10
  24874. Both these operations are very easy to do with !FontFX as you just click
  24875. on the buttons needed, no previous know-how needed!
  24876. 4.10
  24877. To make this flutter we have to use a couple of other utilities:
  24878. !DrawPlus (or !Draw) and DrawBender.
  24879. 4.10
  24880. Warped universe
  24881. 4.10
  24882. A normal picture is plotted in our brain according to the angle we watch
  24883. the picture from: If we fly above a square field the corners are right
  24884. angle corners (a so-called birdæs-eye view) and if we stand just outside
  24885. the field the angles get very odd indeed Ö their sum is still 360,
  24886. though!
  24887. 4.10
  24888. If a square is wrapped around a cylinder things get much more compli
  24889. cated, especially when seen at an angle Ö an illustratoræs nightmare!
  24890. Not even all CAD programs seems to be able to solve it correctly....
  24891. 4.10
  24892. Secondly Ö make a mould!
  24893. 4.10
  24894. DrawBender manipulates !Draw files by plotting them inside each other:
  24895. Any text that is going to be manipulated has to be in !Draw format. The
  24896. coordinate system öinsideò a square is still square but inside a circle
  24897. it takes on the characteristics of a text printed on a balloon like
  24898. this:
  24899. 4.10
  24900.  
  24901. 4.10
  24902.  
  24903. 4.10
  24904.  
  24905. 4.10
  24906.  
  24907. 4.10
  24908. The first (the circle) is called the mould and the second (the square
  24909. inside a frame) is called the object.
  24910. 4.10
  24911. Due to the way DrawBender works, a real circle couldnæt be used Ö it had
  24912. to be substituted it with a 32-sided polygon and it had to be flipped
  24913. over because paths have to be clockwise to work as moulds in DrawBender
  24914. whereas !Draw and !DrawPlus draw counter-clockwise Ö itæs all very well
  24915. explained in the DrawBender manual!
  24916. 4.10
  24917. Wonderful results!
  24918. 4.10
  24919. Taking the text, we put it on rectangular background, to make the
  24920. outline of the flag as the outline of the mould doesnæt show up on the
  24921. finished result:
  24922. 4.10
  24923. This is now our object! A öflapping flagò is our mould:
  24924. 4.10
  24925. Conclusion
  24926. 4.10
  24927. As the end result shows the effect is quite stunning. This amount of
  24928. manipulation is available to IBM users of course Ö I could recommend
  24929. Express Publisher (ú159.95) as the ölow-costò alternative!
  24930. 4.10
  24931. For Archimedes users the cost is just ú21, including two manuals and
  24932. lots of sample files (available from Ian Copestake Software).ááA
  24933. 4.10
  24934.  
  24935.  
  24936.  
  24937. Hints and Tips
  24938. 4.9
  24939. Å   Beware spaces Ö There is a problem with spaces at the end of OS
  24940. variables:
  24941. 4.9
  24942. If you include in a !Run file code such as the following:
  24943. 4.9
  24944. Set ThisApp$Dir <Obey$Dir>
  24945. 4.9
  24946. Run <ThisApp$Dir>.!RunImage
  24947. 4.9
  24948. then beware that you donæt include a space at the end of the first line!
  24949. If you do, the space will be included in the definition of ThisApp$Dir
  24950. and the second line will cause a öBad File Nameò error. Hugh Eagle.
  24951. 4.9
  24952. Å   PC emulator with an ARM3 Ö The default boot-up process for the ARM3
  24953. performs an RMClear command, killing all RAM resident modules including,
  24954. in particular, the module that drives the ARM3. So, in order, to get the
  24955. PC emulator to take advantage of the ARM3És extra speed you need to
  24956. alter the line in !PC.Genboot.!Config immediately after the one that
  24957. reads öPerform RMClear?ò from öYò to öNò! (Thanks to Martin Coulson of
  24958. Atomwide for this advice.) Hugh Eagle
  24959. 4.9
  24960. Å   Printer tips Ö You can alter the halftone density by editing the
  24961. PrData file within your printer driver (see Archive 4.6 for an example
  24962. of how to find this). For instance, PrinterLJ has lines such as:
  24963. 4.9
  24964. pxres_halftone:300/8
  24965. 4.9
  24966. pyres_halftone:300/8
  24967. 4.9
  24968. so each halftone dot is actually formed of a matrix of 8x8 dots, giving
  24969. a halftone density of 300/8=37.5 dpi. This gives a very coarse effect
  24970. but can produce 65 different grey levels. Altering the lines to:
  24971. 4.9
  24972. pxres_halftone:300/6
  24973. 4.9
  24974. pyres_halftone:300/6
  24975. 4.9
  24976. gives öonlyò 37 grey levels and a dot pitch of 50 dpi. Experiment to see
  24977. what suits your printer best.
  24978. 4.9
  24979. A word of caution. I used !Draw to produce some PCB artwork, printed it
  24980. out using !PrinterLJ on a DeskJet Plus and sent it off... Disaster! The
  24981. size was OK across the width but was 1.5% too small along the length of
  24982. the paper, as was discovered when the finished circuit boards came back.
  24983. Iæd previously had no trouble using an Epson-compatible printer, so it
  24984. may be something to do with the friction feed on the HP slipping, or
  24985. perhaps a slightly thicker paper would have helped. Anyway, if your hard
  24986. copy must be accurate, then check it! Jonathan Oakley, Cambridge.
  24987. 4.9
  24988. Å   Printing * command output Ö Ever since I got my LaserDirect I have
  24989. been laboriously printing the results of *Status, *Dump, etc. by
  24990. directing the output to a file and then printing the file (while
  24991. bemoaning the loss of the <Ctrl-B>, etc. facility α la BBC). However, I
  24992. have just realised that it is easier (and much more in keeping with
  24993. Acornæs RISC-OS standards, I am sure) to open a Task Window in !Edit,
  24994. enter the * command (which puts its output in the window) and then print
  24995. the contents of the window by ösavingò to the printer driver icon. In
  24996. other words, click <menu> on the !Edit icon on the icon bar and use
  24997. Create Ö New Task window. This presents you with a new window with a *
  24998. ready for a command. Type in the command whose output you want listing,
  24999. say, *STATUS. When the listing has finished, click on the window with
  25000. <menu> and go Edit Ö Save and drop the text file produced onto your
  25001. printer icon. Easy! (Then close the window, answering ÉYesæ to ÉKill and
  25002. closeæ.) Hugh Eagle
  25003. 4.9
  25004. Å   Printing via a RISC-OS printer driver from a BASIC program Ö Have you
  25005. ever wondered why your computer has a button called öPrintò that doesnæt
  25006. seem to do anything of the sort?
  25007. 4.9
  25008. At last, applications seem to be appearing that recognise that pressing
  25009. the <Print> key is rather an intuitive way of printing (Impression and
  25010. Poster are two examples). Also, I have discovered that RISC-OS printer
  25011. drivers are not nearly as fearsome as the PRM makes them seem and it is
  25012. actually quite easy to incorporate into your own programæs printing
  25013. routines which are activated by ... wait for it ... the <Print> key.
  25014. Amazing!
  25015. 4.9
  25016. Take the Painting application from the original Arthurian Welcome disc,
  25017. for instance. We still use this in my family because it is so simple,
  25018. but it has always (incredibly) lacked a printing facility. To rectify
  25019. this, proceed as follows:
  25020. 4.9
  25021. Put this line near the beginning of the program (e.g. immediately after
  25022. PROCdesktop (at about line 200):
  25023. 4.9
  25024.  PROCPrintSetup(110000)
  25025. 4.9
  25026. Note: 110,000 bytes is big enough to allow the program to run in mode
  25027. 20. 55,000 would be enough for mode 12.
  25028. 4.9
  25029. Put this line in the WimpPoll loop (e.g. immediately after the ENDCASE
  25030. statement at around line 400):
  25031. 4.9
  25032. IF INKEY-33 THEN PROCPrint(162,232,1274,972)
  25033. 4.9
  25034. Note: INKEY-33 is the crucial function that recognises whether the
  25035. <Print> key is being pressed.
  25036. 4.9
  25037. Finally, put these procedures at the end of the program:
  25038. 4.9
  25039. DEF PROCPrintSetup(SpriteAreaSize%)
  25040. 4.9
  25041. DIM SpriteArea% SpriteAreaSize%
  25042. 4.9
  25043. !SpriteArea%=SpriteAreaSize%
  25044. 4.9
  25045. SpriteArea%!8=16
  25046. 4.9
  25047. SYS öOS_SpriteOpò,9+256,SpriteArea%
  25048. 4.9
  25049. ENDPROC
  25050. 4.9
  25051.  
  25052. 4.9
  25053. DEF PROCPrint(X1%,Y1%,X2%,Y2%)
  25054. 4.9
  25055. SYS öHourglass_Onò
  25056. 4.9
  25057. PrintHandle%=OPENOUT(öprinter:ò)
  25058. 4.9
  25059. SYS öPDriver_SelectJobò,PrintHandle% ,0 TO Old%
  25060. 4.9
  25061. ON ERROR LOCAL PROCPrintError
  25062. 4.9
  25063.  
  25064. 4.9
  25065. MOVE X1%,Y1%:MOVE X2%,Y2%
  25066. 4.9
  25067. SYS öOS_SpriteOpò,14+256, SpriteArea%,öTempSpriteò,1 : REM Get sprite
  25068. 4.9
  25069.  
  25070. 4.9
  25071. DIM RectBlock% 15,Transform% 15,PrintPosition% 7
  25072. 4.9
  25073. RectID%=1
  25074. 4.9
  25075. BackCol%=&FFFFFF00:REM set background colour to white
  25076. 4.9
  25077.  
  25078. 4.9
  25079. REM X1%, Y1%, etc. are the screen coordinates of the area
  25080. 4.9
  25081. to be printed
  25082. 4.9
  25083. !RectBlock%=X1%:RectBlock%!4=Y1%
  25084. 4.9
  25085. RectBlock%!8=X2%:RectBlock%!12=Y2%
  25086. 4.9
  25087.  
  25088. 4.9
  25089. REM No scaling or rotation required
  25090. 4.9
  25091. !Transform%=&10000:Transform%!4=0
  25092. 4.9
  25093. Transform%!8=0:Transform%!12=&10000
  25094. 4.9
  25095.  
  25096. 4.9
  25097. REM Put the bottom LH corner 1.5ö REM from the left AND 5ò from the
  25098. 4.9
  25099. REM bottom of the page
  25100. 4.9
  25101. !PrintPosition%=1.5*72000
  25102. 4.9
  25103. PrintPosition%!4=5*72000
  25104. 4.9
  25105.  
  25106. 4.9
  25107. SYS öPDriver_GiveRectangleò,RectID%, RectBlock%,Transform%,
  25108. PrintPosition%,BackCol%
  25109. 4.9
  25110. SYS öPDriver_DrawPageò,1,RectBlock%, 0,0 TO More%,,RectID%
  25111. 4.9
  25112. WHILE More%
  25113. 4.9
  25114.   SYS öOS_SpriteOpò,34+256
  25115. 4.9
  25116. ,SpriteArea%,öTempSpriteò
  25117. 4.9
  25118. ,X1%,Y1%,0
  25119. 4.9
  25120.   SYS öPDriver_GetRectangleò,, RectBlock% TO More%,,RectID%
  25121. 4.9
  25122. ENDWHILE
  25123. 4.9
  25124. SYS öPDriver_EndJobò,PrintHandle%
  25125. 4.9
  25126. SYS öHourglass_Smashò
  25127. 4.9
  25128. CLOSE#(PrintHandle%)
  25129. 4.9
  25130. ENDPROC
  25131. 4.9
  25132.  
  25133. 4.9
  25134. DEF PROCPrintError
  25135. 4.9
  25136. SYS öPDriver_Abortò,PrintHandle%
  25137. 4.9
  25138. SYS öHourglass_Smashò
  25139. 4.9
  25140. CLOSE#(PrintHandle%)
  25141. 4.9
  25142. ENDPROC
  25143. 4.9
  25144. Hugh Eagle
  25145. 4.9
  25146. Å   Running one application from inside another If youæve ever been
  25147. puzzled by odd behaviour when you try to run one application from inside
  25148. another, the following advice from Mark Neves of Computer Conceptsæ
  25149. Technical Support Department may help.
  25150. 4.9
  25151. My particular problem arose when I tried to make sure that a printer
  25152. driver was loaded by running !PrinterXX from within application Aæs !Run
  25153. file. The result was that application A failed to run and when I quit
  25154. !PrinterXX, an error was reported.
  25155. 4.9
  25156. The answer is that when you run a ösibling taskò from another appli
  25157. cationæs run file the sibling ötakes over the current environmentò until
  25158. it terminates and only then does it return control to the parent task
  25159. (in a manner analogous to a subroutine call).
  25160. 4.9
  25161. The solution is to use the command
  25162. 4.9
  25163. * Desktop <sibling task name>
  25164. 4.9
  25165. rather than *Run.  Hugh Eagle
  25166. 4.9
  25167. Å   öSavingò data from one application to another Ö (This is another of
  25168. those öobvious to those who know itò hints.) If you want to transfer
  25169. data (e.g. text or a sprite or a drawn object) from one RISC-OS
  25170. application to another you donæt have to save it on a disc from
  25171. application A and then load it into application B; all you have to do is
  25172. drag the icon from application Aæs öSaveò box (i.e. the window that
  25173. appears when you choose a Save menu option) into application Bæs window.
  25174. 4.9
  25175. This works with all well behaved (öRISC-OS compliantò) applications,
  25176. e.g. !Edit, !Draw, Impression, !Paint, !Poster, etc. and generally works
  25177. for either the whole contents of a window or for selected items. Hugh
  25178. Eagle
  25179. 4.9
  25180. Å   Sprite plotting and colour translation Ö The ColourTrans section of
  25181. the PRM (pages 1399 to 1424) includes references to a number of SWIæs
  25182. (including, in particular, ColourTrans_SelectTable) which have to be
  25183. called with R1 pointing to the ösource paletteò. Since, according to PRM
  25184. pages 390Ö391, a spriteæs palette data starts 44 bytes after the
  25185. beginning of the sprite, it seems clear that, in order to translate a
  25186. spriteæs palette you simply call the ColourTrans SWI with
  25187. SpritePointer%+44 in R1, doesnæt it? Wrong!!!
  25188. 4.9
  25189. In fact, the palette data in a sprite appears to include 8 bytes for
  25190. each colour with the second 4 bytes duplicating the first 4 (does anyone
  25191. know why this is?) whereas ColourTrans expects only 4 bytes per colour.
  25192. 4.9
  25193. So, before you can translate a spriteæs colours, you need to include
  25194. some code on the following lines:Ö
  25195. 4.9
  25196. PaletteLength%=SpritePointer%!32Ö44
  25197. 4.9
  25198. IF PaletteLength%=0 THEN
  25199. 4.9
  25200.  PalettePointer%=0
  25201. 4.9
  25202. ELSE
  25203. 4.9
  25204.  FOR I%=0 TO PaletteLength%-8 STEP 8
  25205. 4.9
  25206.   Palette%!(I%/2) = SpritePointer%!(I%+44)
  25207. 4.9
  25208.  NEXT
  25209. 4.9
  25210.  PalettePointer%=Palette%
  25211. 4.9
  25212. ENDIF
  25213. 4.9
  25214. Note: The palette data, if any, starts 44 bytes after the beginning of
  25215. the sprite. SpritePointer%!32 contains the number of bytes from the
  25216. beginning of the sprite to the start of the actual sprite pixel data. If
  25217. this equals 44, there is no palette.
  25218. 4.9
  25219. The point of setting PalettePointer% to 0 if there is no palette data,
  25220. is that if the sprite has no palette then, in many cases, (especially if
  25221. the sprite is defined in a 256 colour mode) it makes sense to call
  25222. ColourTrans with R1 set to 0 since ColourTrans will then translate the
  25223. default palette for the spriteæs mode. However ...
  25224. 4.9
  25225. Å   Strange sprite colours Ö Ever since RISC-OS arrived, Iæve been puzzled
  25226. by the odd colours which have appeared when some sprites have been
  25227. plotted by various applications (including Impression, no less). I think
  25228. that, at last, Iæm beginning to understand why. Consider the following
  25229. curious state of affairs:
  25230. 4.9
  25231. Palette details are an optional part of the sprite data format. A lot of
  25232. sprites are created by !Paint. !Paint, by default, creates sprites
  25233. without a palette (presumably on the assumption that, having been
  25234. designed in the Desktop colour scheme, they will be used on the
  25235. Desktop.)
  25236. 4.9
  25237. The PRM (page 1278) recommends that you should use the ColourTrans
  25238. module for best results when plotting or printing a sprite. However,
  25239. although ColourTrans knows how to translate from any given palette and
  25240. from the default palette for any mode, it doesnæt seem to be equipped
  25241. with any means of translating the standard desktop palette of a mode
  25242. other than the current one.
  25243. 4.9
  25244. Therefore, the best that applications can do when faced with a palette-
  25245. less sprite is to tell ColourTrans to assume that the sprite was defined
  25246. in the default palette for its mode. The trouble with this is that it is
  25247. about the worst possible thing that can be done with a sprite defined to
  25248. be used on the Desktop since, for instance, colour 0 which is intended
  25249. to be white, will be translated by ColourTrans, working from the default
  25250. palette, into black! For example, even Impression reverses the colours
  25251. of its standard document icon.
  25252. 4.9
  25253. So, whatæs to be done? As far as I can tell:
  25254. 4.9
  25255. The best advice is to make sure that every sprite has a palette. If this
  25256. isnæt possible then, for plotting sprites on the Desktop, use
  25257. Wimp_ReadPixTrans if a sprite doesnæt have a palette (this is the
  25258. routine that the Wimp manager uses for plotting sprites as icons and
  25259. seems to produce quite acceptable results on the whole) and save
  25260. ColourTrans calls for sprites that do have palettes. For example, follow
  25261. the above palette conversion routine with code something like this:
  25262. 4.9
  25263. SYS öColourTrans_SelectTableò,Mode%, PalettePointer%,-1,-1,ColTable%
  25264. 4.9
  25265. IF PaletteLength%<>0 THEN
  25266. 4.9
  25267.   SYS öOS_SpriteOpò,52+512,Sprites% ,SpritePointer%,200,200,
  25268. Mask%*8,Scale%,ColTable%
  25269. 4.9
  25270. ELSE
  25271. 4.9
  25272.   IF NumberOfColoursInSprite%<63 THEN SYS öWimp_ReadPixTransò, 512,
  25273. Sprites%,SpritePointer% ,,,,,ColTable%
  25274. 4.9
  25275.   SYS öOS_SpriteOpò,52+512,Sprites%, SpritePointer%,200,200,
  25276. 4.9
  25277. Mask%*8,Scale%,ColTable%
  25278. 4.9
  25279. ENDIF
  25280. 4.9
  25281. If youære plotting to a printer, öWimp_ReadPixTransò doesnæt help and I
  25282. donæt think there is any straightforward, foolproof method. (It would be
  25283. possible, I think, to create a block of palette data with the RGB values
  25284. for the colours of the Desktop palette in the relevant mode and then
  25285. feed this into ColourTrans, but this would be a rather tedious process.)
  25286. Hugh Eagle
  25287. 4.9
  25288. Impression HintsáandáTips
  25289. 4.9
  25290. Å   Adding fonts by using search & replace Ö As a mathematics and physics
  25291. teacher, I use a lot of Greek letters and it is rather bothersome to
  25292. have to work through all those menus to reach the effect öGreekò every
  25293. time. Therefore, I use search & replace in a way which (at least in the
  25294. Impression Junior handbook) is not documented:
  25295. 4.9
  25296. I type the text, using the Latin equivalents of the Greek letters (ög-
  25297. Quantò instead of ög-Quantò) then, when I have finished the text, I use
  25298. the following:
  25299. 4.9
  25300.    Find: g-Quant
  25301. 4.9
  25302.    Replace: g-Quant
  25303. 4.9
  25304. Impression does the rest. (Many thanks to Computer Concepts for the
  25305. information!)
  25306. 4.9
  25307. By the way, if you wish to find out how all the other effects are saved
  25308. in an Impression document, there is an easy way to find out: Just take a
  25309. document with lots of effects and save only the text story (öwith
  25310. effectsò). If you then drag the icon of the saved text story onto the
  25311. !Edit icon, the text will appear with all the effects in plain language.
  25312.  Jochen Konietzko, Koeln, Germany
  25313. 4.9
  25314. (Wouldnæt it be easier to use <ctrl-F6> and edit the öGreekò style, go
  25315. down to the bottom where it says öKey short-cutò, click in the box and
  25316. press, say, <ctrl-shift-F9>, then OK it? Then when you want, say, ög-
  25317. Quantò, you type ö<ctrl-shift-F9>g<ctrl-shift-F9>-Quantò.... Oh, I see,
  25318. Impression Junior doesnæt have styles. Oh well, nice try!)
  25319. 4.9
  25320. Å   Cutting invisible text Ö If you have more text in a frame than will
  25321. fit, you get the little red arrow which indicates that some of the text
  25322. is invisible. You could obviously create a new frame, click on the over-
  25323. full frame and then click <adjust> on the new frame but there may still
  25324. be too much for that frame. So, is there any way of marking the
  25325. invisible text so that you can cut it or copy it? The answer is that you
  25326. simply use <ctrl-down> to move the cursor to the (invisible) bottom of
  25327. the text the click <adjust> to indicate the upper limit of the area to
  25328. be marked. Ed.
  25329. 4.9
  25330. Å   Handy hint Ö If you use the Éhandæ to move up or down through a long
  25331. document, you are not limited in your movements to the visible page. In
  25332. other words, if you keep moving the mouse up and up (by repeatedly
  25333. lifting the mouse off the table) or down and down, you just keep moving
  25334. through the document in the desired direction. (This is particularly
  25335. useful if you are a trackerball user!) Ed.
  25336. 4.9
  25337. Å   Importing text files into Impression Ö In the new version of Impres
  25338. sion which CC have just sent me (version 2.11), I have discovered an
  25339. exciting new concept in the Archimedes world Ö öthe Return Stripperò!!
  25340. 4.9
  25341. In the Extensions directory is a new loader module called öLoadReturnò
  25342. which at last seems to deal satisfactorily with the importing of text
  25343. files. Using this, I no longer have to load the file into !Edit then
  25344. change linefeeds into carriage returns before importing. Nor do I have
  25345. to suffer fixed line lengths in the imported text.
  25346. 4.9
  25347. However, I do have two quibbles (some people are never satisfied!):
  25348. 4.9
  25349. Double carriage returns are reduced to single returns, so spaces between
  25350. paragraphs are eliminated (unless you change the style so that it leaves
  25351. such a space Ö which I think is good practice. Ed). I feel it would be
  25352. helpful to be able to set a öpreferenceò to decide whether or not double
  25353. returns are preserved.
  25354. 4.9
  25355. Importing a text file now involves a somewhat tiresome sequence of
  25356. message windows whereby I am asked to accept or reject each of the
  25357. available loader modules in turn. I feel it would be helpful to be able
  25358. to use the öpreferenceò facility either to define which loader is used
  25359. for which filetype or, at the very least, to determine the order in
  25360. which the various loader options are offered to me. Hugh Eagle.
  25361. 4.9
  25362. (All I did was to put the LoadReturn extension into the Auto directory
  25363. in the Impression directory and now when I want files stripping, I use
  25364. !Settype (Shareware 19 or 23) to change them to Acorn data file type
  25365. (&FFD) and they are stripped automatically. Ed.)
  25366. 4.9
  25367. Å   Labels & Tickets Ö Another way of doing tickets and labels is to
  25368. define a new master page which is the right size for what you want to
  25369. create (pretty radical, eh?). öFit lotsò still works, giving you
  25370. multiple tickets per sheet, but youære not restricted to 1% size
  25371. increments which can cause you to miss the boundaries on sticky labels,
  25372. especially where there are three or four across the page width.
  25373. (Brilliant! Why didnæt I think of that? Ed. Ö see below.)
  25374. 4.9
  25375. A similar technique works for cassette inlays. One way is to define a
  25376. single master page 101mm deep and 288mm wide, divided into columns of
  25377. 16, 12, 65, 65, 65 and 65mm; this format will fit two inlays to an A4
  25378. page (assuming zero border width, which will vary between printers), but
  25379. you need to fiddle around with !FontDraw and !Draw (Or use Draw1╜ Ö see
  25380. below. Ed) to get text on the spine of the cassette. Starting with a
  25381. page 288mm deep and 101mm wide gives you the spine text a sensible way
  25382. round, but the four öbodyò pages are then landscape, which you may not
  25383. want.
  25384. 4.9
  25385. Another way is to split the inlay into two chapters; the spine has a
  25386. 101mm wide, 28mm high master page, and the body pages are 65mm by 101mm,
  25387. or vice versa if you want landscape. Then you need to do a bit of
  25388. cutting and pasting by hand, as Impression wonæt print individual pages
  25389. sideways. This is the technique I ended up by using, printing at 141%
  25390. then reducing the pasted-up result from two up on A3 back down by 70% to
  25391. A4, thus enhancing the graphics halftones from 37.5 dpi to 53.6 dpi.
  25392. Iæve included an example ... (Which we have put on the Monthly Program
  25393. Disc. Ed) Jonathan Oakley, Cambridge.
  25394. 4.9
  25395. Å   Labels & tickets Ö Edæs version Ö I have played a bit with Jonathanæs
  25396. ideas and developed them a little. I tried to create some labels (like
  25397. the ones on our Shareware Discs etc which come as 24 to an A4 page) and
  25398. found that his method worked very well. I created a master page that was
  25399. 70mm x 37.125mm (which is 210mm divided by 3 horizontally and 297mm
  25400. divided by 8 vertically). I set a border 3mm wide on all four sides
  25401. because the Laser Direct HiRes can print up to about 2.5mm of the edge
  25402. of the page and I wanted to have a simple line border around my labels.
  25403. I put all my text on the master page including a page number so that I
  25404. could have a serial number on the labels. I then closed the master page
  25405. and created another 23 pages for my document by using <menu> Edit Ö
  25406. Insert new page. I clicked 22 times with <adjust> so that the menu
  25407. stayed on screen and once with <select>. I then pressed <print> and
  25408. clicked on öFit lotsò and then öSetup...ò and then öIgnore page borderò.
  25409. The printout which appeared was almost right but was 1mm too far to the
  25410. right, 1mm too low at the top and the last label was even lower. (Thinks
  25411. hard.... tries various things and then....) The printout was slightly
  25412. too long so I created a slightly shorter master page Ö 70mm x 37.11mm. I
  25413. tried to see if there was any adjustment on the laser printer but
  25414. couldnæt find any so I went to the (new, shorter) master page, clicked
  25415. on the frame and pressed <ctrl-F10> to alter the frame. In the position
  25416. section, I simply increased X from 5 to 6 and reduced Y from 5 to 4 in
  25417. order to move the text on the page 1 mm right and 1 mm up. Bingo! Every
  25418. border on every label was almost exactly 5mm.
  25419. 4.9
  25420. I also had a quick try with Jonathanæs cassette inlay printing and it is
  25421. really very easy with his first method Ö I cheated though by using
  25422. Draw1╜ (Shareware 34). For the spine, all you do is create a new Draw1╜
  25423. document, type in the text you want, change it to whatever font you are
  25424. using, press <menu> Ö Special Ö Text to path and then <menu> Ö Save Ö
  25425. Selection and drop the Draw file produced into the relevant graphics
  25426. frame in your Impression document. Then use <adjust> to drag the picture
  25427. round until it is near enough at right angles to the rest of the text
  25428. (having decided which way you want it to face) and finally press <ctrl-
  25429. F11> (Alter graphic) and set the Angle to exactly 90░ or 270░. (If you
  25430. can remember which way round 90░ or 270░ puts it, then thereæs no need
  25431. to swing it round with <adjust>.) Here is a bit of text that I have just
  25432. inserted. It must have taken me all of 45 seconds to create the frame,
  25433. type in the text, convert it and add it in! (Software to enable me to do
  25434. that on the Mac cost me hundreds of pounds a couple of years ago!)
  25435. 4.9
  25436. Å   öRunningò an Impression document Ö In Alan Highetæs review of !Menon
  25437. on Shareware 38 (Archive 4.8 page 48) he mentions that it did not work
  25438. well with Impression documents since an attempt to örunò one of these
  25439. caused a second copy of Impression to appear on the icon bar.
  25440. 4.9
  25441. I have observed a similar phenomenon in trying to create a front-end for
  25442. Impression which, amongst other things, opens a template document chosen
  25443. by the user. Simply *Running the document results in the loading of a
  25444. new copy of Impression regardless of whether one is already running.
  25445. 4.9
  25446. So, why is it that double-clicking on an Impression document in a Filer
  25447. window will load it into an existing copy of Impression whereas
  25448. örunningò it doesnæt?
  25449. 4.9
  25450. Mark Neves of Computer Conceptsæ Technical Support Department has kindly
  25451. explained why this happens and has pointed to a solution.
  25452. 4.9
  25453. The reason is that what happens when you double click on an icon in a
  25454. Filer window is not simply that the document is örunò. First, the Filer
  25455. broadcasts a Message_DataOpen message inviting other applications to
  25456. open the document, and only if this message is returned unacknowledged
  25457. does it instigate a *Run.
  25458. 4.9
  25459. The solution is a fairly simple program on the following lines:
  25460. 4.9
  25461. REM >!RunImage
  25462. 4.9
  25463. TaskName$=öRunImpDocò
  25464. 4.9
  25465. :
  25466. 4.9
  25467. PROCSetUpWimp
  25468. 4.9
  25469. DocToOpen$=FNReadOSVarVal
  25470. 4.9
  25471. (öDoc$ToOpenò)
  25472. 4.9
  25473. PROCPollLoop
  25474. 4.9
  25475. SYS öWimp_CloseDownò,Taskid% ,&4B534154
  25476. 4.9
  25477. IF NotAcknowledged% THEN OSCLI(öRun ò+DocToOpen$)
  25478. 4.9
  25479. END
  25480. 4.9
  25481. :
  25482. 4.9
  25483. DEF PROCPollLoop
  25484. 4.9
  25485. LOCAL mask%,quit%
  25486. 4.9
  25487. NotAcknowledged%=FALSE
  25488. 4.9
  25489. PROCSendDataOpenMessage
  25490. 4.9
  25491. mask%=0
  25492. 4.9
  25493. quit%=FALSE
  25494. 4.9
  25495. REPEAT
  25496. 4.9
  25497. SYS öWimp_Pollò,mask%,block% TO reason%
  25498. 4.9
  25499. CASE reason% OF
  25500. 4.9
  25501. WHEN 17,18 : IF block%!16=4 THEN quit%=TRUE
  25502. 4.9
  25503.  REM Another task (presumably
  25504. 4.9
  25505.  REM Impression) has acknowledged
  25506. 4.9
  25507.  REM our request to load a file.
  25508. 4.9
  25509. WHEN 19  : NotAcknowledged%=TRUE:quit%=TRUE
  25510. 4.9
  25511.  REM Our request has not been acknowledged.
  25512. 4.9
  25513. ENDCASE
  25514. 4.9
  25515. UNTIL quit%
  25516. 4.9
  25517. ENDPROC
  25518. 4.9
  25519. :
  25520. 4.9
  25521. DEF PROCSendDataOpenMessage
  25522. 4.9
  25523. !block%=256
  25524. 4.9
  25525. block%!12=0:block%!16=5:block%!20=0
  25526. 4.9
  25527. block%!28=0:block%!32=0:block%!36=0
  25528. 4.9
  25529. block%!40=&2000
  25530. 4.9
  25531. $(block%+44)=DocToOpen$
  25532. 4.9
  25533. ?(block%+44+LEN(DocToOpen$))=0
  25534. 4.9
  25535. SYS öWimp_SendMessageò,18,block%,0
  25536. 4.9
  25537. ENDPROC
  25538. 4.9
  25539. :
  25540. 4.9
  25541. DEF PROCSetUpWimp
  25542. 4.9
  25543. DIM block% &1000,errblk% 256
  25544. 4.9
  25545. REM Taskid%=FNWimpInit(200,TaskName$)
  25546. 4.9
  25547. SYS öWimp_Initialiseò,200, &4B534154,TaskName$ TO Version%,Taskid%
  25548. 4.9
  25549. ON ERROR PROCError(TaskName$)
  25550. 4.9
  25551. ENDPROC
  25552. 4.9
  25553. :
  25554. 4.9
  25555. DEF FNReadOSVarVal(varname$)
  25556. 4.9
  25557. LOCAL temp1%,temp2%,length%
  25558. 4.9
  25559. DIM temp1% 100,temp2% 100
  25560. 4.9
  25561. $temp2%=varname$
  25562. 4.9
  25563. SYS öOS_ReadVarValò,temp2%,temp1%, 100,0,3 TO ,,length%
  25564. 4.9
  25565. temp1%?length%=13
  25566. 4.9
  25567. var$=$temp1%
  25568. 4.9
  25569. =var$
  25570. 4.9
  25571. :
  25572. 4.9
  25573. DEF PROCError(TaskName$)
  25574. 4.9
  25575. !errblk%=ERR
  25576. 4.9
  25577. $(errblk%+4)=REPORT$+ö at line ò+ STR$ERL
  25578. 4.9
  25579. errblk%?(4+LEN$(errblk%+4))=0
  25580. 4.9
  25581. SYS öWimp_ReportErrorò,errblk%,1, TaskName$
  25582. 4.9
  25583. SYS öWimp_CloseDownò,Taskid%, &4B534154:END
  25584. 4.9
  25585. ENDPROC
  25586. 4.9
  25587. To use this program, simply set up the OS variable Doc$ToOpen with the
  25588. full pathname of the document and run the program. Hugh Eagle
  25589. 4.9
  25590. Å   Setting a style in an Impression frame Ö Question: how do I set up a
  25591. blank frame containing a predetermined style (for instance, to hold the
  25592. address of the person I am writing to, where I would like to use a
  25593. different font from the one in the body of the letter)? If I put the
  25594. cursor in the frame, then apply the style, then move the cursor
  25595. elsewhere (or save and reload the document) before bringing it back to
  25596. the address frame, and then start typing, the text comes up in the
  25597. Basestyle.
  25598. 4.9
  25599. Answer: If after applying the style, I type anything (for instance a
  25600. couple of carriage returns) in the address frame then the applied style
  25601. seems to be remembered and the address frame works as intended.
  25602. 4.9
  25603. Caution: if I delete the entire contents of the frame the applied style
  25604. is deleted too. So, if I want to blank the frame for reuse I have to
  25605. remember to leave a carriage return or two to preserve the style. Hugh
  25606. Eagle.
  25607. 4.9
  25608. Å   Typesetting Ö We said we would try to find companies willing to do
  25609. typesetting from Impression output. Here are two that we have found. If
  25610. you discover others, ask them to send us details of their services and
  25611. we will publish them. We are particularly interested in those that will
  25612. take Impression files as such rather than PostScript files on MS-DOS
  25613. discs.
  25614. 4.9
  25615. The Type Station in Cardiff offers a full bureau service for bromide or
  25616. film. You create PostScript files and either send them by post on an MS-
  25617. DOS disc or send them c/o BT using a modem. For details, contact Elgan
  25618. Davis on 0222Ö229977.
  25619. 4.9
  25620. Focus Print in Aberdeen can do bromides (PMTæs) from your Impression
  25621. files. Phone Alexander Bisset on 0224Ö592571 ext 211 (or 0224Ö593956
  25622. evenings).ááA
  25623. 4.9
  25624.  
  25625. 4.9
  25626.  
  25627.  
  25628.  
  25629. Hints and Tips
  25630. 4.8
  25631. Å   ARM code errata Ö The following is for all those who have an unshak
  25632. able faith in the integrity of Acornæs code:
  25633. 4.8
  25634. The code given to return from SWI öOS_ BreakPtò on page 736 of the PRMs
  25635. is incorrect. The following works.
  25636. 4.8
  25637. .backtobreak%
  25638. 4.8
  25639.    SWI öOS_EnterOSò
  25640. 4.8
  25641.    ADR R14,breaksave
  25642. 4.8
  25643.    LDMIA R14,{r0-r14 }^
  25644. 4.8
  25645.    LDR R14,[R14,#15*4]
  25646. 4.8
  25647.    ADD R14,R14,#4
  25648. 4.8
  25649.    MOVS PC,R14
  25650. 4.8
  25651. The code given on page 231 of the old BASIC User Guide (under CALL) is
  25652. incorrect. For example, to use MATCH, the line tokenisation routine, the
  25653. following code will work. This has been corrected in the new BASIC User
  25654. Guide.
  25655. 4.8
  25656. .tokenise
  25657. 4.8
  25658.    STMFD R13!,{r14 }
  25659. 4.8
  25660.    ADD R0,R14,#18*4
  25661. 4.8
  25662.    ADR R1,source
  25663. 4.8
  25664.    ADR R2,dest
  25665. 4.8
  25666.    MOV R3,#1
  25667. 4.8
  25668.    MOV R4,#0
  25669. 4.8
  25670.    ADR R14,cominghome
  25671. 4.8
  25672.    MOV PC,R0
  25673. 4.8
  25674. .cominghome
  25675. 4.8
  25676.    LDMFD R13!,{pc }
  25677. 4.8
  25678. .source
  25679. 4.8
  25680.    EQUS STRING$(90,CHR$(0))  ALIGN
  25681. 4.8
  25682. .dest
  25683. 4.8
  25684.    EQUS STRING$(90,CHR$(0))  ALIGN
  25685. 4.8
  25686. J Heher, South Africa
  25687. 4.8
  25688. Å   BASIC printing to a DeskJet Plus Ö The April issue of Archive
  25689. contained a Help!!! plea about printing from Archimedes BASIC to a
  25690. DeskJet 500. I have a DeskJet Plus and have successfully printed from
  25691. BASIC. For reference, my printer is normally set with the function
  25692. switches 6 and 8 in bank A and 2 in bank B up, all others are down.
  25693. 4.8
  25694. To print, I use the command VDU 2,1,27,1,38, 1,107,1,49,1,71 (see Line
  25695. Termination in Appendix 8.19 of the Owneræs Manual). Here is an example
  25696. of how it can be used:
  25697. 4.8
  25698.  10 REM >PrintTest
  25699. 4.8
  25700.  20 VDU 2,1,27,1,38,1,107,1,49,1,71
  25701. 4.8
  25702.  30 PRINT öTEST OF NORMAL PRINTINGò
  25703. 4.8
  25704.  40 VDU 1,27,1,38,1,100,1,49,1,68
  25705. 4.8
  25706.  50 PRINT öThis is underlinedò
  25707. 4.8
  25708.  60 VDU 1,27,1,38,100,1,64
  25709. 4.8
  25710.  70 VDU 1,27,1,40,1,115,1,51,1,66
  25711. 4.8
  25712.  80 PRINT öThis is BOLD printingò
  25713. 4.8
  25714.  90 VDU 1,27,1,40,1,115,1,48,1,66
  25715. 4.8
  25716. 100 VDU 1,27,1,40,1,115,1,50,1,48, 1,72
  25717. 4.8
  25718. 110 PRINT öThis is 20 PITCHò
  25719. 4.8
  25720. 120 VDU 1,27,1,69 :REM reset printer
  25721. 4.8
  25722. 130 VDU 3
  25723. 4.8
  25724. 140 END
  25725. 4.8
  25726. A Kitchenside, Weybridge
  25727. 4.8
  25728. Å   Big memory tips Ö As a footnote to my own article in last monthæs
  25729. Archive on making best use of machines with more than 1M memory, Iæd
  25730. like to add one more tip. I was reminded by a review of Protext, which
  25731. noted that the current version does not multi-task, that my eleventh tip
  25732. might have been, öboycott non multi-tasking packagesò. Since, with 1M,
  25733. you couldnæt really multi-task two significant applications, this was
  25734. not a problem. Now, itæs a real pain in the neck not to be able to have
  25735. several applications with simultaneously active windows, much of the
  25736. power and ease-of-use of RISC-OS is being un-used and itæs annoying
  25737. knowing that 3M of your upgrade is being wasted!
  25738. 4.8
  25739. So, unless thereæs a really good reason such as a time-critical sound
  25740. sampler or video screen grabber, I suggest that we boycott such
  25741. packages. Then, software producers would have to bring them up to date
  25742. and not try to palm us off with öArthur programs with !Run and !Boot
  25743. filesò. In an ideal world, software sellers would refuse to stock them
  25744. but at least they could be marked as such, perhaps indicating their
  25745. antiquity by listing them in a suitable script? Stuart Bell, Brighton.
  25746. 4.8
  25747. Å   C book Ö I was recommended a good C book which I used on a C short
  25748. course I attended: The Waite Groupæs öNew C Primer Plusò, First Edition
  25749. 1990, editor Howard W Sams & Co, ISBN 0Ö672Ö22687Ö1. It covers ANSI C,
  25750. UNIX, Microsoft C and Turbo C.   S. Stel, Netherlands.
  25751. 4.8
  25752. Å   ChangeFSI update Ö A new version of ChangeFSI v0.79 is available from
  25753. Acorn Direct for ú19.95. This will handle more image formats than would
  25754. v0.69: Degas PI1, PI2 & PI3, !Translator Clear, MacPaint 579x720x1 bit/
  25755. pixel, ZSoft .PCX, Windows3 .BMP, Pineapple 16 bit/pixel, UNIX rle, PC
  25756. TGA. Unfortunately it will not run from the desktop under !ChangeFSI
  25757. (Shareware Disc 21) as is. This is because version 0.79 is 94 Kbytes
  25758. long, compared with 74K for v0.69. The solution is to edit the !Run file
  25759. of !ChangeFSI and increase the WimpSlot from 128K to 160K. All is then
  25760. well. A Quayle, Chester
  25761. 4.8
  25762. Å   C txt library Ö This idea was inspired by the article ÉIntroduction to
  25763. Cæ ù Part 5, in Archive 3.6. This gave a complete RISC-OS application
  25764. using the libraries supplied with Release 3 of Acorn C. In particular,
  25765. it used the Étxtæ library to provide a window to display text generated
  25766. by the sample program. This requires a minimum of effort by the
  25767. programmer since the library looks after most of the problems.
  25768. 4.8
  25769. Although it works as described, it has two major disadvantages. The
  25770. first is the slow speed during text generation. The second is the
  25771. operation of the window controls. In particular, the cursor control keys
  25772. cannot be used to move the text through the window, the close icon has
  25773. no effect and the vertical scroll bars can only be dragged. Here are
  25774. some techniques which overcome these problems.
  25775. 4.8
  25776. Improved text generation speed turns out to be a very simple modifi
  25777. cation since the cause of the slow operation is the redrawing of the
  25778. window for every item added to the text buffer using, for example, the
  25779. txt_insertstring function. Two extra lines are required; the first turns
  25780. off the display updates when text generation starts and the second turns
  25781. it back on when the operation is complete. The lines shown below should
  25782. be inserted immediately after the visdelay_begin() statement and
  25783. immediately before the visdelay_ end() statement in the original program
  25784. function sysvars_to_text().
  25785. 4.8
  25786. /* turn off display update */
  25787. 4.8
  25788. txt_setcharoptions(t, txt_DISPLAY, FALSE);
  25789. 4.8
  25790.  
  25791. 4.8
  25792. /* turn on display update */
  25793. 4.8
  25794. txt_setcharoptions(t, txt_DISPLAY, TRUE);
  25795. 4.8
  25796. Improving text window control requires rather more code but again the
  25797. principle is fairly straightforward. Firstly an event handler has to be
  25798. registered for the text window following its successful creation by the
  25799. txt_new() function using the following statement:
  25800. 4.8
  25801. /* register the text window event handler */
  25802. 4.8
  25803. txt_eventhandler(t, user_txevent, NULL);
  25804. 4.8
  25805. This registers the function user_txevent which will be called to process
  25806. text window events.
  25807. 4.8
  25808. The function itself has to process all the events which the user
  25809. requires. A sample function is given below which is commented to show
  25810. which events are being processed. The keyboard key macro definitions
  25811. given in Éakbd.hæ are used for consistency but, in addition, the ÉHomeæ
  25812. key must also be defined using a macro as this is omitted from Éakbd.hæ.
  25813. The actual key values required are defined in the PRM, page 1198 and the
  25814. macro definitions are given in file Éakbd.hæ. Note, however, that the
  25815. definitions given for both akbd_ PageUpK and akbd_PageDownK are wrong so
  25816. I have not used these but used their correct definition in the following
  25817. code. The value txt_ EXTRACODE is added to the key value to represent
  25818. the equivalent window operation. A full list of these is given on page
  25819. 325 of the ANSI C Release 3.
  25820. 4.8
  25821.  
  25822. 4.8
  25823. #include öakbd.hò
  25824. 4.8
  25825.  
  25826. 4.8
  25827. #define HOME        (30)
  25828. 4.8
  25829.  
  25830. 4.8
  25831. /***********************************
  25832. 4.8
  25833. user_txevent    text window event handler
  25834. 4.8
  25835.         t            text object
  25836. 4.8
  25837.         h            event handle
  25838. 4.8
  25839. ***********************************/
  25840. 4.8
  25841. void user_txevent(txt t, void *h)
  25842. 4.8
  25843. {lines ; /* number of lines in window */
  25844. 4.8
  25845.  
  25846. 4.8
  25847.  h = h;
  25848. 4.8
  25849.  while (txt_queue(t) > 0)
  25850. 4.8
  25851.  {number of lines visible in window */
  25852. 4.8
  25853.   lines = txt_visiblelinecount(t);
  25854. 4.8
  25855.  
  25856. 4.8
  25857.   /* process the next user event code */
  25858. 4.8
  25859.   switch (txt_get(t))
  25860. 4.8
  25861.   {+ akbd_Fn+127:
  25862. 4.8
  25863.     /* close window icon */
  25864. 4.8
  25865.     txt_hide(t);
  25866. 4.8
  25867.     break;
  25868. 4.8
  25869.  
  25870. 4.8
  25871.    case akbd_UpK:
  25872. 4.8
  25873.    case txt_EXTRACODE + akbd_UpK:
  25874. 4.8
  25875.    case txt_EXTRACODE + akbd_Sh + akbd_Ctl + akbd_UpK:
  25876. 4.8
  25877.     /* scroll up one line */
  25878. 4.8
  25879.     txt_movevertical(t, ù1, TRUE);
  25880. 4.8
  25881.     break;
  25882. 4.8
  25883.  
  25884. 4.8
  25885.    case akbd_DownK:
  25886. 4.8
  25887.    case txt_EXTRACODE + akbd_DownK:
  25888. 4.8
  25889.    case txt_EXTRACODE + akbd_Sh + akbd_Ctl + akbd_DownK:
  25890. 4.8
  25891.     /* scroll down one line */
  25892. 4.8
  25893.     txt_movevertical(t, 1, TRUE);
  25894. 4.8
  25895.     break;
  25896. 4.8
  25897.  
  25898. 4.8
  25899.    case akbd_Sh + akbd_UpK:
  25900. 4.8
  25901.    case txt_EXTRACODE + akbd_Sh + akbd_UpK:
  25902. 4.8
  25903.     /* scroll up one page */
  25904. 4.8
  25905.     txt_movevertical(t, -lines, FALSE);
  25906. 4.8
  25907.     break;
  25908. 4.8
  25909.    case akbd_Sh + akbd_DownK:
  25910. 4.8
  25911.    case txt_EXTRACODE + akbd_Sh + akbd_DownK:
  25912. 4.8
  25913.     /* scroll down one page */
  25914. 4.8
  25915.     txt_movevertical(t, lines, FALSE);
  25916. 4.8
  25917.     break;
  25918. 4.8
  25919.  
  25920. 4.8
  25921.    case akbd_Ctl + akbd_UpK:
  25922. 4.8
  25923.    case HOME:
  25924. 4.8
  25925.     /* move to start of text */
  25926. 4.8
  25927.     txt_setdot(t, 0);
  25928. 4.8
  25929.     break;
  25930. 4.8
  25931.  
  25932. 4.8
  25933.    case akbd_Ctl + akbd_DownK:
  25934. 4.8
  25935.    case akbd_Sh + akbd_CopyK:
  25936. 4.8
  25937.     /* move to end of text */
  25938. 4.8
  25939.     txt_setdot(t, txt_size(t));
  25940. 4.8
  25941.     break;
  25942. 4.8
  25943.  
  25944. 4.8
  25945.    default:
  25946. 4.8
  25947.     break;
  25948. 4.8
  25949.   }
  25950. 4.8
  25951.  }
  25952. 4.8
  25953.  return;
  25954. 4.8
  25955. }
  25956. 4.8
  25957. David Scott, Stockport
  25958. 4.8
  25959. Å   Connection problems Ö If you are having connection problems with RS423
  25960. connectors, or video or printer Ö or a dongle, it may be because the
  25961. plugs are not Égoing homeæ properly into the sockets on the back of the
  25962. computer. I have noticed this particularly on A540æs, but it could also
  25963. occur on other Archimedes computers. This may be because the fixing
  25964. pillars either side of the socket are too high. The solution it to take
  25965. a pair of pliers (or a box spanner if you have a suitable sized one) and
  25966. remove each of the pillars in turn, take off the washer and screw the
  25967. pillar back in. That extra millimetre can make all the difference.
  25968. 4.8
  25969. Å   CPC monitor Ö When my multisync died on me suddenly and I was forced
  25970. to make do with what I had Ö a well worn Amstrad CPC green screen
  25971. monitor. In practice it was fairly easy to connect the six-pin CPC
  25972. connector to the nine-pin connector on the A3000:
  25973. 4.8
  25974.    Archimedes      CPC
  25975. 4.8
  25976.    1, 2 & 3   Ö   6
  25977. 4.8
  25978.    6, 7, 8 & 9   Ö   5
  25979. 4.8
  25980.    5   Ö   4
  25981. 4.8
  25982. Naturally, it is impossible to use the multisync modes but it certainly
  25983. is almost as sharp a picture on the tube as on my multisync and much
  25984. cheaper. If your main interest is games I wouldnæt recommend it but for
  25985. most business uses it is perfectly all right. I guess you could get a
  25986. second hand green CPC monitor for next to nothing in the UK as many
  25987. owners have exchanged them for the new CPC monitors. Ask your local
  25988. dealer! A spare monitor could come in handy any day! Tord Eriksson,
  25989. Sweden.
  25990. 4.8
  25991. Å   !Edit Ö For what seems like an eternity I have been wrestling with the
  25992. problem of importing text from a wordprocessor (in my case View). What I
  25993. wanted to do was free the text from newline characters in order that, on
  25994. loading it into Ovation, it could be formatted to new column width, in
  25995. whatever point size, without the newline control code producing extra
  25996. linefeeds. At the same time, it should retain the carriage returns
  25997. marking the paragraphs and multi-line spacing. This way I did not lose
  25998. all the style. What follows is how I do it . It might seem obvious but
  25999. it could help someone who is as thick as me. If I have missed the point
  26000. would some kind person tell me before I go mad.
  26001. 4.8
  26002. After loading your text into !Edit, go through the text ensuring that
  26003. there are double returns at the end of each paragraph and on multiple
  26004. line text like program listings or poetry.
  26005. 4.8
  26006. My technique is firstly to change double returns into something which is
  26007. unlikely to appear elsewhere in the text, thus:
  26008. 4.8
  26009. Press <F4> to select Find
  26010. 4.8
  26011. In the Find dialogue box enter  \n\n <return>
  26012. 4.8
  26013. In the Replace dialogue box enter  ZCZC<return>
  26014. 4.8
  26015. Click on the Magic Character box
  26016. 4.8
  26017. Click on the Go box
  26018. 4.8
  26019. Click on End of File Replace
  26020. 4.8
  26021. Click on Stop
  26022. 4.8
  26023. Press <ctrl-up> to move the cursor to the top
  26024. 4.8
  26025. Now, to replace the single returns:
  26026. 4.8
  26027. Press <F4> to select Find
  26028. 4.8
  26029. In the Find dialogue box enter  \n <return>
  26030. 4.8
  26031. In the Replace dialogue box press <space>
  26032. 4.8
  26033. Click on Go
  26034. 4.8
  26035. Click on End of File Replace
  26036. 4.8
  26037. Click on Stop
  26038. 4.8
  26039. Press <ctrl-up>
  26040. 4.8
  26041. Then, to restore the double returns to single ones:
  26042. 4.8
  26043. Press <F4> to select Find
  26044. 4.8
  26045. In the Find dialogue box enter  ZCZC<return>
  26046. 4.8
  26047. In the Replace dialogue box enter \n <return>
  26048. 4.8
  26049. Click on Go
  26050. 4.8
  26051. Click on End of File replace
  26052. 4.8
  26053. Click on Stop
  26054. 4.8
  26055. You should have your text with the paragraph and multi-line spacing
  26056. intact. (Simplified from a hint sent in by R Follett, Winnersh, Berks.)
  26057. 4.8
  26058. Å   Improving sound quality Ö Further to the comments by Jeremy Mears
  26059. (Archive 4.7 p 21) there is no need, on the A3000, to actually solder to
  26060. the motherboard. You can make contact to the appropriate resistors using
  26061. micro test clips (Tandy Ö ú1.50 for four). This would, I suppose, still
  26062. invalidate the warranty but is less obvious than blobs of solder on the
  26063. p.c.b.! To get access to the resistors, you have to remove the disc
  26064. drive by unscrewing it from underneath. R86 is under the keyboard side
  26065. of the drive whereas R99 is under the middle of the drive. Pin 1 of the
  26066. expansion port is the furthest right (looking from the keyboard side of
  26067. the computer). Gerald Williams, Aldershot.
  26068. 4.8
  26069. Å   Multiple height and width text printing Ö I know that the emphasis
  26070. these days is on programs which multi-task and use mode 12 on the
  26071. desktop but not every program is suitable for this and some of these
  26072. programs require larger than usual height characters.
  26073. 4.8
  26074. I am (slowly) developing a word game for the Archimedes, from one I
  26075. wrote last year on my Model B. The öBò version uses mode 2, with double
  26076. height routines written in machine code for speed. The original version
  26077. of this code was quite öillegalò and would not work on a Master but it
  26078. was fast! With it, I could also have text printed 3 or even 4 times
  26079. normal height just as quickly. However, I am new to the Archimedes and
  26080. ARM code is currently beyond me, so after trying various routines in
  26081. BASIC I came across VDU23,17,7. This gives characters at any height and
  26082. any width and is very fast! I can even get half width which gives the
  26083. impression of mode 1 characters in mode 2. Also, it works in most Screen
  26084. modes (except 3, 6 & 7).
  26085. 4.8
  26086. Iæve put together a short routine which demonstrates how easy and fast
  26087. this routine is. To use it, all you have to do is append the PROCedure
  26088. to your program and call it with the colour you wish it to appear in,
  26089. the X & Y positions, the height and width of the characters and the
  26090. Text$ Ö the routine will do the rest! One point to bear in mind,
  26091. however, is that text is printed using the graphic cursor, i.e. under
  26092. VDU 5 and MOVE or PLOT, rather than the text cursor and VDU 31, X%,Y%.
  26093. 4.8
  26094. Even though this demonstration program is about 20 lines long, the only
  26095. bits you need are in PROCtext(colour, X_co_ord, Y_co_ord, Height, Width,
  26096. Text$). The function FNvdu simply returns the text width of the screen
  26097. mode window in use and this is used to check if lines are too long in
  26098. the first line of PROCtext. The second line in PROCtext is personal as I
  26099. like being able to centralise text without effort! To do so, just set X%
  26100. to -1. The %110 sets bits 1 and 2 so that both characters and spacing
  26101. are altered at the same time. %100 sets spacing, while %010 will alter
  26102. just character sizes. It is also possible to use 0.5 as Height or Width
  26103. but that works better in öchunkyò modes, like 2 rather than 12. When the
  26104. width is set to an odd number, the öauto-centralisingò is sometimes a
  26105. little off so you may prefer to set up the X co-ord manually.
  26106. 4.8
  26107. REM >$.Height/Wid.!RunImage
  26108. 4.8
  26109. :
  26110. 4.8
  26111. DIM block% 12, output% 12
  26112. 4.8
  26113. MODE12:COLOUR3
  26114. 4.8
  26115. :
  26116. 4.8
  26117. PROCtext(1,-1,1,2,3,öMulti Height & Width!ò)
  26118. 4.8
  26119. PROCtext(2,-1,4,2,1,öDouble Height, Normal Widthò)
  26120. 4.8
  26121. PROCtext(3,-1,7,1,2,öNormal Height, Double Widthò)
  26122. 4.8
  26123. PROCtext(4,-1,10,3,3,ö3 * 3 Formatò)
  26124. 4.8
  26125. PROCtext(5,-1,15,4,1,öRidiculous! 4 X 1 !!ò)
  26126. 4.8
  26127. PROCtext(6,-1,20,1,1,öYou should reset the height & width
  26128. 4.8
  26129.  before finishingò)
  26130. 4.8
  26131. PROCtext(6,-1,21,1,1,öbut as it stands the PROCedure will
  26132. 4.8
  26133. do this anywayò)
  26134. 4.8
  26135. END
  26136. 4.8
  26137. :
  26138. 4.8
  26139. DEFPROCtext(C%,X%,Y%,H,W,T$)
  26140. 4.8
  26141. F%=FNvdu
  26142. 4.8
  26143. IF F%-(LENT$*W)<=0 THEN ERROR 300,öLine too longò
  26144. 4.8
  26145. GCOL C%
  26146. 4.8
  26147. Y%=1000-(Y%*32)
  26148. 4.8
  26149. IF X%=-1 THEN X%=(F%-LENT$*2)/(W*2)
  26150. 4.8
  26151. IF W=1 THEN X%=(F%-LENT$)/4
  26152. 4.8
  26153. X%=X%*32
  26154. 4.8
  26155. VDU 23,17,7,%110,W*8;H*8;0;
  26156. 4.8
  26157. VDU 5,25,4,X%;Y%;
  26158. 4.8
  26159. PRINT T$
  26160. 4.8
  26161. VDU 4,23,17,7,%110,8;8;0;
  26162. 4.8
  26163. ENDPROC
  26164. 4.8
  26165. :
  26166. 4.8
  26167. DEF FNvdu
  26168. 4.8
  26169. !block%=256
  26170. 4.8
  26171. block%!4=-1
  26172. 4.8
  26173. SYSöOS_ReadVduVariablesò,block%,
  26174. 4.8
  26175. output%
  26176. 4.8
  26177. =!output%
  26178. 4.8
  26179. Å   Off screen desktop windows Ö Normally, the filer and switcher windows
  26180. are forced to stay within the confines of the screen but, by altering
  26181. their template files, it is possible to make them move Éoff screenæ and
  26182. thus help to reduce window Éclutteræ.
  26183. 4.8
  26184. To do this, you have to copy the window templates from the DeskFS to a
  26185. directory called Templates. First, create a directory called Templates
  26186. in the root directory of your harddisc or Éworkdiscæ and then type the
  26187. following:
  26188. 4.8
  26189. *deskfs
  26190. 4.8
  26191. *copy templates.filer  scsifs::scsidisc4.$.templates.filer
  26192. 4.8
  26193. *copy templates.switcher  scsifs::scsidisc4.$.templates.filer
  26194. 4.8
  26195. (You can also copy netfiler, palette and wimp windows across if
  26196. required.)
  26197. 4.8
  26198. Load the window template data into !FormEd (Shareware Disc 20) and set
  26199. the Éno boundsæ option for each window. Then, edit your disc !boot file
  26200. to include the following line:
  26201. 4.8
  26202. Set Wimp$Path scsifs::scsidisc4.
  26203. 4.8
  26204. (or whatever your system is!) Donæt forget the full stop at the end.
  26205. This points Wimp$Path in the direction of the updated windows.
  26206. 4.8
  26207. Finally re-boot your machine to see the result!  M Roscoe, Ealing
  26208. 4.8
  26209. Å   PrinterDM with the Star LC24Ö10 Ö I was interested to see the note on
  26210. !PrinterDM and the LC24-10 in Marchæs edition of Archive. May I draw
  26211. your attention to the öHint and Tipò which I had published in the March
  26212. edition of Risc User on the same subject but concerning a different
  26213. problem. I was initially disappointed in the results I obtained with
  26214. Impression Junior (and from the Ovation test disc and, to a lesser
  26215. extent, !Draw printouts). This was due to some lines of text having a
  26216. marked öslewedò effect. After speaking to Star, and much sleuthing, I
  26217. tracked down the problem to the very same line in the PrData file of
  26218. !PrinterDM (version 1.12). There is apparently some incompatibility
  26219. between the Star and the Epson LQ800. The former does not like the özero
  26220. absolute tabò command used to obtain the CR without LF. The solution was
  26221. to substitute the commands used in the FX80 module, although modified to
  26222. use the correct line feed command for 24 pin printers. With my version
  26223. of !PrinterDM I have not experienced any squashed text with the 24/180
  26224. inch feed (could the writer have been in IBM mode where the command
  26225. gives n/216 inches rather than n/180 inches?) but the bigger feed
  26226. suggested in Marchæs tip could equally well be used. The modified line
  26227. is as follows:
  26228. 4.8
  26229. line_epilogue ö<27>A<0><13><27>2<27>J<24>ò
  26230. 4.8
  26231. Iæm surprised that this matter has not previously been commented on,
  26232. especially as I think it also applies to the XB24-10.  A.F. Taylor,
  26233. Poole
  26234. 4.8
  26235. Å   Quattro to Schema transfer Ö To move data files from Quattro, first
  26236. save the file with a WKI extension. Then you can use Schemaæs !sch123 to
  26237. translate the file into Schema format. This method leaves all sorts of
  26238. spurious bits and pieces which have to be edited out by hand but it does
  26239. work.  M Green, Devon
  26240. 4.8
  26241. Å   Quitting First Word Plus Ö If you quit First Word Plus (release 2)
  26242. from the task manager while a text file is loaded, you will be thrown
  26243. out of the desktop. If other applications are running that may object
  26244. e.g. Draw, Paint, etc, they will announce what is about to happen and
  26245. give you a chance to prevent it. Otherwise you will lose any files that
  26246. you may have been working on in First Word Plus.     R Bunnett,
  26247. Swanley
  26248. 4.8
  26249. Å   Reading disc names Ö For those software writers who need to check that
  26250. the user has inserted an appropriate disc in the disc drive the
  26251. following function returns the name if the disc currently inserted:
  26252. 4.8
  26253. DIM block% 5
  26254. 4.8
  26255. :
  26256. 4.8
  26257. DEF FNdiscname
  26258. 4.8
  26259. SYS öOS_GBPBò,5,,block%
  26260. 4.8
  26261. ?(block%+?block% +1)=13
  26262. 4.8
  26263. =$(block%+1)
  26264. 4.8
  26265. M Sawle, Hampshire
  26266. 4.8
  26267. Å   !Schema VAT rate Ö New spreadsheets are created with various user
  26268. names available, one of which is öVatò. To change this from 0.15 to
  26269. 0.175, look in the !Schema directory and then in the Menu directory and
  26270. you should find a file called StartUp. This has a write-lock on it so
  26271. you will have to use ÉAccessæ off the filer menu to enable it to be
  26272. changed. At the end of this file are a number of lines that start with
  26273. Éputusnæ, the first of which is the Vat rate which simply needs to be
  26274. changed before the file is again saved and the write-lock access
  26275. restored. Ian Hamilton, Harrow.
  26276. 4.8
  26277. Å   Spaced filenames Ö If you want a <space> in a disc or file name, use a
  26278. hard space. This is available by pressing either <alt><1><6><0> or
  26279. <alt><space>. You should note that if you do use it then you canæt use
  26280. the copy key on a catalogue because the Archimedes thinks that the
  26281. character is a normal space (which is illegal in a filename). E Hughes,
  26282. Derbyshire
  26283. 4.8
  26284. Å   Twin World cheats Ö The file SavedGame can be edited using !Edit to
  26285. cheat. Byte values of interest include:
  26286. 4.8
  26287. Byte 1 = Level (Maximum = 22 = &16)
  26288. 4.8
  26289. Byte 4 = Red Spells (Maximum 99 = &63)
  26290. 4.8
  26291. Byte 5 = Blue Spells (Maximum 99 = &63)
  26292. 4.8
  26293. Byte 6 = Green Spells (Maximum 99 = &63)
  26294. 4.8
  26295. Bytes 8-11 = Score, low byte first. (Maximum = 999999 = &F423F )
  26296. 4.8
  26297. Byte 12 = Lives (Maximum = 9 or 10 = &9 or &0A)
  26298. 4.8
  26299. Remember all value are in hex, so use the magic character option in
  26300. !Editæs Find.  Stuart Turgis
  26301. 4.8
  26302. Å   TwinWorld hints
  26303. 4.8
  26304. Ö Owls in the forest can be killed by jumping up and firing.
  26305. 4.8
  26306. Ö Similarly, on some occasions you will have to jump, but fire on the
  26307. way down to hit denizens close to you.
  26308. 4.8
  26309. Ö Jump between worlds whenever possible Ö if you loose a life, youære
  26310. taken back to the last time you changed worlds.
  26311. 4.8
  26312. Ö Stamping your feet can reveal objects Ö either treasure or keys.
  26313. 4.8
  26314. Ö Beware of calling the genie when you are already carrying two other
  26315. sorts of objects (remember the horn is one), because you wonæt be able
  26316. to buy an object which you donæt already hold.
  26317. 4.8
  26318. Ö Beware when shooting the three-headed dragon. If you donæt shoot the
  26319. head furthest away from you, it flies away from you and fires an almost
  26320. continuous salvo.
  26321. 4.8
  26322. Ö Watch out for extended jump Ö you can sometimes use it when you donæt
  26323. realise Ö on some screens itæs essential and you may only have a limited
  26324. amount.
  26325. 4.8
  26326. Ö Watch out for the parachute Ö in the last few levels I found I
  26327. couldnæt get rid of it and it limited my objects to just two types.
  26328. 4.8
  26329. Ö When firing at the bird Ö if you duck, it flies lower to avoid your
  26330. fire. Stand until the bird is fairly close, then crouch and fire.
  26331. 4.8
  26332. Ö When the giant clam fires at you, or the Big eye, if you run so the
  26333. Ébulletæ is off the screen it will disappear.
  26334. 4.8
  26335. Impression
  26336. 4.8
  26337. Hints & Tips
  26338. 4.8
  26339. Bruce Goatly (BG), who is busy writing a book about using Impression,
  26340. very kindly sent us some hints & tips (in return for permission to use
  26341. our H&T in his book!). Most of the rest of the H&T are from the editoræs
  26342. experiences with the unreleased version 2.09. (Version 2.10 is not ready
  26343. for release so 2.05 is still the latest officially available version.)
  26344. 4.8
  26345. Å   Abbreviation expansion Ö Use it to correct common spelling errors or
  26346. to enforce house style (I often type Éansæ for Éandæ and Éthwæ for
  26347. Étheæ, and the house style for my book is Édiskæ whereas I almost always
  26348. spell it Édiscæ). BG.
  26349. 4.8
  26350. Å   Date and time format Ö As I continually forget what day it is, I use
  26351. the Insert date option quite a lot. If you want to change the format of
  26352. the date (the default is in the form 6th April 1991), load the !Run file
  26353. into Edit and alter the definition of the variable Impression$DateFormat
  26354. (see pp. 337-339 of the User Guide, on using system variables).
  26355. Similarly, you can alter the time format by editing
  26356. Impression$TimeFormat. BG.
  26357. 4.8
  26358. Å   Dongle connection problems Ö If you are having problems with a dongle
  26359. that keeps saying it is not present and you find that you need to wiggle
  26360. it (just a little bit!) to recognise its presence, go back and read the
  26361. hint above about ÉConnection problemsæ. Alternatively, CC themselves
  26362. offer a hint about it. They say that it is important to quit properly
  26363. from Impression and not just do a <ctrl-break>, otherwise the dongle
  26364. might need to be left for a couple of hours for a capacitor to discharge
  26365. before Impression can be loaded again.
  26366. 4.8
  26367. Å   Line spacing and font changes Ö If a line in the middle of a paragraph
  26368. starts with a different font from the lines around it, the line spacing
  26369. may be upset for that one line because of the way Impression does its
  26370. calculations. The way round it is to put the cursor at the start of the
  26371. offending line, cancel the font change at that point and insert a Énullæ
  26372. character (such as Alt-131). This will be invisible but will correct the
  26373. line spacing. BG.
  26374. 4.8
  26375. Å   Loading text files Ö If you want to load a text file into Impression,
  26376. there is no need to create a new document first Ö just drag the Edit
  26377. file onto the Impression icon and it will set up an untitled document
  26378. and load the text into a null frame.
  26379. 4.8
  26380. Å   Marking a single character Ö If you are doing DTP in a lower resolu
  26381. tion screen mode, you may be finding it difficult to use the mouse to
  26382. drag-mark a single character e.g. the Élæ in Éwillæ. One way of doing it
  26383. is to move the cursor between two of the characters, click <select> but
  26384. firmly hold the mouse in place. Then you use the cursor left or right,
  26385. as appropriate, to move the cursor to the other side of the character to
  26386. be marked and finally press <adjust>. George Foot, Oxted.
  26387. 4.8
  26388. My method of doing any of this kind of detailed work is to have two
  26389. windows open on the same document Ö which is extremely easy to do
  26390. (another advantage over PageMaker!) Ö one shows the full page and one
  26391. just an enlarged section of the text. Then you can flick backwards and
  26392. forwards between the two views enlarging and contracting the windows or
  26393. simply pushing them to the back when they are not wanted.
  26394. 4.8
  26395. (However, have you noticed that Impression sometimes insists on going
  26396. back to the beginning of the document when you expand and contract the
  26397. window using the size switch icon in the top right hand corner of the
  26398. window? Has anyone worked out why it happens and, more importantly, how
  26399. to stop it?)
  26400. 4.8
  26401. Å   Special characters Ö The list in Appendix 5 of the Impression II
  26402. manual gives a printout of all the characters. This is useful, but there
  26403. is some variation from one typeface to another, so it would be useful to
  26404. have an Impression file of it so that you could print it out in your
  26405. particular typeface. Iæll put a file of it on the monthly program disc,
  26406. but if you want to do it yourself, you can run the following program and
  26407. put the text into a multi-column Impression document.
  26408. 4.8
  26409. 10 REM > CHARLISTER
  26410. 4.8
  26411. 20 *SPOOL CHARS
  26412. 4.8
  26413. 30 @%=2
  26414. 4.8
  26415. 40 FOR N% = 32 TO 255
  26416. 4.8
  26417. 50 PRINT N%;CHR$(9);
  26418. 4.8
  26419. ö{òöheadingòöon }{ò ;CHR$(N%); ö}ò
  26420. 4.8
  26421. 60 NEXT
  26422. 4.8
  26423. 70 *SPOOL
  26424. 4.8
  26425. Å   Spell-checking Ö Not really a hint, but I was using the spelling
  26426. checker and it offered me the word öfaltnessò and told me that
  26427. öflatnessò was wrongly spelled. Also, while spell-checking, someone had
  26428. written öBeebugsæ policyò. The spelling checker knows Beebug but can you
  26429. guess what it offered me as an alternative for the accidental plural?
  26430. Yes, thatæs right, öBedbugsò! On the same theme, I spell-checked my
  26431. Factfile and came up with Motley Electronics, Mike Leecher of EMU Ltd,
  26432. ARM3æs from Aloof One and IDLE drives from Ian Copycats. Then I tried
  26433. some of our contributors and found Brain Cowman, Dim Parkland and last,
  26434. but not least, Pall Beggarly.
  26435. 4.8
  26436. Å   Tickets please! Ö (The following saga gives, firstly, an unnecessarily
  26437. long method of doing a job but one which illustrates techniques which
  26438. might prove useful in other circumstances. It is followed by the easier,
  26439. smarter method!) I wanted to make some numbered tickets at A6 size so I
  26440. made up an A4 page with four copies of the ticket. I used a two column
  26441. master page so that I could just take a copy of the text on the page and
  26442. paste it 14 times to make my 60 tickets. Near the bottom of each ticket,
  26443. it said, öTicket number: ò with an appropriate blank space. Then I
  26444. created four guide frames on the master page at about the right place to
  26445. put in the ticket numbers and inserted four new frames on each page. I
  26446. then went through linking all the frames together. To create the text
  26447. for the numbers, I used PipeDream using the örowò command and copying it
  26448. down 60 rows. I then ösavedò this in tab format straight into the first
  26449. ticket number frame and, instantly, all the tickets were numbered.
  26450. Brilliant! The only real hassle was lining up the ticket number boxes
  26451. with the words on the ticket. The problem is that although you can have
  26452. both the text and the master page on screen at the same time and at the
  26453. same magnification (which helps), the main page is not updated until the
  26454. master page is closed so I changed the öpreferencesò to make the master
  26455. page come up at the right magnification.
  26456. 4.8
  26457. (A similar technique of linked frames is used for the running heads on
  26458. the magazine Ö i.e. the articlesæ names at top outside corners of the
  26459. pages. The dummy Archive, before articles are inserted, has a whole
  26460. string of 60 öXòs, one on each page, alternately left and right aligned.
  26461. Then, when an article has been inserted, the running heads are altered
  26462. using selective search and replace to change, for example, öXò into
  26463. öHints & Tipsò. This is easier than using copy and paste because it
  26464. preserves the left and right alignment. But I digress... let me get back
  26465. to the tickets...)
  26466. 4.8
  26467. Then I suddenly realised the easy way of doing it.... Create the ticket
  26468. at full A4 size on the master page using öTicket number: ò and then
  26469. inserting the page number. (Use <menu> Ö Misc Ö Insert Ö Current page
  26470. number Ö Numeric.) Then, all you do is to add 59 pages (click on öInsert
  26471. new pageò with <adjust>, not <select> so that the menu option stays on
  26472. the screen) and use öFit lotsò on the öPrintò dialogue box reducing the
  26473. scale to 50%. If you find that it still says, öFit lots (1)ò at 50% and
  26474. you have to go down to about 48% before it goes to (4), click on
  26475. öSetup...ò and select the option to öIgnore page boundaryò. If you donæt
  26476. do this but print out at 48%, you will find that the margins are
  26477. unequal. This is a much quicker way of doing it than the previous method
  26478. and also gives the possibility of deciding that you want the tickets
  26479. smaller after all so you just reduce the scale and, perhaps, change to
  26480. sideways printing.
  26481. 4.8
  26482. Å   Widows & orphans Ö This is the technical term for where you get a
  26483. paragraph split so that a single line is on one page (or column) and the
  26484. rest is on the previous or next. If the first line is split off from the
  26485. rest, the solution is fairly obvious Ö use <ctrl-G> at the beginning of
  26486. the paragraph to push the line onto the next column. The odd line at the
  26487. end of a paragraph is less easy. If the text is left justified, you can
  26488. again use <ctrl-G> to push one more line to the next column to join the
  26489. lonely orphan. However, if you subsequently edit the paragraph so that
  26490. the layout of the lines changes, you have to edit out the <ctrl-G>.
  26491. Also, this doesnæt work at all if you are using full justification
  26492. because the <ctrl-G> causes the justification on the last line of the
  26493. column to be lost and it looks like the end of a paragraph without a
  26494. full stop. The only solution I can find is to create a new frame with
  26495. <ctrl-I> and lay it over the last line of the column. This forces that
  26496. line over to the next column without losing the justification.
  26497. 4.8
  26498. SCSI Hints & Tips
  26499. 4.8
  26500. Å   Removable drive problems Ö We are beginning to understand more about
  26501. the problems with removable drives. Let me explain... SCSI drives are
  26502. intelligent and they keep their own record of any duff sectors. However,
  26503. this record is not available to the user. If you tell the computer to
  26504. öformatò the disc, it deliberately ignores any sectors it already knows
  26505. are duff. If you get a ösoft errorò i.e. where the data gets corrupted
  26506. so that the CRC check shows up an error, reformatting will clear the
  26507. problem. However, if the disc surface is actually damaged, it may be
  26508. that reformatting clears the problem temporarily but, with time, the
  26509. problem may reappear and you will get the dreaded öDisc error 10 at... ò
  26510. or whatever. The solution to this is to use the *DEFECT command provided
  26511. by RISC-OS. If you get an error, *VERIFY the disc, note the addresses
  26512. which are thrown up as either suspect or actually having a disc error,
  26513. say, 7CEC00, 7CEE00 and 7CF000 and then type in
  26514. 4.8
  26515. *DEFECT SCSI::5 7CEC00
  26516. 4.8
  26517. *DEFECT SCSI::5 7CEE00
  26518. 4.8
  26519. *DEFECT SCSI::5 7CF000
  26520. 4.8
  26521. where SCSI::5 is the drive definition. It is worth recording these
  26522. addresses in case you need to format the disc again in the future. You
  26523. then need to enter the *DEFECT commands again. If *DEFECT finds that you
  26524. are trying to map out a sector that is allocated to a file or directory,
  26525. it will tell you so, in which case, you will have to copy the file or
  26526. directory and delete the one which it says is in the way.
  26527. 4.8
  26528. Obviously, it is better if you can avoid getting hard errors in the
  26529. first place so, just as a reminder, (1) always dismount the drive
  26530. properly before switching off the power and (2) keep your drive cool by
  26531. not packing other hardware around it.
  26532. 4.8
  26533. Å   Removable drive problems (Part 2) Ö Surely there canæt be any MORE
  26534. problems with the removable drives Ö they really wonæt be worth selling.
  26535. Yes, there are more problems but, yes, I still think they are worth
  26536. selling. If you try to use the MR45æs or the Atomwide equivalent on an
  26537. Acorn SCSI podule or on a TechnoSCSI (I have not tried any others), you
  26538. will find that occasionally they just hang up Ö usually when copying a
  26539. sequence of files. It is a timing problem which Acorn say they will look
  26540. into but they are not too optimistic. They say that Syquest, who make
  26541. the drive mechanisms, have interpreted the SCSI standards in a different
  26542. way from other drive manufacturers. The Acorn engineers have tried to
  26543. modify their software to accommodate Syquestæs idiosyncrasies but
  26544. although they have managed to make a version of their software that will
  26545. work when copying lots of files, they find that it does not format the
  26546. cartridges properly! It is not beyond the bounds of possibility to get
  26547. SCSI software to work on the Syquest drives Ö both Oak and Lingenuity
  26548. have done it successfully but, as yet, there is no satisfactory way of
  26549. running them on Acorn or TechnoSCSI cards.
  26550. 4.8
  26551. I should say to A540 owners, that, although I am using a Syquest
  26552. removable drive on my A540, I am doing so on an Oak podule. I made the
  26553. change (before I realised there was any problem) purely on the basis
  26554. that (1) the Oak software is the easiest to use on the MR45æs because of
  26555. the ease of dismounting and re-mounting discs and (2) it is the fastest
  26556. that I have tried. (I have not yet tried the offerings from HCCS or The
  26557. Serial Port but unless they have specifically tailored their software
  26558. for the Syquest mechanisms, I doubt that they will work.)
  26559. 4.8
  26560. Å   SCSI land speed record Ö Oak are claiming an Archimedes drive speed
  26561. record. Their 300M HS drive, on an A440 with a 20MHz ARM3, runs at 1939
  26562. / 1761 / 1043  Kbytes/sec in modes 0, 15 and 21 respectively. Can anyone
  26563. beat that?  A
  26564. 4.8
  26565.  
  26566.  
  26567.  
  26568. Hints and Tips
  26569. 4.7
  26570. Å   Ballarena Ö I would advise using the mouse to control your Ébatæ
  26571. because the keyboard is not very responsive. Also, note that the ÉAutoæ
  26572. bat does not always respond fast enough to catch the ball, and there is
  26573. nothing you can do about it! I was very disappointed in the final
  26574. message which just congratulates you, and ends your game. The passwords
  26575. are: PUNKANDJUMP, MONTPELLIER, SEA SEX SUN, VL 86 C 010, MOUNTAINEERS,
  26576. GRENOUILLE, BLUBEDILOMAR, BRAIN KILLER, RHYTHM BOX, BOUBOULOID, MENFOU,
  26577. 32 BIT POWER, MARTINI, SEE YOU SOON, ETERNA. Mike Gregory (& Russell
  26578. Lamb).
  26579. 4.7
  26580. Å   Changing !Editæs default file types Ö Answering my own Help!!! plea in
  26581. Archive hereæs how to change the default filetypes for !Edit:
  26582. 4.7
  26583. *DIR ADFS::4.$.RISC-OS.!Edit
  26584. 4.7
  26585.  (or your path here)
  26586. 4.7
  26587. *GOS
  26588. 4.7
  26589. *L. !RUNIMAGE 8000
  26590. 4.7
  26591. *BREAKSET 8004
  26592. 4.7
  26593. *GO 8000
  26594. 4.7
  26595. *SAVE ö!RUNIMAGEò 8000+1F2C0
  26596. 4.7
  26597.  8008 8000
  26598. 4.7
  26599. *BASIC
  26600. 4.7
  26601. *L. !RUNIMAGE 8F00
  26602. 4.7
  26603. $&1B208=öReadMeò These can be changed
  26604. 4.7
  26605. $&1B214=öDataFileò to suit your needs
  26606. 4.7
  26607. $&1B220=öExecFileò with any string up
  26608. 4.7
  26609. $&1B22C=öEditFileò to 10chars in
  26610. 4.7
  26611. $&1B238=ö!Runò        length.
  26612. 4.7
  26613. *SAVE !RUNIMAGE 8F00+1F2C0 8008 8000
  26614. 4.7
  26615. Rob Davison, Southland, New Zealand
  26616. 4.7
  26617. Å   ÉCheapoæ dialog boxes Ö You can make use of Wimp_ReportError instead
  26618. of writing code for a dialog box when programming wimps. The following
  26619. code fragment is an example:
  26620. 4.7
  26621. DEFPROCsave_file(name$)
  26622. 4.7
  26623. IF FNfile_there(name$) THEN IF
  26624. 4.7
  26625.  FNdialog(öA file of that
  26626. 4.7
  26627. name exists. Overwrite it?ö)=FALSE THEN ENDPROC
  26628. 4.7
  26629. REM save file
  26630. 4.7
  26631. ENDPROC
  26632. 4.7
  26633.  
  26634. 4.7
  26635. DEFFNdialog(str1$):!block%=1
  26636. 4.7
  26637. :$(block%+4)=str1$
  26638. 4.7
  26639. SYSöWimp_ReportErrorò,block%,
  26640. 4.7
  26641. 19,öMessage from
  26642. 4.7
  26643. applicö TO ,resp%
  26644. 4.7
  26645. =resp%=1
  26646. 4.7
  26647. where the string öMessage From Applicationò is <20 characters in length.
  26648. 4.7
  26649. The only disadvantages are that all other desktop activity is suspended,
  26650. the machine beeps (if wimpflags bit 4 is not set) and that the user has
  26651. to answer öOKò or öCANCELò instead of the more logical öYESò or öNOò.
  26652. However, this saves a great deal of programming and can be very useful
  26653. at times (This is why FWP2 stops printing Ö See Archive 3.10 p 25). Rob
  26654. Davison, New Zealand.
  26655. 4.7
  26656. Å   Cleaning A310 keyboard contacts Ö I recently had a very nasty
  26657. intermittent fault on my A310. It began as a line of 222222222æs being
  26658. printed at the cursor, for no apparent reason. Also the É2æ key of the
  26659. numbers keypad wouldnæt function occasionally. This was accompanied by a
  26660. more worrying symptom where the screen display would suddenly go hay-
  26661. wire and only occasionally would right itself after switching the
  26662. machine off and then on.
  26663. 4.7
  26664. Eventually, it was cured by cleaning the key-contact of the É2æ (keypad)
  26665. and on the basis of öIf it works, donæt fix itò, I didnæt clean any
  26666. other keys. After having the machine checked at a local dealer (ú17.50)
  26667. and some discussion with Archivesæ Technical Help, it was assumed that
  26668. the screen break-up was due to CMOS *Configuration settings somehow
  26669. being changed to Monitor-Multisync, by the spurious keyboard input. The
  26670. problem has not occurred since.
  26671. 4.7
  26672. For anyone else with keyboard problems, hereæs how I cleaned mine: Lay
  26673. the keyboard upside-down and remove all 8 screws under the keyboard base
  26674. and gently lift off the base. Remove the 6 larger screws, securing the
  26675. PCB to the keyboard top-cover. Lift out the complete PCB and keys unit.
  26676. The keytops are all secured in a frame which is, in turn, secured by 20-
  26677. odd small screws from the PCB underside. Take them all out (and put them
  26678. somewhere safe) and, keeping the whole kaboodle together with a firm
  26679. grip, turn it over and set it down right-side up. The complete set of
  26680. keys can now be lifted slowly off the PCB, exposing the rubber contact/
  26681. covers. These are glued with a weak glue. I found that all the rubber
  26682. bits stayed stuck to the PCB. I gently peeled away the rubber contact/
  26683. cover at the offending key position and marvelled at how the dirt had
  26684. managed to penetrate so far, considering that the cover was stuck down.
  26685. The keyboard key contacts (A310) are just gold plated discs of PCB
  26686. copper, easily cleaned with switch cleaner and a non-hairy paper-towel
  26687. or cloth. If you have to blow away any bits, use a camera Épuffer
  26688. brushæ. If you have to use your mouth to blow away grit, crumbs etc,
  26689. wait for any teeny drops of condensation to evaporate. Spit doesnæt make
  26690. a good contact cleaner and some spirit-based cleaners may tend to
  26691. dissolve the pcb-surface varnish which will be smeared over the
  26692. contactsæ surface. Your local electronics hobby shop (e.g. Tandy) should
  26693. have cans of switch-cleaner at ú2 Ö ú3 (which is a lot cheaper than ú120
  26694. for a new keyboard(!) and well worth the extra effort of DIY).
  26695. 4.7
  26696. D.P.Allen, Surrey
  26697. 4.7
  26698. Å   Data cartridges for tape streamers revisited Ö Further to the hint in
  26699. 3.6 p2, the metal variety of DAT can become unreliable after three or
  26700. four writes and so it is better to use the non-metal variety e.g.
  26701. Memorex tapes. Mr Chapman, London
  26702. 4.7
  26703. Å   RISC-OS printing hints Ö Printing out with the RISC-OS printer drivers
  26704. is very easy. However I found several areas which are not well explained
  26705. and one or two things which are down right misleading!
  26706. 4.7
  26707. Å   PRM pages 1526-1528 sprite plotting commands must be with reference to
  26708. the address of the sprite not the name, so if you use
  26709. 4.7
  26710. SYS öOS_SpriteOpò,&122,
  26711. 4.7
  26712. spriteaddr%,önameò,0
  26713. 4.7
  26714. ,xpos%,ypos%
  26715. 4.7
  26716. then, when printing, the error öSprite Not knownò will be returned. The
  26717. solution is to use &222 and an address instead of the sprite name.
  26718. Addresses for a named sprite can be found with
  26719. 4.7
  26720. SYSöOS_SpriteOpò,&118
  26721. 4.7
  26722. addr is in R2 on exit Ö see PRM page 406.
  26723. 4.7
  26724. Å   PRM page 1532. Always use Ö1 (for current) as the destination mode
  26725. with öColourTrans_Select-Tableò if you specify a mode (even the current
  26726. one) ColourTrans will not set up the table correctly resulting in
  26727. strange looking sprites on printout.
  26728. 4.7
  26729. Å   When rendering Draw objects remember to decrease Éflatnessæ to a lower
  26730. value. A useful way of calculating it is to divide the default (512) by
  26731. the print resolution divided by 90 eg. flat= 512/(printxres%/90) where
  26732. printxres% might be 300 Ö as read from
  26733. 4.7
  26734. SYS öPDriver_Infoò TO,printxres%
  26735. 4.7
  26736. printyres% the 90 comes from a normal approximately 90 dots per inch on
  26737. screen. Rob Davison, Southland, New Zealand
  26738. 4.7
  26739. Å   Saving the CMOS RAM settings Ö In recent editions of Archive (e.g.
  26740. 4.3, p.10 and 4.5, p. 21) there have been repeated mentions of the
  26741. problem which arises when a battery failure deletes all the information
  26742. in the CMOS RAM.
  26743. 4.7
  26744. There is one very simple way of solving this problem: On Careware N║ 6
  26745. you will find the application !SysUtil by Jon Marten; one of the choices
  26746. it offers is öSave Configurationò!
  26747. 4.7
  26748. All you have to do is copy the Utility and the öConfigFileò it produces
  26749. to some disc where they are easily accessible Ö not the hard disk!
  26750. 4.7
  26751. After the dreaded memory loss you simply load !SysUtil and drag the
  26752. ConfigFile icon onto the !SysUtil icon and confirm that you want to
  26753. change the configuration. Jochen Konietzko, Koeln, Germany
  26754. 4.7
  26755. Å   Shutdown of hard drives Ö During the recent experience I have had due
  26756. to the volume of hardware Iæve been setting up and testing, the
  26757. following items have come to light.
  26758. 4.7
  26759. MR45æs seemed to be suffering from corruption but, when reformatted, the
  26760. problem went away, so where did the corruption come from?
  26761. 4.7
  26762. A little further investigation revealed that a verify scan caused the
  26763. Closedown procedure of the drive not to occur.
  26764. 4.7
  26765. It was found that, in order to close the drive down properly, a *bye and
  26766. two ¬Shutdowns were required! At first, this was thought to only relate
  26767. to MR45æs but, in fact, it has been found that this is not so, and even
  26768. my own machine (A440/1 with standard Acorn hardware) does similar
  26769. things.
  26770. 4.7
  26771. So, how do you know whether your hard drive is shut down properly? If an
  26772. <f12> is followed by a *bye, a staccato blip from the drive LED should
  26773. occur and a short sharp click noise should emit from the drive itself.
  26774. This is not the closedown condition.
  26775. 4.7
  26776. A *shutdown will now give a flickering performance from the drive LED
  26777. and a multiple clicking from the drive lasting about half a second.This
  26778. is the shutdown condition with the heads parked and isolated from the
  26779. discs and closedown of the system can now occur. Ray Maidstone, Norwich.
  26780. 4.7
  26781. Å   !UIM_Hack update (cf Archive 3.10 p 9) Ö This utility allows you to
  26782. edit characters in The 4th Dimensionæs U.I.M. game. It has now been
  26783. updated and improved by the author, David Sheperdson, and has been put
  26784. on this monthæs program disc.
  26785. 4.7
  26786. Impression Hints and Tips
  26787. 4.7
  26788. Å   Beware thin lines Ö It seems that Impression canæt cope with the very
  26789. thinnest lines that Draw can produce. It does not display them properly
  26790. on the screen and sometimes doesnæt print them properly. The answer is
  26791. to use 1 mm lines instead. This came to light when Brian Cowan was using
  26792. graphs generated by the graph plotting utility (on Shareware N║ 31)
  26793. which apparently uses these thin lines. (This has only been tested in
  26794. version 2.05.)
  26795. 4.7
  26796. Å   Double-clicking on a graphic opens the öalter graphicò window, (For
  26797. those who donæt read manuals.)
  26798. 4.7
  26799. Å   Help! Ö Does anyone know how to create a new Master Page based on an
  26800. existing master page? Itæs a real pain to have to change the margins
  26801. every time you create a new master page. Why canæt you have a new master
  26802. page just slightly different from an existing one? The particular
  26803. application was where I wanted to try two, three, four, five columns
  26804. etc. for a document and every time I wanted to change the number of
  26805. columns, I had to create a new master page, changing the margins from to
  26806. the 5 mm I wanted before changing the number of columns and the inter-
  26807. column gap. (Mind you, I did find one short-cut as a result of having to
  26808. do this over and over again. If you click in the first margin box, you
  26809. can use <ctrl-U> to remove the ö12.7mmò, then press <5> and then <down>
  26810. will move you to the next box and you can repeat the <ctrl-U>, <5>,
  26811. <down> for each box. This applies to most of the dialogue boxes Ö <down>
  26812. moves you to the next box requiring input. Yes, I know it says this in
  26813. the manual, but I didnæt see it.)
  26814. 4.7
  26815. Anyway, can I put my plea another way? Is there any way of editing a
  26816. master page other than sliding the boxes around? Can you edit, by
  26817. entering numbers, the sizes of the margins, for example?
  26818. 4.7
  26819. Å   Search & replace again Ö We mentioned last month that, when doing a
  26820. find and replace, <ctrl-N> finds the Next occurrence, <ctrl-R> does a
  26821. Replace of the marked text. Be warned though that, if the find box is
  26822. on-screen, <ctrl-A> no longer deletes the character at the cursor (as
  26823. <copy> does) it forces All the replaces to occur from the cursor
  26824. downwards to the very end of the document. I found this the hard way
  26825. while attempting to do a selective search and replace at the top of a
  26826. large document. I was changing a column of words into a list by
  26827. replacing
  26828. 4.7
  26829.  with a comma and a space. You can just imagine the havoc that the
  26830. öreplace allò command reeked on my (unsaved!!!) document. You have been
  26831. warned! By the way, <ctrl-E>, presumably relating to Every or End, has
  26832. exactly the same effect as <ctrl-A>. (This has only been tested on
  26833. 2.09.)
  26834. 4.7
  26835. Å   Transferring text between documents Ö In Archive 4.2 p.8, there was a
  26836. hint about the transfer of text between two documents. The implication
  26837. was that this was not possible with Impression. This is not true Ö it is
  26838. just done differently. You select the text in question, press <ctrl-C>,
  26839. move to the appropriate spot in the other document, click once and
  26840. insert the text with <ctrl-V>! Jochen Konietzko, Koeln, Germany  A
  26841. 4.7
  26842.  
  26843.  
  26844.  
  26845. Impression Hints and Tips
  26846. 4.6
  26847. Here are a few more hints and tips mostly from the editoræs dabblings in
  26848. preparing the magazine...
  26849. 4.6
  26850. Å   Dashes Ö If you, like me, donæt like to see hyphens used where dashes
  26851. should be used Ö i.e. in places like this Ö you will probably be sick
  26852. and fed up of typing <alt-153>. (Note that the character in öalt-153ò is
  26853. a hyphen, just in case you werenæt aware of the difference.) If you are
  26854. importing text into Impression, occurrences of Éhyphen hyphenæ will be
  26855. converted automatically by Impression into a long dash ÿ see what I
  26856. mean. Personally, I prefer the shorter one so what I have done is set up
  26857. the abbreviation dictionary with Éexpand as you typeæ and used an
  26858. underline character to be turned into a dash. The only drawback is that
  26859. itæs OK for things like the dashes earlier in this paragraph, but if,
  26860. for example, you use dashes in phone numbers, as 0603Ö766592, the
  26861. abbreviation technique does not work and you are back to  <alt-153>.
  26862. Anyone any other ideas?
  26863. 4.6
  26864. Å   Find styles Ö If you want to find a style, get up the find/replace box
  26865. with <ctrl-f4> and then click in the menu box to the right of the Find
  26866. box and select the style you are looking for. This will come up as, say,
  26867. öò. Type an ö@ò after this Ö which stands for öany textò Ö and then
  26868. press <return>. This will highlight the whole of the first piece of text
  26869. with that style or effect. Unfortunately, the facility to replace that
  26870. style with another style is not yet working. If you do want to do any
  26871. search and replace on the style names, export the text, with styles, and
  26872. then use another WP such as !Edit to do the searching and replacing
  26873. before returning it to Impression.
  26874. 4.6
  26875. Å   Rogue effects Ö Someone sent me a file in which they had used a
  26876. particular font which I did not have so when I loaded the file,
  26877. Impression told me it was changing it to Trinity.medium. I did an edit-
  26878. style and looked at all the style definitions to no avail. Eventually, I
  26879. realised that it must have been used as an effect, so how was I to find
  26880. it and eliminate it or change it to some font I did possess? Because the
  26881. font had been changed to Trinity.medium (i.e. the BaseStyle font) I
  26882. could not pick it out with a visual scan so the first idea was to change
  26883. the BaseStyle to, say, Zapf.Dingbats so that anything which was in a
  26884. different font was obviously an effect or a style. Unfortunately, this
  26885. didnæt reveal the offending effect. At this point, I became convinced
  26886. that I had a non-existent, un-removable effect, i.e. a bug in Impres
  26887. sion. So I sent the offending file to CC who informed me that the
  26888. particular effect WAS in the text and they also showed me how to locate
  26889. it... as follows...
  26890. 4.6
  26891. (Actually, the reason that I couldnæt find the effect was that I had
  26892. already gone through the document adding extra styles and had covered
  26893. this rogue font-change effect with a font-change style of my own. In
  26894. other words, the style, because it was applied later than the effect,
  26895. took precedence.)
  26896. 4.6
  26897. Å   Finding effects Ö In the same way that you can find styles (see above)
  26898. you can also find effects as long as you tell Impression that you want
  26899. effects to be shown on the style menu. To do this, locate the file öUKò
  26900. in the Impression öResourcesò directory. Load it into !Edit and find
  26901. öCnf1:ò and change it to öCnf1:Eò Ö thatæs a one, not a letter ölò. Save
  26902. the file and shut down and re-start Impression. You then will have
  26903. effects on your style menus and search on {öeffectnameò }@, as explained
  26904. above.
  26905. 4.6
  26906. Å   Fast search and replace Ö There are a couple of very useful keyboard
  26907. short-cuts not documented in the manual which speed up the search and
  26908. replace. When the ötext foundò box is on screen, <ctrl-R> does a
  26909. öReplaceò and <ctrl-N> moves to the öNextò.
  26910. 4.6
  26911. Å   Keyboard short-cuts Ö Apart from the ones listed on pages 119ff of the
  26912. Impression manual, here are a few more: (some are mentioned on the menu,
  26913. but not in manual)
  26914. 4.6
  26915. <ctrl-shift-D> go to chapter
  26916. 4.6
  26917. <ctrl-shift-H> produces a bullet i.e. a öÅò.
  26918. 4.6
  26919. <ctrl-shift-I> also produces a bullet i.e. a öÅò!
  26920. 4.6
  26921. <ctrl-shift-J> produces superscript
  26922. 4.6
  26923. <ctrl-shift-K> produces subscript
  26924. 4.6
  26925. <ctrl-shift-T> save text story
  26926. 4.6
  26927. Å   Page number justification problems Ö Some of you may have had
  26928. difficulty getting correct centring or right justification of page
  26929. numbers on footers. This is corrected in version 2.09 Ö well, almost!
  26930. The footers on right hand pages were wrong last month, when I was using
  26931. version 2.05, (in fact I didnæt even notice!) and the footers on the
  26932. left hand pages would have been wrong this month (with 2.09) if I had
  26933. not found a way round it. If you try to have left aligned page number
  26934. with a right tabbed piece of text, the text suffers a left shift. Iæve
  26935. solved it for now by splitting the footer text into two separate frames,
  26936. one left aligned and the other right aligned. Itæs messy, but it works.
  26937. A
  26938. 4.6
  26939.  
  26940.  
  26941.  
  26942. Hints and Tips
  26943. 4.5
  26944. Å   ANSI C v3 on a SCSI Hard  Disc ù After some trial an error, I finally
  26945. managed to install ANSI C v3 correctly on my new Oak SCSI card with 45Mb
  26946. hard disc drive.  Hereæs what I had to do:
  26947. 4.5
  26948. First change line 3390 in the ÉInstallNetæ program which is on all three
  26949. of the ANSI C discs so that it reads:
  26950. 4.5
  26951. 3390 DATA öADFS::0.$ò,öNET:$ò,öSCSI::SCSIDisc4.$ò
  26952. 4.5
  26953. Then run the öInstallHDò program from each disc and always answer ÉYæ on
  26954. the overwrite options (otherwise, the back up program would stop).
  26955. 4.5
  26956. If you use the included !Cstart obey file, you should not É*Set
  26957. Run$Pathæ in your !boot file and you should remember to modify the
  26958. !Cstart file to work with SCSI and not ADFS i.e. c$loc SCSI::4.$
  26959. 4.5
  26960. Atle Baardholt, Norway
  26961. 4.5
  26962. Å   Deskjet Plus ink cartridges, recharging Ö Further to Bill Grahamæs
  26963. note in Archive 4.2 p8, Iæve found that Quinx Permanent Black works well
  26964. and is probably cheaper than Art Pen Ink. You do need to be careful that
  26965. you donæt inject more ink than the sponge will absorb, otherwise the
  26966. mess is dreadful!  Stuart Bell, Brighton.
  26967. 4.5
  26968. Å   DropShip passwords Ö Passwords for DropShip are Dahlia, Gaggle, Kaunda
  26969. and Nautch.
  26970. 4.5
  26971. Å   ExAllPlus Ö This is a non-Wimp program which was written in an attempt
  26972. to catalogue my discs. It was designed for use with a single ADFS Floppy
  26973. drive and a SCSI Hard disc together with a Star LC10 printer using
  26974. continuous paper. Other printers may require some alteration to the
  26975. coding.
  26976. 4.5
  26977. Most existing öExAllò and öCatAllò programs invoke the *EX and *CAT
  26978. calls (!) which produce a lot of unnecessary and confusing duplication
  26979. of libraries, directories etc. (I have memories of the reams of paper
  26980. produced by an  öExAllò print-out of the original Archimedes Welcome
  26981. disc.) To avoid this, these calls have been re-written so that, in
  26982. addition to other changes, the directory headings have been reduced to
  26983. path descriptions.
  26984. 4.5
  26985. The program will produce both screen and printed listings of either the
  26986. full disc or the root directory. The various options are selected by a
  26987. series of key-strokes and a default screen öExAllò routine has been set-
  26988. up which can be easily customised.
  26989. 4.5
  26990. Use can be made of the condensed print option to produce catalogue
  26991. listings eight entries wide as against the usual five. This rather
  26992. spoils the screen display in this mode but it was thought useful to
  26993. maintain a check on the output to the printer. When using this option to
  26994. produce öEXò listings the screen display is OK and the reverse feed
  26995. facility of the Star LC10 enables double column print-outs to be
  26996. obtained.
  26997. 4.5
  26998. The öGetTypeò program is loaded in by the main öExAllPlusò code and
  26999. contains all the FileType codes I have been able to find but it can
  27000. easily be updated.
  27001. 4.5
  27002. (The listing is far too long to put in the magazine. I have put it on
  27003. the monthly program disc. Ed.)
  27004. 4.5
  27005. Doug Tuddenham
  27006. 4.5
  27007. Å   First Word Plus embedded commands Ö If you switch off the Word
  27008. Processor mode of FWP you can enter printer commands directly into the
  27009. text.  Double bracket command codes e.g. ((n))n1 can be entered to
  27010. change the printer font and style. For example, with a Star LC24-200 in
  27011. the following effects can be achieved:
  27012. 4.5
  27013. Font   ((F))0   Times Roman
  27014. 4.5
  27015.       ((F))1   Sans Serif
  27016. 4.5
  27017.       ((F))2   Courier
  27018. 4.5
  27019.       ((F))3   Prestige
  27020. 4.5
  27021.       ((F))4   Script
  27022. 4.5
  27023.       ((F))5   Draft
  27024. 4.5
  27025. Size   ((S))0   Standard
  27026. 4.5
  27027.       ((S))1   Double Width
  27028. 4.5
  27029.       ((S))2   Double Height
  27030. 4.5
  27031.       ((S))3   Double Width and Height
  27032. 4.5
  27033. Colour   ((C))0   Black
  27034. 4.5
  27035.       ((C))1   Red
  27036. 4.5
  27037.       ((C))2   Blue
  27038. 4.5
  27039.       ((C))3   Violet
  27040. 4.5
  27041.       ((C))4   Yellow
  27042. 4.5
  27043.       ((C))5   Orange
  27044. 4.5
  27045.       ((C))6   Green
  27046. 4.5
  27047. Peter Thomas, Leics
  27048. 4.5
  27049. Å   FWP Cut and Paste Ö It is possible to cut a marked block of text in a
  27050. First Word Plus document and then paste it into another document.  Both
  27051. documents must be loaded first.  This may be obvious but I have only
  27052. just found out ù the hard way.  Dave Livsey, Devon
  27053. 4.5
  27054. Å   Impression hints & tips Ö Now that I am using Impression for the
  27055. magazine, there are likely to be a number of hints & tips forthcoming.
  27056. Some of these may be obvious to the more experienced Impression users,
  27057. but bear with me because some of us are only just beginning and, in
  27058. fact, the experiences of someone just starting to use an application can
  27059. often be very helpful to others going through the same hoop. Also, when
  27060. you have been using an application for a while, you build up the feeling
  27061. that you know how it works and there may be facilities which you never
  27062. realised were available which new users pick up. Anyway, here are the
  27063. first few...
  27064. 4.5
  27065. Adding styles to titles Ö If you want to add a style to a title, be sure
  27066. to select the whole line including the carriage return. In other words
  27067. either put the cursor by the left hand margin and drag down to the next
  27068. line or triple-click somewhere on the line. (Iæm sure you all know that
  27069. double-click selects a word, triple-click selects a line and quadruple-
  27070. click (or <ctrl-@>) selects a whole paragraph.) The reason for selecting
  27071. in this way is that if you only select by dragging across the line, you
  27072. omit the carriage return which remains in the base style. The problem
  27073. with this is that if, as in the title lines in Archive, the added style
  27074. says öreduce the space after the paragraph to zeroò, the carriage return
  27075. still has the full space-after-paragraph so the paragraph spacing
  27076. remains unchanged.
  27077. 4.5
  27078. Entering point sizes Ö If you want to change the size of some text, you
  27079. mark it and press <shift-ctrl-S>. If the dialogue box is empty, you can
  27080. type in a number, say 18, and it will assume you mean 18 point. If you
  27081. decide that you want it a bit bigger and press <shift-ctrl-S> again, it
  27082. comes up with ö18ptò in the box. If you then type in, say, 2 <return> it
  27083. will interpret the ö18pt2ò as (18+2)pt and will give you 20pt! (Well, it
  27084. works in version 2.05.) Unfortunately, if you press <-> to try to put,
  27085. say, -2, it seems to interpret it as an escape and closes the box.
  27086. 4.5
  27087. Marking, deleting and re-typing Ö (This is something that is obvious to
  27088. people coming to Impression via the Mac but may have been missed by
  27089. people brought up through RISC-OS.) If some text is marked, by any
  27090. means, and you want to replace it by some text you are about to type in,
  27091. there is no need to delete the marked text first. As soon as you start
  27092. to type, the marked text is deleted and transferred to the scrap-pad and
  27093. your typing appears in place of it. The deleted text can be used
  27094. elsewhere by pasting it in with <ctrl-V>.
  27095. 4.5
  27096. Quick searching Ö If you want to find something quickly, find/replace is
  27097. a good way to do it. Call it up with <ctrl-f4> and then, to delete the
  27098. text already in the dialogue box, press <ctrl-U>, then type in the word
  27099. you are looking for and press <return>. (This use of <ctrl-U> applies to
  27100. all dialogue boxes Ö useful when saving a document under a new name.)
  27101. Remember though that it searches from the cursor downwards, so add a
  27102. <ctrl-uparrow> before calling up the find/replace box. (In the version I
  27103. have, 2.05, the cursor is sometimes not re-displayed in its new position
  27104. after a find/replace has been executed. In other words, it appears to be
  27105. still where you left it but it may actually be further down the document
  27106. so itæs worth getting into the habit of using <ctrl-uparrow> anyway.)
  27107. Also, donæt get tripped up, as I just did. If you set the öcase
  27108. sensitiveò option, it stays set until you switch it off again. So, if
  27109. you canæt find a word that you know is in there somewhere, check that
  27110. you have not left it in the case-sensitive mode from the last time you
  27111. used it.
  27112. 4.5
  27113. Replacing double spaces Ö I was trying to do a selective search and
  27114. replace to remove double spaces and replace them with single spaces.
  27115. When I told it to find the next one, it sometimes didnæt appear to mark
  27116. anything. Most peculiar!  Eventually, I realised what was happening. The
  27117. text was fully justified and the double spaces (the same would apply to
  27118. finding single spaces) were between the last word on one line and the
  27119. first on the next line. Thus Impression was marking the infinitesimally
  27120. small space at the end of the line, i.e. was marking nothing at all.
  27121. Thereæs nothing you can do about it (apart from removing the full
  27122. justification) but at least if you are aware of the problem, you wonæt
  27123. be so baffled when it happens.
  27124. 4.5
  27125. Searching for hyphens Ö In some versions of Impression, it is not
  27126. possible to search and replace hyphens. I discovered this because, for
  27127. ease of typing, I was using a double hyphen where I wanted a dash in the
  27128. text, the idea being to replace them later. Impression refused to find
  27129. any occurrences of hyphen-hyphen. Consultation with CC revealed that
  27130. improvements in automatic hyphenation have resulted in this problem. The
  27131. way round it is to search for ÿ and replace it with Ö. Note the spaces
  27132. after the backslash and before the 45.
  27133. 4.5
  27134. Smart quotes Ö If you want smart quotes in a text, i.e. the curly ones
  27135. instead of the straight ones on the key next to the return key, you can
  27136. type them in using <ctrl-]> and <ctrl-\> for single quotes and <shift-
  27137. ctrl-]> and <shift-ctrl-\> for double quotes. However, if you think
  27138. thatæs a bit of a fag to remember, use the normal quotes and then,
  27139. before printing, save the file (just in case of operator error!), save
  27140. the text with styles (perhaps to a ram disc as itæs only temporary),
  27141. select the whole text (<ctrl-T>), delete it and finally drop the saved
  27142. text back into the document. As the text is re-loaded, quotes are
  27143. automatically Ésmartenedæ.
  27144. 4.5
  27145. Switching styles on and off Ö Those of you brought up in the Mac world
  27146. may not have realised, as I didnæt until today(!) that if you want
  27147. something in, say, bold, all you have to do is press <f4> to switch it
  27148. on, type in the bit that is to be in bold and then press <f4> again.
  27149. Obvious? Yes, it may be to those who come new to Impression but for
  27150. those of us steeped in Mac techniques, it comes as a welcome surprise.
  27151. 4.5
  27152. If there are things about using Impression that Écame as a surpriseæ to
  27153. you, send them in to us (preferably on disc) and weæll share them with
  27154. other Impression users. We may even need an Impression Column.
  27155. 4.5
  27156. Å   Rotor and other gamesæ passwords Ö One way to obtain the Rotor
  27157. passwords (and possibly other games) is to load each of the gameæs files
  27158. into !Edit and use the ÉFindæ option to look for the first password.
  27159. When the password is found, the remaining passwords should be in the
  27160. next couple of lines.  Andrew Campbell, Devon
  27161. 4.5
  27162. Å   Sony TV / Monitor Ö I was told by Beebug that I couldnæt use my Sony
  27163. TV as a monitor with the A3000, but in fact this is quite easy to do.
  27164. The sony TV requires a signal on pin 16 (blanking input) of the Scart
  27165. plug, which can simply be connected to pin 20 (video input).  Keith
  27166. Raven, Slough
  27167. 4.5
  27168. Å   Z88 file transfer Ö Here is a little utility for people who wish to
  27169. transfer files from the Archimedes straight into suspended memory on the
  27170. Z88.  It saves having to break a file into smaller sections first and,
  27171. of course, there is always a memory overhead in having at least part of
  27172. the file held in the Z88 Filer.  With this BASIC program, the filer is
  27173. by-passed altogether.
  27174. 4.5
  27175.  10 REM >Suspender
  27176. 4.5
  27177.  20 REM Transfer file from Arc to Z88 suspended memory
  27178. 4.5
  27179.  30 REM ** IMPORTANT: Set z88 receive baud rate at 2400 (in panel) **
  27180. 4.5
  27181.  40 *CAT
  27182. 4.5
  27183.  50 *FX 8,5
  27184. 4.5
  27185.  60 INPUT öSend file? òfile$
  27186. 4.5
  27187.  70 *FX 3,119
  27188. 4.5
  27189.  80 OSCLI(öType ò+file$)
  27190. 4.5
  27191.  90 FOR i%=1 TO 350
  27192. 4.5
  27193. 100 PRINT ö#ò
  27194. 4.5
  27195. 110 NEXT i% : REM these pad chars are need for certain types of file
  27196. 4.5
  27197. 120 *FX 3,0
  27198. 4.5
  27199. To load a file into PipeDream, enter ö:COMò as the öName of file to
  27200. loadò in the files menu.  Then run öSuspenderò and immediately press
  27201. <return> on the Z88.  Finally, when the BASIC prompt reappears on the
  27202. Archimedes screen, press <esc> on the Z88.
  27203. 4.5
  27204. It is kinder to your disc drive to copy the target file into the
  27205. Archimedesæ RAM filing system first.
  27206. 4.5
  27207. Jonathan Barnes, Watford
  27208. 4.5
  27209. The following Hints and Tips come from Hugh Eagle of the West Sussex
  27210. Archimedes User Group.
  27211. 4.5
  27212. Å   Disappearing paragraph spaces in FWP ù If, at the end of a paragraph,
  27213. you type a space immediately before the carriage return, the carriage
  27214. return will be deleted when you subsequently reformat the paragraph.
  27215. Believe it or not, this is a öfeatureò of First Word Plus (documented in
  27216. the version 1 manual on page 110)!
  27217. 4.5
  27218. Å   Loading sprite files ù When you double click on a sprite file icon,
  27219. sometimes it is displayed at the bottom left-hand corner of a blank
  27220. screen and sometimes in a !Paint window.  This is because the action the
  27221. computer takes when you try to örunò a sprite file depends on the
  27222. contents of the system variable Alias$@RunType_FF9.  This variable is
  27223. defined by default, when the Archimedes is switched on, as öScreenLoad
  27224. %0ò.  The effect of this is that when you double click on a sprite file
  27225. (type &FF9) icon, the operating system executes the instruction
  27226. *ScreenLoad [filename]; this clears the screen and then displays the
  27227. first sprite in the file at the graphics origin. However, when the
  27228. Desktop Filer öseesò the !Paint application (i.e. when a directory
  27229. window is opened in which !Paint is included) it runs the !Paint.!Boot
  27230. file which, amongst other things, redefines Alias$@RunType_FF9  in such
  27231. a way that when a sprite file is örunò the !Paint application is started
  27232. up (that is if it is not already running) and the file is loaded in.
  27233. 4.5
  27234. Å   Listing the contents of your (hard) disk ù The operating system
  27235. command ö*Count :4.$.* RVò will catalogue the contents of the root
  27236. directory and every sub-directory.  As explained on pages 279/280 of the
  27237. User Guide, the output from this command can be redirected to the
  27238. printer by adapting the command to ö*Count :4.$.* RV {printer: } ò
  27239. 4.5
  27240. Note: the spaces around the curly brackets and the > sign are important.
  27241. 4.5
  27242. This method will redirect the output to the printer without displaying
  27243. it on the screen. An alternative method will send all text that is
  27244. displayed on the screen to the printer as well: first press <ctrl-B>
  27245. (i.e. hold down the ctrl key and simultaneously type B), then issue the
  27246. command ö*Count :4.$.* RVò then, when the listing has finished, press
  27247. <ctrl-C>.
  27248. 4.5
  27249. Å   Removing PC Access ù  The menu which appears when you click the menu
  27250. button over any of the PC Access icons on the icon bar has no Quit
  27251. option and the application doesnæt seem to appear in the Task Manager
  27252. window.  In fact, the application does appear in the Task Manager window
  27253. ... in the öModule Tasksò section. Clicking the menu button over the
  27254. applicationæs name there and moving to the Task ÉPC Accessæ sub-menu
  27255. gives a öQuitò option.
  27256. 4.5
  27257. Å   Printing via a PC ù For some time I have been perplexed to find that
  27258. when I try to print a file created by the Archimedes !PrinterLJ printer
  27259. driver to a LaserJet printer attached to a PC, the printout stops part
  27260. way down the page. At first I thought it must be because of  limited
  27261. memory in the printer so I tried creating the file at a lower print
  27262. density but this made no difference to how much of the page was printed.
  27263. 4.5
  27264. I think I have now hit on the answer, namely that, when using the MS-DOS
  27265. Copy command to print a file which includes control codes, it is a good
  27266. idea to use the /b öswitchò, using the syntax:
  27267. 4.5
  27268. copy [filename]/b LPT1
  27269. 4.5
  27270. The insertion of /b after the filename causes MS-DOS to copy in öbinaryò
  27271. mode: i.e. it copies as many bytes as there are in the file. Otherwise,
  27272. in text mode, copying will continue only until the first end-of-file
  27273. marker (Ctrl-Z or ASCII character 26) is reached whereupon it will stop.
  27274. It is of course highly likely that a graphic printfile of many thousands
  27275. of bytes will contain this character several times, so it is not
  27276. surprising that only part of the page is printed!
  27277. 4.5
  27278. Å   Viewing !Draw files ù The standard way to view a draw file is to load
  27279. it into !Draw. However, this has an irritating tendency to place the
  27280. part of the picture you want to see outside the visible window. There
  27281. are (at least) two convenient ways of avoiding this problem:
  27282. 4.5
  27283. One is to load the file into the !Display application from Shareware 26.
  27284. The other is to load it into an Impression frame (or, presumably, a
  27285. frame in one of the other DTP applications). In either case, the drawing
  27286. is scaled to fit the frame (the aspect ratio is preserved, so the
  27287. picture fills either the height of the frame or the width). One
  27288. advantage of Impression is that the frame can very easily be resized and
  27289. the drawing thereby magnified; another is that it makes it very simple
  27290. to display a number of drawings on a page and create an illustrated
  27291. catalogue.
  27292. 4.5
  27293. Å   Floppy disc E format ù So far as I know, the detailed format of ADFS
  27294. discs has not been published either in any of the manuals or in Archive.
  27295. Having recently deleted some files by mistake and been forced into some
  27296. detective work in order to recover them, I thought it might be helpful
  27297. to write down what I have found out about öEò format floppy discs:ù
  27298. 4.5
  27299. With two sides, 80 tracks on each side, 5 sectors on each track, the
  27300. disc has 800 sectors of 1024 (&400) bytes each. The sectors can be
  27301. thought of as being numbered from 0 to 799 in the following order:
  27302. 4.5
  27303.    Track   Head   Sector
  27304. 4.5
  27305.        0       0       0
  27306. 4.5
  27307.        0       0       1
  27308. 4.5
  27309.        0       0       2
  27310. 4.5
  27311.        0       0       3
  27312. 4.5
  27313.        0       0       4
  27314. 4.5
  27315.        0       1       0
  27316. 4.5
  27317.        .       .       .
  27318. 4.5
  27319.        0       1       4
  27320. 4.5
  27321.        1       0       0
  27322. 4.5
  27323.        .       .       .
  27324. 4.5
  27325.        .       .       .
  27326. 4.5
  27327.       79       1       4
  27328. 4.5
  27329. Each byte on the disc has a ödisc addressò equal to the sector number,
  27330. as defined above, times &400 plus the number of bytes into the sector.
  27331. Put it another way:
  27332. 4.5
  27333. the disc address    =   (((( track * 2 ) + head ) * 5 ) + sector ) *
  27334. &400 + bytes into sector
  27335. 4.5
  27336. Map format Ö The first two sectors on the disc contain duplicate copies
  27337. of the disc map. The first 64 bytes of the map contain the following
  27338. information:
  27339. 4.5
  27340. byte  0   a checksum byte
  27341. 4.5
  27342. bytes 1/2   the number of bits to the place in the map which marks the
  27343. first free space on the disc, counting from the beginning of byte 1 (if
  27344. there is no free space this number will be zero); the top bit of the 16
  27345. is always set, so, for instance, the value &8310 in these two bytes
  27346. would indicate that the first free space in the map could be found &310
  27347. bits or &310 DIV 8 bytes from byte 1, i.e. at byte &63
  27348. 4.5
  27349. byte  3   &FF
  27350. 4.5
  27351. bytes 4-35   the ödisc recordò as described on pages 1012/3 of the PRM
  27352. containing various details about the disc size, etc. which are the same
  27353. on all öEò format discs, ending with the Disc ID at bytes 24/5 and the
  27354. disc name from byte 26 to byte 35.
  27355. 4.5
  27356. bytes 36-63   reserved (all zero)
  27357. 4.5
  27358. bytes 64-863 (800 bytes) ù the actual disc map.
  27359. 4.5
  27360. Each byte in the map represents one disc sector and the contents of the
  27361. map indicate how the disc is divided up between the various objects
  27362. (directories and files) on it. Each portion of the map is at least 2
  27363. bytes long, it begins with an identifying number (max. 15 bits), ends
  27364. with a 1 in the top bit of the last byte and all the bits in between are
  27365. zero. Thus, for instance, if the file with the identifying number 7
  27366. occupies 3 sectors the relevant portion of the map reads as follows:
  27367. 4.5
  27368. first byte   &07
  27369. 4.5
  27370. next byte   &00
  27371. 4.5
  27372. last byte   &80  (1 in the top bit)
  27373. 4.5
  27374. The lowest identifying number is 2 and is reserved for the four sectors
  27375. which are initialised when the disc is formatted and which comprise the
  27376. two map sectors followed by the two sectors containing the root
  27377. directory. Identifying numbers are then allocated, in order, as new
  27378. objects are created.
  27379. 4.5
  27380. A file may be fragmented into several pieces, in which case several
  27381. portions of the map will contain the same identifying number.
  27382. 4.5
  27383. The portions of the map indicating free space on the disc are linked
  27384. together by a chain of pointers. As mentioned above, bytes 1 and 2, at
  27385. the start of the map sector, point to the first free space in the map.
  27386. At that point there is a similar pointer to the next free space (if any)
  27387. and so on until the last free space is reached, where the pointer is
  27388. zero.
  27389. 4.5
  27390. A defective sector on the disc is identified in the map by number 1.
  27391. 4.5
  27392. Directory structure Ö Each directory takes up two sectors. As mentioned
  27393. above, the root directory occupies the third and fourth sectors on the
  27394. disc (from disc address &800 to &FFF). Any sub-directory can be located
  27395. by looking up the relevant entry in its parent directory, finding the
  27396. identifying number (in the manner described below) and looking up the
  27397. number in the disc map.
  27398. 4.5
  27399. The first five bytes in a directory contain a checksum byte followed by
  27400. the string öNickò. Then there are up to 77 entries of 26 bytes each
  27401. representing the various objects (files and sub-directories) in the
  27402. directory.
  27403. 4.5
  27404. The format of each of these entries is:
  27405. 4.5
  27406. bytes  0-9   name of file or sub-directory
  27407. 4.5
  27408. bytes 10-13   load address
  27409. 4.5
  27410. bytes 14-17   execution address
  27411. 4.5
  27412. bytes 18-21   file length
  27413. 4.5
  27414. byte  22   sector offset (see below)
  27415. 4.5
  27416. bytes 23-24   identifying number as used in the map
  27417. 4.5
  27418. byte  25   file attributes.
  27419. 4.5
  27420. If the top 12 bits of the load address are all set (i.e. are &FFF) this
  27421. means that the file is östampedò and the remainder of the load and
  27422. execution address fields are used to record the file type and date stamp
  27423. as follows:
  27424. 4.5
  27425. load address      FFFtttdd
  27426. 4.5
  27427. execution addressdddddddd
  27428. 4.5
  27429. (the bottom byte of the load address field being used for the top byte
  27430. of the 5-byte format date and time record).
  27431. 4.5
  27432. Note: in a disc sector editor which shows the bytes in order with the
  27433. lowest byte of each word first, these 8 bytes will appear as   ödd tt Ft
  27434. FF dd dd dd ddò.
  27435. 4.5
  27436. If not all the top 12 bits are set, the load and execution addresses
  27437. will (as their names suggest) determine what the computer does when the
  27438. file is *LOADed or *RUN (or double-clicked from the Desktop).
  27439. 4.5
  27440. The sector offset in byte 22 is used where two files are mapped into the
  27441. same portion of the disc. In such a case the files share the same
  27442. identifying number (in bytes 23/4) but byte 22 indicates how many
  27443. sectors into the portion each file starts.
  27444. 4.5
  27445. A typical example of this would involve two small files each fitting
  27446. into one disc sector (they might for instance be !Boot, !Run or !Sprites
  27447. files within an application directory). Because the minimum size of a
  27448. map entry is 2 bytes representing 2 sectors on the disc, it would be
  27449. inefficient to give each file a separate map entry, so the two files
  27450. would be made to share. In this case, assuming the shared identifying
  27451. number is say 8, bytes 23 and 24 of the directory entries for both files
  27452. would be &08 and &00 but byte 22 would be &01 for the file that occupies
  27453. the first sector and &02 for the second.
  27454. 4.5
  27455. In the usual situation where a file has a map entry to itself, byte 22
  27456. is zero.
  27457. 4.5
  27458. The bits of byte 25 (the file attributes byte) are used as follows:
  27459. 4.5
  27460. bit  0   object has read access for you
  27461. 4.5
  27462. bit  1   object has write access for you
  27463. 4.5
  27464. bit  2   undefined
  27465. 4.5
  27466. bit  3   object is locked against deletion
  27467. 4.5
  27468. bit  4   object has read access for others
  27469. 4.5
  27470. bit  5   object has write access for others
  27471. 4.5
  27472. bit  6   undefined
  27473. 4.5
  27474. bit  7   undefined
  27475. 4.5
  27476. Bits 4 and 5 only have meaning to the network filing system. Bits 2, 6
  27477. and 7 should be set to zero.
  27478. 4.5
  27479. General note: If you want to explore disc maps and directories it is
  27480. very handy to have a disc sector editor such as the !DiscEdit appli
  27481. cation on Careware 2. Failing that it is reasonably easy to construct a
  27482. program to read from a disc sector by sector (rather than file by file)
  27483. and to display the contents. The key to such a program is the SWI call
  27484. öADFS_DiscOpò. For instance, the BASIC instruction:
  27485. 4.5
  27486. SYS öADFS_DiscOpò,0,1,address%,buffer%,length%
  27487. 4.5
  27488. will read starting at the ödisc addressò (as defined above) given in the
  27489. variable address%, the number of bytes given in length% (1024 for one
  27490. sector) into the address in RAM stored in buffer%. Obviously, a certain
  27491. amount of caution is advisable since a very similar command (replacing 1
  27492. with 2 for instance) could result in writing to and corrupting the
  27493. contents of a disc.
  27494. 4.5
  27495.  
  27496. 4.5
  27497.  
  27498. 4.5
  27499. {4 .5
  27500. Å   Caverns Ö A simple map and the passwords are given at the end of the
  27501. magazine on page 60. Neil Berry
  27502.  
  27503. Å Cheats Ö Here are some cheats for various games.  (I suggest that if
  27504. you do any of these, you do not use the original disc, but rather work
  27505. on a copy.  Ed.)
  27506. 4.04
  27507. Cheat for Minervaæs BattleTank  If you run the following program you
  27508. will have however many lives you specified at line 20:
  27509. 4.04
  27510.    program segment missing
  27511. 4.04
  27512. Cheat for 4th Dimensionæs Inertia - Type in the following and then each
  27513. time you lose a life, you wonæt!
  27514. 4.04
  27515.    program segment missing
  27516. 4.04
  27517. Cheat for 4th Dimensionæs Man-At-Arms Ö The passwords for the 3 stages
  27518. are: INCUBUS, STRANGE and PULSARS
  27519. 4.04
  27520.    progam segment missing
  27521. 4.04
  27522. When you run this program, it will allow you loads of lives, punches and
  27523. lots of energy.  Be careful not to set any of the variables at &FF
  27524. because it does tend to make the program crash!
  27525. 4.04
  27526. Cheat for Minervaæs RedShift Ö Once the game has loaded, type the
  27527. following:
  27528. 4.04
  27529.    PHASING GERALD
  27530. 4.04
  27531. Note:  When you pressed <11>, the screen will change to the Help screen.
  27532. Take no notice of this and keep typing the rest of the words in.
  27533. Remember that there is a space between the two words!
  27534. 4.04
  27535. If you have entered this correctly, you will hear a bleep.  Then just
  27536. press <1> or <2> to play the game and when your Energy is low just press
  27537. <E> and youæll see the energy level is full again!  Also, when your
  27538. TurboEnergy is low press <T> and you will be back to full strength!
  27539. 4.04
  27540. Cheat for 4th Dimensionæs E-Type Ö The following will give you as many
  27541. minutes as you like to get round each track:
  27542. 4.04
  27543.    program segment missing
  27544. 4.04
  27545. Type in the above and youæll have all the time you want to round each
  27546. track!  Mark Faulkner.
  27547. 4.04
  27548. Å DOS RAM Disc Ö In DOS, it is possible to set up a RAM disc and indeed,
  27549. for many applications, it is vital to do so if one does not have the
  27550. luxury of a hard disc.  Regular DOS supports a maximum of 640 kbytes of
  27551. RAM, although we did learn about Extended Memory in last monthæs
  27552. Archive.  The problem with a DOS RAM disc is that the memory is actually
  27553. taken from the 640k system RAM.  At least it certainly is with current
  27554. versions of the PC Emulator.
  27555. 4.04
  27556. A few months ago, an application appeared on the magazine disc called
  27557. !PCRamDisc.  This made use of the fact that the PC emulator can support
  27558. up to two öhard discò partitions and that one of these could be in the
  27559. Archimedes RAM disc filing system.  (In fact one of these can be on an
  27560. ADFS floppy!).  In this way, a large RAM disc can be used within DOS
  27561. which does not take anything from the regulation DOS 640k.  This seemed
  27562. a really good idea and I was eager to try it out.
  27563. 4.04
  27564. The program which produced the DOS partition is a variation of the Acorn
  27565. program to construct a hard disc partition but with the filing system
  27566. and paths changed and with the allowed partition sizes also changed to
  27567. more convenient values.  Having created such a partition, the !Run2 file
  27568. must be modified to tell the machine where the partitions are.
  27569. 4.04
  27570. Then, when the emulator is run, the new ödriveò must be initialised
  27571. using FDISK and then formatted using FORMAT.  This part really annoyed
  27572. me as I had to do it each time I used the emulator, and I kept for
  27573. getting what to do.
  27574. 4.04
  27575. It seemed a good idea to create a ready-formatted and initialised
  27576. partition before entering the emulator.  I am sure someone could write a
  27577. program to do this, but not me.  Obviously, it would be silly to store,
  27578. say, a 2 megabyte partition in readiness; this is just a waste of space.
  27579. However, I discovered that an initialised, formatted, but otherwise
  27580. empty DOS partition of one megabyte capacity could be compressed to just
  27581. over a kilobyte using Archimedes ARC, a Public Domain file compression/
  27582. decompression program written by David Pilling.
  27583. 4.04
  27584. On the magazine disc there is an application called !PCRamDisk (note the
  27585. different spelling).  This contains a compressed but empty DOS partition
  27586. which is decompressed into the RAMFS before invoking the PC emulator.
  27587. Please read the !Help file before using it as the !Run2 file of the
  27588. emulator is overwritten when the application is run.  Brian Cowan.
  27589. 4.04
  27590.  
  27591.  
  27592.  
  27593.  
  27594. Å Basic Text File Type Ö Acorn have specified field type &FD1 for BASIC
  27595. ASCII text.  This is very useful for BASIC programs which are kept in
  27596. !Edit format as it allows the user to define a RunType for them.  For
  27597. example, the following command will cause a BASIC text file to be run
  27598. just like a normal BASIC file:
  27599. 4.03
  27600.    *Set Alias$@RunType_FD1 Basic-quit |ö%0|ò %*1
  27601. 4.03
  27602. Jim Markland, Cirencester.
  27603. 4.03
  27604. Å Converting old Arthur programs to RISC OS Ö Before the days of RISC-
  27605. OS, programs running under the old Arthur used a form of reconfigure
  27606. system to adjust the CMOS RAM settings.  Now that RISC-OS is available,
  27607. those programs are out of date, and are a pain, as in most cases they
  27608. donæt öBoot-Upò from the desktop.
  27609. 4.03
  27610. RISC-OS uses a different form of reconfiguring.  Two in fact Ö one is
  27611. the WimpSlot command, which tells the computer the minimum and maximum
  27612. amount of memory the program is going to need and the other uses the
  27613. module MemAlloc, found in the !Lander directory on Application disc 2.
  27614. 4.03
  27615. These two things are quite easy to use.  The only problem is how to find
  27616. out how much room the program is going to use.  This can be discovered
  27617. fairly easily.
  27618. 4.03
  27619. Load up the !Boot file and examine it using the BASIC Editor.  What you
  27620. are looking for are a set of commands/variables, which tell the computer
  27621. the amount of SpriteSize/Screensize, etc it is going to need to run.  To
  27622. convert this, all you need is the MemAlloc module, and in a run file,
  27623. use MemAlloc to allocate the memory needed for the application.
  27624. 4.03
  27625. Here are some examples:
  27626. 4.03
  27627. Holed Out
  27628. 4.03
  27629. 1. Format a fresh new disc
  27630. 4.03
  27631. 2. Create a new directory called !HoledOut
  27632. 4.03
  27633. 3. Copy all the files on the original Holed Out disc, except the !Boot
  27634. file into the new directory.
  27635. 4.03
  27636. 4. Copy MemAlloc into the !HoledOut directory.
  27637. 4.03
  27638. 5. Use !Edit to create the following Obey file:
  27639. 4.03
  27640.    program segment missing
  27641. 4.03
  27642. 6. Load HoledOut 2 into the BASIC Editor and, where the program loads a
  27643. particular file, change it to
  27644. 4.03
  27645.    (LoadCommand) <HoledOut$Dir>. (File to be loaded)
  27646. 4.03
  27647. for example
  27648. 4.03
  27649.    70 *RMLOAD BELL
  27650. 4.03
  27651. change to
  27652. 4.03
  27653.    70 *RMLOAD <HoledOut$Dir>.Bell
  27654. 4.03
  27655. and
  27656. 4.03
  27657.    610 CHAIN öHOLEDOUT3ò
  27658. 4.03
  27659. change to
  27660. 4.03
  27661.    610 CHAIN  ö<HoledOut$Dir>.HOLEDOUT3ò
  27662. 4.03
  27663. etc, etc.
  27664. 4.03
  27665. 7. Do the same as above to the file HOLEDOUT3, wherever the program
  27666. loads a particular file, put the command<HoledOut$Dir>. in front of the
  27667. filename.
  27668. 4.03
  27669. 8. Create a !Sprite file for the application icon and away you go!
  27670. 4.03
  27671. Then HoledOut should run as a RISC-OS application, and will also run off
  27672. a Hard Drive (N.B. I used Holed Out Extra Courses 1)
  27673. 4.03
  27674. Explanation of !Run File:
  27675. 4.03
  27676. Line 1:  Tells the computer to set a directory, and to enter it without
  27677. changing the root directory whenever the <HoledOut$Dir> command is used.
  27678. 4.03
  27679. Line 2:  Allocates the minimum and maximum amount of memory needed to
  27680. run the application.
  27681. 4.03
  27682. Line 3:  Tells the computer to look for the module MemAlloc in memory,
  27683. if it isnæt found then it tells the computer where to find it and loads
  27684. it.
  27685. 4.03
  27686. Lines 4-9:  Tell the computer the memory settings the program needs.
  27687. 4.03
  27688. Line 10:  Kills the module MemAlloc for more memory.
  27689. 4.03
  27690. Line 11:  Runs the actual program.
  27691. 4.03
  27692. Pacmania:
  27693. 4.03
  27694. In this case, things are a little different.  So do the following:
  27695. 4.03
  27696. 1.  Format a new disc.
  27697. 4.03
  27698. 2.  Create a new directory called !PacMania.
  27699. 4.03
  27700. 3.  Copy all the files except !Boot into the new directory.
  27701. 4.03
  27702. 4.  Use !Edit to create an Obey file containing the following...
  27703. 4.03
  27704.    Set PacMania$Dir <Obey$Dir>
  27705. 4.03
  27706.    Run <PacMania$Dir>.!RunLoad
  27707. 4.03
  27708. 5.  Use the BASIC Editor to create a file called !RunLoad...
  27709. 4.03
  27710.    10 *Load <PacMania$Dir>.PacMania 10000
  27711. 4.03
  27712.    20 CALL &100000
  27713. 4.03
  27714. 6.  Create an application !Sprite file.
  27715. 4.03
  27716. PacMania should then run as a RISC-OS application.
  27717. 4.03
  27718. So there we are, Iæve also used another command to help with the loading
  27719. process.  <Obey$Dir> and <(Application name)$Dir>.  These two commands
  27720. tell the computer where to find certain files, no matter where they are.
  27721. (Hidden in directories on a hard drive for example.)  Duncan Burbidge.
  27722. 4.03
  27723. Å Getting Taxan 795 to work with Archimedes.  The Taxan 795 is an
  27724. excellent multi-sync colour monitor, but it was a bit unnerving, on
  27725. unpacking and assembling my new A440 with VIDC Enhancer and 795 monitor,
  27726. to be confronted with a screen which just would not synchronize!  But,
  27727. with help from Paul and from Atomwide, and with a lot of exploration, I
  27728. think that I now know what screen modes it will support and how to get
  27729. them.
  27730. 4.03
  27731. Initially, the trick is to set *CONFIGURE MONITORTYPE 1 and *CONFIGURE
  27732. WIMPMODE20.  Then the machine wakes up in the desktop in mode 20 whether
  27733. or not the VIDC enhancer software (VIDCmodes for the 795) is installed,
  27734. provided that (if it is not installed) the VIDC switch is Éoffæ.
  27735. However, if VIDCmodes is not installed, loading an application which
  27736. changes the mode to one of the basic Archimedes modes (0-17) plunges you
  27737. back into an unsynchronized screen.  Therefore, my initial explorations
  27738. were done with an ordinary monchrome monitor connected to the sync BNC
  27739. socket, after changing two links on the circuit board Ö as explained on
  27740. page 434 of the RISC-OS user guide.  Options for all Acorn and Atomwide
  27741. modes (except the high-resolution mono mode 23) are listed in the
  27742. accompanying table.  (See opposite.)  Bill Mapleson.
  27743. 4.03
  27744. Å Keywords in BASIC Ö I have found that PRINT ÉSHIFT F1æ showed a lower
  27745. case underline Éaæ.  From BASIC on pressing return to ÉPRINTæ the result
  27746. I found a number that looked just like TIME.  It was.  SHIFT F2 gives
  27747. HIMEM and SHIFT F3 = LOWMEM.  No other Fkey gives a number, but they all
  27748. act as quick entry keys for use in BASIC program writing within ARMB
  27749. edit.  They must be programmed with BASIC keyword token values.
  27750. 4.03
  27751. I expect this is widely known but here is the list for completeness.
  27752. 4.03
  27753.    program segment missing
  27754. 4.03
  27755. Simon Anthony, Nottingham.
  27756. 4.03
  27757. Å Locating screen coordinates Ö When writing wimp programs (out of
  27758. desktop) itæs often hard to plot things because youære not sure what the
  27759. coordinates of the screen are.  Using the program below, it is possible
  27760. to do this.
  27761. 4.03
  27762.    program segment missing
  27763. 4.03
  27764. I hope the program is of some use to wimp programmers.  Duncan Burbidge.
  27765. 4.03
  27766. Å MSDOS installation on hard disc Ö Here is a summary of the steps for
  27767. getting an MSDOS partition installed onto a hard disc.
  27768. 4.03
  27769. 1. (This step applies only if you have an old PCEmulator, e.g. V1.20,
  27770. and a V1.33 upgrade disc)
  27771. 4.03
  27772. (a) Read ÉReadMe2æ on the V1.33 disc.
  27773. 4.03
  27774. (b) Run ÉMakePCæ on the V1.33 disc.  (This copies the file !PC.Rom from
  27775. the 1.20 disc to the 1.33 disc.  Although the desktop displays this as a
  27776. Étextæ file, I reckon that in fact it is the emulator itself and that
  27777. all the other files are concerned with preparing the Archimedes to run
  27778. the Emulator.)
  27779. 4.03
  27780. 2.  Read ÉReadMeæ on V1.33 but donæt take too much notice of it Ö it
  27781. confused me a lot!
  27782. 4.03
  27783. 3.  Examine the files !PC.GenBoot.! Config and !PC.GenBoot.!Modules.  If
  27784. you have more than 1M of RAM, it may be worth changing some of the ÉYæs
  27785. to æNæs in !Config.  When I first tried it, without any changes, my
  27786. screen went blank because my Taxan 795 monitor requires the VIDC
  27787. Enhancer and the VIDCmodes software installed in order to synchronize
  27788. when not in modes 18-21.  With a 4M machines, I decided to make all the
  27789. response ÉNæ and everything seemed OK.
  27790. 4.03
  27791. 4.  If you have a SCSI hard disc (as I have), run !SCSIDisk.  This
  27792. renames !PC.SCSIRun2 to !PC.!Run2 and !PC.!Run2 to !PC.!ADSF[sic]Run2.
  27793. That is, it makes !Run2 the file that defines where the MSDOS partition
  27794. is to be placed Ö on a SCSI hard disc not on an ADFS one.  !SCSIDisk
  27795. then creates a file ÉPC.Drive_Cæ on the SCSI disc of the size you
  27796. request (1 to 32M).  This file can be *TYPEd from the Archimedes command
  27797. line Ö but donæt do it until everything is complete because its contents
  27798. misled me!  The screen then displays information for running two MSDOS
  27799. commands:  FDISK and HDINSTAL.  It also displays the injunction ÉPress
  27800. ESCæ to stop:  Press RETURN to continueÉ.
  27801. 4.03
  27802. 5.  If you press <return>, the instructions are cleared from the screen;
  27803. the PC Emulator is loaded, and you are invited to put the MSDOS boot
  27804. disk into ÉDriveAæ (Drive0).  Doing so, and pressing <return>, loads
  27805. MSDOS which asks for date and time Ö but pressing <return> in response
  27806. to each request supplies the information from the system clock.  When
  27807. the ÉA>æ prompt appears, you need to carry out the instructions that
  27808. were recently wiped off the screen:  Type ÉFDISKæ, then É1æ to create a
  27809. DOS partition, then ÉYæ to assign all of file Drive_C to DOS: then
  27810. ÉHDINSTALæ which formats the hard disc and transfers the MSDOS system
  27811. files from the floppy MSDOS boot disc to the hard disc.
  27812. 4.03
  27813. 6.  If you press ESC (at the ÉESC to stop, <return> to continueæ
  27814. injunction) and need to run !SCSIDisk again, beware that this will re-
  27815. rename the !Run2 files.  I avoided this by ÉRemmingæ the *rename
  27816. statements in !SCSIDisk.!RunImage.  (This is a BASIC program from which
  27817. it would appear that the procedure for installing MSDOS on an ADFS hard
  27818. disc would be the same without the complication of renaming the !Run2
  27819. files.)
  27820. 4.03
  27821. 7.  Once MSDOS is safely on the hard disc, the !PC application can be
  27822. transferred from the V1.33 disk to the PC directory on the hard disk.
  27823. 4.03
  27824. 8.  One last complication fo me was that when I type ÉHDINSTALæ I go the
  27825. quaint message Éinsert new diskette in drive Cæ and, on pressing
  27826. <return>, Édrive not read Ö format failureæ.  Eventually, after many
  27827. hours and several phone calls, the explanation turned out to be that I
  27828. have two external 5.1/4ö drives and MSDOS was seeing the second of these
  27829. as Drive C and the SCSI hard disc as Drive D.  To avoid amending
  27830. HDINSTAL (which is a simple batch file) I told RISC-OS that it had only
  27831. two floppy drives (*CONFIGURE FLOPPIES 2, followed by <ctrl-break>) and
  27832. all went smoothly.  Subsequently I reconfigured to three floppies and
  27833. now MSDOS wakes up with a ÉD>æ prompt ready to run from the hard disc.
  27834. The most useful tool for finding out what MSDOS thinks it has is to type
  27835. CHKDSKA:.CHKDSKB: etc,
  27836. 4.03
  27837. 9.  Finally, in RISC-OS, lock the ÉDrive_Cæ file.  Iæm astonished that
  27838. this is not done by the PCEmulator programs.  Without it, a careless
  27839. click in RISC-OS might destroy all your MSDOS files!  Bill Mapleson.
  27840. 4.03
  27841. Å Saving your configuration settings Ö I recently needed to change the
  27842. batteries in my Archimedes but this meant that I would lose the
  27843. configuration settings stored in the CMOS RAM.  I managed to solve the
  27844. problem by writing two small programs that saved and then restored the
  27845. CMOS RAM settings to and from a file.
  27846. 4.03
  27847.    program segment missing
  27848. 4.03
  27849. Sham Gardner, Karlsruhe (Germany).
  27850. 4.03
  27851. (The other way of doing it is to open the computer, switch the computer
  27852. on, change the batteries, switch off and then put the computer back
  27853. together again Ö but I dare not suggest that you should do that because
  27854. someone might stick a screwdriver into the heavily protected p.s.u. and
  27855. Iæd get blames Ö so I didnæt suggest it, OK? Ed.)
  27856. 4.03
  27857. Å Wimpslotting warning.  Always give the maximum amount of memory your
  27858. program is going to use.  Otherwise, the computer will eat up all the
  27859. available memory and use it for the program and you canæt get the memory
  27860. back unless you quit the application!  This happens in FormEd (All
  27861. versions, I would assume).  The FormEd !Run file contains the line:
  27862. 4.03
  27863.    WimpSlot -min 288k
  27864. 4.03
  27865. Using !Edit, change this line to...
  27866. 4.03
  27867.    WimpSlot -min 288k -max 288k
  27868. 4.03
  27869. The program will then run, using up less memory, meaning that both
  27870. !FormEd and !Paint can run at the same time on a 1M machine.  You have
  27871. been warned.  Duncan Burbidge.
  27872. 4.03
  27873.  
  27874.  
  27875.  
  27876. Å 160k ADFS Discs (continued from Archive 4.1 p9) Ö It is certainly true
  27877. that the Archimedes can be made to read and write 160k or 320k ADFS
  27878. discs correctly.  I think, however, that the Archimedes Éseesæ these as
  27879. 640k L format discs and if a read or write operation directs it to a
  27880. track beyond 39 (160k) it will try to push the disc head off the edge of
  27881. the disc searching for tracks that arenæt there.  Fine if you know what
  27882. youære doing.  Lorcan Mongey.
  27883. 4.02
  27884. Å Am I in the desktop?  You can use the Wimp_ReadSysInfo SWI command to
  27885. see if your program is running in the desktop or not.  The command
  27886. returns the number of active tasks, which will be zero if the program is
  27887. running outside of the desktop environment.  The example program below
  27888. will sense whether it has been run from the desktop environment and if
  27889. not, it will start up the desktop before running another application (in
  27890. this case !Edit).
  27891. 4.02
  27892.    program segment missing
  27893. 4.02
  27894. Adrian Look.
  27895. 4.02
  27896. Å Apocalypse hints & tips Ö If you shoot the green T-shaped buildings
  27897. with a triangular roof using a mega photon your shield will be replen
  27898. ished.  If you shoot a purple and green mushroom, your shield will go
  27899. into override but your points are decreased for anything you hit with
  27900. the photons you are allocated.  If you shoot a rectangular brown
  27901. building they leave a shallow pyramid and if you shoot this, a Rakon
  27902. Gomjabba will appear and you will get a few more points for destroying
  27903. this.  If you shoot a Snail Rider with a mega photon, your energy banks
  27904. are recharged.  If you shoot a green mushroom, your score will decrease
  27905. for everything you hit with the mega photons allocated.
  27906. 4.02
  27907. If you type in and run the following program with disc two in drive 0
  27908. you will then be able to access all of Apocalypseæs nine worlds.
  27909. 4.02
  27910.    program segment missing
  27911. 4.02
  27912. Paul Bedford.
  27913. 4.02
  27914. Å Bug in the Debugger Module Ö Some of you may be aware of a problem
  27915. with the Debugger module failing to disassemble certain instructions
  27916. correctly if they contain an immediate constant.  An immediate constant
  27917. is stored as an eight-bit value with a 4-bit shift applied, and the
  27918. debugger normally expands this format to its correct value, but
  27919. occasionally fails, e.g.
  27920. 4.02
  27921.    E28F0C01 ADD R0,PC, #&0100 correctly expanded
  27922. 4.02
  27923.    E28F0D01 ADD R0,PC, #&01,26 failed to expand (should be #&40)
  27924. 4.02
  27925. I have disassembled the debugger module and found the offending piece of
  27926. code.  It doesnæt seem to be a bug, rather a deliberate move to expand
  27927. constants differently under certain circumstances but for no obvious
  27928. reason.  Anyway, the fix is to change the word at offset &920 in the
  27929. module from &1A000028 to &FA000028, effectively changing a BNE to a BNV.
  27930. This seems to solve the problem, although I havenæt tested this fix
  27931. exhaustively, so proceed with caution.  Lorcan Mongey.
  27932. 4.02
  27933. Å BUILDing !Run files Ö If you write a !Run file using *BUILD and want
  27934. to include a line such as:
  27935. 4.02
  27936.    Run <Obey$Dir> .!RunImage
  27937. 4.02
  27938. then, instead, you should type:
  27939. 4.02
  27940.    Run |<Obey$Dir>.!RunImage
  27941. 4.02
  27942. to prevent RISC-OS from inserting the value of Obey$Dir into the file.
  27943. It may be obvious but until now I have been using !Edit to write a two
  27944. line Obey file!  Elliott Hughes.
  27945. 4.02
  27946. Å Copy Options Ö öConfirmò and öVerboseò Ö I think this is probably one
  27947. of those hints which would be classed as öobviousò by those who know it:
  27948. The Archimedes User Guide and the PRM both describe, at some length, the
  27949. use of the system variable Copy$Options which sets default options for
  27950. the *Copy command.  However, neither make if clear that the desktop
  27951. filer has its own öConfirmò and öVerboseò options which are quite
  27952. independent of those which are stored in the system variable.  Thus no
  27953. amount of modification of Copy$Options in boot files or elsewhere will
  27954. affect the way the desktop behaves.
  27955. 4.02
  27956. The filer options can be read and changed by clicking the menu button
  27957. over any directory window and choosing the Options option.  The options
  27958. selected by this route differ in one significant way from the
  27959. Copy$Options in that they are stored in battery-backed RAM and thus are
  27960. preserved when the machine is switched off or reset.  They are stored in
  27961. byte 198 of the CMOS RAM (not byte 195 as my copy of the PRM says) along
  27962. with various other desktop options:
  27963. 4.02
  27964.    program segment missing
  27965. 4.02
  27966. Having these options stored in CMOS RAM can sometimes be an advantage
  27967. but on the whole I find it rather inconvenient.  For instance, I often
  27968. change temporarily from an icon display to öFull Infoò and would like
  27969. icons to be restored after a reset.  Luckily this sort of preference can
  27970. easily be dealt with by a few lines in the boot routine.  For instance,
  27971. the following lines of BASIC will reset the Display mode to small icons
  27972. while preserving the other options:
  27973. 4.02
  27974.    program segment missing
  27975. 4.02
  27976. Hugh Eagle.
  27977. 4.02
  27978. Å Cut and paste clip board Ö Many RISC-OS applications have a Écut and
  27979. pasteæ option.  If these applications can also edit more than one
  27980. document at a time then you can use the Écut and pasteæ option as a clip
  27981. board to transfer data from one document to another.  For example, you
  27982. can select a block of text in one !Edit document, move to another
  27983. document and then use the <ctrl><c> option to copy the block into that
  27984. document.  This method will also work with applications such as
  27985. PipeDream but not Ovation or Impression, etc as they use the Éclip
  27986. boardæ method.  Steve Drain.
  27987. 4.02
  27988. Å Deskjet Plus Ink Cartridges, Recharging Ö You may have discovered the
  27989. same problem as me when trying to recharge these cartridges, namely that
  27990. the ink wonæt go in the hole!
  27991. 4.02
  27992. A bit of reverse engineering, with the aid of a hacksaw, has revealed
  27993. the cause.  The container is filled with a dense spongy material which
  27994. holds the ink, but this does not enter the cavity formed by the raised
  27995. green portion with the central vent hole.  If a syringe needle is
  27996. entered through this hole it must be long enough to reach into the
  27997. sponge.  At least 20mm is required.  If this is not the case then the
  27998. inserted ink charge is held on top of the sponge by surface tension, and
  27999. quickly overflows through the charge hole.
  28000. 4.02
  28001. The only syringes which I can get hold of are intended for diabetics and
  28002. have a needle which is too short to reach the sponge through the top
  28003. hole.  The solution is to fill the sponge through the top hole.  The
  28004. solution is to fill through a second hole, drilled as small as possible,
  28005. on the 3mm wide land to the side of the raised portion.  In this
  28006. location there is a small internal cavity not filled with sponge.  This
  28007. prevents capillary leakage after recharging.
  28008. 4.02
  28009. Archive readers may be interested in the following program which will
  28010. draw a sketch showing the location of the hole.  It should be made as
  28011. close to the vertical wall of the raised portion as is possible.
  28012. 4.02
  28013.    program segment missing
  28014. 4.02
  28015. With regard to inks I have excellent results with Rotring Art Pen Ink
  28016. which comes in many colours.  Bill Graham.
  28017. 4.02
  28018. Å MEMC DMA control register Ö With reference to Sean Kellyæs tip in June
  28019. É90 for gaining extra speed from the Archimedes by disabling the VIDCæs
  28020. DMA access.  Although the technique normally works without any trouble,
  28021. occasionally the machine crashes or has its memory contents corrupted.
  28022. As Sean correctly stated, bit 10 of the MEMC register controls VIDC DMA,
  28023. however, as the dynamic RAM (DRAM) in the machine is no longer being
  28024. read by the VIDC it is also no longer being refreshed properly.  Bits 8
  28025. & 9 of the MEMC come to the rescue, they are the DRAM refresh control
  28026. bits.
  28027. 4.02
  28028. There are three available modes of refresh:-
  28029. 4.02
  28030.             bit 8   bit 9
  28031. 4.02
  28032. a) no refresh         1   0
  28033. 4.02
  28034.     (not used by the Archimedes)
  28035. 4.02
  28036. b) refresh during video flyback      0   1
  28037. 4.02
  28038. c) continuous refresh         1   1
  28039. 4.02
  28040. Flyback time during standard modes (0-16 & 24) is greater than the DRAM
  28041. holding time and as such requires refresh during flyback.  In multi-sync
  28042. modes the flyback time is much faster and the memory does not need to be
  28043. refreshed by the MEMC.
  28044. 4.02
  28045. The codes for the various modes are:-SYSöOS_UpdateMEMCÉ,768,1792 to turn
  28046. off the VIDC DMA and invoke continuous refresh and
  28047. SYSöOS_UpdateMEMCÉ,1536,1792 to return to normal for standard modes.
  28048. 4.02
  28049. It should be pointed out that the continuous refresh mode uses the DMA
  28050. video pointer as the refresh address source, incrementing the pointer
  28051. after use.  As such this should be used with care if the pointer is used
  28052. as an active part of your program whilst the screen is blanked.  (But
  28053. why would you want to move the pointer if you canæt see it??)
  28054. 4.02
  28055. There is also a sound DMA control bit in the MEMC but as this does not
  28056. affect memory refresh bits 8 and 9 which do not need to be altered.
  28057. 4.02
  28058. Bit 11 Ö 0 Sound DMA disable
  28059. 4.02
  28060.               1 Sound DMA enable
  28061. 4.02
  28062. Rob Swain.
  28063. 4.02
  28064. Å Modifying the RISC-OS dot matrix printer driver Ö To add a new dot
  28065. matrix printer configuration to the RISC-OS printer driver you will need
  28066. to alter the ÉPrDataæ file in the É!PrinterDMæ directory (on you
  28067. Applications Disc One or RISC-OS Extras Disc = Shareware 17):
  28068. 4.02
  28069. 1)  Make sure you have made a back up copy
  28070. 4.02
  28071. 2)  Run the !Edit program on Applications Disc One
  28072. 4.02
  28073. 3)  Double click on the copy of !PrinterDM that you wish to alter,
  28074. whilst holding the <shift> key down Ö a filer window will then open with
  28075. the contents of the !PrinterDM application inside
  28076. 4.02
  28077. 4)  Double click on the ÉPrDataæ file in the !PrinterDM filer window Ö a
  28078. text window will then open
  28079. 4.02
  28080. 5)  Use the arrow keys to position the caret (red vertical text cursor)
  28081. just before the ÉConfigured optionsæ heading and after the row of full
  28082. stops
  28083. 4.02
  28084. 6)  Add the following text changing the information to match your
  28085. printer (the example below adds a Shinwa CP80/Lucas LX80 option to the
  28086. RISC-OS printer driver):
  28087. 4.02
  28088.    program segment missing
  28089. 4.02
  28090. Alan Dawes
  28091. 4.02
  28092. Å Nevryon hints & tips Ö Nevryon passwords for level three, five and
  28093. seven are given at the foot of this column, the letters being reversed
  28094. for the benefit of those who prefer to ignore them.
  28095. 4.02
  28096. The following Nevryon cheat allows the ship to be upgraded to have any
  28097. weapons desired and energy/credits/lives may also be altered.
  28098. 4.02
  28099. Load the É!Nevryon.Multiæ file on the Nevryon disc 1 and insert the
  28100. following at line 211.
  28101. 4.02
  28102.    211 Dump=PAGE-&3F800:Dump?n=value
  28103. 4.02
  28104. where n is:
  28105. 4.02
  28106. n=27:   Ship speed, 4 recommended
  28107. 4.02
  28108. n=28:   Shield orb (top), 1=ON 0=Off
  28109. 4.02
  28110. n=29:   Shield orb (bottom), 1=ON 0=OFF
  28111. 4.02
  28112. n=30:   RAM, 1=ON, 0=OFF
  28113. 4.02
  28114. n=32:   Gun droids, 0-2
  28115. 4.02
  28116. n=33   Lasers, 0-2
  28117. 4.02
  28118. n=35:   Number of credits (default 3)
  28119. 4.02
  28120. n=36:   Number of lives (default 4)
  28121. 4.02
  28122. n=37:   Starting secondary weapons status, 0=Off, 1=flamer, etc
  28123. 4.02
  28124. n=38:   Gold bar status, 0=OFF, 1=flamer, 2=mines, etc
  28125. 4.02
  28126. n=43:   Amount of energy (default 12)
  28127. 4.02
  28128. Change as many of these values as you want and save altered program and
  28129. repeat the process for the $.Multi file on the Nevryon 2 disc.  Jeremy
  28130. Mears.
  28131. 4.02
  28132.    upside down words missing!
  28133. 4.02
  28134. Å Printing a full path name Ö This is a reply to the cry of help in
  28135. February 1990 from Richard Skemp about how to get the printer driver to
  28136. include the full pathname.  If you add the following line to the Library
  28137. program in the !PrinterDM directory, the printer driver will print the
  28138. full file pathname of any text file you print.
  28139. 4.02
  28140.    3281 BPUT#outfile%, CHR$13+CHR$10 +öPrinting file ò+filenam$
  28141. +CHR$13+CHR10+CHR$10
  28142. 4.02
  28143. Lorcan Mongey.
  28144. 4.02
  28145. Å Reinstating the filer module Ö An item on system variables mentions
  28146. that if you *RMFaster the filer module from the desktop, you lose the
  28147. filer icons and canæt get them back (Archive 3.11 p7).  To retrieve
  28148. them, try:
  28149. 4.02
  28150.    <F12>
  28151. 4.02
  28152.    Desktop
  28153. 4.02
  28154.    <Return>
  28155. 4.02
  28156. this doesnæt interfere with anything already in the desktop but re-
  28157. starts any of the default tasks that have been lost, namely Filer,
  28158. PaletteUtil an TaskManager.  Note, however, that if you *RMKill or
  28159. *RMFaster the Task Manager, you canæt get a *prompt by pressing F12!  To
  28160. get around this, make up an Obey file containing the command
  28161. 4.02
  28162.    *Desktop
  28163. 4.02
  28164. and this will do the trick.  Itæs quite interesting to see the Task and
  28165. Palette icons in the öwrongò place on the icon bar!  However, I feel
  28166. that you should not deliberately interfere with desktop modules and this
  28167. method should really be regarded as a Éget-you-homeæ technique in case
  28168. of problems.  Lorcan Mongey.
  28169. 4.02
  28170. ÅREMming your programs Ö When writing a program, in any language, it is
  28171. good practice to put plenty of comments in to remind oneself what each
  28172. particular section of code does.  However, in BASIC, there are two
  28173. things which tend to deter one from following this practice.  The first
  28174. is that the interpreter has to recognise a REM statement before it knows
  28175. to ignore it.  This takes time, which may be undesirable in procedures
  28176. and loops.  The second deterrent is the amount of space taken by the
  28177. text of the comment, which is stored verbatim in the program.
  28178. 4.02
  28179. I have a practice, when commenting procedures and functions, of placing
  28180. explanatory comments outside the procedure/function block.  For
  28181. instance:
  28182. 4.02
  28183.    program segment missing
  28184. 4.02
  28185. Clearly, the above practice prevents the REM statements from impacting
  28186. the performance of the procedure/function, as they are in section of the
  28187. code which the interpreter will never see.
  28188. 4.02
  28189. This last observation leads to an additional possibility for interpreted
  28190. code (but not for compiled BASIC).  Since the interpreter never sees
  28191. these lines between procedure/function blocks, the normal syntax rules
  28192. can be broken without an error being generated.  Thus, we can save some
  28193. space, as well as execution time, by omitting the REM key words.  Note
  28194. that this will only work if the comments are where the interpreter
  28195. cannot see them.  If you are in the habit of using GOTO statements
  28196. (sometimes a handy way of removing umpteen layers of IF... THEN... ELSE
  28197. statements if you are checking for exceptions and, despite common
  28198. Éwisdomæ, still used frequently by professional programmers), this
  28199. placing of syntactically incorrect code beyond the bounds of a procedure
  28200. block might allow the trapping of such errors as omitting the ENDPROC or
  28201. = statements.  David Hazel.
  28202. 4.02
  28203. Å Star LC10 Ö An undocumented feature on a Star LC10 Colour Printer, is
  28204. that if you open out a file to the printer and try and print characters
  28205. 27 and 102 to it, it prints out the current dip switch setting:
  28206. 4.02
  28207.    program segment missing
  28208. 4.02
  28209. Jason Ede.
  28210. 4.02
  28211. Å System Variables (continued from 4.1 p9 & 4.1 p10) Ö I had had similar
  28212. problems and came up with a different solution which can solve both
  28213. problems, i.e. reading system variables to BASIC and passing system
  28214. variables to the Filer module.  I use a call to OS_EvaluateExpression,
  28215. which can return a numeric or string value, as follows:
  28216. 4.02
  28217.    program segment missing
  28218. 4.02
  28219. This is an artificial example; in practice you would know whether you
  28220. were expecting a numeric value or a string, such as Obey$Dir.  Lorcan
  28221. Mongey.
  28222. 4.02
  28223.  
  28224. 4.02
  28225.  
  28226. 4.02
  28227.  
  28228.  
  28229.  
  28230. Å 160k ADFS discs for the Archimedes?  If you have upgraded to the
  28231. Archimedes from a Master, or even a Beeb with ADFS, you might have some
  28232. 5.25ö discs you want to transfer.  According to the manuals, the
  28233. Archimedes will only read and write to 640k (L) format, Arthur 800k (D)
  28234. format, or the RISC-OS 800k (E) format using either 3.5ò or 5.25ö discs
  28235. (80T).  However, the Master could read and write 40T 160k (S) format,
  28236. 80T 320k (M) format, or 80T 640k (L) format discs.  I discovered by
  28237. accident that the Archimedes will quite happily read 5.25ò 160k (S)
  28238. discs in 40T mode, and in fact save them Ö I have not been able to try
  28239. out 320k discs since I do not have any.  You cannot, however, format
  28240. discs at either 160k or 320k on the Archimedes but then why would you
  28241. want to anyway? Chris Hughes (Wakefield BBC Micro User Group).
  28242. 4.01
  28243. Å Apocalypse Tips Ö Progressing from planet to planet is really simple.
  28244. At the start of the game, a map of your selected planet is displayed.
  28245. All the objects on the planetæs surface are represented by coloured
  28246. dots, about 80% of which must be destroyed for your craft to be
  28247. withdrawn and for you to be allocated another planet.
  28248. 4.01
  28249. As you progress through the game and return to the ÉGuild of Spacingsæ
  28250. you will be given various add-ons for your ship.  These include a super-
  28251. cooler for your laser-canon and better shielding.  It is vital that you
  28252. have these if you intend to progress at a reasonable pace, so it is
  28253. advisable to get them as soon as possible.  Remember, you can only
  28254. return a maximum of five times before being rejected by the Guild.  When
  28255. you have destroyed your 80% or so, you will automatically be withdrawn
  28256. by the Guild Ö this may take some time so donæt give up too quickly!
  28257. 4.01
  28258. If you prefer rather more action and less running away, the following
  28259. lines of the BASIC file É!Apocalyps.Apocalypseæ can be changed.
  28260. 4.01
  28261. Line 290 is your starting score.
  28262. 4.01
  28263. Replace line 330 with:  330 !shieldcharge=16 :
  28264. !rapidturnF=1:!guntempcooler=0
  28265. 4.01
  28266. Now delete lines 340 to 380 inclusive for all the extra features and
  28267. (very) strong shields.
  28268. 4.01
  28269. Replace line 770 with: UNTIL 0 for infinite lives.  At line 1970
  28270. !impcounter is the number of objects you have shot, which determines how
  28271. many you have to go before advancing to the next planet.  For instant
  28272. withdrawal, replace 1970 with: 1970 !impcounter=10000.
  28273. 4.01
  28274. Line 6910 is how many times you can return to the guild before rejection
  28275. (this is normally 5).
  28276. 4.01
  28277. Å HFORM v1.72 bug or feature?  If you try to format an ST506 hard disc
  28278. that has had a different profile (e.g. it was used on  a PC beforehand)
  28279. with the Acorn HFORM program supplied on the RISC-OS Supplement Disc,
  28280. the new disc shape option will not be acknowledged and so the full
  28281. capacity of the drive may not be realised.  This can be overcome by
  28282. removing the line that reads:
  28283. 4.01
  28284.    2130 IF cyl%=0 IF head%=0 IF Formatted% GOTO 2180
  28285. 4.01
  28286. Brian Oliver.
  28287. 4.01
  28288. Å Hostages cheat mode Ö If you hold down the <R>, <U>, <T> and <H> keys
  28289. once the title screen has loaded and press <return>, you will enter into
  28290. the cheat mode.  This allows you to jump to either section two or three
  28291. of the game with three hostages and seven terrorists.
  28292. 4.01
  28293. Å RAM discs for the PC Emulator Ö It is possible to create a hard disc
  28294. partition in any filing system.  For example, by altering the !PC.!Run2
  28295. file so that the path for Drive D is ÉRAM:$.RamDiscæ and using the FDISK
  28296. program to create a RAMFS hard disc partition, you can obtain any size
  28297. RAM disc you require _ memory and pages sizes permitting.  Michael Ben-
  28298. Gershon.
  28299. 4.01
  28300. Å Reading a system variable from BASIC Ö The question was, öIæve got a
  28301. system variable being set in the !Run obey file:
  28302. 4.01
  28303.    Set MaxNumberOfFonts 32
  28304. 4.01
  28305. and I want to be able to read this value into a BASIC variable but when
  28306. I use:
  28307. 4.01
  28308.    value% = VAL (ö<MaxNumberOfFonts>ò)
  28309. 4.01
  28310. it produces the error ÉVariable not foundæ, because it takes the É<æ
  28311. character as meaning Éless thanæ rather than Éstart of system variableæ.
  28312. Using the BASIC keyword EVAL has the same effect.
  28313. 4.01
  28314. The first thing we need to do is to extract the value of the system
  28315. variable into a string that we can manipulate.  After searching through
  28316. the PRM volume II, I eventually found OS_ReadVarVal (SWI&23) on page
  28317. 750.  On entry, R0 points to the name of the system variable to be read,
  28318. R1 points to a suitable buffer to store the string in, R2 is the maximum
  28319. length of this buffer, R3 is set to 0 to use the first occurance of the
  28320. named system variable, and R4 is set to 3 so that an expanded string is
  28321. returned in the buffer.
  28322. 4.01
  28323. On exit, we should now have the value of the system variable in the form
  28324. of a string.  The next task is to convert this string into an integer,
  28325. and this is easily performed by using OS_ReadUnsigned (SWI &21) on page
  28326. 585.  On entry, R0 is set to 0 so that the base number used is assumed
  28327. to be 10 unless the string indicates otherwise, R1 is the pointer to the
  28328. string (note that this is the same as R1 for OS_ReadVarVal, which is
  28329. preserved on exit).  On exit R2 contains the value of the system
  28330. variable as an integer, using only two SWI calls.
  28331. 4.01
  28332. This is easily implemented in both BASIC and ARM assembler.
  28333. 4.01
  28334. In BASIC this can be achieved with 4 instructions:
  28335. 4.01
  28336.    MaxBufferLength = 16
  28337. 4.01
  28338.    DIM BufferPtr MaxBufferLength
  28339. 4.01
  28340.    SYS öOS_ReadVarValò, öMaxNumberOfFontsò, BufferPtr,
  28341. MaxBufferLength,0,3
  28342. 4.01
  28343.    SYS öOS_ReadUnsignedò,0,BufferPtr TO ,,value%
  28344. 4.01
  28345. and if you want to do in Arm assembler, then only eight instructions are
  28346. necessary:
  28347. 4.01
  28348.    ...
  28349. 4.01
  28350.    ADR R0, SystemVariablePtr ; point to system variable
  28351. 4.01
  28352.    ADR R1, BufferPtr; point to buffer
  28353. 4.01
  28354.    MOV R2, #MaxBufferLength ; length of buffer
  28355. 4.01
  28356.    MOV R3, #0 ; use first one found
  28357. 4.01
  28358.    MOV R4, #3 ; expand fully
  28359. 4.01
  28360.    SWI XOS_ReadVarVal ; R1 preserved
  28361. 4.01
  28362.    MOV R0, #0 ; use default base
  28363. 4.01
  28364.    SWI XOS_ReadUnsigned ; R2 = value%
  28365. 4.01
  28366.    SystemVariablePTr = öMaxNumberOfFontsò, 0 ; note no É<æ or É>æ are
  28367. used
  28368. 4.01
  28369.    ALIGN
  28370. 4.01
  28371.    MaxBufferLength * 16
  28372. 4.01
  28373.    BufferPtr % MaxBufferLength ; reserve MaxBufferLength
  28374. 4.01
  28375.    ALIGN ; bytes of workspace
  28376. 4.01
  28377. To give a quick example of its use.  ÉSetMaxNumberOfFonts 16æ gives
  28378. value% = 16.  ÉSetMaxNumberOfFonts &20 gives value% = 32.
  28379. 4.01
  28380. This may be of use to programmers, as it allows constants to be set up
  28381. in the !Run obey file and users can modify them to fit their require
  28382. ments, without having to modify the program itself.  John ÉLoftyæ
  28383. Wallace.
  28384. 4.01
  28385. Å System Variables for the Filer Module (Archive 3.11 p7) Ö The problem
  28386. with the Filer module not allowing you to include system variables can
  28387. be solved a lot easier (and without taking up any valuable RMA space).
  28388. 4.01
  28389. I like to use icons for the directories which contain the third party
  28390. applications, demos, utilities, etc.  This meant using an application
  28391. directory and I wanted a general purpose !Run obey file to open the
  28392. directory viewer (using Filer_OpenDir).  However, I came across the same
  28393. problem as Simon Callan.  The solution I present here was passed on to
  28394. me by Paul Fellows (who wrote ÉArchimedes Basic Compileræ amongst other
  28395. things) and so I donæt wish to take the credit for such a neat idea.
  28396. 4.01
  28397. So that I donæt have the !Run, !Sprites, etc with the actual programs I
  28398. want to view, I create a directory É_æ inside that application directory
  28399. to hold them.  Thus my !Run obey file reads as follows:
  28400. 4.01
  28401.    |!Run obey file
  28402. 4.01
  28403.    |
  28404. 4.01
  28405.    IconSprites <Obey$Dir>.!Sprites
  28406. 4.01
  28407.    Set Alias$OpenDir Filer_OpenDir <Obey$Dir>._
  28408. 4.01
  28409.    OpenDir
  28410. 4.01
  28411. Setting a command string as an ÉAliasæ will expand any system variables
  28412. within that command string.  This gets around the problem which Simon
  28413. describes, and also means that you donæt need to run a program every
  28414. time you switch the machine on.  John ÉLoftyæ Wallace.
  28415. 4.01
  28416.  
  28417.  
  28418. Å Greek3 outline font problem Ö I was very interested to read, in
  28419. Archive 3.11, about solving the problem of the slowness of the Computer
  28420. Concepts Greek3 font.  The root of the problem was that the internal and
  28421. external names should be the same, and the article suggests that you can
  28422. simply rename the !Fonts.Greek3 directory to !Fonts.Greek, which is very
  28423. quick and easy.  However, if you do this then any existing !Draw files,
  28424. etc containing the Greek3 font will not display with ordinary system
  28425. font characters.  It seems desirable to retain the external name Greek3.
  28426. 3.12
  28427. I think that the best course of action is to change the internal name
  28428. from Greek to Greek3, using the Acorn !FontEd application.  The article
  28429. mentions this without saying HOW to do it; it was all GREEK to me!  So
  28430. after I found out the hard way, here is an idiots guide...
  28431. 3.12
  28432. Install !FontEd on the iconbar, open up the !Fonts.Greek3 directory, and
  28433. you will see the IntMetrics and Outlines files.  Drag the Outlines file
  28434. onto the !FontEd icon on the iconbar.  A window will then open showing
  28435. all the Greek characters.  After a pause, you will hear a beep to show
  28436. that the operation is complete.  Now click <menu> over this window and
  28437. use the Alter->Font name option to change it from Greek to Greek3.  Now
  28438. choose the Save->Outlines and Save->Metrics options in turn; just click
  28439. on the OK boxes, as the file and path names are fine as they are.  Be
  28440. very careful not to change anything else!  Richard Stery (Wakefield BBC
  28441. Micro User Group)
  28442. 3.12
  28443. Make sure you take a backup before you try this as you risk losing the
  28444. font if you get it wrong.  Donæt say we didnæt warn you!  Ed.
  28445. 3.12
  28446. Å Recovering deleted files Ö If you accidentally delete a file you can
  28447. still recover it so long as you take the following steps:
  28448. 3.12
  28449. (i) Do NOT write any data on the disk.
  28450. 3.12
  28451. (ii) Use the !DiscEdit program on Careware 2 and look for your file on
  28452. the disc and note the address (in hex) of the start and end of the file.
  28453. 3.12
  28454. (iii) Now you can use these addresses with the file recoverer program on
  28455. Shareware 9 to extract the file from the disc.  Dirk Schafer.
  28456. 3.12
  28457. Å RenderBender on SCSI Ö In the hint last month, Neil Berry was
  28458. obviously using an early version of Oakæs SCSI interface software in
  28459. which the filing system was referred to as SCSIFS, so all references to
  28460. öSCSIFS::ò should be replaced by öSCSI::ò.
  28461. 3.12
  28462. Å SWIöOS_PrettyPrintò works in VDU 5 mode (print text at graphics
  28463. cursor) as well as VDU 4 mode (print text at text cursor).  It formats
  28464. the text according to the current graphics clipping window (set by VDU
  28465. 24).  For more details on OS_PrettyPrint see Archive 1.7 p9.  Paul
  28466. Witheridge.
  28467. 3.12
  28468. Å System variables for the Filer Module (revisited) Ö Here is a simpler
  28469. solution to the problem of not being able to use system variables with
  28470. the *Filer_OpenDir and *Filer_CloseDir commands than was suggested in
  28471. Archive 3.11 p7.
  28472. 3.12
  28473.    *SetMacro Alias$Filer_OpenDir Set Alias%Foo %Filer_OpenDir
  28474. %0|Mfoo|MUnset Alias%foo|M
  28475. 3.12
  28476. *SetMacro Alias$Filer_CloseDir Set
  28477. Alias$foo%Filer_CloseDir%0|Mfoo|Munset Alias%foo|M
  28478. 3.12
  28479. Once these two lines have been typed, *Filer_OpenDir and *Filer_CloseDir
  28480. can then be used with system variables.  Michael Ben-Gershon.
  28481. 3.12
  28482. Å !Edit functions keys Ö Two more undocumented function key actions for
  28483. EDIT (in addition to <shift><f1> as described in Archive 3.4 p5).  These
  28484. are: <Ctrl><f2> which is equivalent to clicking on the window close icon
  28485. and <ctrl><f7> which toggles between the current caret position and the
  28486. beginning of a marked block.  Paul Witheridge.
  28487. 3.12
  28488.  
  28489.  
  28490.  
  28491.  
  28492. Å Blanking discs Ö (Iæm sure weæve had this before, but not everyong has
  28493. picked it up and I couldnæt find a reference to it in the Archive
  28494. database.)  If you have a disc that has lots of files on it and you try
  28495. to clear them all off by deleting them, it can take ages Ö it would be
  28496. quicker to reformat the disc.  Even quicker though is to get an existing
  28497. blank disc and do a backup from that to the disc to be blanked Ö it
  28498. takes just a couple of seconds.
  28499. 3.11
  28500. Å ChkSpr Ö In answer to Ray Dawsonæs plea for help about !ChkSpr
  28501. supplied on shareware disc 19:  if you open up the !ChkSpr directory,
  28502. amongst the files you will find one called Échkspræ and one called
  28503. !BootÉ.  If these two files are copied into any Impression document
  28504. directory and if you then rename the document directory, instead of the
  28505. Impression sprite not appearing because the name no longer corresponds
  28506. to the document name (as normally happens) it will appear correctly.
  28507. This is because the chkspr utility, when run by the new !Boot file,
  28508. checks the name of the first sprite in the sprite file and changes it if
  28509. the name is not the same as that of the document.  This utility can also
  28510. be used to keep the correct sprites for applications.  For example, when
  28511. developing an application, different versions may be kept, all with the
  28512. right sprite file.  Simon Burrows and Emmet Spier.
  28513. 3.11
  28514. Å ColourTrans module Ö I have noticed that each of the printer drivers
  28515. on the RISC OS extras disc contain their own copy of the Colours module!
  28516. This is at odds with the policy of storing all shared modules in the
  28517. !System directory (you will probably already have a copy of the Colours
  28518. module there Ö many applications use it).
  28519. 3.11
  28520. To avoid wasting disc space (though Colours uses little) you can remove
  28521. this module from within each printer driversæ directory and edit the
  28522. !Run file for each driver to call Colours from the !System folder.
  28523. 3.11
  28524. i.e. in each !Run file the line
  28525. 3.11
  28526.    RMEnsure ColourTrans 0.52 RMLoad <PDriver$Dir>.Colours
  28527. 3.11
  28528. should be replaced with
  28529. 3.11
  28530.    RMEnsure ColourTrans 0.52 System:Modules.Colours
  28531. 3.11
  28532. To be even more correct two extra lines should also be added (e.g. like
  28533. the !Spark and !Draw applications).  The above on its own relies on the
  28534. desktop having already seen your !System directory, you should therefore
  28535. put the line
  28536. 3.11
  28537.    Ifö<System$Path>ò = öò Then Error 0 System resources cannot be found
  28538. 3.11
  28539. before the changed line above to check that this is the case.  You
  28540. should also put the line
  28541. 3.11
  28542.    RMEnsure ColourTrans 0.52 Error You need ColourTrans 0.52 or later
  28543. 3.11
  28544. after the changed line Ö this will check that the module has been loaded
  28545. satisfactorily.
  28546. 3.11
  28547. The Printer Drivers on the original RISC-OS Application Disc I did not
  28548. load the Colours module when they were installed and so do not have this
  28549. problem.  Simon Butler.
  28550. 3.11
  28551. Å Debugger/Dissassemble returns an incorrect length for SWI instructions
  28552. Ö it returns the length as one too many Ö you get an extra null
  28553. character on these instructions.  As all returned strings are null
  28554. terminated, I found it easier to scan for the null in order to find the
  28555. length.  The zero makes no difference to screen or printing, but if
  28556. written to a text file looks ugly in !Edit.  Kevin Quinn.
  28557. 3.11
  28558. Å Desktop bug Ö There appears to be a fatal bug in the Window Manager of
  28559. RISC-OS 2.00.  It occurs when you drag a menu, and whilst you are
  28560. dragging it, press the <escape> key to remove it.  If you then stop
  28561. dragging the menu, the system will report an ÉAddress exception at
  28562. &386BCICæ, the application which created the menu will die fatally and
  28563. most often, all the other applications will die as well, resulting in
  28564. the computer Ébombing outæ of the desktop into the CLI.  Tom Lakofski.
  28565. 3.11
  28566. Å DXF files Ö Users of DXF files which are comprised only of BLOCKS and
  28567. ENTITIES (or maybe just ENTITIES alone) will find that !Draw does not
  28568. enable the use of its facility for specifying font types when the DXF
  28569. file is just loaded.
  28570. 3.11
  28571. The inclusion of the code below (i.e. a TABLES section) appears to solve
  28572. this problem.  Of course !Draw must have previously Éseenæ the relevant
  28573. !Fonts directory.  The full sequences for the sections, if all are
  28574. present is HEADER followed by TABLES, then BLOCKS + ENTITIES.  Jim
  28575. Markland.
  28576. 3.11
  28577.    0
  28578. 3.11
  28579.    SECTION
  28580. 3.11
  28581.    2
  28582. 3.11
  28583.    TABLES
  28584. 3.11
  28585.    0
  28586. 3.11
  28587.    TABLE
  28588. 3.11
  28589.    2
  28590. 3.11
  28591.    STYLE
  28592. 3.11
  28593.    70
  28594. 3.11
  28595.    20
  28596. 3.11
  28597.    40
  28598. 3.11
  28599.    0
  28600. 3.11
  28601.    41
  28602. 3.11
  28603.    1
  28604. 3.11
  28605.    50
  28606. 3.11
  28607.    0
  28608. 3.11
  28609.    71
  28610. 3.11
  28611.    0
  28612. 3.11
  28613.    3
  28614. 3.11
  28615.    STANDARD
  28616. 3.11
  28617.    0
  28618. 3.11
  28619.    ENDTAB
  28620. 3.11
  28621.    0
  28622. 3.11
  28623.    ENDSEC
  28624. 3.11
  28625. Å Greek3 re-caching Ö To stop the Greek3 outline font supplied with
  28626. Impression from recaching itself too often all you have to do is rename
  28627. it from ÉGreek3æ to ÉGreekæ.  Michael Ben-Gershon.
  28628. 3.11
  28629. Å On/Off icons, for example option icons in windows, are implemented by
  28630. using the ÉSæ command in the validation string of an icon with
  28631. indirected text and sprites on.  FormEd will allow you to set these up Ö
  28632. switch on indirected stuff, put text (if any) into the text item, and
  28633. select sprite Ö donæt put anything in the sprite sub-menu writeable icon
  28634. and put the sprite name(s) in the indirected validation string, e.g.
  28635. Ésopton,optoffæ.  Then by inverting the iconæs inverted bit it will swap
  28636. over the icons Ö see the calls Wimp_SetIconState and Wimp_GetIconState
  28637. (pages 1211-1213 of PRM).  Details of validation strings are on pages
  28638. 1184-1187 of the PRM.  Kevin Quinn.
  28639. 3.11
  28640. Å OS_Heap Ö While trying to use the Heap facility in RISC-OS, we found
  28641. that OS_Heap 6, which returns the size of a heap block, returns the size
  28642. including the word at the start containing length.  This is unexpected
  28643. given the Abstract Data Type philosophy that appears to have been used
  28644. for the rest of the system and means that the user knows where the
  28645. length of a block is stored and can read it without using OS_Heap 6 Ö
  28646. and incidentally, means Acorn canæt rewrite their Heap manager unless
  28647. this word is left in the same place.  James Chong.
  28648. 3.11
  28649. Å RenderBender on SCSI hard disc drives.  As you will know, you cannot
  28650. access the hard drive, by using the HARD 4 icon.  Some of you may have
  28651. already tried unsuccessfully to alter the program, by altering the
  28652. variable HD% to 1, to try to force the program into recognising the hard
  28653. drive.  The following alterations should be made to the !Runfile, Render
  28654. and Anirout in the utilities directory.  The code will save all pictures
  28655. to the specified directory if you have not put the Render Bender
  28656. directory in $...
  28657. 3.11
  28658. For the Render program :
  28659. 3.11
  28660.    15 *SET RendHard1 SCSIFS::4.$.!Render
  28661. 3.11
  28662.    40 curd$=ö4ò:moder%=FALSE
  28663. 3.11
  28664.    15890 A%=32
  28665. 3.11
  28666.    15940 IF A%=32 AND HA%>0 GOTO 15920
  28667. 3.11
  28668.    16020 IF A%=32 THEN curd$=ö4ò:*SET REdrive SCSIFS::4.$.!Render
  28669. 3.11
  28670. For the Anirout program:
  28671. 3.11
  28672.    6800 IF A%=BE% THEN *SET REdrive SCSIFS::4.$.!Render
  28673. 3.11
  28674. You should then use the edit program to alter the !Run file as follows:
  28675. 3.11
  28676. The line that begins *IF obey$dir... should be changed to...
  28677. 3.11
  28678.    *IFobey$dir=öadfs::Render.$.!Renderò THEN *SET RendHard1 SCSIFS::4.
  28679. 3.11
  28680.    $.!Render ELSE *SET RendHard1<Obey$Dir>
  28681. 3.11
  28682. The previous code may seem a bit long winded but I have unfortunately
  28683. not been able to get the *KILLADFS command to work with my version.
  28684. Neil Berry.
  28685. 3.11
  28686. Å Screen size Ö The screen size in O.S. co-ordinates may be found using
  28687. OS_ReadVduVariables and variable numbers 4 (XEigFactor),5(YEigFactor),11
  28688. (XWindLimit) and 12 (YWindLimit).  The last two are hidden over the page
  28689. and for a while I missed them (pages 345-348 and 350-352).  There is
  28690. also a message that the Wimp broadcasts when the user changes mode,
  28691. enabling your task to keep uptodate on screen sizes Ö important for drag
  28692. boxes amongst other things.  See page 1259.  Kevin Quinn.
  28693. 3.11
  28694. Å System Variables for Filer Module Ö This little routine enables you to
  28695. use RISC-OS variables with the Filer_OpenDir and Filer_CloseDir
  28696. commands.  This means that you can do commands such as öFiler_OpenDir
  28697. <Obey$Dir>.DataFilesò and make programs totally independent of where
  28698. they are on the disc.  The module requires about 14k of free memory in
  28699. the RMA.  The program has been written in such a way that it should work
  28700. with all future versions of the Filer.
  28701. 3.11
  28702. REM >Filer
  28703. 3.11
  28704. *RMKill Filer
  28705. 3.11
  28706. *RMReInit Filer
  28707. 3.11
  28708. *RMFaster Filer
  28709. 3.11
  28710. SYS öXOS_Moduleò,18,öFiler%Baseò TO ,,,CodeBase%
  28711. 3.11
  28712. TableBase%=CodeBase%+CodeBase%!ñ18
  28713. 3.11
  28714. Info%=FN_LookupInfo(öFiler_OpenDirò)
  28715. 3.11
  28716. TableBase%!Info%=TableBase%!Info% OR &00000100
  28717. 3.11
  28718. Info%=FN_LookupInfo(öFiler_CloseDirò)
  28719. 3.11
  28720. TableBase%!Info%=TableBase%!Info% OR &00000100
  28721. 3.11
  28722. END
  28723. 3.11
  28724. :
  28725. 3.11
  28726. DEF FN_LookInfo(Text$)
  28727. 3.11
  28728. LOCAL Offset%,Command$
  28729. 3.11
  28730. Offset%=0
  28731. 3.11
  28732. REPEAT
  28733. 3.11
  28734. Command$=öò
  28735. 3.11
  28736. REPEAT
  28737. 3.11
  28738. Command$+=CHR$(TableBase%?Offset%)
  28739. 3.11
  28740. Offset%+=1
  28741. 3.11
  28742. UNTIL TableBase%?Offset%=0
  28743. 3.11
  28744. Offset%=(Offset%+16+3) AND NOT 3
  28745. 3.11
  28746. UNTIL Command$=Text$ OR TableBase%? Offset%=0
  28747. 3.11
  28748. IF Command$=Text$ THEN =Offset-12 ERROR 0, öI canæt find ò+Text$
  28749. 3.11
  28750. There is one slight problem with this routine due to the way that RISC-
  28751. OS implements the *RMFaster command by re-initialising the module.  This
  28752. means that the Filer icon disappears from the Desktop and cannot be
  28753. recovered without restarting the desktop so the routine is probably best
  28754. placed in a boot routine that subsequently starts up the desktop.  Simon
  28755. Callan.
  28756. 3.11
  28757. Å TWIN 8000 Ö If you load TWIN at an address other than hex 8000 the
  28758. <f10> key functions (goto, newtime, etc) do not work.  It caused me no
  28759. end of problems and phone calls to Acorn before I realised this.
  28760. 3.11
  28761.  
  28762.  
  28763.  
  28764. Å Arthur Fonts Ö when using the FontDes program supplied with Arthur
  28765. operating system, it is possible to vary the thickness of one or both
  28766. ends of the line.  This is achieved by using the adjust button when the
  28767. mouse is positioned over a line in a öchar fullò window (this then
  28768. highlights the line) and then pressing the menu button at either end of
  28769. the line.  This will bring up a Épen ratioæ window which allows you to
  28770. alter the percentage ratio of the pen at that point, the ratio is set by
  28771. clicking on the percentage windowæs quit box.
  28772. 3.10
  28773.  
  28774. 3.10
  28775. Å Extra Brushes for !Paint Ö you can add your own brushes to the !Paint
  28776. package by including the desired shapes in the ÉSpritesæ file i.e.
  28777. 3.10
  28778. (i) Open up the !Paint directory by double clicking on !Paint while
  28779. holding the shift button down
  28780. 3.10
  28781. (ii) Load the ÉSpritesæ file into !Paint
  28782. 3.10
  28783. (iii) Create the brush shapes you want in this file
  28784. 3.10
  28785. (iv) Save the ÉSpritesæ file
  28786. 3.10
  28787. Donæt forget to make a note of the names of the brushes you created so
  28788. that you can access them from the tools menu.  David Parker
  28789. 3.10
  28790.  
  28791. 3.10
  28792. Å Hard Spaces can be entered using the <alt> key and typing <1><6><0> on
  28793. the numeric keypad but a much quicker way is just to type <alt><space>.
  28794. Charles Moire
  28795. 3.10
  28796.  
  28797. 3.10
  28798. Å Lightning strikes Ö Be warned!  Donæt leave your modem connected to
  28799. the phone line when there is an electrical storm.  I did and the spikes
  28800. that came up the phone line killed a new V22bis modem and the RS423 port
  28801. on the Archimedes!  David Leckie.
  28802. 3.10
  28803.  
  28804. 3.10
  28805. Å Memory Saving Ö It is worth remembering that sprites with masks take
  28806. up twice as much room as those without.  If all sprites are altered with
  28807. !Paint to remove the mask, a considerable amount of memory can be saved.
  28808. Ian Hamilton.
  28809. 3.10
  28810.  
  28811. 3.10
  28812. Å Printing with 1M Ö when using Draw, Paint, Impression, Acorn DTP, etc
  28813. you can quit !PrinterDM (or  whatever printer driver you use) to reclaim
  28814. about 80k of RAM.  It would appear that these applications only need the
  28815. modules that remain in the RMA area after the !PrinterDM application has
  28816. been quit so all the print options are still available.  R J Denison
  28817. 3.10
  28818.  
  28819. 3.10
  28820. Å Wimp Window Drawing Ö The usual construction for defining a graphic
  28821. window and drawing into it would look something like this:
  28822. 3.10
  28823.    DEFPROCgraphic_window
  28824. 3.10
  28825.    VDU26,5,24,graphicsbx%;graphicsby%;graphicstx%;graphicsty%
  28826. 3.10
  28827.    ORIGIN reportbx%-scrollx%,reportty%-scrolly%
  28828. 3.10
  28829.    ENDPROC
  28830. 3.10
  28831.  
  28832. 3.10
  28833.    DEFPROCdraw_text (x%,y%,text$)
  28834. 3.10
  28835.    MOVE x%,y% : PRINT text$
  28836. 3.10
  28837.    ENDPROC
  28838. 3.10
  28839.  
  28840. 3.10
  28841. This will work okay until the values in the origin statement exceed
  28842. 32767.  I found that I had blank screens in the middle of large reports.
  28843. The following changes cured the problem:
  28844. 3.10
  28845.    DEFPROCgraphic_window
  28846. 3.10
  28847.    VDU26,5,24,graphicsbx%;graphicsby%;graphicstx%;graphicsty%
  28848. 3.10
  28849.    y%=reportty%-scrolly% : compensationy%=0
  28850. 3.10
  28851.    REPEAT
  28852. 3.10
  28853.    IF y%>32000 THEN y%-=32000 : compensationy%+=32000
  28854. 3.10
  28855.    UNTIL y%<=32000
  28856. 3.10
  28857.    ORIGIN reportbx%-scrollx%,y%
  28858. 3.10
  28859.    ENDPROC
  28860. 3.10
  28861.  
  28862. 3.10
  28863.    DEFPROCdraw_text (x%,y%,text$)
  28864. 3.10
  28865.    MOVE x%, y%+compensationy%: PRINT text$
  28866. 3.10
  28867.    ENDPROC
  28868. 3.10
  28869. Although you would have a problem in the x-direction, it is unlikely
  28870. that a window would be that wide.  A similar change could be applied if
  28871. this was necessary.  Ian Hamilton.
  28872. 3.10
  28873.  
  28874. 3.10
  28875.  
  28876.  
  28877.  
  28878. 3.9
  28879. Å   Clear a line Ö To clear a text input in an editable field, press
  28880. <ctrl-U>. For example, you can use this to clear the filename before
  28881. typing a new entry. Philip Armstrong
  28882. 3.9
  28883. Å   !Draw Ö Someone mentioned converting sprite images to object
  28884. orientated !Draw images. I have used a graph program and converted the
  28885. sprite it created to a !Draw file by zooming up and drawing over the
  28886. sprite. If you keep to, say, the bottom left of each pixel, it works OK
  28887. and gives a much better printed image.
  28888. 3.9
  28889. To get vertical and horizontal lines, use the edit coordinated facility.
  28890. Get one end correct then note its x or y location and then edit the
  28891. other end to match it.
  28892. 3.9
  28893. If you have typed some incorrect text into a draw file, for example ÉFig
  28894. 4.5æ needs to be changed to ÉFig 4.6æ, then you would normally have to
  28895. re-type the line and be careful to locate it in the same place. If
  28896. characters are changed leaving the string length the same then you could
  28897. use !Edit to search and replace the text, once the draw file has been
  28898. dragged onto the !Edit icon. Strings could also be padded out with
  28899. spaces if a shorter replace string is required, but for a longer string
  28900. it is usually easier to re-type in !Draw. Philip Armstrong
  28901. 3.9
  28902. Å   DXF files Ö Inclusion of a 41 group in TEXT entities permits
  28903. characters with varying aspect ratios. A value of 0.5 matches the system
  28904. fonts. Jim Markland.
  28905. 3.9
  28906. Å   Elektor sound sampler Ö In Decemberæs issue of the Netherlands
  28907. edition of Elektor (November in the U.K. edition) they published a
  28908. D.I.Y. sound sampler podule. This podule has been built freq-uently but
  28909. there is one small problem. There are no commands provided to use the
  28910. sampler so it is difficult to use it in your own software. I decided
  28911. therefore to write a module.
  28912. 3.9
  28913. The module makes use of a timer within the 6522 on the board. This
  28914. results in a very accurate sample-time. To make use of the module, you
  28915. need to set a jumper on the podule which connects the 6522-IRQ-line to
  28916. the FIQ-line of the Archimedes.
  28917. 3.9
  28918. Holding the podule with the 64-way-connector towards you and the print
  28919. header at the right, you can place the jumper vertically at the right
  28920. bottom of the print header.
  28921. 3.9
  28922. Now you can use the module. There is a SWI included:
  28923. 3.9
  28924. ElektorSampler_Sample (&500)
  28925. 3.9
  28926. R0 = Start address of the sample buffer
  28927. 3.9
  28928. R1 = End address of the sample buffer
  28929. 3.9
  28930. R2 = Sample time in ╡s
  28931. 3.9
  28932. R3 = Minimum level to start sampling
  28933. 3.9
  28934. R4 : bit 0: This bit defines the quality of the sample. Low quality
  28935. sampling must be used unless you are prepared to allow the screen to be
  28936. disabled. 0 = high quality sampling, 1 = low quality sampling.
  28937. 3.9
  28938.    bit 1: This bit defines whether the low order byte of the address
  28939. where the sample is written to, must be placed on the userport or not.
  28940. This enables you to take multi-channel samples (e.g. stereo) using an
  28941. analogue multiplexer (e.g. HEF 4051). When youære not using this option,
  28942. leave the bit É0æ. 0 = no output to the userport, 1 = output to the
  28943. userport
  28944. 3.9
  28945.    Leave unused bits É0æ for upward compatibility
  28946. 3.9
  28947. After calling this SWI, the screen will be disabled during the sampling.
  28948. While waiting for the minimum level, the border will be coloured yellow
  28949. Ö whilst sampling, the border will be red. As long as the border is
  28950. yellow, you can quit by pressing <escape>. The buffer will be filled
  28951. with linear 8-bit signed numbers.
  28952. 3.9
  28953. The minimum sample-time that can be used on a normal Archimedes is about
  28954. 9 ╡s. The minimum sample-time that can be used with the ZN427 (the ADC)
  28955. is approx. 12 ╡s.
  28956. 3.9
  28957. The module could be used with the Armadeus sampler if Armadeus software
  28958. were suitably modified. Since Armadeus is written in BASIC this should
  28959. be possible.
  28960. 3.9
  28961. As far as Iæm concerned this module may be copied freely provided that
  28962. my name, as author, remains within the software.
  28963. 3.9
  28964. Questions or suggestions? You can contact me via Archive.
  28965. 3.9
  28966. To conserve space, we have stripped the comments out of this listing.
  28967. The full commented listing is available on the monthly program disc.
  28968. 3.9
  28969.  10 REM >SamplerSrc
  28970. 3.9
  28971.  20 REM Written by J.P.Hendrix
  28972. 3.9
  28973.  30 start=4:end=10:speed=9:ioc=8
  28974. 3.9
  28975. :rd427=5:wr427=6:bs6522=7:level=11
  28976. 3.9
  28977. :flags=12
  28978. 3.9
  28979.  40 DIM Code 1000
  28980. 3.9
  28981.  50 FOR Pass=4 TO 7 STEP 3
  28982. 3.9
  28983.  60 P%=0
  28984. 3.9
  28985.  70 O%=Code
  28986. 3.9
  28987.  80 [   OPT   Pass
  28988. 3.9
  28989.  90     EQUD  0
  28990. 3.9
  28991. 100     EQUD  0
  28992. 3.9
  28993. 110     EQUD  0
  28994. 3.9
  28995. 120     EQUD  0
  28996. 3.9
  28997. 130     EQUD  Title
  28998. 3.9
  28999. 140     EQUD  Help
  29000. 3.9
  29001. 150     EQUD  0
  29002. 3.9
  29003. 160     EQUD  &500
  29004. 3.9
  29005. 170     EQUD  Handler
  29006. 3.9
  29007. 180     EQUD  Table
  29008. 3.9
  29009. 190     EQUD  0
  29010. 3.9
  29011. 200
  29012. 3.9
  29013. 210     EQUS  öElektor Sampler
  29014. 3.9
  29015.  Module 1.03  (c) copyright
  29016. 3.9
  29017. 22 Apr 1990 by J.P. Hendrixö
  29018. 3.9
  29019. 220
  29020. 3.9
  29021. 230 .YelBorder
  29022. 3.9
  29023. 240     EQUB  0
  29024. 3.9
  29025. 250     EQUB  24
  29026. 3.9
  29027. 260     EQUB  255
  29028. 3.9
  29029. 270     EQUB  255
  29030. 3.9
  29031. 280     EQUB  0
  29032. 3.9
  29033. 290     ALIGN
  29034. 3.9
  29035. 300
  29036. 3.9
  29037. 310
  29038. 3.9
  29039. 320 .Handler
  29040. 3.9
  29041. 330     STMFD R13!,{r0-r12 ,R14}
  29042. 3.9
  29043. 340     CMP   R11,#&00
  29044. 3.9
  29045. 350     BNE   UnknownSWI
  29046. 3.9
  29047. 360     MOV   flags,R4
  29048. 3.9
  29049. 370     MOV   start,R0
  29050. 3.9
  29051. 380     MOV   end,R1
  29052. 3.9
  29053. 390     MOV   speed,R2,LSL #1
  29054. 3.9
  29055.  400     SUB   speed,speed,#2
  29056. 3.9
  29057.  410     AND   level,R3,#&7F
  29058. 3.9
  29059.  420     STMFD R13!,*{t ,end,speed}
  29060. 3.9
  29061.  430     SWI   öI/O_Podule_Hardwareò
  29062. 3.9
  29063.  440     BIC   R0,R1,#&00FF0000
  29064. 3.9
  29065.  450     ORR   wr427,R0,#%000<<11
  29066. 3.9
  29067.  460     ORR   rd427,R0,#%010<<11
  29068. 3.9
  29069.  470     ORR   bs6522,R1,#%101<<11
  29070. 3.9
  29071.  480     MOV   ioc,#&3200000
  29072. 3.9
  29073.  490     STMFD R13!,{wr427 ,rd427,
  29074. 3.9
  29075. bs6522,ioc}
  29076. 3.9
  29077.  500
  29078. 3.9
  29079.  510     MOV   R0,#0
  29080. 3.9
  29081.  520     MOV   R1,#3072
  29082. 3.9
  29083.  530     TST   flags,#1
  29084. 3.9
  29085.  540     SWIEQ öXOS_UpdateMEMCò
  29086. 3.9
  29087.  550
  29088. 3.9
  29089.  560     MOV   R0,#0
  29090. 3.9
  29091.  570     MOV   R1,#24
  29092. 3.9
  29093.  580     SWI   öOS_ReadPaletteò
  29094. 3.9
  29095.  590     ADR   R0,OrgColour
  29096. 3.9
  29097.  600     MOV   R2,R2,LSR #8
  29098. 3.9
  29099.  610     STRB  R2,[R0,#2]!
  29100. 3.9
  29101.  620     MOV   R2,R2,LSR #8
  29102. 3.9
  29103.  630     STRB  R2,[R0,#1]!
  29104. 3.9
  29105.  640     MOV   R2,R2,LSR #8
  29106. 3.9
  29107.  650     STRB  R2,[R0,#1]!
  29108. 3.9
  29109.  660
  29110. 3.9
  29111.  670     MOV   R0,#12
  29112. 3.9
  29113.  680     ADR   R1,YelBorder
  29114. 3.9
  29115.  690     SWIEQ öOS_Wordò
  29116. 3.9
  29117.  700
  29118. 3.9
  29119.  710     MOV   R1,#&0C
  29120. 3.9
  29121.  720     SWI   öOS_ServiceCallò
  29122. 3.9
  29123.  730
  29124. 3.9
  29125.  740     LDMFD R13!,{wr427 ,rd427,
  29126. 3.9
  29127. bs6522,ioc}
  29128. 3.9
  29129.  750
  29130. 3.9
  29131.  760     MOV   R0,#&00
  29132. 3.9
  29133.  770     STRB  R0,[ioc,#&38]
  29134. 3.9
  29135.  780
  29136. 3.9
  29137.  790
  29138. 3.9
  29139.  800     MOV   R0,#SamplerEnd-
  29140. 3.9
  29141. SamplerBegin
  29142. 3.9
  29143.  810     MOV   R1,#&1C
  29144. 3.9
  29145.  820     ADR   R2,SamplerBegin
  29146. 3.9
  29147.  830 .PokeLoop
  29148. 3.9
  29149.  840     LDR   R3,[R2,R0]
  29150. 3.9
  29151.  850     STR   R3,[R1,R0]
  29152. 3.9
  29153.  860     SUBS  R0,R0,#4
  29154. 3.9
  29155.  870     BPL   PokeLoop
  29156. 3.9
  29157.  880
  29158. 3.9
  29159.  890     LDMFD R13!,*{t ,end,speed}
  29160. 3.9
  29161.  900
  29162. 3.9
  29163.  910
  29164. 3.9
  29165.  920     TST   flags,#2
  29166. 3.9
  29167.  930     MOV   R0,#255
  29168. 3.9
  29169.  940     MOVEQ R0,#0
  29170. 3.9
  29171.  950     STRB  R0,[bs6522,#02*4]
  29172. 3.9
  29173.  960     AND   R0,speed,#&FF
  29174. 3.9
  29175.  970     STRB  R0,[bs6522,#06*4]
  29176. 3.9
  29177.  980     MOV   R0,speed,LSR #8
  29178. 3.9
  29179.  990     STRB  R0,[bs6522,#07*4]
  29180. 3.9
  29181. 1000     MOV   R0,#&40
  29182. 3.9
  29183. 1010     STRB  R0,[bs6522,#11*4]
  29184. 3.9
  29185. 1020     MOV   R0,#&00
  29186. 3.9
  29187. 1030     STRB  R0,[bs6522,#13*4]
  29188. 3.9
  29189. 1040     MOV   R0,#&C0
  29190. 3.9
  29191. 1050     STRB  R0,[bs6522,#14*4]
  29192. 3.9
  29193. 1060     AND   R0,speed,#&FF
  29194. 3.9
  29195. 1070     STRB  R0,[bs6522,#04*4]
  29196. 3.9
  29197. 1080
  29198. 3.9
  29199. 1090     STRB  R0,[wr427]
  29200. 3.9
  29201. 1100 .WaitLevel
  29202. 3.9
  29203. 1110     SWI   öOS_ReadEscapeStateò
  29204. 3.9
  29205. 1120     BCS   Exit
  29206. 3.9
  29207. 1130
  29208. 3.9
  29209. 1140     LDRB  R0,[rd427]
  29210. 3.9
  29211. 1150     STRB  R0,[wr427]
  29212. 3.9
  29213. 1160     TST   R0,#&80
  29214. 3.9
  29215. 1170     RSBEQ R0,R0,#&100
  29216. 3.9
  29217. 1180     AND   R0,R0,#&7F
  29218. 3.9
  29219. 1190     CMP   level,R0
  29220. 3.9
  29221. 1200     BHI   WaitLevel
  29222. 3.9
  29223. 1210     STRB  R0,[wr427]
  29224. 3.9
  29225. 1220
  29226. 3.9
  29227. 1230     SWI   öOS_IntOffò
  29228. 3.9
  29229. 1240
  29230. 3.9
  29231. 1250     TST   flags,#1
  29232. 3.9
  29233. 1260     MOV   R0,#12
  29234. 3.9
  29235. 1270     ADR   R1,RedBorder
  29236. 3.9
  29237. 1280     SWIEQ öOS_Wordò
  29238. 3.9
  29239. 1290
  29240. 3.9
  29241. 1300     MOV   R0,speed,LSR #8
  29242. 3.9
  29243. 1310     STRB  R0,[bs6522,#05*4]
  29244. 3.9
  29245. 1320
  29246. 3.9
  29247. 1330     MOV   R0,#&40
  29248. 3.9
  29249. 1340     STRB  R0,[ioc,#&38]
  29250. 3.9
  29251. 1350 .SampleLoop
  29252. 3.9
  29253. 1360     CMP   end,start
  29254. 3.9
  29255. 1370     BPL   SampleLoop
  29256. 3.9
  29257. 1380
  29258. 3.9
  29259. 1390     MOV   R0,#&00
  29260. 3.9
  29261. 1400     STRB  R0,[ioc,#&38]
  29262. 3.9
  29263. 1410 .Exit
  29264. 3.9
  29265. 1420     MOV   R0,#&7F
  29266. 3.9
  29267. 1430     STRB  R0,[bs6522,#14*4]
  29268. 3.9
  29269. 1440     MOV   R0,#&00
  29270. 3.9
  29271. 1450     STRB  R0,[bs6522,#13*4]
  29272. 3.9
  29273. 1460
  29274. 3.9
  29275. 1470     MOV   R1,#&0B
  29276. 3.9
  29277. 1480     SWI   öOS_ServiceCallò
  29278. 3.9
  29279. 1490     SWI   öOS_IntOnò
  29280. 3.9
  29281. 1500
  29282. 3.9
  29283. 1510     MOV   R0,#0
  29284. 3.9
  29285. 1520     STRB  R0,[bs6522,#02*4]
  29286. 3.9
  29287. 1530
  29288. 3.9
  29289. 1540     MOV   R0,#3072
  29290. 3.9
  29291. 1550     MOV   R1,#3072
  29292. 3.9
  29293. 1560     TST   flags,#1
  29294. 3.9
  29295. 1570     SWIEQ öOS_UpdateMEMCò
  29296. 3.9
  29297. 1580
  29298. 3.9
  29299. 1590     MOV   R0,#12
  29300. 3.9
  29301. 1600     ADR   R1,OrgColour
  29302. 3.9
  29303. 1610     SWIEQ öOS_Wordò
  29304. 3.9
  29305. 1620
  29306. 3.9
  29307. 1630     MOV   R0,#124
  29308. 3.9
  29309. 1640     SWI   öOS_Byteò
  29310. 3.9
  29311. 1650
  29312. 3.9
  29313. 1660     LDMFD R13!,{r0-r12 ,PC}^
  29314. 3.9
  29315. 1670
  29316. 3.9
  29317. 1680 .UnknownSWI
  29318. 3.9
  29319. 1690     LDMFD R13!,{r0-r12 ,R14}
  29320. 3.9
  29321. 1700     ADR   R0,Error
  29322. 3.9
  29323. 1710     ORRS  PC,R14,#2^28
  29324. 3.9
  29325. 1720
  29326. 3.9
  29327. 1730 .SamplerBegin
  29328. 3.9
  29329. 1740     STRB  start,[bs6522,#00*4]
  29330. 3.9
  29331. 1750     LDRB  R0,[rd427]
  29332. 3.9
  29333. 1760     EOR   R0,R0,#&80
  29334. 3.9
  29335. 1770     STRB  R0,[start],#1
  29336. 3.9
  29337. 1780     MOV   R0,#&C0
  29338. 3.9
  29339. 1790     STRB  R0,[bs6522,#13*4]
  29340. 3.9
  29341. 1800     STRB  R0,[wr427]
  29342. 3.9
  29343. 1810     SUBS  PC,R14,#4
  29344. 3.9
  29345. 1820 .SamplerEnd
  29346. 3.9
  29347. 1830
  29348. 3.9
  29349. 1840 .OrgColour
  29350. 3.9
  29351. 1850     EQUB  0
  29352. 3.9
  29353. 1860     EQUB  24
  29354. 3.9
  29355. 1870     EQUB  0
  29356. 3.9
  29357. 1880     EQUB  0
  29358. 3.9
  29359. 1890     EQUB  0
  29360. 3.9
  29361. 1900 .RedBorder
  29362. 3.9
  29363. 1910     EQUB  0
  29364. 3.9
  29365. 1920     EQUB  24
  29366. 3.9
  29367. 1930     EQUB  255
  29368. 3.9
  29369. 1940     EQUB  0
  29370. 3.9
  29371. 1950     EQUB  0
  29372. 3.9
  29373. 1960
  29374. 3.9
  29375. 1970 .Table
  29376. 3.9
  29377. 1980 .Title   EQUS  öElektorSamplerò
  29378. 3.9
  29379. +CHR$(0)
  29380. 3.9
  29381. 1990     EQUS  öSampleò+CHR$(0)
  29382. 3.9
  29383. +CHR$(0)
  29384. 3.9
  29385. 2000 .Help
  29386. 3.9
  29387. 2010     EQUS  öElektor Samplerò+CHR$
  29388. 3.9
  29389. (9)+ö1.03 (22 Apr 1990)ò+CHR$(0)
  29390. 3.9
  29391. 2020 .Error
  29392. 3.9
  29393. 2030     EQUD  1
  29394. 3.9
  29395. 2040     EQUS  öUnknown Sampler SWIò
  29396. 3.9
  29397. +CHR$(0)
  29398. 3.9
  29399. 2050 ]
  29400. 3.9
  29401. 2060 NEXT
  29402. 3.9
  29403. 2070
  29404. 3.9
  29405. 2080 SYS öOS_Fileò,10,öElektorSamò
  29406. 3.9
  29407. ,&FFA,,Code,O%
  29408. 3.9
  29409. Å   Extra Speed in high res modes Ö You can use SWI öOS_UpdateMEMCò to
  29410. deny VIDC DMA access to the video RAM, which returns to the processor
  29411. the bus bandwidth that was being used by the video system. Turning off
  29412. VIDCæs access to the memory blanks the screen but makes the machine go
  29413. faster even than in MODE 0. To kill VIDCæs access to memory: SYS
  29414. öOS_UpdateMEMCò,0, 1024 To re-enable access use SYS öOS_Update
  29415. MEMCò,1024,1024.
  29416. 3.9
  29417. While the screen is thus disabled, you can still write to it as normal
  29418. and the results will be there when it is switched back on. This short
  29419. program shows the enormous speed gains possible (49% in MODE 15, 120% in
  29420. MODE 24) Ö it can reduce by a third, the time taken for a MODE 15 ray
  29421. trace. Sean Kelly
  29422. 3.9
  29423.  10 mode=MODE
  29424. 3.9
  29425.  20 MODE 0
  29426. 3.9
  29427.  30 I%=0: T%=TIME
  29428. 3.9
  29429.  40 REPEAT: I%+=1: UNTIL TIME>=T%+100
  29430. 3.9
  29431.  50 MODE mode
  29432. 3.9
  29433.  60 J%=0: T%=TIME
  29434. 3.9
  29435.  70 REPEAT: J%+=1: UNTIL TIME>=T%+100
  29436. 3.9
  29437.  80 SYS öOS_UpdateMEMCò,0,1<<10
  29438. 3.9
  29439.  90 K%=0: T%=TIME
  29440. 3.9
  29441. 100 REPEAT: K%+=1: UNTIL TIME>=T%+100
  29442. 3.9
  29443. 110 SYS öOS_UpdateMEMCò,1<<10,1<<10
  29444. 3.9
  29445. 120 PRINTÉöLoops per second:òæ
  29446. 3.9
  29447. 130 PRINTöNormal mode 0 ò;I%
  29448. 3.9
  29449. 140 PRINTöNormal mode ò;mode;ö ò;J%
  29450. 3.9
  29451. 150 PRINTöBlanked mode ò;mode;ö ò;K%
  29452. 3.9
  29453. 160 PRINTöSpeed up ò;(K%-J%)/J%*100
  29454. 3.9
  29455. ;ö%ò
  29456. 3.9
  29457. Å   FormEd Ö I was very interested to see the tip on !FormEd in the May
  29458. issue of Archive which really does make it easier to use. However, there
  29459. is a slight snag with it as published as it is possible to close the
  29460. sprite viewing window which cannot then be re-opened. Also, it is
  29461. possible to activate the ÉToolæ window which allows editing of the
  29462. sprites if the following changes are made to the !RunImage file.
  29463. 3.9
  29464. 1890   DATA öLoad templates>m_templates%
  29465. 3.9
  29466. ,Save templates>m_Savetemp%, Show Sprites, Show Toolbox#, Quitö
  29467. 3.9
  29468. 3090   ELSE PROCmergesprites (FNstring0
  29469. 3.9
  29470. (q%+44)):PROCspriteinfo
  29471. 3.9
  29472. 9781   WHEN 4 : PROCspriteinfo
  29473. 3.9
  29474. 9782   WHEN 5 : PROCencodepal (0,15) :
  29475. 3.9
  29476.  PROCfront (palette%) : PROChtpal
  29477. 3.9
  29478. 9790   WHEN 6 : PROCfinish : END
  29479. 3.9
  29480. Line 1890 adds two new options to the iconbar menu (ÉShow Spritesæ and
  29481. ÉShow Toolboxæ). Line 3090 has the REM removed which allows merging of
  29482. sprite files. Lines 9781 and 9782 are new and implement the opening of
  29483. the sprite and tool win-dows. Line 9790 needs changing as ÉQuitæ is now
  29484. the sixth item on the menu.
  29485. 3.9
  29486. Some of the sprite editing routines seem to be miss-ing from the
  29487. !RunImage file (such as the Éspray canæ) so I just created a new blank
  29488. sprite and altered the template file so that the non-working options
  29489. donæt appear!
  29490. 3.9
  29491. As noted in the magazine, !Paint is better for creating sprites but
  29492. these simple changes make !FormEd much more useful. One benefit is that
  29493. the sprites edited in !FormEd are displayed in the windows where they
  29494. will actually appear when the application runs. Paul Hobbs
  29495. 3.9
  29496. Å   Function key strips Ö In the past, many have tried to write a
  29497. program which generates one or more function key-strips. In most cases,
  29498. the graph-ics were not quite satisfying. When using MS-DOS software, the
  29499. problem arises that you really need four rows (instead of the standard
  29500. three) to cater for all possibilities: F-key, <shift-F-key>, <ctrl-F-
  29501. key> and <alt-F-key>. To solve this problem I have made two draw-files,
  29502. one for a 3-row function key-strip and one for a 4-row function key-
  29503. strip.
  29504. 3.9
  29505. Both files require the presence of the font ÉHom-erton.Mediumæ.
  29506. 3.9
  29507. As an example, I have made a function key-strip for the MS-DOS program
  29508. WordPerfect version 4.2. This file also requires the presence of the
  29509. font ÉCor-pus.Mediumæ.
  29510. 3.9
  29511. From where I stand, I find the result of the Drawfiles better than what
  29512. Iæve seen so far. (Available on the monthly program disc.) Maurice
  29513. Hendrix
  29514. 3.9
  29515. Å   Hard disc and memory usage Ö I was interested to read about module
  29516. killing in your First Word Plus column. I have a 1Mb machine and need
  29517. all the memory I can get, so I have already experimented with simple
  29518. module killing routines.
  29519. 3.9
  29520. Firstly, I altered all my !run files to keep track of Clib, FPE and the
  29521. other common modules and kill them if they are no longer needed. This
  29522. used a sys-tem variable for each module that stored the number of
  29523. applications using it. This worked but had several drawbacks. The
  29524. changing of all !run files did take a lot of work and each application
  29525. left open its !run file until it was quit. As a result, I decided that
  29526. man-ual module killing or Resetting is a better solution. One interest
  29527. ing point highlighted by this, is that !Edit suffers a fatal error and
  29528. all work is lost if the FPE is killed even though it does not need it!
  29529. 3.9
  29530. The one thing that I have found extremely useful is the setting up of a
  29531. good hard disc structure and a !boot file. This has saved memory both on
  29532. the disc due to duplication and when loading applications due to fewer
  29533. icons needed to be loaded. It has also given me quicker and easier
  29534. access to programs via the new task option.
  29535. 3.9
  29536. One thing that should be noted by hard disc users is that although
  29537. directories allow a nice structure, they do use memory and also slow the
  29538. access to certain parts of the disc, so donæt go overboard creating
  29539. directories for everything.
  29540. 3.9
  29541. I will try to explain the structure of my hard disc. I have in my root
  29542. directory the following directories and a !boot file.
  29543. 3.9
  29544. !fonts   Outline Fonts
  29545. 3.9
  29546. !system   System Modules
  29547. 3.9
  29548. Art   Artisan, !Paint etc
  29549. 3.9
  29550. Cad   !Draw etc
  29551. 3.9
  29552. Games   !Triv etc
  29553. 3.9
  29554. Library   Command line programs
  29555. 3.9
  29556. Misc   My working directory
  29557. 3.9
  29558. Text/DTP   !Edit, !Impress, !PrinterDM etc
  29559. 3.9
  29560. Utilities   !FormEd, !Hand, !Configure etc
  29561. 3.9
  29562. Others could include Sound, spreadsheets and lang-uages etc. Try to keep
  29563. associated programs together but donæt have directories with lots of
  29564. applications as all the icons are loaded and waste memory. Keep commonly
  29565. used programs one level down and others in sub directories. This is
  29566. especially true for the utilities directory.
  29567. 3.9
  29568. The next stage is to move all the commonly used modules into the
  29569. !system.modules directory. This avoids duplication, ensures a module
  29570. update is used by all programs and also simplifies things. The most
  29571. common modules found are FPEmulator and Clib. Well-written programs will
  29572. already use !System but some donæt and they will need their !run files
  29573. mod-ified. The rmload commands need to load from :4.$. !system.modules.
  29574. If the !run file does not contain the rmload commands it is probably
  29575. best to leave its modules where they are unless you know what you are
  29576. doing. Finding modules can be done using simple utilities such as !hand
  29577. (helping hand) from the Data Store to search for the file type &FFA.
  29578. 3.9
  29579. Probably the most important part of a good hard disc setup is its !boot
  29580. file. This gives the user an ideal chance to customise their system. My
  29581. !boot file shown below sets up various system variables that perform a
  29582. range of functions.
  29583. 3.9
  29584. | !Boot file for hard disc
  29585. 3.9
  29586. | Set variables for directory abbrevs
  29587. 3.9
  29588. Set r adfs::BigHardNo1.$.
  29589. 3.9
  29590. SetMacro u <r>Utilities.
  29591. 3.9
  29592. SetMacro a <r>ART.
  29593. 3.9
  29594. SetMacro d <r>Text/DTP.
  29595. 3.9
  29596. SetMacro g <r>GAMES.
  29597. 3.9
  29598. SetMacro System$Path <r>!System.
  29599. 3.9
  29600. SetMacro sm <r>!System.Modules
  29601. 3.9
  29602. | Set Alias to emulate two common
  29603. 3.9
  29604.  Unix commands
  29605. 3.9
  29606. Set Alias$LS Cat %0
  29607. 3.9
  29608. Set Alias$CD Dir %0
  29609. 3.9
  29610. | Setup directories to be searched
  29611. 3.9
  29612.  for a run command (using abbreviations to keep line
  29613. 3.9
  29614.  to <255 chars )
  29615. 3.9
  29616. SetMacro Run$Path ,%.,<sm>.,<r>L*.,
  29617. 3.9
  29618. <d>1*.,<r>CA*.,<a>,<d>,<r>M*.,
  29619. 3.9
  29620. <d>PI*.,<r>PC.,<u>,<u>CT*.,<u>F*.,
  29621. 3.9
  29622. <u>A*.,<u>B*.,<u>C*.,<u>D*.,
  29623. 3.9
  29624. <u>FO*.,<u>L*.,<u>T*.,<u>M*.,<r>T*.,
  29625. 3.9
  29626. <r>S*.,<g>I*.,<g>B*.,<g>A*.,<d>!i*.
  29627. 3.9
  29628. | Setup directories to be searched
  29629. 3.9
  29630.  for a load command (using abbreviations to keep line
  29631. 3.9
  29632.  to <255 chars )
  29633. 3.9
  29634. Setmacro File$Path ,%.,<sm>.,
  29635. 3.9
  29636. <r>Library.,<u>L*.,<d>!i*.
  29637. 3.9
  29638. | run common applications !boot files
  29639. 3.9
  29640.  to emulate the system seeing the application without cluttering
  29641. 3.9
  29642.  the $ dir.
  29643. 3.9
  29644. <a>!Draw.!Boot
  29645. 3.9
  29646. <a>!Paint.!Boot
  29647. 3.9
  29648. <d>!Edit.!Boot
  29649. 3.9
  29650. <d>!Impress.!Boot
  29651. 3.9
  29652. <u>FILES.!SPARK.!BOOT
  29653. 3.9
  29654. | set any commonly used key strings
  29655. 3.9
  29656. Key 1 *DESKTOP|M
  29657. 3.9
  29658. Key 2 EDIT|M
  29659. 3.9
  29660. | run desktop and display root directory
  29661. 3.9
  29662. Desktop Filer_OpenDir adfs::BigHardNo1.$
  29663. 3.9
  29664. The !boot file starts by defining a series of system variables that are
  29665. to be used throughout the file. They include abbreviated variables to
  29666. represent commonly used pathnames. System$Path is also defined here.
  29667. 3.9
  29668. The next section defines two aliasæs that emulate common Unix system
  29669. commands. This is only of use if you switch operating systems commonly
  29670. and tend to accidentally type in the wrong commands. A similar set could
  29671. also be set up for PC users although a clash of the ödirò command would
  29672. occur.
  29673. 3.9
  29674. The next two sections are similar and set up the vari-ables Run$Path and
  29675. File$Path. Firstly, Run$Path can be used to define all the directories
  29676. that you wish to be searched when a run program command is issued.
  29677. Similarly File$Path does the same for loading files. They both include
  29678. the first path which refers to the current directory.
  29679. 3.9
  29680. The system variables defined at the start have been used extensively and
  29681. the * wildcard to keep the line shorter than the 255 character maximum.
  29682. Be careful when using wildcards because a new directory could also match
  29683. the search instead of the intended directory. As an alternative to this,
  29684. a series of paths could be placed into system variables i.e. Run1$ Path,
  29685. Run2$Path etc and then added together to give the complete Run$Path. Be
  29686. careful when using sys-tem variables to get the correct punctuation.
  29687. Each path must end with a full stop ö.ò although this can been included
  29688. at the end of the system variables.
  29689. 3.9
  29690. The main reason for doing this is to allow the user to use the öNew
  29691. Taskò option of the task menu. If all the directories are correctly
  29692. listed in this section, you will be able to enter ö!Editò into the öNew
  29693. Taskò option and the program will install itself onto the icon bar. This
  29694. eliminates the need to know where in the directory structure it is. The
  29695. same goes for loading a program or module. You can now tuck away those
  29696. little used programs and still call them up as long as you know their
  29697. name. The general effect is the same as if everything is in the library
  29698. although loading commands can also be used.
  29699. 3.9
  29700. I have found it useful to emulate the system seeing commonly used
  29701. applications such as !Draw, !Paint and !Edit. To do this all you must do
  29702. is run each applicationæs !boot file. This will setup all the icons and
  29703. system variables. This means that, for example, a draw file can be
  29704. loaded without the application having being seen.
  29705. 3.9
  29706. A Hard disc !boot file is also the ideal place to set up any commonly
  29707. used key strings as well as loading any important modules.
  29708. 3.9
  29709. Finally, the desktop can be called and I find it useful to open up the
  29710. root directory. This can be done by the Filer_OpenDir command. Alterna
  29711. tively, another obey file can be run after the desktop has been entered
  29712. by the use of the -file option. If this is the case, it may be useful to
  29713. create an application called !boot and rename the !boot file to !run.
  29714. The second obey file can then be hidden inside this directory.
  29715. 3.9
  29716. To create and set up the !boot file╔ (1) Run !Edit (2) Create obey file
  29717. (icon menu) (3) Type in !boot data (See above) (4) Save as !boot (in
  29718. root directory) (5) Press <f12> and type
  29719. 3.9
  29720. OPT4,2
  29721. 3.9
  29722. Configure drive 4
  29723. 3.9
  29724. Configure boot
  29725. 3.9
  29726. Philip Armstrong
  29727. 3.9
  29728. Å   Hourglass Ö A quick hint for those writing a BASIC program using the
  29729. Hourglass. Often, if an error is generated from BASIC when the hourglass
  29730. is being used, it stays on the screen. This can be cured by
  29731. SYSöHourglass_Smashò or, if you have already done your error checking,
  29732. SYSöò causes a system error which has the same effect. Philip Armstrong
  29733. 3.9
  29734. Å   INKEY problems Ö If you have a loop which executes continuously and
  29735. rapidly, you might want to use:
  29736. 3.9
  29737. key%=INKEY(0):IF key%=64
  29738. 3.9
  29739. PROC_Fred ELSE IF
  29740. 3.9
  29741. key%=65 PROC_Edith
  29742. 3.9
  29743. to detect a keypress. However, remember that you should have only one
  29744. such INKEY statement in the loop even if you want to cater for many
  29745. different key presses because a single keypress can only be det-ected by
  29746. one INKEY(0) instruction. Steve Kirkby.
  29747. 3.9
  29748. Å   Keyboard cleaning (A300/400 series) Ö The keyboard that is supplied
  29749. with the computer is of the open Printed Circuit Board type. That is, a
  29750. conduc-tive film on the base of each key makes contact with large solder
  29751. plated areas called lands on the main PCB. This makes for a cheap and
  29752. reliable keyboard but it does have its problems because of its exposure
  29753. to the air in that dust can and does get in.
  29754. 3.9
  29755. Iæve had my Archimedes A310 for over 2 years now and my wife lets it
  29756. live in the living room with us. I suppose I should keep the keyboard
  29757. covered with something when not in use but Iæve never got round to doing
  29758. this. Consequently, the keyboard has had to put up with me eating
  29759. biscuits, sandwiches and other unmentionables while typing. I suppose
  29760. the inevitable had to happen and one day the keyboard rebelled! I had
  29761. began to noticed over a period of several days that the space bar and
  29762. left cursor key where playing up until they refused to work at all. Of
  29763. course, this happened a week after the guarantee had run out!
  29764. 3.9
  29765. Visions of massive bills loomed before me so I decided to undertake the
  29766. task of opening the keyboard case and having a look! I first switched
  29767. off the Archimedes and unplugged the keyboard cord from the computer. I
  29768. removed the mouse and turned the keyboard face down with the Reset
  29769. button towards me. I noted that eight large, long hex screws held the
  29770. back section of the keyboard case on. After removing these I just lifted
  29771. the back section away and placed it somewhere safe. The Reset button
  29772. looked slight delicate so I removed it by simply pulling it off. I made
  29773. a mental note of which way round it came off.
  29774. 3.9
  29775. I had a good look and there were seven large, short hex screws holding
  29776. the top keyboard casing to the main PCB frame. I removed these screws
  29777. and lifted the PCB off, putting the top casing away to another safe
  29778. place. I was half expecting the key tops and switches to try and escape
  29779. at this point but they are firmly attached to a metal frame!
  29780. 3.9
  29781. Biscuit supply Ö Turning the PCB over and looking at the top surface
  29782. between the key tops I was amazed to see a surprising amount of dust and
  29783. what looked like a secret supply of Burtons biscuits! I duly removed
  29784. this with a dry paper towel and again placed the board face down after I
  29785. had a good look at the electronics on the board, but I resisted the
  29786. temptation to touch (I suggest you do the same).
  29787. 3.9
  29788. All that now remained to do was remove the twenty small hex screws
  29789. holding the PCB to the switches. I started with the black screw at S94
  29790. position (this is written on the PCB) and noted that this was the only
  29791. small screw not actually threaded on to a switch. I removed the other
  29792. nineteen screws and gently lifted the PCB off the metal frame holding
  29793. the keys on.
  29794. 3.9
  29795. The contact plates of all the key switches where now exposed and they
  29796. consisted of thin silver discs which when pressed make contact with the
  29797. PCB lands and therefore closed the contacts. These plates looked
  29798. extremely fragile but clean so I left them well alone!
  29799. 3.9
  29800. Cleaning Ö The PCB lands were dirty, especially around the Space and
  29801. Left Cursor key positions and, being very careful not to put any grease
  29802. from my paws onto the board, I wiped the entire PCB with a dry paper
  29803. towel. Reassembling the keyboard was easy. I just placed the PCB face
  29804. down on to the metal frame holding the keys and lined up the small
  29805. screws positions. A good tip in reassembling something like this is to
  29806. begin placing the screws in from opposite ends and not to tighten up any
  29807. of the screws until they are all in place.
  29808. 3.9
  29809. Once that was done, making sure that the black screw was in the correct
  29810. position, I placed the top section face down on the work table and
  29811. positioned the assembly down onto it, again fitting the seven large
  29812. short hex screws in place. I refitted the Reset moulding into place with
  29813. a resounding click and finished off by screwing down the last eight
  29814. large long hex screws into place. I turned the complete keyboard over
  29815. and plugged it back into the Archimedes and Iæm glad to say it works a
  29816. treat! Stuart Halliday
  29817. 3.9
  29818. Å   OsSys module Ö Shortly after the release of the OsSys module, I was
  29819. told that one couldnæt use SWIæs that needed a pointer to a buffer
  29820. because no such facilities where made available. I argued that this was
  29821. very easily implemented and changed the module accordingly. When doing
  29822. this, I also noticed a minor bug in the module. When a string longer
  29823. than 300 characters is passed, the module is supposed to generate an
  29824. error. This works fine but, due to a problem during the development, I
  29825. mistakenly thought that the pipeline was playing up when generating this
  29826. error. (Not all of the error text was displayed: the first 4 characters
  29827. were missing). I solved this by adding 4 to the PC when generating the
  29828. error. Quite wrong of course. I discovered that not the pipeline but I
  29829. was to blame. I had forgotten to put the error number (4 bytes) in
  29830. before the error message.
  29831. 3.9
  29832. To upgrade the OsSys module to version 1.8, load the source code into
  29833. BASIC V and change/add the following lines:
  29834. 3.9
  29835. 10 REM >OsSysSrc18
  29836. 3.9
  29837. 350 EQUS ö1.80 (05 Apr 1990)ò
  29838. 3.9
  29839. 600 MOV R3,#500
  29840. 3.9
  29841. 610 SWI öOS_Moduleò
  29842. 3.9
  29843. 611 ;By claiming a larger workarea than required by the
  29844. 3.9
  29845. 612 ;the module, you can use the top of the work area to
  29846. 3.9
  29847. 613 ;create workspace for SWI calls that require pointers to
  29848. 3.9
  29849. 614 ;such a workspace. Eg. calls to WIMP or VDU.
  29850. 3.9
  29851. 650 EQUS öOsSWICalls v1.80 by M. Hendrix => Installedò
  29852. 3.9
  29853. 2510 REM remove this line. Itæs incorrect
  29854. 3.9
  29855. 3180 EQUD &01 ;Error number
  29856. 3.9
  29857. Save and run the program.
  29858. 3.9
  29859. The new module will claim more workspace than it actually needs. The top
  29860. 200 bytes can thus be used for SWI buffers. You can use *MEMORYA to edit
  29861. the buffer(s). If you need more space for a buffer just change the value
  29862. #500 in line 600 to your desired amount of memory. (Donæt forget to add
  29863. 300 bytes for the module itself!) Maurice Hendrix
  29864. 3.9
  29865. Å   Random number generator Ö If you use the use the random number
  29866. generator (RND in BASIC), it must be initialised with something really
  29867. random, such as the current time. Otherwise, the same num-bers will be
  29868. produced every time the program is run. The otherwise excellent game
  29869. !Yahtzee on Care-ware 4 suffers from this problem but it can easily be
  29870. solved: insert the line 123 Junk = RND(-TIME) and then every game is
  29871. different. Jonathan Puttock
  29872. 3.9
  29873. Å   The Dreaded CLI! Ö One of the nicest aspects about the Archimedes is
  29874. the Configure command. This command is often forgotten about as it lies
  29875. in that terrible place called the Command Line Interpreter (CLI)
  29876. accessed by pressing the dreaded function 12 key. One of the many things
  29877. that the Configure command does and seems to get lain aside is the
  29878. WimpFlags options. This very useful command determines the action of all
  29879. the windows used by RISC-OS in as far as it controls the two types of
  29880. window movement, resizing and scrolling. What two types?, I hear you
  29881. ask.
  29882. 3.9
  29883. Status Ö Well if youæve never used the WimpFlags command before then you
  29884. have probably put up with the kind of windows which, when you change
  29885. their size or move them, all you get is a large dotted outline which
  29886. turns into a solid window when you release <select> or <adjust>. Now you
  29887. have an alternative. If you first press F12 from the Desktop and type in
  29888. *STATUS <return> youæll get a large list of items and near the end is a
  29889. line Wimpflags x, this x number (it may be 0) is actually the decimal
  29890. representative of a binary pattern of this number which switches on or
  29891. off the various options under this command.
  29892. 3.9
  29893. If you type in *HELP WimpFlags <return> then the following should
  29894. appear:
  29895. 3.9
  29896. *HELP WimpFlags
  29897. 3.9
  29898. ==> Help on keyword WimpFlags
  29899. 3.9
  29900. *Configure WimpFlags sets the
  29901. 3.9
  29902.  default actions when dragging
  29903. 3.9
  29904. windows, as follows:
  29905. 3.9
  29906. bit 0 set: continuous window movement
  29907. 3.9
  29908. bit 1 set: continuous window resizing
  29909. 3.9
  29910. bit 2 set: continuous horizontal scroll
  29911. 3.9
  29912. bit 3 set: continuous vertical scroll
  29913. 3.9
  29914. bit 4 set: donæt beep when error box
  29915. 3.9
  29916.  appears
  29917. 3.9
  29918. Syntax: *Configure WimpFlags <number>
  29919. 3.9
  29920. Simply put, if you where to type in say:
  29921. 3.9
  29922. *CONFIGURE WimpFlags 1 <return>
  29923. 3.9
  29924. and press <ctrl-break> (you need to do this each time you enter new
  29925. values to actually change the values!) youæll see that if you move any
  29926. window it will be instant! If you want to try some more Éconfiguringæ
  29927. try changing the WimpFlags to 2 to see only instant window resizing or 3
  29928. for both. (Donæt forget to press <ctrl-break> afterwards!) If you do not
  29929. like this new look, simply change Wimpflags back to 0. The next two
  29930. options concern the scroll bars and these are really useful. If you
  29931. change WimpFlags to 8 youæll see that by dragging the pointer up and
  29932. down the vertical bar youæll get a smooth scroll effect, much better
  29933. than constantly clicking the arrow icons! Try WimpFlags set to 4 for
  29934. horizontal scroll or even 12 for them both at the same time.
  29935. 3.9
  29936. Error Ö The last option just stops the error box beeping at you. Try
  29937. WimpFlags set to 16 and then Select an empty disc drive. Remember you
  29938. can combine any of these together by simply adding their numbers
  29939. together and configuring the WimpFlags. Try WimpFlags set to 31, this is
  29940. my favourite! Stuart Halliday
  29941. 3.9
  29942.  
  29943.  
  29944. Å   Auto-Booting on Startup Ö The following tip is of particular use to
  29945. users of hard disks.
  29946. 3.8
  29947. With so many extensions to RISC-OS being avail-able, most notably the
  29948. Outline Font Manager, it can be inconvenient if your applications canæt
  29949. find them and even worse if the first !System directory that is seen is
  29950. on a floppy.
  29951. 3.8
  29952. The simplest solution to this is to put !Fonts and !System in the root
  29953. directory of your hard disk and then open the root directory as your
  29954. first action.
  29955. 3.8
  29956. However, if the same action has to be performed repeatedly, then the
  29957. computer must be able to do it for you and it can.
  29958. 3.8
  29959. First you should create a command file called !Boot in Edit. This should
  29960. contain something like:
  29961. 3.8
  29962. adfs::4.$.!System
  29963. 3.8
  29964. adfs::4.$.!Fonts
  29965. 3.8
  29966. DESKTOP
  29967. 3.8
  29968. This will then initialise the system and font paths before starting the
  29969. desktop. To make it run on startup, you must configure the system to
  29970. execute the !boot file, this is done from an operating system * prompt
  29971. by:
  29972. 3.8
  29973. *configure boot
  29974. 3.8
  29975. *configure drive 4
  29976. 3.8
  29977. *opt 4,3
  29978. 3.8
  29979. The last option sets the current drive to execute the !boot file, rather
  29980. than attempting to run it as a BASIC program.
  29981. 3.8
  29982. This is not the end of the startup. When you invoke the desktop, it is
  29983. possible have one or more applications run automatically. To run a
  29984. single application, just append the application path on the end of the
  29985. DESKTOP command, for example:
  29986. 3.8
  29987. DESKTOP adfs::4.$.!Edit
  29988. 3.8
  29989. This will startup the desktop with Edit on the menu bar. To initialise
  29990. more than one application, you specify a text file which lists all the
  29991. applications that you wish to start.
  29992. 3.8
  29993. DESKTOP -File adfs::4.$.Startup
  29994. 3.8
  29995. The file Startup might contain the following list of files:
  29996. 3.8
  29997. adfs::4.$.!Draw
  29998. 3.8
  29999. adfs::4.$.!Edit
  30000. 3.8
  30001. adfs::4.$.!Paint
  30002. 3.8
  30003. This will then enter the desktop and start Draw, Edit and Paint
  30004. automatically. One word of warning, if you are limited to 1 Mb, be
  30005. careful as it would be very easy to use up all the available memory.
  30006. 3.8
  30007. Further customisation could be had by adding RMload commands to the !Run
  30008. file of !System to automatically load modules (such as NewModes) and
  30009. Filer_OpenDir pathname to the !Run files of applications in the startup
  30010. file to automatically open directory viewers. Phil Kitching
  30011. 3.8
  30012. Å   BasicEdit Ö For users of the Data Store !Basic-Edit application:
  30013. Because this application uses the DSUtil module to alter the operation
  30014. of the mouse pointer it is not possible to run desktop programs
  30015. successfully from Edit without returning to the desktop first. This,
  30016. however, has the disadvantage that programs are more difficult to debug:
  30017. when a program ends it returns to the desktop and all the variables are
  30018. lost. A few simple changes to the !BasicEdit.!RunImage program, however,
  30019. seem to provide a satisfactory remedy. Insert near the start of the
  30020. program the following function key definitions:
  30021. 3.8
  30022. *KEY 2 *BEUtilOff|M*BASIC|MOLD|M
  30023. 3.8
  30024. RUN|M
  30025. 3.8
  30026. *KEY 3 *BEUtilOn|MEDIT .|M
  30027. 3.8
  30028. Then to run any program from the Edit screen simply press <f1> once and
  30029. <f2> once. If the prog-ram uses the Wimp, the desktop will reappear as
  30030. it was before you ran !BasicEdit with the new program running as well.
  30031. After the program ends, a öcommand windowò will appear where you can use
  30032. LVAR or any other BASIC commands. To return to the Edit screen where you
  30033. left it, simply press <f3>. Hugh Eagle
  30034. 3.8
  30035. Å   Battery changing Ö You donæt have to bother with adding capacitors
  30036. etc as mentioned last month. All you need to do is leave the computer
  30037. switched on while changing the batteries (but mind your fingers on the
  30038. fan!). There is no danger involved, as the mains is totally enclosed,
  30039. and it will not harm the machine. Mike Harrison.
  30040. 3.8
  30041. Å   C programming Ö When writing desktop applications, put ÿDATEÿ in the
  30042. version string. So, if you forget to update the version number when
  30043. modifying the source files, it doesnæt really matter because when the
  30044. info is given from the menu, you can then find out what date the file
  30045. was compiled. R Bunnett.
  30046. 3.8
  30047. Å   Closing the Edit window using <adjust> (instead of <select>) the
  30048. source directory is opened after the window has been closed. Holding the
  30049. <shift> key down simultaneously, will cause the directory viewer to be
  30050. opened without closing the Edit window (this allows you to drag-save the
  30051. file into the same directory, but with a different name). This is also
  30052. true for Draw and Paint.
  30053. 3.8
  30054. Å   Double clicking problems Ö Double clicking on an application
  30055. installed on the icon bar by !TinyDirs can result in the application
  30056. running twice. This can have the confusing result that when you quit the
  30057. application a second copy of it immediately appears in its place.
  30058. 3.8
  30059. I have found a somewhat cumbersome solution to this problem which is to
  30060. include the following code in the WimpPoll loop:
  30061. 3.8
  30062. WHEN 17 : IF block%!4<>TaskId% AND block%!16=&400C2 THEN
  30063. 3.8
  30064. PROCInsertCR(block%+28)
  30065. 3.8
  30066. dummy$=$(block%+28)
  30067. 3.8
  30068. IF dummy$=TaskName$ THEN
  30069. 3.8
  30070. quit%=TRUE
  30071. 3.8
  30072. ENDIF
  30073. 3.8
  30074. ENDIF
  30075. 3.8
  30076.    .
  30077. 3.8
  30078.    .
  30079. 3.8
  30080. DEF PROCInsertCR(mem%)
  30081. 3.8
  30082. LOCAL I%
  30083. 3.8
  30084. I%=mem%
  30085. 3.8
  30086. REPEAT
  30087. 3.8
  30088. I%+=1
  30089. 3.8
  30090. UNTIL ?I%=0
  30091. 3.8
  30092. ?I%=13
  30093. 3.8
  30094. ENDPROC
  30095. 3.8
  30096. When the first application receives the message that is broadcast when a
  30097. new application starts (i.e. it receives reason code 17 with
  30098. block%!16=&400C2) and it finds that the new task has the same name
  30099. (TaskName$) as itself, it sets quit%=TRUE which makes the application
  30100. quit at the end of the poll loop.
  30101. 3.8
  30102. Note that when each application starts, it receives the message
  30103. broadcast by itself, hence the com-parison of block%!4 (which holds the
  30104. handle of the sender of the message) with TaskId% to prevent the task
  30105. from shutting itself down!
  30106. 3.8
  30107. Note also that the little procedure PROCInsertCR seems to be necessary
  30108. to convert the string at block%+28 from a zero terminated string to a
  30109. normal &0D terminated one. (Can anyone explain please RISC-OSæs
  30110. infatuation with these wretched zero-terminated strings ... and to say
  30111. that itæs because C or Unix, or whatever, uses them is no answer!) Hugh
  30112. Eagle
  30113. 3.8
  30114. Å   Filer_OpenDir Ö The command ÉFiler_Open Diræ may be used for any
  30115. file path. This includes Éfiling systemsæ created using a system
  30116. variable (e.g. System$Path) may be referred to as the filing system
  30117. Ésystem:æ. Some Éfiling systemsæ are one direction only (e.g. printer:).
  30118. The command can also use SystemDevicesæ own Éfiling systemsæ:
  30119. 3.8
  30120.    kbd: / rawkd:   the keyboard
  30121. 3.8
  30122.    null:   the Énull deviceæ
  30123. 3.8
  30124.    printer:   the printer
  30125. 3.8
  30126.    serial:   the serial port
  30127. 3.8
  30128.    vdu: / rawvdu:   the screen
  30129. 3.8
  30130.    netprint:   the network printer
  30131. 3.8
  30132. Examples: dragging a file onto the view opened by:
  30133. 3.8
  30134. *Filer_OpenDir printer: will spool it to the printer
  30135. 3.8
  30136. *Filer_OpenDir vdu: will send it to the vdu driver (try it with a text
  30137. file)
  30138. 3.8
  30139. *Filer_OpenDir null: <shift> dragging will Émoveæ a file to null: i.e.
  30140. delete it
  30141. 3.8
  30142. Å   FormEd Update Ö Users who have downloaded the !FormEd template
  30143. editor from Acornæs SID board (also available on shareware disc 20)
  30144. might like to know how to put back the Ésprite routinesæ.
  30145. 3.8
  30146. The version of !FormEd refered to has a !Help file stating a date of 16-
  30147. May-89, and a ReadMe file stating version 1.00, but shows version 1.01
  30148. and date of 23-May-89 in its Info window. The ReadMe file shows that
  30149. this is an unsupported Acorn application.
  30150. 3.8
  30151. The !Help file states ÉSome previous versions of FormEd used to provide
  30152. facilities for editing sprites. These are now provided only in the
  30153. !Paint applicationæ, also that when a sprite file is dragged onto the
  30154. FormEd icon on the iconbar, a window will display the sprites. In the
  30155. supplied state, no window is opened and you do not know what your sprite
  30156. names are, or even if you have loaded the correct file, until you define
  30157. an icon as a named sprite which you hope is in the file!
  30158. 3.8
  30159. I was having problems with not enough memory on a 1Meg machine for
  30160. !Paint, !FormEd, the sprite files and the templates being built. (It IS
  30161. possible with very careful setting of the æFreeæ and ÉNextæ bars in the
  30162. Task Manager, but you canæt have any printer drivers etc). An examina
  30163. tion of the !FormEd reveal-ed that by removing the REM statements from
  30164. just 2 lines the sprite routines were again available.
  30165. 3.8
  30166. Load the !RunImage for !FormEd and LIST lines 2270 and 3080. Edit those
  30167. lines to remove the REM before PROCspriteinfo in each, so that the lines
  30168. are as shown below:
  30169. 3.8
  30170. 2270 WHEN &FF9:PROCloadsprites (f$)
  30171. 3.8
  30172.  :PROCspriteinfo
  30173. 3.8
  30174. 3080 PROCloadsprites(FNstring0(q%
  30175. 3.8
  30176. +44)):PROCspriteinfo
  30177. 3.8
  30178. Save the file back to the disk. When a sprite file is dragged to the
  30179. FormEd icon, a sprite window is shown and the sprite editing routines
  30180. appear to work OK (although !Paint is more powerful). Douglas Potter
  30181. 3.8
  30182. Å   GraphBox Ö Maybe this is an obvious point to some users but it took
  30183. me a while to discover. Graphs imported into !Draw can be disassembled
  30184. to a remarkable degree (using ungroup) right down to facets of
  30185. individual 3D bars. This allows extensive re-orienting, re-colouring
  30186. options which can avoid some of the problems with dark colours and
  30187. overlaps when colour printing on a dot matrix printer. John Wann
  30188. 3.8
  30189. Å   Hardware developeræs tool Ö On the monthly program disk is a utility
  30190. (ÉSVCBASæ) which is very useful for hardware developers. It patches
  30191. BASIC so that memory indirection operators (? and !) operate in
  30192. supervisor mode. This allows quick Étweakingæ of hardware devices while
  30193. testing. Documentation is minimal, since those who are likely to need it
  30194. should not need any! Mike Harrison.
  30195. 3.8
  30196. Å   Maestro Ö There are (I think!) several errors in the description of
  30197. the !Maestro file format on pages 1809 to 1813 of the PRM:
  30198. 3.8
  30199. a)   in the ÉMusic dataæ the number of bytes of gate data is given, not
  30200. the number of gates as the PRM says
  30201. 3.8
  30202. b)   the number of bytes of gate data is preceded by &40
  30203. 3.8
  30204. c)   each of the next eight words (which give the length in bytes of the
  30205. queues of note/rest data for the eight channels) is also preceded by &40
  30206. 3.8
  30207. d)   in the ÉStave dataæ, the number of music staves is reduced by 1
  30208. (i.e. if there are 4 music staves this is recorded as 3)
  30209. 3.8
  30210. e)   in the descriptions of the ÉGate Attributesæ, the binary represen
  30211. tations of the bottom few bits of each byte are given with the least
  30212. significant bit first. Thus where the ÉClefæ description says öBits 0 Ö
  30213. 2 : 001 binaryò it means that bits 0 and 1 are 0 and bit 2 is 1.
  30214. 3.8
  30215. f)   within the ÉClefæ attribute data, the stave number (minus 1) is
  30216. given in bits 6 and 7, not bits 5 and 6. Hugh Eagle
  30217. 3.8
  30218. Å   Problems with an Epson LQ1050? When printing from Impression, !Draw,
  30219. etc using the !PrinterDM application, the 360 x 360 dpi mode may cause
  30220. spurious characters to be printed, which results in a poor quality
  30221. printout. The reason for this is that the firmware in the Epson printer
  30222. does not support the [Esc]+ control sequence which is nec-essary to set
  30223. a line feed of 1/360th of an inch. In order to get this option working
  30224. you will need a new version of the printeræs ROM. This can be purch-ased
  30225. from Applied Technology Ltd. David Crofts
  30226. 3.8
  30227. Å   Re-inking your ink-cartridge Ö It is possible to re-ink an ink-
  30228. cartridge for an HP-Deskjet Plus printer and probably other inkjet
  30229. printers by buying one of the inks listed below and then using a syringe
  30230. to insert the ink through a hole on the top of the cartridge. (a)
  30231. Fountain pen ink (Pelikan), (b) Diadye ink (photo-shop), (c) Rotring
  30232. air-brush ink. Tony Hopstaken
  30233. 3.8
  30234. Å   Rotor passwords Ö Lee Thake has sent in the passwords for Rotor, but
  30235. in case you would rather not know, here they are in very simple coded
  30236. form so that once you have the first password, you will be able to work
  30237. out the others. QJU, HBH, MJQ, TMZ, NFX, BXF, UOU, FOE.
  30238. 3.8
  30239. Å   Sparkplug Ö We have a lot of questions about how to decompress
  30240. programs such as PCDir which appear on our program and Shareware discs.
  30241. Let me try to explain in more detail.
  30242. 3.8
  30243. The reason the programs are compacted is that there would not be enough
  30244. room on the disc for the uncompacted version. Thus, if you are to uncom-
  30245. pact them, you need to do so onto another (prefer-ably blank) disc. If
  30246. you have two drives or a hard disc on your computer, the job is easier
  30247. then if you are trying to do it on a single drive, so I will do it the
  30248. hard way first.
  30249. 3.8
  30250. Insert a blank disc in the drive and open its filer window. Remove this
  30251. disc and insert the Program Disc (or Shareware disc, or whatever) in the
  30252. drive and open its filer window. If you have not already done so,
  30253. install !sparkplug onto the icon bar by double-clicking on it. Drag the
  30254. icon of the program to be decompacted onto the !sparkplug icon on the
  30255. icon bar. A pseudo-filer window opens. Drag the icon or icons from there
  30256. into the filer window of the blank disc. You will be prompted to insert
  30257. that disc into the drive and will probably then have to keep swapping
  30258. the discs over as prompted until all of the compacted files and folders
  30259. have been uncom-pacted and copied across onto the other disc. This may
  30260. actually require quite a number of repetitions, so it may be better to
  30261. create as large a ram disc as possible and drag the files from the
  30262. !Sparkplug filer window onto the ram disc then change discs and copy
  30263. back from the ram disc to the blank disc. This, of course, will not work
  30264. if you cannot make a ram disc big enough to accommodate the uncompacted
  30265. files.
  30266. 3.8
  30267. If you have two discs, simply put the program disc in one drive and the
  30268. blank disc in the other. Proceed as above, except that you will not be
  30269. prompted to change discs since both are accessible to the computer at
  30270. the same time.
  30271. 3.8
  30272. Å   Too many fonts Ö If you have too many anti-aliased fonts, !Edit will
  30273. crash with a ÉFatal internal error type=5æ. So those of you who are
  30274. purchasing the new onslaught of outline fonts should not put them all
  30275. into one !Fonts directory.
  30276. 3.8
  30277. Å   VIDC parameters Ö On the monthly program disk is a text file of all
  30278. the VIDC and VDU para-meters for the standard screen modes. This makes
  30279. life a lot easier when defining your own modes, especially without the
  30280. aid of an oscilloscope to monitor the video waveform, and a VIDC data-
  30281. sheet. Itæs much easier to tweak the existing num-bers than to work them
  30282. out from scratch! Mike Harrison.
  30283. 3.8
  30284. Å   Wimp programming Ö If you get unexpected messages such as öToo many
  30285. nested structuresò when running a BASIC program in a Desktop application
  30286. it may be simply because you have failed to allocate a large enough
  30287. Wimpslot. Hugh Eagle
  30288. 3.8
  30289. Å   Z88 file transfer Ö The Z88 can save files to disc. Ranger sell a
  30290. battery powered disc drive which reads and writes 3.5ö discs in 720k
  30291. MSDOS format. The trouble is it costs as much as the Z88.
  30292. 3.8
  30293. The Z88 does not insist on sending a line feed, see Printered.
  30294. 3.8
  30295. Since the Z88 serial port uses XOn/XOff by default, a three wire serial
  30296. lead will suffice if the Archim-edes is using similar software. Be sure
  30297. to short other handshaking lines. The simplest method of sending data to
  30298. the Archimedes is to use:
  30299. 3.8
  30300. *SPOOL file
  30301. 3.8
  30302. *FX21,1
  30303. 3.8
  30304. *FX2,1
  30305. 3.8
  30306. and just print from the Z88. Make sure the last lines in the file being
  30307. printed have *SPOOL *FX 2,0.
  30308. 3.8
  30309. The next stage up is to use a communications pack-age such as Hearsay
  30310. and the Filer to send or receive files. There is a nice routine on the
  30311. Data Store utilities disc which does the job using the Filer.
  30312. 3.8
  30313. Lastly the best way of transferring data is to use the PCLink ROM and
  30314. the Z88 filer that comes with Pipedream. Unfortunately PCLink comes with
  30315. a Z88 to PC cable so some soldering is still required. Data transfer
  30316. with PCLink is unnecessarily slow, a version of Kermit would have been
  30317. more use and faster. Bruce Edelsten
  30318. 3.8
  30319. (How about using the Archimedes-Z88 link that we supply for ú35? Ed.)
  30320. 3.8
  30321.  
  30322.  
  30323. Å   !Draw Ö I used to find it difficult to get to grips with !Draw
  30324. because I couldnæt visualise the final layout. However, if you use the
  30325. Énew viewæ option together with Ézoomæ you can get a WYSIWYG view. Not
  30326. only this, but it is possible to manipulate the major view from the
  30327. minor view. L Kennedy.
  30328. Å   Acorn DTP Ö This may seem obvious but I only just figured it out!
  30329. When printing documents from Acorn DTP, I found that footers (in
  30330. particular) wouldnæt print.  I spent ages looking through the DTP manual
  30331. trying to figure out why. I suddenly occurred to me that it might be the
  30332. printer driver and sure enough, it was.  The page size for A4 paper has
  30333. margins set all round, in particular a bottom margin of 20 mm is set,
  30334. and it is this which is Éclippingæ out the footers.  Set this to 0 (say)
  30335. and the problem is solved. Kevin Quinn
  30336. 3.7
  30337. Å   BASIC programs from !Edit Ö When in !Edit you can actually run BASIC
  30338. programs etc from within the desktop without pressing <f12>. I happened
  30339. to come across this accidentally. Press <menu> on the Edit icon and
  30340. click on New Task Window. This will produce a task window on the screen
  30341. and will allow you to execute the BASIC environment without leaving the
  30342. desktop and allow you to format disks also allowing you to nearly multi-
  30343. task formatting disks, you can suspend the task get on with something
  30344. then resume the task and the formatter will continue where it left off!
  30345. Press-ing <menu> from within the task window will give a list of
  30346. commands (anyone know what link/unlink does??) Graham Bisset
  30347. 3.7
  30348. Å   Changing your batteries and keeping your CMOS RAM settings intact.
  30349. If you connect a 100 microfarads capacitor in series with a 100 ohm
  30350. resistor and clip them across the battery connec-tions, (+ve of the
  30351. capacitor to +ve of the battery) you will have about 70-100 seconds to
  30352. change your batteries without losing your CMOS settings. The computer
  30353. should be kept switched off throughout the operation. J W E Jones
  30354. 3.7
  30355. Å   Current directory path Ö With reference to Richard Skempæs query in
  30356. Archive 3.5 p43 about getting the full pathname of the current direc
  30357. tory, the Éeasiest on your fingersæ method uses system variables. It was
  30358. difficult to implement and required a fair amount of digging in the
  30359. manuals but it does demonstrate the use of *Set, *SetMacro and *SetEval,
  30360. so here it is:
  30361. 3.7
  30362. Place the following two lines into an Obey file, either via *Build or by
  30363. using !Edit. Save it in the library directory of your current disc as
  30364. öPathò and set the filetype to be an Obey file (*SetType %.Path Obey).
  30365. Execute it with *Path. Subsequent use of *Path will have other effects Ö
  30366. see later.
  30367. 3.7
  30368. Set Path$ $
  30369. 3.7
  30370. SetMacro Alias$Path Dir %%0||mIf ö%%0ò = öò Then Set Path$ $ Else If
  30371. ö%%0òLEFT1 = ö$ò Then Set Path$ %%0 Else SetEval Path$ Path$ + ö.%%0ò
  30372. 3.7
  30373. How it works: öSet Path$ $ò sets up a system variable called öPath$ò and
  30374. assigns to it the string value ö$ò, which you will recognise as being
  30375. the name of the root directory.
  30376. 3.7
  30377. öSetMacro Alias$Path ╔ò creates a macro system variable called öPathò.
  30378. 3.7
  30379. When ö*Path [<directory path>]ò is executed, the macro first selects the
  30380. directory specified in <dir-ectory path> by way of the old *Dir command.
  30381. 3.7
  30382. If no directory path is specified, the old *Dir selects the root
  30383. directory. The macro examines <directory path> and, if it is a null
  30384. string (öò), it sets Path$ to ö$ò.
  30385. 3.7
  30386. If the leftmost character of <directory path> is ö$ò, the macro replaces
  30387. Path$ with <directory path>.
  30388. 3.7
  30389. If <directory path> is not null and does not have ö$ò as its leftmost
  30390. character, the macro appends a full stop and the string specified in
  30391. <directory path> to whatever Path$ contains.
  30392. 3.7
  30393. Path$ thus always contains the full pathname of the currently selected
  30394. directory (CSD).
  30395. 3.7
  30396. You can actually redefine *Dir itself to do this, so that you donæt have
  30397. to remember to use *Path ins-tead of *Dir. In other words, it becomes
  30398. transparent.
  30399. 3.7
  30400. All you do is to change the first occurrence of Path (in öAlias$Pathò)
  30401. to Dir (i.e. öAlias$Dirò) and change the öDir %%0ò to ö%Dir %%0ò. The
  30402. extra % sign in front of Dir is to enable the original version of Dir to
  30403. be used (FORTH programmers will recognise this as smudging). I have not
  30404. actually tried this, but it should work!!
  30405. 3.7
  30406. How to use it:
  30407. 3.7
  30408. Use öPathò wherever you would use öDirò. In fact, do not use öDirò at
  30409. all (more on this later). Also use full pathnames, as opposed to
  30410. wildcarded path-names. This is not really necessary, but it looks
  30411. neater.
  30412. 3.7
  30413. The command ö*Path Basic.Games.Adventureò, executed from the root
  30414. directory, would set sub-directory öAdventureò as the CSD, exactly in
  30415. the same way as ö*Dir Basic.Games.Adventureò would do.
  30416. 3.7
  30417. Notes:
  30418. 3.7
  30419. 1. No leading asterisks. You may enter them, but they are superfluous,
  30420. as these lines are sent direct to the CLI.
  30421. 3.7
  30422. 2. The use of two double bar characters in ||m. This is so that Obey
  30423. will insert it in the macro variable as |m, instead of as ASCII 13.
  30424. 3.7
  30425.    Alias$Path is a multi-line (well, a 2-line) com-mand. This is quite
  30426. acceptable, provided each line is separated by a carriage return (ASCII
  30427. 13, or |m).
  30428. 3.7
  30429.    Note that the (*)Dir command is at the start of the macro. Putting it
  30430. at the end causes errors related to the (*)If╔Then╔Else construct.
  30431. 3.7
  30432. 3. Double percentage character in %%0. This is so that Obey will insert
  30433. it in the macro variable as %0, instead of attempting to evaluate a
  30434. (non-existent) parameter when the command *SetMacro is executed.
  30435. 3.7
  30436. 4. Double quote marks where the parameter is to be evaluated as a
  30437. string. This is so that string evaluation will proceed correctly.
  30438. 3.7
  30439. 5. Use of upper and lower case. In general they are interchangeable at
  30440. will.
  30441. 3.7
  30442. (*)Eval supports a number of operators (see p.394 in the Archimedes User
  30443. Guide). Some are in the form of ordinary words, such as LEFT, MOD, AND,
  30444. OR, etc, and others are symbols, such as *, +, >>, etc. The ordinary
  30445. words must be in UPPER CASE, otherwise they are not recognised.
  30446. 3.7
  30447. Disc-related commands seem to be quite happy when offered system
  30448. variables as pathnames. If an application sets up its own pathname as,
  30449. say, öApplication$Dirò, you can make the first line of a BASIC program.
  30450. 3.7
  30451. 10 REM > <Application$Dir>.Program
  30452. 3.7
  30453. and be confident that the BASIC command SAVE will put it in the right
  30454. place, as the Filer (I think) evaluates <Application$Dir> correctly.
  30455. Also *Eval Application$Dir (without the <>) also returns the value of
  30456. the variable.
  30457. 3.7
  30458. You can get the value of the system variable into a BASIC variable with
  30459. the following FN:
  30460. 3.7
  30461. buffer_length%=255
  30462. 3.7
  30463. DIM buffer% buffer_length%
  30464. 3.7
  30465. PRINT FNevalOS(öApplication$Dirò) : REM NB!! no < >
  30466. 3.7
  30467. END
  30468. 3.7
  30469.  
  30470. 3.7
  30471. DEF FNevalOS(A$) LOCAL T%,L%
  30472. 3.7
  30473. SYS öOS_EvaluateExpressionò, A$,buffer%,buffer_length% TO ,T%,L%
  30474. 3.7
  30475. IF T%=0 THEN = L% : REM integer result
  30476. 3.7
  30477. buffer%?L%=13
  30478. 3.7
  30479. =$buffer%     : REM string result
  30480. 3.7
  30481. Anton Mans, Durban
  30482. 3.7
  30483. Å   Double height in Fortran Ö The following short FORTRAN routine can
  30484. be used for the Archimedes to Étart upæ screen output. It is a routine
  30485. for printing text in double height on the screen and uses OS_Word call
  30486. 10 to read the system font bit pattern. A VDU23 call is used to define a
  30487. pair of characters consisting of the upper and lower halves of the input
  30488. character. These two characters are then printed, one above the other,
  30489. giving a double-height character. Itæs very useful for printing headings
  30490. in screen output and doesnæt require messing about with special fonts
  30491. (Iæm going to go on to that next!).
  30492. 3.7
  30493. I claim no originality for the overall method. A routine in BBC BASIC to
  30494. do this was published in Beebug some years ago (I forget who the author
  30495. was), but I thought it was worth publicising a FORTRAN version of it in
  30496. Archive because I donæt think the translation is immediately obvious and
  30497. readers may not have been aware of the technique anyway. It should be
  30498. easily extendible to double width, quadruple height, etc.
  30499. 3.7
  30500. Rather than just give the bare routine, I have produced a short program
  30501. incorporating it, that writes out a couple of strings. Much use is made
  30502. of the É$æ format to suppress CRLF when characters are being sent to the
  30503. VDU driver. The routine is more complex than the BASIC equivalent for
  30504. two reasons. Firstly, although there is a word ÉLENæ in FORTRAN, it only
  30505. seems to give the maximum length of any given string, i.e. the length
  30506. that it is originally declared to be (e.g. CHARACTER*78 TXT; LEN(TXT)
  30507. gives 78). So in SUBROUTINE DOUBLE, there are a few lines to find the
  30508. length of the string passed to it by counting backwards from the maximum
  30509. length until a non-space character is reached. N.B. this will fail if
  30510. the string is put into the argument list, e.g. CALL DOUBLE(10,20,ÉHi
  30511. thereæ). Secondly, since individual bytes in memory are not accessible
  30512. to FORTRAN, you have to get the result back as three (4-byte) integers,
  30513. and use IAND with ISHFT to gain access to the bytes.
  30514. 3.7
  30515.      PROGRAM DHTEST
  30516. 3.7
  30517. C    *******************************
  30518. 3.7
  30519. C    A DEMONSTRATION PROGRAM FOR
  30520. 3.7
  30521.  PRINTING DOUBLE HEIGHT
  30522. 3.7
  30523. C    TEXT IN ANY MODE (NOT 7) ON THE
  30524. 3.7
  30525.  ACORN ARCHIMEDES,
  30526. 3.7
  30527. C    IN ACORNSOFT FORTRAN. USES ACORN
  30528. 3.7
  30529.  EXTENSIONS: OSWORD, ISHFT, IAND
  30530. 3.7
  30531. C    BY R.D.WRIGHT
  30532. 3.7
  30533. C    *******************************
  30534. 3.7
  30535.      CHARACTER*78 TXT
  30536. 3.7
  30537.      WRITE(6,æ($,2A)æ)CHAR(22)
  30538. 3.7
  30539. ,CHAR(12)
  30540. 3.7
  30541.      WRITE(6,*)æDOUBLE HEIGHT TESTæ
  30542. 3.7
  30543.      TXT=æTHIS IS A VERY LONG TEST
  30544. 3.7
  30545.  STRINGæ
  30546. 3.7
  30547.      CALL DOUBLE(10,20,TXT)
  30548. 3.7
  30549.      TXT=ÉAND MOREæ
  30550. 3.7
  30551.      CALL DOUBLE(10,23,TXT)
  30552. 3.7
  30553.      STOP ÉEND OF DEMOæ
  30554. 3.7
  30555.      END
  30556. 3.7
  30557.      SUBROUTINE DOUBLE(ICOL,IROW,TXT)
  30558. 3.7
  30559.      CHARACTER*78 TXT
  30560. 3.7
  30561.      INTEGER BLOCK(0:2)
  30562. 3.7
  30563.      INTEGER B(0:8)
  30564. 3.7
  30565.      N=79
  30566. 3.7
  30567.   10 N=N-1
  30568. 3.7
  30569.      IF (TXT(N:N).EQ.É æ) GO TO 10
  30570. 3.7
  30571.      DO 20 I=1,N
  30572. 3.7
  30573.      BLOCK(0)=ICHAR(TXT(I:I))
  30574. 3.7
  30575.      CALL OSWORD(10,BLOCK)
  30576. 3.7
  30577.      DO 2010 J=1,3
  30578. 3.7
  30579.      BLOCK(0)=ISHFT(BLOCK(0),-8)
  30580. 3.7
  30581.      B(J)=IAND(BLOCK(0),?IFF)
  30582. 3.7
  30583. 2010 CONTINUE
  30584. 3.7
  30585.      B(4)=IAND(BLOCK(1),?IFF)
  30586. 3.7
  30587.      DO 2020 J=5,7
  30588. 3.7
  30589.      BLOCK(1)=ISHFT(BLOCK(1),-8)
  30590. 3.7
  30591.      B(J)=IAND(BLOCK(1),?IFF)
  30592. 3.7
  30593. 2020 CONTINUE
  30594. 3.7
  30595.      B(8)=IAND(BLOCK(2),?IFF)
  30596. 3.7
  30597.      WRITE(6,É($,10A)æ)CHAR(23),CHAR(
  30598. 3.7
  30599. 240),CHAR(B(1)),CHAR(B(1))
  30600. 3.7
  30601.      +,CHAR(B(2)),CHAR(B(2)),CHAR(B(3
  30602. 3.7
  30603. )),CHAR(B(3)),
  30604. 3.7
  30605.      +CHAR(B(4)),CHAR(B(4))
  30606. 3.7
  30607.      WRITE(6,É($,10A)æ)CHAR(23),CHAR(
  30608. 3.7
  30609. 241),CHAR(B(5)),CHAR(B(5))
  30610. 3.7
  30611.      +,CHAR(B(6)),CHAR(B(6)),CHAR(B(7
  30612. 3.7
  30613. )),CHAR(B(7))
  30614. 3.7
  30615.      +,CHAR(B(8)),CHAR(B(8))
  30616. 3.7
  30617.      IX=ICOL+I-1
  30618. 3.7
  30619.      IYU=IROW
  30620. 3.7
  30621.      IYL=IROW+1
  30622. 3.7
  30623.      WRITE(6,É($,8A)æ)CHAR(31),CHAR(
  30624. 3.7
  30625. IX),CHAR(IYU),CHAR(240)
  30626. 3.7
  30627.      +,CHAR(31),CHAR(IX),CHAR(IYL)
  30628. 3.7
  30629. ,CHAR(241)
  30630. 3.7
  30631.   20 CONTINUE
  30632. 3.7
  30633.      RETURN
  30634. 3.7
  30635.      END
  30636. 3.7
  30637. R.D.Wright
  30638. 3.7
  30639. Å   Easy ÉCæ Compilation I Ö While working on a C program it can become
  30640. quite tedious to type in the same parameters every time you want to
  30641. compile the latest version of your program. One way to get around this
  30642. is to use something like öC-Frontò from Mitre which allows you to
  30643. compile directly from the desktop. A simpler and cheaper way is to use
  30644. an ÉObeyæ file which will do the job for you. Below is an example that
  30645. has been written to make the compilation of C (Release 3) programs
  30646. easier. Using this method, you can still work from the desktop editing
  30647. your text in !Edit, saving it, then pressing <f12>. You can then use the
  30648. following command:
  30649. 3.7
  30650. *c <inputname> [outputname]
  30651. 3.7
  30652. It will then automatically Compile and Link your new masterpiece!
  30653. 3.7
  30654. The program has been fully commented to aid understanding. It should be
  30655. saved as an ÉObeyæ file in the ÉLibraryæ directory under the name öCò.
  30656. Obviously it should be customised to suit your own directory layout and
  30657. preferred compiler options.
  30658. 3.7
  30659. | ÉCæ Obey file, Compiler & Linker -
  30660. 3.7
  30661.  16/02/90 Mark Taylor
  30662. 3.7
  30663. | Syntax : ö*C <inputname> [output
  30664. 3.7
  30665. name]ö
  30666. 3.7
  30667. | Where Éinputnameæ is the name of
  30668. 3.7
  30669.  the file to be compiled
  30670. 3.7
  30671. | and Éoutputnameæ is the name of the
  30672. 3.7
  30673.  output file, e.g. !RunImage, etc.
  30674. 3.7
  30675. |
  30676. 3.7
  30677. | Check for parameters. If none
  30678. 3.7
  30679.  present then error and output
  30680. 3.7
  30681.  a message.
  30682. 3.7
  30683. if ö%0ò = öò then error 0 Error in
  30684. 3.7
  30685.  ÉCæ Compiler & Linker. Syntax : *C |<inputname|> [outputname]
  30686. 3.7
  30687. |
  30688. 3.7
  30689. | Set system variable Éipname$æ to
  30690. 3.7
  30691.  first parameter after the öcò.
  30692. 3.7
  30693. Set ipname$ %0
  30694. 3.7
  30695. |
  30696. 3.7
  30697. | Check for a second and if there is
  30698. 3.7
  30699.  one set Éopname$æ to that
  30700. 3.7
  30701.  variable,
  30702. 3.7
  30703. | else set Éopname$æ equal Éipname$æ.
  30704. 3.7
  30705. If ö%1ò > öò then Set opname$ %1 else
  30706. 3.7
  30707.  Set opname$ %0
  30708. 3.7
  30709. |
  30710. 3.7
  30711. | Compile with Éipname$æ, do NOT Link
  30712. 3.7
  30713.  (-c). ANSI 3 Standard method.
  30714. 3.7
  30715. cc -c <ipname$> -I$.RISC-OSLib
  30716. 3.7
  30717. |
  30718. 3.7
  30719. | Link Éipname$æ with standard lib-
  30720. 3.7
  30721. raries and output as Éopname$æ.
  30722. 3.7
  30723. link -o <opname$> o.<ipname$> $.RISC
  30724. 3.7
  30725. -OSLib.o.RISC-OSLib $.CLib.o.Stubs
  30726. 3.7
  30727. |
  30728. 3.7
  30729. | Echo finishing message.
  30730. 3.7
  30731. Echo File É<ipname$>æ successfully
  30732. 3.7
  30733.  compiled as É<opname$>æ.
  30734. 3.7
  30735. | Unset the temporary variables.
  30736. 3.7
  30737. Unset ipname$
  30738. 3.7
  30739. Unset opname$
  30740. 3.7
  30741. Below is a cut down version that is not quite as sophisticated but is
  30742. easier to understand.
  30743. 3.7
  30744. | ÉCæ Obey file, Compiler & Linker -
  30745. 3.7
  30746.  16/02/90 Mark Taylor
  30747. 3.7
  30748. | Syntax : ö*C nameò Where Énameæ is
  30749. 3.7
  30750.  the name of the file to be
  30751. 3.7
  30752.  compiled.
  30753. 3.7
  30754. cc -c %0 -I$.RISC-OSLib
  30755. 3.7
  30756. link -o %0 o.%0 $.RISC-OSLib.o.RISC
  30757. 3.7
  30758. -OSLib $.CLib.o.Stubs
  30759. 3.7
  30760. Echo File É%0æ successfully compiled.
  30761. 3.7
  30762.  
  30763. 3.7
  30764. Å   Easy ÉCæ Compilation II Ö This is not a new idea but it is still
  30765. worth mentioning. To speed up the compilation of ÉCæ programs it is a
  30766. good idea to copy the necessary files to a RAM disc. I have written an
  30767. Obey file to achieve this. It is best saved into the Library directory
  30768. so that it may be called from the star (*) prompt any time. The way the
  30769. file is set up at the moment means that it will copy files from the hard
  30770. disc to a RAM disc of some 1.5M. The RAM disc is set up using the
  30771. öMemAllocò module (this can be found in the !Lander directory on the
  30772. Apps2 disc of RISC-OS). It should be copied in the mod-ules directory of
  30773. the !System folder. The directory layout reflects a fairly standard
  30774. system under release 3 of Acornæs ANSI C.
  30775. 3.7
  30776. Important!
  30777. 3.7
  30778. You must remember to copy the files you have changed during your session
  30779. back to disc before switching off!
  30780. 3.7
  30781. | Obey file to set up RAM disc as the
  30782. 3.7
  30783.  working disc for ÉCæ 18/1/90
  30784. 3.7
  30785. |
  30786. 3.7
  30787. | First create large RAM disc: 1.5MB!
  30788. 3.7
  30789. RMensure MemAlloc 0.11 RMload :4.$.
  30790. 3.7
  30791. !System.modules.memalloc
  30792. 3.7
  30793. RAMFSSize 1500
  30794. 3.7
  30795. RMensure SharedClibrary 3.50 RMload
  30796. 3.7
  30797. :4.$.!System.modules.clib
  30798. 3.7
  30799. RMensure FPEmulator 2.80 RMload :4.$.
  30800. 3.7
  30801. !System.modules.FPE280
  30802. 3.7
  30803. |
  30804. 3.7
  30805. CDir RAM:$.RISC-OSlib
  30806. 3.7
  30807. CDir RAM:$.Clib
  30808. 3.7
  30809. CDir RAM:$.User
  30810. 3.7
  30811. Copy ADFS:$.RISC-OSlib.* RAM:$.RISC-
  30812. 3.7
  30813. OSlib.* ~cr~v
  30814. 3.7
  30815. Copy ADFS:$.CLib.* RAM:$.Clib.* ~cr~v
  30816. 3.7
  30817. Copy ADFS:$.User.* RAM:$.User.* ~cr~v
  30818. 3.7
  30819. CDir RAM:$.Library
  30820. 3.7
  30821. Copy ADFS:$.Library.link RAM:$.Library.* ~c~v
  30822. 3.7
  30823. Copy ADFS:$.Library.cc RAM:$.Library.* ~c~v
  30824. 3.7
  30825. Copy ADFS:$.Library.squeeze RAM:$.Library.* ~c~v
  30826. 3.7
  30827. | Copy my single letter Obey file ÉCæ.
  30828. 3.7
  30829. Copy ADFS:$.Library.c RAM:$.Library
  30830. 3.7
  30831. .* ~c~v
  30832. 3.7
  30833. |
  30834. 3.7
  30835. |Define function keys.
  30836. 3.7
  30837. k.1c
  30838. 3.7
  30839. k.2cc -c
  30840. 3.7
  30841. k.3-I$.RISC-OSLib
  30842. 3.7
  30843. k.4link -o
  30844. 3.7
  30845. k.5$.RISC-OSLib.o.RISC-OSLib
  30846. 3.7
  30847. k.6$.CLib.o.Stubs
  30848. 3.7
  30849. k.7Squeeze -v
  30850. 3.7
  30851. | Delete all unwanted object files!
  30852. 3.7
  30853. k.12wipe o.* ~c
  30854. 3.7
  30855. |Perform *RAM at the end!
  30856. 3.7
  30857. RAM
  30858. 3.7
  30859. |Select $.User directory!
  30860. 3.7
  30861. Dir $.User
  30862. 3.7
  30863. Echo RAM Disc now setup correctly
  30864. 3.7
  30865.  (DIR=$.User)
  30866. 3.7
  30867. Echo
  30868. 3.7
  30869. free
  30870. 3.7
  30871. Filer_OpenDir RAM:$.User.c
  30872. 3.7
  30873. Å   Music Maestro please! Ö The !Maestro applic-ation provided by Acorn
  30874. is very powerful, if very complex. However, it still has a number of
  30875. short-comings relative to the old Island Logicæs öMusic Systemò for the
  30876. BBC micro. These include the inability to delete whole bars or several
  30877. bars; the inability to handle triplets; the inability to change Tempo
  30878. within a passage. Also, entering scores by dragging icons is extremely
  30879. slow and laborious and finally, öMusic Systemò counted notes in a bar
  30880. and, when the right time had been used, automatically entered a bar-
  30881. line. This not only saved an operation, it also provided a cross-check
  30882. on typing accuracy: the unexpected appearance of a bar-line indicated a
  30883. mistake somewhere.
  30884. 3.7
  30885. !Maestroæs !RunImage file has been modified to permit changing of the
  30886. Tempo during a passage. This required a new sprite, placed in the space
  30887. in the top right corner, next to the hemi-demi-semi-quaver rest; ÉMæ for
  30888. Metronome seemed to be a reasonable choice. This sprite can be picked
  30889. up, just like the others, and placed above the appropriate bar-line.
  30890. When it is Éclickedæ to fix it in position, it changes into the crotchet
  30891. symbol followed by ö=<num>ò, where <num> is a number from 40 to 210,
  30892. representing the Tempo as selected by the Tempo sub-menu from the main
  30893. Maestro menu. The numbers (of beats per minute) are given on page 1810
  30894. of the Programmeræs Reference Manual.
  30895. 3.7
  30896. During these investigations, a few small errors were noticed in the
  30897. Programmeræs Reference Manual (RISC-OS Edition). In Vol.4, under Music
  30898. Files:
  30899. 3.7
  30900. p.1809 öMaestroò is followed by öLine-feedò, &0A (not &0D)
  30901. 3.7
  30902. Music Data: Not ö4*8 length of queue of notes╔ò but ö5*8ò because the
  30903. length is written to file as an integer variable, FINE%(C%) (as in DC al
  30904. fine!), so it consists of one byte (&40:integer) followed by 4 bytes
  30905. (value).
  30906. 3.7
  30907. p.1811 Attributes: Clef Bit 5 is unused Bits 6 & 7 are (StaveÖ1), range
  30908. 0Ö3. The attributes as defined in !Maestro. !RunImage lines 28900Ö29020
  30909. agree with those obtained by a *DUMP of a Music file. Alan Quayle
  30910. 3.7
  30911. Å   Shift Caps Lock will give you capitals normally but will enable
  30912. lower case characters to be typed by holding down the shift key Ö very
  30913. useful when writing BASIC programs. Fred Lee
  30914. 3.7
  30915. Å   SID Ö There is a mail-server on the SID database and so if you can
  30916. use E-MAIL (e.g. if you are a student at University, like me) then you
  30917. can mail it at SIDInfo@uk.co.acorn with a message contain-ing the word
  30918. Éhelpæ and it will mail you a file telling you how to download stuff.
  30919. It only has the free PD stuff though (obviously). The advantages of this
  30920. service work both ways Ö the SID machine can schedule the replies in
  30921. non-peak times and you are not using lots of on-line time down-loading.
  30922. Kevin F. Quinn
  30923. 3.7
  30924. Å   TinyDirs Ö it may be obvious to most of you but╔ The TinyDirs
  30925. program not only allows directories to be installed on the icon bar but
  30926. allows applications to be as well. After all they are only directories
  30927. really. The application can then be run by clicking on the icon on the
  30928. icon bar in just the same way as any other application. This means you
  30929. can have your favourite programs on the icon bar without having to worry
  30930. about how to install them there. The TinyDirs program will also cope
  30931. with more than one directory. (A friend was running a new copy of
  30932. TinyDirs each time he wanted a new directory installed.) If you just
  30933. drag the icon for the directory you want installed onto one of those
  30934. already there it will be added to the list. Andrew Ling.
  30935. 3.7
  30936. Å   Turkish Éiæ Ö There is a minute error in the char-acter set supplied
  30937. as öLatin3ò on the Archimedes which, according to Acornæs manual,
  30938. corresponds to ISO 8859/3 covering German, Spanish, Turkish etc.
  30939. Character 185 is supposed to be the Turkish lower case Éiæ, i.e. like
  30940. the English Éiæ but without the dot. (The Mac has let me down for once Ö
  30941. no Turkish Éiæ! Ed.) Instead, it replicates the standard Latin Éiæ.
  30942. 3.7
  30943. To overcome this, insert the following in a boot file:
  30944. 3.7
  30945. *echo <23><185><0><0><56><24><24>
  30946. 3.7
  30947. <24><60><0>
  30948. 3.7
  30949. John Morgan
  30950. 3.7
  30951. Å   Working on a 1Mbyte machine Ö When loading applications within the
  30952. desktop especially on a 1Mb machine, always call up the task display and
  30953. reduce the size of the next slot to as low as the machine will allow,
  30954. some applications will allow you to set it to 8k and they will just grab
  30955. as much memory as they need, however some will report ÉApp need XXXk to
  30956. startæ so change the slot to about XXX+20k for workspace. If you do this
  30957. then the application can only grab as much memory as it needs. However,
  30958. if you leave say 640k in the next and you click on an application then
  30959. its likely that the application will grab about 600k or so leaving
  30960. precious little for other programs, data etc Users of 2Mb+ machines
  30961. donæt have the problem, but they still need to be careful of memory
  30962. grabbing applications!  Graham Bisset
  30963. 3.7
  30964.  
  30965.  
  30966. Å   !chars Ö which is available as !1stchars with FWPlus version 2 and
  30967. is also available on SID + Archive BBS + various PD discs, can be used
  30968. for ömousingò text into !Draw applications.
  30969. 3.6
  30970. Å   !Draw Ö You can use the cursor keys for fine positioning when
  30971. drawing Bezier curves or lines.
  30972. 3.6
  30973. Å   !Madness Ö I was always very disappointed with this Demo Ö until I
  30974. looked at the !RunImage file and found a variable called madspeed% Ö
  30975. guess what changing it to 1 does? Rob Davison
  30976. 3.6
  30977. Å   !system on floppies Ö Those of you without hard discs will have
  30978. !system on various of your floppies. The trouble is that when you change
  30979. to other discs, even if they have !system on them, you will be asked to
  30980. insert the disc containing !system that the com-puter saw first of all.
  30981. To get round this, double click on !system on the current disc before
  30982. trying to launch applications from the disc.
  30983. 3.6
  30984. Å   Art Nouveau Ö Fills approximating to graduated, logarithmic,
  30985. circular etc can easily be Édesignedæ and saved to disc. For example:
  30986. 3.6
  30987. Approx circle fill Ö Set a small grid size and switch it on. Draw
  30988. several concentric filled circles, selecting each shade as you go. Smear
  30989. the edges with Écolour mergeæ if you donæt want the bands of colour to
  30990. show. Pick it up as a brush and use with: brush, effects1, distort x (or
  30991. y). Some of the effect that Pro-Artisan and Atelier have as features can
  30992. be cobbled together with a little effort using Art Nouveau (at half the
  30993. price!). D P Allen.
  30994. 3.6
  30995. Å   Beware the SUM! Ö If you rely on indentation in your programs to
  30996. keep a check on the structure of the various loops, beware that SUM(A())
  30997. will cause an extra indent. Is there any way round this? Fred Hartley,
  30998. Hayes.
  30999. 3.6
  31000. Å   Booting Ö When booting the Archimedes up it is tempting to just
  31001. refer to applications assuming their path starts at the root ($). e.g.
  31002. !Edit Ö can be installed on the desktop using just !Edit in a boot file.
  31003. 3.6
  31004. However, this will not ensure the appropriate system variable is set up
  31005. with the full pathname. Again using !Edit as example, you would get just
  31006. Ö Edit$Dir = !Edit
  31007. 3.6
  31008. To avoid this put the full name in the desktop boot file, e.g.
  31009. 3.6
  31010. *Run adfs:HardDisc.$.!Edit
  31011. 3.6
  31012. Only of much use if, like me, you decide to set the directory yourself
  31013. while using Desktop (despite what Acorn advise!). Ian Pollock
  31014. 3.6
  31015. Å   Graph-Box Ö superb program but I find it very annoying that it
  31016. Édiesæ when you close the window. The following changes will give
  31017. Graphbox an icon on the iconbar. It will only Édieæ when you click
  31018. <menu> followed by Équitæ as Edit and Draw etc. This lets you clear some
  31019. valuable desktop space to write a letter or whatever. while still having
  31020. Graphbox available on the icon bar.
  31021. 3.6
  31022. *BASIC
  31023. 3.6
  31024. LOAD ö!GraphBox.!RunImageò
  31025. 3.6
  31026.  220 WHEN 3:PROCclosew(!q%):IF!q%=
  31027. 3.6
  31028. w_graphbox% THEN mainclosed%=TRUE
  31029. 3.6
  31030.  560 quit%=FALSE:mainclosed%=FALSE
  31031. 3.6
  31032. 4590 WHEN0:PROCclosew(w_graphbox%)
  31033. 3.6
  31034. :quit%=TRUE
  31035. 3.6
  31036. 5291 Icon%=sprites%:!Icon%=TRUE:
  31037. 3.6
  31038. DIM Spritename% 14:$Spritename%=
  31039. 3.6
  31040. ö!graphboxò:Icon%!4=0:Icon%!8=0:
  31041. 3.6
  31042. Icon%!12=64:Icon%!16=68:Icon%!20=
  31043. 3.6
  31044. (&311A OR (7<<28))
  31045. 3.6
  31046. 5292 Icon%!24=Spritename%:Icon%!28=1:
  31047. 3.6
  31048. Icon%!32=12:SYS öWimp_CreateIconò
  31049. 3.6
  31050. ,,Icon% TO graph_iconbar%
  31051. 3.6
  31052. 5445 READ t$:m_iconbar%=FNcrmenu(t$)
  31053. 3.6
  31054. 5447 DATA ö#Graphbox,Info>w_pinfo%,
  31055. 3.6
  31056. Quitö
  31057. 3.6
  31058. 5710 REM quit%=TRUE
  31059. 3.6
  31060. 6395 IF mh%=-2 AND mb%=4 OR mb%=1024
  31061. 3.6
  31062.  AND mi%=graph_icnbar% THEN PROCgetw
  31063. 3.6
  31064. (w_graphbox%):PROCfront(w_graphbox%
  31065. 3.6
  31066. ,420,150):mainclosed%=FALSE
  31067. 3.6
  31068. 7375 WHEN-2:IFmi%=graph_icnbar% THEN
  31069. 3.6
  31070.  PROCpop(m_iconbar%,-1)
  31071. 3.6
  31072. 8219 IF menu%=m_iconbar% my%+=64
  31073. 3.6
  31074. 8545 WHEN m_iconbar%:IF !mlist%=1
  31075. 3.6
  31076.  THEN quit%=TRUE
  31077. 3.6
  31078. 16505 IFmainclosed%=TRUE PROCfront
  31079. 3.6
  31080. (w_graphbox%,420,150):
  31081. 3.6
  31082. mainclosed%=FALSE
  31083. 3.6
  31084. SAVE ö!GraphBox.!RunImageò
  31085. 3.6
  31086. NOTE: Graphbox claims what you have in your next slot up to a max of
  31087. 640k but as the program needs only a minimum of around 200k to run,
  31088. thereæs space for a very big graph! Before loading Graphbox, drag the
  31089. Énextæ slot down to about 330k to free some more space. You can edit the
  31090. !run file and change the -max to reconfigure it more permanently. Rob
  31091. Davison
  31092. 3.6
  31093. Å   Installing Alerion Ö Here are the steps you must take in order to
  31094. install RISC-OS Alerion onto your hard disc:
  31095. 3.6
  31096. (i) create a RAM disc with at least 432k
  31097. 3.6
  31098. (ii) copy the !Alerion directory into the RAM disc
  31099. 3.6
  31100. (iii) alter the RAM disc !Boot file in the !Alerion directory so that it
  31101. reads:
  31102. 3.6
  31103. IconSprites <Obey$Dir>.!Sprites
  31104. 3.6
  31105. (iv) also alter the !Run file so that reads:
  31106. 3.6
  31107. Set Alerion$Dir <Obey$Dir>
  31108. 3.6
  31109. RMClear
  31110. 3.6
  31111. RMLoad MemAlloc
  31112. 3.6
  31113. RMSize 320k
  31114. 3.6
  31115. ScreenSize 160k
  31116. 3.6
  31117. RMKill MemAlloc
  31118. 3.6
  31119. Run <Alerion$Dir>.!RunImage
  31120. 3.6
  31121. (v) copy the !Alerion directory from the RAM disc to your hard disc.
  31122. 3.6
  31123. Å   Rounding Errors Ö Try typing P.STR$(0.6) in BASIC. If you are
  31124. putting the string of a variable into a writeable menu option when
  31125. programming a wimp system and this rounding error comes up, the
  31126. resulting string can overwrite some of the data structure for your menu.
  31127. The result is often an öAbort on data transferò! This can be quite hard
  31128. to track down so be careful. DIMming the block to 5 bytes will stop a
  31129. crash but will leave the user with a 0.6666666669 to edit instead of
  31130. 0.6. This can be a bit disconcerting. To solve it, set @% to round to
  31131. e.g. 2 decimal places before doing the STR$ and reset @% afterwards Ö
  31132. see 400 series BASIC Guide pp277-278 for details. Rob Davison
  31133. 3.6
  31134. Å   Screen modes & memory claiming Ö If your program has a proper RISC-
  31135. OS front end, it can change modes without worrying about screen memory.
  31136. If there is enough in Éfreeæ and Énextæ it will be shunted to screen
  31137. memory and the mode selected. Rob Davison
  31138. 3.6
  31139. Å   Synthesiser MIDI modes Ö The answer to Gerald Fittonæs problem
  31140. (issue 2.12 p 18) that his Korg synthesiser plays all channels no matter
  31141. what he does, is that his synthesiser is not in the correct MIDI mode.
  31142. 3.6
  31143. All MIDI devices operate under modes. These are as below:
  31144. 3.6
  31145.    MIDI mode 1:   OMNI On/Poly
  31146. 3.6
  31147.    MIDI mode 2:   OMNI On/Mono
  31148. 3.6
  31149.    MIDI mode 3:   OMNI Off/Poly
  31150. 3.6
  31151.    MIDI mode 4:   OMNI Off/Mono
  31152. 3.6
  31153. OMNI On/Off selects whether the device receives on all MIDI channels
  31154. (OMNI On) or only on one MIDI channel (OMNI Off). Poly means that the
  31155. device will be able to play two or more notes at the same time and Mono
  31156. means that it will only be able to play one at a time. The Korg will
  31157. almost certainly be in MIDI mode 1, which is how most synthesisers are
  31158. set up when they are sent from the shop. The answer is to change the
  31159. MIDI mode to 3 or 4 and to set the Korg to receive on the same MIDI
  31160. channel as Maestro is sending.
  31161. 3.6
  31162. Å   Wimp Resizing Ö I have written a program which needs a large area of
  31163. memory as store for data. The program works in the desktop and claims
  31164. memory via SYS öWimp_SlotSizeò. Initially, I used the BASIC statement
  31165. öEND=HIMEM + value%ò but this also changes the address of HIMEM. Loops,
  31166. procedures and local variables are stored just below HIMEM so my data
  31167. was being overwritten. I tried lowering HIMEM immediately afterwards but
  31168. things still went wrong so I use öWimp_SlotSizeò directly. BASIC is
  31169. ignorant of the new memory area and it can therefore be safely used as a
  31170. store. Use a variable öClaimer%æ and exit the Wimp_Poll loop if itæs not
  31171. zero then call Wimp_SlotSize. R.D.
  31172. 3.6
  31173. Å   Window resizing bugs/errors Ö The bug in Interactive help Archive
  31174. 2.11 page 8 is not a bug but a result of !Help setting a window work
  31175. area extent in less than a multiple of four. The program is in C so I
  31176. canæt edit it. I discovered this when writing my own software. When a
  31177. window was stretched to its full extent it would not grow smaller in the
  31178. y direction until you moved in to the left. R.D.
  31179.  
  31180. Å   *WIPE with mouse Ö In BASIC, (or at the operating system prompt for
  31181. that matter. Ed.) if you have the pointer ON (*POINTER) and do *WIPE *,
  31182. a mouse pointer appears enabling you to use <se-lect> to delete the file
  31183. and <menu> or <adjust> to keep the file.
  31184. 3.5
  31185. Å   Alerion cheat  Ö For those who have the RISC-OS version of Alerion,
  31186. you can select the wave you wish to play by pressing the letters <A> to
  31187. <O> while on the title screen.
  31188. 3.5
  31189. Å   BASIC Editor bugs Ö There is a bug or two in the Basic Editor v1.00
  31190. that comes on the Applications Disc 2. If you exactly fill the first
  31191. line so that the cursor jumps to the next line, and then press return,
  31192. the screen looks something like this:
  31193. 3.5
  31194. 10 REM This is meant to be right over to the edge
  31195. 3.5
  31196. 11 C
  31197. 3.5
  31198. 20 xxxxxxxxxxxx
  31199. 3.5
  31200. 30 xxxx
  31201. 3.5
  31202. If you then press the <page down> key, the comp-uter will freeze.
  31203. 3.5
  31204. Another bug, whose circumstances cannot be so readily repeated, occurs
  31205. when pressing the <cursor down> key causing the program to shoot off the
  31206. top of the screen, and nothing will bring it back again.
  31207. 3.5
  31208. Both of these are Émildæ bugs because pressing <reset> followed by
  31209. typing *BASIC and OLD and EDIT restores everything back to it original
  31210. state.
  31211. 3.5
  31212. Å   BASIC first please Ö If you want your computer to start up in BASIC
  31213. instead of the desktop, use *CON. LAN. 4 and then do a <ctrl-break>.
  31214. This also means that the full computer memory is available to your
  31215. program. If you go to BASIC with <f12> to get a star command and then
  31216. typing BASIC, you only get the memory available that has been allocated
  31217. to the next application under the task display (651516 bytes). The
  31218. reason for this is that BASIC is being run as the next task within the
  31219. desktop environment. This can be seen by typing QUIT which will drop you
  31220. back into the desktop with everything as it was before.
  31221. 3.5
  31222. The other way to get the full memory available is to press <shift-ctrl-
  31223. f12> which will drop you out of the desktop completely, closing all
  31224. tasks. This drops you into the operating system, so typing BASIC and
  31225. then QUIT brings you back to the operating system prompt, not into the
  31226. desktop.
  31227. 3.5
  31228. (This is one of those things which, according to Adrian is öobviousò,
  31229. but to those of us who never reads manuals, it is news! So, the next
  31230. time you discover something which someone else thinks is öobviousò, send
  31231. it in to us as an H&T. Ed.)
  31232. 3.5
  31233. Å   CTRLing VDU scrolling Ö You can use the <scroll lock> key on the
  31234. Archimedes to stop the computer printing (either to the screen or
  31235. printer). Another method of doing this is to hold down the <shift> and
  31236. <ctrl> keys. However, if you just hold the <ctrl> key down then you can
  31237. slow down the speed of printing to about a 20th of it original speed.
  31238. 3.5
  31239. Å   Database routine Ö If youæve written a database in BASIC e.g. an
  31240. address book, it can be difficult to find a name unless you stick to a
  31241. format where all entries are in upper case, or lower case apart from the
  31242. initial letters. This little routine which uses 104 bytes is the
  31243. solution. As well as accepting upper or lower case it also will accept
  31244. the character ö#ò as a single character wildcard .
  31245. 3.5
  31246. It is identical to the BASIC command.
  31247. 3.5
  31248. INSTR(string,substring,start of search)
  31249. 3.5
  31250. Except the variables A%, $B% and $C% are declared before X=USR(code) is
  31251. called, i.e.
  31252. 3.5
  31253. $B%=ömain stringò
  31254. 3.5
  31255. $C%=ösubstringò
  31256. 3.5
  31257. A%=start of search
  31258. 3.5
  31259. X=USR(code)
  31260. 3.5
  31261. There is an example program with the listing.
  31262. 3.5
  31263. 160 DEFPROCass
  31264. 3.5
  31265. 170 FORopt=0TO3 STEP3
  31266. 3.5
  31267. 180    P%=code
  31268. 3.5
  31269. 190   [ OPT opt
  31270. 3.5
  31271. 200   STMFD R13!,{r1-r12 ,R14} ;store
  31272. 3.5
  31273.  registers. not R0
  31274. 3.5
  31275. 210   MOV R5,R0      ;start of search
  31276. 3.5
  31277. 220   MOV R0,#0    ;reset R0 (A%) for
  31278. 3.5
  31279.  return
  31280. 3.5
  31281. 230   LDRB R7,[R2,#0] ;load R7 with
  31282. 3.5
  31283.  first byte of $C%
  31284. 3.5
  31285. 240   CMP R7,#13   ;is it a CR?
  31286. 3.5
  31287. 250   BEQ end      ;i.e. null sub-
  31288. 3.5
  31289. string. exit to BASIC
  31290. 3.5
  31291. 260
  31292. 3.5
  31293. 270   .nomatch
  31294. 3.5
  31295. 280   MOV R4,#0  ;initialise counters
  31296. 3.5
  31297. 290   MOV R3,#0
  31298. 3.5
  31299. 300   .nextchar
  31300. 3.5
  31301. 310   LDRB R6,[R1,R5]  ;get byte of
  31302. 3.5
  31303.  string
  31304. 3.5
  31305. 320   CMP R6,#13   ;is it CR ie end
  31306. 3.5
  31307.  of string
  31308. 3.5
  31309. 330   BEQ end      ;if yes, substring
  31310. 3.5
  31311.  not found. exit
  31312. 3.5
  31313. 340   AND R6,R6,#95   ;AND to ignore
  31314. 3.5
  31315.  case
  31316. 3.5
  31317. 350   LDRB R7,[R2,R4] ;first byte of
  31318. 3.5
  31319.  substring
  31320. 3.5
  31321. 360   CMP R7,#13      ;is it a CR?
  31322. 3.5
  31323. 370   SUBEQ R0,R5,R3  ;yes i.e. end
  31324. 3.5
  31325.  of substring
  31326. 3.5
  31327. 380                   ;R5-R3 gives
  31328. 3.5
  31329.  position in string
  31330. 3.5
  31331. 390   ADDEQ R0,R0,#1  ;plus 1. First
  31332. 3.5
  31333.  char=0
  31334. 3.5
  31335. 400   BEQ end         ; and exit
  31336. 3.5
  31337. 410
  31338. 3.5
  31339. 420   AND R7,R7,#95   ;AND to ignore
  31340. 3.5
  31341.  case
  31342. 3.5
  31343. 430   ADD R5,R5,#1    ;increment
  31344. 3.5
  31345.  counters for next chars
  31346. 3.5
  31347. 440   ADD R4,R4,#1
  31348. 3.5
  31349. 450   CMP R7,#3       ;is it a hash?
  31350. 3.5
  31351.  If so make equal
  31352. 3.5
  31353. 460   MOVEQ R6,R7
  31354. 3.5
  31355. 470   CMP R6,R7      ;ARE bytes equal
  31356. 3.5
  31357. 480   ADDEQ R3,R3,#1  ;yes Ö get next
  31358. 3.5
  31359.  sub string char
  31360. 3.5
  31361. 490   BEQ nextchar
  31362. 3.5
  31363. 500   BNE nomatch     ;no try next
  31364. 3.5
  31365.  string char
  31366. 3.5
  31367. 510   .end
  31368. 3.5
  31369. 520   LDMFD R13!,{r1-r12 ,R15};restore
  31370. 3.5
  31371. registers. R0 has INSTR
  31372. 3.5
  31373. 530   ]
  31374. 3.5
  31375. 540 NEXT
  31376. 3.5
  31377. 550 ENDPROC
  31378. 3.5
  31379. Å   Disappearing menus Ö After selecting an option on a menu, the menu
  31380. disappears. To prevent this: instead of using <select> to select option,
  31381. use <adjust>, and the menu will then stay on the screen.
  31382. 3.5
  31383. Å   Drawing with Outline fonts - If you possess Acorn DTP, you can use
  31384. the !FontEd public domain program to create !Draw paths of the
  31385. individual letters. This is done by dragging the character in the main
  31386. !FontEd window into the !Draw document window. Once transferred, the
  31387. letter can be manip-ulated just like any other drawing e.g. rotated,
  31388. stret-ched, filled, etc. With a little patience, some very effective
  31389. titles can be created.
  31390. 3.5
  31391. Å   DTP memory Ö A couple of hints to give extra memory when using Acorn
  31392. DTP with a 1M machine: load the printer driver first and then quit
  31393. before entering DTP. Only the modules are used for printing, which are
  31394. left installed after you quit. Secondly, the use of screen mode 1 uses
  31395. only 24k of memory and since it is a four colour mode, it gives a better
  31396. grey scale than Mode 0.
  31397. 3.5
  31398. Å   E-Type bug Ö There is a bug in ÉAll Tracksæ option of E-Type. If you
  31399. press hard on the brakes when the time reaches 0:01 the program
  31400. sometimes goes bonkers and when you are placed on the new track, your
  31401. Trip Score increases.
  31402. 3.5
  31403. Å   External ST506 drives Ö If you add an external hard drive to an old
  31404. 440 or 310, you may find that the whole system dies completely for no
  31405. apparent reason. The problem is that if the external drive is powered up
  31406. before the computer, a small voltage can be produced within the computer
  31407. so when the power suplly on the computer tries to power up, it sees this
  31408. voltage, panics and shuts down again! The simple solution is to power up
  31409. the computer first and then the external drive.
  31410. 3.5
  31411. When switching off, work on the ölast in, first outò principle and
  31412. switch off the drive first. This is good practice since, if the drive is
  31413. left switched on, as the computer powers down, extraneous signals on the
  31414. driveæs data and control lines could conceivably be interpreted as
  31415. something nasty like, ö Please wipe track 0, sector 0ò and you end up
  31416. with a öBad Free Space Mapò! (Iæm sure that is Somebodyæs Law.)
  31417. 3.5
  31418. Å   Interdictor Cheat Ö It is possible to alter your landing pad in
  31419. Interdictor. Edit StateSave via !Edit. Go down to the 10th number and
  31420. alter it. Note that Landing pad 2 is actually Landing pad 1 and so alter
  31421. the 10th number to a 1 and so on. Also note that there are 7 runways,
  31422. the 7th being known as the number 6. This might sound confusing but
  31423. really itæs not!
  31424. 3.5
  31425. Å   Large hard drives on A410/1? Ö Someone asked us to find out whether
  31426. it was possible to put hard drives with more than 8 heads onto an A410/
  31427. 1. All we have been able to find out is that, to get the extra head
  31428. select line, you need to change links LK12 and LK13. Whether the
  31429. software will cope, we do not know. If anyone has any success with it,
  31430. perhaps they would let us know.
  31431. 3.5
  31432. Å   Virus protection Ö If you are passing discs around, especially PD
  31433. discs, guard yourself against the virus. When you receive or pass on a
  31434. disc, you run the risk of your machine picking or up a virus or logic
  31435. bomb.
  31436. 3.5
  31437. Passing on files: Format an unused disc and copy only the files you wish
  31438. to send. Alternatively, wipe the disc (*Wipe * FR~C), copy the files and
  31439. run my disc wiping program (see below). This is needed because deleting
  31440. a file does not erase the data on the disc; it just causes the computer
  31441. to forget about it. The data can be retrieved by anyone with a disc
  31442. sector editor, so run the program if you want to thoroughly scrub the
  31443. unused parts of the disc.
  31444. 3.5
  31445. Receiving files: Copy across only those files which you need. Try not to
  31446. use the desktop as some logic bombs can sit in an applicationæs !Boot
  31447. file and spring out at you when you open their directory viewer.* After
  31448. copying, the original disc should be cleared by reformatting.
  31449. 3.5
  31450.  10 REM >Eradicate
  31451. 3.5
  31452.  20 REM Guards against the Virus and
  31453. 3.5
  31454.  accidental giveaways of data
  31455. 3.5
  31456.  30 REM Erases totally the unused parts
  31457. 3.5
  31458.  of a disc
  31459. 3.5
  31460.  40 REM PUBLIC DOMAIN by Sandie Goh
  31461. 3.5
  31462.  50 REM Version 1.21 (20-Sep-1989)
  31463. 3.5
  31464.  60 :
  31465. 3.5
  31466.  70 MODE 3:OFF:DIM blankspace 409600
  31467. 3.5
  31468.  80 PRINTöDisc Eradicatorò
  31469. 3.5
  31470.  90 PRINTö===============òÉ
  31471. 3.5
  31472. 100 PRINTöPUBLIC DOMAIN by Sandie Goh,
  31473. 3.5
  31474. Version 1.21 (20-Sep-1989)öÉ
  31475. 3.5
  31476. 110 PRINTöErases totally the unused
  31477. 3.5
  31478.  parts of a disc.ö
  31479. 3.5
  31480. 120 PRINTöHELPS guard against viruses,
  31481. 3.5
  31482.  logic bombs etc.öÉ
  31483. 3.5
  31484. 130 PRINTöInsert disc to be cleaned in
  31485. 3.5
  31486.  drive 0 and press a key.öÉ
  31487. 3.5
  31488. 140 *FX 15,1
  31489. 3.5
  31490. 150 IF GET
  31491. 3.5
  31492. 160 PRINTöCompacting, to collect free
  31493. 3.5
  31494.  space into a single block.ö
  31495. 3.5
  31496. 170 REPEAT
  31497. 3.5
  31498. 180   *COMPACT 0
  31499. 3.5
  31500. 190   SYSöADFS_FreeSpaceò,ö0ò TO total,
  31501. 3.5
  31502.  biggest
  31503. 3.5
  31504. 200 UNTIL biggest=total
  31505. 3.5
  31506. 210 PRINTöSaving dummy files into the
  31507. 3.5
  31508.  free space to wipe anything there.ö
  31509. 3.5
  31510. 220 REM Use unlikely filenames to avoid
  31511. 3.5
  31512.  clashes
  31513. 3.5
  31514. 230 IF biggest>409600 THEN
  31515. 3.5
  31516. 240   OSCLI (öSAVE ZZDelONN12 ò+STR$~
  31517. 3.5
  31518. blankspace+ö +64000ò)
  31519. 3.5
  31520. 250   biggest=biggest-409600
  31521. 3.5
  31522. 260 ENDIF
  31523. 3.5
  31524. 270 OSCLI (öSAVE XXDelONN12 ò+STR$~
  31525. 3.5
  31526. blankspace+ö +ò+STR$~biggest)
  31527. 3.5
  31528. 280 PRINTöDeleting the dummy files to
  31529. 3.5
  31530.  release the space.öÉ
  31531. 3.5
  31532. 290 *REMOVE ZZDelONN12
  31533. 3.5
  31534. 300 *DELETE XXDelONN12
  31535. 3.5
  31536. 310 PRINTöI now pronounce this disc
  31537. 3.5
  31538.  clean.ö
  31539. 3.5
  31540. *If you donæt believe me, I was myself the victim of a booby-trapped
  31541. disc. After mounting a disc I picked up from a friend, I copied its
  31542. contents across to my hard disc, only to find that it (the winchester)
  31543. was now blank! Believing the problem to be a bug in the desktop or
  31544. chance disc failure, I restored the hard disc and tried again Ö the same
  31545. thing happened again, but this time when I did a *Compact 4.
  31546. 3.5
  31547. I tried everything and was just about to give up and complain to Acorn
  31548. when a friend phoned me with the same problem. It turns out that he too
  31549. had a copy of the disc I had picked up and I immediately became
  31550. suspicious. Further research showed that the disc contained an invisible
  31551. program which sat in the machine waiting for an opportune moment, then
  31552. zapped the Winchester with a *Wipe :4.* FR~C.
  31553. 3.5
  31554. The subtlety of the program makes it even more deadly Ö the öerrorò
  31555. occurs when you write to the hard disc using the desktop, so you are
  31556. lead to think (as I was) that a bug or disc error is responsible. So be
  31557. warned. Guard against the virus.
  31558. 3.5
  31559.  
  31560. Å 80k of RMA and rising!  RMA stands for Relocatable Module Area.  In
  31561. English, this is the area of memory which some parts of the operating
  31562. system (modules) use as work space.  This is why when you first
  31563. initialise your computer you will find that your RMA takes over 80k of
  31564. memory.  For those of you who are curious, here is a guide to the memory
  31565. each module claims on power up:
  31566. 3.04
  31567.    Module      Workspace (bytes)
  31568. 3.04
  31569.    FileSwitch      2400
  31570. 3.04
  31571.    Desktop      528
  31572. 3.04
  31573.    SystemDevices   288
  31574. 3.04
  31575.    BBCEconet      80
  31576. 3.04
  31577.    InternationalKeyboard   528
  31578. 3.04
  31579.    Debugger      448
  31580. 3.04
  31581.    SoundChannels   8464
  31582. 3.04
  31583.    Sound Scheduler   8208
  31584. 3.04
  31585.    WaveSynth      1760
  31586. 3.04
  31587.    StringLib      8576
  31588. 3.04
  31589.    Perussion      8800
  31590. 3.04
  31591.    SpriteExtend   1296
  31592. 3.04
  31593.    Draw      272
  31594. 3.04
  31595.    FontManager   2832
  31596. 3.04
  31597.    WindowManager   7920
  31598. 3.04
  31599.    NetStatus      16
  31600. 3.04
  31601.    Podule      208
  31602. 3.04
  31603.    ADFS      656
  31604. 3.04
  31605.    FileCore%ADFS   12,464
  31606. 3.04
  31607.    HourGlass      1952
  31608. 3.04
  31609.    TaskManager   3760
  31610. 3.04
  31611.    PaletteUtil      3632
  31612. 3.04
  31613.    Filer      4993
  31614. 3.04
  31615.    ADFSFiler      2336
  31616. 3.04
  31617.    ShellCLI      1872
  31618. 3.04
  31619.    Total      84308
  31620. 3.04
  31621. RMA is also used to contain WIMP sprites (especially application icons
  31622. stored in their !Sprite files) and relocatable modules, which add extra
  31623. facilities to the ROM based operating system e.g. 65Tube provides BBC
  31624. emulation.  This means that as the Archimedes Éseesæ and loads more
  31625. applications/modules the memory acquired by the RMA grows and can quite
  31626. easily reach 300k plus!
  31627. 3.04
  31628. Since there are several uses for the RMA, there are several ways of
  31629. reducing the memory it requires:
  31630. 3.04
  31631. a) Remove individual modules using the *RMKill command e.g. *RMKill
  31632. Percussion Ö this will only temporarily remove the facilities provided
  31633. by a module.
  31634. 3.04
  31635. b) Unplug unwanted modules using the *RMUnplug command e.g. *RMUnplug
  31636. BBCEconet Ö this will permanently remove the facilities provided by an
  31637. operating system ROM module Ö so if you donæt have Econet or donæt use
  31638. the Debugger then you can unplug the relevant modules and release their
  31639. workspace.  Note, you can reinvoke the facilities of a module by using
  31640. the *RMReInit command.
  31641. 3.04
  31642. c) Use the following BASIC V program to clear the RMA sprite area:
  31643. 3.04
  31644.    program segment missing
  31645. 3.04
  31646. d) If you have finished processing and saved all your work you could
  31647. press <ctrl-break> but this is rather drastic.
  31648. 3.04
  31649. Å ArcTerm update Ö Hugo Fiennes has updated ArcTerm v6.01 so that it
  31650. works properly with the CET and CET+ standards.  An upgrade can be
  31651. obtained direct from Hugo Fiennes free of charge.
  31652. 3.04
  31653. Å Arthur desktop Ö If any of you have changed over to RISC-OS but are
  31654. pining for the old Arthur desktop (!) then see if you can get hold of a
  31655. copy of Brainsoftæs Disk Transfer program.  This provides a modified ram
  31656. copy of the desktop with extra features added.  You will then be able to
  31657. access your old desktop diaries, etc.  Dave Woods.
  31658. 3.04
  31659. Å ASCII BASIC programs Ö BASIC V can load and renumber an untokenised
  31660. text file with the *BASIC -load <filename> command (the same applies
  31661. with the -chain option).  Thus you donæt really need a BASIC to ASCII
  31662. convertor; you could just keep all your BASIC programs in ASCII, at
  31663. least while you develop them, and still be able to edit them using a
  31664. text editor, e.g. TWIN or !Edit.
  31665. 3.04
  31666. Å Auto-booting applications Ö If you want a RISC-OS application to load
  31667. or run as soon as the disc is inserted then you should modify the !Boot
  31668. file in the application to execute the !Run file i.e. add the command
  31669. *Run <Obey$Dir>.!Run in the !Boot file.  This technique could be used,
  31670. for example, to automatically load the BASIC Editor when a development
  31671. disc is inserted.
  31672. 3.04
  31673. Å Break key action Ö You can set the action of the <break> key using the
  31674. *FX 247,<n> command.  The value byte <n> alters <break> and modifiers of
  31675. it as follows:
  31676. 3.04
  31677.    Bits   Key Combination
  31678. 3.04
  31679.    0.1   <break>
  31680. 3.04
  31681.    2.3   <shift-break>
  31682. 3.04
  31683.    4.5   <ctrl-break>
  31684. 3.04
  31685.    6.7   <ctrl-shift-break>
  31686. 3.04
  31687. Each two bit number may take on one of these values:
  31688. 3.04
  31689.    Value   Effect
  31690. 3.04
  31691.    00   Act as <reset> key
  31692. 3.04
  31693.    01   Act as <escape> key
  31694. 3.04
  31695.    10   No effect
  31696. 3.04
  31697.    11   Undefined
  31698. 3.04
  31699. The default is *FX 247,1 which makes <break> act as if it were <escape>
  31700. and all other combinations cause a reset.
  31701. 3.04
  31702. Å Desktop grey scale?  If you modify colours 0 or 7 (white or black)
  31703. using the desktop palette utility then the palette application will
  31704. attempt to interpolate the colours in between i.e. colours 1-6.  Try it
  31705. and see!
  31706. 3.04
  31707. Å Donæt move your mouse!  Whilst waiting for a program to complete a
  31708. lengthy process (e.g. when the hourglass is on) it is best not to move
  31709. the mouse as keeping track of the mouse movements takes up processor
  31710. time.
  31711. 3.04
  31712. Å Faster BASIC SWIæs Ö When using the SYS command within a BASIC V
  31713. program, it is quicker to use a number instead of a string.  e.g. SYS6
  31714. instead of SYS öOS_Byteò.  However, the best way to obtain the number
  31715. values is to use a BASIC variable and öOS_SWINumberFromStringò.  This
  31716. increases speed while maintaining machine independence and readability.
  31717. For example:
  31718. 3.04
  31719.    program segment missing
  31720. 3.04
  31721. Å Insert/overwrite with !Edit Ö It is possible to toggle between insert
  31722. and overwrite mode in Edit by pressing <shift-f1>.
  31723. 3.04
  31724. Å Mouse step Ö you can set the sensitivity of your mouse by using the
  31725. BASIC V MOUSE STEP command e.g. MOUSE STEP 4 means that the pointer will
  31726. move 4 O.S. pixels for every mouse pulse.  The Ésensitivity parameteræ
  31727. can take a zero or even a negative value, so that you can freeze the
  31728. mouse or even invert it!
  31729. 3.04
  31730. Å Multiple entry PROCæs and FNs Ö You can have multiple entries to
  31731. procedures and functions, although it may not be good programming style.
  31732. This is because lines beginning with DEF are not executed, so you can
  31733. have further DEFs within the body of a procedure/function, and enter at
  31734. these points with an appropriate call Ö this might be particularly
  31735. useful to have a first entry, set up some default parameters, and then
  31736. have entry to override them:
  31737. 3.04
  31738.    program segment missing
  31739. 3.04
  31740. Å O.S. case sensitivity Ö Contrary to what has been said in the past,
  31741. the operating system is almost entirely case-insensitive, unlike BASIC,
  31742. and although the case of filenames and variable names is preserved it is
  31743. not significant.  Quotes are also generally unnecessary except when
  31744. including a space in a parameter.
  31745. 3.04
  31746. Å Removing recursive directories (contæd) Ö If you accidentally copy a
  31747. directory into itself then the best way to tidy the disc up is to create
  31748. a RAM disc and move the unwanted files into it (you can move a file by
  31749. dragging it into the filer window while holding the <shift> button
  31750. down).
  31751. 3.04
  31752. Å Time for function keys Ö Function key strings are just treated as OS
  31753. variables called Key$<n>, where <n> is the key number.  This means that
  31754. all the commands relate to system variables can be used with function
  31755. keys e.g. *ShowKey$ will display key definitions.  *SetMacro Key$0
  31756. <Sys$Time> will make <f0> display the time and so on.
  31757. 3.04
  31758. Å Using *GOS Ö You can use the *GOS command from the desktop to prevent
  31759. returning if you accidentally hit the <return> key.  Once you have
  31760. finished typing your *commands you can use the ÅQuit command to go back
  31761. to the desktop.
  31762. 3.04
  31763.  
  31764.  
  31765. Å   AutoCAD to !Draw conversion Ö The RISC-OS application !Draw can
  31766. accept input from a DXF (Drawing Interchange Format) file. These files
  31767. can be produced by packages such as ÉAutoSketchæ and ÉAutoCADæ. To get a
  31768. file from a IBM PC running the ÉAutoCADæ package to !Draw the following
  31769. procedure should be used.
  31770. On the IBM PC:
  31771. 1.   Do a ÉDXFOUTæ command from within Auto-CAD to output the current
  31772. file in DXF format.
  31773. 2.   This file should be copied to a IBM format 5.25ö or 3.5ò disc.
  31774. On the Archimedes:
  31775. 3.   Start the PC emulator on the Archimedes.
  31776. 3.3
  31777. 4.   Perform a Éputfile MS_DOS_Name.dxf ADFS_Nameæ from within the
  31778. emulator to transfer the file from MS-DOS to RISC-OS.
  31779. 3.3
  31780. 5.   From within RISC-OS set the file type of your file to &DEA
  31781. (*SETTYPE ADFSName DEA).
  31782. 3.3
  31783. 6.   Start !Draw and drag the DXF file to its icon or into a !Draw
  31784. window.
  31785. 3.3
  31786. !Draw will ask you a question about the Éunitsæ (scale) before redrawing
  31787. the image in the window. This may require some thought to get the
  31788. required effect. !Draw appears to get confused with some entries in DXF
  31789. files and refuse to load the file. Deleting the text in the original
  31790. picture may cure the problem. AutoSketch on the Archimedes can also
  31791. produce DXF type files for input into !Draw.
  31792. 3.3
  31793. Å   ÉCæ Operating System calls (contæd) Ö The following example program
  31794. shows how system commands can be invoked from a C-program. It was tested
  31795. under Acorn ANSI C version 2. The use of the function Ésystemæ is part
  31796. of the proposed ANSI standard for C, although its exact implement-ation
  31797. is left up to the individual versions of C. The Acorn ÉANSI Cæ library
  31798. function Ésystemæ returns a zero value if the command executes success
  31799. fully and non-zero if it fails. Problems will occur if the command being
  31800. executed over-writes the C-prog-ram (for example if the command starts
  31801. up a second C-program), but in the example both commands are Ébuilt-inæ
  31802. and therefore do not overwrite the invok-ing program. In theory, the
  31803. *RMLoad command fails if there is not enough RMA, but in testing the
  31804. example, it worked even when the free RMA was configured to 0k.
  31805. 3.3
  31806. /* > c.systest */
  31807. 3.3
  31808. #include <stdlib.h>   /* General
  31809. 3.3
  31810.  utilities  */
  31811. 3.3
  31812. #include <stdio.h>   /* Input/output
  31813. 3.3
  31814. */
  31815. 3.3
  31816. int main ()
  31817. 3.3
  31818. {3 .3
  31819. static char rmload[]=örmload
  31820. 3.3
  31821. system:modules.memallocö;
  31822. 3.3
  31823. static char screensave[]=
  31824. 3.3
  31825.  öscreensave screenfileò;
  31826. 3.3
  31827. int result1,result2;
  31828. 3.3
  31829. result1=system(rmload);
  31830. 3.3
  31831. result2=system(screensave);
  31832. 3.3
  31833. printf(öResult1=%d, Result2=%d\nò
  31834. 3.3
  31835. ,result1,result2);
  31836. 3.3
  31837. return(0);
  31838. 3.3
  31839. }
  31840. 3.3
  31841. Å   Dead modules Ö If you install a module which claims a vector and
  31842. then press the reset button, something very strange happens when you
  31843. want to *RMKill the module. Because the vector canæt be released, the
  31844. module isnæt killed properly. To let you know about this, RISC-OS puts
  31845. the dummy address DEADDEAD where you would expect the workspace address:
  31846. 3.3
  31847. *rmkill printkill
  31848. 3.3
  31849. Bad vector release
  31850. 3.3
  31851. *modules
  31852. 3.3
  31853. No   Position   Workspace Name
  31854. 3.3
  31855. 1   0380873C   00000000   UtilityModule
  31856. 3.3
  31857. 2   0381FB94   01800014   FileSwitch
  31858. 3.3
  31859. ...
  31860. 3.3
  31861. 27   0387EA48   00000000   SpriteUtils
  31862. 3.3
  31863. 28   01813BC4   DEADDEAD   PrintKey
  31864. 3.3
  31865. etc
  31866. 3.3
  31867. Å   Definitive modem connections? The following connections work with
  31868. ArcTerm601, Hearsay and the Archive BBS for the WS3000 and SM2400
  31869. modems:
  31870. 3.3
  31871. Arc RX (2) to Modem TX (3)
  31872. 3.3
  31873. Arc TX (3) to Modem RX (2)
  31874. 3.3
  31875. Arc GND (5) to Modem GND (7, not 1)
  31876. 3.3
  31877. Arc RI (9) to Modem DCD (8)
  31878. 3.3
  31879. Arc CTS (8), DCD (1), and DTR(4) to Modem DTR (20)
  31880. 3.3
  31881. Arc RTS (7) to Modem RTS (4)
  31882. 3.3
  31883. Arc DSR (6) to Modem CTS (5)
  31884. 3.3
  31885. Å   Digitisers? Who needs one, anyway ? We recently faced the problem of
  31886. how to get the company logo into a DRAW file, and came up with a
  31887. solution which may be useful to other people. It is most applicable to
  31888. images bounded largely by straight lines.
  31889. 3.3
  31890. First take the image and enlarge it repeatedly using a photocopier until
  31891. it fills more than a third of the screen of the monitor you are using.
  31892. Then make one more enlargement, onto the transparent acetate sheets used
  31893. for overhead projector foils. If you do not have a copier you will find
  31894. most high street copier services can do all this for you, probably for
  31895. less than a pound. Our copier will enlarge to 145% at a time.
  31896. 3.3
  31897. Now cut out the piece of acetate showing the image, and put it on your
  31898. monitor screen. You will find it sticks most satisfyingly. Enter DRAW
  31899. and register the coordinates of the corners of the image. You may want
  31900. to have a grid on the screen to ensure you line up the acetate image
  31901. with the edges of the screen. You can also check alignment by reading
  31902. the coordinates of points which should be the same distance from an edge
  31903. of the screen and adjusting them as necessary.
  31904. 3.3
  31905. We found this was much easier than transcribing even simple shapes by
  31906. eye, as it was hard to get the proportions right that way. It was also
  31907. much quicker than drawing a grid and transcribing coordinates from that.
  31908. Laurie van Someren, Aleph One Ltd
  31909. 3.3
  31910. Å   Interdictor Flight Recorder! Ö It is possible to fly the plane on
  31911. your own, run or even record a demo flight. This can be done by altering
  31912. the !Run file in the !Interdictor directory. On the bottom line of this
  31913. directory is the Éflyæ command. Its permutations are as follows:
  31914. 3.3
  31915. fly       (just fly the plane as usual)
  31916. 3.3
  31917. fly playback <filename>   (replay a demo flight from a file)
  31918. 3.3
  31919. fly record <filename>      (record the flight to a file)
  31920. 3.3
  31921. If you want an example of how this works, you can look at the !RunDemo
  31922. file in the Interdictor direct-ory. This file runs the demo file call
  31923. DemoFlight.
  31924. 3.3
  31925. Å   Low Batteries? One reader noticed that after 15 months, his
  31926. Archimedesæ configuration settings began to change inexplicably e.g. the
  31927. loss of all disc drive icons in the desktop. Eventually, after various
  31928. problems (e.g. the Beebug Serial Link buffer setting kept changing) the
  31929. whole system finally froze. However, the problem was fully resolved by
  31930. replac-ing the batteries. So be warned. (Acorn recommend replacement
  31931. every 12 months.)
  31932. 3.3
  31933. Å   MS-DOS Hard Disc Partitions Ö The easiest way of getting two hard
  31934. disc partitions for the PC Emulator is to get version 1.33, which can be
  31935. downloaded from the Archive BBS or SID. Alternatively send us a donation
  31936. to our charity pot along with an 800k formatted 3.5ö disc.
  31937. 3.3
  31938. Å   Multi-tasking First Word Plus? If you rename the !Run file in the
  31939. !1stWord+ directory to !Boot then First Word Plus becomes multitasking.
  31940. Unfortunately, you cannot reach the disc, palette or task icons.
  31941. 3.3
  31942. Å   Noisy Fans 1 Ö If you have a fan in your Archim-edes, you should not
  31943. disconnect it. The reason for this is that the fan will then be blocking
  31944. up the air vent and so the computeræs PSU will operate at too high a
  31945. temperature. If you want to reduce the noise of the fan, you should
  31946. either completely remove the fan or refer to the following hint.
  31947. 3.3
  31948. Å   Noisy Fans 2 Ö I have looked at the physical design of the Archi
  31949. medes PSU and done a few temperature measurements and it is my belief
  31950. that you ought to have a fan fitted and working. So, what can you do to
  31951. reduce the annoying noise of the fans? Well, we have several Archimidi
  31952. here and the noise drove us to distraction so, being hardware oriented,
  31953. I looked at the infernal (sic) fan. Yes, I have found a way of shutting
  31954. it up, but before you get too excited, allow me to explain a little
  31955. more.
  31956. 3.3
  31957. These fans are most certainly not your average Scalectrix car 12volt
  31958. motor with a set of plastic blades stuck on the front! In fact, we
  31959. couldnæt have wished for a better headache Ö these fans (of which weæve
  31960. even found two different manufacturers so far) consist of a transistor
  31961. circuit driving a coil assembly that is alternately fluxing a permanent
  31962. magnet within the plastic rotor. At the same time, the rotor is having
  31963. its rotational speed monitored by a hall effect switch, busily counting
  31964. the revolutions! How are we going to slow that down? The answer we came
  31965. up with was a small transistor circuit of our own that takes the 12v
  31966. D.C. input and feeds to the fan a suitably pulsed supply that allows the
  31967. fan to start but not reach full speed. Cunning, eh?!
  31968. 3.3
  31969. Yes, we had to make two slightly different versions of our circuit, as
  31970. the fans were not the same electrically. Weæll let you know how they get
  31971. on as weære still testing them, but there no problems so far. Ray
  31972. Maidstone.
  31973. 3.3
  31974. If you want more technical info, drop Ray a line via the Archive office.
  31975. Ed.
  31976. 3.3
  31977. Å   Presenter II Stacked Bar option Ö If one of the data sets (columns)
  31978. contains several NULL (0 or zero) entries then on the display, some of
  31979. the stack-ed bar may be displaced vertically downwards. This is easily
  31980. corrected by replacing the NULL entry with a very small value. E.g., if
  31981. the data maximum is 100 then a value of 0.1 or 0.05 will do the trick.
  31982. 3.3
  31983. Å   Second floppy disk drive Ö If you want a second disc drive and donæt
  31984. need the a new front fascia for two drives, you can install an NEC 1036A
  31985. into the Archimedes, which can be obtained for around ú50.
  31986. 3.3
  31987. You will also need to buy some ribbon cable, power leads and extra plugs
  31988. for the leads. Donæt forget to set the drive to operate as drive 1 and
  31989. to *Configure Floppies 2 on the Archimedes.
  31990. 3.3
  31991.  
  31992.  
  31993. Å   *RMTidy and ADFS Ö If you perform a *RMTidy any discs will be
  31994. dismounted and any directory settings (*DIR) will be lost. This is
  31995. because this function re-initialises all the modules including the
  31996. FileCore%ADFS and ADFS modules.
  31997. 3.2
  31998. Å   Acorn DTP Ö if you want to import text that has a return at the end
  31999. of each line e.g. spooled BASIC programs, poetry, songs, etc then if you
  32000. import them directly Acorn DTP will ignore the returns and give you a
  32001. continuous block of text. There is a way around this problem:
  32002. 3.2
  32003. 1) In Acorn DTP define a new style say PROGRAM or SONG, etc
  32004. 3.2
  32005. 2) Set the space above parameter to 0
  32006. 3.2
  32007. 3) Load your text into !Edit
  32008. 3.2
  32009. 4) Select the find window of the !Edit menu i.e. press <f4>
  32010. 3.2
  32011. 5) Select the Émagic charactersæ option
  32012. 3.2
  32013. 6) Type: \x0A into the find box and /x0a/x0a in the replace box
  32014. 3.2
  32015. 7) Select the GO option and then select the Éreplace end of fileæ option
  32016. 3.2
  32017. The effect is that each line is treated as a new paragraph with its
  32018. style defined as PROGRAM.
  32019. 3.2
  32020. Å   Alphabase RISC-OS compatible? I read Gerald Fittonæs tale of woe
  32021. (Archive 2.12 p43) just two days after encountering exactly the same
  32022. problem myself with Alphabase. The ÉReadmeæ file on the program disc
  32023. states that hard disc installation can be done in Éthe usual RISC-OS
  32024. manneræ rather that using the ÉInstallæ file. It seems to me that it
  32025. must be done in the former way! Apart from messing up the configure
  32026. settings as Gerald describes, ÉInstallæ fails to copy the !Alphabase
  32027. application directory to drive 4 (it canæt, since the *COPY command
  32028. issued at line 160 has no R option). Remedying this doesnæt help: the
  32029. program still crashes with a Écanæt findæ message when you attempt to
  32030. boot via the Library. After wasting many hours in debugging attempts, I
  32031. scrubbed the lot and simply copied !Alphabase to :4.$, whence the
  32032. program is run without problems by clicking on the desktop. Inciden
  32033. tally, again contrary to what is said on the ÉReadmeæ file, the floppy
  32034. disc stubbornly refused to boot on Shift-Break. Bill Templeton.
  32035. 3.2
  32036. Å   Archimedes Fans Ö Ray Maidstone of Norwich has been investigating
  32037. Archimedes fans (the cooling kind). He says that if you plug in any
  32038. extensions on to your Archimedes e.g. backplanes, RAM upgrades, etc then
  32039. you really should be using a fan. This keeps the temperature of the
  32040. Archimedes at an acceptable level, thereby extending the life of the
  32041. components.
  32042. 3.2
  32043. Å   Binary-Chop Ö Michael Sawle sent in this routine which can be used
  32044. for locating an item in an array Ö one of the beauties of this routine
  32045. being that it only needs enough characters to uniquely identify the
  32046. string being searched for. The routine requires data to be stored
  32047. alphabetically in a matrix M$(1),M$(2),...,M(NR%) where NR% is the
  32048. number of records currently stored. The routine returns the matrix
  32049. element number of the desired record (or nearest available).
  32050. 3.2
  32051. DEFFNbinarychop(find$)
  32052. 3.2
  32053. LOCAL A%,B%,R%
  32054. 3.2
  32055. where=0 : A%=0 : B%=NR%
  32056. 3.2
  32057. REPEAT
  32058. 3.2
  32059. R%=INT((A%+B%)/2)
  32060. 3.2
  32061. IF M$(R%)>find$ THEN
  32062. 3.2
  32063. B%=R%
  32064. 3.2
  32065. ELSE
  32066. 3.2
  32067. IF M$(R%)<find$ THEN A%=R%
  32068. 3.2
  32069. ELSE
  32070. 3.2
  32071. where=R%
  32072. 3.2
  32073. ENDIF
  32074. 3.2
  32075. ENDIF
  32076. 3.2
  32077. UNTIL where>0 OR B%-A%=1
  32078. 3.2
  32079. IF where=0 THEN where=A%+1
  32080. 3.2
  32081. =where
  32082. 3.2
  32083. In fact this routine should be called a binary search routine. It chops
  32084. the list of records in two and then checks which half of the data set
  32085. the search string should appear. It then chops this half in two and so
  32086. on until finds the string or it realises the string does not exist. This
  32087. means that the computer can significantly reduce the number of checks it
  32088. has to make before reaching a result e.g. if you have 32768 (i.e. 2^15)
  32089. records then the computer will make a maximum of 15 checks. The price
  32090. that must be paid for this efficiency is that the data set must be
  32091. sorted in some recognisable order e.g. alphabetically, numerically,
  32092. ASCII, etc. The best versions of this technique are usually recursive.
  32093. (Perhaps someone might like to have a go at writing one?)
  32094. 3.2
  32095. Å   Colour TVæs as monitors Ö Several times in Hints & Tips, connection
  32096. of the Archimedes to colour TVæs has been mentioned. I have succeeded in
  32097. doing just this. In Archive 2.7 p11, Oliver Cornes says that plugging
  32098. the Archimedesæ SCART into a video recorder doesnæt work Ö this is
  32099. because a VCR only deals with composite signals, not RGB. However, if
  32100. your TV has a SCART socket, and many new ones do, then connection may
  32101. well be possible direct to the TV. You will have to tell the TV to use
  32102. RGB input, not the composite (it only uses composite then for timing).
  32103. There may be (indeed, it would be odd if there wasnæt) a way of doing
  32104. this with the TV controls. My TV has two sockets and if you tell it to
  32105. use socket 0 it uses socket one with RGB.
  32106. 3.2
  32107. However, I didnæt find this out until I found out that one of the pins
  32108. on the SCART standard is for just this type of use Ö pin 16 must be
  32109. between +1V and +3V with respect to pin 18 (i.e. connect a 1.5V battery
  32110. between them Ö the Öve end to pin 18, the +ve end to pin 16). The TV
  32111. then automatically switches to SCART RGB input. Note that this overrides
  32112. any channel selection made, so you should put a switch in line so you
  32113. can switch the signal off, otherwise you canæt watch TV. Connection to
  32114. the SCART plug is often maligned as difficult, but it is only a case of
  32115. knowing how to do it. The proper way is to remove the pin you wish to
  32116. make connection to, connect it up and then put it back. The pins have
  32117. barbs to prevent them from falling out, so use a pair of narrow pliers
  32118. to squeeze the barb back and push the pin out through the rear of the
  32119. plug. Also make sure that you re-insert the pin the right way round Ö
  32120. just copy the other pins. They only go in properly one way round anyway.
  32121. Kevin Quinn
  32122. 3.2
  32123. Å   FileCore in use remedy Ö If the Archimedes Éseesæ too many ADFS
  32124. directories then a ÉFilecore in useæ error may occur and you will be
  32125. unable to save any data in your machine. You can overcome this by typing
  32126. the following four lines after the error has occurred:
  32127. 3.2
  32128. *RmReInit FileCore (this will fail giving a Bad number error)
  32129. 3.2
  32130. *RmReInit FileCore
  32131. 3.2
  32132. *RmReInit ADFS
  32133. 3.2
  32134. *RmReInit HardDisc (A300æs and A3000æs only)
  32135. 3.2
  32136. Å   MaxGammon update Ö The MaxGammon game on Careware 2 cannot be played
  32137. in mode 15. In order to over come this you should:
  32138. 3.2
  32139. 1) Load in the BASIC !RunImage file in the !MaxGammon directory.
  32140. 3.2
  32141. 2) Type the following:
  32142. 3.2
  32143. 10840colour%=FNmg_Colour(mg_red
  32144. 3.2
  32145. _player%)
  32146. 3.2
  32147. 11230tc%=mgc_grey_point%
  32148. 3.2
  32149. 3) Save the program.
  32150. 3.2
  32151. Å   Oak MS-DOS SCSI as Drive D Ö I use the PC emulator occasionally for
  32152. my work. It therefore did not take very long to use up all 10M of the
  32153. MS-DOS drive C partition on my 47M SCSI drive. The obvious thing to do
  32154. would be to create another MS-DOS partition for drive D. However on the
  32155. version of the PC emulator that I am using (Emulate121) the Archimedes
  32156. hard discs 4 and 5 are mapped to MS-DOS discs C and D. Therefore drive C
  32157. and D cannot both exist on the same hard disc (on the emulator) and two
  32158. hard disc drives are required for two partitions.
  32159. 3.2
  32160. On the OAK SCSIFS each winchester drive has the following information:-
  32161. 3.2
  32162. a) filing system drive number (e.g. :4 or :5)
  32163. 3.2
  32164. b) SCSI hardware address (each device on the SCSI bus has a unique
  32165. address)
  32166. 3.2
  32167. c) logical unit number (SCSI Ésoftwareæ address)
  32168. 3.2
  32169. If you are lucky enough to have an OAK SCSI (::SCSIDisk4) with an MS-DOS
  32170. partition (Drive _C) then hereæs how to create MS-DOS drive D.
  32171. 3.2
  32172. 1. Run ÉSCSIFormæ
  32173. 3.2
  32174. 2. Note that drive :4 is SCSI ID = 0, LUN = 0
  32175. 3.2
  32176. 3. Add drive 5 with SCSI with SCSI ID = 0, LUN = 0 (same as drive :4)
  32177. 3.2
  32178. 4. Exit SCSIForm and enter the desktop. There should be an additional
  32179. hard disc icon ÉSCSI 5æ
  32180. 3.2
  32181. 5. Start up the PC emulator (version 1.20 or greater?)
  32182. 3.2
  32183. 6. Type FDISK. An extra option should appear (5 Ö select next fixed disc
  32184. drive). Select this and the disc drive should now become number 2. Then
  32185. select option 1 ÉCreate DOS Partitionæ
  32186. 3.2
  32187. 7. Type Format D:
  32188. 3.2
  32189. 8. Type CHKDSK D: (this checks partition is OK)
  32190. 3.2
  32191. 9. When using the desktop always us SCSIFS::SCSIDisc4. Ignore disc 5
  32192. 3.2
  32193. Ralph Barrett
  32194. 3.2
  32195. (We have not had a chance to try this out yet, so you follow these
  32196. suggestions at your own peril. Ed)
  32197. 3.2
  32198. Å   Recursive directory move bug Ö one reader noted that while in the
  32199. desktop, if you moved a directory into itself (by holding the shift
  32200. button down while copying) the files in the directory will be moved
  32201. further and further down a directory tree until your whole disc has been
  32202. filled with directories! The problem with this bug is that you canæt
  32203. move your files back to their original position because the disc is
  32204. already full. You must copy the other files onto another disc and then
  32205. remove the offending directory.
  32206. 3.2
  32207. Å   To scroll or not to scroll? The strange behaviour mentioned in the
  32208. BASIC V Forum (Archive 3.1 p36) is actually caused by the *Configure
  32209. Scroll or *Configure NoScroll setting. This setting allows us to control
  32210. the behaviour of the ends of lines. *Configure Scroll should be used for
  32211. compatibility with earlier machines. The RISC-OS desktop, however, has a
  32212. habit of countermanding the configured values and in this case it
  32213. decides that it prefers NoScroll. If you have a program which relies on
  32214. the behaviour of the ends of lines, then you can execute VDU 23,16,&FE,1
  32215. || to temporarily obtain the Scroll option, or VDU 23,16,&FE,0 || to
  32216. obtain NoScroll behaviour.
  32217. 3.2
  32218.  
  32219.  
  32220. Å   Acorn DTP fonts and print outs Ö P.J.Burn says that in order to
  32221. print out Acorn DTP documents on an A310 you should select mode 11 as
  32222. this releases 40k of memory. He also says that in order to increase the
  32223. speed of the DTP screen update you should ensure that the font cache is
  32224. 24k or larger.
  32225. 3.1
  32226. Å   Acorn DTP double spacing Ö Some readers have complained that when
  32227. starting a new paragraph the Acorn DTP will always produce a double
  32228. space. This can be solved by altering the space above setting of the
  32229. paragraphæs style.
  32230. 3.1
  32231. Å   BASIC listings for !Edit Ö Mark Taylor says that it is easy to
  32232. create an ASCII copy of a BASIC program. Just install !Edit in the
  32233. normal way and then create a task window (this can be done by clicking
  32234. the MENU button on the !Edit icon and selecting the ÉNew task windowæ
  32235. item from the ÉCreateæ sub-menu). In this window start BASIC by typing
  32236. *BASIC, then just LOAD the required program and LIST it. You can now
  32237. save the contents of the window  as a normal ASCII file.
  32238. 3.1
  32239. Å   C operating system calls (issue 2.12 p 36 cont) Ö Ray Loades-Bannon
  32240. says that to access OSCLI commands from C you should use either:
  32241. 3.1
  32242. system (öscreensave <pathname>òò)
  32243. 3.1
  32244. or:
  32245. 3.1
  32246. {3 .1
  32247.    char *cptr;
  32248. 3.1
  32249.    strcpy (cptr,öscreensave ò);
  32250. 3.1
  32251.    strcat(cptr,pathnameptr);
  32252. 3.1
  32253.    system(cptr);
  32254. 3.1
  32255. }
  32256. 3.1
  32257. See the ÉCalling other programs from Cæ chapter in the C manual for
  32258. further details.
  32259. 3.1
  32260. Å   Debugger BreakPoints Ö When stepping though code, it is useful to
  32261. run the code up to a breakpoint, and then remove the breakpoint and
  32262. reposition it further ahead. Here are three function keys defin-itions
  32263. suggested by Robin Terry to help you do this:
  32264. 3.1
  32265. *Key1 öBreakClr PC|MBreakSet ò
  32266. 3.1
  32267. *Key2 öContinue|Mò
  32268. 3.1
  32269. *Key3 öMemoryI PC|Mò
  32270. 3.1
  32271. The first breakpoint is set by using *BreakSet, but subsequent break
  32272. points can be set by pressing <f1> and typing in the address. Then press
  32273. <f2> should be pressed to execute the code , and <f3> should be pressed
  32274. to look at where youæve got to.
  32275. 3.1
  32276. Å   Droom under RISC-OS Ö A.H.Eagle says that when using Droom under
  32277. RISC-OS the $.Data.Map program just caused the computer to freeze at
  32278. line 820. This line reads 820 ?&CFF=L, and doesnæt seem to serve any
  32279. purpose (perhaps it is a hang-over from the BBC version). He removed
  32280. this line and the program now seems to work OK ( ... so far!).
  32281. 3.1
  32282. Å   Econet and the Desktop Ö A warning to all people using the desktop
  32283. on the network: *commands are truncated to about 80 characters by the
  32284. NetFiler, so for example, if you are several directories down and you
  32285. rename a file, it could be renamed to something that you didnæt quite
  32286. expect. More dangerous is the *Delete, in that you could want to *delete
  32287. net#254:<pathname>.FredOld  but your good copy is deleted when the
  32288. command is truncated to *delete net#254:<pathname>.Fred. Truncation
  32289. occurs due to the Acorn fileservers only being able to cope with data
  32290. packets of around 80 characters (although the SJ Research fileserver can
  32291. handle packets up to 128 characters). Another interesting feature is
  32292. that if the *command is over 128 characters, no truncation occurs and a
  32293. Net error is generated.
  32294. 3.1
  32295. Å   Filer_OpenDir revisited (issue 2.12 p 6 cont) Ö A simpler way of
  32296. using system variables with the *Filer_OpenDir command has been
  32297. suggested by one of the Archive BBS callers:
  32298. 3.1
  32299. *Set Alias$temp Filer_OpenDir <system variable>|MUnset Alias$temp|M
  32300. 3.1
  32301. *temp
  32302. 3.1
  32303. This sets up a system variable, called Alias$temp, which is used to
  32304. expand the system variable and then delete itself once called.
  32305. 3.1
  32306. Å   Hard Disc Backup program on Careware 3 Ö Terry Bromilow says: öThe
  32307. program was originally written to run under Arthur OS using the D or L
  32308. format discs. I put a new front end on it to make an application for
  32309. RISC-OS and put in some lines to accommodate E format discs. It is now
  32310. evident that the latter did not get tested.
  32311. 3.1
  32312. The BASIC program !Hdb_v200 in the !HDBackup directory should be amended
  32313. as follows:-
  32314. 3.1
  32315. Interchange the adjacent lines 2140 and 2150 and put a new line between
  32316. them: 2141 *DISMOUNT
  32317. 3.1
  32318. Å   Hard disc parking (2.11 p 13 cont) Ö Martyn Lovell says that
  32319. although *bye from a non-adfs filing system wonæt park an adfs hard disc
  32320. *adfs:bye will (SCSI hard drive owners should use *scsi:bye).
  32321. 3.1
  32322. Å   Keyboard condensation Ö One reader has noted that there is no
  32323. lacquer on the top surface of the keyboard PCB. It is not unusual for
  32324. people to blow dust, etc away from the keyboard, however, this will
  32325. cause condensation onto the PCB and cause some minor corrosion. This can
  32326. easily be wiped away.
  32327. 3.1
  32328. Å   Limited ADFS memory error Ö The ADFS module will remember the
  32329. catalogues of any discs it sees (e.g. those that it *mounts). However,
  32330. it is limited to the amount of memory it can allocate to Érememberingæ
  32331. these catalogues. This is governed by the *Configure ADFSDirCache
  32332. command. When the ADFS directory cache is full, the oldest catalogues
  32333. should be discarded as new ones are encountered. Unfortunately, the
  32334. module has a bug, which prevents it from doing this properly. What makes
  32335. this bug so serious is that it can cause the dreaded ÉFilecore in useæ
  32336. error, which cannot be rectified, thereby making it impossible for you
  32337. to save any data, etc that you might have been working on. (If Phil
  32338. Colmer at Acorn, or whoever, could give us a clue on this one, that
  32339. would be useful. Ed.)
  32340. 3.1
  32341. Å   Naming discs Ö You may already realise that you should not give
  32342. discs the same name (using the *NameDisc command) as RISC-OS will only
  32343. access one of the discs i.e. the one most recently *MOUNTed. David
  32344. Leckie found that this also holds up for fileservers discs. He had two
  32345. separate fileservers 254 and 245 both with hard disks called FS, as you
  32346. can imagine this cause much confusion!
  32347. 3.1
  32348. Å   Obey module bug Ö öSpeak and I shall obey ... or maybe not.ò There
  32349. is a bug in the obey module supplied in the ROMS (v0.07). If an
  32350. environment variable is set to a string ending with the tilde character
  32351. (~) then the string will magically acquire a few extra characters, or
  32352. worse.
  32353. 3.1
  32354. Using Edit, create a new obey file containing the command:
  32355. 3.1
  32356. Set testvariable abcdef~
  32357. 3.1
  32358. or similar, ensuring that the <return> key is pressed immediately after
  32359. the tilde (~). Save the file to a directory window and then double click
  32360. on the file icon to run the file. This will create the variable
  32361. ötestvariableò. Press <f12> to get a system prompt and type
  32362. 3.1
  32363. Show testvariable
  32364. 3.1
  32365. to display the variableæs value. It will show some-thing like
  32366. 3.1
  32367. testvariable : abcdef~~&æ
  32368. 3.1
  32369. i.e. it has acquired a few extra characters. (N.B. Iæve been unable to
  32370. repeat (see below) this so the characters may be wrong Ö but I do know
  32371. where they originate from so this is an educated guess)
  32372. 3.1
  32373. Worse is that depending on the exact situation when the file is run an
  32374. öAbort on Data Transferò error may occur (!!) and the variable will not
  32375. have been created.
  32376. 3.1
  32377. The problem is easily solved Ö donæt try and create a string ending with
  32378. ~ in an obey file. If necessary a space can be placed after the tilde
  32379. (~) and this will be enough to prevent the error. Clifford Hoggarth
  32380. 3.1
  32381. Å   RAM disc size Ö To read the size of a RAM disc, not *configured but
  32382. set from within the desktop task manager you should use:
  32383. 3.1
  32384. SYS öOS_ReadRAMFsLimitsò TO A,B
  32385. 3.1
  32386. (B-A)/1024 gives the size of the the RAM disc in kbytes.
  32387. 3.1
  32388. To check if a *configured ram disc exists then try:
  32389. 3.1
  32390. SYS öOS_Byteò,161,144 To ,,ramdiscsize%
  32391. 3.1
  32392. The variable ramdiscsize% indicates the number of RAM pages to be
  32393. allocated to the RAM disc e.g. 8k blocks for a 300 series.
  32394. 3.1
  32395. Å   Recursive directory copying Ö If you copy a directory into itself
  32396. (as Clive Payne did with his library directory in issue 2.11 p 15) the
  32397. computer will get into an infinite loop of copying directories inside of
  32398. themselves. To stop the computer from using all your disc space up, you
  32399. can press the escape key. The error can then be rectified by going into
  32400. the parent directory and deleting its children i.e. you donæt have to
  32401. reformat your disc!
  32402. 3.1
  32403. Å   ROM Speed Up Ö In several Archive issues (e.g. issue 2.11 p 8) we
  32404. have pointed out that the speed at which the Archimedes runs its ROMs
  32405. can be increased. Martyn Lovell advises us that this can cause RISC-OS
  32406. to crash and so is not very reliable.
  32407. 3.1
  32408. Å   Squish Ö I am very pleased with Mike Harrisonæs öSQUISHò program (on
  32409. Careware disc 2). It enables me to write meaningful, well laid out
  32410. programs and then to gain processing speed following compression.
  32411. Brilliant!
  32412. 3.1
  32413. I have, however, discovered a bug. This occurs whenever you use a
  32414. statement such as:
  32415. 3.1
  32416. IF a=b c=d
  32417. 3.1
  32418. What actually happens is that it compresses to:
  32419. 3.1
  32420. IF a=bc=d
  32421. 3.1
  32422. The program then fails öUnknown or missing variableò. To circumvent
  32423. this, the full construct IF ... THEN ... should be used. B.R.Wilson,
  32424. Solihull
  32425. 3.1
  32426. Å   Uncluttering catalogues (2.11 p 13 cont) Ö If you close down an
  32427. application using the ADJUST button the filer will (re)open the viewer
  32428. containing the file you last accessed.
  32429. 3.1
  32430. Å   Using Sys$DateFormat (issue 2.12 p 19 cont) Ö Mark Taylor (along
  32431. with several others) has answered a question which appeared in last
  32432. monthæs Help!!! column.
  32433. 3.1
  32434. The system variable Sys$DateFormat is only used by the SWI call
  32435. OS_ConvertStandardDate AndTime and not by the BASIC pseudo variable
  32436. TIME$ (see pp 400-402 of the old PRM for further details).
  32437. 3.1
  32438.  10 REM >$.Convert
  32439. 3.1
  32440.  20 REM a program to convert TIME &
  32441. 3.1
  32442.  DATE in to a string,
  32443. 3.1
  32444.  30 REM in the format of the system
  32445. 3.1
  32446. variable Sys$DateFormat
  32447. 3.1
  32448.  40 :
  32449. 3.1
  32450.  50 REM some workspace for the time
  32451. 3.1
  32452.  & date SYS call
  32453. 3.1
  32454.  60 DIM block% 100
  32455. 3.1
  32456.  70 :
  32457. 3.1
  32458.  80 *Set Sys$DateFormat
  32459. 3.1
  32460. %yr%mn%dy%24%mi%se
  32461. 3.1
  32462.  90 string$=FNtime_date
  32463. 3.1
  32464. 100 PRINT öThe time is
  32465. 3.1
  32466. (YYMMDDHHMMSS) = ö;string$
  32467. 3.1
  32468. 110 END
  32469. 3.1
  32470. 120 :
  32471. 3.1
  32472. 130 DEFFNtime_date
  32473. 3.1
  32474. 140 REM first get 5 byte time code
  32475. 3.1
  32476. 150 REM using OS_Word &0E,3
  32477. 3.1
  32478. 160 SYS öOS_Wordò,&0E,3 TO r0,r1
  32479. 3.1
  32480. 170 :
  32481. 3.1
  32482. 180 REM get date & time string
  32483. 3.1
  32484. 190 SYS öOS_ConvertStandardDate
  32485. 3.1
  32486. AndTimeö,block%,block%+50,49
  32487. 3.1
  32488.  TO r0,r1,r2
  32489. 3.1
  32490. 200 :
  32491. 3.1
  32492. 210 REM extract string from data
  32493. 3.1
  32494.  block
  32495. 3.1
  32496. 220 date$=öò
  32497. 3.1
  32498. 230 FOR x%=0 TO (12-r2)
  32499. 3.1
  32500. 240 data$+=CHR$(r0?x%)
  32501. 3.1
  32502. 250 NEXT x%
  32503. 3.1
  32504. 260 =date$
  32505. 3.1
  32506.  
  32507. 3.1
  32508. Å   VIDC warning Ö Someone (Philip Green, I think) sent in a warning to
  32509. say that you should NEVER connect and disconnect video and monitor
  32510. connections with the computer switched on for fear of damaging the VIDC.
  32511. 3.1
  32512. I have been doing just that for two years now on several different
  32513. Archimedes computers and have NEVER had any problems, so I wasnæt going
  32514. to bother printing the warning Ö it seemed a little over cautious. This
  32515. morning I connected up a brand new monitor, live as usual, and got a
  32516. funny picture. öDratò, says I, öItæs a DOA and will have to go back to
  32517. the distributor from whence it came!ò However, further fiddling and
  32518. switching of monitors (live) between computers revealed that the
  32519. computer was at fault Ö there were funny dark vertical lines down the
  32520. display and the sound was a bit croaky (sound comes through VIDC). This
  32521. is what you call learning the hard way or öPride comes before a fallò or
  32522. something. Anyway, donæt say we didnæt warn you! Ed.
  32523. 3.1
  32524. Å   Hints & Tips printing error, Archive 2.12 p 7. The IF statement at
  32525. line 750 is incorrect Ö a 7 has been cut off by the editor Ö Ékey% < 5æ
  32526. should read Ékey% <57æ.
  32527.  
  32528. Å   Archive Bulletin Board Ö This monthæs password is öARCAMò Ö which is
  32529. apparently the name of Alan Gloveræs hi-fi system!
  32530. 2.12
  32531. Å   Arthur 1.2 desktop Ö Nick Furniss has converted the Arthur 1.2
  32532. desktop so that it works under RISC-OS. If you are interested, you
  32533. should contact him at 87 Moordale Avenue, Bracknell, RG12 1TG.
  32534. 2.12
  32535. Å   Datachat Modem connections Ö These connect-ions were sent in by P
  32536. Carlson who is happily using the Datachat to connect to Prestel.
  32537. 2.12
  32538.    Archimedes   Datachat
  32539. 2.12
  32540.    2   5
  32541. 2.12
  32542.    3   1
  32543. 2.12
  32544.    5   3
  32545. 2.12
  32546. Pins 2 & 3 on the Datachat are linked together and pins 1, 6 and 8 are
  32547. linked on the Archimedes.
  32548. 2.12
  32549. Å   First Word Plus Ö Volker Eloesser of West Germany, in response to
  32550. Help needed 2.11, p.15, concerning First Word Plus:
  32551. 2.12
  32552. 1) This sounds as if the printer is configured to a shorter paper length
  32553. than the computer. If the computer sends a page which is one line longer
  32554. than the configured length, the printer will feed the next full page
  32555. after receiving a form-feed command. If the reconfiguration of the
  32556. printer does not work, change the FormFeed command in the printer driver
  32557. (HEX-file) to a no-operation code, such as É00æ or É*æ and compile a new
  32558. CFG-file.
  32559. 2.12
  32560. 2) Simply close the window by clicking on the close-symbol on the top-
  32561. left corner of the text window before printing.
  32562. 2.12
  32563. Å   First Word Plus word-count Ö The word count in First Word Plus does
  32564. not work properly! It counts a word which contains an apostrophe as two
  32565. words e.g. Iæm or itæs. This was very embarrassing for one Archive
  32566. reader, who insisted to his publisher, that he had written a certain
  32567. number of words.
  32568. 2.12
  32569. Å   Graphic Writer bug Ö If you insert a block marker at the end of a
  32570. document, it is possible to scroll past the ÉEndæ point. This is usually
  32571. remedied by scrolling back but if you continue editing it is possible to
  32572. crash the application by pressing <ctrl><down arrow> followed by <page
  32573. down> or <page up>. So be careful.
  32574. 2.12
  32575. Å   Home Accounts Ö Just a quick comment on Alan Highetæs Home Accounts
  32576. review in 2.10 Ö one of his criticisms is that the reporting is limited
  32577. to a whole yearæs transactions thus possibly taking up lots of paper;
  32578. whilst this is true, report output can, under RISC-OS, be dragged
  32579. directly into !EDIT and then you can print bits needed.  Not ideal, but
  32580. a solution.
  32581. 2.12
  32582. Also he says that transactions are deleted after a year Ö this is not
  32583. completely true Ö only the last 12 months transactions can be graphed
  32584. and edited, but all transactions are kept for viewing in the account/
  32585. header windows. Brian Debenham
  32586. 2.12
  32587. Å   Prolog X Ö We have a hint & tip on öRetaining facts, rules and lists
  32588. produced in Prolog Xò written by C.G.Williamson. It was fairly long and
  32589. rather technical, so we did not print it. If anyone would like a copy of
  32590. this, please send an SAE to Adrian Look at the Archive office. (We have
  32591. just received a letter from Jim Davis who says that he would like to
  32592. commend Chris for his öbrilliantly simple use of the Prolog built-in
  32593. predicates Étellæ and Étoldæ.ò He quotes several learned texts and says
  32594. that they all miss Chrisæ simple combination of Étellæ, Élisting(X,Y)æ,
  32595. Étoldæ as a method of avoiding the very contrived, but hitherto common,
  32596. use of Étellæ and Étoldæ. He believes that Chrisæ expedient will become
  32597. standard.) Should we therefore publish Chrisæ comments? Are there many
  32598. Prolog users out there? Ed.)
  32599. 2.12
  32600. Å   QL Reader Ö Brian Oliver points out that there is a problem with
  32601. QLreader (Shareware 12) in its drive select. Otherwise it is excellent
  32602. and it now works fine with my 5.25ö drive connected to slot :2 after the
  32603. following modification. The SYS òADFS_DiscOpö command on line 2750 is
  32604. wrong. It should be:-
  32605. 2.12
  32606. SYS öXADFS_DiscOpò,,(1+List%<<6),
  32607. 2.12
  32608. Start%+(drive%<<29),bf%,512 TO flags%
  32609. 2.12
  32610. It is then necessary to set the default drive on line 240 and those for
  32611. selection on lines 19740 & 1950.
  32612. 2.12
  32613. Å   RS423 Archimedes to Beeb Ö J.O.Linton: I have been having trouble
  32614. with my RS423 port. My Beeb would listen to my Archimedes but my
  32615. Archimedes would not receive data correctly from my Beeb. I have a
  32616. fairly early Archimedes so I went to some trouble to get the field
  32617. modification done to the serial chip only to find that the fault was
  32618. exactly as before. Then my dealer sent me a leaflet from Acorn (Part No.
  32619. 0476.033) called ÉUsing the serial portæ in which I found this vital
  32620. paragraph:
  32621. 2.12
  32622. ÉThe Acorn BBC model B uses one stop bit by default, whereas the default
  32623. configuration of an Archimedes computer is two stop bits. You are
  32624. advised to change the DATA configuration of your Archimedes computer to
  32625. 5 if you are using your serial port to pass data to or from a BBC model
  32626. B.æ
  32627. 2.12
  32628. *Configure DATA 5 and Hey Presto Ö it worked!
  32629. 2.12
  32630. Å   Systemdevs Ö When using the System Devices to send characters to the
  32631. printer, the printer ignore character feature is not Éusedæ, and all
  32632. characters are sent to the printer Ö including the printer ignore
  32633. character. This is very useful for sending an alternative character set
  32634. to the printer (if it has a user-defined graphics option) as no
  32635. characters will be Éstrippedæ Ö rather like using VDU 1,char with the
  32636. VDU drivers. All that needs to be done is give a command similar to:
  32637. *COPY UserChars printer: ~C~V. Michael Ben-Gershon
  32638. 2.12
  32639. Å   Teletext Adaptors Ö Richard House has written some software which
  32640. allows the Archimedes to ögrabò teletext pages using the Acorn Teletext
  32641. adaptor. If any one is interested, we can put you in touch with him.
  32642. 2.12
  32643. Herman Stevens from Belgium, says that in order to get the Morley
  32644. teletext adaptor to work with RISC-OS, you require: I/O podule, Softæs
  32645. öSupportò and öATSò saved on ADFS disc, !65Host copied on the same disc
  32646. and !boot file as follows:
  32647. 2.12
  32648. CLS
  32649. 2.12
  32650. *DIR !65Host
  32651. 2.12
  32652. *RMLoad !RunImage
  32653. 2.12
  32654. *CACHEROM 1 ADFS
  32655. 2.12
  32656. *CACHEROM 3 SUPPORT
  32657. 2.12
  32658. *CACHEROM 4 ATS
  32659. 2.12
  32660. *EMU.
  32661. 2.12
  32662. By typing öTTEXTò you can start the Support ROM and TELETEXT will start
  32663. the ATS ROM.
  32664. 2.12
  32665. Å   Taxan Multisync wobbles Ö The hint last month was expressed in
  32666. rather too technical language. Iæll try again.
  32667. 2.12
  32668. Look at the p.c.b. from the front of the computer and near the serial
  32669. port socket you will see a couple of metal pins sticking up and on the
  32670. board alongside it, the inscription öLK2ò. Then over to the left of
  32671. that, about in line with the headphone socket is a set of five pairs of
  32672. pins inscribed as öPL2ò. It should have a couple of black plastic/metal
  32673. sleeves on it. These are spare metal shorting links. Slide one of these
  32674. links off (upwards) and put it instead on LK2. That should do the trick.
  32675. 2.12
  32676. Å   Compressing Text with OS_PrettyPrint Ö Under RISC-OS, the
  32677. ÉOS_PrettyPrintæ SWI (c.f. Archive 2.9 p9) has been extended to include
  32678. a Édictionaryæ facility. When an ASCII <27> code is encountered, the
  32679. next byte will be used to find (and print) a dictionary entry. For
  32680. example:
  32681. 2.12
  32682. Consider the following dictionary:
  32683. 2.12
  32684. 1)   Hello
  32685. 2.12
  32686. 2)   this
  32687. 2.12
  32688. 3)   is
  32689. 2.12
  32690. 4)   Archie
  32691. 2.12
  32692. If you send the codes <27><4> to the OS_Pretty Print SWI, tthe text
  32693. ÉArchieæ will be printed.
  32694. 2.12
  32695. The two bytes <27><4> replace the 5 bytes <65> <114><99><104><101> which
  32696. we actually want printed. The operating system uses this feature to
  32697. compress any strings it might need to print.
  32698. 2.12
  32699. The structure of a dictionary is shown below:
  32700. 2.12
  32701. <entry length> }
  32702. 2.12
  32703. <string>       } repeat
  32704. 2.12
  32705. <0>            }
  32706. 2.12
  32707. .
  32708. 2.12
  32709. .
  32710. 2.12
  32711. <0>            ; end of of dictionary
  32712. 2.12
  32713. Therefore to print an OS_PrettyPrint SWI, you must use the following
  32714. entry parameters:
  32715. 2.12
  32716. r0 -> pointer string
  32717. 2.12
  32718. r1 -> pointer dictionary (0 -> system dictionary)
  32719. 2.12
  32720. r2 -> special string (printed if dictionary entry zero is accessed)
  32721. 2.12
  32722.  10 REM >PrettyPrt
  32723. 2.12
  32724.  20
  32725. 2.12
  32726.  30 REM ****************************
  32727. 2.12
  32728.  40 REM * Using the OS_PrettyPrint *
  32729. 2.12
  32730.  50 REM *   Dictionary Facility    *
  32731. 2.12
  32732.  60 REM *  by Adrian Philip Look   *
  32733. 2.12
  32734.  70 REM *    21st August 1989      *
  32735. 2.12
  32736.  80 REM ****************************
  32737. 2.12
  32738.  90
  32739. 2.12
  32740. 100 DIM dictionary% &400:REM allocate
  32741. 2.12
  32742. some space for the dictionary
  32743. 2.12
  32744. 110 DIM buffer% 3 : REM allocate some
  32745. 2.12
  32746.  space for the string
  32747. 2.12
  32748. 120
  32749. 2.12
  32750. 130 PROCsetupdictionary :REM make a
  32751. 2.12
  32752.  user dictionary
  32753. 2.12
  32754. 140
  32755. 2.12
  32756. 150 buffer%?0=27 : REM a dictionary
  32757. 2.12
  32758.  entry follows
  32759. 2.12
  32760. 160 buffer%?2=0  : REM terminate
  32761. 2.12
  32762.  OS_PrettyPrint string
  32763. 2.12
  32764. 170 FOR x%=0 TO 5
  32765. 2.12
  32766. 180   buffer%?1=x% : REM dictionary
  32767. 2.12
  32768.  entry x%
  32769. 2.12
  32770. 190   PRINTæx%;ö : ò;
  32771. 2.12
  32772. 200   SYS öOS_PrettyPrintò,buffer%,
  32773. 2.12
  32774. dictionary%,ö<special string>ò +CHR$(0)
  32775. 2.12
  32776. 210 NEXT x%
  32777. 2.12
  32778. 220 PRINTÉ
  32779. 2.12
  32780. 230 END
  32781. 2.12
  32782. 240
  32783. 2.12
  32784. 250 DEFPROCsetupdictionary
  32785. 2.12
  32786. 260 x%=dictionary%
  32787. 2.12
  32788. 270 READ s$
  32789. 2.12
  32790. 280 WHILE s$<>ö***ò
  32791. 2.12
  32792. 290   x%?0=LEN(s$)+2:REM entry length
  32793. 2.12
  32794. 300   $(x%+1)=s$+CHR$(0) :REM null
  32795. 2.12
  32796.  terminated string
  32797. 2.12
  32798. 310   x%+=LEN(s$)+2
  32799. 2.12
  32800. 320   READ s$
  32801. 2.12
  32802. 330 ENDWHILE
  32803. 2.12
  32804. 340 ?x%=0 : REM zero length string to
  32805. 2.12
  32806.  terminate dictionary
  32807. 2.12
  32808. 350 ENDPROC
  32809. 2.12
  32810. 360
  32811. 2.12
  32812. 370 DATA Hello,this,is,Archie,ö***ò
  32813. 2.12
  32814.  
  32815. 2.12
  32816. Å   Copy Options Ö In Archive 2.10 page 15 we said that there were two
  32817. new copy options L and N. In fact there are five new options, the other
  32818. three being:
  32819. 2.12
  32820. A Ö Force destination access to same as source
  32821. 2.12
  32822. S Ö Restamp datestamped files after coping
  32823. 2.12
  32824. T Ö Only copy the directory structure
  32825. 2.12
  32826. Å   Filer_OpenDir and Filer_CloseDir (contæd) Ö Gary Atkinson says that
  32827. these commands do not use system variables and so the full directory
  32828. name must be used every time. This makes life difficult for RISC-OS
  32829. applications which want to open a Filer window relative to their present
  32830. position on the disc (which may change e.g. hard disc users).
  32831. 2.12
  32832. Therefore, with this context in mind, Gary has sent in the following
  32833. hint which will read the value of a system variable:
  32834. 2.12
  32835. DIM buffer% 255, temp% 255
  32836. 2.12
  32837. SYS öOS_CLIò,öFiler_OpenDir ò + FNread_system_variable(öObey$Dirò)
  32838. 2.12
  32839. END
  32840. 2.12
  32841. :
  32842. 2.12
  32843. DEFFNread_system_variable(v$)
  32844. 2.12
  32845. LOCAL len%,x%
  32846. 2.12
  32847. $buffer%=v$
  32848. 2.12
  32849. SYS öOS_ReadVarValò,buffer%,temp%
  32850. 2.12
  32851. ,255,0,3 TO ,,len%
  32852. 2.12
  32853. v$=öò
  32854. 2.12
  32855. FOR x%=0 TO len%-1
  32856. 2.12
  32857. v$+=CHR$(buffer%?x%)
  32858. 2.12
  32859. NEXT x%
  32860. 2.12
  32861. =v$
  32862. 2.12
  32863. Å   Mode 16, 17 and 24 co-ordinates Ö Under RISC-OS modes 16 and 17 now
  32864. support graphics. This means that a resolution of 1056x256 can now be
  32865. obtained on a normal monitor. However, it should be noted that the
  32866. screen size, in OS co-ordinates, is not 1280x1024 (or even 2048x1024 as
  32867. Richard Averill suggested last month) but 2111x1024. In order to convert
  32868. between the two sizes you should use the following function:
  32869. 2.12
  32870. DEFFNconvert2111to1280(x%)
  32871. 2.12
  32872. =INT(33*(x%+0.5)/20)
  32873. 2.12
  32874. Å   Modifying !Calc to accept keyboard input Ö In order to modify the
  32875. calculator on the Applications Disc 2 to accept keyboard input you must:
  32876. 2.12
  32877. 1) Leave the desktop and type *BASIC.
  32878. 2.12
  32879. 2) Mount Applications Disc 2 in drive 0.
  32880. 2.12
  32881. 3) LOAD ö!Calc.!RunImageò and make the follow-ing modifications:
  32882. 2.12
  32883.    Add the following lines:
  32884. 2.12
  32885. 315 WHEN 8 : PROCwndkeyprssd(!q%,
  32886. 2.12
  32887. q%!24)
  32888. 2.12
  32889. 750 DEFPROCwndkeyprssd(handle%
  32890. 2.12
  32891. ,key%) : IF key%>47 AND key%<5 THEN PROCdigit(CHR$(key%))
  32892. 2.12
  32893. 751 CASE key% OF
  32894. 2.12
  32895. 752 WHEN 42: PROCoperator(ö*ò)
  32896. 2.12
  32897. 753 WHEN 43: PROCoperator(ö+ò)
  32898. 2.12
  32899. 754 WHEN 47: PROCoperator(ö/ò)
  32900. 2.12
  32901. 755 WHEN 46: PROCpoint
  32902. 2.12
  32903. 756 WHEN 45: PROCoperator(ö-ò)
  32904. 2.12
  32905. 757 WHEN 95: PROCoperator(ö-ò)
  32906. 2.12
  32907. 758 WHEN 61: PROCoperator(ö=ò)
  32908. 2.12
  32909. 759 ENDCASE
  32910. 2.12
  32911.    Now renumber the program (just type RENUMBER <return>), and then
  32912. type:
  32913. 2.12
  32914. 855 PROCupdate(calc%,12,-28-32,10
  32915. 2.12
  32916. *16+12,24):PROCcalc:ENDPROC
  32917. 2.12
  32918. 105 q%!60=15<<12
  32919. 2.12
  32920. 4) SAVE ö!Calc.!RunImageò
  32921. 2.12
  32922.    To use text with the modified calculator just click in the calculator
  32923. window (not on an icon) and type away. Note that a caret will not
  32924. appear.
  32925. 2.12
  32926. Å   New CMOS RAM settings for outline fonts Ö When using the outline
  32927. font manager (which is supplied with the Acorn DTP) you can set various
  32928. font cache thresholds. These thresholds govern which mode of caching is
  32929. used i.e. vertical & horizontal subpixeled, cached outlines, anti-
  32930. aliased outlines, non-exact font from x90y45, and Éauto-growæ cache.
  32931. 2.12
  32932. The various thresholds can be set up as follows:
  32933. 2.12
  32934. *Configure FontSize <n>k ; min size of cache
  32935. 2.12
  32936. *Configure FontMax  <n>k ; max size of Éauto-growæ cache
  32937. 2.12
  32938. *Configure FontMax1 <h>  ; max size of non-exact font x90y45
  32939. 2.12
  32940. *Configure FontMax2 <h>  ; max size of anti-aliased outlines
  32941. 2.12
  32942. *Configure FontMax3 <h>  ; max size of cached outlines
  32943. 2.12
  32944. *Configure FontMax4 <w>  ; max size of horizontally-subpixeled font
  32945. 2.12
  32946. *Configure FontMax5 <h>  ; max size of vertically-subpixeled font
  32947. 2.12
  32948. where <h> refers to maximum font pixel height (pixel height = point
  32949. height * dpi / 72), and <w> to the maximum font pixel width.
  32950. 2.12
  32951. Some programs may corrupt the CMOS RAM and soil the font cache
  32952. thresholds. This may dramatically reduce the efficiency of cached fonts.
  32953. Use the *STATUS command to view your currents threshold settings (and
  32954. make a note of them just in case the CMOS RAM gets corrupted).
  32955. 2.12
  32956. Å   New FPE Ö There is a new version of the floating pointer emulator
  32957. provided on the Applications Disc 2. If any of your programs use older
  32958. versions of the FPE, you should update the module. This is because the
  32959. pre 2.60 release versions of the FPE have a bug (a badly formed module
  32960. header) which happens to work under Arthur 1.2.
  32961. 2.12
  32962. Å   New system variable Ö There is a new system variable, called
  32963. Font$Path, which tells the Archimedes where anti-aliased fonts can be
  32964. found. It has the same syntax as Load$Path and Run$Path. This means that
  32965. fonts can be accessed from several different directories e.g. *Set
  32966. Font$Path $.Fonts1, $.Fonts2,$.Fonts3 will allow the fonts manager to
  32967. access anti-aliased fonts from three directories $.Font1, $.Font2 and
  32968. $.Font3. To remain compatible with the earlier versions of the font
  32969. manager you can *Set Font$Path <Font$Prefix>.
  32970. 2.12
  32971. Å   OS_ChangedBox Ö RISC-OS now offers a facility which will keep track
  32972. of the areas on the Éscreenæ which have been altered by calls to the VDU
  32973. drivers. When enabled, this feature will pro-vide a rectangle (co-
  32974. ordinates in pixels from the bottom left-hand corner) of the area on the
  32975. Éscreenæ which has been changed. The parameters are:
  32976. 2.12
  32977. Entry:
  32978. 2.12
  32979. R0 = 0  -> disable changed box calculations
  32980. 2.12
  32981.    = 1  -> enable changed box calculations
  32982. 2.12
  32983.    = 2  -> reset changed box to null rectangle
  32984. 2.12
  32985.    = -1 -> read changed box info
  32986. 2.12
  32987. Exit:
  32988. 2.12
  32989. R0 = old enable state
  32990. 2.12
  32991. R1 points to a fixed block of 5 words
  32992. 2.12
  32993.    [R1, #0]  = disable/enable flag
  32994. 2.12
  32995.    [R1, #4]  = x-coordinate of left edge of box
  32996. 2.12
  32997.    [R1, #8]  = y-coordinate of bottom edge of box
  32998. 2.12
  32999.    [R1, #12] = x-coordinate of right edge of box
  33000. 2.12
  33001.    [R1, #16] = y-coordinate of top edge of box
  33002. 2.12
  33003. An example program:
  33004. 2.12
  33005.  10 REM >Changed
  33006. 2.12
  33007.  20
  33008. 2.12
  33009.  30 REM *************************
  33010. 2.12
  33011.  40 REM *  Using OS_ChangedBox  *
  33012. 2.12
  33013.  50 REM * by Adrian Philip Look *
  33014. 2.12
  33015.  60 REM *   22nd August 1989    *
  33016. 2.12
  33017.  70 REM *************************
  33018. 2.12
  33019.  80
  33020. 2.12
  33021.  90 MODE 12 : OFF
  33022. 2.12
  33023. 100
  33024. 2.12
  33025. 110 PROCenablecalulations
  33026. 2.12
  33027. 120 PROCresetrectangle
  33028. 2.12
  33029. 130
  33030. 2.12
  33031. 140 LINE 400,400,600,600
  33032. 2.12
  33033. 150 PROCreadbox
  33034. 2.12
  33035. 160 RECTANGLE FILL 300,300,10,10
  33036. 2.12
  33037. 170 PROCreadbox
  33038. 2.12
  33039. 180 RECTANGLE FILL 700,700,30,30
  33040. 2.12
  33041. 190 PROCreadbox
  33042. 2.12
  33043. 200 CIRCLE 250,250,200
  33044. 2.12
  33045. 210 PROCreadbox
  33046. 2.12
  33047. 220 RECTANGLE 550,450,500,300
  33048. 2.12
  33049. 230 PROCreadbox
  33050. 2.12
  33051. 240
  33052. 2.12
  33053. 250 PROCdisablecalulations : ON
  33054. 2.12
  33055. 260 PRINT
  33056. 2.12
  33057. 270 END
  33058. 2.12
  33059. 280
  33060. 2.12
  33061. 290 DEFPROCresetrectangle
  33062. 2.12
  33063. 300 SYS öOS_ChangedBoxò,2
  33064. 2.12
  33065. 310 ENDPROC
  33066. 2.12
  33067. 320
  33068. 2.12
  33069. 330 DEFPROCenablecalulations
  33070. 2.12
  33071. 340 SYS öOS_ChangedBoxò,1
  33072. 2.12
  33073. 350 ENDPROC
  33074. 2.12
  33075. 360
  33076. 2.12
  33077. 370 DEFPROCdisablecalulations
  33078. 2.12
  33079. 380 SYS öOS_ChangedBoxò,0
  33080. 2.12
  33081. 390 ENDPROC
  33082. 2.12
  33083. 400
  33084. 2.12
  33085. 410 DEFPROCreadbox
  33086. 2.12
  33087. 420 PROCdisablecalulations
  33088. 2.12
  33089. 430 SYS öOS_ChangedBoxò,-1 TO ,data%
  33090. 2.12
  33091. 440 x0%=data%!4: y0%=data%!8
  33092. 2.12
  33093. 450 x1%=data%!12 : y1%=data%!16
  33094. 2.12
  33095. 460
  33096. 2.12
  33097. 470 PRINTTAB(0,0);öChanged Box
  33098. 2.12
  33099. Rectangle (in pixels not
  33100. 2.12
  33101.  OS coords)ö
  33102. 2.12
  33103. 480 PRINTöleft x:   ò;x0%;ö     ò
  33104. 2.12
  33105. 490 PRINTöbottom y: ò;y0%;ö     ò
  33106. 2.12
  33107. 500 PRINTöright x:  ò;x1%;ö     ò
  33108. 2.12
  33109. 510 PRINTötop y:    ò;y1%;ö     ò
  33110. 2.12
  33111. 520
  33112. 2.12
  33113. 530 PRINTÉöpress any key to step
  33114. 2.12
  33115. through demoö
  33116. 2.12
  33117. 540 QQ=GET
  33118. 2.12
  33119. 550 PROCenablecalulations
  33120. 2.12
  33121. 560 ENDPROC
  33122. 2.12
  33123. Å   ProArtisan & Artisan upgrades to RISC-OS Ö ProArtisan discs need to
  33124. be changed so that they work under RISC-OS. This upgrade avoids the
  33125. dreaded öFilecore in useò error, and is available from Clares Micros if
  33126. you send them a blank D-formatted disc.
  33127. 2.12
  33128. Å   RISC-OS printer drivers and Line Feeds Ö If your printer does not
  33129. automatically generate line feeds when it receives a carriage return you
  33130. can make the RISC printer drivers generate one for you. Once the printer
  33131. drive is installed on you must click on the printer icon with the SELECT
  33132. button. This will reveal a window which contains an option to convert
  33133. single line feeds or carriage returns into a single line feed and
  33134. carriage return i.e. CR or LF => CR,LF.
  33135. 2.12
  33136. If you wish to make this option permanent just select the ÉSave Choicesæ
  33137. option on the printer driver menu.
  33138. 2.12
  33139. Å   RISC-OS will run old WIMP programs (i.e. it emulates the Arthur 1.2
  33140. Window Manager) but because the emulation is not complete there are some
  33141. anomalies with the sprite handling. (a) selected sprites are rendered
  33142. incorrectly (b) sprite are scaled according to the screen mode (this did
  33143. not happen before). In practice, however, this affects very few
  33144. applications.
  33145. 2.12
  33146. Å   The *CDIR command for the ADFS, RAMFS, and NETFS now creates
  33147. unlocked directories. This means that directories can be renamed, moved
  33148. and deleted from the desktop. However, the contents of a directory must
  33149. be deleted before the directory itself can be deleted.
  33150. 2.12
  33151. Å   The Window Manager (RISC-OS) no longer reserves 32k permanent memory
  33152. for window definitions, etc but acquires memory from the RMA as it is
  33153. needed. This means that some Arthur 1.2 wimp programs may fail to start,
  33154. giving a ÉNo room to create windowæ error. This can usually be solved by
  33155. increasing the memory allocated to the RMA (by dragging the RMA bar in
  33156. the Task Manager) before starting the application.
  33157. 2.12
  33158. The following hints and tips were sent in by Paul Witheridge
  33159. 2.12
  33160. Å   Cancelling tasks from the öTask Displayò Ö If you call up the Task
  33161. Display by clicking the mouse menu button on the Task Manager Icon at
  33162. the right-hand end of the icon bar and then selecting Task Display from
  33163. the resulting menu, you will get, among other things, a one line display
  33164. for each active task, showing the name of the task and how much memory
  33165. it uses.
  33166. 2.12
  33167. If you position the pointer on that display line and click menu again,
  33168. you will see a very similar menu, but this time there is a menu item for
  33169. the task in question. This menu item has a sub-menu arrow. If you move
  33170. the pointer onto it, you will be rewarded with a sub-menu with a just a
  33171. single item, öQuitò. Clicking on this will usually, but not always,
  33172. cause the task to terminate.
  33173. 2.12
  33174. From the programmeræs point of view, the next time the task in question
  33175. issues a Wimp_Poll request, it will receive a reason code 18 with a
  33176. subordinate code of 8 in the fifth word of the parameter block. It
  33177. should interpret this as a directive to terminate.
  33178. 2.12
  33179. Å   Command files from within an Obey file Ö One of the main differences
  33180. between Command files and Obey files is that input from a Command file
  33181. can be passed to the OS Command Line Interpreter or to an application,
  33182. while input from an Obey file is only passed to the Command Line
  33183. Interpreter. This means that when an application program is started up
  33184. by a RUN command in an Obey file, the following line of the Obey file
  33185. will always be treated as a command and never as input to the appli
  33186. cation program. For example if the following is an Obey file:
  33187. 2.12
  33188. Dir ADFS:$.BasPgms
  33189. 2.12
  33190. BASIC
  33191. 2.12
  33192. Dir ADFS:$
  33193. 2.12
  33194. Then the second DIR command will be executed after quitting from BASIC.
  33195. If, instead, the file is a Command file, then as soon as BASIC starts up
  33196. it will read the öDir ADFS:$ò as input (and since it does not begin with
  33197. an asterisk, it will not understand it and treat it as a mistake).
  33198. 2.12
  33199. You can use a combination of Obey and Command files to start up an
  33200. application program and provide it with an initial set of input data.
  33201. This can be very useful, but to be successful, you must know a little
  33202. more about what happens when a Command file is executed from within an
  33203. Obey file. Consider the following example:
  33204. 2.12
  33205. | > ObeyFile
  33206. 2.12
  33207. Echo Output 1 from ObeyFile
  33208. 2.12
  33209. Exec CmndFile
  33210. 2.12
  33211. Echo Output 2 from ObeyFile
  33212. 2.12
  33213. | > CmndFile
  33214. 2.12
  33215. Echo Output from CmndFile
  33216. 2.12
  33217. When the Obey file is run, the following output is produced:
  33218. 2.12
  33219. Output 1 from ObeyFile
  33220. 2.12
  33221. Output 2 from ObeyFile
  33222. 2.12
  33223. * | > CmndFile
  33224. 2.12
  33225. * Echo Output from CmndFile
  33226. 2.12
  33227. Output from CmndFile
  33228. 2.12
  33229. From this output, you can see that despite the fact that the öExec
  33230. CmndFileò command came between the two öEchoò commands in the Obey file,
  33231. the contents of the Command file were not actually executed until the
  33232. Obey file was finished with. The Command Line Interpreter obviously
  33233. gives precedence to Obey files over Command files. All that the EXEC
  33234. command did was to open the Command file for input and assign the system
  33235. input stream to it. It did not actually read anything from it. This was
  33236. left to the Command Line Interpreter, but it did not resume reading from
  33237. the system input stream until it had exhausted the Obey file.
  33238. 2.12
  33239. Since application programs can take input from a Command file, but not
  33240. from an Obey file, an EXEC command can be used within an Obey file to
  33241. östackò input ready for an application program. The following example of
  33242. an Obey file and a Command file can be used to create a RISC-OS
  33243. application for the Basic Editor:
  33244. 2.12
  33245. | > !BasicEdit.!Run
  33246. 2.12
  33247. If ö<System$Path>ò = öò then Error 0 System resources cannot be found
  33248. RMensure ARMBasicEditor 1.00 RMload System:Modules.BasicEdit
  33249. 2.12
  33250. Key 2 EDIT .|M
  33251. 2.12
  33252. Key 4 *QUIT|M
  33253. 2.12
  33254. Wimpslot -min 100k
  33255. 2.12
  33256. Exec <Obey$Dir>.!Init
  33257. 2.12
  33258. Basic -load %*0
  33259. 2.12
  33260. *| > !BasicEdit.!Init
  33261. 2.12
  33262. EDIT
  33263. 2.12
  33264. Both files should reside in a application directory called ö!BasicEditò.
  33265. An accompanying ö!spritesò file would be nice, but is not essential
  33266. since in its absence, RISC-OS will use the default sprite for an
  33267. application.
  33268. 2.12
  33269. The öExec <Obey$Dir>.!Initò command in the Obey file opens the Command
  33270. file and when the following öBasic -load %*0ò command executes, BASIC
  33271. reads the contents of the Command file as if it were being entered from
  33272. the keyboard.
  33273. 2.12
  33274. If you double-click on the icon for ö!BasicEditò in a directory viewer,
  33275. the Basic Editor is started up ready to create a new program. If you
  33276. install ö!BasicEditò on the icon bar using TinyDirs, you can drag the
  33277. icon for a BASIC program from a directory viewer to the ö!BasicEditò
  33278. icon on the icon bar, which will start up the Basic Editor and load the
  33279. program into it ready to edit.
  33280. 2.12
  33281. The following example consists of an Obey file and a Command file to
  33282. start up Twin as an application and to change the default colours used
  33283. by twin from white on black to blue on cyan. The contents of the Obey
  33284. file, which is the !Run file in the !Twin application directory, are:
  33285. 2.12
  33286. | > !Twin.!Run
  33287. 2.12
  33288. WimpSlot -min 100k
  33289. 2.12
  33290. Load ADFS:%%.Twin 8000
  33291. 2.12
  33292. Exec <Obey$Dir>.!Init
  33293. 2.12
  33294. Go 8000 ; %*0
  33295. 2.12
  33296. and the contents of the Command file, which is named ö!Initò and also
  33297. resides in the !Twin directory, are (in the notation used for *BUILD
  33298. etc):
  33299. 2.12
  33300. |!|A|S|@|F|@|@|@|S|A|D|@|@|@
  33301. 2.12
  33302. The Obey file assumes that Twin resides in the current ADFS library,
  33303. refering to it as öADFS:%%ò. öADFSò must be specified in case the ADFS
  33304. is not the current filing system and ö%%ò will be replaced by a single
  33305. percentage sign by the argument substitution process for Obey files.
  33306. Twin is loaded at &8000 because in a RISC-OS multi-tasking environment,
  33307. the amount of storage available to start up TWIN is often not enough to
  33308. load it at its önormalò load address of &80000 (leading to the dreaded
  33309. error message: öNo writeable memory at this addressò). Note that loading
  33310. Twin at &8000 leaves no memory for starting up applications from within
  33311. Twin. Such applications would normally run at &8000 and utilise the
  33312. memory between &8000 and Twinæs normal load address at &80000).
  33313. 2.12
  33314. The Command file seems to consist of unintelligible hieroglyphics. The
  33315. first character (shown as ö|!|Aò) is actually &81 and has the same
  33316. effect on Twin as pressing function key one. The remaining eight
  33317. characters (shown as ö|S|@|F|@|@|@|S|A|D|@|@|@ò) are equivalent to:
  33318. 2.12
  33319.    ctrl-S ctrl-@ ctrl-F ctrl-@ ctrl-@ ctrl-@
  33320. 2.12
  33321.    ctrl-S ctrl-A ctrl-D ctrl-@ ctrl-@ ctrl-@
  33322. 2.12
  33323. which will have the same effect when read by Twin as the BASIC
  33324. statements:
  33325. 2.12
  33326.    VDU 19,0,5,0,0,0
  33327. 2.12
  33328.    VDU 19,1,4,0,0,0
  33329. 2.12
  33330. mapping logical colour zero to physical colour five (cyan) and logical
  33331. colour one to physical colour four (blue).
  33332. 2.12
  33333. As in the case of !BasicEdit, double clicking on the !Twin icon in a
  33334. directory viewer will start up Twin without any file loaded, while
  33335. installing !Twin on the icon bar via TinyDirs will allow dragging file
  33336. icons to the !Twin icon on the icon bar, starting up Twin and loading
  33337. the file.
  33338. 2.12
  33339. Å   Error signalling from within a machine code subroutine called from
  33340. BASIC ÖUnder BASIC V version 1.04, it is simple to signal an error
  33341. condition from a machine code subroutine by setting the over-flow flag
  33342. and loading register zero with a pointer to an error block before
  33343. returning to BASIC.
  33344. 2.12
  33345. Consider these two, almost identical examples:
  33346. 2.12
  33347. The first assembles and calls a machine code subroutine that points
  33348. register zero to an error block (see line 70) and then returns to BASIC
  33349. with the overflow flag cleared (see line 80). This program terminates
  33350. normally without an error:
  33351. 2.12
  33352.  10 REM > Example1
  33353. 2.12
  33354.  20
  33355. 2.12
  33356.  30 DIM code% 100
  33357. 2.12
  33358.  40 FOR pass% = 0 TO 3 STEP 3
  33359. 2.12
  33360.  50 P%=code%
  33361. 2.12
  33362.  60 [OPT pass%
  33363. 2.12
  33364.  70 ADR R0,errblk
  33365. 2.12
  33366.  80 BICS PC,R14,#&10000000
  33367. 2.12
  33368.  90 .errblk EQUD 99
  33369. 2.12
  33370. 100 EQUS öI am an error messageò
  33371. 2.12
  33372. 110 EQUB 0
  33373. 2.12
  33374. 120 ]:NEXT
  33375. 2.12
  33376. 130 ON ERROR PROCerror
  33377. 2.12
  33378. 140 CALL code%
  33379. 2.12
  33380. 150 END
  33381. 2.12
  33382. 160 :
  33383. 2.12
  33384. 170 DEF PROCerror
  33385. 2.12
  33386. 180 PRINT öNmbr=ò; ERR
  33387. 2.12
  33388. 190 PRINT öText=ò; REPORT$
  33389. 2.12
  33390. 200 PRINT öLine=ò; ERL
  33391. 2.12
  33392. 210 END
  33393. 2.12
  33394. 220 ENDPROC
  33395. 2.12
  33396. The second example is exactly the same except that it sets the overflow
  33397. flag (see line 80) before returning to BASIC:
  33398. 2.12
  33399.  10 REM > Example2
  33400. 2.12
  33401.  20
  33402. 2.12
  33403.  30 DIM code% 100
  33404. 2.12
  33405.  40 FOR pass% = 0 TO 3 STEP 3
  33406. 2.12
  33407.  50 P%=code%
  33408. 2.12
  33409.  60 [OPT pass%
  33410. 2.12
  33411.  70 ADR R0,errblk
  33412. 2.12
  33413.  80 ORRS PC,R14,#&10000000
  33414. 2.12
  33415.  90 .errblk EQUD 99
  33416. 2.12
  33417. 100 EQUS öI am an error messageò
  33418. 2.12
  33419. 110 EQUB 0
  33420. 2.12
  33421. 120 ]:NEXT
  33422. 2.12
  33423. 130 ON ERROR PROCerror
  33424. 2.12
  33425. 140 CALL code%
  33426. 2.12
  33427. 150 END
  33428. 2.12
  33429. 160 :
  33430. 2.12
  33431. 170 DEF PROCerror
  33432. 2.12
  33433. 180 PRINT öNmbr=ò; ERR
  33434. 2.12
  33435. 190 PRINT öText=ò; REPORT$
  33436. 2.12
  33437. 200 PRINT öLine=ò; ERL
  33438. 2.12
  33439. 210 END
  33440. 2.12
  33441. 220 ENDPROC
  33442. 2.12
  33443. In this second case, an error occurs, which is trapped by the ON ERROR
  33444. statement (see line 130) and results in the following lines being
  33445. printed by PROCerror:
  33446. 2.12
  33447. Nmbr=99
  33448. 2.12
  33449. Text=I am an error message
  33450. 2.12
  33451. Line=140
  33452. 2.12
  33453. This use of the overflow flag can result in unexpected behaviour from
  33454. some programs. For example, if the last SWI call in a machine code
  33455. subroutine returns with the overflow flag set, indicating an error
  33456. occurred during the execution of the SWI, and this flag is not reset
  33457. before the subroutine returns to BASIC, then BASIC will take this as an
  33458. error condition. Exactly what happens depends on the contents of
  33459. register zero. If it points to a valid error block, then BASICæs error
  33460. trapping mechanism will function properly. Otherwise unpredictable
  33461. errors (such as an address exception) will happen.
  33462. 2.12
  33463. Å   New SWI calls in RISC-OS Ö The following program can be used to list
  33464. all the SWI calls available in OS. It basically works by calling the
  33465. öOS_SWINumberToStringò SWI for all possible SWI numbers and displaying
  33466. the returned string. To speed things up it checks to see if the first
  33467. SWI in a each chunk of 64 is valid. If not, it ignores the rest of the
  33468. chunk. öValidò in this case means that the SWI name is neither
  33469. öOS_Undefinedò nor öUserò. SWI names beginning with öXò are also ignored
  33470. as duplicates.
  33471. 2.12
  33472.  10 REM > SWIlist
  33473. 2.12
  33474.  20 :
  33475. 2.12
  33476.  30 buflen%=100
  33477. 2.12
  33478.  40 DIM buffer% buflen%
  33479. 2.12
  33480.  50 :
  33481. 2.12
  33482.  60 SYS öOS_SWINumberFromStringò,,
  33483. 2.12
  33484. öXOS_SWINumberToStringò TO S%
  33485. 2.12
  33486.  70 :
  33487. 2.12
  33488.  80 VDU 14
  33489. 2.12
  33490.  90 :
  33491. 2.12
  33492. 100 FOR chunk% = 0 TO &80000 STEP 64
  33493. 2.12
  33494. 110 SYS S%,chunk%,buffer%,buflen%
  33495. 2.12
  33496.  TO ,swi$;V%
  33497. 2.12
  33498. 120 IF V%AND1 ELSE IF LEFT$(swi$,1)
  33499. 2.12
  33500. =öXò ELSE IF swi$ =öUserò ELSE IF swi$<>öOS_Undefinedò PROCchunk
  33501. 2.12
  33502. 130 NEXT
  33503. 2.12
  33504. 140 :
  33505. 2.12
  33506. 150 VDU15
  33507. 2.12
  33508. 160 :
  33509. 2.12
  33510. 170 END
  33511. 2.12
  33512. 180
  33513. 2.12
  33514. 190 DEFPROCchunk
  33515. 2.12
  33516. 200 FOR swi% = chunk% TO chunk%+63
  33517. 2.12
  33518. 210 SYS S%,swi%,buffer%,buflen% TO
  33519. 2.12
  33520.  ,swi$;V%
  33521. 2.12
  33522. 220 IF V%AND1 ELSE IF LEFT$(swi$,1)
  33523. 2.12
  33524. =öXò ELSE IF swi$=öUserò ELSE IF swi$<>öOS_Undefinedò PRINT öSWI number
  33525. ò;RIGHT$(ö0000ò+
  33526. 2.12
  33527. STR$~swi%,5);ö is ò;swi$
  33528. 2.12
  33529. 230 NEXT
  33530. 2.12
  33531. 240 ENDPROC
  33532. 2.12
  33533. If this program is run, a list of SWIs is generated. Those for the
  33534. FPemulator and ColourTrans will only be listed if the relevant Relocat
  33535. able Module is loaded when SWIlist is run. Those for RamFS will only be
  33536. listed if the RAM disc is configured.
  33537. 2.12
  33538. The program was also run against Arthur 1.2 and by comparing the two
  33539. listings, it was possible to identify those SWIs which appeared in the
  33540. RISC-OS listing but not in that for Arthur. These are presumably new
  33541. SWIs and are listed below.
  33542. 2.12
  33543. 00049   OS_ReadArgs
  33544. 2.12
  33545. 0004A   OS_ReadRAMFsLimits
  33546. 2.12
  33547. 0004B   OS_ClaimDeviceVector
  33548. 2.12
  33549. 0004C   OS_ReleaseDeviceVector
  33550. 2.12
  33551. 0004D   OS_DelinkApplication
  33552. 2.12
  33553. 0004E   OS_RelinkApplication
  33554. 2.12
  33555. 0004F   OS_HeapSort
  33556. 2.12
  33557. 00050   OS_ExitAndDie
  33558. 2.12
  33559. 00051   OS_ReadMemMapInfo
  33560. 2.12
  33561. 00052   OS_ReadMemMapEntries
  33562. 2.12
  33563. 00053   OS_SetMemMapEntries
  33564. 2.12
  33565. 00054   OS_AddCallBack
  33566. 2.12
  33567. 00055   OS_ReadDefaultHandler
  33568. 2.12
  33569. 00056   OS_SetECFOrigin
  33570. 2.12
  33571. 00057   OS_SerialOp
  33572. 2.12
  33573. 00058   OS_ReadSysInfo
  33574. 2.12
  33575. 00059   OS_Confirm
  33576. 2.12
  33577. 0005A   OS_ChangedBox
  33578. 2.12
  33579. 0005B   OS_CRC
  33580. 2.12
  33581. 0005C   OS_ReadDynamicArea
  33582. 2.12
  33583. 0005D   OS_PrintChar
  33584. 2.12
  33585. 000EB   OS_ConvertFixedFileSize
  33586. 2.12
  33587. 000EC   OS_ConvertFileSize
  33588. 2.12
  33589. 00240   IIC_Control
  33590. 2.12
  33591. 40098   Font_ReadColourTable
  33592. 2.12
  33593. 400DE   Wimp_StartTask
  33594. 2.12
  33595. 400DF   Wimp_ReportError
  33596. 2.12
  33597. 400E0   Wimp_GetWindowOutline
  33598. 2.12
  33599. 400E1   Wimp_PollIdle
  33600. 2.12
  33601. 400E2   Wimp_PlotIcon
  33602. 2.12
  33603. 400E3   Wimp_SetMode
  33604. 2.12
  33605. 400E4   Wimp_SetPalette
  33606. 2.12
  33607. 400E5   Wimp_ReadPalette
  33608. 2.12
  33609. 400E6   Wimp_SetColour
  33610. 2.12
  33611. 400E7   Wimp_SendMessage
  33612. 2.12
  33613. 400E8   Wimp_CreateSubMenu
  33614. 2.12
  33615. 400E9   Wimp_SpriteOp
  33616. 2.12
  33617. 400EA   Wimp_BaseOfSprites
  33618. 2.12
  33619. 400EB   Wimp_BlockCopy
  33620. 2.12
  33621. 400EC   Wimp_SlotSize
  33622. 2.12
  33623. 400ED   Wimp_ReadPixTrans
  33624. 2.12
  33625. 400EE   Wimp_ClaimFreeMemory
  33626. 2.12
  33627. 400EF   Wimp_CommandWindow
  33628. 2.12
  33629. 400F0   Wimp_TextColour
  33630. 2.12
  33631. 400F1   Wimp_TransferBlock
  33632. 2.12
  33633. 400F2   Wimp_ReadSysInfo
  33634. 2.12
  33635. 400F3   Wimp_SetFontColours
  33636. 2.12
  33637. 401C7   Sound_QInterface
  33638. 2.12
  33639. 40244   ADFS_Retries
  33640. 2.12
  33641. 40245   ADFS_DescribeDisc
  33642. 2.12
  33643. 40289   Podule_HardwareAddress
  33644. 2.12
  33645. 40540   FileCore_DiscOp
  33646. 2.12
  33647. 40541   FileCore_Create
  33648. 2.12
  33649. 40542   FileCore_Drives
  33650. 2.12
  33651. 40543   FileCore_FreeSpace
  33652. 2.12
  33653. 40544   FileCore_FloppyStructure
  33654. 2.12
  33655. 40545   FileCore_DescribeDisc
  33656. 2.12
  33657. 405C0   Shell_Create
  33658. 2.12
  33659. 405C1   Shell_Destroy
  33660. 2.12
  33661. 406C0   Hourglass_On
  33662. 2.12
  33663. 406C1   Hourglass_Off
  33664. 2.12
  33665. 406C2   Hourglass_Smash
  33666. 2.12
  33667. 406C3   Hourglass_Start
  33668. 2.12
  33669. 406C4   Hourglass_Percentage
  33670. 2.12
  33671. 406C5   Hourglass_LEDs
  33672. 2.12
  33673. 40700   Draw_ProcessPath
  33674. 2.12
  33675. 40701   Draw_ProcessPathFP
  33676. 2.12
  33677. 40702   Draw_Fill
  33678. 2.12
  33679. 40703   Draw_FillFP
  33680. 2.12
  33681. 40704   Draw_Stroke
  33682. 2.12
  33683. 40705   Draw_StrokeFP
  33684. 2.12
  33685. 40706   Draw_StrokePath
  33686. 2.12
  33687. 40707   Draw_StrokePathFP
  33688. 2.12
  33689. 40708   Draw_FlattenPath
  33690. 2.12
  33691. 40709   Draw_FlattenPathFP
  33692. 2.12
  33693. 4070A   Draw_TransformPath
  33694. 2.12
  33695. 4070B   Draw_TransformPathFP
  33696. 2.12
  33697. 40780   RamFS_DiscOp
  33698. 2.12
  33699. 40781   RamFS_NOP
  33700. 2.12
  33701. 40782   RamFS_Drives
  33702. 2.12
  33703. 40783   RamFS_FreeSpace
  33704. 2.12
  33705. 40784   RamFS_NOP
  33706. 2.12
  33707. 40785   RamFS_DescribeDisc
  33708. 2.12
  33709. 40740   ColourTrans_SelectTable
  33710. 2.12
  33711. 40741   ColourTrans_SelectGCOLTable
  33712. 2.12
  33713. 40742   ColourTrans_ReturnGCOL
  33714. 2.12
  33715. 40743   ColourTrans_SetGCOL
  33716. 2.12
  33717. 40744   ColourTrans_ReturnColourNumber
  33718. 2.12
  33719. 40745   ColourTrans_ReturnGCOLForMode
  33720. 2.12
  33721. 40746   ColourTrans_ReturnColourNumber
  33722. 2.12
  33723. ForMode
  33724. 2.12
  33725. 40747   ColourTrans_ReturnOppGCOL
  33726. 2.12
  33727. 40748   ColourTrans_SetOppGCOL
  33728. 2.12
  33729. 40749   ColourTrans_ReturnOppColour
  33730. 2.12
  33731. Number
  33732. 2.12
  33733. 4074A   ColourTrans_ReturnOppGCOLFor
  33734. 2.12
  33735. Mode
  33736. 2.12
  33737. 4074B   ColourTrans_ReturnOppColour
  33738. 2.12
  33739. NumberForMode
  33740. 2.12
  33741. 4074C   ColourTrans_GCOLToColourNumber
  33742. 2.12
  33743. 4074D   ColourTrans_ColourNumberToGCOL
  33744. 2.12
  33745. 4074E   ColourTrans_ReturnFontColours
  33746. 2.12
  33747. 4074F   ColourTrans_SetFontColours
  33748. 2.12
  33749. 40750   ColourTrans_InvalidateCache
  33750. 2.12
  33751. Å   Starting up TinyDirs automatically via the Desktop initialisation
  33752. file Ö Archive 2.10  p 15, refers to the facility whereby the Desktop
  33753. can be caused to run a file of initialisation commands at start-up time.
  33754. One command that can be included in this file is a command to start up
  33755. TinyDirs and automatically install high-use directories or applications
  33756. on the icon bar.
  33757. 2.12
  33758. TinyDirs accepts multiple arguments on the command, separated by blanks.
  33759. So, if you created two application directories for, say, the Basic
  33760. Editor and Twin, you could include the following command in the Desktop
  33761. startup file (assuming that the name of the disc where !TinyDirs,
  33762. !BasicEdit and !Twin all reside is öSysDiscò):
  33763. 2.12
  33764. Run ADFS::SysDisc.$.!TinyDirs ADFS::SysDisc.$.!BasicEdit
  33765. ADFS::SysDisc.$.!Twin
  33766. 2.12
  33767. Although two icons will be installed on the icon bar, only one copy of
  33768. the TinyDirs application is started up. If two separate commands had
  33769. been used:
  33770. 2.12
  33771. Run ADFS::SysDisc.$.!TinyDirs ADFS::SysDisc.$.!BasicEdit
  33772. 2.12
  33773. Run ADFS::SysDisc.$.!TinyDirs ADFS::SysDisc.$.!Twin
  33774. 2.12
  33775. then, although the icon bar would look exactly the same, with the same
  33776. two icons installed, two copies of TinyDirs would have been started up,
  33777. using twice the memory.
  33778. 2.12
  33779. It also seems safe to reduce the memory required by TinyDirs from 32k to
  33780. 24k by altering the WimpSlot command in the !Run file for TinyDirs to
  33781. 2.12
  33782. WimpSlot -min 24k -max 24k
  33783. 2.12
  33784.  
  33785.  
  33786. Å   Limited ADFS memory (RISC-OS/Arthur 1.2) Ö One reader has written in
  33787. saying that his Archimedes will only *MOUNT six discs. On the seventh,
  33788. the drive spins continuously until the disc is removed. This happens
  33789. because the ADFS only has a limited amount of memory to store the
  33790. directory information. The amount of memory allocated for this can
  33791. controlled by using *Configure ADFSDirCache.
  33792. ==> Help on keyword ADFSDirCache
  33793. *Configure ADFSDirCache sets the size of the directory cache (in Kbytes)
  33794. used by the ADFS. A value of 0 selects a default value which depends on
  33795. RAM size.
  33796. Syntax: *Configure ADFSDirCache <size>[K]
  33797. You can also make the Archimedes forget that it has seen the disc by
  33798. using *DISMOUNT.
  33799. 2.11
  33800. ==> Help on keyword Dismount
  33801. 2.11
  33802. *Dismount closes files, unsets directories and parks the given disc.
  33803. 2.11
  33804. Syntax: *Dismount [<disc spec.>]
  33805. 2.11
  33806. Å   Three floppies for Arthur 1.2 desktop Ö In Archive 2.8, pages 11/12,
  33807. there is a hint which allows you to access three drives from the
  33808. desktop. However, the hint states that you must start the desktop up by
  33809. typing */Desktop instead of *Desktop. One reader says that you could of
  33810. course set up *Set Alias$Desktop Run Desktop which would then allow you
  33811. to start up using *Desktop.
  33812. 2.11
  33813. Å   In First Word Plus, when printing after opening more than one file,
  33814. the first file you opened will be offered for printing, not the last one
  33815. you closed!
  33816. 2.11
  33817. Å   Configuring your printer under the PC Emulator Ö In reply to Chris
  33818. Walkeræs question, you must use the following reserved words when
  33819. configuring your printer:
  33820. 2.11
  33821. For serial printers use: AUX or COM1, COM2, COM3╔
  33822. 2.11
  33823. For parallel printers use: PRN or LPT1, LPT2╔
  33824. 2.11
  33825. Å   Sprite Plot comments from Martin Simmons Ö The article on sprite
  33826. plotting was interesting since it is always good to see how other
  33827. programmers solve problems. However, the routines are far from being the
  33828. fastest possible, a major inefficiency being that the screen pointer is
  33829. updated after every pixel is plotted. This could be rectified by
  33830. deleting 2410, 2460, 2510, 2580 and changing the following:
  33831. 2.11
  33832. 2010 PROCplot_4_pixels(4*
  33833. 2.11
  33834. (gjenta-1))
  33835. 2.11
  33836. 2050 ADD screen_pointerR,
  33837. 2.11
  33838. screen_pointerR,#320
  33839. 2.11
  33840. 2110 DEF PROCplot_4_pixels(index)
  33841. 2.11
  33842. 2400 STRNEB data5R,
  33843. 2.11
  33844. [screen_pointerR,#index+0]
  33845. 2.11
  33846. 2450 STRNEB data5R,
  33847. 2.11
  33848. [screen_pointerR,#index+1]
  33849. 2.11
  33850. 2500 STRNEB data5R,
  33851. 2.11
  33852. [screen_pointerR,#index+2]
  33853. 2.11
  33854. 2570 STRNEB data5R,
  33855. 2.11
  33856. [screen_pointerR,#index+3]
  33857. 2.11
  33858. Now the pointer is only changed at the end of each line. This improves
  33859. performance over the published routine by about 10% for a 24x24 pixel
  33860. sprite with no black pixels.
  33861. 2.11
  33862. It would be quicker to use word stores instead of byte stores but this
  33863. would complicate the routine and may even slow it down overall.
  33864. 2.11
  33865. Å   D.I.Y. A3000 serial interface Ö Mike Harrison (Archive 2.10 p 56)
  33866. didnæt know what the chip numbers were for the A3000 serial interface
  33867. kit. You need a 6551 (which ought to be one of the ones manufactured by
  33868. CMD) and an LT1133.
  33869. 2.11
  33870. Å   Evaluation of Algebraic Expressions (E.D. Engelhardt) Ö Anyone who
  33871. is interested in the evaluation of valid algebraic expressions could try
  33872. to use PROCexpression in program Evalexpr as given below. The procedure
  33873. mentioned has been written using suggestions of Mr de Heus, ECD, Delft,
  33874. Holland.
  33875. 2.11
  33876. Variable names in an expression are single, lower-case characters
  33877. ranging from Éaæ to Ézæ. These names are stored in Évar$æ. Each
  33878. character in the input expression Éex$æ is matched with its presence in
  33879. Évar$æ. If so, its position in Évar$æ is detected and it is replaced by
  33880. the (arbitrary) character É$æ. The position is used to assign an
  33881. appropriate value to the actual variable by means of array Évar()æ. The
  33882. value of the expression is obtained using the EVAL function.
  33883. 2.11
  33884. The reason EVAL(ex$) is preceded by EVAL (öFALSEò) in PROCevalexpression
  33885. is as follows: If one enters an expression containing no variables but
  33886. numbers only, and the expression cannot be evaluated (e.g. LN0 or 3/0)
  33887. an error message appears on the screen. Thereafter, entering the same
  33888. type of expression, again not containing variables (e.g. LN9 after LN0
  33889. or 6/5 after 3/0), results in the same error message. To prevent this
  33890. from happening the instruction EVAL(ö<>ò) is included. I discovered this
  33891. Éfeatureæ by accident and found the solution by trial and error. I would
  33892. appreciate any comments from interested readers.
  33893. 2.11
  33894.  10 REM >Evalexpr
  33895. 2.11
  33896.  20 :
  33897. 2.11
  33898.  30 WHILE TRUE
  33899. 2.11
  33900.  40   PROCevalexpression
  33901. 2.11
  33902.  50 ENDWHILE
  33903. 2.11
  33904.  60 END
  33905. 2.11
  33906.  70 :
  33907. 2.11
  33908.  80:
  33909. 2.11
  33910.  90 DEFPROCevalexpression
  33911. 2.11
  33912. 100 k$=ö Press any key to continue !ò
  33913. 2.11
  33914. 110 LOCAL ERROR
  33915. 2.11
  33916. 120 ON ERROR LOCAL IF ERR=17 THEN
  33917. 2.11
  33918.  PRINTÉæö *** Escaped program !òÉ
  33919. 2.11
  33920. :END ELSE PRINTÉö ò;REPORT$æÉk$;:
  33921. 2.11
  33922. dummy=GET:ENDPROC
  33923. 2.11
  33924. 130 :
  33925. 2.11
  33926. 140 PROCinput
  33927. 2.11
  33928. 150 :
  33929. 2.11
  33930. 160 PROCexpression
  33931. 2.11
  33932. 170 exval=EVAL(öFALSEò)  :REM
  33933. 2.11
  33934. *** To prevent error message
  33935. 2.11
  33936.  after evaluation of a wrong
  33937. 2.11
  33938.  expression, e.g. LN0. Try to                                   REM this
  33939. line !
  33940. 2.11
  33941. 180 exval=EVAL(ex$)
  33942. 2.11
  33943. 190 :
  33944. 2.11
  33945. 200 PROCoutput
  33946. 2.11
  33947. 210 ENDPROC
  33948. 2.11
  33949. 220 :
  33950. 2.11
  33951. 230 DEFPROCinput
  33952. 2.11
  33953. 240 CLS:PRINTÉö Choice of variables
  33954. 2.11
  33955.  from a to z.öÉ
  33956. 2.11
  33957. 250 LINE INPUTö Give expression : ò
  33958. 2.11
  33959. ex$
  33960. 2.11
  33961. 260 ENDPROC
  33962. 2.11
  33963. 270 :
  33964. 2.11
  33965. 280 DEFPROCoutput
  33966. 2.11
  33967. 290 PRINTÉö Function value of ò;ex$
  33968. 2.11
  33969. ;ö = ò;exval
  33970. 2.11
  33971. 300 PRINTæk$;:dummy=GET
  33972. 2.11
  33973. 310 ENDPROC
  33974. 2.11
  33975. 320 :
  33976. 2.11
  33977. 330 DEFPROCexpression
  33978. 2.11
  33979. 340 LOCAL var$,var(),t%,i%
  33980. 2.11
  33981. 350 var$=öabcdefghijklmnopqrstuvw
  33982. 2.11
  33983. xyzö
  33984. 2.11
  33985. 360 DIM var(LEN(var$))
  33986. 2.11
  33987. 370 :
  33988. 2.11
  33989. 380 FOR t%=1 TO LEN(ex$)
  33990. 2.11
  33991. 390   i%=INSTR(var$,MID$(ex$,t%,1))
  33992. 2.11
  33993. 400   IF i%>0 THEN
  33994. 2.11
  33995. 410     var$=LEFT$(var$,i%-1)+ö$ò
  33996. 2.11
  33997. +MID$(var$,i%+1)
  33998. 2.11
  33999. 420     PRINTÉö Value of  ò;
  34000. 2.11
  34001. MID$(ex$,t%,1);ö     : ò;
  34002. 2.11
  34003. 430     INPUTöòvar(i%)
  34004. 2.11
  34005. 440     :
  34006. 2.11
  34007. 450     CASE i% OF
  34008. 2.11
  34009. 460       WHEN  1:a=var(i%)
  34010. 2.11
  34011. 470       WHEN  2:b=var(i%)
  34012. 2.11
  34013. 480       WHEN  3:c=var(i%)
  34014. 2.11
  34015. 490       WHEN  4:d=var(i%)
  34016. 2.11
  34017. 500       WHEN  5:e=var(i%)
  34018. 2.11
  34019. 510       WHEN  6:f=var(i%)
  34020. 2.11
  34021. 520       WHEN  7:g=var(i%)
  34022. 2.11
  34023. 530       WHEN  8:h=var(i%)
  34024. 2.11
  34025. 540       WHEN  9:i=var(i%)
  34026. 2.11
  34027. 550       WHEN 10:j=var(i%)
  34028. 2.11
  34029. 560       WHEN 11:k=var(i%)
  34030. 2.11
  34031. 570       WHEN 12:l=var(i%)
  34032. 2.11
  34033. 580       WHEN 13:m=var(i%)
  34034. 2.11
  34035. 590       WHEN 14:n=var(i%)
  34036. 2.11
  34037. 600       WHEN 15:o=var(i%)
  34038. 2.11
  34039. 610       WHEN 16:p=var(i%)
  34040. 2.11
  34041. 620       WHEN 17:q=var(i%)
  34042. 2.11
  34043. 630       WHEN 18:r=var(i%)
  34044. 2.11
  34045. 640       WHEN 19:s=var(i%)
  34046. 2.11
  34047. 650       WHEN 20:t=var(i%)
  34048. 2.11
  34049. 660       WHEN 21:u=var(i%)
  34050. 2.11
  34051. 670       WHEN 22:v=var(i%)
  34052. 2.11
  34053. 680       WHEN 23:w=var(i%)
  34054. 2.11
  34055. 690       WHEN 24:x=var(i%)
  34056. 2.11
  34057. 700       WHEN 25:y=var(i%)
  34058. 2.11
  34059. 710       WHEN 26:z=var(i%)
  34060. 2.11
  34061. 720     ENDCASE
  34062. 2.11
  34063. 730   ENDIF
  34064. 2.11
  34065. 740 NEXT
  34066. 2.11
  34067. 750 :
  34068. 2.11
  34069. 760 ENDPROC
  34070. 2.11
  34071.  
  34072. 2.11
  34073. Å   First Word Plus Ö I am sure that all users of First Word Plus have
  34074. found it considerably enhanced by the use of Steve Hoareæs Interrupt
  34075. Module (available on Shareware N╝6). The main use for this is in
  34076. mounting new discs, formatting and creating directories. I have recently
  34077. discovered that it can also be used for *EXECing files into the word
  34078. processor. This can be very useful because First Word Plus treats the
  34079. standard ASCII space character as a Éhardæ space. This means that if
  34080. straight ASCII text is read into First Word Plus in the regular way it
  34081. can not be formatted because each line is treated as an entire word. By
  34082. using the interrupt module and *EXECing the file it is as if it were
  34083. being typed in from the keyboard. Spaces between words are thus
  34084. translated into Ésoftæ spaces so that the resulting document can be
  34085. formatted in the usual way. Brian Cowan
  34086. 2.11
  34087. Å   Greek characters Ö (Gerald Fitton) For some time now I have been
  34088. considering converting all my old Wordwise files to PipeDream files.
  34089. The thing that has been putting me off is that, since I teach (amongst
  34090. other things) maths and statistics, I need to be able to print Greek
  34091. letters such as CDSYabc defghijklmnopqrstuvwxy. It is relatively easy
  34092. from Wordwise to define a new character on the Epson FX printer, but not
  34093. so easy to include it in PipeDreamæs Printer On string.  I have got
  34094. round this by running a BASIC program from within PipeDreamæs !Run file
  34095. that sends the necessary codes for the Greek characters to the printer.
  34096. You can then have What-You-See-Is-What-You-Get Greek characters on
  34097. screen by using the sequence <Alt>+E+C.  This is what you do:
  34098. 2.11
  34099. Modify the !Run file to include the command
  34100. 2.11
  34101. BASIC -quit ö<PipeDream$Dir>.
  34102. 2.11
  34103. Printers.Greekö
  34104. 2.11
  34105. My !Run file now looks like the one below.
  34106. 2.11
  34107. | > !PipeDream.!Run
  34108. 2.11
  34109. Set PipeDream$Dir <Obey$Dir>
  34110. 2.11
  34111. WimpSlot -min 160k -max 640k
  34112. 2.11
  34113. RMReInit InternationalKeyboard
  34114. 2.11
  34115. RMKill InternationalKeyboard
  34116. 2.11
  34117. BASIC -quit ö<PipeDream$Dir>.
  34118. 2.11
  34119. Printers.Greekö
  34120. 2.11
  34121. RMEnsure FPEmulator 2.60 RMLoad
  34122. 2.11
  34123.  <System$Path>Modules.FPEmulator
  34124. 2.11
  34125. Set Alias$@RunType_DDE Run
  34126. 2.11
  34127.  <PipeDream$Dir>.!Run %%*0
  34128. 2.11
  34129. Set File$Type_DDE PDream
  34130. 2.11
  34131. IconSprites <PipeDream$Dir>
  34132. 2.11
  34133. .!Sprites
  34134. 2.11
  34135. Load <Obey$Dir>.piped.pd 8000
  34136. 2.11
  34137. DIR <Obey$Dir>
  34138. 2.11
  34139. Echo <26>
  34140. 2.11
  34141. Pointer 0
  34142. 2.11
  34143. Go 8000 ; %*0
  34144. 2.11
  34145. DIR adfs::HardDisc4.$
  34146. 2.11
  34147. Include the new program ÉGreekæ in a suitable directory; I have chosen
  34148. the ÉPrintersæ directory.
  34149. 2.11
  34150. 100 REM > <PipeDream$Dir>.
  34151. 2.11
  34152. Printers.Greek
  34153. 2.11
  34154. 150 :
  34155. 2.11
  34156. 160 *Alphabet Greek
  34157. 2.11
  34158. 180 VDU 2
  34159. 2.11
  34160. 200 RESTORE
  34161. 2.11
  34162. 210 REPEAT
  34163. 2.11
  34164. 220 READ byte%
  34165. 2.11
  34166. 230 IF byte%<>-1 THEN VDU 1,byte%
  34167. 2.11
  34168. 240 UNTIL byte%=-1
  34169. 2.11
  34170. 250 :
  34171. 2.11
  34172. 260 VDU 3
  34173. 2.11
  34174. 270 :
  34175. 2.11
  34176. 280 END
  34177. 2.11
  34178. 300 :
  34179. 2.11
  34180. 310 DATA 27,64
  34181. 2.11
  34182. 320 DATA 27,58,0,0,0
  34183. 2.11
  34184. 330 DATA 27,37,1,0
  34185. 2.11
  34186. 340 DATA 27,54
  34187. 2.11
  34188. 350 DATA 27,38,0,108,108
  34189. 2.11
  34190. 360 DATA 136,0,128,0,252,2,0,2,0,0,0,0
  34191. 2.11
  34192. 370 DATA 27,38,0,128,128
  34193. 2.11
  34194. 380 DATA 138,8,4,2,4,8,16,32,64,128
  34195. 2.11
  34196. ,0,0
  34197. 2.11
  34198. 390 DATA 27,38,0,176,176
  34199. 2.11
  34200. 400 DATA 168,0,0,64,160,0,160,64,0,0
  34201. 2.11
  34202. ,0,0
  34203. 2.11
  34204. 410 DATA 27,38,0,177,177
  34205. 2.11
  34206. 420 DATA 139,18,0,18,0,126,0,18,0,18
  34207. 2.11
  34208. ,0,0
  34209. 2.11
  34210. 430 DATA 27,38,0,195,196
  34211. 2.11
  34212. 440 DATA 137,130,124,130,0,128,0,128,
  34213. 2.11
  34214. 64,0,0,0
  34215. 2.11
  34216. 450 DATA 139,2,4,10,16,34,64,130,96,
  34217. 2.11
  34218. 26,4,2
  34219. 2.11
  34220. 460 DATA 27,38,0,211,211
  34221. 2.11
  34222. 470 DATA 139,130,0,198,0,170,0,146,0,
  34223. 2.11
  34224. 130,0,0
  34225. 2.11
  34226. 480 DATA 27,38,0,217,217
  34227. 2.11
  34228. 490 DATA 139,58,68,130,0,128,0,130,68
  34229. 2.11
  34230. ,58,0,0
  34231. 2.11
  34232. 500 DATA 27,38,0,225,249
  34233. 2.11
  34234. 510 DATA 138,28,34,0,34,20,8,20,32,2
  34235. 2.11
  34236. ,0,0
  34237. 2.11
  34238. 520 DATA 138,127,128,18,128,18,128,
  34239. 2.11
  34240. 114,12,0,0,0
  34241. 2.11
  34242. 530 DATA 11,64,0,64,32,16,11,4,8,16
  34243. 2.11
  34244. ,96,0
  34245. 2.11
  34246. 540 DATA 138,12,18,64,178,0,146,0,
  34247. 2.11
  34248. 146,76,0,0
  34249. 2.11
  34250. 550 DATA 137,8,20,8,34,8,34,8,34,0
  34251. 2.11
  34252. ,0,0
  34253. 2.11
  34254. 560 DATA 8,13,144,37,192,5,130,0,0,0
  34255. 2.11
  34256. ,0,0
  34257. 2.11
  34258. 570 DATA 10,64,60,64,0,64,0,64,63,0
  34259. 2.11
  34260. ,0,0
  34261. 2.11
  34262. 580 DATA 138,56,68,16,130,16,130,16,
  34263. 2.11
  34264. 68,56,0,0
  34265. 2.11
  34266. 590 DATA 71,0,0,124,0,4,0,0,0,0,0,0
  34267. 2.11
  34268. 600 DATA 138,62,0,8,0,20,0,34,0,0,0,0
  34269. 2.11
  34270. 610 DATA 136,130,68,40,16,8,4,2,0,0
  34271. 2.11
  34272. ,0,0
  34273. 2.11
  34274. 620 DATA 10,127,0,4,0,4,0,4,120,4,0,0
  34275. 2.11
  34276. 630 DATA 10,64,32,16,8,4,8,16,96,0
  34277. 2.11
  34278. ,0,0
  34279. 2.11
  34280. 640 DATA 9,128,40,212,0,149,0,149,2,0
  34281. 2.11
  34282. ,0,0
  34283. 2.11
  34284. 650 DATA 139,0,0,0,0,0,0,0,0,0,0,0
  34285. 2.11
  34286. 660 DATA 138,32,0,62,0,32,0,62,0,32
  34287. 2.11
  34288. ,0,0
  34289. 2.11
  34290. 670 DATA 9,63,64,0,68,0,68,56,0,0,0,0
  34291. 2.11
  34292. 680 DATA 139,0,0,0,0,0,0,0,0,0,0,0
  34293. 2.11
  34294. 690 DATA 139,28,34,0,34,0,34,28,32,0
  34295. 2.11
  34296. ,32,0
  34297. 2.11
  34298. 700 DATA 10,32,64,0,64,60,64,0,64,0
  34299. 2.11
  34300. ,0,0
  34301. 2.11
  34302. 710 DATA 9,64,56,4,0,4,0,120,0,0,0,0
  34303. 2.11
  34304. 720 DATA 10,56,68,0,68,187,68,0,68,56
  34305. 2.11
  34306. ,0,0
  34307. 2.11
  34308. 730 DATA 9,65,34,20,8,20,34,65,0,0
  34309. 2.11
  34310. ,0,0
  34311. 2.11
  34312. 740 DATA 11,120,4,0,4,251,4,0,4,120
  34313. 2.11
  34314. ,0,0
  34315. 2.11
  34316. 750 DATA 138,28,34,0,2,12,2,0,34,28
  34317. 2.11
  34318. ,0,0
  34319. 2.11
  34320. 760 DATA -1
  34321. 2.11
  34322.  
  34323. 2.11
  34324. Incidently, this shows how you can include a BASIC program within an
  34325. Obey file and then come back to RUN the rest of the Obey file.
  34326. 2.11
  34327. You have to remember to remove ESC ö@ò from the Printer On string
  34328. otherwise you will lose all the character definitions you have just
  34329. downloaded! G L Fitton.
  34330. 2.11
  34331. This final section of hints and tips has been extracted from the Archive
  34332. Bulletin Board Service (BBS) by Richard Forster.
  34333. 2.11
  34334. (N.B. There may be some over-lap with other H & T, but I donæt have time
  34335. to edit it out Ö Iæm just off on my Holidays. Ed.)
  34336. 2.11
  34337. Å   First Word Plus Margins Ö It is possible to get First Word Plus to
  34338. change its margins permanently, but it is not easy. It may also depend
  34339. on your version of the software, and this method may not work on all
  34340. versions. Make sure you try it on a backup copy!
  34341. 2.11
  34342. 10 wp%=OPENUP(öResources.1wp.1wpò)
  34343. 2.11
  34344. 20 margin%=8 : REM or whatever is
  34345. 2.11
  34346.  required
  34347. 2.11
  34348. 30 PTR#wp%=&2EF9C
  34349. 2.11
  34350. 40 BPUT#wp%,margin%
  34351. 2.11
  34352. 50 CLOSE#wp%
  34353. 2.11
  34354. Å   Taxan Multisync juddering Ö If you have an A400/1 or A3000 machine
  34355. and are using it with a Taxan Multisync monitor, you may experience some
  34356. juddering which can be overcome thus:
  34357. 2.11
  34358. A400/1: Fit a molex shunt to link 2. If you do not have a spare shunt,
  34359. you can request one from Acorn Customer Services.
  34360. 2.11
  34361. A3000 : Take your machine to your local dealer. The modification is
  34362. different from the A400/1 machines and you must not open your machine.
  34363. 2.11
  34364. Å   Using the Yes/No mouse icon Ö In order to use the Yes/No mouse icon,
  34365. do:
  34366. 2.11
  34367. SWI öOS_Confirmò
  34368. 2.11
  34369. This changes the pointer shape, flushes the mouse buffer, waits until a
  34370. key is pressed and then, on exit: R0 = (lowercased) character pressed, C
  34371. flag is set if ESCAPE, Z flag set if character is ÉYæ
  34372. 2.11
  34373. Å   Saving Rom Sprites Ö To save rom sprites as a standard file, do:
  34374. 2.11
  34375. SYSöWimp_BaseOfSpritesò TO roms%
  34376. 2.11
  34377. SYSöOS_SpriteOpò,524,roms%,öfilenameò
  34378. 2.11
  34379. Save this as a BASIC program and double click it from the desktop.
  34380. 2.11
  34381. Å   Memory Re-allocation Ö You can re-allocate memory for spritesize,
  34382. screensize etc. by loading a module called MEMALLOC. This can be found
  34383. on Application Disc 2 in directory $.!Lander.
  34384. 2.11
  34385. Å   Hourglass  Ö The following SYS calls affect the hourglass. Note that
  34386. the hourglass is nested, so if you have turned it on twice it must be
  34387. turned off twice.
  34388. 2.11
  34389. SYSöHourGlass_Onò Ö Display Hourglass
  34390. 2.11
  34391. SYSöHourGlass_Offò Ö Remove Hourglass
  34392. 2.11
  34393. SYSöHourGlass_percentageò,number Ö Display Hourglass & percentage below.
  34394. 2.11
  34395. SYSöHourGlass_Smashò Ö Remove all hourglasses
  34396. 2.11
  34397. SYSöHourGlass-LEDsò,%AB Ö Where A is the top LED, B is the bottom LED
  34398. 2.11
  34399. SYSöHourGlass_Onò has a delay of 1/3 sec before actually appearing. To
  34400. make the delay the value of r0 use:
  34401. 2.11
  34402. SYSöHourGlass_Startò
  34403. 2.11
  34404. Å   Tiny directories Ö The adjust button on a tiny directory opens the
  34405. application and removes that tiny directory.
  34406. 2.11
  34407. Å   RISC-OS Speedup Ö The following calls speed up the machine ROMs from
  34408. 4Mhz to 8Mhz. Try them at your own risk. (Although under Arthur they
  34409. caused crashes, they seem to work OK under RISC-OS) The first switches
  34410. to higher speed, the second resets it:
  34411. 2.11
  34412. SYSöOS_UpdateMEMCò,64,64
  34413. 2.11
  34414. SYSöOS_UpdateMEMCò,,64
  34415. 2.11
  34416. Å   Terramex Cheat Ö For infinite lives, when you first load the game,
  34417. type in öSUBJECTTOCHANGEò on the loading screen.
  34418. 2.11
  34419. Å   RISC-OS Bugs Ö Yes, already folk have found begun to find bugs in
  34420. RISC-OS.
  34421. 2.11
  34422. 1) Module files which show up for *cat as modules but are dated 2:27
  34423. 1901 do not get a module icon in a filer window Ö this is a property of
  34424. unstamped files from AASM/OBJASM.
  34425. 2.11
  34426. 2) Edit does not work properly in modes 2,4 or 5. (But who would want to
  34427. do so?! Ed.)
  34428. 2.11
  34429. 3) You can drag a directory into itself creating an copy within a copy
  34430. until disc space runs out. (Could that be the answer to the Élibrary
  34431. virusæ in the Help!!! section? Ed.)
  34432. 2.11
  34433. 4) Resizing the interactive help window can cause the mouse pointer to
  34434. move autonomously up the screen. Try it: Hold button down and resize it,
  34435. keep holding, and it will go for a certain window size always.
  34436. 2.11
  34437. Å   MaxGammon under RISC-OS Ö If you have a copy of this game, the
  34438. author has a version which works in the desktop. Send your original disk
  34439. and a S.A.E. to 11 Maryland, Barkham, Wokingham, Berkshire RG11 4PB and
  34440. you can have an upgrade to the newer version.
  34441. 2.11
  34442. Å   Last line in program  Ö To find the last line in a BASIC program
  34443. which is in memory, hold down <ctrl>+<shift> and then press <escape>
  34444. twice.
  34445. 2.11
  34446. Å   Hearsay Problems Ö It is still possible to select a route from the
  34447. screen when in a scrolling terminal, but it must be a Élongæ click. A
  34448. short click tries to home the cursor to where the pointer is by sending
  34449. a string of control codes. The answer is to hold the button down a bit
  34450. longer or use the keyboard.
  34451. 2.11
  34452. If you have problems with Xmodem make sure that Vasscomm is turned off.
  34453. 2.11
  34454. Å   Filer_OpenDir Ö When using Filer_OpenDir, it is important to get the
  34455. full pathname correct. For instance, if your hard disc has the name
  34456. ÉFredæ and you want to open the directory $.Foo, you should use:
  34457. 2.11
  34458. *Filer_OpenDir adfs::Fred.$.Foo
  34459. 2.11
  34460. and not something like:
  34461. 2.11
  34462. *File_OpenDir adfs::4.Foo
  34463. 2.11
  34464. The reason is that when you click on the drive icon, the Filer checks
  34465. the list of open windows to see if the requested pathname is already
  34466. visible. Unfortunately it is not too intelligent about this, and if the
  34467. names do not match exactly, the Filer will open another window. This
  34468. will have the side effect that when Dismount is used only windows with
  34469. the first pathname will be closed.
  34470. 2.11
  34471. Å   Legal Text Scaling for Multisyncs Ö Richard Averillæs hint last
  34472. month (Archive 2.10 pp 19/20) to help rescale text in multisync modes
  34473. could be done more legally using:
  34474. 2.11
  34475. VDU 23,17,7,flags,x;y;0,0
  34476. 2.11
  34477. flags => bit 0 = not implemented
  34478. 2.11
  34479. bit 1 = 1 => set size of VDU 5 characters
  34480. 2.11
  34481. bit 2 = 1 => set size of VDU 5 spacing
  34482. 2.11
  34483.  10 REM > CharSize    Demonstration
  34484. 2.11
  34485.  of changing character size
  34486. 2.11
  34487.  20 REM By Martin Simmons 10/07/89
  34488. 2.11
  34489.  30
  34490. 2.11
  34491.  40 MODE 12
  34492. 2.11
  34493.  50
  34494. 2.11
  34495.  60 VDU 5:CLS:PRINTÉæ
  34496. 2.11
  34497.  70 GCOL 1
  34498. 2.11
  34499.  80 PROCprint(8,16,öDouble heightò)
  34500. 2.11
  34501.  90 PRINT
  34502. 2.11
  34503. 100 GCOL 2
  34504. 2.11
  34505. 110 PROCprint(16,8,öDouble widthò)
  34506. 2.11
  34507. 120 PRINT
  34508. 2.11
  34509. 130 GCOL 3
  34510. 2.11
  34511. 140 PROCprint(16,16,öDouble sizeò)
  34512. 2.11
  34513. 150 PRINT
  34514. 2.11
  34515. 160 GCOL 5
  34516. 2.11
  34517. 170 PROCprint2(8,8,16,16,öDouble
  34518. 2.11
  34519.  spacedö)
  34520. 2.11
  34521. 180 GCOL 7
  34522. 2.11
  34523. 190 PROCprint(8,4,öMangled half
  34524. 2.11
  34525.  heightö)
  34526. 2.11
  34527. 200 PRINTÉæ
  34528. 2.11
  34529. 210 GCOL 6
  34530. 2.11
  34531. 220 PROCprint(120,120,öBIGò)
  34532. 2.11
  34533. 230 VDU 4
  34534. 2.11
  34535. 240 END
  34536. 2.11
  34537. 250
  34538. 2.11
  34539. 260 DEF PROCprint(X%,Y%,text$)
  34540. 2.11
  34541. 270 VDU 23,17,7,6,X%;Y%;0,0
  34542. 2.11
  34543. 280 PRINT text$
  34544. 2.11
  34545. 290 ENDPROC
  34546. 2.11
  34547. 300
  34548. 2.11
  34549. 310 DEF PROCprint2(X%,Y%,sx%,sy%
  34550. 2.11
  34551. ,text$)
  34552. 2.11
  34553. 320 VDU 23,17,7,2,X%;Y%;0,0
  34554. 2.11
  34555. 330 VDU 23,17,7,4,sx%;sy%;0,0
  34556. 2.11
  34557. 340 PRINT text$
  34558. 2.11
  34559. 350 ENDPROC
  34560. 2.11
  34561.  
  34562. 2.11
  34563. Å   ARM assembler T option Ö Martyn Lovell says that although the
  34564. assembler sees the T option for the LDR mnemonic the same as the !
  34565. option (Archive 2.10 p 9), it is not used in the same way. The ! option
  34566. should be used to force write back with pre-indexed addressing while the
  34567. T option should be used with post-indexed addressing to cause the -TRAN
  34568. pin on the ARM to go low for the duration of the data transfer. This is
  34569. used by an OS in non-user modes to allow the OS to generate a user-mode
  34570. address.
  34571. 2.11
  34572. Å   ALTernative keys Ö The RISC-OS Inter-nationalKeyboard module
  34573. provides the facility for typing control characters by holding down
  34574. <alt> and typing the number on the numeric keypad. In addition, the
  34575. following keys produce symbols when pressed with <alt> held down:
  34576. 2.11
  34577. 1 gives 1   2 gives 2   3 gives 3   ~ gives ┬
  34578. 2.11
  34579. 9 gives ▒   0 gives √   , gives x    . gives ╓
  34580. 2.11
  34581. R gives ¿   Y gives ┤   S gives ñ   Z gives ╟
  34582. 2.11
  34583. X gives ╚   C gives ó   M gives ╡
  34584. 2.11
  34585. shifted C gives ⌐
  34586. 2.11
  34587. Other keys return nothing. The old Arthur effect of using
  34588. <ctrl><shift><alt> to add 128 to the code can be produced by RMKILLing
  34589. this module. Doing this will also allow the use of <alt> plus a cursor
  34590. key in the BASIC Editor which does not work with this module installed.
  34591. 2.11
  34592. Å   Colour cursor for the BASIC Editor Ö Here is a little program which
  34593. will alter the ArmBE module so that you can change the colour of the
  34594. cursor.
  34595. 2.11
  34596.  10 REM > ColourEdit Make a colour
  34597. 2.11
  34598.  cursor for the BASIC Editor
  34599. 2.11
  34600.  20 REM By Martin Simmons 11/07/89
  34601. 2.11
  34602.  30 REM I use yellow background,
  34603. 2.11
  34604.  blue foreground, red cursor
  34605. 2.11
  34606.  (1=6 EOR 7)
  34607. 2.11
  34608.  40
  34609. 2.11
  34610.  50 colour%=6  :REM **** CHANGE
  34611. 2.11
  34612.  THIS LINE TO CHANGE THE
  34613. 2.11
  34614.  COLOUR (EOR 7) ****
  34615. 2.11
  34616.  60 DIM buf% &10000
  34617. 2.11
  34618.  70 OSCLI öLoad :App2.Modules.
  34619. 2.11
  34620. BasicEdit ö+STR$~buf%
  34621. 2.11
  34622.  80 P%=buf%+&81E4
  34623. 2.11
  34624.  90 [ SWI  &100+colour%   ;Change
  34625. 2.11
  34626.  background palette
  34627. 2.11
  34628. 100 ]
  34629. 2.11
  34630. 110 zi%=buf%+&8320:zi%+=8+4*
  34631. 2.11
  34632. ((!zi%<<8)>>8)
  34633. 2.11
  34634. 120 wind%=buf%+&8310:wind%+=8+4*
  34635. 2.11
  34636. ((!wind%<<8)>>8)
  34637. 2.11
  34638. 130 P%=buf%+&8310
  34639. 2.11
  34640. 140 [ SWI  öOS_WriteSò
  34641. 2.11
  34642. 150   EQUB 17 : EQUB 128+colour%
  34643. 2.11
  34644.     ;Set background colour
  34645. 2.11
  34646. 160   EQUB 12  ;Clear screen
  34647. 2.11
  34648. 170   EQUB 23 : EQUB 16 : EQUB 1
  34649. 2.11
  34650. ;Set cursor movement
  34651. 2.11
  34652. 180   EQUS STRING$(4-(P% AND 3)
  34653. 2.11
  34654. ,CHR$0)
  34655. 2.11
  34656. 190   BL zi%
  34657. 2.11
  34658. 200   BL wind%
  34659. 2.11
  34660. 210 ]
  34661. 2.11
  34662. 220 INPUTÉöEnter new file name for
  34663. 2.11
  34664.  the editor: öfile$
  34665. 2.11
  34666. 230 OSCLI öSave ò+file$+ö ò+STR$
  34667. 2.11
  34668. ~buf%+ö +94B4ò
  34669. 2.11
  34670. 240 OSCLI öSetType ò+file$+ö FFAò
  34671. 2.11
  34672.  
  34673. 2.11
  34674. Å   Wild card copy for RISC-OS Ö The destination parameter of the *Copy
  34675. command now has greater freedom regarding wild cards i.e. wildcards in
  34676. the destination can be used even though they were not used for the
  34677. source
  34678. 2.11
  34679.  e.g. *COPY :0.Text :1.* is now valid.
  34680. 2.11
  34681. Å   RISC-OS disc names Ö It is possible to set a system variable which
  34682. will behave like a disc name. If you *Set <discname>$Path <filepath> you
  34683. can then access you files by :<discname>.<filename>. For example:
  34684. 2.11
  34685. *Set W App1:$.
  34686. 2.11
  34687. *Run W:!Edit
  34688. 2.11
  34689. You can even define several paths, just like File$Path and Run$Path:
  34690. 2.11
  34691. *Set W App1:$.,App2:$.
  34692. 2.11
  34693. *RMLoad W:Modules.BasicEdit
  34694. 2.11
  34695. *Run W:!Edit
  34696. 2.11
  34697. Å   Memory Usage Ö Gerald Fitton Ö Of course, the Ébestæ machine has
  34698. both hard disc and 4Mb of memory, but some hard disc machines have less
  34699. memory. If you have the Ébestæ then you will probably put all the
  34700. !(application) directories that you use in your root ($) directory for
  34701. instant access. When you click on the :4 icon in the icon bar, all your
  34702. application !Boot files will be RUN and memory will be allocated to each
  34703. application (so that it is instantly available). This is true even when
  34704. the applications are not installed on the icon bar. If you have less
  34705. memory, say 1Mb, then you may find that your dormant applications are
  34706. using up too much memory for some of the more sophisticated appli
  34707. cations. The solution is to put your applications not in the root
  34708. directory but in a (non-!) sub-directory. For example, !Patience can be
  34709. put together with !Zarch in a games directory, where Games is in the
  34710. root directory. This way, only when you open the Games directory (by
  34711. double clicking on it) will you use up memory on the dormant appli
  34712. cations !Patience and !Zarch.
  34713. 2.11
  34714. Å   1st Mail solution Ö When using 1st Mail in RISC-OS, the printer
  34715. options are hidden underneath another window. Mr Burrows has solved the
  34716. problem by altering the template file:
  34717. 2.11
  34718. *Load $.Resources.1wp.
  34719. 2.11
  34720. 1ml_templa 9000
  34721. 2.11
  34722. !&9AA8=155
  34723. 2.11
  34724. !&9AB0=1023
  34725. 2.11
  34726. *Save $.Resources.1wp.
  34727. 2.11
  34728. 1ml_templa 9000+AEA
  34729. 2.11
  34730. *SetType $.Resources.1wp
  34731. 2.11
  34732. .1ml_templa FFF
  34733. 2.11
  34734. Å   RISC-OS Hints and Tips Ö S C Costin Ö When using !PrinterDM on the
  34735. Desktop to print a text file, if the printer and Archimedes are set up
  34736. where there are no ignore characters configured, i.e. can be checked as
  34737. follows:
  34738. 2.11
  34739. F12    ;Press function key 12 from desktop
  34740. 2.11
  34741. *status ignore   ;Enter command
  34742. 2.11
  34743. No ignore   ;Returned after entering command
  34744. 2.11
  34745. The problem is that the line feed is suppressed and therefore over-
  34746. printing occurs. This is easily overcome by clicking on the !PrinterDM
  34747. icon on the icon bar, which produces a window, and selecting CR or LF
  34748. conversion.
  34749. 2.11
  34750. A more permanent solution is to edit the file PrData. To do this hold
  34751. shift key while clicking on the application directory !PrinterDM, then
  34752. drag PrData icon over Edit icon on the icon bar and release the mouse
  34753. button. At the end of the printer driver data change line: from 0 to 1
  34754. i.e. change line:
  34755. 2.11
  34756. 0;0/1 1=>convert CR or LF to CR,LF
  34757. 2.11
  34758. to:
  34759. 2.11
  34760. 1;0/1 1=>convert CR or LF to CR,LF
  34761. 2.11
  34762. Å   Pipedream conversion to ADFS E type floppy disc by S C Costin
  34763. 2.11
  34764. 1)   Format new disc using the new E format.
  34765. 2.11
  34766. 2)   Name the new disc NewPd.
  34767. 2.11
  34768. 3)   Backup your original copy to the disc NewPd, using *COPY to retain
  34769. E format.
  34770. 2.11
  34771. 4)   Copy the !PipeDream application from the support disc to the root
  34772. directory of disc NewPd.
  34773. 2.11
  34774. 5)   Copy the Floating Point Emulator module from directory
  34775. !System.Modules on Application Disc 1 into directory $.!PipeDream on
  34776. disc NewPd.
  34777. 2.11
  34778. 6)   Delete $.!boot
  34779. 2.11
  34780. 7)   Delete $.piped.fpe2
  34781. 2.11
  34782. 8)   Delete $.rs423drive
  34783. 2.11
  34784. 9)   Add the following obey file called $.!boot
  34785. 2.11
  34786. | > $.!boot
  34787. 2.11
  34788. *quit
  34789. 2.11
  34790. RUN $.!pipedream.!run
  34791. 2.11
  34792. 10)   Leave the !PipeDream.!boot file as copied from the support disc.
  34793. 2.11
  34794. | > !PipeDream.!Boot
  34795. 2.11
  34796. Set PipeDream$Dir <Obey$Dir>
  34797. 2.11
  34798. Set Alias$@RunType_DDE Run <PipeDream$Dir>.!Run %%*0
  34799. 2.11
  34800. Set File$Type_DDE PDream
  34801. 2.11
  34802. IconSprites <PipeDream$Dir>
  34803. 2.11
  34804. .!Sprites
  34805. 2.11
  34806. 11)   If mouse cursor control is required insert lines 7 & 8 in the !Run
  34807. Obey file as follows:
  34808. 2.11
  34809. | > !PipeDream.!Run
  34810. 2.11
  34811. Set PipeDream$Dir <Obey$Dir>
  34812. 2.11
  34813. WimpSlot -min 450k
  34814. 2.11
  34815. ||RMReInit InternationalKeyboard
  34816. 2.11
  34817. RMKill InternationalKeyboard
  34818. 2.11
  34819. RMEnsure FPEmulator 2.60
  34820. 2.11
  34821. RMLoad <Obey$Dir>.FPEmulator
  34822. 2.11
  34823. $.piped.cursorrm
  34824. 2.11
  34825. mousecursor on 13 &c5 131
  34826. 2.11
  34827. Set Alias$@RunType_DDE Run <PipeDream$Dir>.!Run %%*0
  34828. 2.11
  34829. Set File$Type_DDE PDream
  34830. 2.11
  34831. IconSprites <PipeDream$Dir>
  34832. 2.11
  34833. .!Sprites
  34834. 2.11
  34835. Load $.Library.pd 8000
  34836. 2.11
  34837. Echo <26>
  34838. 2.11
  34839. Pointer 0
  34840. 2.11
  34841. Go 8000 ; %*0
  34842. 2.11
  34843. Å   Update for Artisan and ProArtisan Ö Clares have now produced an
  34844. application which will up-date your Artisan and ProArtisan discs for
  34845. RISC-OS. It has been put on both this monthæs and last monthæs program
  34846. discs. Many thanks to Duncan Burbridge, Kimba, Australia (age 12) who
  34847. also sent us information on updating Artisan for RISC-OS.
  34848. 2.11
  34849. Å   Not enough screen memory? Ö If a program expects to run in a
  34850. specific screen mode and not enough screen memory is available, it will
  34851. usually report a ÉBad Modeæ error when run from the desktop, as the
  34852. screen memory canæt be expanded dynamically once the application has
  34853. started. This can be fixed by either dragging the screen memory bar in
  34854. the task window, or by entering the appro-priate mode first.  A much
  34855. more elegant way is to add the following line to the Obey file that
  34856. starts the program:  Echo <22><n>  Where <n> is the mode. This ensures
  34857. that the screen memory is allocated before the application starts and
  34858. should appear before the *WimpSlot command.
  34859. 2.11
  34860. Å   Uncluttered cataloging Ö RISC-OS has a neat way of searching a disc
  34861. without cluttering the screen. Use <adjust> to open a directory and it
  34862. closes the one you were in, leaving only the new dir-ectory on the
  34863. screen. To move back up the tree, click <adjust> on the close icon, and
  34864. the next directory up will appear, closing the current directory (unless
  34865. you are in the root directory, of course!).
  34866. 2.11
  34867. Å   Bye bye hard disk! Ö The RAM disc is fantastic but not much use on 1
  34868. Mbyte machines. Also, note that when RAMFS is selected *bye does not
  34869. park the head of the Winchester Ö so beware!!!
  34870. 2.11
  34871.  
  34872.  
  34873. Å   Partitioning hard drives Ö It is possible to partition hard drives
  34874. with less than 10 Mbyte. The answer is in the REM statements in the
  34875. Harddisc program on the PC disc. Change the A2080 in line 610 to any
  34876. multiple of &8800 (in hex). Details are given in the REMs.
  34877. Å   Hearsay Ö We mentioned changing modem baud rates in H & T in May.
  34878. Philip Green sends us a way of doing this automatically suggested by
  34879. Alfons Tjin. Use a dial prefix in the modem driver edit screen of just
  34880. öATò and then put B3D or B0D, as necessary, in front of the phone number
  34881. in the telephone directory.
  34882. Å   Case sensitive system variables Ö Some readers have had problems
  34883. using the *SETMACRO Alias$ command. This is because system variables are
  34884. case sensitive i.e. you need to type: Alias$ not ALIAS$
  34885. Å   Overload passwords:  A B BROS, CABBAGED, SLIPPERS, PREVIOUS,
  34886. PILLAGED, BOVERBOD, LAVATORY, CASSETTE, WHALE╩FM, EXTRACTS, STOPKETS
  34887. The following hints were sent in by Lorcan Mongey
  34888. Å   ÉTæ Option in LDR and STR Ö Assembly language programmers may have
  34889. noticed that the Programmeræs Reference Manual mentions a ÉTæ option in
  34890. the description of the LDR and STR com-mands (page 608), but neglects to
  34891. say what it does. It is, in fact, used for setting the write-back option
  34892. and has exactly the same effect as É!æ. Note that the *MEMORYI disassem
  34893. bler always disassembles pre-indexed write-back with É!æ and post-
  34894. indexed write-back with ÉTæ, although you may use either form when
  34895. assembling. Bear in mind that post-indexed write-back always takes
  34896. place, regardless of the state of the write-back flag.
  34897. 2.10
  34898. Å   Bit patterns for LDR and STR Ö There is an omission in Appendix C of
  34899. the öARM Assembly Language programmingò book published by Com-puter
  34900. Concepts. Appendix C gives the bit patterns of the ARM instruction set,
  34901. but does not describe the ÉLæ bit of the ÉSingle Data transferæ
  34902. instruction. This is the Load/Store bit: 0=store (STR), 1=load (LDR).
  34903. 2.10
  34904. This description also applies to the ÉBlock data transferæ instructions
  34905. (STM and LDM).
  34906. 2.10
  34907. Å   BASIC restrictions Ö In BASIC II on the BBC B (and IV on the Master)
  34908. there were a number of restrictions which no longer apply to BASIC V on
  34909. the Archimedes, but have not been specifically mentioned in the
  34910. Archimedes User Guide. They are worth noting because they have probably
  34911. become ingrained in BBC B users who may not have realised that they have
  34912. been lifted.
  34913. 2.10
  34914. 1) You can now change MODE inside a procedure or function. This is
  34915. because the screen RAM is now completely separate from the program area.
  34916. 2.10
  34917. 2) The nesting limits of FOR, REPEAT and GOSUB (10, 20 and 26 respec
  34918. tively) no longer apply. Instead of a fixed limit, you can now nest
  34919. loops until you run out of RAM. I have successfully nested loops 15,000
  34920. deep and run a recursive procedure 30,000 levels deep! Strangely,
  34921. nesting GOSUBs too deeply is not trapped and will corrupt your program,
  34922. but this situation is unlikely to happen in practice.
  34923. 2.10
  34924. Å   BASIC errors Ö I have found four BASIC errors not listed in the User
  34925. Guide (Issue 2). They are:
  34926. 2.10
  34927. 11 No room for this dimension Ö An attempt was made to dimension an
  34928. array for which there was insufficient space.
  34929. 2.10
  34930. 25 Bad MODE Ö An attempt was made to select a screen mode for which
  34931. there is insufficient memory. More memory can be allocated by *CONFIGURE
  34932. SCREENSIZE.
  34933. 2.10
  34934. 37 No room for function/procedure call Ö An attempt was made to Énestæ
  34935. too many function and/or procedure calls.
  34936. 2.10
  34937. 44 Too many nested structures Ö An attempt was made to Énestæ too many
  34938. FOR...NEXT, REPEAT...UNTIL and/or WHILE... ENDWHILE loops.
  34939. 2.10
  34940. Note that 11 and 44 are covered in the Archimedes 400 series BBC BASIC
  34941. Guide.
  34942. 2.10
  34943. Å   Using FORTRAN 77 Ö The article on using FORTRAN 77 in Archive 1.7
  34944. included a sample subroutine showing how to access graphics from
  34945. FORTRAN. There are a number of problems with this subroutine. It canæt
  34946. cope with negative graphics coordinates (needed after an origin shift),
  34947. it sends a line feed to the screen when it is used, which can cause your
  34948. graphics to scroll upwards, and it uses an output channel which should
  34949. be kept free for file access. The following solves all the problems:
  34950. 2.10
  34951. SUBROUTINE PLOT(K,X,Y)
  34952. 2.10
  34953. INTEGER X,Y  I1=IAND(X,?IFF)
  34954. 2.10
  34955. I2=ISHFT(IAND(X,?IFF00),-8)
  34956. 2.10
  34957. J1=IAND(Y,?IFF)
  34958. 2.10
  34959. J2=ISHFT(IAND(Y,?IFF00),-8)
  34960. 2.10
  34961. PRINT 100,CHAR(25),CHAR(K),CHAR(I1),
  34962. 2.10
  34963. CHAR(I2),CHAR(J1),CHAR(J2)
  34964. 2.10
  34965. RETURN
  34966. 2.10
  34967. 100 FORMAT (6A1$)
  34968. 2.10
  34969. END
  34970. 2.10
  34971. This method masks out the unwanted bits and shifts the data into the
  34972. l.s.b., thus preserving the sign. It uses PRINT instead of WRITE,
  34973. avoiding the need for a channel number. The $ at the end of the FORMAT
  34974. statement suppresses the line feed. (No criticism of the original
  34975. authors is intended; my first attempt looked very similar!)
  34976. 2.10
  34977. Included on this monthæs program disc is Graph_ FOR, the FORTRAN source
  34978. of a set of graphics subroutines which provide a full set of VDU calls.
  34979. Some, like BELL for instance, are trivial, but others are more
  34980. complicated.
  34981. 2.10
  34982. Å   Printer conventions Ö Many people seem to have difficulty with
  34983. setting up the correct linefeed or non-linefeed for their printers for
  34984. different app-lications, so I.J. King has tried to explain it for us╔
  34985. 2.10
  34986. How the Archimedes deals with varying printer standards Ö Since there
  34987. are two standards for printers, the Archimedes has a mechanism to allow
  34988. it to cope with both. The standards in question affect the way the paper
  34989. is fed through the mechanism and there are two possible cases:
  34990. 2.10
  34991.  A. Auto Linefeed: every time the printer receives a carriage return
  34992. character (code 13), it generates a line feed (code 10) to move the
  34993. paper up a line.
  34994. 2.10
  34995. B. Non-Auto Linefeed: the printer does not gener-ate its own linefeed
  34996. characters but relies on the com-puter to send a linefeed after every
  34997. carriage return.
  34998. 2.10
  34999. Most modern printers will actually have a switch to select either of
  35000. these modes, allowing them to be compatible with most computers, but
  35001. this is likely to be difficult to reach. The Archimedes will (in the
  35002. case of virtually all software) send a line feed after every carriage
  35003. return. To allow compatibility with printers in mode (A) above, it is
  35004. possible to tell the machine to ignore a particular code when sent to
  35005. the printer. By setting this to 10 (the code for line feed), no line
  35006. feeds will be sent to the printer and you are compatible with type (A)
  35007. printers.
  35008. 2.10
  35009. This code is set up using the *IGNORE command, for example:
  35010. 2.10
  35011. *IGNORE 10
  35012. 2.10
  35013. To disable the trap altogether, simply enter *IGNORE on its own. Either
  35014. of these may be preceded by CONFIGURE to make the effect permanent, e.g.
  35015. 2.10
  35016. *CONFIGURE IGNORE 10
  35017. 2.10
  35018. The Archimedes is set up with a factory default ignore code of 10,
  35019. making the system compatible with type (A) printers when it arrives.
  35020. 2.10
  35021. Problems arising when the protocol is ignored Ö The above should make
  35022. everything seem fairly simple and indeed it ought to be. However, some
  35023. software houses, notably GST and Grafox (i.e. First Word Plus and
  35024. Logistix) have chosen to ignore the sensible protocols described above
  35025. and override the *IGNORE status in such a way that they are only
  35026. compatible with type (B) printers, regardless of the setting of *IGNORE.
  35027. 2.10
  35028. This means that the hapless user will have been forced to configure his
  35029. printer to be type (B) but will not have re-configured his Archimedes
  35030. since the software will override the settings and work anyway. They then
  35031. go out and purchase a correctly written package, such as System
  35032. DeltaPlus etc, and the result is a type (B) printer (generating no line
  35033. feeds) on a machine configured for a type (A) printer (and so sending no
  35034. line feeds) which results in no line feeds at all and the text all comes
  35035. out on the same line.
  35036. 2.10
  35037. A subsidiary problem occurs in some cases, when reconfiguring the
  35038. Archimedes to work with type (B) printers, as is necessary if you wish
  35039. to use both First Word Plus/Logistix and other, correctly written,
  35040. software. The correct way to do this is to enter the command *CONFIGURE
  35041. IGNORE with no parameters, completely disabling the printer trap. It is
  35042. not correct to enter *CONFIGURE IGNORE 0 as this prevents code 0 from
  35043. being sent to the printer and may corrupt some graphics/font change
  35044. sequences used by certain software.
  35045. 2.10
  35046. Conclusions Ö If you are using any package which overrides the Acorn
  35047. protocols for printer compatibility in the way described above and also
  35048. wish to use correctly written software (in my case, I use both Logistix
  35049. and System DeltaPlus), you should take the following steps:
  35050. 2.10
  35051. 1. Set your printer so that Auto Linefeed is OFF (usually a DIP switch).
  35052. 2.10
  35053. 2. Enter *CONFIGURE IGNORE
  35054. 2.10
  35055. 3. Press <ctrl-break> to reconfigure your machine.
  35056. 2.10
  35057. This now only leaves us with one question Ö why are Acornsoft apparently
  35058. condoning this system of forcing the user to have a printer type
  35059. different from that for which the machine is configured by default?!
  35060. 2.10
  35061. Å   PC Emulator Star Commands (Response to query in Archive 2.5 p5) Ö
  35062. There is no need for a *Configure Floppies command from the PC emul-ator
  35063. when copying from one 3.5ö disc to another. You must understand the
  35064. distinction between log-ical and physical drives: logical drives are
  35065. known to the emulator as A, B, C, etc, and are mapped onto the physical
  35066. drives 0, 1, etc. It is possible to have more than one logical drive
  35067. assigned the same phys-ical drive. This is what happens when you have
  35068. your Archimedes configured for one floppy Ö the emul-ator maps logical
  35069. drives A and B onto physical drive 0 and, recognising this when you copy
  35070. from A to B, prompts for a disc change. If you have two floppies, the
  35071. emulator maps A and B onto 0 and 1 respect-ively. I use an external
  35072. 5.25ò 40/80 track drive on my Archimedes and my config.sys file, listed
  35073. below, illustrates the way around the problem.
  35074. 2.10
  35075. device=driver.sys /d:0 /t:80 /f:2
  35076. 2.10
  35077. device=driver.sys /d:1 /t:80 /f:2
  35078. 2.10
  35079. device=driver.sys /d:1 /t:40 /f:0
  35080. 2.10
  35081. device=driver.sys /d:1 /t:40 /f:0
  35082. 2.10
  35083. files=20
  35084. 2.10
  35085. buffers=10
  35086. 2.10
  35087. The first four lines assign more logical drives (which the emulator
  35088. gives the letters C, D, E and F) to the physical drives 0 and 1. The
  35089. meaning of the parameters is:
  35090. 2.10
  35091. /d: physical drive number
  35092. 2.10
  35093.    (0 for internal, 1 for external)
  35094. 2.10
  35095. /t: number of tracks on disc
  35096. 2.10
  35097.    (80 for 720k and 40 for 360k)
  35098. 2.10
  35099. /f: disc format
  35100. 2.10
  35101.    (2 means 720k, 0 means 360k)
  35102. 2.10
  35103. The first line assigns logical drive C to physical drive 0. You can now
  35104. copy from 3.5ö to 3.5ò by using Écopy a:x.dat c:æ and DOS will prompt
  35105. for a disc change. The second line maps logical drive D to physical
  35106. drive 1, enabling copying between 5.25ö 80-track floppies (copy b:x.dat
  35107. d:). The last two lines assign two 40-track drives (E and F) to physical
  35108. drive 1, allowing copying between 40-track 5.25ò discs (copy e:x.dat f:)
  35109. in the same way.
  35110. 2.10
  35111. You should be aware that loading all these device drivers will use up
  35112. some application workspace, leaving less for programs, so only install
  35113. them when you need them!
  35114. 2.10
  35115. Å   Three SWIs which are not mentioned in the Programmeræs Reference
  35116. Manual (Issue 1):
  35117. 2.10
  35118. OS_AddToVector &47
  35119. 2.10
  35120. OS_WriteEnv &48
  35121. 2.10
  35122. WaveSynth_Load &40300
  35123. 2.10
  35124. (WaveSynth_Load was mentioned but not ident-ified in Archive 1.8, p9)
  35125. 2.10
  35126. Also, there is one SWI which seems to have been mis-spelled in the
  35127. Arthur 1.20 ROMs, namely:
  35128. 2.10
  35129. Sound_QSDispatch &401C4
  35130. 2.10
  35131. The ÉSæ between Q and Dispatch shouldnæt be there. If you refer to SWIs
  35132. by name rather than number then you must mis-spell this one in the same
  35133. way otherwise it wonæt be recognised!
  35134. 2.10
  35135. Å   Infinite energy for ThunderMonk Ö J.R. Donaldson sent in this
  35136. program, which will alter your ThunderMonk disk to give you infinite
  35137. energy.
  35138. 2.10
  35139.  10 REM > Thun_Cheat
  35140. 2.10
  35141.  20 REM Joe Pineapples Ö Cool Assassin
  35142. 2.10
  35143.  30
  35144. 2.10
  35145.  40 DIM sector% &400
  35146. 2.10
  35147.  50
  35148. 2.10
  35149.  60 MODE 0
  35150. 2.10
  35151.  70 PRINT öPlease insert ThunderMonk
  35152. 2.10
  35153.  disc and press a key.ö
  35154. 2.10
  35155.  80 G = GET
  35156. 2.10
  35157.  90
  35158. 2.10
  35159. 100 PRINT ÉöNow loading relevant
  35160. 2.10
  35161.  sectoröÉ
  35162. 2.10
  35163. 110
  35164. 2.10
  35165. 120 SYS öADFS_DiscOpò,, 1, &C6400,
  35166. 2.10
  35167.  sector%, &400
  35168. 2.10
  35169. 130
  35170. 2.10
  35171. 140 PRINT öDo you want to play
  35172. 2.10
  35173.  (C)heat or Normal ?ö
  35174. 2.10
  35175. 150 G = GET
  35176. 2.10
  35177. 160
  35178. 2.10
  35179. 170 IF G=ASC(öCò) OR G=ASC(öcò) THEN
  35180. 2.10
  35181. 180   sector%!&388 = &E59C0044
  35182. 2.10
  35183. 190   sector%!&38C = &E28000FE
  35184. 2.10
  35185. 200   sector%!&390 = &E58C0044
  35186. 2.10
  35187. 210   ELSE
  35188. 2.10
  35189. 220   sector%!&388 = &059C0044
  35190. 2.10
  35191. 230   sector%!&38C = &02400001
  35192. 2.10
  35193. 240   sector%!&390 = &058C0044
  35194. 2.10
  35195. 250 ENDIF
  35196. 2.10
  35197. 260
  35198. 2.10
  35199. 270 PRINT ÉöNow saving relevant
  35200. 2.10
  35201.  sectoröÉ
  35202. 2.10
  35203. 280
  35204. 2.10
  35205. 290 SYS öADFS_DiscOpò,, 2, &C6400,
  35206. 2.10
  35207.  sector%, &400
  35208. 2.10
  35209. 300
  35210. 2.10
  35211. 310 PRINT öChange complete. Now use
  35212. 2.10
  35213.  disc as normal.ö
  35214. 2.10
  35215. 320 END
  35216. 2.10
  35217. Å   Thunder Monk passwords Ö the Thunder Monk passwords change from disc
  35218. to disc (or do they change from month to month? Ed), but they can be
  35219. found at address &4E400. Just find your level two password in the list
  35220. below and next two words will be used for levels three and four e.g. our
  35221. level two password is STEVES so the passwords for the next levels are
  35222. BIRTHDAY and MIDSUMMER.
  35223. 2.10
  35224. SHIRT JUMPER WELLIES Y-FRONTS LOVERS HEARTS CUPID VALENTINE DANIEL AND
  35225. SIMONS BIRTHDAY JOKES SHOWERS FOOL SPRING POLE EXAMS SUNNY STUDY STEVES
  35226. BIRTHDAY MIDSUMMER WARMER HOLIDAYS MAJORCA SUNHAT HOTTER RESULTS FAILED
  35227. PASSED PISSUP SCORCHER RESTART SUNBURN ARCHIE SPOOK SHIVER HALLOWEEN
  35228. COOLING BONFIRE WEEEEEE FIREWORKS CHILLY CHRISTMAS HOLLY PRESENTS MERRY!
  35229. 2.10
  35230. (Dæyou get the significance of the passwords?? Ed.)
  35231. 2.10
  35232. Å   View to FWP Ö When using the utility provided with First Word Plus
  35233. to convert View files, Robert Leon noted that the left margin default
  35234. (in the Print File dialogue window) should be changed to 4, otherwise
  35235. the file is not printed properly.
  35236. 2.10
  35237. Å   Using 1st Mail for multi-column printouts Ö David Scott Ö Text which
  35238. is to be printed in more than one column is first prepared with First
  35239. Word Plus and it is at this stage that preparations must be made for the
  35240. print format. The text format must suit the final required column width
  35241. otherwise First Mail will ignore the instructions to print out in multi
  35242. columns.
  35243. 2.10
  35244. An example will show how to lay out the text. Suppose that you require
  35245. two columns each 31 characters wide set side by side on a 65 character
  35246. wide sheet. This will be possible as it allows 3 characters for the
  35247. central white column since
  35248. 2.10
  35249.  31 + 3 + 31 = 65
  35250. 2.10
  35251. The text must be prepared using a line length of 31 characters. The page
  35252. markings in First Word Plus will show final page 1 column 1 as page 1,
  35253. final page 1 column 2 as page 2, final page 2 column 1 as page 3 and so
  35254. on.
  35255. 2.10
  35256. When the text has been fully prepared enter First Mail and follow the
  35257. instructions given on pages 196 and 197 of the manual. The number of
  35258. columns must be set to 2 in this example.
  35259. 2.10
  35260. Å   Another possible bug in First Mail Ö David Leckie Ö When using First
  35261. Word Plus with the ruler set to double line spacing, continuous text,
  35262. i.e. no returns are double spaced but text followed with a return is not
  35263. double spaced as you would expect.
  35264. 2.10
  35265. However when a First Mail mail-merge is done from the file, the mrg file
  35266. contains double spaced text where there was single spaced text in the
  35267. original doc. Thus if you want, say, your address lines to be double
  35268. spaced then they should be a RETURN between each line in the doc file
  35269. only if you are not going to do a First Mail mail merge. If you are
  35270. doing a mail merge then they should be single spaced i.e. no RETURNS
  35271. because after the mail merge double line spacing will be inserted! Very
  35272. funny!
  35273. 2.10
  35274. Å   öMemallocò module Ö John Fidler was playing with the !Lander program
  35275. in RISC-OS when he realised that it should not have run with the
  35276. configuration settings on his machine. He looked in the !Lander
  35277. directory (by clicking on the icon in the directory viewer while holding
  35278. the <shift> key) and found the Memalloc module.
  35279. 2.10
  35280. This module provides nine new star commands, which allow you to check
  35281. and alter the size of various memory pools i.e. system heap, RMA, screen
  35282. area, sprite area and font cache.
  35283. 2.10
  35284. ==> Help on keyword MemAlloc
  35285. 2.10
  35286. Module is: MemAlloc util 0.11 (06 Dec 1988)
  35287. 2.10
  35288. Commands provided:
  35289. 2.10
  35290. SystemSize RMASize ScreenSize SpriteSize FontSize
  35291. 2.10
  35292. RAMFSSize RMAFree SpriteFree FontFree
  35293. 2.10
  35294. Å   Desktop ScreenSize configuration Ö When using the desktop, the
  35295. memory allocated to the screen area is regulated by the desktop screen
  35296. mode and not the configuration setting e.g. if you are in mode 12 then
  35297. the screen area will have 80k allocated to it (or 96k for the 400
  35298. series).
  35299. 2.10
  35300. Å   Desktop startup commands Ö When starting the desktop using *Desktop,
  35301. you can make the Archimedes run a file or perform a star command. This
  35302. facility could be used to start the desktop up in a predefined state.
  35303. 2.10
  35304. ==> Help on keyword Desktop
  35305. 2.10
  35306. *Desktop starts up any dormant Wimp modules, and also passes an optional
  35307. 2.10
  35308. *command or file of *commands to Wimp_StartTask.
  35309. 2.10
  35310. Syntax: *Desktop [<*command> | -File <filename>]
  35311. 2.10
  35312. Å   Converting ArcTerm 6.01 to RISC-OS Ö Arc-Term 6.01 will work under
  35313. RISC-OS if you make a !Run file in the !ArcTerm application directory:
  35314. 2.10
  35315. RMEnsure InternationalKeyboard 0.17
  35316. 2.10
  35317. RMReInit InternationalKeyboard
  35318. 2.10
  35319. DIR <Obey$Dir>.!ArcTerm
  35320. 2.10
  35321. Run ArcTerm
  35322. 2.10
  35323. Å   Extra Options for the Copy Command Ö The new User Guide (page 208)
  35324. lists a number of new options for the Copy command which considerably
  35325. extend its usefulness. The L and N options are par-ticularly useful for
  35326. performing backups from hard disc to floppy disc. Thus the command:
  35327. 2.10
  35328.  *Copy HD::$.A.* FL::$.* ~CFQR
  35329. 2.10
  35330. will make a quick backup, without confirmation, of all the files and
  35331. subdirectories in directory A of the hard disc named HD onto the floppy
  35332. disc named FL. If however the option N is also added then only the files
  35333. which have changed since the last backup will be copied, thus reducing
  35334. the backup time consider-ably. If the L option is also added then even
  35335. more time is saved as the directories of both source and destination
  35336. disks are checked before any attempt is made to load the files
  35337. themselves.
  35338. 2.10
  35339. If suitable Copy commands are added to the end of an application !Run
  35340. file then an automatic backup of changed files can be made when you have
  35341. finished using the application. In this case it is vital to quote the
  35342. name of the required backup floppy disc so that a request to load it can
  35343. be given if it is not already in the drive.
  35344. 2.10
  35345. Å   RISC-OS RS423 Ö Richard House says that using RISC-OS he can now
  35346. communicate with his BBC Model B at 19200 baud, without any errors
  35347. (whereas under Arthur 1.2, even with the patch, he was limited to 9600
  35348. baud).
  35349. 2.10
  35350. Å   Diagram II using RAMdisc Ö Load the file öSetupò and change the ö8ò
  35351. in lines 10045, 10750, 10765, 10805 and 11325 to ö23ò. This will cause
  35352. it to access the ram-disk (assuming you copied Diagram II over to the
  35353. ram-disk) thereby running much faster during scrolling and saving wear
  35354. and tear on your floppy or hard disk. (J.Daniels of Pineapple Software)
  35355. 2.10
  35356. Å   MIDI !Maestro Ö One reader says that there is an undocumented
  35357. facility in the !Maestro application which can play a MIDI instrument if
  35358. the MIDI podule is fitted.
  35359. 2.10
  35360. Å   Typing control characters Ö If you wish to use a önon-keyboardò
  35361. character under RISC-OS, just hold down the <ALT> key and type in the
  35362. character number on the keypad.
  35363. 2.10
  35364. Å   RMReInit SpriteUtils Ö Many applications unplug modules and
  35365. reinitialise them later. Often, under RISC-OS, the SpriteUtils module
  35366. does not get reinitialised. If you have any problems loading sprites or
  35367. get the öSWI not knownò error, you can check whether your modules have
  35368. been reinitialised properly by typing *ROMModules.
  35369. 2.10
  35370. One reader says that ÉPacmaniaæ can be cured of this by adding the
  35371. following line to the !BOOT file:
  35372. 2.10
  35373. 935 *RMReInit SpriteUtils
  35374. 2.10
  35375. Å   Multi-Tasking Ö How many tasks can RISC-OS run simultaneously? The
  35376. manual doesnæt say, so I decided to find out by loading multiple copies
  35377. of the desktop clock. When I tried to load the 29th clock I got an error
  35378. message öToo many tasksò, making the upper limit 28.
  35379. 2.10
  35380. Å   Leaving the Desktop from a Command File Ö David Scott Ö The answer
  35381. to my own previous help query is actually quite simple when you know
  35382. how! The last command in the file, which must be an obey file, (it does
  35383. not work with an exec file) must be:
  35384. 2.10
  35385. *fx138,0,252
  35386. 2.10
  35387. which simulates pressing <control-shift-f12>.
  35388. 2.10
  35389. Å   Space for large applications Ö The methods used by Acorn and other
  35390. suppliers of application software to load their applications which
  35391. require a lot of space, seem to be both devious and, in many cases,
  35392. ineffective since they result in less space being available for the
  35393. application than under Arthur 1.2.
  35394. 2.10
  35395. The method illustrated below allows over 300k of data space in Logistix
  35396. or over 600k of memory with the PC Emulator on a 1Mbyte machine. The
  35397. technique is a three stage process and is illustrated for Logistix.
  35398. 2.10
  35399. Note that the machine will have to be reset after using the application
  35400. in order to restore all the normal modules and their facilities.
  35401. 2.10
  35402. Note also that the amount of free space will vary depending on the
  35403. configuration settings. In my case, these are 80k for the screen (Mode
  35404. 12) and 0K for System sprites, font cache and RAM FS.
  35405. 2.10
  35406. If you use Econet then the modules NetFS, NetPrint, BBCEconet, NetFiler
  35407. and NetStatus should also be killed in Stage 2. If you do not use Econet
  35408. then you will gain marginally more space for all applications by
  35409. *Unplugging these modules as I have done.
  35410. 2.10
  35411. Stage 1 Ö Set up the standard !Run file for the application so that it
  35412. sets a function key to execute the stage 2 file after quitting the
  35413. desktop.
  35414. 2.10
  35415. | >$.!Logistix.!Run
  35416. 2.10
  35417. IconSprites <Obey$Dir>.!Sprites
  35418. 2.10
  35419. Key1 Quit|MDir $|MExec $.!Logistix.Lgx1|M
  35420. 2.10
  35421. Fx138,0,252
  35422. 2.10
  35423. Fx138,0,129
  35424. 2.10
  35425. Stage 2 Ö This file must be an command file (not Obey). It clears the
  35426. temporary modules and then kills all the unwanted modules. A function
  35427. key is then set up to execute Stage 3 and the file ends by recovering
  35428. the freed space using the RMTidy com-mand which must be the last command
  35429. in the file.
  35430. 2.10
  35431. | >$.!Logistix.Lgx1
  35432. 2.10
  35433. RMClear
  35434. 2.10
  35435. RMKill Debugger
  35436. 2.10
  35437. RMKill Desktop
  35438. 2.10
  35439. RMKill WindowManager
  35440. 2.10
  35441. RMKill FontManager
  35442. 2.10
  35443. RMKill InternationalKeyboard
  35444. 2.10
  35445. RMKill SoundScheduler
  35446. 2.10
  35447. RMKill StringLib
  35448. 2.10
  35449. RMKill Percussion
  35450. 2.10
  35451. RMKill SpriteExtend
  35452. 2.10
  35453. RMKill Draw
  35454. 2.10
  35455. RMKill Hourglass
  35456. 2.10
  35457. RMKill Podule
  35458. 2.10
  35459. Key 1 *Obey $.!Logistix.Lgx2|M
  35460. 2.10
  35461. FX138 0 129
  35462. 2.10
  35463. RMTidy
  35464. 2.10
  35465. Stage 3 Ö This Obey file sets the current directory (it was cleared by
  35466. the radical effects of RMtidy) and then loads the Floating point
  35467. emulator and Logistix directly. The final line is an optional backup
  35468. command which automatically backs the new and changed data files up to a
  35469. floppy disc (named S1 in this case).
  35470. 2.10
  35471. | >$.!Logistix.Lgx2
  35472. 2.10
  35473. Dir $.!Logistix
  35474. 2.10
  35475. RMLoad $.!System.Modules.
  35476. 2.10
  35477. FPEmulator
  35478. 2.10
  35479. Lgx
  35480. 2.10
  35481. COPY :DJS.!Logistix.Sheet.* :S1.*
  35482. 2.10
  35483.  ~CFLNQ
  35484. 2.10
  35485. PC Emulator Ö The method is similar for stages 1 and 2 except the
  35486. following additional modules can be killed in stage 2: SystemDevices,
  35487. TaskManager, PaletteUtil, Filer, ADFSFiler, RAMFSFiler, ShellCLI and
  35488. RamFS. Stage 3 is not required as the line which sets the function key
  35489. termination command is:
  35490. 2.10
  35491. Key 1 PC.Emulate|M
  35492. 2.10
  35493. which enters the PC Emulator directly. Note that the PC directory must
  35494. be in the root and must be called PC otherwise the Emulator fails during
  35495. loading.
  35496. 2.10
  35497. Å   Getting First Word Plus started Ö further to the comments on page
  35498. 20/21, last month, it is not a good idea to use *MOUNT as First Word
  35499. Plus will then not allow you to change discs, *DRIVE should be used and
  35500. this works fine. My machine is configured to boot with the external
  35501. drive selected, which usually holds a ölibrary discò, which is how I
  35502. discovered the problem. First Word Plus now boots happily under RISC-OS,
  35503. including an amended version of the key press module which traps <ctrl-
  35504. f12> to provide a command line similar to that on the desk top Ö i.e.
  35505. scrolling up from the bottom of the screen. (Weæll try to get hold of
  35506. this for the monthly disc. Ed.)
  35507. 2.10
  35508. Å   First Word Plus from the RISC-OS desktop Ö create the following run
  35509. file:
  35510. 2.10
  35511. !Run
  35512. 2.10
  35513. | !Run for !First Word Plus+ version 0.01
  35514. 2.10
  35515. IconSprites <Obey$Dir>.!Sprites
  35516. 2.10
  35517. WimpSlot -min 400k
  35518. 2.10
  35519. set FirstWordPlus$Resources $.Resources.1wp.
  35520. 2.10
  35521. set FirstWordPlus$Docs &.1wp.
  35522. 2.10
  35523. echo<5><23><17><7><6><8><0><8><0>
  35524. 2.10
  35525. <0><0><0><0>
  35526. 2.10
  35527. run ö<FirstWordPlus$Resources>1wpò
  35528. 2.10
  35529. Å   First Mail under RISC-OS Ö David Leckie Ö While First Word Plus has
  35530. drawn a lot of comment, very little mention has been made First Mail,
  35531. the mail merge program that accompanies it.
  35532. 2.10
  35533. When run under RISC-OS the main window will not resize. Now this may not
  35534. seem like much of a problem but the trouble is that the printer window
  35535. is hidden under the main window and cannot be easily accessed.
  35536. 2.10
  35537. Fortunately the corners of the window are just visible and can be
  35538. clicked on. The printer driver window pops up when clicked on ok, but
  35539. while the destination printer window can be clicked on, the name of the
  35540. selected destination printer is still hidden. This problem is compounded
  35541. by the last line of the 1st paragraph on page 154 of the manual being
  35542. wrong. öThe four options Parallel Port, Serial Port, Network Port and
  35543. Disc will appear in rotation.
  35544. 2.10
  35545. They do not rotate in the order above. Parallel Port is the first and
  35546. Disk is the third not fourth but which is network and serial? Can
  35547. someone with Arthur please tell us?
  35548. 2.10
  35549. Thus, if you want to do a merge to parallel printer it works fine. For
  35550. disc, point to the corner of the window and give 2 clicks (not 3). If
  35551. you need serial or network, try 1 or 3 clicks.
  35552. 2.10
  35553. Thanks to Mark Burch who helped to crack the problem.
  35554. 2.10
  35555. Å   Installing Artisan Ö Sean Kelly Ö There are three tips: the first is
  35556. on getting Artisan to return control to the desktop without resetting
  35557. the system; the second is on putting Artisan in any chosen directory;
  35558. the third is not strictly related to RISC-OS, but is on persuading
  35559. Artisan to work with compressed screens.
  35560. 2.10
  35561. Returning to the desktop Ö When Artisan is installed as described on the
  35562. RISC-OS support disc, it does not return correctly to the desktop. The
  35563. following modification was made to the program on my A440, and works
  35564. perfectly:
  35565. 2.10
  35566. 1. Load program ART5 and, using the BASIC EDITOR, find the line: öDEF
  35567. PROCLARò
  35568. 2.10
  35569. 2. The next line should be a multi-statement line containing in-line
  35570. assembly code. If so, you have found the correct routine. Delete
  35571. everything on this line except for the first three statements and then
  35572. add ö:QUITò so that the new line reads:
  35573. 2.10
  35574. MODE12:OSCLIöFX4ò:OSCLIöUPò:QUIT
  35575. 2.10
  35576. 3. Rename the old ART5 (in case you have made a mistake) and save the
  35577. new version as ART5.
  35578. 2.10
  35579. This new version returns to the desktop, in the same condition as when
  35580. Artisan was called, when you quit Artisan.
  35581. 2.10
  35582. Altering the directory structure Ö When installed using the hard disc
  35583. install program, Artisan insists on living in a directory called
  35584. :4.$.Artisan. This can be changed Ö the following details relate to my
  35585. chosen directory of :4.$.APPS.!ARTISAN.
  35586. 2.10
  35587. 1. !RUN should be altered from the support disc version. The new version
  35588. is:
  35589. 2.10
  35590. ECHO <22><&8C>
  35591. 2.10
  35592. WIMPSLOT -MIN 200k
  35593. 2.10
  35594. DIR :4.$.APPS.!ARTISAN *** put your own directory here ***
  35595. 2.10
  35596. URD @ BASIC ART4
  35597. 2.10
  35598. In my case, the pathname of !RUN is ö:4.$.APPS. !ARTISAN.!RUNò. Before
  35599. changing !RUN, re-name the old one in case of accident.
  35600. 2.10
  35601. 2. Alter ART5 using the Basic Editor. Several lines need changing; in
  35602. each case the change consists of altering the given directory to point
  35603. to your new directory. The lines that need altering can be found by
  35604. searching for the following strings using the editor (they are all
  35605. unambiguous, but the case of each letter is crucial):
  35606. 2.10
  35607. cLare%=FALSE:
  35608. 2.10
  35609. A%=cLARESMI
  35610. 2.10
  35611. WHEN12:OSCLI
  35612. 2.10
  35613. WHEN1:OSCLIöLOAD
  35614. 2.10
  35615. OSCLIöCDIR
  35616. 2.10
  35617. OSCLIöDIR ò+ClA$+
  35618. 2.10
  35619. Preserve the old ART5 in case of problems.
  35620. 2.10
  35621. Å   Adapting Artisan for Compressed Screens Ö I use a modified version
  35622. of the screen compression routine originally published in Personal
  35623. Computer World magazine. It uses the commands *CSCREENLOAD and
  35624. *CSCREENSAVE to load and save compressed screens, and compressed screens
  35625. are given the filetype &010. The adaptation below will work equally well
  35626. with other com-pression routines with the proviso that the compressed
  35627. screen loading routine must recog-nize and correctly deal with normally
  35628. saved screens (filetype &FF9).
  35629. 2.10
  35630. 1. Load ART5 and modify it using the BASIC Editor (first rename ART5, in
  35631. case of errors). Immediately after the REM statements at the start of
  35632. the program, add these two lines (substituting your own compressed
  35633. screen save and load commands):
  35634. 2.10
  35635. *SET Alias$SCREENSAVE CSCREENSAVE %0
  35636. 2.10
  35637. *SET Alias$SCREENLOAD CSCREENLOAD %0
  35638. 2.10
  35639. Substitute the names of your own commands for CSCREENSAVE and
  35640. CSCREENLOAD.
  35641. 2.10
  35642. 2. Find DEFPROCcLaRESM with the editor. Look about 14 lines down and
  35643. there will be a line beginning with WHEN&FF9. Four lines further down
  35644. should be a line beginning with ENDIF. Add two new lines after this
  35645. ENDIF line (substituting your own compressed screen filetype):
  35646. 2.10
  35647. WHEN &010
  35648. 2.10
  35649. RES%=3:mIC%=ReSM%:ReSM%+=1:cLarESM%=7
  35650. 2.10
  35651. 3. Find DEFPROCPS with the editor. Look about seventeen lines down and
  35652. there will be a line beginning with WHEN&FF9. Six lines further down
  35653. should be a line beginning with ENDIF. Add two new lines after this
  35654. ENDIF line (substituting your own compressed screen filetype):
  35655. 2.10
  35656. WHEN &010
  35657. 2.10
  35658. PROCGw(laRES%): clArES%=4
  35659. 2.10
  35660. The modified version of ART5 will correctly handle compressed and
  35661. uncompressed screens for loading, and will normally save screens in
  35662. compressed form.
  35663. 2.10
  35664. Å   RISC-OS Postscript Printer Drivers Ö One of our readers can only use
  35665. a laser printer from an Apple Mac, but wanted to obtain good quality
  35666. images of the documents that he produced in !Draw and !Edit. In order to
  35667. do this he redirected the output of the !PrinterPS to a file and
  35668. Éportedæ the file across to the Mac. The reason why this works is
  35669. because the output of !PrinterPS application is straight ASCII Post
  35670. script text, so in theory, the resulting file could be used by any
  35671. Postscript set up.
  35672. 2.10
  35673. Å   Configuring !PrinterDM Ö some readers have had problems outputting
  35674. to their dot matrix printers. This might be because the !PrinterDM
  35675. application must be configured for the printer you are using. This can
  35676. be done by clicking, with <select>, on the printer icon (once installed)
  35677. and then clicking on the printer name that appears in a window, until
  35678. the name of your printer appears. Then select the öSave Choiceò option
  35679. on the !PrinterDM menu. The printers that !PrinterDM supports are: Epson
  35680. FX, LQ, and LQ-850 compatibles and the NEC Pin-Writer P6 plus.
  35681. 2.10
  35682. Å   RISC-OS multisync text scaling solution! Ö Richard Averill Ö If you
  35683. turn back to Archive 2.9 p14, you will see the problem of text scaling
  35684. in multisync modes raised. Having also experienced this problem, I tried
  35685. to solve it.
  35686. 2.10
  35687. Firstly, I tried using the output to sprites feature to modify this.
  35688. Since this did not alter the size of the font at all, I then tried a
  35689. more interesting method. I knew that the standard vdu 5 font size was
  35690. 8x8 pixels, so I ran the following program to tell me which locations in
  35691. the operating systemæs workspace (&0000-&7FFF) contained the value 8.
  35692. 2.10
  35693. 10 REM > $.TextSize.Find8
  35694. 2.10
  35695. 20 REM (C) Richard Averill, 1989.
  35696. 2.10
  35697. 30 FOR I%=0 TO &7FFC STEP 4
  35698. 2.10
  35699. 40 IF !I%=8 THEN PRINT ~I%;
  35700. 2.10
  35701. 50 NEXT
  35702. 2.10
  35703. I then had a list of locations, so I set vdu 5 mode and *Memoryæed each
  35704. of the locations to have a closer look. Storing 16 in the second
  35705. location (&1360) caused the x text size to be doubled! There were 3 more
  35706. 8És consecutively after this value, so after a little testing I came to
  35707. the conclusion shown by the following table:
  35708. 2.10
  35709. Address   Contents
  35710. 2.10
  35711. &1360   x size
  35712. 2.10
  35713. &1364   y size
  35714. 2.10
  35715. &1368   x spacing
  35716. 2.10
  35717. &136C   y spacing
  35718. 2.10
  35719. All values are given in pixels, so by default these are 8,8,8,8. The
  35720. WIMP manager changes the x and y values according to the x and y Éeigæ
  35721. factors read by swi OS_ReadModeVariable detailed in OS1.2 PRM pages
  35722. 124Ö126. Note that the values need not be multiples of 8, but the
  35723. characters will look rather odd otherwise!
  35724. 2.10
  35725. The following procedure will enable you to set the text size and
  35726. spacing. The syntax is PROCtextsize(x size, y size, x spacing, y
  35727. spacing).
  35728. 2.10
  35729. 10000 DEF PROCtextsize(x%,y%,sx%
  35730. 2.10
  35731. ,sy%)
  35732. 2.10
  35733. 10010 !&1360=x%
  35734. 2.10
  35735. 10020 !&1364=y%
  35736. 2.10
  35737. 10030 !&1368=sx%
  35738. 2.10
  35739. 10040 !&136C=sy%
  35740. 2.10
  35741. 10050 ENDPROC
  35742. 2.10
  35743. For example, PROCtextsize(16,8,16,8) will give you double width text
  35744. when in VDU 5 mode. This will be square in mode 12 etc. and of a
  35745. rectangular shape in mode 20 etc. The text spacing will usually be the
  35746. same as the text size.
  35747. 2.10
  35748. To set the default text size from the RISC-OS desktop (the answer to the
  35749. query,) run the following program (which is in the ö$.TextSizeò
  35750. directory of the monthly disc) from within the desktop, and it will
  35751. redraw the whole screen to enable the new size to take effect.
  35752. 2.10
  35753.  10 REM > $.TextSize.SetSize
  35754. 2.10
  35755.  20 REM (C) Richard Averill, 1989.
  35756. 2.10
  35757.  30 REM restores default text size and spacing in the RISC-OS desktop.
  35758. 2.10
  35759.  40
  35760. 2.10
  35761.  50 !&1360=8
  35762. 2.10
  35763.  60 !&1364=8
  35764. 2.10
  35765.  70 !&1368=8
  35766. 2.10
  35767.  80 !&136C=8
  35768. 2.10
  35769.  90 SYS öWimp_Initialiseò,200,
  35770. 2.10
  35771. &4B534154 TO task%
  35772. 2.10
  35773. 100 SYS öWimp_ForceRedrawò,-1,0,0,
  35774. 2.10
  35775. &FFFF,&FFFF
  35776. 2.10
  35777. 110 SYS öWimp_CloseDownò,task%,
  35778. 2.10
  35779. &4B534154
  35780. 2.10
  35781. 120 QUIT
  35782. 2.10
  35783. This will set the text size to 8 pixels, the same as under the Arthur
  35784. WIMP manager. So if you have a high resolution monochrome, the text will
  35785. become four times smaller in each direction than normal!
  35786. 2.10
  35787. Unfortunately, there is a slight problem. The RISC-OS WIMP assumes
  35788. scaling will be done to ensure that the size of the text is always 16x32
  35789. OS units and uses these values when calculating text widths/heights
  35790. instead of finding the sizes from the operating system. So any verti
  35791. cally centred text (such as window titles) will not be centred properly
  35792. in multisync modes!
  35793. 2.10
  35794. For real compatibility with Arthur 1.2 WIMP applications, you can save
  35795. the Arthur 1.2 WindowManager module from ROM to disc and *RMLoad this
  35796. into RISC-OS instead. The Arthur 1.2 WIMP module is in the ö$.TextSizeò
  35797. directory of this monthæs programs disc.
  35798. 2.10
  35799.  
  35800.  
  35801. Å   External drive hang-ups Ö  If you have an external 5.25ö drive
  35802. configured and it is not kept on-line (i.e. it is switched off) then the
  35803. machine hangs up if the ADFS is searching for a named disc which is not
  35804. in drive 0 at the time that the command was issued, e.g. when attempting
  35805. to copy file(s) from one 3.5ò disc to another. The solution appears to
  35806. be either always have the external drive switched on, or to configure it
  35807. out of the system during periods when it is switched off.
  35808. Å   GWBASIC to BBC BASIC Ö I wanted to convert a GWBASIC program to a
  35809. BBC BASIC one, but both BASICæs store programs with the keywords
  35810. tokenised. Therefore I needed the equivalent of the *SPOOL command. The
  35811. answer seems to be that from GWBASIC either:
  35812. SAVE öfilenameò,A
  35813. or
  35814. LIST ,öfilenameò
  35815. Both give a version of the listing which, when ported across via
  35816. putfile, can be *EXEC-uted.
  35817. Å   Mouse problems Ö I had a problem with my mouse. Sometimes when I
  35818. moved the mouse down, the pointer moved UP. At other times it worked
  35819. perfectly. I tried everything Ö including measuring the electronics
  35820. inside the mouse, and inside the keyboard, adjusting the sensitivity and
  35821. cleaning the inside and outside of the mouse. Finally I discovered that
  35822. the problem was a broken wire in the cable out from the mouse. Odd
  35823. Bakken
  35824. 2.9
  35825. Å   NEC multisync modifications Ö With a NEC multisync II monitor, I
  35826. found that the horizontal width of the picture was not optimal. There
  35827. was a black border on each side of the picture and, in modes 18-20, the
  35828. picture was even smaller, making the letters a little hard to read. I
  35829. called the local dealer and got a copy of their service manual. You can
  35830. adjust the horizontal size with coil L505. I got some improvement by
  35831. removing the core of the coil but not enough. So I shorted the coil
  35832. completely (after consulting the dealer, who said it would not harm the
  35833. monitor). By doing this I got a 10% wider picture. (I still have the
  35834. distortion of the top lines in mode 18-20.) Odd Bakken
  35835. 2.9
  35836. Å   OS_PrettyPrint Ö There has been very little in the literature about
  35837. the use of OS_PrettyPrint to avoid word wraparound in, for example, the
  35838. preparation of instruction notes at the beginning of a program. (You can
  35839. use SYS &44 instead of writing the full command). All that is needed is
  35840. a simple BASIC program such as :
  35841. 2.9
  35842.    10 SYS &44,ö<Block of words>ò
  35843. 2.9
  35844.    20 PRINT;ö ò;:REM Insert space
  35845. 2.9
  35846. or    20 PRINT:REM New Line
  35847. 2.9
  35848.    30 SYS &44,ö<Continuation of
  35849. 2.9
  35850.  text>ö
  35851. 2.9
  35852.    40 PRINT;ö ò;       etc.
  35853. 2.9
  35854. The text in line 30 continues from the point where it ended in line 10.
  35855. Unfortunately the OS command strips the leading and trailing spaces from
  35856. the block of text. The PRINT statements are therefore necess-ary to
  35857. separate the end of the text in line 10 from the beginning of the text
  35858. in line 30 or to force a new line. The word block length has the
  35859. standard BASIC line limitation which amounts to roughly three lines of
  35860. text in the 80 chars/line modes. The command works in any mode and by
  35861. judicious placing of PRINT and COLOUR statements you can have sections
  35862. of the text or even single words in colour.
  35863. 2.9
  35864. Å   Pipedream and the LC10 Ö To print in colour on a Star LC 10 colour
  35865. printer, if Pipedream is config-ured with a printer driver which
  35866. includes the follow-ing codes, the various printing styles available on
  35867. the Star LC 10 C can be selected when the printer is switched on, and
  35868. printed in colour.
  35869. 2.9
  35870.       On   Off   Description
  35871. 2.9
  35872.    H1   27 114 1   27 114 0   Red Text
  35873. 2.9
  35874.    H2   27 114 2    27 114 0   Blue Text
  35875. 2.9
  35876.    H3   27 114 3   27 114 0    Violet Text
  35877. 2.9
  35878.    H4   27 114 4   27 114 0   Yellow Text
  35879. 2.9
  35880.    H5   27 114 5    27 114 0   Orange Text
  35881. 2.9
  35882.    H6   27 114 6   27 114 0   Green Text
  35883. 2.9
  35884. Å   Pipedream line spacing Ö (Colton Softwareæs reply to a request for
  35885. 1.5 line spacing on Pipedream) Pipedream knows only integral line
  35886. spacing; single, double etc, but the line spacing on the printer can be
  35887. set independently by sending out some codes with the printer-on string
  35888. (PON). For example, PON       ESC ö2ò would give 1.5 line spacing on
  35889. Epson compatible printers.
  35890. 2.9
  35891. Å   Multi Sync Owners! Out here in New Zealand, the average multisync
  35892. monitor costs about ú60 more than the standard Acorn monitor. As a
  35893. result around 60-80% of Archimedes owners have multisyncæs. I havenæt a
  35894. clue as to why they are so much dearer in the U.K. but suggest that
  35895. someone somewhere is making a great deal of money! Most of the programs
  35896. available donæt provide a multisync option which is a real shame as that
  35897. extra 256 pixels make all the difference. Iæve tried to convert some
  35898. programs but havenæt had much luck except for Render Bender.
  35899. 2.9
  35900. To convert Render Bender proceed as follows:
  35901. 2.9
  35902. Make a new backup of your Render Bender System Disc. Label it öRender
  35903. Bender Modes 15 & 21ò or somesuch. Enter BASIC and load the main program
  35904. ö!RENDER.RENDERò. Change or add the following lines.
  35905. 2.9
  35906.    60 DIM loadadd &F100,sb1%32*1023
  35907. 2.9
  35908. :org=loadadd+&A100
  35909. 2.9
  35910.  2550 XRES=640:YRES=256:SC%=100:
  35911. 2.9
  35912.  DES=1000:IND=1.5:SKYCOL=13
  35913. 2.9
  35914. :SKYDEP=600:AVE=1:SHAD=1:SHGR=0
  35915. 2.9
  35916.  2950 IF YRES=256 AND SCRADD%<=
  35917. 2.9
  35918. &1FB0000 YRES=512:PROCbox
  35919. 2.9
  35920. (17,16,14,2,öHIGH*RESOLUTIONò
  35921. 2.9
  35922. ,14,0):ENDPROC
  35923. 2.9
  35924.  2960 YRES=256:PROCbox(17,16,14,2,
  35925. 2.9
  35926. öLOW*RESOLUTIONò,14,0):ENDPROC
  35927. 2.9
  35928.  3981 IF RES=320 THEN XRES=640:
  35929. 2.9
  35930. YRES=256
  35931. 2.9
  35932. 13590 vars!xlim=XL:vars!ylim=YL
  35933. 2.9
  35934. :vars!reso=XRES
  35935. 2.9
  35936. 14010 A$=LEFT$(name$,8):A$=A$+
  35937. 2.9
  35938. STR$FILFR%:IF YRES=256 ENS%
  35939. 2.9
  35940. =&28000 ELSE ENS%=&50000
  35941. 2.9
  35942. 14090 XL=XRES/SIZE%:YL=YRES/SIZE%
  35943. 2.9
  35944. :PROCcoeffin
  35945. 2.9
  35946. 14110 IF YRES=256 MODE15 ELSE MODE21
  35947. 2.9
  35948. 14190 IF YRES=256 MODE15 ELSE MODE21
  35949. 2.9
  35950. 14280 XL=XRES/SIZE%:YL=YRES/SIZE%
  35951. 2.9
  35952. :PROCcoeffin:SCROFF%=1
  35953. 2.9
  35954. :PROCisflooron
  35955. 2.9
  35956. 14290 IF YRES=256 MODE15 ELSE MODE21
  35957. 2.9
  35958. 15150 IF YRES=256 PROCbox(17,16,14,2,
  35959. 2.9
  35960. öLOW*RESOLUTIONò,14,1)ELSE PROCbox
  35961. 2.9
  35962. (17,16,14,2,öHIGH*RESOLUTIONò,14,1)
  35963. 2.9
  35964. 11320 GCOL63 TINT 255:VDU5:IF
  35965. 2.9
  35966.  YRES=256 PRINTTAB(0,31);öClick
  35967. 2.9
  35968.  Mouseö ELSE PRINTTAB(0,62);
  35969. 2.9
  35970. öClick Mouseò
  35971. 2.9
  35972. 14380 GCOL63 TINT255:IFYRES=256
  35973. 2.9
  35974.  PRINTTAB(0,31);öTime taken ò;
  35975. 2.9
  35976. :PROCtime(TI) :GCOL 25:PRINT;
  35977. 2.9
  35978. ö Click mouseò ELSE PRINTTAB(0,62);öTime taken ò; :PROCtime(TI):GCOL 25:
  35979. 2.9
  35980. PRINT;ö Click mouseò
  35981. 2.9
  35982. SAVE ö:0.$.!RE*.RENDERò
  35983. 2.9
  35984. Then to modify the Picture Compressor
  35985. 2.9
  35986. $.!RE*.UTIL*.PICCOMP
  35987. 2.9
  35988. *BASIC
  35989. 2.9
  35990. *LOAD :0.$.!RE*.UTIL*.PICCOMP 8F00
  35991. 2.9
  35992. *ACCESS :0.$.!RE*.UTIL*.PICCOMP WR
  35993. 2.9
  35994. !&90C0=&E3520015
  35995. 2.9
  35996. !&90C4=&03A0B805
  35997. 2.9
  35998. !&92F0=&E3500015
  35999. 2.9
  36000. !&92F4=&03A08805
  36001. 2.9
  36002. *SAVE :0.$.!RE*.UTIL*.PICCOMP 8F00+534
  36003. 2.9
  36004. *SETTYPE :0.$.!RE*.UTIL*.PICCOMP &FFA
  36005. 2.9
  36006. To modify the Animator
  36007. 2.9
  36008. *BASIC
  36009. 2.9
  36010. LOADö:0.$.!RE*.UTIL*.ANIROUTò
  36011. 2.9
  36012. 140DIM buff &50000,DUM 1:anipo%=DUM
  36013. 2.9
  36014. +&6000:PROCboot:!anipo%=0
  36015. 2.9
  36016. 1371IF !mode=21 length%=&50000
  36017. 2.9
  36018. 2251IF MODE=21 length%=&50000
  36019. 2.9
  36020. SAVE ö:0.$.!RE*.UTIL*.ANIROUTò
  36021. 2.9
  36022. Finally to get Render Bender going you need a new startup file
  36023. 2.9
  36024. *BUILD :0.$.Rend21
  36025. 2.9
  36026. *ECHO <22> <21>
  36027. 2.9
  36028. *SET RENDER :0.$.!RENDER
  36029. 2.9
  36030. *set OBEY$DIR adfs::0.$.!RENDER
  36031. 2.9
  36032. *set FROM$DESK 0
  36033. 2.9
  36034. *SET RendHard1 adfs::4.$.GRAPHICS.
  36035. 2.9
  36036. !Render \ or your path here
  36037. 2.9
  36038. *SET HardRoot $
  36039. 2.9
  36040. *RMLOAD <RENDER>.Utilities.FSLOAD
  36041. 2.9
  36042. *RMLOAD <RENDER>.Utilities.PicComp
  36043. 2.9
  36044. *BASIC <RENDER>.START
  36045. 2.9
  36046. <Escape>
  36047. 2.9
  36048. *SETTYPE :0.$.Rend21 &FFE
  36049. 2.9
  36050. Then to run Render Bender using:
  36051. 2.9
  36052. *CO. SCR. 320K
  36053. 2.9
  36054. <ctrl-break>
  36055. 2.9
  36056. *:0.$.Rend21
  36057. 2.9
  36058. All this is supplied on the monthly program disc as a series of exec
  36059. files so to modify Render Bender you just do this (where <comment>=just
  36060. that!)
  36061. 2.9
  36062. <insert Render Bender Disc>
  36063. 2.9
  36064. LOADö:0.!RENDER.RENDERò
  36065. 2.9
  36066. <insert program disc and *MOUNT or
  36067. 2.9
  36068.  use winnie>
  36069. 2.9
  36070. *EXEC Rendermods.RendMods
  36071. 2.9
  36072. <insert Render disc and *MOUNT>
  36073. 2.9
  36074. SAVE ö:0.$.!RENDER.RENDERò
  36075. 2.9
  36076. LOAD ö:0.!RENDER.UTIL*.ANIROUTò
  36077. 2.9
  36078. <insert my disc and *MOUNT or use
  36079. 2.9
  36080.  winnie>
  36081. 2.9
  36082. *EXEC Rendermods.AniMods
  36083. 2.9
  36084. <insert Render disc and *MOUNT>
  36085. 2.9
  36086. SAVE ö:0.!RENDER.UTIL*.ANIROUTò
  36087. 2.9
  36088. COPY Rend21 across to $ <On Render
  36089. 2.9
  36090.  Disc!>
  36091. 2.9
  36092. *WIPE $.!RE*.U*.PICCOMP F~C <get rid
  36093. 2.9
  36094.  of old PicComp>
  36095. 2.9
  36096. COPY PicComp across to $.!RENDER.
  36097. 2.9
  36098. UTILITIES <On Render Disc!>
  36099. 2.9
  36100. then you should be ready to go!
  36101. 2.9
  36102. Å   Eigenvalues of a matrix Ö The following program is meant for readers
  36103. who are interested in the determination of eigenvalues of a matrix. It
  36104. is based on the idea that the eigenvalues of a matrix do not change by a
  36105. similarity transformation. Decomposing a square, symmetric matrix S in
  36106. its lower and upper triangular forms (L and U respectively satisfying
  36107. LU=S) gives a new matrix UL having the same eigenvalues as S, since UL =
  36108. (U^Ö1)ULU. It can be proved that by repeating this process, a matrix is
  36109. obtained containing zero elements, except for the eigenvalues residing
  36110. on the main diagonal.
  36111. 2.9
  36112. Consider an arbitrary matrix M, having a number of rows equal to or
  36113. greater than its number of columns. Then MæM (MÉ standing for transposed
  36114. of M) is a square, symmetric matrix having the same eigen-values as M.
  36115. Some of these values may equal zero indicating that the dimensionality
  36116. of M is smaller than its number of columns. Or in other words, the
  36117. matrix spans an x-dimensional space, where x equals the number of non-
  36118. zero eigenvalues of M.
  36119. 2.9
  36120.   10 REM >Eig_values
  36121. 2.9
  36122.   20 :
  36123. 2.9
  36124.   30 ********************************
  36125. 2.9
  36126.   40 REM Eigenvalues of an arbitrary
  36127. 2.9
  36128.   50 REM matrix.  E.D. Engelhardt,
  36129. 2.9
  36130.  March 1989
  36131. 2.9
  36132.   60 ********************************
  36133. 2.9
  36134.   70 :
  36135. 2.9
  36136.   80 PROCinit
  36137. 2.9
  36138.   90 :
  36139. 2.9
  36140.  100 PROCmenu
  36141. 2.9
  36142.  110 :
  36143. 2.9
  36144.  120 PROCinput
  36145. 2.9
  36146.  130 :
  36147. 2.9
  36148.  140 start%=TIME
  36149. 2.9
  36150.  150 PROCmain
  36151. 2.9
  36152.  160 end%=TIME
  36153. 2.9
  36154.  170 :
  36155. 2.9
  36156.  180 PROCprint
  36157. 2.9
  36158.  190 END
  36159. 2.9
  36160.  200 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  36161. 2.9
  36162.  210 DEFPROCinit
  36163. 2.9
  36164.  220 @%=&0A0A:CLS
  36165. 2.9
  36166.  230 ENDPROC
  36167. 2.9
  36168.  240 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  36169. 2.9
  36170.  250 DEFPROCmenu
  36171. 2.9
  36172.  260 OFF
  36173. 2.9
  36174.  270 PRINTTAB(31,12)öEIGENVALUESòÉ
  36175. 2.9
  36176.  280 PRINTTAB(27,14)ö[1] Random matrixò
  36177. 2.9
  36178.  290 PRINTTAB(27,15)ö[2] Fixed demo
  36179. 2.9
  36180.  5x4 matrixö
  36181. 2.9
  36182.  300 PRINTTAB(27,16)ö[3] Fixed demo
  36183. 2.9
  36184.  4x4 matrixö
  36185. 2.9
  36186.  310 ENDPROC
  36187. 2.9
  36188.  320 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  36189. 2.9
  36190.  330 DEFPROCinput
  36191. 2.9
  36192.  340 while=TRUE
  36193. 2.9
  36194.  350 WHILE while
  36195. 2.9
  36196.  360   CASE GET$ OF
  36197. 2.9
  36198.  370   WHEN ö1ò:while=FALSE:ON
  36199. 2.9
  36200.  380     REM Generate random matrix M,
  36201. 2.9
  36202.  col% columns and row% rows
  36203. 2.9
  36204.  390     REPEAT:
  36205. 2.9
  36206. INPUTÉö Rows            : ò
  36207. 2.9
  36208. row%:UNTIL row%>0
  36209. 2.9
  36210.  400     REPEAT:INPUTÉö Columns
  36211. 2.9
  36212. <= rows : öcol%:UNTIL col%
  36213. 2.9
  36214. <=row% AND col%>0
  36215. 2.9
  36216.  410     CLS:
  36217. 2.9
  36218. PRINTÉö Rows       : òSTR$
  36219. 2.9
  36220. row%Éö Columns    : òSTR$col%
  36221. 2.9
  36222.  420     row%-=1:col%-=1
  36223. 2.9
  36224.  430     DIM M(row%,col%)
  36225. 2.9
  36226.  440     FORr%=0TOrow%:FORc%=0TOcol%
  36227. 2.9
  36228.  450       M(r%,c%)=RND(1)*SGN(0.5-
  36229. 2.9
  36230. RND(1))
  36231. 2.9
  36232.  460     NEXT:NEXT
  36233. 2.9
  36234.  470     :
  36235. 2.9
  36236.  480   WHEN ö2ò:while=FALSE:ON
  36237. 2.9
  36238.  490     REM *** Fixed data for demo
  36239. 2.9
  36240.  5x4 matrix having one zero
  36241. 2.9
  36242.  eigenvalue
  36243. 2.9
  36244.  500     CLS:PRINTÉö Rows       : 5ò
  36245. 2.9
  36246. Éö Columns    : 4ò
  36247. 2.9
  36248.  510     row%=4:col%=3:DIM M(4,3)
  36249. 2.9
  36250.  520     M(0,0)=4:M(0,1)=3:M(0,2)=2:
  36251. 2.9
  36252. M(0,3)=1
  36253. 2.9
  36254.  530     M(1,0)=2:M(1,1)=4:M(1,2)=1:
  36255. 2.9
  36256. M(1,3)=3
  36257. 2.9
  36258.  540     M(2,0)=6:M(2,1)=7:M(2,2)=3:
  36259. 2.9
  36260. M(2,3)=4
  36261. 2.9
  36262.  550     M(3,0)=8:M(3,1)=11:M(3,2)=4:
  36263. 2.9
  36264. M(3,3)=7
  36265. 2.9
  36266.  560     M(4,0)=8:M(4,1)=6:M(4,2)=4:
  36267. 2.9
  36268. M(4,3)=7
  36269. 2.9
  36270.  570     :
  36271. 2.9
  36272.  580   WHEN ö3ò:while=FALSE:ON
  36273. 2.9
  36274.  590     REM Fixed data for demo 4x4
  36275. 2.9
  36276. matrix having four eigenvalues
  36277. 2.9
  36278.  600     CLS:PRINTÉö Rows       : 4ò
  36279. 2.9
  36280. Éö Columns    : 4ò
  36281. 2.9
  36282.  610     row%=3:col%=3:DIM M(3,3)
  36283. 2.9
  36284.  620     M(0,0)=1.00:M(0,1)=0.42:
  36285. 2.9
  36286. M(0,2)=0.54:M(0,3)=0.66
  36287. 2.9
  36288.  630     M(1,0)=0.42:M(1,1)=1.00:
  36289. 2.9
  36290. M(1,2)=0.32:M(1,3)=0.44
  36291. 2.9
  36292.  640     M(2,0)=0.54:M(2,1)=0.32:
  36293. 2.9
  36294. M(2,2)=1.00:M(2,3)=0.22
  36295. 2.9
  36296.  650     M(3,0)=0.66:M(3,1)=0.44:
  36297. 2.9
  36298. M(3,2)=0.22:M(3,3)=1.00
  36299. 2.9
  36300.  660   ENDCASE
  36301. 2.9
  36302.  670 ENDWHILE
  36303. 2.9
  36304.  680 ENDPROC
  36305. 2.9
  36306.  690 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ-
  36307. 2.9
  36308.  700 DEFPROCmain
  36309. 2.9
  36310.  710 DIM Mt(col%,row%),MtM(col%,col%)
  36311. 2.9
  36312. ,E(col%)
  36313. 2.9
  36314.  720 PROCtranspose(M(),Mt())
  36315. 2.9
  36316.  730 PROCsquare_sym(M(),Mt(),MtM())
  36317. 2.9
  36318.  740 PROCeigenvalues(MtM(),E())
  36319. 2.9
  36320.  750 ENDPROC
  36321. 2.9
  36322.  760 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ-
  36323. 2.9
  36324.  770 DEFPROCtranspose(R(),Rt())
  36325. 2.9
  36326.  780 LOCAL v%,h%
  36327. 2.9
  36328.  790 v%=DIM(R(),1):h%=DIM(R(),2)
  36329. 2.9
  36330.  800 FOR r%=0 TO v%:FOR c%=0 TO h%:
  36331. 2.9
  36332. Rt(c%,r%)=R(r%,c%):NEXT:NEXT
  36333. 2.9
  36334.  810 ENDPROC
  36335. 2.9
  36336.  820 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ-
  36337. 2.9
  36338.  830 DEFPROCsquare_sym(R(),Rt(),RtR())
  36339. 2.9
  36340.  840 RtR()=Rt().R()
  36341. 2.9
  36342.  850 ENDPROC
  36343. 2.9
  36344.  860 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ-
  36345. 2.9
  36346.  870 DEFPROCeigenvalues(RtR(),EV())
  36347. 2.9
  36348.  880 REM Eigenvalues are determined
  36349. 2.9
  36350.  from R-transposed x R, using the property that eigenvalues do not
  36351. change by a similarity
  36352. 2.9
  36353.  890 REM ***  transformation. Rt.R is
  36354. 2.9
  36355.  decomposed in a lower and upper
  36356. 2.9
  36357.  tri-angular matrix, Rt.R=LU. Then
  36358. 2.9
  36359.  UL has the same eigenvalues as LU.
  36360. 2.9
  36361.  900 REM Repeating this process
  36362. 2.9
  36363.  iterates all non-diagonal elements              to 0, and the diagonal
  36364. elements
  36365. 2.9
  36366.  to the eigenvalues.
  36367. 2.9
  36368.  910 :
  36369. 2.9
  36370.  920 REM E.D. Engelhardt, March 1989
  36371. 2.9
  36372.  930 :
  36373. 2.9
  36374.  940 LOCAL L(),U(),UL(),h%,c%,r%,t%,
  36375. 2.9
  36376. repeat,max,iterations%
  36377. 2.9
  36378.  950 h%=DIM(EV(),1)
  36379. 2.9
  36380.  960 DIM L(h%,h%),U(h%,h%),UL(h%,h%)
  36381. 2.9
  36382.  970 :
  36383. 2.9
  36384.  980 PRINTTAB(1,30)öIteration       : ò
  36385. 2.9
  36386.  :REM This info may be left out
  36387. 2.9
  36388.  990 :
  36389. 2.9
  36390. 1000 repeat=TRUE
  36391. 2.9
  36392. 1010 REPEAT
  36393. 2.9
  36394. 1020   iterations%+=1:PRINTTAB(13,30)
  36395. 2.9
  36396. iterations%  :REM may be left out
  36397. 2.9
  36398. 1030   REM Calculate lower triangle
  36399. 2.9
  36400.  L of RtR
  36401. 2.9
  36402. 1040   FOR c%=0 TO h%:FOR r%=c% TO h%
  36403. 2.9
  36404. 1050     L(r%,c%)=RtR(r%,c%):t%=c%-1
  36405. 2.9
  36406. 1060     IF t%>=0 FORt%=t%TO0STEP-1:
  36407. 2.9
  36408. L(r%,c%)=L(r%,c%)-L(r%,t%)
  36409. 2.9
  36410. *L(c%,t%):NEXT
  36411. 2.9
  36412. 1070     IF r%>c% THEN L(r%,c%)=
  36413. 2.9
  36414. L(r%,c%)/L(c%,c%)
  36415. 2.9
  36416. 1080     IF r%=c% IF L(r%,c%)<0 THEN:
  36417. 2.9
  36418. FOR t%=0 TO h%:L(t%,c%)=0:NEXT
  36419. 2.9
  36420. 1090     IF r%=c% L(r%,c%)=SQR L(r%,c%)
  36421. 2.9
  36422. 1100     IF r%=c% AND L(r%,c%)=0 r%=h%
  36423. 2.9
  36424. 1110   NEXT:NEXT
  36425. 2.9
  36426. 1120   :
  36427. 2.9
  36428. 1130   PROCtranspose(L(),U())
  36429. 2.9
  36430. 1140   :
  36431. 2.9
  36432. 1150   REM Matrix similar to RtR (ie
  36433. 2.9
  36434.  having same eigenvalues) is UL
  36435. 2.9
  36436. 1160   UL()=U().L()
  36437. 2.9
  36438. 1170   :
  36439. 2.9
  36440. 1180   REM Determine if diagonals of
  36441. 2.9
  36442.  RtR and UL are equivalent
  36443. 2.9
  36444. 1190   t%=0
  36445. 2.9
  36446. 1200   REPEAT
  36447. 2.9
  36448. 1210     IF UL(t%,t%)<>RtR(t%,t%)
  36449. 2.9
  36450. :repeat=FALSE
  36451. 2.9
  36452. 1220     t%+=1:IF t%>h% repeat=FALSE
  36453. 2.9
  36454. 1230   UNTIL repeat=FALSE
  36455. 2.9
  36456. 1240   IF t%<=h% repeat=TRUE:RtR()=
  36457. 2.9
  36458. UL()
  36459. 2.9
  36460. 1250 UNTIL repeat=FALSE
  36461. 2.9
  36462. 1260 :
  36463. 2.9
  36464. 1270 REM Put eigenvalues smaller then
  36465. 2.9
  36466.  non-diagonal elements to zero
  36467. 2.9
  36468. 1280 FOR t%=0 TO h%:UL(t%,t%)=0:NEXT
  36469. 2.9
  36470. 1290 FOR r%=1 TO h%-1:FOR c%=1 TO r%
  36471. 2.9
  36472. 1300   IF ABS UL(r%,c%)>max max=ABS
  36473. 2.9
  36474.  UL(r%,c%)
  36475. 2.9
  36476. 1310 NEXT:NEXT
  36477. 2.9
  36478. 1320 FOR c%=0 TO h%
  36479. 2.9
  36480. 1330   EV(c%)=RtR(c%,c%):IF EV(c%)<=
  36481. 2.9
  36482. max EV(c%)=0
  36483. 2.9
  36484. 1340 NEXT
  36485. 2.9
  36486. 1360 ENDPROC
  36487. 2.9
  36488. 1370 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  36489. 2.9
  36490. 1380 DEFPROCprint
  36491. 2.9
  36492. 1390 VDU 14
  36493. 2.9
  36494. 1400 CLS:PRINTÉö Rows       : òSTR$
  36495. 2.9
  36496. row%Éö Columns    : òSTR$col%
  36497. 2.9
  36498. 1410 PRINTÉö Time(centisecs) : ò;STR$
  36499. 2.9
  36500. (end%-start%)Éæ
  36501. 2.9
  36502. 1420 PRINTö ******** Eigenvalues : òÉ
  36503. 2.9
  36504. 1430 FOR c%=0 TO col%
  36505. 2.9
  36506. 1440   PRINT E(c%)
  36507. 2.9
  36508. 1450 NEXT:PRINT
  36509. 2.9
  36510. 1460 VDU 15
  36511. 2.9
  36512. 1470 ENDPROC
  36513.  
  36514. Å   Floppy programs on hard discs Ö Hereæs the best method Iæve come
  36515. across of getting floppy programs to run on a HD machine. You need two
  36516. FFF type files (or Obey if you want) One called ÉFloppyæ should contain:
  36517. 2.8
  36518. *CON. Drive 0
  36519. 2.8
  36520. *CON. NoBoot
  36521. 2.8
  36522. The other called Hard should be:
  36523. 2.8
  36524. *CON. Drive 4
  36525. 2.8
  36526. *CON. Boot
  36527. 2.8
  36528. If you put these in the library you can then
  36529. 2.8
  36530. *Floppy
  36531. 2.8
  36532. <ctrl-break>
  36533. 2.8
  36534. <shift-break>
  36535. 2.8
  36536. do whatever else
  36537. 2.8
  36538. <ctrl-break>
  36539. 2.8
  36540. *DIR :4
  36541. 2.8
  36542. *hard
  36543. 2.8
  36544. <ctrl-break>
  36545. 2.8
  36546. (This assumes you have a !Boot on your hard disc.) Martyn Lovell
  36547. 2.8
  36548. Å   Head alignment problems? Ö If you are getting disc errors and
  36549. suspect that the problem might be head alignment, one way of confirming
  36550. this is to use the disc copier program that you will find on Share-ware
  36551. N╝2. The program does a check of the whole disc to find bad sectors. If
  36552. one of the heads is misal-igned, you will probably find that all the bad
  36553. sectors reported are on one or other of the heads. Then itæs time to
  36554. take it off to your local dealer for repair.
  36555. 2.8
  36556. Å   Hearsay Ö If you need to change modem baud rates with ATB3 or ATB0
  36557. after calling one remote system and before calling another, you can do
  36558. so by using a dial prefix in the modem driver edit screen by putting
  36559. öATB3Dò or öATB0Dò as appropriate.
  36560. 2.8
  36561. Å   Matrix Procedures and Functions Ö This was prompted by Steve Drainæs
  36562. article in Archive 2.1 p.17 where he stated that a numerical method for
  36563. the inverse of a square matrix needs a good guess of the inverse and
  36564. uses the transposed matrix as a starting point. His excellent program
  36565. has been timed to invert a 20 x 20 matrix to 1 part in 10^9 in approx-
  36566. imately 10 seconds.
  36567. 2.8
  36568. A good guess or even a desirable result can be ob-tained by a procedure
  36569. described below. It calculates an inverse of 20x20 matrix in about 280
  36570. centisec-onds giving an error in the non-diagonal elements of the
  36571. identity matrix of less than 1 part in 10^6.
  36572. 2.8
  36573. The method used is based on the following. The matrix M to be inverted
  36574. is premultiplied by its transposed MÉ, giving MæM. The result is
  36575. decomposed in a lower triangular matrix L satisfying the identity
  36576. LLæ=MæM. Then I, which is the inverse of L, can be determined in a
  36577. straight forward way. Matrix IæI thus equals the inverse of MæM, and
  36578. finally IæIMÉ gives the result wanted. This is correct as can be seen
  36579. when premultiplying a vector x by M giving a vector v, and solving for
  36580. x.
  36581. 2.8
  36582. Mx=v ==> MæMx=Mæv==> LLæx=Mæv ==> IæILLæx=IæIMæv ==> x=IæIMæv
  36583. 2.8
  36584. In fact, this is the least square solution for vector x, i.e. r
  36585. equations with c unknown variables ( r>=c ) are solved using the
  36586. criterium that the sum of the squares of the deviations to a solution of
  36587. vector x obtains a minimal value.
  36588. 2.8
  36589. The program presented below uses PROC lst_sq_inv to determine the
  36590. Éinverseæ Mi of any matrix M. If M is a square matrix then MiM = E and
  36591. also MMi = E, E being the identity matrix. As an Éextraæ, the determi
  36592. nant of the square matrix M can easily be calculated. To my knowledge
  36593. the method is numerically very stable.
  36594. 2.8
  36595.  10 REM >Matrix_Inv
  36596. 2.8
  36597.  20 :
  36598. 2.8
  36599.  30 *********************************
  36600. 2.8
  36601.  40 REM Inverting an arbitrary matrix
  36602. 2.8
  36603.  50 REM E.D. Engelhardt, March 1989
  36604. 2.8
  36605.  60 *********************************
  36606. 2.8
  36607.  70 :
  36608. 2.8
  36609.  80 REM *** Generate random matrix M,
  36610. 2.8
  36611.  col% columns and row% rows
  36612. 2.8
  36613.  90 CLS
  36614. 2.8
  36615. 100 PRINTÉö Inverting an arbitrary
  36616. 2.8
  36617.  matrixöÉ
  36618. 2.8
  36619. 110 REPEAT:INPUTö Rows            :
  36620. 2.8
  36621.  örow%:UNTIL row%>0
  36622. 2.8
  36623. 120 REPEAT:INPUTö Columns <= rows :
  36624. 2.8
  36625.  öcol%:UNTIL col%<=row% AND col%>0
  36626. 2.8
  36627. 130 CLS:PRINTÉö Rows    : òSTR$row%
  36628. 2.8
  36629. Éö Columns : òSTR$col%
  36630. 2.8
  36631. 140 row%-=1:col%-=1
  36632. 2.8
  36633. 150 DIM M(row%,col%)
  36634. 2.8
  36635. 160 FOR r%=0TOrow%:FOR c%=0TOcol%:
  36636. 2.8
  36637. M(r%,c%)=RND(1)*SGN(0.5-RND(1)) :NEXT:NEXT
  36638. 2.8
  36639. 170 :
  36640. 2.8
  36641. 180 start%=TIME
  36642. 2.8
  36643. 190 :
  36644. 2.8
  36645. 200 REM Determine the Éleast squareæ
  36646. 2.8
  36647.  inverse Mi of M. Result : Mi.M is equal to the identity matrix E.
  36648. 2.8
  36649.  If rows = cols also M.Mi = E.
  36650. 2.8
  36651. 210 :
  36652. 2.8
  36653. 220 DIM Mi(col%,row%):PROClst_sq_inv
  36654. 2.8
  36655. (M(),Mi())
  36656. 2.8
  36657. 230 end%=TIME
  36658. 2.8
  36659. 240 :
  36660. 2.8
  36661. 250 PRINTÉö Time(centisecs) : ò;
  36662. 2.8
  36663. STR$(end%-start%)Éæ
  36664. 2.8
  36665. 260 :
  36666. 2.8
  36667. 270 PROCprint
  36668. 2.8
  36669. 280 END
  36670. 2.8
  36671. 290 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ-300 DEFPROClst_sq_inv(R(),Ri())
  36672. 2.8
  36673. 310 REM Ri is Éleast squareæ inverse
  36674. 2.8
  36675.  of R, i.e. Ri.R = E (identity                matrix). If rows = cols
  36676. also
  36677. 2.8
  36678.  R.Ri = E.
  36679. 2.8
  36680. 320 REM Dimensions R(v%,h%),Ri(h%,v%)
  36681. 2.8
  36682.  ==> v% : rows , h% : columns
  36683. 2.8
  36684. 330 REM E.D. Engelhardt, March 1989
  36685. 2.8
  36686. 340   :
  36687. 2.8
  36688. 350 LOCAL RtR(),L(),I(),v%,h%,c%,r%,t%
  36689. 2.8
  36690. 360 v%=DIM(R(),1):h%=DIM(R(),2)
  36691. 2.8
  36692. 370 DIM RtR(h%,h%),L(h%,h%),I(h%,h%)
  36693. 2.8
  36694. 380 :
  36695. 2.8
  36696. 390 REM Determine transpose of R
  36697. 2.8
  36698. 400 FOR r%=0 TO v%:FOR c%=0 TO h%:
  36699. 2.8
  36700. Ri(c%,r%)=R(r%,c%):NEXT:NEXT
  36701. 2.8
  36702. 410 :
  36703. 2.8
  36704. 420 REM Calculate square matrix to be
  36705. 2.8
  36706.  inverted
  36707. 2.8
  36708. 430 RtR()=Ri().R()
  36709. 2.8
  36710. 440 :
  36711. 2.8
  36712. 450 REM Calc lower triangle L of RtR
  36713. 2.8
  36714. 460 FOR c%=0 TO h%:FOR r%=c% TO h%
  36715. 2.8
  36716. 470   L(r%,c%)=RtR(r%,c%):t%=c%-1
  36717. 2.8
  36718. 480   IF t%>=0 FOR t%=t%TO0STEP-1:
  36719. 2.8
  36720. L(r%,c%)=L(r%,c%)-L(r%,t%)*
  36721. 2.8
  36722. L(c%,t%):NEXT
  36723. 2.8
  36724. 490   IF r%>c% THEN L(r%,c%)=L(r%,c%)
  36725. 2.8
  36726. /L(c%,c%) ELSE L(r%,c%)=SQR L(r%,c%)
  36727. 2.8
  36728. 500 NEXT:NEXT
  36729. 2.8
  36730. 510 :
  36731. 2.8
  36732. 520 REM If R is square (rows = cols)
  36733. 2.8
  36734.  its determinant equals the product of the diagonal elements of L. The
  36735. determinant of RtR equals the
  36736. 2.8
  36737.  square of the determinant of L.
  36738. 2.8
  36739. 530 :
  36740. 2.8
  36741. 540 REM Invert triang matrix L to I
  36742. 2.8
  36743. 550 FOR c%=0 TO h%:FOR r%=c% TO h%
  36744. 2.8
  36745. 560   FOR t%=c% TO r%-1:I(r%,c%)=
  36746. 2.8
  36747. I(r%,c%)-L(r%,t%)*I(t%,c%):NEXT
  36748. 2.8
  36749. 570   IF r%>c% THEN I(r%,c%)=I(r%,c%)
  36750. 2.8
  36751. /L(r%,r%) ELSE I(r%,c%)=1/L(r%,r%)
  36752. 2.8
  36753. 580 NEXT:NEXT
  36754. 2.8
  36755. 590 :
  36756. 2.8
  36757. 600 REM Determine transpose L of
  36758. 2.8
  36759.  inverse triangle I
  36760. 2.8
  36761. 610 FOR r%=0 TO h%:FOR c%=0 TO
  36762. 2.8
  36763.  h%:L(c%,r%)=I(r%,c%):NEXT:NEXT
  36764. 2.8
  36765. 620 :
  36766. 2.8
  36767. 630 REM Inverse matrix of R is Ri
  36768. 2.8
  36769. 640 RtR()=L().I():Ri()=RtR().Ri()
  36770. 2.8
  36771. 650 :
  36772. 2.8
  36773. 660 ENDPROC
  36774. 2.8
  36775. 670 ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ-680 DEFPROCprint
  36776. 2.8
  36777. 690 VDU 14
  36778. 2.8
  36779. 700 PRINTö ******** Elements MatrixòÉ
  36780. 2.8
  36781. 710 FOR r%=0 TO row%:FOR c%=0 TO
  36782. 2.8
  36783.  col%:PRINT M(r%,c%):NEXT:PRINT:NEXT
  36784. 2.8
  36785. 720 PRINTö ******** Elements inverse
  36786. 2.8
  36787.  MatrixöÉ
  36788. 2.8
  36789. 730 FOR r%=0 TO col%:FOR c%=0 TO row%
  36790. 2.8
  36791. :PRINT Mi(r%,c%):NEXT:PRINT:NEXT
  36792. 2.8
  36793. 740 DIM E(col%,col%)
  36794. 2.8
  36795. 750 E()=Mi().M()
  36796. 2.8
  36797. 760 PRINTö ******** Elements of
  36798. 2.8
  36799.  Inverse_Matrix.MatrixöÉ
  36800. 2.8
  36801. 770 FOR r%=0 TO col%:FOR c%=0 TO col%
  36802. 2.8
  36803. :PRINT E(r%,c%):NEXT:PRINT :NEXT
  36804. 2.8
  36805. 780 VDU 15
  36806. 2.8
  36807. 790 ENDPROC
  36808. 2.8
  36809. Å   Repton 3 Ö There is a bug in screen E of WORK, so to get past it,
  36810. you will need to know the next password which is COUNTER.
  36811. 2.8
  36812. Å   Three floppies under Arthur Ö Here is a solution to the problem of
  36813. three floppies on the desktop (Archive 2.7.12). Enter the following in a
  36814. file called ÉDesktopæ in the library directory, use *BUILD or a text
  36815. editor such as Twin to enter it.
  36816. 2.8
  36817. *BASIC
  36818. 2.8
  36819. LOAD öDESKFS:DeskTopMgr2ò
  36820. 2.8
  36821. 11 OSCLI öDESKFSò
  36822. 2.8
  36823. 12291 IFfloppies%>2 THEN PROCsys_
  36824. 2.8
  36825. addtoiconbar_left(öfloppy2ò,
  36826. 2.8
  36827. ödisc3.5ò,&301A,icon_fgcol,
  36828. 2.8
  36829. icon_bgcol, icon_width%)
  36830. 2.8
  36831. 28600 DEFFNselect_floppy2
  36832. 2.8
  36833. 28610 =0
  36834. 2.8
  36835. 28620 DEFFNmenu_floppy2
  36836. 2.8
  36837. 28630 PROCsys_definetextmenu
  36838. 2.8
  36839. (öfloppy2ò,öfloppy :2ò,öFormatò)
  36840. 2.8
  36841. 28640 =0
  36842. 2.8
  36843. 28650 DEFFNaction_floppy2
  36844. 2.8
  36845. 28660 =FNfilehandler_open_dir
  36846. 2.8
  36847. (ö-adfs-:2ò,öFloppy :2ò,0)
  36848. 2.8
  36849. 28670 DEFFNmenuselect_floppy2
  36850. 2.8
  36851. 28680 CASEitem0% OF
  36852. 2.8
  36853. 28690 WHEN0: PROCfilehandler_
  36854. 2.8
  36855. formatfloppy(ö2ò)
  36856. 2.8
  36857. 28700 ENDCASE
  36858. 2.8
  36859. 28710 =0
  36860. 2.8
  36861. RUN
  36862. 2.8
  36863. When you wish to use the three floppy version of the desktop, instead of
  36864. typing *DeskTop, enter */DeskTop, this will ensure that the upgrade
  36865. program in the library directory is run instead of activating the
  36866. desktop in the normal way.
  36867. 2.8
  36868. Unfortunately, there is no way of permanently updating the desktop so
  36869. that you can power up into the desktop with three floppies since it is
  36870. held in ROM which obviously cannot be changed.
  36871. 2.8
  36872. If you wish to power up in the desktop with three floppies then you
  36873. could do the following:
  36874. 2.8
  36875. *Configure Boot
  36876. 2.8
  36877. *Configure Language 0
  36878. 2.8
  36879. and setup a !Boot file as follows:
  36880. 2.8
  36881. */Desktop
  36882. 2.8
  36883. ensure that when you switch the computer on, your boot disc is in drive
  36884. 0 (or your default drive as configured with *Configure Drive) and the
  36885. desk top will appear after a short delay.
  36886. 2.8
  36887. N.B. No damage will be caused to the disc in powering up with the disc
  36888. in the drive since the latch will be across the disc surface and the
  36889. disc heads not in contact with the disc surface.
  36890. 2.8
  36891. The other solution is to upgrade to RISC-OS which can support up to four
  36892. floppies! Darren Jackson
  36893. 2.8
  36894. Å   Zarch Ö To put Zarch onto a hard disk, use....
  36895. 2.8
  36896. *UNPLUG SoundChannels
  36897. 2.8
  36898. *ZARCH
  36899. 2.8
  36900. When error occurs type the following,
  36901. 2.8
  36902. *RMREINIT SoundChannels
  36903. 2.8
  36904. *SAVE :4.ZARCHcopy 8000+20800
  36905. 2.8
  36906. *BUILD :4.ZARCHgo
  36907. 2.8
  36908. LOAD ZARCHcopy
  36909. 2.8
  36910. MEMORYA E1AC E1A0F00E
  36911. 2.8
  36912. CHANNELVOICE 1 6
  36913. 2.8
  36914. CHANNELVOICE 2 7
  36915. 2.8
  36916. CHANNELVOICE 3 8
  36917. 2.8
  36918. CHANNELVOICE 4 9
  36919. 2.8
  36920. GO 1FF30
  36921. 2.8
  36922. Then press <escape>. Type ZARCHgo to run the copy from hard disk. Tony
  36923. Porter
  36924. 2.8
  36925.  
  36926. 2.8
  36927. First Word Plus Extended Dictionary
  36928. 2.8
  36929. I was asked to review the First Word Plus Extended Dictionary which is
  36930. available from Science Frontiers. It seems unfair to review it in only
  36931. one paragraph, but Paulæs maxim is, öSpace in Archive is at a premium,
  36932. so say what is worth saying as briefly as possible, then shut up!ò
  36933. (Well, thatæs the jist of what I say! Ed.)
  36934. 2.8
  36935. First Word Plus Extended Dictionary comprises an 80,000 word dictionary
  36936. which replaces that in the Acorn package, and three specialized
  36937. supplementary dictionaries covering computer terms, geographical
  36938. locations and Christian names. It is an entirely competent package,
  36939. though necessarily not the most fascinating in content. If you need more
  36940. words in your dictionary, buy it, but if you need to work with large
  36941. documents, do not load it, as bigger dictionaries do take up more space.
  36942. 2.8
  36943. FWP Extended Dictionary costs ú6.95 (ú6.50 from Archive) and is produced
  36944. by Science Frontiers.
  36945. 2.8
  36946. From FWP to DTP?
  36947. 2.8
  36948. Although it is not strictly the business of the First Word Plus column,
  36949. I took a good look at the Desktop Publishing program when visiting the
  36950. Acorn stand at the Which Computer? Show. It should be available a few
  36951. weeks after RISC-OS and is reported to be öfinishedò and about to go
  36952. into production. However, it was apparently not the öfinishedò version
  36953. at the show. My informant assures me that the production version will be
  36954. even better, which should certainly be good indeed. Even the present
  36955. version has a Ésecretæ feature which is quite impressive and even Apple
  36956. cannot match it.
  36957. 2.8
  36958. <ctrlÖA> Solution?
  36959. 2.8
  36960. I have discovered why my ö<ctrl-a> makes a bleepò modules reported in
  36961. Archive 2.5 p. 18 absolutely refused to work: the answer is on the top
  36962. of page 34 of the Programmeræs Reference Manual: never use OS_WriteC
  36963. routines when you have intercepted an interrupt. The solution (but donæt
  36964. hold your breath) is to insert a <ctrl-g> into the input buffer. This
  36965. works absolutely perfectly Ö except in FWP, where it is interpreted as a
  36966. call to read the ruler!!
  36967. 2.8
  36968. No-one else has produced a solution which actually works, so the small
  36969. prize is still unclaimed.
  36970. 2.8
  36971. Shareware disk N╝6
  36972. 2.8
  36973. We get a lot of enquiries about printer drivers. The problem is that we
  36974. do not have that many different kinds of printer, so cannot help much.
  36975. Besides, printer drivers are (however necessary and satisfactory a
  36976. solution they may be) a pain and a bore, except when they are to drive
  36977. the printer you use. I am trying to compile a disk of all the contrib
  36978. uted ögoodiesò, especially printer drivers and related information and
  36979. ideas. If you have a contribution, please let me have it in the next
  36980. couple of weeks. We have printer drivers for: Taxan-Kaga KP810 = Canon
  36981. PW 1080; Citizen 120; Epson LX800 and LQ500; Star LC10 and NL10;
  36982. Panasonic KXP1080; H-P DeskJet. Quite a few of these have interesting
  36983. variants and associated ideas which may be useful for doing the special
  36984. things you want to do with your printer.
  36985. 2.8
  36986. Once the shareware disk is available, printer driver enquiries will be
  36987. at the bottom of the pile!
  36988. 2.8
  36989. (Mike sent me a pre-release version of this which I published as
  36990. Shareware N╝6, thinking it was the finished article. Ooops! We will
  36991. continue to supply N╝6 as it is and then offer free up-grades when the
  36992. final version is ready. Sorry about that! Ed.)
  36993. 2.8
  36994. Two related matters
  36995. 2.8
  36996. Å   If you get the monthly disk, you will probably have installed the
  36997. IntModule from Steve Hoare (Archive 2.6, p. 44), and you will agree with
  36998. me that it is quite the best thing that has happened to First Word Plus
  36999. since its launch! I am sure that my life-expectancy has been increased
  37000. by being able to access the ö*ò commands we all love (and hate). If you
  37001. have not installed it, copy the IntModule to your 1st Word startup disk,
  37002. then modify !boot by adding lines 23 and 26 as follows:
  37003. 2.8
  37004. 23 *rmrun IntModule
  37005. 2.8
  37006. 26 *Interrupt 15
  37007. 2.8
  37008. Now if you press <ctrl-o>, the screen goes bright blue and gives you a *
  37009. prompt. Create your directories, mount disks or whatever, then just *
  37010. <return> and you are back. Wonderful. If you do not get the disks, more
  37011. fool you, this one was worth a yearæs subscription, but it will be on
  37012. the proposed ösharewareò disk.
  37013. 2.8
  37014. Å   Just who do you think we are? Not very different from you is the
  37015. answer, I guess. I suspect that most of the contributors to Archive are
  37016. either people who enjoy computers as a hobby which can be useful, people
  37017. who use computers as part of their work, but are not professionals in
  37018. computing, or students or teachers of computing. I am actually a vet.
  37019. who does human genetics and immunology research, approaching fifty, bald
  37020. and paunchy! The point is, please do not expect too much from us/me. I
  37021. actually took this column on when a broken collar-bone got in the way of
  37022. decorating! Sadly, bones heal╔
  37023. 2.8
  37024. Two quickies
  37025. 2.8
  37026. Å   If you have more than one sprite in a file, FWP only loads the first
  37027. sprite.
  37028. 2.8
  37029. Å   There is a funny bug in the spelling list : FABRICATION is flagged
  37030. as wrong, but it appears when you browse. To add confusion, when you ask
  37031. to guess, it comes up with faArication, which is unbrowsable!! Thanks to
  37032. Colin Garlick. A review of letters received earlier reveals that the
  37033. problem is more widespread than this: Kenneth Gardner rep-orts that the
  37034. same (?) bug affects fable, fabric, -ate, -ated, -ation, fabulous, -ly,
  37035. fab, haar, maar, nascelle, oaf, zag. Kenneth provides more data on
  37036. making merged supplementary dictionaries, but the problem is obviously a
  37037. bug. Over to you Acorn!
  37038. 2.8
  37039. FWP and RISC-OS╔
  37040. 2.8
  37041. The support disk which comes with RISC-OS has the necessary instructions
  37042. for conversion and the files. It is in the Acorn directory.
  37043. 2.8
  37044. It may be easier to have Edit installed and the mode set to 0 before you
  37045. start. Then you can have a decent RAMfs space for the copied files
  37046. (assuming you do not have two drives). You can keep the instructions in
  37047. sight this way.
  37048. 2.8
  37049. ╔and the IntModule
  37050. 2.8
  37051. It is all quite smooth, but if you want the splendid IntModule facility
  37052. to give you access to the OS, it is a bit more complicated. Edit has no
  37053. öloadò command. You load things by grabbing their icons and dropping
  37054. them on the installed Edit icon. But it is not obvious how to get at the
  37055. öObeyò files in the !1stWord+ directory from the desktop. The secret is
  37056. to hold down shift while clicking on the !1stWord+ directory. You should
  37057. be a bit careful about what you do, so make a backup before mucking
  37058. about. Now edit it as follows:
  37059. 2.8
  37060. a)   (This is most important.) Rename the !Run file you got from the
  37061. Support Disc as, e.g. !RunAcorn.
  37062. 2.8
  37063. b)   Insert tthree lines before that beginning örunò (next to last) (the
  37064. third line is optional Ö it turns the caps lock off)
  37065. 2.8
  37066. rmload $.intmodule
  37067. 2.8
  37068. interrupt 15
  37069. 2.8
  37070. fx202,48 REM
  37071. 2.8
  37072. c)   Save as !Run
  37073. 2.8
  37074. d)   Check that the file type is obey. If not, get an OS prompt by
  37075. pressing f12 on the desktop and öSetfiletype !run obeyò.
  37076. 2.8
  37077. e)   Remember to copy IntModule onto the disk in directory $.
  37078. 2.8
  37079. It should work, accessing the OS when <ctrl-O> is pressed, though I get
  37080. a white border around the top and right after going to the OS but it
  37081. seems to go away, though.
  37082. 2.8
  37083. I suspect there are a few missing twiddly bits about ensuring that the
  37084. correct directory names are used, so I still have some reading to do.
  37085. More next month!
  37086. 2.8
  37087. It also happens that you can edit obey files in FWP, and further, FWP is
  37088. not squeemish about loading the öObeyò files from an application
  37089. directory. If you do this you will certainly have to set the filetype.
  37090. 2.8
  37091. First Mail
  37092. 2.8
  37093. Here are a couple more tips on 1st Mail from Glyn Emery:
  37094. 2.8
  37095. Mail merging normally means sending the same, or very slightly differ
  37096. ent, letters to a number of recipients. I recently had occasion to turn
  37097. this process on its head and send several different letters to the same
  37098. recipient; but I found 1st Mail up to the task. The occasion was that I
  37099. had to write reports on a batch of candidates, which, for the conveni
  37100. ence of his filing system, I prepared in the form of a batch of separate
  37101. letters all addressed to the administrator involved. To print them I
  37102. prepared a ömerge fromò file as follows:
  37103. 2.8
  37104. read text
  37105. 2.8
  37106. display ötext letter startedò
  37107. 2.8
  37108. includefile letterhead
  37109. 2.8
  37110. includefile dat.administrator
  37111. 2.8
  37112. Dear Mr Administrator
  37113. 2.8
  37114. includefile doc.text
  37115. 2.8
  37116. Yours sincerely
  37117. 2.8
  37118. display öletter finishedò
  37119. 2.8
  37120. repeat
  37121. 2.8
  37122. ötextò here is used as a 1st Mail keyword. The file öletterheadò
  37123. incorporates the date. I put a hard page break just before the repeat
  37124. command to make the sheet-feeder on my printer pick up the next piece of
  37125. A4. The ödisplayò commands were put in during development and proved to
  37126. be too confidence-giving to be deleted. The file dat.administrator is
  37127. the administratoræs address.
  37128. 2.8
  37129. The reports, together with a covering letter were prepared as separate
  37130. files; and a datafile was prepared listing the file names. This was
  37131. saved in the dat. directory, not forgetting to switch off WP mode before
  37132. saving it. If you donæt switch off WP mode the merge tends to öhangò. I
  37133. donæt know why.
  37134. 2.8
  37135. The second point is that I have incorporated Steve Hoareæs IntModule
  37136. (Archive 2,6 p44) into the libraries of my letter-writing discs.
  37137. Unfortunately Steveæs suggestion to use <ctrl-@> does not quite work for
  37138. me, because the ú key seems to return ASCII 0 in the First Word Plus
  37139. context, presumably in order that different codes for ú can be included
  37140. to satisfy different printers. Steve, being in America, probably had no
  37141. occasion to notice this. What I did in the end was to include
  37142. 2.8
  37143. *RMLoad %.IntModule
  37144. 2.8
  37145. *Interrupt 205 1stMail
  37146. 2.8
  37147. into the startup program for First Word Plus, and
  37148. 2.8
  37149. *RMLoad %.IntModule
  37150. 2.8
  37151. *Interrupt 205 1stWord+
  37152. 2.8
  37153. into the startup program for 1stMail. I can then use the öinsertò key to
  37154. toggle between the two, and save quite a lot of keystrokes in doing so.
  37155. Notice that I had to use % in the RMLoad command but not in the
  37156. Interrupt command because % appears in my Run$Path but not in my
  37157. File$Path.
  37158. 2.8
  37159. An interesting application for FWP
  37160. 2.8
  37161. Dave Livsey
  37162. 2.8
  37163. Those of you who, like me, have to report on the progress of large
  37164. numbers of individuals of various levels of ability (i.e. teachers!) and
  37165. are the proud possessors of an Archimedes and First Word Plus now have
  37166. the means to reduce the increasingly onerous task of reporting, imposed
  37167. by the introduction of Érecords of achievementæ (ROA). (If you do not
  37168. have First Word Plus, or something better, you deserve all the hard work
  37169. you have to do!) Using First Word Plus, it is fairly easy to set up a
  37170. ÉMail mergeæ which will print out the documents required for the ROA.
  37171. 2.8
  37172. The clue to doing this lies in the example mail-merge letter on the
  37173. First Word Plus disk. As with most problems, there are probably many
  37174. (or, at least, a few) different solutions Ö this is one. I hope it will
  37175. help reduce your load as much as it has mine!
  37176. 2.8
  37177. In all that follows, the underlined words below are supposed to be in
  37178. light type which I am unable to print in Elite type. The page numbers
  37179. refer to the First Word Plus handbook.
  37180. 2.8
  37181. In outline, you will need to set up four files: a command file, a data
  37182. file, a file containing the com-ment bank and the Émainæ file (which
  37183. corresponds to the letter in the mail-merge example).
  37184. 2.8
  37185. The command file (called Écommandæ): This needs to contain the informa
  37186. tion which indicates the location of the data file (see below), any
  37187. individual input to the ROA document (Éinputæ typed in Élightæ type
  37188. p.165 Ö 169 ) and a reference to the basic form as an Éincludefileæ
  37189. statement. The WP mode can be left switched on when creating this file
  37190. and saving it.
  37191. 2.8
  37192. The data file (Éformdataæ) must be created in the dat. directory and
  37193. contains only the data you wish to be inserted into the final document
  37194. as it is printed and is simply a list of names (firstname, secondname),
  37195. sex (He/She), tutor group (or Form, or whatever cockeyed system your
  37196. educational establishment has decided to inflict on you), date and any
  37197. other required information. As pointed out in the handbook, each item of
  37198. data must be separated from the next by a comma. There is also a problem
  37199. of commas in an item of data but this is catered for by enclosing them,
  37200. as explained on p.165. A specimen layout could be as shown :
  37201. Fred,Bloggs,He,4Z,Nov 1988,Swahili
  37202. 2.8
  37203. Note that the data fields are comma separated fields and may include
  37204. spaces (p.165). This file must be created in non-WP mode and the mode
  37205. left switched off when saving; ignore the pop-up reminder which appears
  37206. when you try to save the file.
  37207. 2.8
  37208. The comment bank file (ÉROAæ), obviously, contains all the comments
  37209. which you may wish to make about any group of students. Each comment is
  37210. prefixed by a suitable identifier e.g. K1. In order to be able to use
  37211. these comments, each identifier must be set up as a keyword (p.163) by
  37212. preceding it with Ésetvalæ in light type e.g.
  37213. 2.8
  37214. setval K1, öname1 is a complete idiot when it comes to practical work.
  37215. sex is a complete liability as sex has 11 thumbs on two left hands.ò
  37216. 2.8
  37217. Note the <,> and the <ö>. I found that it was easier to type the comment
  37218. with the WP mode switched on and then to switch the WP mode off and move
  37219. all the text onto one line. The WP mode was then switched on again as
  37220. the document does not print out correctly otherwise.
  37221. 2.8
  37222. The setval definition seems to need all the text on one line but as this
  37223. can be 160 characters long, that is not too much of a problem. These
  37224. definitions can also contain key words, in light type, for insertions
  37225. from the data file into the final document. This is useful as it means
  37226. that you can specify he or she along with the name in the data file.
  37227. N.B. Changing the ruler turns off the Élightæ type causing the defini
  37228. tions and insertions to be ignored in the final print-out.
  37229. 2.8
  37230. The final file (called Éformæ); the document you are going to print,
  37231. contains very little other than keywords spaced out as is appropriate
  37232. for your ROA. The first line must be a read statement which, being a
  37233. keyword is in light type. Following this is a list of fields in ordinary
  37234. type and in the same order as in the data file. The rest of the file is
  37235. mainly spaces preceded by a keyword placed where you want your printing
  37236. to be done. Eg.
  37237. 2.8
  37238. read name1,name2,sex,date,tutor, subject (reads from Éformdataæ)
  37239. 2.8
  37240. name1, name2 tutor subject date
  37241. 2.8
  37242. includefile ROA (this reads in the comment bank)
  37243. 2.8
  37244. name1 K1 (prints öFred is an idiot .....ò)
  37245. 2.8
  37246. sex C3 (prints in the comment on comprehension)
  37247. 2.8
  37248. sex I1 (prints in the comment on intelligence) etc.
  37249. 2.8
  37250. This file will, of course, need the WP mode swit-ched on in order to
  37251. retain all the formatting infor-mation which is necessary for the
  37252. automatic form-atter to work when insertions are made in the text.
  37253. 2.8
  37254. The ROA is printed out by clicking on Éformæ and Éformdataæ (from the
  37255. doc. directory) using the mail-merge facility on the First Word Plus
  37256. disc. Full details of this are given in the Handbook.
  37257. 2.8
  37258. Font Fiddling on First Word Plus
  37259. 2.8
  37260. Reg Dalton (& Steve Bass)
  37261. 2.8
  37262. Reg tells us the saga of creating character sets for First Word Plus and
  37263. his NEC P2200. A sample printout is shown opposite, and the programs and
  37264. printer drivers are on the program disc and downloadable from Eureka II.
  37265. 2.8
  37266. In an earlier edition of Archive (1.12 p 7) was printed a short routine
  37267. to convert the extra fonts, supplied on the Master Welcome disc, from
  37268. BBC to Archimedes format. On the face of it, this looked as if it would
  37269. be a useful little routine but there was a problem; only half of the
  37270. character set was defined. i.e. characters 32 to 126. My friend Steve,
  37271. in his wisdom, decided that one of the fonts (7by8) looked very good
  37272. with First Word Plus and decided to redefine the rest of the characters
  37273. to match the ones already done.
  37274. 2.8
  37275. The next step in the story was when I foolishly mentioned that it would
  37276. be quite simple to set up First Word Plus to utilise the IBM graphics
  37277. available in one of the alternative character sets within the printer we
  37278. both had (NEC P2200). We then decided that redesigning the fonts using
  37279. the Master was not the way to do this, mainly because the fonts would
  37280. then have to be converted to Archimedes, so we converted the CHARDES
  37281. program, which was mainly in BASIC, to a form that would save fonts in
  37282. the correct format and also run with the Archimedes mouse.
  37283. 2.8
  37284. The problem of modifying the program to work on the Archimedes was not
  37285. too difficult by even an amateur programmeræs standards but to make it
  37286. save the font in its correct form for the Archimedes proved more
  37287. problematical. A number of abortive attempts were made to rewrite the
  37288. save font routine but each time nothing was achieved except making the
  37289. computeræs character set look like hieroglyphics. Eventually, it all
  37290. fell into place and we had a working program.
  37291. 2.8
  37292. We then decided that a program for transposing characters within the
  37293. character set itself might not be a bad idea. This was written fairly
  37294. speedily, but then the next task was to create the printer driver for
  37295. First Word Plus. This marathon is usually achieved by modifying an
  37296. existing wordprocessor/printer driver file, which involves changing the
  37297. relevant values for the various functions listed within the file, e.g.
  37298. superscript, subscript, nlq etc. After this fairly simple part comes the
  37299. task of entering all the codes to achieve the extra characters which
  37300. cannot enter from the keyboard. For characters 32 to 127 this was
  37301. obviously quite simple as all that was needed in this instance was each
  37302. characteræs number, but it was soon noticed by both of us that the
  37303. characters between &80 and &9F (decimal 128 to 159) were not defined by
  37304. the existing list. After an abortive attempt to define these characters,
  37305. and failing to get them to install, it was decided that we would have to
  37306. discard 32 (yes a whole 32) of the characters so lovingly designed by
  37307. Steve.
  37308. 2.8
  37309. Notes on the font fiddling programs
  37310. 2.8
  37311. (These refer to programs on the monthly disc.)
  37312. 2.8
  37313. 1   !BOOT is the program for interchanging the position of the
  37314. characters.
  37315. 2.8
  37316. 2   After running the above program, the Acorn Character Designer
  37317. Program (modified for use on the Archimedes), Chardes_C, can be entered
  37318. and 1 above repeated as many times as necessary.
  37319. 2.8
  37320. 3   The modified Printer driver for 1WP is in the CFG directory.
  37321. 2.8
  37322. 4   The modified Printer driver hex file for 1wp is in the HEX
  37323. directory.
  37324. 2.8
  37325. 5   Before booting the disc, the font style to be modified must first be
  37326. loaded e.g. by using *NEC_Afont.
  37327. 2.8
  37328.  
  37329.  
  37330. 2.7
  37331. Å   BBC winchester on Archimedes!! Alan Glover says╔ I have got it to
  37332. work on the i/o podule under RISC-OS. Hereæs what you do: from the
  37333. !65Host directory:
  37334. 2.7
  37335. *RMLOAD !RunImage
  37336. 2.7
  37337. *CACHEROM 0 dnfs
  37338. 2.7
  37339. *CACHEROM 1 ARFS
  37340. 2.7
  37341. *CACHEROM 2 <>.ADFS130
  37342. 2.7
  37343. *EMU.
  37344. 2.7
  37345. Note: Must be ADFS 130 Ö i.e. a B/B+ version  and you must find an image
  37346. of this yourself as it is not provided with RISC-OS. To use the
  37347. Archimedesæ ADFS type *ARFS.
  37348. 2.7
  37349. The winchester is connected to the 2 MHz bus (theoretically 1 MHz!) on
  37350. the I/O podule as it would be on a BBC.
  37351. 2.7
  37352. Å   Configuration problems in Art Nouveau Ö If you select ÉConfigure
  37353. machineæ from the opening menu when you have already configured the
  37354. machine, you lose your old configuration when you quit and you are left
  37355. with Art Nouveauæs own configuration. This is because it doesnæt keep
  37356. track of whether you have already configured it. I was lucky Ö I had
  37357. written a program long ago that translates a *SPOOLed *STATUS into a
  37358. load of *Configureæs and I keep a copy of this spool on my hard disc at
  37359. all times. You have been warned. Martyn Lovell.
  37360. 2.7
  37361. Å   Graphic Writer with a Star SG-10 Ö If you can have one complaint
  37362. about Graphic Writer (apart from the manual) itæs the printer support. I
  37363. own a Star SG-10 and am trying to let Graphic Writer use it to the full.
  37364. The Star has an NLQ character set, but this cannot be combined with any
  37365. other text style except underlined. So what I want is to adapt the
  37366. printer driver so that it would normally print NLQ and for the other
  37367. effects resort to draft printing. For this, I used the Printcon program
  37368. and gave the following codes:
  37369. 2.7
  37370. Initialisation:
  37371. 2.7
  37372. ESC ö@ò
  37373. 2.7
  37374. ESC öGò
  37375. 2.7
  37376. ESC ö4ò
  37377. 2.7
  37378. Which resets the printer, turns on double-strike (gives better bold, but
  37379. you may omit it) and NLQ. Make sure the printer is in IBM mode.
  37380. 2.7
  37381. For configuration (leave the rest the same as a FX80):
  37382. 2.7
  37383. Plain:     27,70,27,52
  37384. 2.7
  37385. Bold:      27,53,27,69
  37386. 2.7
  37387. Italic on: ESC öIò,1
  37388. 2.7
  37389. Italic off:ESC öIò,0
  37390. 2.7
  37391. Note that the input routine of the printcon program doesnæt accept two
  37392. öESCò sequences on one line, but it accepts two 27æs. The italic codes
  37393. are different from an FX80. In fact, FX80 compatibility turns out to be
  37394. somewhere in between the öStarò and öIBMò modes of the Star SG-10. The
  37395. trick is the plain and bold codes. When Graphic Writer finds a öBoldò
  37396. code it now also sends an NLQ-off code to the printer, which in effect
  37397. makes the printer print in draft, emphasized and double-strike, the
  37398. latter being already set at initialisation. (Yes, it is confusing, isnæt
  37399. it?!) This makes it possible to mix NLQ, bold and italic-bold in the
  37400. text. However, you canæt use italics or super/subscript without bold.
  37401. These just print in normal NLQ.
  37402. 2.7
  37403. The same method should apply to other printers which canæt do everything
  37404. in NLQ.
  37405. 2.7
  37406. Another tip on Graphic Writer is that you should always make any graphic
  37407. as big as possible, i.e. use the whole graphic area, however small you
  37408. want the picture to be. This makes page composition a lot easier and
  37409. also causes less problems with distortion when rescaling.
  37410. 2.7
  37411. Å   Interrupt module Ö The interrupt module by Steve Hoare (Archive 2.6
  37412. p44) is very useful especially, as he states in his article, with First
  37413. Word Plus for creating directories etc. However there is a problem
  37414. associated with *interrupt 0. This is that the pound key also generates
  37415. ASCII 0 (a bug in OS1.2 I think) which means that every time you type a
  37416. Époundæ, the interrupt module takes over and opens up the OS window.
  37417. However, <ctrl-O> is unused by First Word Plus, so I use *interrupt 15
  37418. instead.
  37419. 2.7
  37420. The module also comes in handy when using a comms program to check on
  37421. filenames, *type logfiles etc, but there is an enhancement that I think
  37422. would make it more useful still. While in the OS window, it is possible
  37423. to type <ctrl-Z> to open up the text window to the full screen which is
  37424. handy, but on exit (in a WIMP program) only the top half of the screen
  37425. is restored. If the source code could be modified to issue a redraw
  37426. request for the whole screen it would be an improvement. Having looked
  37427. at the code, it should be easy to do. Any offers?
  37428. 2.7
  37429. Å   Memory shortage on Logistix and First Word Plus Ö To get round the
  37430. Éout of memoryæ snag which seems to turn up so often with First Word
  37431. Plus and Logistix, if you have the 1.20 PC emulator, use the PC.PC
  37432. startup routine first and then, instead of using the MS.DOS disc, insert
  37433. Logistix instead and <reset>. <Ctrl-break> will then autoboot Logistix
  37434. with a whole 275k of memory free to use.
  37435. 2.7
  37436. Å   Mitsubishi Disc Drives Ö Here are a number of points to bear in
  37437. mind, writes Vic Budd, when adding external disc drives. If, after
  37438. considering these, you feel competent to carry out the work, go ahead.
  37439. If not, it is prudent to entrust the work to an experienced operator to
  37440. avoid frustrations and disappointments.
  37441. 2.7
  37442. There are different circuit board layouts, but the basic checks on the
  37443. drives are the same.
  37444. 2.7
  37445. 1.   Remove link MS if made and change to adjoining position MM.
  37446. 2.7
  37447. 2.   Remove link IU if made and discard it. On some drives there is no
  37448. removable link. However, there is a circuit board foil link, DI, near
  37449. the data cable edge connector, which is connected to pin 2, and this
  37450. should be cut in these instances.
  37451. 2.7
  37452. 3.   Move drive selector link to position 1, 2 or 3 according to which
  37453. command you wish it to respond. (This assumes that the internal drive is
  37454. to be 0).
  37455. 2.7
  37456. 4.   The resistor pack should be in place. On some drives this consists
  37457. of a single plug-in IC type device, whilst on others there is a row of
  37458. DIL pins which should have shorting links inserted.
  37459. 2.7
  37460. 5.   Make sure the data cable is correctly orientated Ö it will need to
  37461. be at 180 degrees compared to the three and a half inch drive
  37462. connectors.
  37463. 2.7
  37464. 6.   If, as I do, you wish to run a second three and a half inch
  37465. external drive and a five and a quarter inch drive, the connecting cable
  37466. will, of course, need to be turned through 180 degrees to connect the
  37467. drives together.
  37468. 2.7
  37469. 7.   If you decide to use the Archimedesæ power supply, check the
  37470. connections carefully before attaching the cable connectors, making
  37471. quite sure you do not get the 12v and 5v leads confused.
  37472. 2.7
  37473. If you do all these things correctly, you too should have no problems
  37474. with the Beebug lead and will be able to access drives A, B and C under
  37475. the PC Emulator, as well as 0,1, and 2 under Énativeæ Archimedes.
  37476. 2.7
  37477. Å   Moving the pointer when it is not linked to the mouse can be greatly
  37478. simplified by using the POINT TO x%,y% command which does exactly what
  37479. is needed (note that you must unlink the pointer from the mouse first
  37480. with MOUSE ON 129). Details are in the User Guide and under HELP POINT.
  37481. Having looked at the relevant part of the PRM, it appeared to be
  37482. impossible to do this, so I decided to have a rummage around in the
  37483. BASIC module. This resulted in the discovery of some undocumented calls!
  37484. Basically these are extensions of OSWORD &15 whereby putting &05 instead
  37485. of &03 at R1+0 causes the pointer position to be set instead of the
  37486. mouse position (see PRM p.133). Also, values of &04 and &06 appear to
  37487. read the mouse and pointer positions respectively, though the code to
  37488. read the mouse position contains a fatal bug in Arthur 1.2 and cannot be
  37489. used! In theory it might be possible to patch it with a copy of the
  37490. UtilityModule in RAM but this module refuses to be RMKILLed. Martin
  37491. Simmons
  37492. 2.7
  37493. Å   Problems with *UP Ö If you are having problems (as expressed in the
  37494. Help Section last month) with *UP or the use of ^ in a pathname, it is
  37495. probably because of a bug in the ADFS. The problem occurs when a
  37496. directory is renamed. The ADFS does not seem to keep track of it
  37497. properly. The solution, apparently, is to do a *COMPACT on the disc.
  37498. 2.7
  37499. Å   Repton 3 again (Philip Armstrong) Ö Iæve got a few more comments on
  37500. Repton 3. Firstly I hope that no one saved the new characters and maps
  37501. onto the original disc. I have found that occasionally, the maps have
  37502. been corrupted and thus rendered impossible. If you find a screen that
  37503. you canæt do then check it with the original version. For those people
  37504. that canæt get to grips with the array of different characters, create a
  37505. second disc with all the files using a standard set of characters. This
  37506. makes the screens easier to complete. I have included on the monthly
  37507. program disc, the new characters that I use. They are not brilliant, but
  37508. a distinct improvement on the original set. Superior Software only state
  37509. that characters and maps cannot be used for commercial exploitation, so
  37510. it is OK for us to distribute in this way. There is also a simple
  37511. program to merge maps and my characters. Also, if you cannot stand the
  37512. tune that accompanies the loading program of Repton, then change *tune1
  37513. to *tune0 in the öconfigò file.
  37514. 2.7
  37515. Here is a list of Passwords for Repton 3. Sorry itæs not complete, but I
  37516. do have other things to do. If anyone can do screen E of WORK
  37517. (p=scratch), Iæd be pleased to hear from them because it looks imposs
  37518. ible and I have checked it against the original. I suspect a transporter
  37519. has been defined wrongly.
  37520. 2.7
  37521. A   Prelude   B   Rescind   C   Periwig   D   Mortify      E   Forsake
  37522. F   Gratify   G   Thistle   H   Spangle
  37523. 2.7
  37524. A   Toccata   B   Nocturn   C   Liberal   D   Inspect      E   Delight
  37525. F   Botanic   G   Vitriol   H   Sacking
  37526. 2.7
  37527. A   Finale   B   Yardarm   C   Zealous   D   Without      E   Aviator
  37528. F   Elderly   G   Juniper   H   Crimson
  37529. 2.7
  37530. A   America   B   Herbage   C   Kitchen   D   Outcast      E   Quarter
  37531. F   Untwine   G   Tremble   H   Strange
  37532. 2.7
  37533. A   Arctic   B   Kinetic   C   Gondola   D   Lozenge      E   Rotunda
  37534. F   Frontal   G   Younger    H
  37535. 2.7
  37536. A   Orient   B   Organic   C   Armhole   D   Visible   E   Neglect   F
  37537. Biplane   G   H
  37538. 2.7
  37539. A   Oceans   B   Distain   C   Mundane   D   Eclipse   E   Warning   F
  37540. G   H
  37541. 2.7
  37542. A   Africa   B   Quickly   C   Zigzags   D   Closely   E   Panoply   F
  37543. Bonfire   G   H
  37544. 2.7
  37545. A   Baby   B   Startle   C   Measles   D   Granite   E   WhimperF
  37546. Cushion   G   Alimony   H   Utensil
  37547. 2.7
  37548. A   School   B   Qualify   C   Knicker   D   Dynamic   E   Tendril   F
  37549. Lanyard   G   Vinegar   H   Yaskmak
  37550. 2.7
  37551. A   Teenage   B   Eternal   C   Whisper   D   Feather   E   Rhubarb   F
  37552. Jasmine   G   H
  37553. 2.7
  37554. A   Work   B   Inverse   C   Parapet   D   Elegant   E   Scratch   F   G
  37555.  H
  37556. 2.7
  37557. A   Oap   B   Jackdaw   C   Rupture   D   Archery   E   Figment   F
  37558. Natural   G   Tonight   H   Brigade
  37559. 2.7
  37560. A   Prehist   B   Dormant   C   Mineral   D   Varnish   E   Dashpot   F
  37561. Lobelia   G   Upright   H
  37562. 2.7
  37563. A   Egypt   B   Lobster   C   Tabloid   D   Achieve   E   Gristle   F
  37564. Deceive   G   Scalpel   H
  37565. 2.7
  37566. A   Victori   B   Earnest   C   Pervade   D   Violent   E   Bashful   F
  37567. Magnify   G   Wrought   H   Horizon
  37568. 2.7
  37569. A   Now   B   Charity   C   Funeral   D   Justify   E   Naughty   F
  37570. Isolate   G   Radical   H
  37571. 2.7
  37572. A   Future   B   Primate   C   Mustang   D   Iterate   E   F   G   H
  37573. 2.7
  37574. Å   Shared C Library Ö Users of release 2 of ANSI C might like to know
  37575. how to use the Shared C Library which is included on the disc but which
  37576. does not seem to be documented in the User Guide. Normally, the AOF
  37577. file, generated by compiling the C source, is linked with the C ANSI
  37578. library file, $.ARM.CLib.O.AnsiLib. This produces an image file which
  37579. can be executed directly by *RUNning it. This image file tends to be
  37580. quite long as large port-ions of the C ANSI library are incorporated in
  37581. it.
  37582. 2.7
  37583. On the C disc, is a file called $.Library.CLib which contains the C ANSI
  37584. library in the form of a relocatable module. The interface between the
  37585. user program and this Shared C Library module is a small file called
  37586. $.ARM.CLib.O.Stubs which simply defines each ANSI library function as a
  37587. SWI which is then recognised by the library module.
  37588. 2.7
  37589. As an example of the use, try the following. Mount your working copy of
  37590. the C disc and enter directory $.ARM.CBench. Now compile the source file
  37591. C.HelloW using the -c option so as not to invoke the linker:
  37592. 2.7
  37593. *CC HelloW -c
  37594. 2.7
  37595. Now link the resulting AOF file with the Stubs library:
  37596. 2.7
  37597. *Link -o HelloW O.HelloW $.ARM.CLib.O.Stubs
  37598. 2.7
  37599. Next load the Shared C Library module:
  37600. 2.7
  37601. *RMLoad $.Library.CLib
  37602. 2.7
  37603. And finally run the program:
  37604. 2.7
  37605. *Run HelloW
  37606. 2.7
  37607. Note that an image file generated in this way is not truly stand-alone
  37608. as it needs the Shared C Library module to be loaded in order for it to
  37609. run (but then again many programs need the Floating Point Emulator to be
  37610. loaded in order to run). A big advantage is that the image file is very
  37611. much smaller than it would be if it had been linked with the ANSI
  37612. library in the normal way. One can envisage several C programs multi
  37613. tasking under RISC-OS, sharing the resources of the Shared C Library.
  37614. 2.7
  37615. It should be noted that the Arthur-specific functions declared in the
  37616. ArthurLib header file are not incorporated in the Shared C Library. If
  37617. your program uses these functions you must include
  37618. $.ARM.CLib.O.ArthurLib at the linking stage. So try the following:
  37619. 2.7
  37620. *CC Balls64 -c
  37621. 2.7
  37622. *Link -o Balls64 O.Balls64 $.ARM.CLib.O.Stubs $.ARM.CLib.O.ArthurLib
  37623. 2.7
  37624. *Run Balls64
  37625. 2.7
  37626. Provided the Shared C Library module is loaded, the program should run
  37627. normally. John Morley
  37628. 2.7
  37629. Å   Sprite Animation Ö There have been many articles relating to the use
  37630. of Sprites on the Archimedes. These have covered the use of PLOT &ED,X,Y
  37631. to display a Sprite in its defined colours at point (X,Y) and the use of
  37632. a Mask to allow a background to appear through the Éunusedæ parts of a
  37633. sprite. They have also shown the use of Exclusive OR plotting using GCOL
  37634. 11,0 to allow the sprite to be moved over any coloured background.
  37635. 2.7
  37636. The EOR solution to this last problem, of moving a multi-coloured sprite
  37637. over a multi-coloured background, does work, but unless a great deal of
  37638. thought is given to palette selection, the sprite does not retain its
  37639. defined colour during movement.
  37640. 2.7
  37641. Many games will require the facility to define a sprite in specified
  37642. colours, with a mask and to move it still retaining those colours rather
  37643. than those produced by EOR.
  37644. 2.7
  37645. A solution is to use the standard Move/Display/Erase in a loop but not
  37646. to use EOR. The following algorithm does this :
  37647. 2.7
  37648. 1   Define the sprite ÉMySpriteæ with a mask (using SEDIT on the Welcome
  37649. Disk).
  37650. 2.7
  37651. 2   Determine the size of ÉMySpriteæ. This may be known but a SYS call
  37652. does it for you.
  37653. 2.7
  37654. LOOP
  37655. 2.7
  37656. 3   Determine the position where ÉMySpriteæ is to be plotted.
  37657. 2.7
  37658. 4   Grab a sprite ÉTempæ from the screen at this position the same size
  37659. as ÉMySpriteæ.
  37660. 2.7
  37661. 5   Plot ÉMySpriteæ with the mask.
  37662. 2.7
  37663. 6   Plot the grabbed sprite ÉTempæ to ERASE ÉMyspriteæ.
  37664. 2.7
  37665. ENDLOOP
  37666. 2.7
  37667. The following program demonstrates this :
  37668. 2.7
  37669.  10 REM > SpritePlot
  37670. 2.7
  37671.  20 REM Copyright Ian Smith
  37672. 2.7
  37673.  30 REM March 1989
  37674. 2.7
  37675.  40
  37676. 2.7
  37677.  50 REM An example program to show
  37678. 2.7
  37679.  the use of sprites moving
  37680. 2.7
  37681.  60 REM across a multi coloured
  37682. 2.7
  37683.  background by grabbing an area
  37684. 2.7
  37685.  70 REM of screen as a sprite and
  37686. 2.7
  37687.  then using it to overwrite the
  37688. 2.7
  37689.  80 REM moving sprite.
  37690. 2.7
  37691.  90
  37692. 2.7
  37693. 100 MODE 15  :REM Works in other
  37694. 2.7
  37695.  modes
  37696. 2.7
  37697. 110 T$=öTempò  : REM Will be the
  37698. 2.7
  37699.  sprite grabbed from screen
  37700. 2.7
  37701. 120 M$=öMySpriteò  : REM A masked
  37702. 2.7
  37703.  sprite created with SEDIT
  37704. 2.7
  37705. 130 *SLOAD !Sprites
  37706. 2.7
  37707. 140
  37708. 2.7
  37709. 150 SYS &2E,40,,T$ TO ,,,W,H :REM
  37710. 2.7
  37711.  Find size of sprite to grab
  37712. 2.7
  37713. 160       : REM W)idth and H)eight
  37714. 2.7
  37715. 170 PROCDrawBackground  : REM Draw
  37716. 2.7
  37717.  a Multicoloured background
  37718. 2.7
  37719. 180 PROCTitle:REM and put titles on
  37720. 2.7
  37721. 190
  37722. 2.7
  37723. 200 REPEAT
  37724. 2.7
  37725. 210  REM ****** MOVE ******
  37726. 2.7
  37727. 220  MOUSE X,Y,B
  37728. 2.7
  37729. 230  SYS &2E,16,,T$,1,X,Y,X+W*2,
  37730. 2.7
  37731. Y+H*4  : REM Grab sprite
  37732. 2.7
  37733.  from screen
  37734. 2.7
  37735. 240
  37736. 2.7
  37737. 250  OSCLI(öSCHOOSE ò + M$ ) :REM
  37738. 2.7
  37739.  Select original sprite
  37740. 2.7
  37741. 260
  37742. 2.7
  37743. 270  REM ****** DISPLAY ******
  37744. 2.7
  37745. 280  GCOL 8,0 :REM Now plot it with
  37746. 2.7
  37747.  its mask
  37748. 2.7
  37749. 290  PLOT &ED, X,Y   :REM at the
  37750. 2.7
  37751.  mouse position
  37752. 2.7
  37753. 300  PLOT &ED,900,800  : REM and
  37754. 2.7
  37755.  display it in rectangle
  37756. 2.7
  37757. 310
  37758. 2.7
  37759. 320  WAIT:WAIT  : REM Synchronise
  37760. 2.7
  37761.  output
  37762. 2.7
  37763. 330
  37764. 2.7
  37765. 340  OSCLI(öSCHOOSE ò + T$) :REM
  37766. 2.7
  37767.  Now plot the grabbed sprite
  37768. 2.7
  37769. 350
  37770. 2.7
  37771. 360  REM ****** ERASE ******
  37772. 2.7
  37773. 370  GCOL 0,0
  37774. 2.7
  37775. 380  PLOT &ED,X,Y : REM at the same
  37776. 2.7
  37777.  place
  37778. 2.7
  37779. 390  PLOT &ED,1000,800  :REM and in
  37780. 2.7
  37781.  its rectangle
  37782. 2.7
  37783. 400 UNTIL B=7      : REM 3 buttons
  37784. 2.7
  37785.  terminates
  37786. 2.7
  37787. 410 END
  37788. 2.7
  37789. 420
  37790. 2.7
  37791. 430 DEF PROCDrawBackground
  37792. 2.7
  37793. 440 GCOL 3 : RECTANGLE FILL 0,0,
  37794. 2.7
  37795. 300,300 : REM Just a
  37796. 2.7
  37797.  couple of
  37798. 2.7
  37799. 450 GCOL 4 : RECTANGLE FILL 50,50,
  37800. 2.7
  37801. 50,50 : REM rectangles and
  37802. 2.7
  37803. 460 GCOL 12:CIRCLE FILL 800,400,200
  37804. 2.7
  37805. : REM circles
  37806. 2.7
  37807. 470 GCOL 5 :CIRCLE FILL 600,300,100
  37808. 2.7
  37809. 480 OSCLI(öSCHOOSE ò + M$)
  37810. 2.7
  37811. 490 PLOT &ED,75,90 : REM and the
  37812. 2.7
  37813.  sprite
  37814. 2.7
  37815. 500 ENDPROC
  37816. 2.7
  37817. 510
  37818. 2.7
  37819. 520 DEF PROCTitle
  37820. 2.7
  37821. 530 GCOL 1
  37822. 2.7
  37823. 540 RECTANGLE 900-2,800-4,W*2+4,
  37824. 2.7
  37825. H*4+8 :REM Draw rectangles
  37826. 2.7
  37827. 550 RECTANGLE 1000-2,800-4,W*2+4,
  37828. 2.7
  37829. H*4+8 : REM in which sprites
  37830. 2.7
  37831. 560 PRINT TAB(53,2);öS P R I T E Sò
  37832. 2.7
  37833.   : REM are displayed
  37834. 2.7
  37835. 570 PRINT TAB(52,3);öoriginal
  37836. 2.7
  37837.  grabbedö
  37838. 2.7
  37839. 580 PRINT TAB(0,1);öSPRITE
  37840. 2.7
  37841. DEMONSTRATION : use mouse
  37842. 2.7
  37843.  to move spriteö
  37844. 2.7
  37845. 590 ENDPROC
  37846. 2.7
  37847. Comments on the program
  37848. 2.7
  37849. PROCDrawBackgound sets up a background to move over.
  37850. 2.7
  37851. PROCTitle puts text and a couple of rectangles on the screen
  37852. 2.7
  37853. 150   uses a SYS call to find the Width and Height of ÉMySpriteæ. This
  37854. is needed so that the right size ÉTempæ can be grabbed. (See PRM pp
  37855. 429,433.)
  37856. 2.7
  37857. 230   grabs the sprite from the screen using a SYS call. Note the *2 and
  37858. *4 to compensate for screen MODE 15. Youæll need to change this for
  37859. other resolution modes.
  37860. 2.7
  37861. 250   selects ÉMySpriteæ
  37862. 2.7
  37863. 280   selects the Mask Plot option GCOL 8.
  37864. 2.7
  37865. 290   plots the sprite at the Mouse selected point
  37866. 2.7
  37867. 300   plots the sprite in a rectangle to show its original colours.
  37868. 2.7
  37869. 340   selects ÉTempæ
  37870. 2.7
  37871. 380   plots ÉTempæ effectively erasing ÉMySpriteæ
  37872. 2.7
  37873. 390   plots ÉTempæ in its rectangle. The effect of 390 has an interest
  37874. ing side-effect. When you run the program move the sprite over the
  37875. rectangle! See what happens!
  37876. 2.7
  37877. The program ÉSpritePlotæ and the sprite file É!Spritesæ are on this
  37878. monthæs disk but you can use the program by keying it in and also
  37879. creating a masked sprite in mode 15 using SEDIT and saved as !SPRITES.
  37880. 2.7
  37881. The program can obviously be modified to run in other modes. The flicker
  37882. on the sprite could be removed by modifying the program to plot only if
  37883. the mouse has been moved. Ian Smith
  37884. 2.7
  37885. Å   Star-Trader Cheats Ö Here are some ideas and cheats for
  37886. ÉStarTraderæ. It is an excellent game, all the more impressive when you
  37887. consider it is written in BASIC!
  37888. 2.7
  37889. Load the main game and enter the EDIT editor. (The main game file is
  37890. É$.Resouces.StarTrader. StarTraderæ.) You can alter as many as the
  37891. following as you like to make the game a bit easier to get into;
  37892. 2.7
  37893. Line 290 change to: SUN=1 for a SunBurst
  37894. 2.7
  37895.    DEATH=1 for a DeathBlossom
  37896. 2.7
  37897.    CELL=1 for a super energy cell
  37898. 2.7
  37899.    ENG=3 for the most powerful engines (Note ENG=2 & ENG=1 are available
  37900. as well)
  37901. 2.7
  37902.    NUMPT=10 for the number of photon torpedoes. Having 10 doesnæt spoil
  37903. the display!
  37904. 2.7
  37905. Line 390 change CRD to the number of credits you want (STDA is the
  37906. stardate)
  37907. 2.7
  37908. Line 420 change MAXHOL to the size of the hold you want fitted.
  37909. 2.7
  37910. Note: DAMCAP is used in Line 13570 to calculate the remaining hold
  37911. capacity.
  37912. 2.7
  37913. PRC() holds the value of each of the tradegoods you are carrying CTOTAL
  37914. is the total weight of cargo you are carrying at the moment (also used
  37915. in 13570)
  37916. 2.7
  37917. The messages you occassionally get when transporting down to a planet
  37918. are held in code. If you want to see them, then type the following
  37919. changes in immediate mode.
  37920. 2.7
  37921. LOAD öStarTraderò
  37922. 2.7
  37923. DELETE 0,39349
  37924. 2.7
  37925. DELETE 39560,39580
  37926. 2.7
  37927. DELETE 39640
  37928. 2.7
  37929. DELETE 39650,39690
  37930. 2.7
  37931. 39351 DIM CMG$(20)
  37932. 2.7
  37933. 39554 FOR T=0 TO  20
  37934. 2.7
  37935. 39651 NEXT
  37936. 2.7
  37937. PROCCLUE (If <ctrl-B> is used first, the messages can be sent to a
  37938. printer.)
  37939. 2.7
  37940. There is a 50:50 chance of getting a clue on any planet landing. 16
  37941. messages have a 95% chance of being called, the other 4 messages only
  37942. 5%. The rumour sends you to a randomly chosen planet! Some messages are
  37943. tradehints, some are adverts for other games(!) and a couple are very
  37944. useful clues to the solution of the puzzle.
  37945. 2.7
  37946. The planets on which the segments are found and the code are chosen at
  37947. the creation of the universe stage. RUN the game, then immediately save
  37948. it. TYPE in CHEAT4 to get a list of planet numbers where the segments
  37949. are. CHEAT4 also prints out the code letters. These are held in the
  37950. array ZTX()
  37951. 2.7
  37952.  10 REM >CHEAT4
  37953. 2.7
  37954.  20 DIM PKLR(800),GR(800),ANAME$
  37955. 2.7
  37956. (800),TYP(800),SS(800),PO(800)
  37957. 2.7
  37958. ,STARSS(120),PX(120),PZ(120), PC(9),SP(9),PRC(13), UNI(120,12),ZTX(8)
  37959. 2.7
  37960.  30 BB=OPENIN(ö:1.xxxxxò):REM
  37961. 2.7
  37962.  change xxxxx to name of
  37963. 2.7
  37964.  SaveGame file
  37965. 2.7
  37966.  40 INPUT# BB,SUN,DEATH,CELL,ENG,
  37967. 2.7
  37968.  FS, PS,SS,AS,PTD,PSD,DAMCAP,HD, TE,NUMPT,PE,EPS,STDA,CRD,PN,SY
  37969. 2.7
  37970.  50 FORT=1TO800:INPUT# BB,PKLR(T),
  37971. 2.7
  37972.  GR(T),ANAME$(T),TYP(T), SS(T),PO(T):NEXTT
  37973. 2.7
  37974.  60 FORT=1TO120:INPUT# BB,SARSS(T)
  37975. 2.7
  37976.  ,PX(T),PZ(T):NEXTT
  37977. 2.7
  37978.  70 FORT=1TO9:INPUT# BB,PC(T),SP(T)
  37979. 2.7
  37980. :NEXTT
  37981. 2.7
  37982.  80 FORT=1TO13:INPUT# BB,PRC(T)
  37983. 2.7
  37984. :NEXTT
  37985. 2.7
  37986.  90 FORZ=1TO119
  37987. 2.7
  37988. 100 FORT=1TO12:INPUT# BB,UNI(Z,T)
  37989. 2.7
  37990. :NEXTT
  37991. 2.7
  37992. 110 NEXTZ
  37993. 2.7
  37994. 120 FORT=1TO8:INPUT# BB,ZTX(T)
  37995. 2.7
  37996. :NEXTT
  37997. 2.7
  37998. 130 CLOSE# BB
  37999. 2.7
  38000. 140 FOR LOOP=1 TO 9:PRINT PC(LOP),
  38001. 2.7
  38002. SP(LOOP)æ:NEXT:REM planets
  38003. 2.7
  38004. 150 FOR LOOP=1 TO 8:PRINTCHR$(64+
  38005. 2.7
  38006. ZTX(LOOP)):NEXT:REM code
  38007. 2.7
  38008. You get a nice fanfare when you collect a segment. The percentage
  38009. chances reported during a scan can be as low as 45% or as high as 90% on
  38010. a planet which actually has a segment.
  38011. 2.7
  38012. If you have two drives, it is quite easy to use drive 1 as the GameSave
  38013. drive (as in the program above). Just change (input$) in Lines 3770,
  38014. 4020 and 4050 to (ö:1.ò+input$). Dave Kent
  38015. 2.7
  38016. Å   TV output from Archimedes? Ö It is possible to connect a TV to an
  38017. Archimedes, though only in monochrome and via a video.  Connect a wire
  38018. (co-ax) from a phono plug plugged into the Archimedes mono video socket
  38019. to pin 20 (centre core of Co-ax) and any one of the many 0V lines (i.e.
  38020. connect the braid screen to 0V) on a SCART plug. This means that it only
  38021. works on video machines with a SCART socket on them (if no SCART socket,
  38022. then connect to VIDEO IN via a phono or BNC plug). This also means that
  38023. you can make demo videos and stuff by taping the pictures. Sound can be
  38024. connected to pins 2 and 6, I think, never tried it! (See Archive 2.2 p
  38025. 6)  Does anyone now how to convert the Archie mono out to colour?
  38026. Plugging the Archie SCART cable to the video doesnæt work! Oliver
  38027. Cornes.
  38028. 2.7
  38029. Å   Using First Mail Ö At first, I regarded First Word Plus as a very
  38030. ordinary word processor. The need to keep reformatting with <f12> seemed
  38031. to be a step backward. However First Mail changes the picture for me.
  38032. Here are one or two ideas on how to use First Mail for handling ordinary
  38033. day-to-day cor-respondence.
  38034. 2.7
  38035. I ömerge fromò a file carrying my letterhead. In fact I have a few
  38036. different letterheads for different purposes. In addition to the
  38037. letterhead my öfromò file has the following First Mail commands:
  38038. 2.7
  38039. longdate
  38040. 2.7
  38041. input öaddress file?ò, address
  38042. 2.7
  38043. input ötext file?ò, text
  38044. 2.7
  38045. includefile dat.address
  38046. 2.7
  38047. Dear
  38048. 2.7
  38049. includefile doc.text
  38050. 2.7
  38051. includefile dat.address
  38052. 2.7
  38053. (The bits in italic that should be in light type. It is not obvious
  38054. which the light bits should be; but see the note on p. 206 of the First
  38055. Word Plus manual.)
  38056. 2.7
  38057. The system asks me for an address file and then a file containing the
  38058. text of the letter, both of which it merges with the letterhead. The
  38059. second printing of the address comes after a hard page break. Since I
  38060. specify pauses on page breaks, this allows me to remove the letter from
  38061. the printer and replace it with the envelope (or sticker) for the second
  38062. address to be printed on that. I can cancel this when I do the draft
  38063. copy, which I keep for my own files. I save my letter texts in the doc
  38064. directory and addresses in the dat directory. This allows me to use the
  38065. same name for both if that is more convenient.
  38066. 2.7
  38067. Incidentally I use a brother daisywheel for most of my letter quality
  38068. printing; and I have configured the driver to print my letterhead in
  38069. bold red. A nice feature of First Word Plus is that you can have several
  38070. drivers for the same printer if you give them different names. Not only
  38071. that, but with a daisy-wheel you can have two configurations on the same
  38072. driver by making the NLQ configuration different from the draft
  38073. configuration, though of course, the terms draft and NLQ will have no
  38074. real meaning for a daisywheel.
  38075. 2.7
  38076. There are some errors in the Brother driver supplied, by the way; so
  38077. check with the manual, especially if you are Danish or are in the habit
  38078. of using some of the more obscure symbols. The First Word Plus manual is
  38079. a bit vague about full pathnames, too. For instance, to install a
  38080. different default printer you have to type, say,
  38081. 2.7
  38082. *copy 1wp.cfg.epson_fx resources.
  38083. 2.7
  38084. 1wp.1wp_print
  38085. 2.7
  38086. I find the First Word Plus file window most useful for exploring discs.
  38087. If you click on the window exit symbol you get the parent directory.
  38088. Clicking on a directory name in the window lists that directory in the
  38089. window as well as selecting it in the directory slot. Glyn Emery.
  38090. 2.7
  38091.  
  38092. 2.7
  38093. We begin a new section this month to help you get to grips with RISC-OS.
  38094. When you buy RISC-OS, you get a disc full of information from software
  38095. houses (see list below) about how to get their software running under
  38096. RISC-OS, but I suspect that because RISC-OS is so new, there will be
  38097. lots for us all to learn Ö hence this column.We really need a volunteer
  38098. to be the editor of this corner Ö someone to whom I can send all the
  38099. info and who will then collate it, check it and regurgitate it to me
  38100. (preferably via Eureka II for speed). Anyway, Mike Harrison, Matthew
  38101. Treagus, Keith Milner and Ting Kuei start us off.
  38102. 2.7
  38103. Å   Flashing screens Ö Iæve just got hold of the release RISC-OS User
  38104. Guide and noticed that it does not seem to mention the fact that in
  38105. modes 21, 24 and 28, the screen blanks when accessing floppies, due to
  38106. the high DMA rate. Iæm sure many dealers will get calls from worried
  38107. users who think that fitting RISC-OS has damaged their machine because
  38108. of the screen flashing on and off!
  38109. 2.7
  38110. Å   Logistix Ö Logistix users must replace the Floating Point Emulator
  38111. in the Library of the Log-istix Disc (version 2.50) with the later one
  38112. which is supplied with RISC-OS, i.e. FPE version 2.60. It can also be
  38113. found on the ABC Compiler Disc. If this is not done Logistix, will not
  38114. run correctly.
  38115. 2.7
  38116. Å   TWIN Ö If, like me, you are annoyed at the delay in loading TWIN
  38117. when editing programs, especially with BASIC using TWINO8, make an Obey
  38118. file that does the following :
  38119. 2.7
  38120. Set Run$Path Ram:,<Run$Path>
  38121. 2.7
  38122. Copy Twin Ram:Twin f~c
  38123. 2.7
  38124. (Ensure that your configured RamFS size is big enough first!). After
  38125. running this, Twin will be instantly loaded from Ram Disk. You can of
  38126. course also include in the file a *Key command to define your favourite
  38127. function key to call Twin, e.g.
  38128. 2.7
  38129.  Key 1 |UTWINO8|M
  38130. 2.7
  38131. For BASIC. The |U deletes any crud which may have been on the command
  38132. line before you hit <f1>.
  38133. 2.7
  38134. Å   Virsuses on RISC-OS!!! Ö I wonder how many people will look at this
  38135. in panic. Donæt worry. There is a virus on RISC-OS, even before it is
  38136. released, but it is totally harmless. In fact it is quite fun. First, a
  38137. brief description of how most viruses work:
  38138. 2.7
  38139. Most business machines load their operating system from disk. So, in
  38140. order to Évirusæ one of these machines, the offending program just
  38141. becomes part of the operating system in some way. It copies itself onto
  38142. other discs with operating systems on and soon every copy of the OS you
  38143. have is öinfectedò.
  38144. 2.7
  38145. On a sensible computer, such as the Archimedes(!) the operating system
  38146. is on ROM, and cannot be altered! Thus if someone decides to write a
  38147. virus program, once it is detected, turning the machine off will remove
  38148. it. It is, however, possible to install a virus on other files on disc.
  38149. This is much more difficult to do, is easier to detect and easier to
  38150. remedy. For instance, the !BOOT file is a common file to be found on a
  38151. disc, and a virus could conceivably attach onto this, although it would
  38152. be very difficult since every !BOOT file is different.
  38153. 2.7
  38154. I will not disclose how the RISC-OS virus installs itself as it will
  38155. only encourage people to write viruses. I will say, however, that once
  38156. detected, it is ((very simple)) to remove it with no after effects. If
  38157. the virus (which actually originates from Acorn!) appears on your disc,
  38158. not much actually happens╔ or at least it appears that way. You are
  38159. using the desktop as normal and suddenly, a small fish appears on the
  38160. screen and swims across, behind all the windows, leaving a trail of
  38161. bubbles which rise to the top of the screen and disappear. Several more
  38162. fish swim backwards and forwards on the desktop until the machine is
  38163. reset. This virus is totally harmless, the only ill effect is to use up
  38164. a bit of processor time! In fact, I have installed it deliberately as it
  38165. is quite relaxing!
  38166. 2.7
  38167. Another virus we have heard of is the FF8 virus which adds itself to
  38168. filetype FF8 files. It displays a message and prevents the affected file
  38169. from running on the 13th of the month.This it is a real pain if you are
  38170. not careful, i.e. if you forget to turn the computer off before running
  38171. a new program!  There is a detector program available (downloadable from
  38172. area 2 on Eureka II) but it will only check for the existence of the
  38173. virus and will not destroy it.
  38174. 2.7
  38175. Å   Manuals Ö Q: When RISC-OS is available, does it mean that the
  38176. manuals I purchased are outdated or will Acorn publish a cheap edition
  38177. to add to it?
  38178. 2.7
  38179. A: The bulk of the PRM remains correct, however there is a wealth of
  38180. brand new information and a new PRM will be out in due course, probably
  38181. in three volumes!
  38182. 2.7
  38183. The following firms have provided help on RISC-OS compatibility. The
  38184. information is on the Support Disc that comes with RISC-OS.
  38185. 2.7
  38186. Abacus Training Ltd
  38187. 2.7
  38188. Ace Computing
  38189. 2.7
  38190. Acorn Computers Ltd
  38191. 2.7
  38192. AVP Computing
  38193. 2.7
  38194. Cambridge Micro Systems Ltd
  38195. 2.7
  38196. Clares Micro Supplies Ltd
  38197. 2.7
  38198. Colton Software
  38199. 2.7
  38200. Dabs Press
  38201. 2.7
  38202. Dixon and Dixon
  38203. 2.7
  38204. Emmerich (Berlon) Ltd
  38205. 2.7
  38206. GEM Electronics
  38207. 2.7
  38208. Intelligent Interfaces Ltd
  38209. 2.7
  38210. Institute of Ophthalmologists
  38211. 2.7
  38212. Lendac Data Systems Ltd
  38213. 2.7
  38214. Lingenuity (Lindis International Ltd)
  38215. 2.7
  38216. Magenta Research Ltd
  38217. 2.7
  38218. Maze Technology
  38219. 2.7
  38220. Meadow Computers
  38221. 2.7
  38222. Minerva Systems Ltd
  38223. 2.7
  38224. Mitre Software Ltd
  38225. 2.7
  38226. Oak Professional Software Ltd
  38227. 2.7
  38228. Silicon Vision Ltd
  38229. 2.7
  38230. Watford Electronics Ltd
  38231.  
  38232. Å   Dacom modem connections Ö If you want to connect a Dacom modem to
  38233. the Archimedes, try the following connections:
  38234. 2.6
  38235.  Archimedes   Modem
  38236. 2.6
  38237. 2   ╤   3
  38238. 2.6
  38239. 3   ╤   2
  38240. 2.6
  38241. 5   ╤   7
  38242. 2.6
  38243. 9   ╤   6
  38244. 2.6
  38245. Also link 1, 4 and 8 at the Archimedes end and also 6 to 7. If you are
  38246. using Hearsay 1.04, use the Tandata modem driver, not the Dacom one.
  38247. 2.6
  38248. Å   Easy copying Ö If you have a single drive, try setting
  38249. 2.6
  38250. *set alias$dcopy %0 :0.%0 PQ
  38251. 2.6
  38252. Then you can use, say,
  38253. 2.6
  38254. *dcopy filetocopy
  38255. 2.6
  38256. and this will copy the file öfiletocopyò onto another disc on the same
  38257. drive, prompting for disc changes.
  38258. 2.6
  38259. Å   Easy compacting Ö This could apply to a number of commands, but if
  38260. you want, for example, to compact a disc several times, you can use
  38261. *repeat 6 compact which will do a *compact 6 times if you have previ
  38262. ously set an alias for repeat as follows:
  38263. 2.6
  38264. *set alias$repeat if %0>0 then repeat %0-1 %*1|m if %o>0 then %*1
  38265. 2.6
  38266. Å   Masked Sprites Ö The Welcome Disc Sprite Editor was criticised in
  38267. November 88 Archive as not working properly. It does work properly, well
  38268. almost!
  38269. 2.6
  38270. To create a masked sprite, first draw your sprite as normal, then press
  38271. <shift-f9> (create mask) then select the colour that you want to be
  38272. transparent and fill in any areas that are to be transparent. The
  38273. display will show a hatched effect for that colour.
  38274. 2.6
  38275. To plot a masked sprite, remember that you must use a GCOL 8,0 before
  38276. plotting the sprite.
  38277. 2.6
  38278. Å   Hard disc Backup program Ö Paul Hobbs sent in the following
  38279. improvement to last monthæs hard disc backup program╔ The very useful
  38280. hard disk backup program in Archive 2.5 can, I think, be improved very
  38281. easily by the addition of the following lines after the line PRINT
  38282. CHR$(13);òScanning:  ö;... etc in PROCaction(). It allows a check to be
  38283. made for directories not to be backed up. The full path name should be
  38284. given as in the example below. Quite a few of the directories on my disk
  38285. are backed up on their own floppies and this modification saves a lot of
  38286. time.
  38287. 2.6
  38288. 1621 RESTORE
  38289. 2.6
  38290. 1622 skip=FALSE
  38291. 2.6
  38292. 1623 REPEAT
  38293. 2.6
  38294. 1624   READ nocop$
  38295. 2.6
  38296. 1625   IF LEFT$(dir$,LENnocop$)
  38297. 2.6
  38298. =nocop$ THEN skip=TRUE
  38299. 2.6
  38300. 1626 UNTIL nocop$=ö*** END ***ò
  38301. 2.6
  38302. 1627 IF skip=TRUE THEN ENDPROC
  38303. 2.6
  38304. 7000DATA :4.$.1WP.cfg,:4.$.1WP.doc
  38305. 2.6
  38306. .BAK,:4.$.TMP,:4.$.BBCTelSoft
  38307. 2.6
  38308. 7001DATA :4.$.TMP,:4.$.CPROGGIES,
  38309. 2.6
  38310. :4.$.BACKUP,:4.$.1WP.hex
  38311. 2.6
  38312. 7002DATA ö*** END ***ò
  38313. 2.6
  38314. Å   Hard disc squeek Ö Those who are lucky enough to have hard discs may
  38315. be suffering a continuous high pitched squeal from the drive when the
  38316. machine is switched on. My dealer assured me that it would eventually go
  38317. away, but I lost patience and cured it by lubricating the disc drive
  38318. spindle with WD-40 (or similar). If you remove the disc drive and look
  38319. into the connector end, between the printed circuit board and the drive
  38320. body, you should be able to see a carbon pad mounted on the PCB which
  38321. rubs against the end of the spindle (to earth it and avoid static
  38322. problems). Using an aerosol can fitted with a long tube, a few drops of
  38323. lubricant on this pad will cure the noise. Take care when squirting Ö
  38324. and naturally no responsibility is accepted!
  38325. 2.6
  38326. Å   C routines Ö When using the tmpnam() or tmpfile() routines in the
  38327. ANSI C library, a directory &.Tmp needs to be created on the current
  38328. drive. This is not present on the master floppy, nor is it created by
  38329. the hard disc install procedure (installHD).
  38330. 2.6
  38331. Å   ANSI C command line parameters Ö page 31 of the manual says that
  38332. öArguments to main() are the words of the command line, delimited by
  38333. spacesò, but gives no further information. The parameters are actually
  38334. passed in the same way as the Unix2 environment does Ö for those
  38335. programmers unfamiliar with Unix, the main procedure is called with two
  38336. arguments, which are declared as:
  38337. 2.6
  38338. int main(argc,argv)
  38339. 2.6
  38340. int argc;
  38341. 2.6
  38342. char *argv[];
  38343. 2.6
  38344. {2 .6
  38345.      /* argv[1] points to first
  38346. 2.6
  38347.  parameter
  38348. 2.6
  38349.         argv[2] points to second,
  38350. 2.6
  38351.  etc.
  38352. 2.6
  38353.         Program name is at argv[0] */
  38354. 2.6
  38355. where argc is the number of parameters given (which includes the program
  38356. name, so this will always be at least 1) and argv is an array of
  38357. pointers to the parameters Ö argv[0] is the command name and argv[1] is
  38358. the first parameter. Parameters are normally separated by spaces, but
  38359. quoted strings are passed as one unit. Some programmers prefer to
  38360. declare argv as:
  38361. 2.6
  38362.    char **argv;
  38363. 2.6
  38364. and use it as a pointer to a list of pointers to the arguments.
  38365. 2.6
  38366. Å   BBC Master Edit Ö If you want to use an image of the Edit ROM (the
  38367. Master version) under 65Arthur, you need a *ALPHABET BFONT before
  38368. running it up, otherwise the on-screen help display looks very confus
  38369. ing. This ROM, by the way, uses CMOS byte 8 (öreserved for Acorn useò)
  38370. in which to save the screen mode and help level.
  38371. 2.6
  38372. Å   *COPY without the ÉQæ Ö omitting the Q option when copying a file
  38373. forces Arthur to ignore bad sectors or tracks in a file. This allows you
  38374. to recover screens or text files from corrupted discs If you have a
  38375. single drive and donæt want to perform umpteen swaps then proceed as
  38376. follows:
  38377. 2.6
  38378. *DELETE or *COPY (with Q) the other files until you have room for
  38379. another copy of the bad file.
  38380. 2.6
  38381. Then *COPY :0.filenme :0.BADfilenme ~C~PV
  38382. 2.6
  38383. Å   Orion loading speed Ö To speed up the loading, note that there is
  38384. what appears to be a non fatal bug in the ö$.Orion.Orion_basò program.
  38385. It *sloadæs a sprite file seven times!
  38386. 2.6
  38387.    LOAD ö$.Orion.Orion_basò
  38388. 2.6
  38389. now look round about line 3000 and you will find the *sload command that
  38390. should be outside the FOR/NEXT loop!
  38391. 2.6
  38392. Edit this and then save the program back onto the disc. (The name at the
  38393. top of the program has an extra Énæ at the end which has to be deleted
  38394. from the filename as displayed by the editor if you try to save it with
  38395. <f3>)
  38396. 2.6
  38397. Å   Orion Ö Feel like a laugh? Instead of EDITing ö$.Orion.Orion_basò as
  38398. above, try :
  38399. 2.6
  38400. *con. scr. 20
  38401. 2.6
  38402. *con. spr. 20
  38403. 2.6
  38404. <ctrl-break>
  38405. 2.6
  38406. *DIR Orion
  38407. 2.6
  38408. LOAD öOrion_basò
  38409. 2.6
  38410. 701 *UNSET BJS
  38411. 2.6
  38412. RUN
  38413. 2.6
  38414. Then when you press <space> to load the game you get a marvelous
  38415. digitised laugh! This is apparently a (very clever) part of the
  38416. protection used in the program.
  38417. 2.6
  38418. Å   Extended life for Orion Ö While the instructions are scrolling up
  38419. the screen try pressing <U>, <L>, <C> and <space> together but in that
  38420. order. It then allows you to select a level at which to start the game
  38421. and you will find that you start with 10 lives & 10 smart bombs!
  38422. 2.6
  38423. Å   Zarch cheat Ö you can get into the cheat mode if, when you first
  38424. start up and are sitting on the landing pad, you press <Q>, <T> and <U>
  38425. together but in that order. You may have to try it a few times. Now <L>
  38426. gives you an extra life, <F> refuels (in mid-air) and <D> toggles the
  38427. auto-pilot.
  38428. 2.6
  38429. Å   Zarch Ö Some new landscapes make this game much better. (Program
  38430. NewWorld on monthly program disc or send S.A.E. for listing.) This
  38431. program works with the original protected version of Zarch as long as
  38432. you have screen size to 160k and other sizes to zero. It uses a
  38433. variation of the PRINTKEY program in one of the earlier Archives.
  38434. (PRINTKEY had a bug in it! P%=0:O%=code% OPT 4-7)
  38435. 2.6
  38436. Å   Terramex. For endless lives, with Terramex disc in drive, type:
  38437. 2.6
  38438. *LOAD TERRACODE 9000
  38439. 2.6
  38440. !&CF18=&FAFFDC3E
  38441. 2.6
  38442. !&CF20=&FAFFDC3E
  38443. 2.6
  38444. CALL &9000
  38445. 2.6
  38446. Å   Quazer Ö with the Impact software version of Quazer (which appears
  38447. to be the same as V1.42) type:
  38448. 2.6
  38449. *SETEVAL Quazer%MeatHead 1 -Immortal
  38450. 2.6
  38451. (also try Quazer%Lives, Quazer%Level)
  38452. 2.6
  38453. Then use *Quazer to Run
  38454. 2.6
  38455. Å   OS_FSControl problem Ö David Scott reckons there is a problem with
  38456. the system command for the COUNT operation. The OS_FSControl (&29)
  38457. system command for filing system control with R0 set to 28 (page 262 of
  38458. the Programmers Reference Manual) has a problem which is not apparent
  38459. from the description given.
  38460. 2.6
  38461. If the call is used in a program to obtain values for use by the program
  38462. it is not possible to do this without the information also being printed
  38463. on the screen. This is because bit 8 of the action mask in R3 must be
  38464. set in order to get the correct values returned in R2 and R3.
  38465. 2.6
  38466. The way round this problem is to turn the screen output off using VDU21
  38467. before making the system call and then to turn it back on afterwards
  38468. with VDU6. If a printer is connected then this will also have to be
  38469. temporarily disconnected with VDU3 before and VDU2 after the call.
  38470. 2.6
  38471. Å   Potential Electrocution! (Archive 2.5 p19)  Ö This is a problem with
  38472. most colour monitors. The explanation is as follows... When you turn the
  38473. power off, a static charge forms on the screen surface, creating a
  38474. potential difference of several KV between the monitor chassis and the
  38475. screen surface. If you then pick the monitor up with the screen facing
  38476. your body, the screen is effectively connected to your body, and so the
  38477. potential now exists between you and the monitor chassis, and remains
  38478. there due to the insulating properties of the plastic case. If you then
  38479. touch the chassis via a mounting screw or the rear connector, the
  38480. potential will be discharged, possibly painfully! (I speak from
  38481. experience!)  The answer is to make sure you are touching the chassis
  38482. (e.g. the RGB connector shell) BEFORE picking it up, and keep hold of it
  38483. whilst carrying the monitor. The other answer is to lift and carry it
  38484. with the screen away from you.
  38485. 2.6
  38486. Å   Pipedream on RISC-OS Ö As reported last month, the current version
  38487. of Pipedream DOES work under RISC-OS. All you have to do is *RMKILL
  38488. International to kill the international keyboard. This is because Acorn
  38489. have changed the use of the <alt> key under RISC-OS and Pipedream uses
  38490. this for its drop-down menus.
  38491. 2.6
  38492. Å   PC Emulator problems Ö You may have problems with the computer
  38493. locking up when you are using the PC emulator. This happens sometimes
  38494. when you have a modem connected to the RS423 port which is not switched
  38495. on. I suspect it may be the öunknown IRQ at &00000000ò which Arthur
  38496. manages to cope with but perhaps the PC emulator canÉt. Try keeping the
  38497. modem switched on.
  38498. 2.6
  38499. Å   Stacked bar charts in Gammaplot Ö In Gammaplot it is not possible to
  38500. produce directly östackedò or segmented bar charts such as:-
  38501. 2.6
  38502.  
  38503. 2.6
  38504.  
  38505. 2.6
  38506.  
  38507. 2.6
  38508. Nor is it possible to create directly bar charts with gaps between the
  38509. bars such as-:
  38510. 2.6
  38511.  
  38512. 2.6
  38513.  
  38514. 2.6
  38515.  
  38516. 2.6
  38517. but it is possible to create them indirectly by using a table with (say)
  38518. only 1 in 5 of the values as a non-zero number (i.e. make other gaps by
  38519. introducing zeros in the spreadsheet).
  38520. 2.6
  38521. Multiple bar charts such as:-
  38522. 2.6
  38523.  
  38524. 2.6
  38525.  
  38526. 2.6
  38527.  
  38528. 2.6
  38529.  
  38530. 2.6
  38531. Can be created by producing three (or more) separate graphs from three
  38532. separate spreadsheets and then overlaying one on the other by using
  38533. öDisplay all graphsò and using the öWindow facility to move each (of the
  38534. 3) separately to the desired position. The diagonal lines and any text
  38535. (such as scales or title) is added in öCustomiseò afterwards.
  38536. 2.6
  38537. I know of NO package which produces segmented bar charts. Presenter will
  38538. produce multiple bars directly but without the flexibility of Gamma
  38539. Plot.
  38540. 2.6
  38541. If you had the patience then you could make several different bar charts
  38542. and use the öBlock Moveò facility of öCustomiseò to stack the blocks of
  38543. the bars but it would take time and might be a lot easier in, say,
  38544. Artisan which has a ötransparentò colour for use with its sprites.
  38545. 2.6
  38546. (N.B. Overlaid line graphs and multiple pie charts are very easy in
  38547. Gammaplot.)
  38548. 2.6
  38549.  
  38550. Å   How to wipe a disc clean Ö Having explained in H & T in issue 2.1
  38551. how to use *LIBöò and *WIPE * ~C to wipe a disc clean, here is the
  38552. really quick way! Take a blank disc and do a *BACKUP onto the disc to be
  38553. purged Ö takes about 10 seconds all together, even with only a single
  38554. drive!
  38555. 2.5
  38556. Å   Microlink Modem connections Ö We have at last sorted out the
  38557. connections necessary for the Microlink Multispeed modem. The problem is
  38558. that it seems to need two different connections depending on whether you
  38559. are using ArcTerm or Hearsay. Anyway, here are some connections that
  38560. seem to work OK. ArcTerm version first:
  38561. 2.5
  38562. Modem    Computer
  38563. 2.5
  38564. GND   1
  38565. 2.5
  38566.             }╤   5   GND
  38567. 2.5
  38568. GND   7
  38569. 2.5
  38570. RXD   2   ╤   3   TXD
  38571. 2.5
  38572. TXD   3   ╤   2   RXD
  38573. 2.5
  38574. RTS   4   ╤   7   RTS
  38575. 2.5
  38576. CTS   5   ╤   8   CTS
  38577. 2.5
  38578.             6   DSR
  38579. 2.5
  38580. DSR   6   ╤{2 .5
  38581.             1   DCD
  38582. 2.5
  38583. DTR   20   ╤   4   DTR
  38584. 2.5
  38585. Note that the Archimedes DCD is not connected to the modem DCD but to
  38586. the DSR to ensure that it is ON all the time. The modem DCD is only ON
  38587. whilst on-line. Here are the Hearsay connections:
  38588. 2.5
  38589. Modem    Computer
  38590. 2.5
  38591. GND   1
  38592. 2.5
  38593.           }╤   5   GND
  38594. 2.5
  38595. GND   7
  38596. 2.5
  38597. RXD   2   ╤   3   TXD
  38598. 2.5
  38599. TXD   3   ╤   2   RXD
  38600. 2.5
  38601. RTS   4   ╤   7   RTS
  38602. 2.5
  38603. CTS   5   ╤   6   DSR
  38604. 2.5
  38605. DSR   6 (NC)
  38606. 2.5
  38607. DTR   20 (NC)
  38608. 2.5
  38609. DCD   8   ╤   9   RI
  38610. 2.5
  38611.             1   DCD}
  38612. 2.5
  38613.             4   DTR} linked
  38614. 2.5
  38615.             8   CTS}
  38616. 2.5
  38617. Å   BBC Hard Discs Ö If you have BBC hard discs that use the 1 MHz bus,
  38618. you can run them on the Archimedes under the new 6502 emulator,
  38619. ö65hostò, that comes with RISC-OS. All you do is enter 65host and load
  38620. the BBC 1770 ADFS then, assuming you have an I/O podule, connect the
  38621. hard disc to the 2 MHz bus and away you go.
  38622. 2.5
  38623. (Surely it wouldnæt be too difficult, would it(?), to patch it into the
  38624. existing operating system to make the hard discs accessible in native
  38625. mode instead of limiting it to use with the emulator? Could anyone do
  38626. that for us? Ed.)
  38627. 2.5
  38628. Å   Naff RTC Month Ö If you get this error message when running the
  38629. desktop, the chances are that it is time to change your batteries. Acorn
  38630. suggest changing them once a year.
  38631. 2.5
  38632. Å   Repton 3 Ö first a comment Ö The characters included are exactly the
  38633. same as in the BBC version even though they are mode 9, so it looks like
  38634. mode 5 on the BBC. This is disappointing as the extra resolution and
  38635. colour are wasted unless you redefine the characters Ö a mammoth task as
  38636. there are 768 altogether! (Phil Armstrong, Doncaster)
  38637. 2.5
  38638. Phil also says╔ I redesigned the first 48 characters which took quite
  38639. some time and I did encounter a few problems, namely my maps occasion
  38640. ally were wiped or the start position changed. To get round this
  38641. problem, I examined the data files and found:
  38642. 2.5
  38643. &0000 to &10A0   8 Map definitions and colours for each map
  38644. 2.5
  38645. &10A0 to &70A0   48 character definitions
  38646. 2.5
  38647. So if you lose your maps or wish to copy a character set to another set
  38648. of maps, follow these operations:
  38649. 2.5
  38650. *Load Newdata 10000    load new char-acters as saved by editor
  38651. 2.5
  38652. *Save Char 110A0 170A0   save character set alone
  38653. 2.5
  38654. *Load Olddata 10000   load file contain-ing required maps
  38655. 2.5
  38656. *Load Char 110A0   overlay new character set
  38657. 2.5
  38658. *Save Newfile 10000 170A0   save maps and characters together
  38659. 2.5
  38660. Newfile can then be loaded into the game. Changing characters does not
  38661. seem to affect the competition numbers the game gives you.
  38662. 2.5
  38663. Å   Games on the 440 Ö Many games programs will not run on the 440 if
  38664. the screensize is set above 160k, so you should try *Configure Screen
  38665. size 5 before running the game.
  38666. 2.5
  38667. Å   Pacmania Ö Two avid öPacmaniacsò, Harjit Takshak and Linus Twizell,
  38668. have provided some Pacmania hints:
  38669. 2.5
  38670. Do a *LOAD PACMANIA 10000 then you can set the number of lives with
  38671. ?&102C8 = n (but too many slows the games down) and ?&113D4 = n sets the
  38672. number of points per pill and ?&10234 = n sets the number of credits and
  38673. then CALL &10000 starts off the game.
  38674. 2.5
  38675. Å   GammaPlot Ö It is possible to change the colour of a line on a line
  38676. graph by using the command *SG17,n,128 where n is the GCOL number (e.g.
  38677. 48 = blue). This command can also be used in the Macro mode followed by
  38678. a line with GRAPH (just the graph) or CHART (graph and axis). The colour
  38679. will be saved, along with the graph, to disc.
  38680. 2.5
  38681. Å   Printer problems Ö there have been one or two problems with spurious
  38682. operation of printers, especially with Integrex printers when doing
  38683. graphics dumps. These are caused by timing problems on the Archimedesæ
  38684. parallel port control lines and can be solved by an internal circuit
  38685. board modification that Acorn have recognised as a field change, i.e. if
  38686. you are having problems, go to your local Archimedes dealer and ask if
  38687. he can do field change 2002 for you. (D.I.Y. field changes will void
  38688. your warranty, but if you want details anyway, send us an S.A.E.)
  38689. 2.5
  38690. Å   Conditional booting (cf Archive 2.3, page 13) Philip Colmer says
  38691. that unfortunately *FX200,2 followed by reset is treated as a power-on
  38692. reset so the monotonic clock is reset. Probably a better way is
  38693. SYSöOS_Byteò,253,0,255 TO break% where break% is 0 for soft break, 1 for
  38694. power-on reset and 2 for a hard break Ö a bit more reliable than
  38695. checking a clock value.
  38696. 2.5
  38697. Å   BCPL on ADFS Ö J Laski writes╔ I am a BCPL freak: due to the fact
  38698. that ADFS was not available when it was designed, the ROM system causes
  38699. files to be read/written with OSBGET/PUT rather than OSFILE/OSGBPB;
  38700. also, intermediate files in the compiler and editor use names such as
  38701. Backup$ which ADFS abhors.
  38702. 2.5
  38703. To get round this, patch the routine in the ROM (image disk) FSTYPE
  38704. (G39) always to return 7 (see manual p117). In both BCPLARG and BCPLCCG,
  38705. patch the second static load (LLL) in G1 from öOCODE$$ò to öOCODE!!ò. In
  38706. ED, in G318 patch the static load in G318 about 40 words before the SWL
  38707. near the end of the routine; this can best be found by looking for the
  38708. long forward jump about 30 Cintcodes from the beginning. (N.B. I use an
  38709. extended ED, so have only given rough positions; G318 is the last
  38710. routine called from G1.)
  38711. 2.5
  38712. If you feel you cannot make these changes yourself, and send me a disk
  38713. with proof that you have a legal copy of BCPL and a stamped self-
  38714. addressed mailer, and I will send you a modified version. I would
  38715. appreciate, but do not insist on, any utilities that you think might
  38716. amuse me.
  38717. 2.5
  38718. I am seeking a version of BCPL in ARM code and, if ACORN cannot be
  38719. persuaded to release their version, will do it myself, probably somewhat
  38720. Éadhoclyæ. If you have any views on desirable facilities, I should be
  38721. glad to read them. I shall shareware distribute with a licence fee
  38722. requested. (Dr J Laski, 18 Ebury Street, London, SW1W 0LU.
  38723. 2.5
  38724. Å   öColour Printouts Ö The Easy Wayò  Ö I read with considerable
  38725. interest the article by W R (Basil) Davis on taking 35mm photographs of
  38726. the monitor screen. (Archive 1.9, page 52) I was able to put this to
  38727. practical use recently since I wished to design and produce some
  38728. graphics screens (using GammaPlot) and use these in a conference
  38729. presentation. I did consider using acetates with an overhead projector,
  38730. but decided 35mm slides would be more suitable.
  38731. 2.5
  38732. The following additional comments (which should be read in conjunction
  38733. with the original article) may assist other Archive readers contemplat
  38734. ing taking such pictures:
  38735. 2.5
  38736. 1) Before embarking on photographing any screen displays, it is
  38737. important to remember that any apparently minor öblemishò will be
  38738. magnified considerably if your results are being projected using 35mm
  38739. slides. Careful thought should be given to the screen layout and the
  38740. choice of colours; provided they donæt clash, brighter foreground
  38741. colours are preferable, with black or a dark blue making an ideal
  38742. background. The normal Archimedes text is quite visible when projected
  38743. using 35mm slides; additionally I used a GammaPlot feature to enlarge
  38744. the standard text for titles etc. and, whilst this was quite acceptable
  38745. on a monitor screen, when projected it did appear noticeable öchunkyò.
  38746. Next time I will use the Archimedes special fonts with GammaPlot
  38747. instead.
  38748. 2.5
  38749. 2) In choosing the 35mm film to use, one important consideration may be
  38750. the speed with which you wish the results to be returned to you. Whilst
  38751. most colour print films can be developed overnight or even within an
  38752. hour or so, this is not the case with colour slide films. Most have to
  38753. be sent away for processing and a delay of 10Ö14 days is not untypical.
  38754. If you want colour slide film developed quickly it is best to use (non
  38755. öprocess paidò) Kodak Ektachrome film which good photographic shops
  38756. should get returned to them within 2Ö3 days. There are also a few
  38757. specialist laboratories which offer a 2Ö3 hour service.
  38758. 2.5
  38759. 3) When determining the correct Épeak whiteæ exposure using an automatic
  38760. camera, it is possible for the cameraæs metering system to be too
  38761. sophisticated! I was using a Minolta 7000 AF camera and the exposure
  38762. settings fluctuated quite rapidly as the monitor screen picture was
  38763. scanned and refreshed. Checking the exposure using a different camera
  38764. confirmed the articleæs öif all else failsò assumed exposure settings.
  38765. 2.5
  38766. 4) Focusing may well be perfectly feasible when using a camera with
  38767. auto-focus. I found it best to set the initial focus with a screen
  38768. display visible, rather than a blank screen, and then switch the auto-
  38769. focus off Ö this is because the Minolta 7000 AF system tries to refocus
  38770. after every picture is taken. In setting the combination of shutter
  38771. speed and aperture, it is probably preferable to err towards the slower
  38772. shutter speed/smaller aperture (higher Éfæ number) setting as this will
  38773. increase the Édepth of fieldæ and give a greater safety margin if the
  38774. focusing is not quite right.
  38775. 2.5
  38776. 5) As mentioned in the original article, a sturdy tripod is virtually
  38777. essential and a remote shutter release (or possibly the cameraæs Delayed
  38778. Action feature Ö if fitted) must be used to avoid camera shake and
  38779. consequent blurred pictures. Additionally, switching off the room lights
  38780. when taking the photographs should avoid any extraneous reflections off
  38781. the monitor screen possibly spoiling the finished results.
  38782. 2.5
  38783. 6) If you are using 35mm slides and the results are to be projected
  38784. using a professional (rather than domestic) slide projector, it is
  38785. definitely worthwhile having the slides Églass mountedæ Ö although this
  38786. does increase the cost! This prevents the heat from the projector lamp
  38787. öpoppingò the slide and causing part(s) of it to appear out of focus.
  38788. For those who are interested in further reading on the subject, there is
  38789. an article in January 1989æs issue of BBC Acorn User (pages 81-83) on
  38790. the subject of taking photographs of the computer screen, there is even
  38791. advice on taking pictures of commercial games software.    Rob Brown.
  38792. 2.5
  38793.  
  38794. 2.5
  38795. Å   Willie Stott has sent in a very complete set of facilities for
  38796. support of the Epson LQ series, including a download font designer. This
  38797. will only be of interest to those with the right hardware, but he has
  38798. used a neat idea to get control of any extra facilities that your
  38799. printer supports, but for which First Word Plus has no category. He
  38800. points out that foreign characters can be used as printer definitions.
  38801. The characters with ASCII values between &E0 and &EE appear on the
  38802. bottom line of the character window and you have to do three things:
  38803. 2.5
  38804. a)   Define the character as a suitable message to the printer in the
  38805. character translation table of the hex file, then turn it into a driver.
  38806. 2.5
  38807. b)   Design suitable character definitions (using VDU23,...) to
  38808. represent the action of the printer so that it is added to the compu
  38809. teræs character table when FWP is booted up.
  38810. 2.5
  38811. c)   Include your definitions in the FWP boot file before the *key 1 ...
  38812. line.
  38813. 2.5
  38814. Å   A tip from an unknown writer (maybe Paul knows who to acknowledge Ö
  38815. Sorry, no. Ed.): how would you like to be able to produce a spool file
  38816. of your FWP output? What? Not much!? You may be missing something, as
  38817. you could then move the file to another machine and get a printout via
  38818. that machine, e.g. via an IBM or a mainframe. The trick is to *SET
  38819. PrinterType$4 <spoolfilespec> before booting up FWP. Then select
  38820. önetwork portò from the printer box in FWP. The system variable
  38821. PrinterType$4 holds the pathname for network printer output. The
  38822. <spoolfilespec> needs to include the full adfs:$.filename format.
  38823. 2.5
  38824. Å   Someone besides me is the kind of two-fingered typist that hits
  38825. <ctrl> at the same time as <A>. What should our correspondent do? File
  38826. his fingers down? Stick a piece of rough Velcro on the <ctrl> key? No,
  38827. contact the Archive office and have someone write a module to intercept
  38828. <ctrl-A> and make a beep. The trouble is that when you are just feeling
  38829. bold enough to try to modify a bit of assembler to help a friend, you
  38830. should not choose a keyboard buffer intercept. There is no way to try it
  38831. out safely, or even to get a decent service from the debugger as every
  38832. keypress goes via your duff code. You cannot even type ö*rmkillò
  38833. successfully. The only key which really works is <reset>. Help!! All
  38834. serious programmers out there: where did I go wrong? Why does the IRQ
  38835. stack pointer unwind so fast? P.S. If you can include a <ctrl-f12> =
  38836. swapcase facility in the module, you will win a large öthank youò and a
  38837. small prize for the best solution. You can start with the PrintKey
  38838. module program in Archive1.10, page 45.
  38839. 2.5
  38840. Å   There is a new version of FWP available from Acorn for those whose
  38841. copy does not pause at the ends of each page, even if the flag has been
  38842. correctly set in the printer driver. Return your disk to Customer
  38843. Support, Acorn Computers Ltd., Fulbourn Rd., Cherry Hinton, Cambridge
  38844. CB1 4JN. (Reprinted from BBC Acorn User, Feb æ89, p 10).
  38845. 2.5
  38846. It is rumoured that there is a genuinely new version on its way, perhaps
  38847. to coincide with RISC-OS.
  38848. 2.5
  38849. Å   Johnathan Young has a cure for the FWP buzz (the one which comes out
  38850. of the speaker or down the external audio output, and sounds like the
  38851. onset of tinnitus): boot up and then exit EMRæs sound synth package. A
  38852. bit expensive for silence, but you get the music program free! Has
  38853. anyone an explanation or a better solution?
  38854. 2.5
  38855.  
  38856. 2.5
  38857. H & T are a bit thin on the ground this month because this issue is
  38858. being finished before Christmas so I get some time off and itæs only a
  38859. couple of weeks since I closed the December issue, so not much has come
  38860. in yet. Most of the H & T that we have got were sent in by Anton Carver.
  38861. Thanks Anton!
  38862.  
  38863. 2.4
  38864. Å   Using function keys Ö If you want to get the function keys to
  38865. produce ASCII codes, say, 200, 201, 202 etc, you use *FX 225,200 but
  38866. this only works for keys <f0> (the print key) to <f9>. If you want to
  38867. use <f10> upwards, you need to use *FX 221,200. This also makes <insert>
  38868. into the equivalent of <f13> i.e. it generates, in this case, ASCII 213.
  38869. 2.4
  38870. Å   Troubles with Mitsubishi Drives? Ö Yes, there are problems with some
  38871. of the new 5.25ò Mitsubishi drives with some of the 5.25ò disc inter
  38872. faces, but they can be solved. The problem is the use of pin 2 on the
  38873. interface. It was not used on the BBC micro, but on the new Mitsubishi
  38874. drives it is used for DC interrupt. The solution is to put a little bit
  38875. of masking tape on the edge connector inside the drive mechanism so that
  38876. it doesnæt make contact with the p.c.b. Pin 2 is on the top of the board
  38877. at the outside edge.
  38878. 2.4
  38879. Å   Programmable reset Ö A hang-over from the BBC micro is that if you
  38880. program function key 10, you will find that if you press <reset>,
  38881. function key 10 will be executed! If you donæt know about this, it can
  38882. come as something of a shock, but it could be that you would want to
  38883. make use of it if you were, say, developing a machine code program which
  38884. kept hanging up the machine and forcing you to press <reset>. You could
  38885. program it as *KEY 10 *BASIC|MOLD|MEDIT .|M and it would jump you back
  38886. into editing the program at the point where you were.
  38887. 2.4
  38888. Å   Is it still going? Ö If you are doing some heavy machine code
  38889. programming and want to know if the computer is still working or whether
  38890. you have locked it up completely, try pressing the caps lock and/or
  38891. scroll lock keys and if they are still responding, your computeræs not
  38892. dead yet! The caps and scroll lock LEDæs are controlled by the computer
  38893. in response to the key presses, so if they are working, it tells you
  38894. that the processor is still reponding to interrupts.
  38895. 2.4
  38896. Å   Using ARMBE Ö It is useful to be able to enter ARMBE at the point of
  38897. the last error. Here is a program which sets up function key 4 so that
  38898. it enters ARMBE at the point where the error occurred or, if no error
  38899. then it enters where you were last editing by using öEDIT .ò.
  38900. 2.4
  38901. 10 *set key$edit IF ERL=0 THEN OSCLI (|öKEY 4 *FIXKEY4||mEDIT . ||m|ò)
  38902. ELSE OSCLI(|öKEY 4 *FIXKE Y4||mEDIT |ò + STR$(ERL) + |ö||m |ò)|mMISTAKE
  38903. |m*FX138,0,132|m
  38904. 2.4
  38905. 20 *set alias$fixkey4 set key$4 |<key$edit>
  38906. 2.4
  38907. 30 *fixkey4
  38908. 2.4
  38909. Å   REMæs Ö Although the User Guide says that REM statements are ignored
  38910. by BASIC, this is not completely true in BASIC V. This is because the
  38911. block conditional IF╔THEN╔ELSE╔ ENDIF requires the THEN to be the last
  38912. statement on the line. Adding a REM to the end of the line will change
  38913. the flow of control, thus:
  38914. 2.4
  38915. >LIST
  38916. 2.4
  38917.  10 OK%=TRUE
  38918. 2.4
  38919.  20 IF NOT OK% THEN
  38920. 2.4
  38921.  30   PRINT öWrong!ò
  38922. 2.4
  38923.  40 ELSE
  38924. 2.4
  38925.  50   PRINT öRightò
  38926. 2.4
  38927.  60 ENDIF
  38928. 2.4
  38929. >RUN
  38930. 2.4
  38931. Right
  38932. 2.4
  38933. >LIST
  38934. 2.4
  38935.  10 OK%=TRUE
  38936. 2.4
  38937.  20 IF NOT OK% THEN :REM Danger!
  38938. 2.4
  38939.  30   PRINT öWrong!ò
  38940. 2.4
  38941.  40 ELSE
  38942. 2.4
  38943.  50   PRINT öRightò
  38944. 2.4
  38945.  60 ENDIF
  38946. 2.4
  38947. >RUN
  38948. 2.4
  38949. Wrong!
  38950. 2.4
  38951. Å   MODE3/6 gaps Ö There is an undocumented difference between the way
  38952. that the gaps between lines are coloured in the 25-row modes. In modes 3
  38953. and 6, the gaps are the border colour and in modes 11, 14 and 17, they
  38954. are the background colour.
  38955. 2.4
  38956. By experimenting with SWIöOS_ReadMode Variableò, I discovered that bit 3
  38957. of variable 0 (Modeflags) indicates the condition. If the bit is set to
  38958. 0, the gaps will be background colour and if 1 they are border colour,
  38959. thus:
  38960. 2.4
  38961.  10 For mode%=0 TO 17
  38962. 2.4
  38963.  20   MODE mode%
  38964. 2.4
  38965.  30   VDU 10,0,24,128,0|
  38966. 2.4
  38967.  40   SYSöOS_ReadModeVariableò
  38968. 2.4
  38969. ,MODE,0 TO ,,modeflag%
  38970. 2.4
  38971.  50   PRINT öMode= ò;MODE
  38972. 2.4
  38973.  60   IF (modeflag% AND (1<<3))
  38974. 2.4
  38975. <>0 THEN t$=öBorderò ELSE t$=öBackgroundò
  38976. 2.4
  38977.  70   IF (modeflag% AND (1<<2))
  38978. 2.4
  38979. <>0 THEN t$=öNoò
  38980. 2.4
  38981.  80   PRINT t$;ö gapsò
  38982. 2.4
  38983.  90   wait%=GET
  38984. 2.4
  38985. 100 NEXT
  38986. 2.4
  38987. Å   Auto linefeed Ö Some software packages, like First Word Plus for
  38988. instance, insist that you set your printer so that it does not generate
  38989. auto-matic linefeeds. This means that if you list a BASIC program with
  38990. lines that are longer than the carriage length, the line wraps round and
  38991. is overprinted. To avoid this and the difficulty of fiddling with dip
  38992. switches, use the BASIC command WIDTH before printing. To do this, type
  38993. WIDTH <carriage length> (e.g. WIDTH 80) before printing and WIDTH 0 to
  38994. reset to the default setting after printing.
  38995. 2.4
  38996.  
  38997.  
  38998. Å   Fontsize problems? (Ed. got caught out on this one) With Claresæ
  38999. Sound and Graphics demo, when you start it up, it says it needs 44k of
  39000. fontsize, so I tried to re-configure with fontsize 6 on the basis that 6
  39001. times 8k = 48k. Now, as Iæm sure you will all realise, that didnæt work
  39002. because fontsize is specified in 4k chunks, not 8k or 32k.
  39003. Å   Logotron printer dump Ö Logotron told one of our readers that there
  39004. is no printer dump for their Archimedes Logo. However, our Printkey Dump
  39005. program (issue 1.10, page 45) works fine.
  39006. Å   RX80 dumps for Artisan Ö Clares originally said that Artisan
  39007. wouldnæt dump pictures on an Epson RX-80 and that the FX-80 was the
  39008. Ébase-lineæ printer as far as they were concerned. How-ever, they have
  39009. since produced a Éhelp-sheetæ of the pokes needed to convert the dump to
  39010. an RX-80.
  39011. 2.3
  39012. The gist of the change is as follows;
  39013. 2.3
  39014. If your printer will support CRT mode graphics, (ESC ö*ò,4) then use it.
  39015. If not then use ESC öKò for normal single density bit image mode, but
  39016. CRT mode gives a much better image and less distortion.
  39017. 2.3
  39018. *LOAD ART6 10000
  39019. 2.3
  39020. !&10EC5=&042A1B for CRT or =&4B1B00 for single density
  39021. 2.3
  39022. *SAVE ART6 10000 +12FF
  39023. 2.3
  39024. *SETTYPE ART6 &FF8
  39025. 2.3
  39026. The resultant print produces oval circles(!) but can be triggered from
  39027. Artisan.
  39028. 2.3
  39029. Å   Monochrome displays on the 440 Ö Brian Cowan writes, I was lucky
  39030. enough to have one of the first release of 440æs which I used with one
  39031. of the Acorn colour monitors. I know that the resolution of these
  39032. monitors is nothing fantastic, but it seemed sensible to purchase them
  39033. together; at that stage I was not sure what connection standards were
  39034. used.
  39035. 2.3
  39036. About six months later I had reason to use an ordinary mono monitor on
  39037. the 440, and imagine my horror when I found it did not work. Ordinarily
  39038. I would have sent the computer back to the supplier to have it fixed
  39039. under warranty. However, the machine was in constant use so we decided
  39040. to live with it, using only a colour monitor.
  39041. 2.3
  39042. I now discover that there is nothing wrong with the 440!! When these
  39043. machines leave the factory they are not configured to drive standard
  39044. resolution mono monitors, they are set up for high res monitors. Inside
  39045. the case, on the PCB are some jumpers that must be set according to what
  39046. sort of monochrome monitor you want to drive.
  39047. 2.3
  39048. At the north-west corner of the board is a plug called PL2. I think this
  39049. does nothing except carry some pin connector links. A little further
  39050. southwards on the board are some pins labeled LK13 and LK14. If you want
  39051. to drive a standard resolution monochrome monitor, you must take two
  39052. links from PL2 and place one on LK13 and the other on LK14.
  39053. 2.3
  39054. Connection to a monochrome monitor on 440 machines is through two BNC
  39055. sockets on the back panel. One socket is marked SYNC and the other is
  39056. labeled MONO. For high resolution, both of these are used but for
  39057. standard resolution only the SYNC socket is used. Since this is a BNC
  39058. socket rather than the phono socket on the 300 series, you will have to
  39059. make up or purchase a special lead or a converter.
  39060. 2.3
  39061. For those of you contemplating the purchase of a multisync monitor for
  39062. those extra modes etc. you will be happy to hear that the Archimedes
  39063. connect-ions are the same as those on PC machines. This means that if
  39064. the monitor comes with a lead, it will probably be suitable for the
  39065. Archimedes. This is certainly true for the Taxans that I use. Inciden
  39066. tally, concerning the Taxans, some have rather dull pictures. Has anyone
  39067. tried brightening them up?
  39068. 2.3
  39069. Å   Desktop calculator Ö öThe calculator on my desktop doesnæt respond
  39070. to the keyboard whereas your review of Arthur 1.2 said it did.ò So I
  39071. tried to work the calculator with the keyboard keys myself and it didnæt
  39072. seem to work. Then I realised that it wonæt respond until you enable it
  39073. for keyboard input by clicking on it with the mouse. The top bar then
  39074. goes red and itæs ready to take input from either the main keyboard or
  39075. the numeric pad, delete being the equivalent of clear. Easy when you
  39076. know how.
  39077. 2.3
  39078. Å   Conditional booting. If you have a boot file in the RFS on battery-
  39079. backed RAM, you may want to do some things when you first switch on but
  39080. not every time you do <ctrl-break>. You can achieve this by making it
  39081. conditional on the monotonic timer, i.e. the timer which is initialised
  39082. at switch-on and not reset in any other way. To read this timer, use SYS
  39083. &42 TO T% where T% then gives the time in centiseconds so you can say
  39084. that IF T%<200 (say) then do the switch-on bits and pieces ELSE do the
  39085. <ctrl-break> things.
  39086. 2.3
  39087. Å   CharDes fonts Ö If you have fonts produced by CharDes, you can
  39088. convert them for use on the Archimedes as follows. Enter 65Arthur and
  39089. type
  39090. 2.3
  39091. *spool thin2
  39092. 2.3
  39093. *thin
  39094. 2.3
  39095. *spool
  39096. 2.3
  39097. where thin is the name of the original font file and thin2 is going to
  39098. be the new file. Then use a text editor (such as the Master128æs öEditò)
  39099. and edit out the first and last line (i.e. the *thin and *spool). Then
  39100. resave as thin2 and settype it as &FF7 (BBC font). When you need it,
  39101. just type *thin2. If you do a *SHOW, you will see that the load and run
  39102. actions of a file type &FF7 is to *PRINT it Ö which is just what you
  39103. want.
  39104. 2.3
  39105. Å   Command files Ö In order to disable vdu output during a command file
  39106. e.g. the !boot file, try:
  39107. 2.3
  39108. *echo ||U
  39109. 2.3
  39110. ...
  39111. 2.3
  39112. ...
  39113. 2.3
  39114. *echo ||F
  39115. 2.3
  39116. Two string escape characters are needed (as Iæve explained in a previous
  39117. tip) so that the final command executed is *echo |U
  39118. 2.3
  39119. i.e. <ctrl-U>. This issues a VDU 21 which disables vdu output until a
  39120. VDU 6 is issued <ctrl-F>.
  39121. 2.3
  39122. This is similar to the ECHO OFF command of MS-DOS. Indeed if the string
  39123. used is:
  39124. 2.3
  39125. *echo ||U|H|Hoff
  39126. 2.3
  39127. then all that is visible is öecho offò which explains why nothing else
  39128. is visible to the user and also hides the control code sequence used.
  39129. The öcompiledò string is then *echo |U<8><8>off. One side effect is that
  39130. two line feeds will occur so if this is undesirable a couple of reverse
  39131. line feeds can be incorporated with
  39132. 2.3
  39133. *echo ||U|H|Hoff|K|K
  39134. 2.3
  39135. Note that the use of single string escape characters means that the
  39136. cursor control codes will have immediate effect whereas the <ctrl-U>
  39137. will only be issued when the echo command is executed.
  39138. 2.3
  39139. The double string escape characters are only needed for use with *Build,
  39140. if a text editor is used then only single characters are needed but the
  39141. control codes must be input directly, e.g. so they appear as inverse
  39142. video in TWIN, for those cases where the affect is immediate.
  39143. 2.3
  39144. (Sorry if this sounds a bit confusing but the difference between two and
  39145. one |æs, and when to use which, is an entire discussion point on its
  39146. own. Perhaps this could be a short article Ö it is important whenever
  39147. command files issue messages etc.) Clifford Hoggarth.
  39148. 2.3
  39149. Å   Quick *COPYing and *WIPEing Ö When you enter a wild card *COPY or
  39150. *WIPE on a list of files such as TEST1, TEST2, TEST3, etc. you are
  39151. presented with a list of options at the end of the copy or wipe
  39152. statement
  39153. 2.3
  39154. *COPY :0.TEST* :1.TEST*
  39155. 2.3
  39156. Copy file adfs::0.TEST1 as adfs::1.
  39157. 2.3
  39158. TEST1 (Y/N/Q/A)?
  39159. 2.3
  39160. etc.
  39161. 2.3
  39162. The option Y, N, Q and A mean the following :-
  39163. 2.3
  39164. Y Ö means copy that file
  39165. 2.3
  39166. N Ö means donæt copy that file
  39167. 2.3
  39168. Q Ö means quick copy all file with the wild card specification after and
  39169. including that one with no further confirmation prompts
  39170. 2.3
  39171. A Ö means abort from copying
  39172. 2.3
  39173. The *WIPE option works in a similar manner but deleting.
  39174. 2.3
  39175. Å   Stereo Speakers Ö After reading the hint in Archive 1.2 about adding
  39176. a pair of Tandy amplified speakers, I promptly rushed off Éto townæ.
  39177. They had just run out of stock, because the ú25 price-tag was a special
  39178. offer. However Tandy were very helpful and ordered me a pair which
  39179. arrived within a week and which at ú29.95 are still excellent value.
  39180. However, a set of alkaline batteries was quoted as ú7.95!! Instead, a
  39181. surplus old calculator mains adaptor and two power plugs (30p each from
  39182. a local electronics shop) provided a cheaper source of power. If you
  39183. donæt have a spare one, a new power supply from Rapid Electronics costs
  39184. less than ú4. The magic moment arrived and I switched on! The buzz from
  39185. the speakers was horrific!, but soon drowned by mayhem and destruction
  39186. from Zarch, which in turn was swamped by the dulcet tones of Éher
  39187. ladyshipæ complaining from the other end of the house about the volume!
  39188. 2.3
  39189. Back to the drawing board Ö two capacitors, recovered from an old tape
  39190. recorder smoothed the power supply output and banished the buzz. The
  39191. solution to the lack of volume control was to add two potentiometers.
  39192. Whilst I was at it, I decided to wire the volume controls into a socket,
  39193. so that Zarch could be enjoyed at a reasonable volume late at night
  39194. through a pair of personal stereo headphones as well as through speakers
  39195. at a more civilised hour. An houræs work, a couple of pounds and I now
  39196. have glorious stereo sound, at a reasonable volume!
  39197. 2.3
  39198. The diagrams below show the set up. A twin pot could be used instead of
  39199. two single ones, so that both speakers are controlled from one knob. Any
  39200. value pot from 100 ohms up to about 4.7k ohms will work, but 100 ohms is
  39201. ideal, though 470 ohm pots are easier to obtain. Logarithmic pots are
  39202. best, but linear ones work fine and are again are easier to obtain. The
  39203. big capacitor can be anywhere in the region shown (2500 microfarads/30V)
  39204. Ö the small one takes out the higher frequencies and again its value
  39205. (220 microfarads/16V) is not critical.
  39206. 2.3
  39207. Itæs worth noting that the speakers cut off only after a minute or two
  39208. if there is no sound being produced. Presumably there is a small
  39209. capacitor inside which needs to run down first. Similarly, they need a
  39210. certain minimum signal for a very short time in order for them to switch
  39211. back on. David Kent
  39212. 2.3
  39213. Å   Ultra-cheap sound amplification Ö Maplin Electronics (0702Ö554161)
  39214. have an amazing offer including a pair of walkman-type headphones AND a
  39215. pair of monitor speakers for just ú3.95! I donæt know how good they are,
  39216. but at that price, you canæt go far wrong. (Oh, thereæs a handling
  39217. charge of 50p and a postage charge of 50p Ö still, itæs not bad.)
  39218. 2.3
  39219. Å   View öOCò Command Ö In View B3.0, one of the highlights can be set
  39220. to 27 instead of the normal 128 for underline and 129 for emphasise. In
  39221. doing this, commands may be made directly to the printer as in the
  39222. Wordwise OC command. For example, to set highlight 1 to 27
  39223. 2.3
  39224. <Shift-f8> HT<return> 1 27 <return>
  39225. 2.3
  39226. On pressing <f4> (underline) the next character will be sent to the
  39227. printer as a command, i.e. ShFn4x1(-x1) will turn on NLQ mode (on some
  39228. Epson compatible printers). This system seems to work for most commands,
  39229. but some commands need an ASCII ,1 so to get round this set highlight
  39230. key 2 (emphasise) as 1 and type ShFn4wShFn5 (-x*) to turn on double
  39231. height for example. This does have the disadvantage that things canæt be
  39232. turned on and off in the same line as you have to set highlight 2 back
  39233. to 0 to turn it off.
  39234. 2.3
  39235. Å   Two ARM Code Assembly Macros Ö (Richard Averill) Ö Here are two
  39236. useful macros for use in the BASIC V ARM assembler. They both use the
  39237. same method of loading 32-bit words into a specified register, which is
  39238. detailed below:
  39239. 2.3
  39240. Originally, I had the idea that if I used the following piece of code:
  39241. 2.3
  39242. LDR <reg>, [PC, #-4] !
  39243. 2.3
  39244. EQUD <value>
  39245. 2.3
  39246. then the processor would load the value and jump on to the next
  39247. instruction. However, what actually happens is that the value is loaded
  39248. and the ARM tries to execute the value as an instruction. If the high-
  39249. byte of the value is zero, then this will not cause a problem, but it is
  39250. not advisable to use routines that are not totally water-tight.
  39251. 2.3
  39252. Here is the improved code:
  39253. 2.3
  39254. LDR <reg>, [PC]
  39255. 2.3
  39256. MOV PC, PC
  39257. 2.3
  39258. EQUD <value>
  39259. 2.3
  39260. which only takes one more word of code and works all the time. The MOV
  39261. PC,PC is there to make sure that the ARM executes the instruction that
  39262. is in the pipeline, and not the instruction in <value>.
  39263. 2.3
  39264. Using these ideas, I have developed two useful routines detailed below:
  39265. 2.3
  39266. DEF FNload(reg%, val%)
  39267. 2.3
  39268. [ OPT opt% AND &E
  39269. 2.3
  39270. LDR reg%, [PC]
  39271. 2.3
  39272. MOV PC, PC
  39273. 2.3
  39274. EQUD val%
  39275. 2.3
  39276. ] : =opt%
  39277. 2.3
  39278. DEF FNadr(reg%, adr%)
  39279. 2.3
  39280. [ OPT opt% AND &E
  39281. 2.3
  39282. FNload(reg%, adr%-P%-20)
  39283. 2.3
  39284. ADD reg%, PC, reg%
  39285. 2.3
  39286. ] : =opt%
  39287. 2.3
  39288. As you can see, the macros can be used as any other instruction in the
  39289. assembler as such:
  39290. 2.3
  39291. MOV R0, #123
  39292. 2.3
  39293. FNload(1, &12345678)
  39294. 2.3
  39295. FNadr(2, pointer)
  39296. 2.3
  39297. SWI öOS_Anythingò
  39298. 2.3
  39299. A demonstration program is given (on the program disc) to illustrate the
  39300. use of these macros.
  39301. 2.3
  39302. Å   Running ViewPlot under 65Arthur Ö Richard Averill Ö Listed here are
  39303. the changes needed to make ViewPlot Éharness the power of the Archi
  39304. medes!æ. They will tidy the programs up, allowing ViewPlot to run in any
  39305. mode and to print and save screens. A *Exec file of these changes is
  39306. provided on the monthly disc.
  39307. 2.3
  39308. To use this file, transfer the ViewPlot disc onto ADFS into a directory
  39309. such as ÉViewPlotæ. You can either create a text file of these commands
  39310. (with *Build or a text editor) or you can type the commands in yourself.
  39311. Either way, you should make sure that you are in the ViewPlot directory
  39312. when you try to convert the programs.
  39313. 2.3
  39314. *|Running ViewPlot under 65Arthur.
  39315. 2.3
  39316.  (C) Richard Averill, 1988.
  39317. 2.3
  39318. *BASIC
  39319. 2.3
  39320. LOAD öViewPltò
  39321. 2.3
  39322. 390
  39323. 2.3
  39324. SAVE öViewPltò
  39325. 2.3
  39326. LOAD öV__Dò
  39327. 2.3
  39328. 730 IF M=248 OSCLI(öScreensave Imageò)
  39329. 2.3
  39330. :PROC2(R%)
  39331. 2.3
  39332. SAVE öV__Dò
  39333. 2.3
  39334. LOAD öV__Mò
  39335. 2.3
  39336. 1140 DEF PROC0:VDU 28,0,23,39,5:CLS
  39337. 2.3
  39338. 1190 REPEAT
  39339. 2.3
  39340. 1200 INPUT öEnter screen mode (not
  39341. 2.3
  39342.  text) ? ö M%
  39343. 2.3
  39344. 1210 UNTIL FNcheckmode(M%)=TRUE
  39345. 2.3
  39346. DELETE 1220,1290
  39347. 2.3
  39348. 3000 DEF FNcheckmode(mode%)
  39349. 2.3
  39350. 3010 LOCAL col$,ok%
  39351. 2.3
  39352. 3020 ok%=FALSE
  39353. 2.3
  39354. 3030 IF mode%=0 OR mode%=8 OR mode%=12
  39355. 2.3
  39356.  OR mode%=15 OR mode%=18 OR mode%=19 OR mode%=20 THEN C%=16:ok%=TRUE
  39357. 2.3
  39358. 3040 IF mode%=1 OR mode%=4 OR mode%=9
  39359. 2.3
  39360.  OR mode%=13 THEN C%=32:ok%=TRUE
  39361. 2.3
  39362. 3050 IF mode%=2 OR mode%=5 OR mode%=10
  39363. 2.3
  39364.  THEN C%=64:ok%=TRUE
  39365. 2.3
  39366. 3060
  39367. 2.3
  39368. 3070 col$=ö04ò
  39369. 2.3
  39370. 3080
  39371. 2.3
  39372. 3090 IF mode%=0 OR mode%=4 OR mode%=18
  39373. 2.3
  39374.  THEN col$=ö04ò
  39375. 2.3
  39376. 3100 IF mode%=1 OR mode%=5 OR mode%=8
  39377. 2.3
  39378.  OR mode%=19 THEN col$=ö15ò
  39379. 2.3
  39380. 3110 IF mode%=2 OR mode%=9 OR mode%
  39381. 2.3
  39382. =12 OR mode%=20 OR mode%=10 OR mode%=13 OR mode%=15 THEN col$=ö2ò
  39383. 2.3
  39384. 3120 IF ok%=TRUE THEN OSCLI(öLOAD Colò
  39385. 2.3
  39386.  +col$+ö 2600ò)
  39387. 2.3
  39388. 3130 =ok%
  39389. 2.3
  39390. SAVE öV__Mò
  39391. 2.3
  39392. LOAD öV__Pò
  39393. 2.3
  39394. 250DATA 0,0,0,0,0,0,2,4,4,4,2,16,8,1
  39395. 2.3
  39396. ,16,0,0,0,2,2,16,4,1,16,0,0,0,2,
  39397. 2.3
  39398. 1,16,0,0,0,0,0,0,2,8,2,2,4,4,2,
  39399. 2.3
  39400. 2,16,2,1,16,2,8,2,2,8,2
  39401. 2.3
  39402. 1740DEFPROCJ(b%):e%(b%)=0:ONM%+1GOTO
  39403. 2.3
  39404. 1770,1810,1880,1880,1770,1810,1880, 1880,1810,1880,1880,1880,1880,1880
  39405. 2.3
  39406. ,1880,1880,1880,1880,1880,1770
  39407. 2.3
  39408. ,1810,1880,1880,1770,1770
  39409. 2.3
  39410. 2070DEFPROCE:FORb%=1TO8:e%(b%)=b%?
  39411. 2.3
  39412. (&2608+((a%-1)*2+a%-10)*8-1):ONM%+1
  39413. 2.3
  39414. GOTO 2110,2150,2200,2200,2110,2150,
  39415. 2.3
  39416. 2200,2200,2150,2200,2200,2200,2200, 2200,2200,2200,2200,2200,2200,
  39417. 2.3
  39418. 2110,2150,2200,2200,2150,2150
  39419. 2.3
  39420. SAVE öV__Pò
  39421. 2.3
  39422. Å   Cheap colour monitors Ö Peter Sykes bought a Commodore 1084 monitor
  39423. which seems to be identical to the Phillips 8833 but cheaper. He got his
  39424. from Eazyprint in Staines, Middlesex for ú240, around ú20 less than the
  39425. cheapest he could find the Phillips 8833. (Thereæs an Acorn one for sale
  39426. in the small adæs, but there must be other folk by now who are up-
  39427. grading to multi-syncs and have monitors for sale Ö send in your small
  39428. adæs folks Ö no charge.)
  39429. 2.3
  39430. Å   Use of Archimedes on Econet Ö Copying ADFS format discs to NET and
  39431. vice-versa, no utility is needed as Archimedes has it all built in:-
  39432. 2.3
  39433. *COPY -adfs-$.* -net-$.whatever.* QRC
  39434. 2.3
  39435. Here ADFS is the source, NET is the destination. The Éwhateveræ is the
  39436. chosen destination directory, or directory path (e.g. replace Éwhateveræ
  39437. with Éfred.mary.utilsæ) The * is to indicate all files. The Q indicates
  39438. QUICK copying using all available RAM. This damages resident programs
  39439. but considerabley speeds the copying process. It is also almost
  39440. essential if using early versions of the Econet Software Modules (NETFS,
  39441. ECONET) due to bugs in these which cause ÉNot Listeningæ messages. Later
  39442. versions do not suffer this. The R to indicates recursive copying of
  39443. sub-directories. The C turns OFF confirmation so that copying occurs for
  39444. all files without question.
  39445. 2.3
  39446. Simple modifications to the command line allow copying in the reverse
  39447. direction.
  39448. 2.3
  39449. (This was sent in by Michael Ryan, editor of the Econet User Group
  39450. Magazine (NEUS) which carries regular articles on Archimedes on the
  39451. network (and many less esoteric matters as well). We have also been
  39452. licensed by Acorn to provide free upgrades to Econet software modules
  39453. for those unable to obtain them elsewhere. Econet User Group, Balkeerie
  39454. Cottage, Eassie by Forfar, Angus, DD8 1SR.)
  39455. 2.3
  39456. FWP Hints & Tips
  39457. 2.3
  39458. compiled by Mike Hobart
  39459. 2.3
  39460. Å   Changing default drive Ö those of you with dual drives may want to
  39461. be able to get FWP to default to looking for data on drive 1. To do
  39462. this, all you do is load $.library.1wp and change the line that sets up
  39463. the documents directory to:
  39464. 2.3
  39465. *set FirstWordPlus$Docs :1.$.
  39466. 2.3
  39467. Å   Saving to a fresh disk Ö If you need to save your work onto a fresh
  39468. disk, you may have difficulty in persuading the save to work: you get
  39469. silly messages about the disk being write-protected and directories not
  39470. being present. This is very frustrating if you have just written the
  39471. first chapter of your bestseller. Try öSave as...ò, taking special care
  39472. either to see that you are in the correct directory as specified in the
  39473. directory box at the top of the save window or create a new file in the
  39474. root directory by clicking repeatedly on the X icon until you are left
  39475. with only a ö*ò. Thanks to Peter Tettmar, on whose solution is differ
  39476. ent, but less convenient as you have to anticipate the problem!
  39477. 2.3
  39478. Å   Form feeds in the wrong places Ö Edit your printer driver (the öhexò
  39479. directory one) to inactivate the övertical tab to lineò feature. This is
  39480. done by placing a ö*ò at the beginning of the line (line no 4, which
  39481. should now read *4, 1B,42,80,0,B or near). If you have serious troubles
  39482. with irrational formfeeds, try setting the CONFIGURE IGNORE of the
  39483. battery-backed RAM to prevent the computer ever sending to crucial code
  39484. to the printer. (Thanks to David Adamiak and from him to GST Holdings).
  39485. 2.3
  39486. Å   Use of IBM fonts Ö Steve Jones points out that there can be
  39487. advantages in using the IBM font set, if your printer supports it. The
  39488. monthly disk con-tains his very full instructions and programs. The main
  39489. reason for using the IBM fonts is the availability of certain symbols
  39490. for maths and graphical characters. These can be especially useful for
  39491. designing forms.
  39492. 2.3
  39493. Å   Graphics problems (e.g. that white is printed grey etc.) can be
  39494. cured by preparing the graphics in 1st Word palette. For Artisan, copy
  39495. 1stwordæs Resources.1wp.!palette as artisan.1wppal (or what takes your
  39496. fancy) on the Artisan disk, then boot up Artisan, grab the disk ikon and
  39497. finally select the new palette. The result is not artistic, but a quick
  39498. roller brush over the background with white, followed by the artwork in
  39499. e.g. black produces a picture you can import and have printed correctly.
  39500. The reason this works is that the graphics dump routine in 1st Word
  39501. assumes the use of the programæs own palette, or at least that it is
  39502. trying to produce a paper version of what you see on the screen. It is,
  39503. incidentally, quite an intelligent and quick dump, which checks to see
  39504. if there are pixels to print before printing a line, and issuing a
  39505. linefeed if not.
  39506. 2.3
  39507. Å   Conversion from WWPlus Ö The following hint might be useful to
  39508. people still trying to convert WW+ file to 1WP. The convert program
  39509. published in Archive does a wonderful job. However, I found it a bit
  39510. irksome having to edit out all the ÉUSæs and ÉUEæs etc which are left
  39511. after the program has dealt with the green and white embedded commands.
  39512. (This just goes to show how quickly we start to take things for
  39513. granted!!). I also found that it was impossible to reformat the text to
  39514. a new line length. The latter problem seemed to be that 1WP ended lines
  39515. with &0E, whist converted WW+ files ended with the last letter of the
  39516. last word on the line.
  39517. 2.3
  39518. The solution to both problems is as follows:
  39519. 2.3
  39520. 1   SPOOL out the WW+ file, using Option 8 (This removes all embedded
  39521. commands and centres text and produces indents and TABs)
  39522. 2.3
  39523. 2   Reload the spooled file and use Search & Replace to change all
  39524. double returns to @@ (or any other unused combination of letters)
  39525. 2.3
  39526. 3   Change all of the remaining single returns to <space>-return
  39527. 2.3
  39528. 4   Change all of the @@s (or whatever) to <space>-return-return
  39529. 2.3
  39530. 5   SAVE the modified file using Option 1
  39531. 2.3
  39532. 6   Run the SAVED file through the convert program
  39533. 2.3
  39534. The effect of 2, 3 and 4 is to save the paragraph breaks, but end all of
  39535. the lines with a space. The result is a file with no extra Éremainsæ of
  39536. embedded commands, and which will reformat correctly in First Word Plus.
  39537. 2.3
  39538.  
  39539.  
  39540. Å   Mannisman Tally printers with serial interface Ö Pin connections
  39541. are: pins 1, 4 and 6 linked together on the Archimedes, pin 3 to pin 3
  39542. on the printer, pin 5 to pin 7 on the printer and pin 8 to both pins 11
  39543. and 19 on the printer.
  39544. 2.2
  39545. Å   SWI öXOS...ò Ö If you are using SWI öXOS...ò commands so that you
  39546. can handle your own errors, it will fail if you try to return
  39547. immediately after this command to the calling routine. A dummy instruc
  39548. tion needs to be inserted before the LDMFD instruction. Presumably a
  39549. Éfeatureæ of OS 1.2.
  39550. 2.2
  39551. Å   Problems with *Memory and *MemoryI Ö If you try to use these two
  39552. commands in the debugger with the aim of dumping to printer, you will
  39553. find that codes above &7F are not weeded out Ö they are all sent to the
  39554. printer regardless which can cause all sorts of problems. The following
  39555. program patch will solve the problem.
  39556. 2.2
  39557.  10 REM> DEBUGPCH
  39558. 2.2
  39559.  20 REM (C) JW^2 4th OCTOBER 1988
  39560. 2.2
  39561.  30 DIM A% &270C
  39562. 2.2
  39563.  40 OSCLIöSAVE Debugged_D 38486A0
  39564. 2.2
  39565.  +270Cö
  39566. 2.2
  39567.  50 OSCLIöLOAD Debugged_D ò+STR$~A%
  39568. 2.2
  39569.  60 FOR F=0 TO 3 STEP 3
  39570. 2.2
  39571.  70   P%=A%+&2230
  39572. 2.2
  39573.  80   [
  39574. 2.2
  39575.  90   OPT F
  39576. 2.2
  39577. 100   STMDB R13!,{r0-r9 ,R14}
  39578. 2.2
  39579. 110   .LOOP
  39580. 2.2
  39581. 120   LDRB  R0,[R9],#1
  39582. 2.2
  39583. 130   CMP   R0,#&7F
  39584. 2.2
  39585. 140   MOVHS R0,#&2E
  39586. 2.2
  39587. 150   CMP   R0,#&1F
  39588. 2.2
  39589. 160   MOVLS R0,#&2E
  39590. 2.2
  39591. 170   SWI   öXOS_WriteCò
  39592. 2.2
  39593. 180   BVS   (LOOP+&35D)
  39594. 2.2
  39595. 190   SUBS  R2,R2,#1
  39596. 2.2
  39597. 200   BNE   LOOP
  39598. 2.2
  39599. 210   ]
  39600. 2.2
  39601. 220 NEXT
  39602. 2.2
  39603. 230 OSCLIöSAVE Debugged_D ò+STR$~A%+
  39604. 2.2
  39605. ö +270Cò
  39606. 2.2
  39607. 240 OSCLIöSETTYPE Debugged_D &FFAò
  39608. 2.2
  39609. Å   EDITæs disappearing cursor Ö If you use Éoptionsæ (<shift-f3>), you
  39610. can change to a non-flashing cursor which is visible all the time, and
  39611. you donæt have to change it each time you switch on the machine because
  39612. EDIT stores its options in cmos ram. (Anyone know if thereæs a way to
  39613. re-program it to change the colour of the cursor?)
  39614. 2.2
  39615. Å   Putting sound through the monitor Ö It is perfectly possible to put
  39616. the sound output from the 3.5mm stereo jack socket on the Archimedes
  39617. through the amplifiers and speaker(s) of both the standard Acorn colour
  39618. monitor and also the Phillips CM8833. All you need is a piece of twin
  39619. screened cable (though actually I used ordinary thin three core mains
  39620. flex which is OK for such a short length) and a 3.5 mm stereo jack plug
  39621. (RS Components 274Ö284, ú1.19 for two). The SCART plug connections are
  39622. that pin 2 is right audio, 4 is earth and 6 is left audio. The pins
  39623. should be numbered, but if not, 2, 4 and 6 are the first three pins
  39624. along the long edge of the plug starting from the rectangular end.
  39625. 2.2
  39626. Three possible problems: firstly, you may find that the SCART plug has
  39627. no pins at positions 2, 4 and 6 in which case you will have to buy a new
  39628. plug (Tandy N╝ 15Ö7030, ú1.49 each) and re-wire the other connections.
  39629. Secondly, you may find that your cable doesnæt fit through the space
  39630. available for the cable entry in the SCART plug Ö in which case, some
  39631. judicious hacking of the plastic is needed. Finally, if the SCART plug
  39632. has got pins at 2, 4 and 6, you may not be able to get at them to solder
  39633. onto them. The solution here is to push each of the three pins back out
  39634. through the body of the plug, solder them then push them back in again.
  39635. It sounds easy but itæs not Ö there are little barbs the stop the pins
  39636. being pushed out so you have to try to manipulate these and push the
  39637. pins out at the same time Ö OK if you have three hands!
  39638. 2.2
  39639. The result Ö If the kids want to play Orion at full volume, they can,
  39640. but I can turn it back down to a sensible volume when I use the system.
  39641. 2.2
  39642. Å   Stereo Speakers Ö I recently followed the suggestion in Archive 1.2,
  39643. page 7 and purchased the amplified speakers (Model 40-1259E) from a
  39644. local Tandy store. Initially I also purchased a couple of mains adaptors
  39645. to power each unit but I found that this caused a considerable mains hum
  39646. through both speakers. Upon returning to the Tandy store, I was advised
  39647. that hum was caused by the mains adaptors not being earthed and, rather
  39648. than spending more money on earthed mains adaptors, I exchanged the
  39649. original adaptors for re-chargeable batteries which seem to work fine Ö
  39650. there are also fewer wires trailing around! Whilst the stereo effect is
  39651. very good, there is a problem in that there is no volume control fitted
  39652. to these speakers; the suggestion from one of the staff at Tandy was to
  39653. wire in two of their öL-Pad Speaker Level Controlsò. Have any other
  39654. Archive readers tried this or come up with a different solution?
  39655. 2.2
  39656. I have found that by amending the *Configure SoundDefault middle
  39657. parameter to a lower value than 7, the volume can be reduced, this does
  39658. provide some measure of control of sound volume; these parameters can
  39659. take a value of 0 to 7 with each unit corresponding to one eighth of the
  39660. overall maximum volume (see PRM, page 537).
  39661. 2.2
  39662. Å   Monitor problems (with solutions!) Ö Fujitsu and MAG 14C Ö The
  39663. problem began on the MAG with a distortion of the top few lines of the
  39664. display when in a multisync mode. The nature of this problem suggested
  39665. that the monitor took several scan lines to lock onto the composite sync
  39666. signal fed to it from the Archimedes. It was decided to feed it with
  39667. separate vertical (frame) and horizontal (line) sync signals, which
  39668. necessitated having to alter the preset links 10 and 11 within the
  39669. Archimedes. At present this involves cutting a track (Lk10) and
  39670. inserting a link (Lk11), since these links are not brought out on the
  39671. normal Molex type links. Having done this modification you need a
  39672. *Configure Sync 0 to set ÉVertical sync onlyæ instead of ÉComposite
  39673. syncæ to the monitor, otherwise the display rolls (indicating lost frame
  39674. sync). This then cured the screen distortion problem but because of the
  39675. way Acorn have put Composite/Vertical sync on the green signal, it kills
  39676. the green output. With much trepidation this problem was overcome by
  39677. disabling Acornæs implementation of this signal by cutting pin 2 of IC
  39678. 4. The result is a perfect picture.
  39679. 2.2
  39680. The Fujitsu monitor problem was much simpler and cured far easier after
  39681. the troubles with the MAG.
  39682. 2.2
  39683. Although the picture quality was very good, there was an excess of
  39684. green, even though R39 had been removed (see Archive 1.3 p8) It was
  39685. originally thought that some internal adjustment of the green gun was
  39686. needed but, with the experience of MAG monitor (and having tried it on
  39687. the modified sync signal from the green output) the link changes proved
  39688. unnecessary as the monitor worked perfectly happily with composite sync.
  39689. Again the result was a perfect picture.
  39690. 2.2
  39691. Anyone wanting further information on this modi-fication can either
  39692. contact Reg Dalton on 0742 487992 (less technical/Evenings only) or
  39693. Steve Bass (who did all the work) on 0742 708028 (Daytime) or 0742
  39694. 886622 (Evenings).
  39695. 2.2
  39696. Å   Screen saving from the SCML Teletext adaptor Ö R L Jefferies has
  39697. worked out how to dump screens from the SCML Teletext Adaptor. (Pressing
  39698. the ÉSæ command option gives an error but SCML have not replied to his
  39699. questions about that yet.) He has utilised Robin Newmanæs mode 7 to mode
  39700. 9 utility as supplied on program disc 1.10. He copied this into the
  39701. library directory on the Teletext disc and then created a mode 7 to mode
  39702. 9 screensave module using Neil Strongæs öPrintkey screen dumpò (issues
  39703. 1.10 p 45 and 1.11 p 7). Two lines need altering in the source program:
  39704. 2.2
  39705. line 840 should be changed to cmp r0,#83 and line 920 should be equs
  39706. öM7M9 screensave scr<file>ò
  39707. 2.2
  39708. Note that you should *SETEVAL file XX before you load the öSò key module
  39709. and before executing the Teletext module. One small niggle is that Robin
  39710. Newmanæs module returns with the cursor ON. Is there an easy way to get
  39711. rid of this?
  39712. 2.2
  39713. Å   Bug in C Ö Karl Strickland writes╔ There appears to be a bug in the
  39714. fgets() function in version 1.54A (latest public release) of ANSI C.
  39715. Instead, use the function given below and declare it using
  39716. 2.2
  39717. char *xfgets (char*,int,FILE*);
  39718. 2.2
  39719. We have to use xfgets (as opposed to fgets) because the linker gets
  39720. confused if it finds the same function declared twice.
  39721. 2.2
  39722. char* xfgets (char* a,int b,FILE *s)
  39723. 2.2
  39724. {2 .2
  39725.    int c,d;
  39726. 2.2
  39727.    *a=NULL;     /* Must include STDIO.H */
  39728. 2.2
  39729.    for (c=0;c<b;c++) {2 .2
  39730.       d=fgetc(s);
  39731. 2.2
  39732.       if (d==EOF)
  39733. 2.2
  39734.          return NULL;
  39735. 2.2
  39736.       else
  39737. 2.2
  39738.          if (d==13)
  39739. 2.2
  39740.             return a;
  39741. 2.2
  39742.          else
  39743. 2.2
  39744.             strncat(a,(char*)&d,1);
  39745. 2.2
  39746.    }
  39747. 2.2
  39748.    return a;
  39749. 2.2
  39750. }
  39751. 2.2
  39752. Å   A hint for Twin from Bj┐rn Fl┐tten Ö When using Twin to edit large
  39753. BASIC programs you can easily run out of memory. (Twin complains by
  39754. hanging up the computer when called.) This is because of the inconveni
  39755. ent way Twin is called from BASIC. Because Twin works on ASCII files,
  39756. BASIC has to expand the current program from tokenised form to ASCII.
  39757. This copy is placed on top of the BASIC program and is maybe 20-30%
  39758. larger than the original. Then Twin is called and makes a new copy of
  39759. the program which it places on top of itself. This means that an
  39760. unnecessary lot of memory is used.
  39761. 2.2
  39762. One solution is to let Twin run from the address of PAGE. This works
  39763. because Twin is not loaded into memory before the BASIC program is
  39764. expanded. However, you will have to ensure that the BASIC program is
  39765. bigger than Twin, if not, Twin will be loaded over the expanded version
  39766. of your program.
  39767. 2.2
  39768. (This unfortunately makes the problem of Twin not releasing some vectors
  39769. worse. This means that these vectors will point into the middle of your
  39770. BASIC program after exiting from Twin. Use reset after exiting to BASIC
  39771. and then OLD, to cure this.)
  39772. 2.2
  39773. Å   Problems with (Master) EDIT Ö If you get rubbish when you load up
  39774. the EDIT ROM image from the BBC Master into the 6502 emulator, try
  39775. loading it with:
  39776. 2.2
  39777. *65arthur
  39778. 2.2
  39779. *GO F800
  39780. 2.2
  39781. *EDIT
  39782. 2.2
  39783. Å   From Arthur to BASIC Ö If you are in the Arthur supervisor and you
  39784. type *Progname where Progname is a BASIC program, it will run the
  39785. program and drop you back out into the supervisor (equivalent to *BASIC
  39786. Öchain Progname). However, if you *LOAD Progname, it switches to BASIC,
  39787. loads the program and gives you back control with a É>æ prompt Ö
  39788. equivalent to *BASIC Öload Progname but shorter to type and certainly
  39789. easier than *BASIC followed by LOAD öPrognameò. If you do a *SHOW, you
  39790. will see the filetype definitions which make sense of it all.
  39791. 2.2
  39792. Å   Sprites and Sprite Commands Ö Paul White-horn writes╔ The Sprite
  39793. Editor on the Welcome disc does not work properly being unable to create
  39794. masked sprites (those with a transparent back-ground) or to save shades
  39795. of colour that have been set up in the various edit modes. For many
  39796. board style games this is not an insuperable difficulty and for chess
  39797. and checkers, mode 1 creates reasonably detailed sprites in red, yellow,
  39798. black and white.
  39799. 2.2
  39800. The simplest way of getting your own sprites from the Welcome disc onto
  39801. your game or program disc is to *SNEW to wipe out anything that can be
  39802. called a sprite in RAM, *SLOAD (by name or number) your sprite or sprite
  39803. file into the machine from the Welcome disc (you donæt need to be in the
  39804. Sprite Editor to do this), take out the Welcome disc, insert your game
  39805. disc, *MOUNT it and *SSAVE (name) the contents of the machineæs RAM.
  39806. Whatever sprites you have in RAM at this point will all go into a file
  39807. created and named by the *SSAVE command and will be placed on your own
  39808. disc.
  39809. 2.2
  39810. To check that they are all safely installed on your game disc *SNEW
  39811. again (to clear RAM) and *SLOAD (name) the sprite(s) you have just
  39812. *SSAVEæd on your disc. Now typing *SLIST will bring up a list of ALL the
  39813. sprites in RAM which should correspond to the ones you have just
  39814. transferred from the Welcome disc. At this point you can rename the
  39815. sprites you see listed before you but the syntax for the *SRENAME
  39816. command is not as it appears in the User Guide. Type *SRENAME (oldname)
  39817. (newname) without commas or other punctuation marks separating the two
  39818. names and without any quote marks round the names. This renames sprites
  39819. in RAM and if you want these new names preserved on your disc then they
  39820. must be *SSAVEæd collectively back to disc and you can  save them with a
  39821. different file name if you wish.
  39822. 2.2
  39823. *SDELETE (name) deletes a sprite in RAM whereas *DELETE (name) deletes a
  39824. sprite (or file of sprites) on disc. Having weeded out sprites you donæt
  39825. require with *SDELETE it is best to *SSAVE those you do need (possibly
  39826. with a new file name) and *SNEW to clear RAM before proceeding further.
  39827. This way you will not have rogue sprites lurking in RAM or in files on
  39828. your disc where they may be called by default if they have the same name
  39829. or number as the new ones.
  39830. 2.2
  39831. To create files of sprites from different sources you can use *SMERGE
  39832. which merges a sprite (or file of same) from disc with those already
  39833. installed in RAM. Those coming from disc have priority so if you have
  39834. two sprites with the same name or number, the one on the disc will
  39835. overpower its namesake in RAM. This command seems a little haphazard on
  39836. my 310 especially with sprites which are numbered and occasionally
  39837. several tries are needed to make it happen as required.
  39838. 2.2
  39839. If you intend to choose sprites during the course of your game as a
  39840. consequence of numerical operations then it is necessary to use numbers
  39841. as names so that they can be called with the VDU command. The VDU call
  39842. takes variables with a range between 0 and 255 so make sure your sprites
  39843. donæt exceed this range.
  39844. 2.2
  39845. *SINFO prints the size of the sprite workspace and *SCOPY (oldname)
  39846. (newname) copies the named sprite. *SGET picks up a portion of the
  39847. screen as a sprite but for details of this see the User Guide.
  39848. 2.2
  39849. Å   EMR SoundSynth + CC ROM podule Ö There has been a problem of a clash
  39850. between EMRæs SoundSynth and Computer Conceptsæ ROM/RAM podule in that
  39851. after using SoundSynth, the contents of the RAM filing system disap
  39852. peared! (Fortunately, I had a recent backup!) EMR have been looking into
  39853. the problem and have sorted it out. If you have had the same problem,
  39854. return your disc to EMR and they will replace it öin most cases, free of
  39855. chargeò.
  39856. 2.2
  39857. Å   Loading palette files Ö Here is a simple BASIC program to load a
  39858. ö!Paletteò file and set the palette up. The file format really is
  39859. simple: 3 bytes are stored for each colour Ö red, green and blue
  39860. respectively. This group of 3 bytes is repeated for all 20 colours saved
  39861. Ö logical colours 0-15, the border, and mouse colours 1-3.
  39862. 2.2
  39863.  10 REM >TestPal
  39864. 2.2
  39865.  20 REM ===> To demonstrate reading a
  39866. 2.2
  39867.  30 REM ===> Desktop !Palette file
  39868. 2.2
  39869.  40 REM By John Smith, September 1988
  39870. 2.2
  39871.  50 REM
  39872. 2.2
  39873.  60 MODE 12 :REM Any 16-colour mode
  39874. 2.2
  39875.  will do.
  39876. 2.2
  39877.  70 :
  39878. 2.2
  39879.  80 REM Put all 16 colours on screen,
  39880. 2.2
  39881.  and a 2-colour mouse pointer.
  39882. 2.2
  39883.  90 FOR x%=0 TO 15
  39884. 2.2
  39885. 100   GCOL x%
  39886. 2.2
  39887. 110   RECTANGLE FILL x%*80,0,80,1023
  39888. 2.2
  39889. 120 NEXT
  39890. 2.2
  39891. 130 MOUSE ON
  39892. 2.2
  39893. 140 *POINTER 1
  39894. 2.2
  39895. 150 PRINTTAB(0,0);öNow press a key to
  39896. 2.2
  39897.  load the É!Paletteæ fileö
  39898. 2.2
  39899. 160 dummy=GET
  39900. 2.2
  39901. 170 :
  39902. 2.2
  39903. 180 REM Now load the palette file.
  39904. 2.2
  39905. 190 handle%=OPENIN ö!Paletteò
  39906. 2.2
  39907. 200 REM Do östandardò colours first.
  39908. 2.2
  39909. 210 FOR loop%=0 TO 15
  39910. 2.2
  39911. 220   COLOUR loop%, BGET#handle%,
  39912. 2.2
  39913.  BGET#handle%, BGET#handle%
  39914. 2.2
  39915. 230 NEXT
  39916. 2.2
  39917. 240 :
  39918. 2.2
  39919. 250 REM Screen Border
  39920. 2.2
  39921. 260 VDU 19,0,24, BGET#handle%,
  39922. 2.2
  39923.  BGET#handle%, BGET#handle%
  39924. 2.2
  39925. 270 :
  39926. 2.2
  39927. 280 REM Mouse colour 1
  39928. 2.2
  39929. 290 MOUSE COLOUR 1, BGET#handle%,
  39930. 2.2
  39931.  BGET#handle%, BGET#handle%
  39932. 2.2
  39933. 300 MOUSE COLOUR 2, BGET#handle%,
  39934. 2.2
  39935.  BGET#handle%, BGET#handle%
  39936. 2.2
  39937. 310 MOUSE COLOUR 3, BGET#handle%,
  39938. 2.2
  39939.  BGET#handle%, BGET#handle%
  39940. 2.2
  39941. 320 CLOSE#handle%
  39942. 2.2
  39943. Å   InterWord to ArcWriter Ö if you have InterWord files from BBC days
  39944. and want to transfer them to ArcWriter, look in the First Word Plus
  39945. hints below where the transfer to FWP is achieved by transferring first
  39946. to ArcWriter.
  39947. 2.2
  39948. Å   Double-precision to BBC BASIC Ö following on from the floating point
  39949. BCD to BBC BASIC conversion program published in Archive 1.11, page 32,
  39950. Carl Cepurneek has done a routine which converts from the more efficient
  39951. Double-precision reals to BBC BASIC.
  39952. 2.2
  39953. 10 REM>Carl - FPU number conversion
  39954. 2.2
  39955. 20 REM BBC BASIC V to FPU memory
  39956. 2.2
  39957. 30 REM format conversions
  39958. 2.2
  39959.  40 REM Packed decimal print routine
  39960. 2.2
  39961.  50
  39962. 2.2
  39963.  60 REM Carl P.Cepurneek 26 Clyde St
  39964. 2.2
  39965.  70 REM Parkside, S.A.5063,Australia
  39966. 2.2
  39967. 100
  39968. 2.2
  39969. 110 DEFPROCcvt_s(bbc,adr) :REM from
  39970. 2.2
  39971.  BBC real at |bbc to FP at adr
  39972. 2.2
  39973. 120 LOCAL exp%,sign%,mant%
  39974. 2.2
  39975. 130 !adr=0:adr!4=0   :REM clear
  39976. 2.2
  39977. 140 IF |bbc=0:!adr=0:ENDPROC
  39978. 2.2
  39979. 150 exp%=(bbc?4)-&80 :REM get
  39980. 2.2
  39981.  adjusted exponent
  39982. 2.2
  39983. 160 IFexp%>0 exp%=exp%+126 ELSE exp%=
  39984. 2.2
  39985. 126-ABS(exp%)
  39986. 2.2
  39987. 170 !adr=!adr OR exp%<<23:REM set
  39988. 2.2
  39989.  exponent bits
  39990. 2.2
  39991. 180 sign%=!bbc AND &80000000
  39992. 2.2
  39993. :REM isolate sign bit
  39994. 2.2
  39995. 190 !adr=!adr OR sign%:REM set sign bit
  39996. 2.2
  39997. 200 mant%=!bbc AND &7FFFFFFF :REM
  39998. 2.2
  39999.  clear neg bit if set
  40000. 2.2
  40001. 210 !adr=!adr OR mant%>>>8:REM set
  40002. 2.2
  40003.  mantissa
  40004. 2.2
  40005. 220 ENDPROC
  40006. 2.2
  40007. 230
  40008. 2.2
  40009. 240 DEFPROCcvt_d(bbc,adr):REM from
  40010. 2.2
  40011.  real at address bbc
  40012. 2.2
  40013. 250 LOCAL exp%,sign%,mant%
  40014. 2.2
  40015. 260 !adr=0:adr!4=0
  40016. 2.2
  40017. 270 IF |bbc=0:!adr=0:ENDPROC
  40018. 2.2
  40019. 280 exp%=(bbc?4)-&80 :REM get
  40020. 2.2
  40021.  adjusted bbc exponent
  40022. 2.2
  40023. 290 IF exp%>0 exp%=exp%+1022 ELSE exp%
  40024. 2.2
  40025. =1022-ABS(exp%)
  40026. 2.2
  40027. 300 !adr=!adr OR exp%<<20
  40028. 2.2
  40029. 310 sign%=!bbc AND &80000000
  40030. 2.2
  40031. :REM isolate sign bit
  40032. 2.2
  40033. 320 !adr=!adr OR sign%:REM set sign bit
  40034. 2.2
  40035. 330 mant%=!bbc AND &7FFFFFFF
  40036. 2.2
  40037. :REM clear sign bit set
  40038. 2.2
  40039. 340 !adr=!adr OR mant%>>>11 :REM set
  40040. 2.2
  40041.  mantissa msbits
  40042. 2.2
  40043. 350 mant%=mant%<<21 :REM shift over
  40044. 2.2
  40045.  low bits
  40046. 2.2
  40047. 360 adr!4=adr!4 OR mant%  :REM set
  40048. 2.2
  40049.  mantissa lsbits
  40050. 2.2
  40051. 370 ENDPROC
  40052. 2.2
  40053. 380
  40054. 2.2
  40055. 390 DEFPROCcvt_e(bbc,adr):REM from
  40056. 2.2
  40057.  BBC real at |bbc
  40058. 2.2
  40059. 400 LOCAL exp%,sign%,mant%
  40060. 2.2
  40061. 410 !adr=0:adr!4=0:adr!8=0 :REM clear
  40062. 2.2
  40063.  destination
  40064. 2.2
  40065. 420 IF |bbc=0:!adr=0:ENDPROC
  40066. 2.2
  40067. 430 exp%=(bbc?4)-&80 :REM get
  40068. 2.2
  40069.  adjusted exponent
  40070. 2.2
  40071. 440 IFexp%>0 exp%=exp%+16382 ELSE
  40072. 2.2
  40073.  exp%=16382-ABS(exp%)
  40074. 2.2
  40075. 450 !adr=!adr OR exp%  :REM set
  40076. 2.2
  40077.  exponent bits
  40078. 2.2
  40079. 460 sign%=!bbc AND &80000000
  40080. 2.2
  40081. :REM isolate sign bit
  40082. 2.2
  40083. 470 !adr=!adr OR sign%:REM set sign bit
  40084. 2.2
  40085. 480 mant%=!bbc OR &80000000  :REM set
  40086. 2.2
  40087.  top bit (J)
  40088. 2.2
  40089. 490 adr!4=adr!4 OR mant% :REM set
  40090. 2.2
  40091.  mantissa
  40092. 2.2
  40093. 500 ENDPROC
  40094. 2.2
  40095. 510
  40096. 2.2
  40097. 520 DEFFNprint_packed(base%)
  40098. 2.2
  40099. 530 LOCAL ms%,ms$,es%,es$,m%,s%
  40100. 2.2
  40101. 540 @%=&00001
  40102. 2.2
  40103. 550 m%=(!base% AND &80000000)>>>31
  40104. 2.2
  40105. 560 IF m%=0 ms$=ö+ò ELSE ms$=ö-ò
  40106. 2.2
  40107. 570 PRINT ms$;
  40108. 2.2
  40109. 580 m%=(!base% AND &F<<8) >>>8
  40110. 2.2
  40111. 590 PRINT m%;ö.ò;
  40112. 2.2
  40113. 600 FOR s%=4 TO 0 STEP -4
  40114. 2.2
  40115. 610   m%=(!base% AND &F<<s%) >>>s%
  40116. 2.2
  40117. 620   PRINT m%;
  40118. 2.2
  40119. 630 NEXT
  40120. 2.2
  40121. 640 FOR w%=4 TO 8 STEP 4
  40122. 2.2
  40123. 650   FOR s%=28 TO 0 STEP -4
  40124. 2.2
  40125. 660     m%=(w%!base% AND &F<<s%) >>>s%
  40126. 2.2
  40127. 670     PRINT m%;
  40128. 2.2
  40129. 680   NEXT
  40130. 2.2
  40131. 690 NEXT
  40132. 2.2
  40133. 700 e%=(!base% AND &40000000)>>>30
  40134. 2.2
  40135. 710 IF e%=0 es$=ö+ò ELSE es$=ö-ò
  40136. 2.2
  40137. 720 PRINTö Eò;es$;
  40138. 2.2
  40139. 730 FOR s%=24 TO 12 STEP -4
  40140. 2.2
  40141. 740   m%=(!base% AND &F<<s%) >>>s%
  40142. 2.2
  40143. 750   PRINT m%;
  40144. 2.2
  40145. 760 NEXT
  40146. 2.2
  40147. 770 =öò
  40148. 2.2
  40149. Å   Using 40-track drives Ö If you have a 40 track 5.25ö drive as used
  40150. on PC clones, you can use it under the PC emulator but, in native
  40151. Archimedes ADFS modes you will have problems. To get round it, format
  40152. the disc as normal then, when it goes beyond öFormatting 40ò and starts
  40153. clicking as it reaches the end of the travel on the head movement, press
  40154. <ctrl-break>. The disc is now formatted, but the free space map and
  40155. catalogue have not been installed. This can be done with:
  40156. 2.2
  40157. DIM buffer% 3072
  40158. 2.2
  40159. SYSöADFS_DiscOpò,,1,0,buffer%,3072
  40160. 2.2
  40161. SYSöADFS_DiscOpò,,2,1,buffer%,3072
  40162. 2.2
  40163. You try this entirely at your own risk! Ed.
  40164. 2.2
  40165. Å   Problems with ON ERROR LOCAL Ö John Smith says he thinks heæs
  40166. discovered a problem when using LOCAL ERROR with ON ERROR LOCAL. It
  40167. occurs because ON ERROR LOCAL stores the exact position in the program
  40168. structure. The User Guide mentions this with respect to REPEAT...UNTIL
  40169. and WHILE...ENDWHILE loops, but it also seems to apply to IF..THEN...
  40170. ELSE...ENDIF constructs. Once the error handler has done its job,
  40171. processing must continue at the same part in the structure in which the
  40172. original error happened. For example,
  40173. 2.2
  40174. 1000 DEF PROCtest(arg)
  40175. 2.2
  40176. 1010 LOCAL ERROR
  40177. 2.2
  40178. 1020 ON ERROR LOCAL PRINT öCanæt
  40179. 2.2
  40180.  divide by zero Ö try againö
  40181. 2.2
  40182. 1030 IF arg < 100 THEN
  40183. 2.2
  40184. 1040 INPUT value
  40185. 2.2
  40186. 1050 PRINT arg/value
  40187. 2.2
  40188. 1060 ENDIF
  40189. 2.2
  40190. 1070 ENDPROC
  40191. 2.2
  40192. If a value of zero is input, line 1050 will error. As written, the above
  40193. code will then print a warning message and effectively execute a öGOTO
  40194. 1030ò. At this point, the error handler stack is corrupted. The program
  40195. may appear to work without problem, but if any future error should
  40196. occur, the program may produce a run-time error something like öAttempt
  40197. to exit from badly nested error handlerò or something similar. Occasion
  40198. ally, I have even managed to produce the dreaded öAddress Exception
  40199. errorò!
  40200. 2.2
  40201. The solution to this problem is quite simple Ö place the code that could
  40202. error together with the relevant error handler in a separate PROCedure.
  40203. I have not (yet) had any problems doing this:
  40204. 2.2
  40205. 1000 DEF PROCtest(arg)
  40206. 2.2
  40207. 1030 IF arg < 100 THEN
  40208. 2.2
  40209. 1050 PROCprint(arg)
  40210. 2.2
  40211. 1060 ENDIF
  40212. 2.2
  40213. 1070 ENDPROC
  40214. 2.2
  40215. 2000 DEF PROCprint(arg)
  40216. 2.2
  40217. 2010 LOCAL ERROR
  40218. 2.2
  40219. 2020 ON ERROR LOCAL PRINT öCanæt
  40220. 2.2
  40221.  divide by zero Ö try againö
  40222. 2.2
  40223. 2040 INPUT value
  40224. 2.2
  40225. 2050 PRINT arg/value
  40226. 2.2
  40227. 2060 ENDPROC
  40228. 2.2
  40229. First Word Plus Hints & Tips
  40230. 2.2
  40231. Here are a few of the many contributions weæve been sent about First
  40232. Word Plus. Weæve got a file of about ten other contributions, so we do
  40233. need someone who knows FWP, has a reasonable skill at writing and has a
  40234. bit of spare time to field the enquiries, assimilate the hints and tips
  40235. and regurgitate something to us each month.
  40236. 2.2
  40237. Å   First Word Plus startup Ö If you are getting fed up of starting
  40238. First Word Plus and finding yourself in lower case, you could *Configure
  40239. Nocaps, but that is a nuisance if you do programming and want to start
  40240. up in Shiftcaps. The solution is to extend the boot file, adding
  40241. *FX202,48.
  40242. 2.2
  40243. Å   LQ850 with sheetfeeder Ö If youære having problems with this
  40244. combination, Acorn say that you should edit the printer driver so that
  40245. entry 4 (vertical tab) is commented out by pre-fixing it with a ö*ò.
  40246. Also, note that if your printer is doing auto-linefeeds, you should also
  40247. edit option 1 to remove the line feed value (A) from the line to leave
  40248. just the carriage return (D).
  40249. 2.2
  40250. Å   Star LC10 Ö (ref. the Help enquiry we had last month) David Francis
  40251. says he uses the Epson FX driver successfully with this printer. He has
  40252. the dip switches set as follows: 1-1 to 1-8 and 2-1 and 2-4 are all ON
  40253. and 2-2 and 2-3 are OFF. The Archimedes is configured to IGNORE 0. With
  40254. this setting, the printer prints out the test, including the graphics
  40255. part. As set, it also prints under <ctrl-B> as well as with Artisan.
  40256. Heæs also tried to change the hex file to get it to work with quadruple
  40257. size, but hasnæt succeeded yet.
  40258. 2.2
  40259. Å   Printer drivers Ö In designing my own printer drivers for both the
  40260. Citizen 120D and Star LC-10 printers, I have not come across the problem
  40261. noted, but mine were modified from the Epson LX printer driver. There
  40262. was an item on the Letters section (page 128) of Octoberæs issue of the
  40263. Micro User referring to an apparently similar problem, which the writer
  40264. cured by öcommenting outò line &20 of the printer driver. I must admit
  40265. that I cannot understand why this should have any effect, but in case it
  40266. benefits other Archive readers, I detail below those elements of the
  40267. printer drivers I have set up relating to form or line feeds (refer also
  40268. to page 227 of the First Word Plus manual):
  40269. 2.2
  40270. 1D, A Ö Linefeed (N.B. carriage return & linefeed)
  40271. 2.2
  40272. 1E, C Ö Formfeed (N.B. &C = 12 as mentioned in the article)
  40273. 2.2
  40274. 1F, 12 Ö Horizontal initialisation (N.B. appears to cancel condensed)
  40275. 2.2
  40276. 20, 1B, 52, 0 Ö Vertical initialisation (N.B. appears to select USA
  40277. characters)
  40278. 2.2
  40279. A further possible cause of problems may be to do with the printeræs dip
  40280. switches, on page 218 of the First Word Plus manual it does state that:
  40281. 2.2
  40282. Skip over perforation must be DISABLED and Auto linefeed must be
  40283. DISABLED
  40284. 2.2
  40285. Å   Printer Drivers with extended characters Ö Ted Peat has sent in
  40286. various bits for FWP which weæve put on the program disc.
  40287. 2.2
  40288. The printer drivers were written to permit both the Panasonic KXP-1081
  40289. and the Diablo-ecs printer to access the same set of extended characters
  40290. (those with codes from 160 to 255). The character set of the Archimedes
  40291. is also modified to suit.
  40292. 2.2
  40293. The Diablo-ecs printers use a daisy wheel with a double row of charac
  40294. ters, giving 192 in all. The usual ASCII set is supplemented by
  40295. characters with codes >128. The description given here applies to the
  40296. Éscientificæ wheel containing Greek and mathematical symbols. The KXP-
  40297. 1081 can be switched to emulate the IBM Graphics set, which also
  40298. includes some Greek letters and some (but not all) useful mathematical
  40299. symbols, again with codes >128. There are also some table-drawing
  40300. symbols which are replicated several times over, and accented characters
  40301. not needed for this application. Since up to 40 user-defined characters
  40302. are possible, these redundant characters can be replaced. This then
  40303. offers the opportunity to produce matched sets of symbols for the two
  40304. printers and the Archimedes.
  40305. 2.2
  40306. I decided to include the complete Greek alphabet, which involves
  40307. duplication of some upper case letters, and (for the KXP-1081 only), one
  40308. set of table-drawing symbols. Two other symbols were added: an overline
  40309. and backspace. Backspace is entered into the text as a large leftward
  40310. pointing arrow-head (stored as character 161), but interpreted by the
  40311. printer as a true backspace. One consequence of this, of course, is that
  40312. text loses its WYSIWYG property. The advantage, however, is that both
  40313. superscripts and subscripts can be attached to the same symbol, and the
  40314. overline can be used to write a bar above a character. Since these
  40315. peculiar needs are only likely within equations, the loss of on-screen
  40316. text formatting is a minor irritation. Another complication was that the
  40317. Diablo lost its left margin alignment after a backspace, when printing
  40318. in the reverse direction. This option had to be switched off, slowing
  40319. the printer down.
  40320. 2.2
  40321. There were two options for changing the Archi-medes character set. One
  40322. was to change the Archi-medes font, to match that desired as far as
  40323. possible, and then to redefine characters for the few changes needed.
  40324. The most useful character set is that described as BFONT on p. 458 of
  40325. the User Guide. To access this you need to *Configure Country Master.
  40326. The second way: which is the one I adopted was to redefine all charac
  40327. ters from 160 to 255. To do this I added a section to the 1st Word +
  40328. loading program (Library.1stWord+ on the program disc).
  40329. 2.2
  40330. Once this was done, mapping the new character set to the Diabloæs set
  40331. was easy: merely rewrite one of the provided Diablo Printer Drivers (in
  40332. the hex dir-ectory) by changing the character translation table which
  40333. forms the last part of the printer driver text.
  40334. 2.2
  40335. The KXP-1081 offered more complications. Firstly, it is necessary to
  40336. download the redefined character set before loading 1stWordPlus. Another
  40337. addition to the loader program, together with a user prompt, took care
  40338. of this. Secondly, switching this printer to its IBM Graphics mode
  40339. caused comp-lications with graphics printing: all the linefeeds became
  40340. doubled! The printer driver codes were therefore expanded so that for
  40341. each character the printer was switched into IBM Graphics set, the
  40342. character printed, and then switched back to the Epson mode. This sends
  40343. seven characters to the printer for every one actually printed. Since
  40344. these are only occasional characters, the loss of efficiency is not
  40345. important
  40346. 2.2
  40347. Å   Printer Driver Generator Ö John Smith has sent in, not another
  40348. printer driver, but a printer driver generator program. Heæs given it to
  40349. be used as public domain software, so we have put it on Shareware disc
  40350. number 2. For best results, copy the PDG program onto a copy of the 1st
  40351. Word Plus Utilities disk before running it.
  40352. 2.2
  40353. Å   Tabs and underlining Ö This one is for dum-dums like me, writes
  40354. David Crofts, who learn word-processing at the finger tip.
  40355. 2.2
  40356. Underlining Ö I spent many happy, but frustrating, hours fiddling with
  40357. forms to try to sort out under-lining in intervening spaces, till I
  40358. discovered that the hated TAB holds the key! (I expect this is obvious
  40359. for lots of people, but hold on to the yawns.) I was used to VIEW where
  40360. the TAB key worked öprop-erlyò. (It inserted a TAB character, whatever
  40361. that was, but it meant that a change in ruler meant a change in layout.)
  40362. In FWP the Indent key does this job, except that it puts in a special
  40363. stretch space which is fixed in spite of further ruler alterations.
  40364. Because of this I had ignored TAB as useless.
  40365. 2.2
  40366. TAB inserts a set of normal spaces which have to be deleted individually
  40367. Ö a nuisance if you are experi-menting with documents. But Ö you can
  40368. underline TAB spaces, whereas you canæt underline Indents! And therein
  40369. lies the hint!
  40370. 2.2
  40371. By all means use indents to facilitate experi-mentation but, in the end,
  40372. TABs are preferable, where you wish subsequently to underline. If you
  40373. have used Indents, then all is not lost, though fiddle is the name of
  40374. the game. Turn off Insert, and turn on Underline (f2), then fill in the
  40375. spaces with Fixed Space (f10). Then use the mouse or keyboard to
  40376. underline the words.
  40377. 2.2
  40378. e.g. Say you have a form, the head of which is:
  40379. 2.2
  40380. Name   Address   Telephone
  40381. 2.2
  40382. the above is the result using Indent, but using TAB you will achieve:
  40383. 2.2
  40384. Name╩╩╩╩╩╩Address╩╩╩╩╩╩Telephone╩╩╩╩╩
  40385. 2.2
  40386. Placing a TAB at the appropriate point near the end of the ruler allows
  40387. the line to be printed to the same length on each line.
  40388. 2.2
  40389. Å   InterWord to FWP via ArcWriter Ö This is how Ian Barnes achieves the
  40390. transfer:
  40391. 2.2
  40392.    1.   Transfer file from IW to AW_DOC directory
  40393. 2.2
  40394.    2.   Run ArcWriter
  40395. 2.2
  40396.    3.   Press <select> for filing menu
  40397. 2.2
  40398.    4.   Highlight file x
  40399. 2.2
  40400.    5.   Press <menu>, select import, flowing, return
  40401. 2.2
  40402.    6.   Press <select> for filing menu
  40403. 2.2
  40404.    7.   Press <menu> and select export plus new name
  40405. 2.2
  40406.    8.   Transfer file to 1WP.doc directory
  40407. 2.2
  40408.    9.   Run 1WP and open file
  40409. 2.2
  40410.    10.   Select WPmode from edit menu
  40411. 2.2
  40412.    11.   Tidy up text by deleting control characters, changing any odd
  40413. letters and inserting returns at line ends to leave a presentable result
  40414. 2.2
  40415. Å   Files from ArcWriter Ö The article by Brian Carroll in Julyæs issue
  40416. of Archive under the heading of öFirst Word Plus Notesò (pages 21-23)
  40417. was very useful together with the program ConvertWP (also on that
  40418. monthæs Magazine disc). Although designed to convert Wordwise Plus
  40419. files, the program works quite well with ArcWriter as well. Briefly the
  40420. procedure to convert ArcWriter files into First Word Plus is as follows:
  40421. 2.2
  40422. 1. From the ÉFilingæ menu in ArcWriter select the ÉExportæ option to
  40423. save the file (e.g. under the name ötestARCò) and then exit from
  40424. ArcWriter.
  40425. 2.2
  40426. 2. Load the ConvertWP program and enter the appropriate Source
  40427. (ötestARCò) and Destination (e.g. ötest1WPò) filenames.
  40428. 2.2
  40429. 3. Load First Word Plus and then the converted file (ötest1WPò).
  40430. 2.2
  40431. 4. Select ÉWPmode onæ from the Edit menu.
  40432. 2.2
  40433. 5. Reformat the whole text by using the Style menu to ÉReformatæ the
  40434. ÉWhole documentæ.
  40435. 2.2
  40436. Odd words may sometimes get missed out of the converted text, possibly
  40437. due to the fact that this data was preceded by ötabsò in ArcWriter.
  40438. 2.2
  40439.  
  40440.  
  40441. Å   How to wipe a disc clean Ö If you want to wipe a disc completely
  40442. clean, you can use *WIPE * ~CFR<return> (Use this command with care Ö
  40443. thereæs no going back once youæve pressed <return>!) Ö in other words,
  40444. remove files with any name (*), donæt ask for confirmation of each wipe
  40445. (~C), force them (F) to be deleted even if they are locked and do it
  40446. recursively (R) so that the contents of all directories are deleted.
  40447. However, even this drastic measure wonæt allow you to delete a library
  40448. directory if one exists. So do a *Lib öò<return> before the *WIPE
  40449. command.
  40450. 2.1
  40451. Å   GammaPlot/System Delta Plus Ö If you have been trying to import SDP
  40452. files into GammaPlot and have been unsuccessful, read on╔ Firstly you
  40453. have to copy the System Delta Plus software onto your GammaPlot disc.
  40454. Then if it still doesnæt work, it will be because you have an older
  40455. version of System Delta Plus. Send the original SDP disc back to Minerva
  40456. and ask for an up-grade.
  40457. 2.1
  40458. Å   Mounting problems (sic) Ö Do you find that sometimes it refuses to
  40459. respond to a *MOUNT command even if you take the disc out and put it
  40460. back in again? Two solutions: type *BYE and then you should find that
  40461. *CAT will cause it to access the disc OR if, like me, youæve got *MOUNT
  40462. on a function key, just do a *MOUNT with no disc in the drive then
  40463. *MOUNT with the new disc in place. If you are in First Word Plus where
  40464. you cannot issue star commands anyway, the latter technique should do
  40465. the trick since you can achieve the equivalent of *MOUNT by clicking on
  40466. the close box (the X) in the file menu. (Just as a matter of interest,
  40467. does anyone know why it gets into this state sometimes?)
  40468. 2.1
  40469. Å   Users of C (and other compiled languages) may find the following
  40470. command file useful, as sent in by Peter Linstead. You can put it in the
  40471. $ directory of your hard disc and use it when starting a C programming
  40472. session. Once you have assigned your current programæs name to NAME
  40473. using, for example, *SET NAME MYPROG you can edit the source file by
  40474. pressing <f1>. Once out of TWIN, <f2> will compile and link the source
  40475. code and <f3> will execute the run code. By using SETMACRO, you can
  40476. change the working name with another *SET command without running the
  40477. command file again. It assumes that both FPE and TWIN are in the
  40478. $.Library.
  40479. 2.1
  40480. *| > $.Library .C
  40481. 2.1
  40482. *FPE
  40483. 2.1
  40484. *DIR $.ARM.BENCH
  40485. 2.1
  40486. *SETMACRO ALIAS$AUTOT *TWIN
  40487. 2.1
  40488.  C.<NAME> |M
  40489. 2.1
  40490. *SETMACRO ALIAS$AUTOC *CC <NAME>
  40491. 2.1
  40492.  Ö LINK |M
  40493. 2.1
  40494. *SETMACRO ALIAS$AUTOR *RUN
  40495. 2.1
  40496. P.<NAME> |M
  40497. 2.1
  40498. *KEY 1 *AUTOT|M
  40499. 2.1
  40500. *KEY 2 *AUTOC|M
  40501. 2.1
  40502. *KEY 3 *AUTOR|M
  40503. 2.1
  40504. *SET RUN$PATH ,%.,$.ARM.LIBRARY.,@.P.
  40505. 2.1
  40506. *GOS
  40507. 2.1
  40508. (I have just reproduced this from Peteræs hand-written letter and I
  40509. havenæt got C to try it out on, so I hope Iæve transcribed it correctly.
  40510. If it hadnæt been for the postal strike Iæd have sent it to David Wild
  40511. first, so please bear with us if you find it is not completely correct.
  40512. Ed.)
  40513. 2.1
  40514. Å   ANSI C Compiler Ö Mike Sherratt writes╔ öOn a very fundamental note╔
  40515. The manual is very terse. To compile the demo programs on the distribu
  40516. tion diskette Ö Balls64, Sieve and Hello, heed the ReadMe file where it
  40517. says ÉRMLoad the FP emulator etc i.e. RMload fpe240æ. Get to the
  40518. directory level ÉBenchæ then do:
  40519. 2.1
  40520. *CC ÖArthur Sieve
  40521. 2.1
  40522. The spaces are significant, ÉÖæ is minus. The Sieve source file is in
  40523. sub-directory Écæ. The executable file is now in sub-directory Épæ.
  40524. 2.1
  40525. The program can be run from the star prompt by typing *Sieve. The Éc.æ
  40526. prefix is embedded (for lack of a better word) in the compiler, so donæt
  40527. try to create the prefix!! You are now on the way.
  40528. 2.1
  40529. This information came thanks to Watford Elec-tronics who used Acornæs
  40530. dealer hot-line for me.ö
  40531. 2.1
  40532. (Because of the postal strike, this has been inserted by the Ed rather
  40533. than sending it to David for checking, so hopefully it will be OK!?)
  40534. 2.1
  40535. Å   Formatting from programs Ö If you want to write a disc copier
  40536. program, as we at Archive obviously did for copying the program discs,
  40537. you have to find some way to get round the fact that *FORMAT asks for a
  40538. keyboard confirmation. We did it by creating a file on the second drive
  40539. that consisted of just <Y> and then called that is input from the
  40540. program. Ingenious! But then we found the easy (undocumented) way of
  40541. doing it:
  40542. 2.1
  40543. *FORMAT 0 D Y
  40544. 2.1
  40545. Simple if you know how!
  40546. 2.1
  40547. Å   Replacement 3.5ö disc drives Ö One reader had to replace his 3.5ò
  40548. drive and Acorn could only offer him the official second disc drive up-
  40549. grade (which includes a new front facia which he didnæt need) so he
  40550. bought an un-cased 3.5ö drive from Matmos Ltd (1 Church Street,
  40551. Cuckfield, W.Sussex, RH17 5JZ, 0444Ö414484) for ú59.50 + ú3 carriage +
  40552. VAT. This drive was almost a direct fit and only required some judicious
  40553. filing of the button slot to complete the replacement.
  40554. 2.1
  40555. Å   Debugging ARM code listings Ö It is sometimes useful for non-ARM
  40556. code specialists who want to type in ARM code program listings to have
  40557. Éwayside pointersæ as the code runs to help them debug the program and
  40558. find out where they have made typing errors. Adding the occasional SWI
  40559. &1nn (where nn is 30 to 39 for number 0 to 9) will print out these
  40560. numbers as an indication of how far the program has got. (Better still,
  40561. buy the monthly program disc!!! Ed.)
  40562. 2.1
  40563.  
  40564.  
  40565. Å   PipeDream Ö For those who have not used View etc and who have
  40566. therefore not had to fight printer drivers, the following may be useful:
  40567. 1.12
  40568. The printer driver is loaded on initialisation and when <Alt><P><D> is
  40569. used, but NOT when a document is printed, so any changes made to a
  40570. printer driver are not acted upon until either of these events. Itæs
  40571. obvious really, but if you havenæt registered the fact, it could cause a
  40572. lot of confusion.
  40573. 1.12
  40574. For those who wish to use bold throughout a document, (e.g. for
  40575. producing something on a dot-matrix printer that will go through a Fax
  40576. machine) it would seem an obvious solution to put markers at the
  40577. beginning and end of the document and make it all bold highlight.
  40578. However, this is not a good idea because your printer will have to cope
  40579. with double printing each word, one word at a time! Instead, change the
  40580. printer driver so that the bold highlight is NOT cancelled at the end of
  40581. a line. i.e. change the Y to an N and either send the necessary ESC
  40582. sequence in the PON line or put a highlight 2 at the very start of your
  40583. text.
  40584. 1.12
  40585. Å   Transferring character definitions Ö If you have files produced by
  40586. the CHARDES program from the Master Welcome disc (mentioned last month,
  40587. page 34) here is a little BASIC program to run the files on the
  40588. Archimedes:
  40589. 1.12
  40590.  10 REM >ThinChar
  40591. 1.12
  40592.  20 CLS : INPUT öFileName ò;A$
  40593. 1.12
  40594.  30 OSCLI (öLOAD ò+A$+ö 12800ò)
  40595. 1.12
  40596.  40 FOR I=127 TO 32 STEP -1
  40597. 1.12
  40598.  50 VDU23,I
  40599. 1.12
  40600.  60 VDU(?(&12844+I-32))
  40601. 1.12
  40602.  70 VDU(?(&128A4+I-32))
  40603. 1.12
  40604.  80 VDU(?(&12904+I-32))
  40605. 1.12
  40606.  90 VDU(?(&12964+I-32))
  40607. 1.12
  40608. 100 VDU(?(&129C4+I-32))
  40609. 1.12
  40610. 110 VDU(?(&12A24+I-32))
  40611. 1.12
  40612. 120 VDU(?(&12A84+I-32))
  40613. 1.12
  40614. 130 VDU(?(&12AE4+I-32))
  40615. 1.12
  40616. 140 NEXT
  40617. 1.12
  40618. Å   Quazer (again). The fix for Quazer 1.42 is ?&3D090=N╝ of lives,
  40619. ?&3D98F=&F2, *SAVE Quazcode 9000 +365AC, *settype Quazcode FF8. Å
  40620. Printing in binary Ö PRINT ~number% prints number% in hexadecimal but
  40621. there isnæt an equivalent for printing in binary. However, there are SYS
  40622. commands that will do it for you. The following program illustrates the
  40623. use of SYS &E0 which converts a number to a four byte binary number
  40624. string (SYSæs &DF, DE and DD convert to 3, 2 and 1 byte binary numbers).
  40625. 1.12
  40626. The only other point of interest in the program is the way that the
  40627. leading zeros are stripped off by lines 190, 200 (which can be omitted,
  40628. of course, if you want the leading zeros!). The INSTR command finds the
  40629. position of the first ö1ò starting from the left hand end of the string,
  40630. take off one to give the number of zeros to be removed. The LEFT$
  40631. command at line 200 turns those zero characters into the character set
  40632. by pad$. (This illustrates the fact that you can use string functions on
  40633. the left hand side of an assignment.) If pad$ is a space character, the
  40634. binary numbers produced will all be the same length and so will be right
  40635. justified but if you want the strings left justified, you can set pad$
  40636. to CHR$0. (An alternative for left justification would be to use
  40637. numb$=RIGHT$(numb$,32-n%).)
  40638. 1.12
  40639.  10 REM > BinPrint
  40640. 1.12
  40641.  20
  40642. 1.12
  40643.  30 pad$=CHR$0 :REM left justifæn
  40644. 1.12
  40645.  40 pad$=ö ò : REM right justifæn
  40646. 1.12
  40647.  50 OS_ConvertBinary4=&E0
  40648. 1.12
  40649.  60
  40650. 1.12
  40651.  70 REPEAT
  40652. 1.12
  40653.  80   INPUT öNumber? ònumber$
  40654. 1.12
  40655.  90   number%=EVAL(number$)
  40656. 1.12
  40657. 100   A$=FNbinconvert(number%)
  40658. 1.12
  40659. 110   PRINT A$
  40660. 1.12
  40661. 120 UNTIL0
  40662. 1.12
  40663. 130
  40664. 1.12
  40665. 140 DEF FNbinconvert(numb%)
  40666. 1.12
  40667. 150 LOCAL numb$,n%
  40668. 1.12
  40669. 160
  40670. 1.12
  40671. 170 SYS OS_ConvertBinary4,numb%,
  40672. 1.12
  40673. 32,numb$ TO numb$
  40674. 1.12
  40675. 180
  40676. 1.12
  40677. 190 n%=INSTR(numb$,ö1ò)-1
  40678. 1.12
  40679. 200 LEFT$(numb$,n%)=STRING$(n%
  40680. 1.12
  40681. ,pad$)
  40682. 1.12
  40683. 210 =numb$
  40684. 1.12
  40685. Å   Hard Disc Head Parking Ö Donæt forget that if the RFS is selected,
  40686. it will accept the *BYE command but it will not park the heads on the
  40687. drive. You have to be in ADFS.
  40688. 1.12
  40689. Å   Screenload/save Ö It is interesting to compare the time taken to
  40690. save and load screens using *screensave and *screenload with the time
  40691. taken to define the whole screen as a sprite and save it using *Ssave or
  40692. load it with *Sload. In all modes there is considerable saving e.g.
  40693. 1.12
  40694.    Mode1   Mode12   Mode 15
  40695. 1.12
  40696.   *Screensave(load)   7(4)   25(18)   52(38)
  40697. 1.12
  40698.   *Ssave(load)   1(<1)   3(3)   7(6)
  40699. 1.12
  40700. Å   Libraries and *mount╔ If you *mount a disc, the library from the
  40701. previous disc remains in memory. For those with a single drive, this may
  40702. seem a nuisance but the reason the library is not changed is that you
  40703. can have a library on one drive and shove discs in and out of the other
  40704. drive without losing the library Ö particularly important with hard
  40705. discs. Obviously you could reselect the library with *library $.Library
  40706. but it is much easier to use *bye. That way, you donæt even have to use
  40707. *mount.
  40708. 1.12
  40709. Å   Reliable RS423 transfer from BBCæs. This is mostly just reiterating
  40710. what has gone before, but to transfer reliably from BBC to Archimedes at
  40711. 9,600 baud you need to [1] use the 1.24 serial patch (on Archive program
  40712. disc 7) [2] Set *Configure DATA 5 (i.e. 8 data bits and 1 stop bit which
  40713. is the default on the BBC) and [3] connect the BBCæs RTS output to the
  40714. Archimedesæ DSR input (pin 6) instead of the CTS input (pin 8) and link
  40715. pins 1, 4 and 8 together.
  40716. 1.12
  40717. Å   View A3.0 Further to the patches given in July issue (Vol. 1.10 page
  40718. 6) Richard House reckons that instead of using &FFæs in the various
  40719. locations you should use &00æs. (If someone has a working version of
  40720. A3.0, please send it in so that we can add it to our collection of
  40721. working patches!)
  40722. 1.12
  40723. Å   Viewstore 1.1 Ö Following on from the July Hints & Tips, not that
  40724. not only should &ABE2, 3 and 4 be set to &EA, but also, the LDA #&82,
  40725. JSR OSBYTE (&A9, &82, &20, &F4, &FF) routines need to be altered as with
  40726. View A3.0. These occur at locations &A256 Ö A25A, &AA22 Ö AA26 and &AB98
  40727. Ö AB9C. The code required in each of these locations is &A2, &00, &A0,
  40728. &00, &EA. (LDX #&00, LDY #&00, NOP). (If you canæt cope with these
  40729. technicalities, send us a disc with Viewstore 1.1 on it and weæll modify
  40730. it for you.)
  40731. 1.12
  40732. Å   Correct Nesting? To check that the nesting of loops, IFæs and CASEæs
  40733. is correct within a program, use LISTO2 and LIST the program. If at the
  40734. end of the program, the final line has two or more spaces after the line
  40735. number, youæve got an incorrect nesting somewhere. To check through,
  40736. there should be no spaces between line numbers and DEFPROCæs, DEFFNæs or
  40737. ENDPROCæs.
  40738. 1.12
  40739. Å   Marconi Trackerball. Archimedesæ mouseæs tail can apparently be
  40740. removed, so says Mr T A Doncaster, and plugged into an identical
  40741. connector within the Marconi RB2/PC-1 tracker ball and all works without
  40742. any further fiddling about. Watch that the supply polarity is correct
  40743. though.
  40744. 1.12
  40745. Å   Readable zeros. In InterSheet in particular, I find the slashed-
  40746. zeros misleading Ö they can easily be mistaken for eights. If you re-
  40747. program the zero character using a VDU23 command you can avoid the
  40748. confusion. It does increase the possibility of confusion with a capital-
  40749. O but that is far less important in spreadsheet work than confusion with
  40750. 8. So, I store the following program in the RAM on the RFS and call it
  40751. up with *IS<return>:
  40752. 1.12
  40753. 10 REM >RFS:IS
  40754. 1.12
  40755. 20 VDU23,48,60,102,102,102,102,
  40756. 1.12
  40757. 102,60,0
  40758. 1.12
  40759. 30 CHAIN öRFS:ISHEETò
  40760. 1.12
  40761. No doubt you could modify this program if you wanted to use the same re-
  40762. programmed zero character with other spreadsheet software.
  40763. 1.12
  40764. Å   Computer salutions. R.E.Boldero, in the July edition, asked for a
  40765. way of getting his computer to greet him each time he switched on. The
  40766. next hint shows a partial solution.
  40767. 1.12
  40768. Å   RFS Boot file Ö If you use a ROM podule with battery backup, you can
  40769. create a boot file that runs in the RFS and sets up all sorts of
  40770. goodies. I used to have a BASIC program called !BOOT which set up all
  40771. sorts of things on power-up or <ctrl-break> but if you are developing a
  40772. BASIC program, get stuck and press <ctrl-break>, you lose the program
  40773. because it is replaced by the boot program!!!!! After Adrian had fallen
  40774. into this trap a few times when using my computer, he developed the
  40775. following rather ingenious (not to say devious) EXECable boot program.
  40776. (*Configure Filesystem RFS, *Configure Boot and *OPT 4,3 in the RFS.)
  40777. 1.12
  40778. We have since added a facility for making Arthur talk to you a bit more
  40779. politely, from an idea sent in by Chris Hayes.
  40780. 1.12
  40781. To create the boot file, I start with the following Wordwise Plus file
  40782. which is then spooled as öRFS:!BOOTò.  (The line numbers are purely for
  40783. discussion purposes.)
  40784. 1.12
  40785.  1 <gr>LL160<gr>PC ö~ò
  40786. 1.12
  40787.  2 VDU21
  40788. 1.12
  40789.  3 VDU6,11,32,32,32,32,32,32,21
  40790. 1.12
  40791.  4 VDU6,19,0,4,0,0,0,21
  40792. 1.12
  40793.  5 VDU6,19,1,0,0,0,0,21
  40794. 1.12
  40795.  6 VDU6,13,11,11,11,11,11,21
  40796. 1.12
  40797.  7 VDU6:COLOUR 6:VDU21
  40798. 1.12
  40799.  8 VDU6:PRINTöN o r w i c h   C o
  40800. 1.12
  40801.  m p u t e r   S e r v i c e sö
  40802. 1.12
  40803. :VDU21
  40804. 1.12
  40805.  9 VDU6:COLOUR 7:VDU21
  40806. 1.12
  40807.  
  40808. 1.12
  40809. 10 *SETCLI$PROMPT <13><10>Good
  40810. 1.12
  40811.  Morning! *
  40812. 1.12
  40813. 11 *IF SYS$TIME LEFT 2>11 THEN SET
  40814. 1.12
  40815.  CLI$PROMPT <13><10>Good Afternoon! *
  40816. 1.12
  40817. 12 *IF SYS$TIME LEFT 2>18 THEN SET
  40818. 1.12
  40819.  CLI$PROMPT <13><10>Good
  40820. 1.12
  40821.  Evening! *
  40822. 1.12
  40823.  
  40824. 1.12
  40825. 13 *KEY0 *MOUNT 0|M*FREE|M*CAT|M
  40826. 1.12
  40827. 14 *KEY1 etc...
  40828. 1.12
  40829. 20 *KEY12 *FORMAT 0 D|M
  40830. 1.12
  40831.  
  40832. 1.12
  40833. 21 *SET Run$Path ,ADFS:$.,RFS:$.
  40834. 1.12
  40835. ,%.
  40836. 1.12
  40837. 22 *SET Alias$> CAT
  40838. 1.12
  40839.  
  40840. 1.12
  40841. 23 *FX255,8
  40842. 1.12
  40843. 24 *ADFS
  40844. 1.12
  40845. 25 *BASIC<gr>OC6
  40846. 1.12
  40847. The LL160 command (1) ensures that the command lines are not split up
  40848. and the PC command ensures that the pad characters are sent when
  40849. spooling the file. (2) switches off the screen display, but since this
  40850. actual command appears on the screen, (3) moves up and wipes it out
  40851. again! (4) and (5) change foreground and background colours (6) moves
  40852. the cursor back up the screen, before printing out a welcome message in
  40853. a different colour, (7 & 8) and switching back to white (9). The IF
  40854. SYS$TIME commands then sets up the Arthurian prompt (normally a star on
  40855. its own) to be something a bit more timely. (This doesnæt automatically
  40856. change the greeting as the time of day changes, it gives you the
  40857. greeting that was appropriate last time you pressed <ctrl-break>.) The
  40858. function keys are then programmed, the runpath is set up etc (21 Ö 24)
  40859. (See Archive 1.7, page 8) before BASIC is invoked with an OC6 to re-
  40860. enable the screen.
  40861. 1.12
  40862. (You could create it by making it a BASIC program that started...
  40863. 1.12
  40864. *SPOOL RFS:!BOOT
  40865. 1.12
  40866. PRINTöVDU21ò
  40867. 1.12
  40868. and ended╔
  40869. 1.12
  40870. PRINTö*BASICò;CHR$(6);
  40871. 1.12
  40872. *SPOOL
  40873. 1.12
  40874. I havenæt tried this BASIC version, but I presume it would work.)
  40875. 1.12
  40876. Å   Keyboard repeat speed. You may have noticed with First Word Plus or
  40877. other wordprocessors that when pressing <return> on auto-repeat it
  40878. cannot keep up and, when you take your finger off the key, it goes on
  40879. spewing out returns until the keyboard buffer is empty. You can avoid
  40880. this by reducing the auto-repeat speed with, say, *Configure repeat 15
  40881. (instead of the default of 8) and then pressing <ctrl-break>. (It should
  40882. really be called the auto repeat time as the number is the time in
  40883. centi-seconds between repeats.) Instead of changing the configuration,
  40884. you may prefer to could add a *FX12,15 command into the !BOOT file and
  40885. then press <ctrl-break> after your WP session to restore the default
  40886. repeat speed.
  40887. 1.12
  40888. Å   Disappearing cursor in EDIT. Have you noticed that if you hold the
  40889. cursor key down in the BASIC editor, the cursor disappears so that you
  40890. canæt see where it is on the line? Try changing the auto repeat speed as
  40891. mentioned in the hint above Ö doesnæt always work, but it seems to make
  40892. it better if you have a faster speed (smaller number in the command).
  40893. 1.12
  40894. Å   Auto indenting in EDIT. Some people like to put the indenting into
  40895. the program itself to show the structure (as opposed to using LISTO3 to
  40896. show the structure when you list it). If you are using the ARM BASIC
  40897. editor, you can add the spaces automatically as you type in the program.
  40898. What happens is that if you put a number of spaces at the beginning of
  40899. one program line then, when you press <return>, the new line has the
  40900. same number of leading spaces as the line before, so until you reach a
  40901. REPEAT or UNTIL or FOR or NEXT etc, you just press <return> and type the
  40902. next line without thinking about the indenting.
  40903. 1.12
  40904. Å   Disappearing programs in EDIT!! On the BASIC editor, if you edit a
  40905. line that occupies more than one screen line and make it shorter, it may
  40906. leave a blank line on the screen (no problem Ö this disappears as soon
  40907. as you move the cursor away from that line). If you then press <return>
  40908. to create a new line, the new line goes in the gap left by the editing
  40909. (still, apparently, no problem). However as soon as you try to use any
  40910. of the move, delete, or copy functions, all the line numbers go wrong
  40911. and cursor movement becomes rather unpredictable. Indeed, if you move
  40912. down the program, you will find that when the line that was edited moves
  40913. off the top of the screen, the scrolling continues and the program
  40914. disappears into oblivion! (Reset and OLD will recover your program
  40915. intact.)
  40916. 1.12
  40917. The solution is, if you get a line gap, either re-number (which happens
  40918. automatically if the line numbers were already consecutive) or move down
  40919. a line then back up again before pressing <return>.
  40920. 1.12
  40921. Å   Pencil for Artisan. If you want to add a Épencilæ facility to
  40922. Artisan, the joined-lines function can be made to provide this in the
  40923. following way. (1) Using a copy (not the original!!) of the Artisan
  40924. disc, enter the BASIC editor and load ART5. (2) Use Search and Edit to
  40925. find DEFPROCKB. (3) Alter the procedure so that it looks like this:-
  40926. 1.12
  40927. DEFPROCKB
  40928. 1.12
  40929. LOCAL X%, Y%, B%
  40930. 1.12
  40931. IF J%=6 AND CLARE%=-1 THEN
  40932. 1.12
  40933. MOUSE X%,Y%,B% :ENDPROC
  40934. 1.12
  40935. ELSE
  40936. 1.12
  40937. REPEAT:MOUSE X%,Y%,B%:UNTIL B%<>BB%:ENDPROC
  40938. 1.12
  40939. ENDIF
  40940. 1.12
  40941. (4) Save this as ART5. (5) For completeness, use the Welcome utility,
  40942. SEDIT, to change the joined-lines icon into a pencil icon. (6) Now, with
  40943. the joined-lines function selected, holding down <select> draws a
  40944. continuous line. On releasing <select>, the normal rubber band line
  40945. appears, but it can be released by pressing <adjust> once. Pressing
  40946. <adjust> again carries out the UNDO function.
  40947. 1.12
  40948. (While on the subject of modifying Artisan, note the short addition in
  40949. Acorn User, April æ88 which adds an airbrush effect.)
  40950. 1.12
  40951. Å   Star LC24-10. If you are having problems with getting a Star LC24-10
  40952. to accept output from First Word Plus or Graphic Writer, check the EPROM
  40953. chip in the printer next to the dip switches. If it has a label on it
  40954. showing version 1.0, contact Star Micronics and they will supply a free
  40955. up-grade.
  40956. 1.12
  40957. Å   Moving menus. If you find that your menus keep moving about, drag
  40958. the box down to the extreme bottom right corner of the screen until you
  40959. can go no further. This makes them a little more secure Ö simple, but
  40960. soothing!
  40961. 1.12
  40962. Å   Programming for speed. Programs like EMRæs SoundSynth and Minervaæs
  40963. Hoverbod and Missile Control are actually written in BASIC, with calls
  40964. to ARM assembly language routines where extra speed is really necessary.
  40965. 1.12
  40966. If you thought professional quality programs demanded assembly language
  40967. only, think again! Perhaps there is a program you had thought of
  40968. writing, but did not feel could be written in BASIC; the speed of the
  40969. Archimedes has changed all of that.
  40970. 1.12
  40971. Your strategy should be to write the whole program in BASIC first and
  40972. then see which routines need replacing with assembly language in order
  40973. to provide the right response times.
  40974. 1.12
  40975. Mike Ginnsæ recent book from DABS Press, öArchimedes Assembly Languageò,
  40976. contains a large number of assembly language counterparts for BASIC
  40977. statements (he calls them ötemplatesò), and would be of great value if
  40978. you want to try your hand at this sort of approach. Although the book
  40979. has rather a large number of grammatical errors and is not quite as
  40980. fully comprehensive as it claims to be, but is still a good buy at
  40981. ú14.95. (Ian Nicholls)
  40982. 1.12
  40983. First Word Plus Hints
  40984. 1.12
  40985. Å   Using PCæs Ö If you have access to a PC and a PC version of First
  40986. Word Plus, you may be interested to know that you can transfer files
  40987. between the two using the Getfile and Putfile utilities of the PC
  40988. Emulator. You can even transfer supplementary dictionaries the same way.
  40989. 1.12
  40990. Å   Adding printer drivers Ö It may not be very obvious how you add the
  40991. extra printer drivers that weæve provided on the program discs, onto
  40992. your First Word Plus disc. Suppose you want the Kaga Taxan driver. Put
  40993. in the program disc and type
  40994. 1.12
  40995. *copy 1WP.cfg.Kaga_Taxan 1WP.cfg.* P
  40996. 1.12
  40997. then change discs and press <space> as prompted. (Or use dual drives if
  40998. you have them.)
  40999. 1.12
  41000. Å   Default printer driver Ö If you want to make, say the Juki driver,
  41001. the default so that it comes up with that as the driver when you boot up
  41002. the disc, use:
  41003. 1.12
  41004. *copy  $.1WP.cfg.Juki  $.Res*.
  41005. 1.12
  41006. 1WP.1wp_print F
  41007. 1.12
  41008. The F in the copy command makes it over-write the existing default
  41009. driver.
  41010. 1.12
  41011. Å   Paging problems. You can now get a version of First Word Plus that
  41012. obeys the command in the printer driver to stop at the end of a page to
  41013. allow you to change the paper. Brian Carroll writes╔ öI returned my disc
  41014. to Acorn and had it back by return of post with a clear and helpful
  41015. letter. It seems that Acorn are at last getting the message about
  41016. customer support. There are only two modified files: $.resources.1WP.1WP
  41017. and $.resources.1WP. 1ML, so for anyone who has done some work to
  41018. configure their working master disc it would be simpler just to copy
  41019. these two files across than to start again from scratch. The bug-fix
  41020. works OK, so the printer drivers that I sent for Canon PW-1080A (program
  41021. disc number 10) will work properly.ò
  41022. 1.12
  41023. Å   LQ1050 Ö You can add double height to the printer driver merely by
  41024. using Search and Replace, changing 57 for 77 (double width for double
  41025. height). It works fine Ö the only thing to remember is to set the line
  41026. spacing to 2 in the ruler when choosing expanded pitch.
  41027. 1.12
  41028. Å   Large documents. Beware when you are printing long documents (30
  41029. pages+) as FWP can get a bit confused and print the wrong pages.
  41030.  
  41031. Hints & Tips
  41032. 1.11
  41033. Å   *COMPACT Ö The User Guide says that *COMPACT ömoves files around on
  41034. the disc, collecting all the free space into a continuous blockò.
  41035. However, if you have a disc that has several gaps you will find that you
  41036. need several compactions. One disc which had 5 gaps in the FS map had to
  41037. be compacted eight times before the map showed only a single gap. (See
  41038. review of R.A.Engineeringæs Utilities, page ?????)
  41039. 1.11
  41040. Å   *COPY Ö When copying multiple files using wildcards, you must ONLY
  41041. specify the directory into which to copy and not try to specify the
  41042. actual file name in any way e.g. if you want to copy files PROGA, PROGB,
  41043. PROGC etc from the öBASICò directory into the öBACKUPò directory, use
  41044. *COPY $.BASIC.PROG* $.BACKUP.* but if you try to use *COPY $.BASIC.PROG*
  41045. $.BACKUP.PROG* it wonæt work. This is not desperately clear in the User
  41046. Guide and Iæve only just worked out why 90% of my attempts to do
  41047. wildcard copies have not worked!
  41048. 1.11
  41049. Å   CAPS LOCK Ö Another thing which is obvious if you know about it is
  41050. that you can set up the keyboard to print upper case normally but then
  41051. go into lower case when you press <shift>. This can be done either by
  41052. *Configure SHCAPS if you want it to start up in that mode (or CAPS or
  41053. NOCAPS if you donæt) or by holding the shift key down and pressing and
  41054. releasing the Caps Lock key.
  41055. 1.11
  41056. Å   CHAINing programs Ö In response to our complaint in last monthæs Bug
  41057. or Feature that programs chaining one another cannot be called from
  41058. drive 1 using the desktop, Philip Colmer of Acornæs Customer Support
  41059. Department tells us that it is definitely a feature. There are a number
  41060. of ways of avoiding the problem. Firstly, you could reference files by
  41061. disc name, so we could CHAINö:ProgDisc.$.Progs.Nextprogò or whatever.
  41062. Alternatively, you could use the fact that when you run a BASIC program
  41063. in drive 1 from the desktop, it generates a command something like
  41064. *basic Öquit öADFS::1.$.Progs.FirstProgò. You could then use OS_GetEnv
  41065. to read the command string and find out where the program has been
  41066. called from. Thridly, have a look at PC.PC from the 1.20 version of the
  41067. PC emulator to see an intelligent (incredibly so!) boot-up program which
  41068. has been very carefully commented to enable you to modify it for your
  41069. own use.
  41070. 1.11
  41071. Å   Auto-booting Ö Again from Philip Colmer comes the suggestion that
  41072. you should use the PC.PC program to boot up applications from within
  41073. directories on the hard disc. The program uses legal OS calls instead of
  41074. re-configuring. It does a *DIR and then runs the program specified. The
  41075. only restriction on it is that it cannot change the system sprite size
  41076. but, he points out, if programs were written properly, they would not be
  41077. using the system sprite area!
  41078. 1.11
  41079. Å   System Devices Ö You can treat devices as files, e.g.
  41080. C%=OPENOUT(öNETPRINT:ò). This is particularly useful in the example
  41081. given on page 9 last month because you can now open a channel to the
  41082. network printer, send some stuff to it when you are ready (using BPUT
  41083. #C%) and when everything is done, close the Éfileæ (CLOSE#0) and it will
  41084. then be printed! (This also came from Philip Colmer Ö Thanks PC! Ö
  41085. Funny, you know, I always thought that PC stood for Personal Computer!
  41086. Ed.)
  41087. 1.11
  41088. The following Hints were prepared by Adrian Look╔
  41089. 1.11
  41090. Å   Smooth Scrolling Ö Using VDU 23,7 you can scroll the current text
  41091. window up, down, left, or right. Horizontally, the picture can be
  41092. scrolled by one byte, but vertically it can only be scrolled by one
  41093. character cell. This can produce a smooth scroll by placing a WAIT (for
  41094. the vertical sync pulse) command before the VDU 23,7. If any further
  41095. delay is implemented then the picture shudders as it scrolls. This means
  41096. that a slow smooth scroll cannot be used. The answer is to redefine the
  41097. screen base address manually (as we used to do on the BBC). This is done
  41098. using ÉOS_Wordæ &16.
  41099. 1.11
  41100. DIM block% 4
  41101. 1.11
  41102. :
  41103. 1.11
  41104. block%?0=type
  41105. 1.11
  41106. block%!1=offset
  41107. 1.11
  41108. WAIT
  41109. 1.11
  41110. SYS öOS_Wordò,&16,block%
  41111. 1.11
  41112. ötypeò   : when 1 Ö base used by VDU drivers (i.e. screen updated)
  41113. 1.11
  41114.    : when 2 Ö base used by hardware (i.e. screen displayed)
  41115. 1.11
  41116. öoffsetò   : from the address of the base of the screen buffer to the
  41117. start of the screen display.
  41118. 1.11
  41119. The following example program should help to make it clearer.
  41120. 1.11
  41121.  10 REM >scrolling
  41122. 1.11
  41123.  20
  41124. 1.11
  41125.  30 REM **************************
  41126. 1.11
  41127.  40 REM *   Scrolling Screens??  *
  41128. 1.11
  41129.  50 REM * written by Adrian Look *
  41130. 1.11
  41131.  60 REM *     21st July 1988     *
  41132. 1.11
  41133.  70 REM **************************
  41134. 1.11
  41135.  80
  41136. 1.11
  41137.  90 MODE 0:OFF
  41138. 1.11
  41139. 100 DIM block% &10
  41140. 1.11
  41141. 110 count=0
  41142. 1.11
  41143. 120
  41144. 1.11
  41145. 130 PRINTTAB(3,15);öSome textò
  41146. 1.11
  41147. 140
  41148. 1.11
  41149. 150 REPEAT
  41150. 1.11
  41151. 160   PROCscroll(1)
  41152. 1.11
  41153. 170 UNTIL 0
  41154. 1.11
  41155. 180 END
  41156. 1.11
  41157. 190
  41158. 1.11
  41159. 200 DEFPROCscroll(speed)
  41160. 1.11
  41161. 210 PROCinfo
  41162. 1.11
  41163. 220 add=x/m
  41164. 1.11
  41165. 230 IF SGN(count)>0 THEN speed=-speed
  41166. 1.11
  41167. 240 REPEAT
  41168. 1.11
  41169. 250   block%?0=2
  41170. 1.11
  41171. 260   block%!1=add*count
  41172. 1.11
  41173. 270   WAIT
  41174. 1.11
  41175. 280   SYS öOS_Wordò,22,block%
  41176. 1.11
  41177. 290   count+=speed
  41178. 1.11
  41179. 300 UNTIL add*count>x*y/m+4160 OR count<0
  41180. 1.11
  41181. 310 ENDPROC
  41182. 1.11
  41183. 320
  41184. 1.11
  41185. 330 DEFPROCinfo
  41186. 1.11
  41187. 340 SYS öOS_ReadModeVariableò,MODE,4 TO ,,x
  41188. 1.11
  41189. 350 x=4-x:x=8*(2^x)*10
  41190. 1.11
  41191. 360 SYS öOS_ReadModeVariableò,MODE,5 TO ,,y
  41192. 1.11
  41193. 370 y=3-y:y=y*256
  41194. 1.11
  41195. 380 SYS öOS_ReadModeVariableò,MODE,3 TO ,,c
  41196. 1.11
  41197. 390 CASE c OF
  41198. 1.11
  41199. 400   WHEN 1  : m=8
  41200. 1.11
  41201. 410   WHEN 3  : m=4
  41202. 1.11
  41203. 420   WHEN 15 : m=2
  41204. 1.11
  41205. 430   WHEN 63 : m=1
  41206. 1.11
  41207. 440 ENDCASE
  41208. 1.11
  41209. 450 ENDPROC
  41210. 1.11
  41211.  
  41212. 1.11
  41213. Å   Desktop Utilities Ö The desktop is essentially a skeleton program
  41214. which allows the programmer to install his/her own icons, windows,
  41215. menus, commands, etc, which the DeskTop will then operate. This is done
  41216. with a very clever set of FNæs. for example:
  41217. 1.11
  41218. PROCinstall(öadrianò)
  41219. 1.11
  41220. :
  41221. 1.11
  41222. DEFPROCinstall(file$)
  41223. 1.11
  41224. INSTALL file$
  41225. 1.11
  41226. void=EVAL(öFNinstall_file_ò+file$)
  41227. 1.11
  41228. ENDPROC
  41229. 1.11
  41230. This means that by EVALuating a string the DeskTop can call any file-
  41231. specific function. In the case above, FNinstall_file_adrian will be
  41232. called. By using this system, any command can be Éinstalledæ or even
  41233. replaced. Explaining or even listing the functions and procedures
  41234. available in the DeskTop program is not really possible in the magazine.
  41235. However, bearing in mind the methods used, you will find before long you
  41236. can write some very useful tools for the DeskTop. It should even
  41237. possible to completely re-write the it! As an example, here is a program
  41238. which will allow you to use star commands. Donæt forget to *SETTYPE
  41239. Éfilenameæ FE0 to indicate that the program is a desktop utility (We
  41240. have included several other utilities on the program disk).
  41241. 1.11
  41242.  10 REM >star
  41243. 1.11
  41244.  20
  41245. 1.11
  41246.  30 REM *******************************
  41247. 1.11
  41248.  40 REM *  Star Commands for Desk Top *
  41249. 1.11
  41250.  50 REM *    written by Adrian Look   *
  41251. 1.11
  41252.  60 REM * original idea Denis Howlett *
  41253. 1.11
  41254.  70 REM *******************************
  41255. 1.11
  41256.  80
  41257. 1.11
  41258.  90 DEFFNinstall_file_star
  41259. 1.11
  41260. 100 file=OPENIN(filehandler_path$+ö.istarò):CLOSE #file
  41261. 1.11
  41262. 110 IF file=0 THEN ERROR 1,öCanæt find icon file Éistaræò
  41263. 1.11
  41264. 120 OSCLI(öSMERGE ò+filehandler_path$+ö.istarò)
  41265. 1.11
  41266. 130
  41267. PROCsys_addtoiconbar(östarò,öcommandò,&301A,icon_fgcol,icon_bgcol,48)
  41268. 1.11
  41269. 140 SYS öWimp_ForceRedrawò,-1,0,0,1279,100
  41270. 1.11
  41271. 150 =0
  41272. 1.11
  41273. 160
  41274. 1.11
  41275. 170 DEFFNaction_star
  41276. 1.11
  41277. 180 PROCstar_command(5,5,75,25,2,1)
  41278. 1.11
  41279. 190 =0
  41280. 1.11
  41281. 200
  41282. 1.11
  41283. 210 DEFPROCstar_command(x0,y0,x1,y1,bx,by)
  41284. 1.11
  41285. 220 *POINTER 0
  41286. 1.11
  41287. 230 VDU 26,4,28,x0,y1,x1,y0
  41288. 1.11
  41289. 240 y0=31-y0:y1=31-y1
  41290. 1.11
  41291. 250 gx=x0*16-bx*8:dx=(x1-x0)*16+bx*16+16
  41292. 1.11
  41293. 260 gy=y1*32-by*16:dy=(y0-y1)*32+by*32+32
  41294. 1.11
  41295. 270 GCOL 0,&4:RECTANGLE FILL gx-4,gy-4,dx+8,dy+8
  41296. 1.11
  41297. 280 GCOL 0,&0:RECTANGLE FILL gx,gy,dx,dy
  41298. 1.11
  41299. 290 LOCAL ERROR
  41300. 1.11
  41301. 300 REPEAT
  41302. 1.11
  41303. 310   ON ERROR LOCAL PRINT REPORT$
  41304. 1.11
  41305. 320   *FX 4,0
  41306. 1.11
  41307. 330   INPUTö*òstar$
  41308. 1.11
  41309. 340   *FX 4,1
  41310. 1.11
  41311. 350   OSCLI(star$)
  41312. 1.11
  41313. 360 UNTIL star$=öò
  41314. 1.11
  41315. 370 RESTORE ERROR
  41316. 1.11
  41317. 380 SYS öWimp_ForceRedrawò,-1,gx-4,gy-4,gx+dx+8,gy+dy+8
  41318. 1.11
  41319. 390 VDU 26,5
  41320. 1.11
  41321. 400 *FX 21,9
  41322. 1.11
  41323. 410 *POINTER
  41324. 1.11
  41325. 420 ENDPROC
  41326. 1.11
  41327. N.B. (i) You will need a STAR shaped icon called Écommandæ, saved as
  41328. Éistaræ. However, if you want to test the program before designing an
  41329. icon, skip lines 100-120 and change öcommandò in line 130 to öunknownò.
  41330. 1.11
  41331.   (ii) Because the DeskTop uses the filename of the utility as a Éseedæ,
  41332. it important that the utilityæs filename be consistent with its
  41333. procedure names. For example: if you rename Éstaræ to Écommandæ then the
  41334. DeskTop will look for FNaction_command instead of FNaction_star, so you
  41335. will get an error!
  41336. 1.11
  41337. Å   Making the Print Key Save Ö Last month it was suggested in Neil
  41338. Strongæs article about making the print key print that a slight
  41339. modification of the program could make it save screen shots to the disc
  41340. using SCREENSAVE ö$.picò instead of HARDCOPYFX. However, this limits you
  41341. to one screen shot at a time (otherwise you will overwrite your last
  41342. one). If we use the system variables and update the Éprint keyæ program
  41343. we can get it to save a screen called É$.scr0æ, followed by, É$.scr1æ,
  41344. É$.scr2æ..etc!
  41345. 1.11
  41346. 871 adr r0,command1
  41347. 1.11
  41348. 872 swi öOS_CLIò
  41349. 1.11
  41350. 920 equs öScreenSave scr<file>ò  ; FastSave even!#?
  41351. 1.11
  41352. 941 .command1
  41353. 1.11
  41354. 942 equs öSetEval file file+1ò
  41355. 1.11
  41356. 943 EQUB 0
  41357. 1.11
  41358. 944 ALIGN
  41359. 1.11
  41360. 1020 OSCLI(öSetEval file 0ò)
  41361. 1.11
  41362. 1030 END
  41363. 1.11
  41364. If you wish to (re)set the Éfile countæ to n, then just type:
  41365. 1.11
  41366. *SETEVAL file n
  41367. 1.11
  41368. Å   SpellMaster Browse in Wordwise Plus Ö If you have Spell-Master and
  41369. Wordwise Plus you can very easily write a two line segment program which
  41370. will call the browse window. i.e.
  41371. 1.11
  41372. *BROWSE
  41373. 1.11
  41374. DISPLAY
  41375. 1.11
  41376. Thus if the program were in segment zero you could press <shift><print>
  41377. while editing your text and check your spelling using the browse window.
  41378. This obviously opens up all sorts of possibilities for Wordwise Plus to
  41379. use Spell Masteræs facilities.
  41380. 1.11
  41381.  
  41382.  
  41383. Å   BASIC Editor. If you type öEDIT.ò instead of just öEDITò, it gets
  41384. you back into the editor at the same place you left it. This can be very
  41385. useful when editing long programs. It even seems to work if you load and
  41386. save other programs in the interim as long as you get the original
  41387. program back into memory. Also, you can say EDIT Fred and it will take
  41388. you to the first occurrence of the word öFredò in the file. So, with
  41389. judicious use of REM statements, you can jump into the program at just
  41390. the right place every time. If you want to find DEFPROCfred, EDIT fred
  41391. will probably bring you to PROCfred rather than the definition itself,
  41392. but REM !FRED above the top of the procedure would allow you to type
  41393. EDIT !FRED (note, all uppercase, which is easier to type) to drop you
  41394. straight to the desired place in the program.
  41395. 1.10
  41396. Å   Artisan ÿ fast load and save. If you have typed in the Fastload/Save
  41397. module from the March issue of Archive, *COPY FastRm onto the Artisan
  41398. disk and then LOAD öART3ò, list line 270 and add *RMLOAD FastRm|M and
  41399. then re-save it. Now LOAD öART5ò change line 2540 to OSCLIöFastLoad ò+f$
  41400. and line 2620 to OSCLIòFastSave ö+f$. Then re-save it. You now have a
  41401. new and improved disc facility for Artisan.
  41402. 1.10
  41403. Å   305, 310, 410 or 440? Following on from the hint in the May issue
  41404. (page 7) it╒s all very well to know what the page size is, 8k or 32k,
  41405. but to differentiate between a 305 and a 310 or between a 410 and a 440,
  41406. you need to know how much memory is available. One way of doing this is
  41407. to set up a local error trap and do a *Configure Spritesize 128. If the
  41408. machine has 1 Mbyte or less it will generate a öConfigure parameter too
  41409. bigò error. If it still generates an error when you use *Configure
  41410. Spritesize 64 then the software knows it is running in a 305. We have
  41411. not had chance to check this on a 305 or a 410, so please will someone
  41412. let us know if it does not work.
  41413. 1.10
  41414. Å   System DeltaPlus. If you want to use two drives, issue the following
  41415. two commands from the card index:
  41416. 1.10
  41417. *dir :1
  41418. 1.10
  41419. *set Delta$WPPrefix :0.$
  41420. 1.10
  41421. Then don╒t specify the drive number in the data file name.
  41422. 1.10
  41423. Å   View 3 & Viewstore 1.1. Various folk are still having problems with
  41424. these. If so, try the following as suggested by Sean Kelly ÿ thanks.
  41425. 1.10
  41426. Viewstore 1.1. Locations &ABE2, &ABE3 and &ABE4 should all be set to the
  41427. value &EA.
  41428. 1.10
  41429. View 3. Set locations &A8D6, &A8D7 and &A8D8 to the value &EA. Also,
  41430. there are four places where you get LDA#&82, JSR Osbyte (i.e. &A9, &82,
  41431. &20, &F4, &FF). This is used to check for the second processor on the
  41432. BBC. So to fool it, you have to change each of these to: LDX#&FF,
  41433. LDY#&FF, NOP. You can either do this by poking &A2, &FF, &A0, &FF, &EA
  41434. into each of the sets of locations: &8834 to &8838, &88D8 to &88DC,
  41435. &895C to &8960 and &AF8D to &AF91. (I checked these locations against
  41436. the B3.0 version in the Master 128╒s and it bore no resemblance to it.
  41437. Apparently it refers to the A3.0 version. Ed.)
  41438. 1.10
  41439. Å   Improved sound. If you have the colour monitor that comes with the
  41440. Archimedes, you can use the Audio Input at the back of the monitor (a
  41441. phono socket) to take a signal from the Headphones output (3.5 mm stereo
  41442. jack) from the Archimedes. Just use one of the channels or combine them
  41443. with 100R resistors. (If you╒re not quite sure how to do this, we╒ll try
  41444. to give more details next month.) This give a much better sound and
  41445. provides you with a volume control.
  41446. 1.10
  41447. Next two hints are from Peter Kiggins╔
  41448. 1.10
  41449. Å   When using a SWI from BASIC which either takes or returns a string,
  41450. it is not necessary to use pointers to strings.  The SYS command knows
  41451. that a pointer has been returned by the SWI and copies the relevant text
  41452. into the string.  For example, instead of
  41453. 1.10
  41454. $TxtPtr%=Number$
  41455. 1.10
  41456. SYSöOS_ReadUnsignedò,FromBase%,TextPtr% TO ,,Decimal%
  41457. 1.10
  41458. you can use the more readable and easier
  41459. 1.10
  41460. SYSöOS_ReadUnsignedò,FromBase%,Number$ TO ,,Decimal%
  41461. 1.10
  41462. And to read the command line which started the program, all thatæs
  41463. required is
  41464. 1.10
  41465. SYS öOS_GetEnvò TO Command_line$
  41466. 1.10
  41467. Å   BASIC commands TWIN and TWINO can be used without Acornæs (editor)
  41468. TWIN.  How?  When TWIN is executed, BASIC first converts the current
  41469. program from internal tokenised format to plain text format; then it
  41470. calls TWIN with the location of the text as a command line string.  So
  41471. all that is required is a program called TWIN which reads the command
  41472. line and saves the relevant chunk of memory:-
  41473. 1.10
  41474.  10 REM >twin
  41475. 1.10
  41476.  20 REM*** fails with very short pieces of text ***
  41477. 1.10
  41478.  30 SYS öOS_GetEnvò TO command_line$
  41479. 1.10
  41480.  40 posat%=INSTR(command_line$,ö@ò)
  41481. 1.10
  41482.  50 poscomma%=INSTR(command_line$,ö,ò,posat%)
  41483. 1.10
  41484.  60 possemic%=INSTR(command_line$,ö;ò,poscomma%)
  41485. 1.10
  41486.  70 start$=ö&ò+MID$(command_line$,posat%+1,poscomma%-(posat%+1))
  41487. 1.10
  41488.  80 finish$=ö&ò+MID$(command_line$,poscomma%+1,possemic%-(poscomma%+1))
  41489. 1.10
  41490.  90 INPUTöEnter file name: ò file$
  41491. 1.10
  41492. 100 OSCLI(ösave ò+file$+ö ò+start$+ö ò+finish$)
  41493. 1.10
  41494. 110 OSCLI(ösettype ò+file$+ö &FFFò)
  41495. 1.10
  41496. The point of all this is that the BASIC Editor can now be used to
  41497. produce text files ÿ for wordprocessing, compiling, etc.
  41498. 1.10
  41499. Å   Auto-Booting ÿ some of the commercial auto-boot programs donæt take
  41500. into account the filing system! This can be very annoying if you have a
  41501. ROM podule and your system is set to start up in the RFS. The answer is
  41502. (i) the software developers should produce proper auto-boot programs; or
  41503. (ii) if you already have bought a program ÿ put *CON.FILE.ADFS in auto-
  41504. boot program!
  41505. 1.10
  41506. Hard Disc Auto-Booting ÿ some readers are lucky enough to have hard
  41507. discs. However, life with a hard disc is not all a bed of roses! Having
  41508. copied your application programs to the hard disc, you run into problems
  41509. with the auto-booting routines. Here is a one of many possible solu
  41510. tions. Indeed this program could be used for those of us with floppies,
  41511. who have more than one application on a disc.
  41512. 1.10
  41513.  10 REM >$.!BOOT
  41514. 1.10
  41515.  20 REM **************************
  41516. 1.10
  41517.  30 REM * Multiple  Auto-Booting *
  41518. 1.10
  41519.  40 REM * written by Adrian Look *
  41520. 1.10
  41521.  50 REM *     22nd June 1988     *
  41522. 1.10
  41523.  60 REM **************************
  41524. 1.10
  41525.  70
  41526. 1.10
  41527.  80 SYS öOS_Byteò,161,16 TO ,,misc_flags
  41528. 1.10
  41529.  90 auto_boot=(misc_flags AND %10000)
  41530. 1.10
  41531. 100 file$=öbootò
  41532. 1.10
  41533. 110 file=OPENIN(file$):CLOSE #file
  41534. 1.10
  41535. 120 IF file=0 THEN PROCmenu
  41536. 1.10
  41537. 130 file=OPENIN(file$)
  41538. 1.10
  41539. 140 INPUT #file,boot$
  41540. 1.10
  41541. 150 CLOSE #file
  41542. 1.10
  41543. 160 IF auto_boot THEN OSCLI(öREMOVE ò+file$)
  41544. 1.10
  41545. 170 OSCLI(öRUN ò+file$)
  41546. 1.10
  41547. 180 END
  41548. 1.10
  41549. 190
  41550. 1.10
  41551. 200 DEFPROCmenu
  41552. 1.10
  41553. 210 REM **** your own code ****
  41554. 1.10
  41555. 220 REM
  41556. 1.10
  41557. 230 REM should exit with file$
  41558. 1.10
  41559. 240 REM containing the filename
  41560. 1.10
  41561. 250 REM of the program to be run.
  41562. 1.10
  41563. 260 REM
  41564. 1.10
  41565. 270 REM e.g. PRINT #file,filename$
  41566. 1.10
  41567. 280 ENDPROC
  41568. 1.10
  41569. The program checks whether a file (file$) is on the disk. If it is, then
  41570. the program reads the filename contained in file$ and runs it! Other
  41571. wise, the program should create file$ ÿ as indicated.
  41572. 1.10
  41573. This method also allows you to write library programs which will: create
  41574. file$ and then run the boot program. Thus by running these library files
  41575. you can also initiate your application programs ÿ without the need for a
  41576. menu!
  41577. 1.10
  41578. Å   Quazer Fix. If you are using Quasar 1.40, here is a cheat, (for
  41579. those who like such things!) which allows you to keep going a bit
  41580. longer. Firstly, *LOAD QuazCode 9000 and then rename Quazcode as, say,
  41581. OldCode. Now if you want to set the number of lives, you need to change
  41582. location &3D058. It should currently contain 2, so to change the number
  41583. of lives to, say 10, put ?&3D058=10. Now if you want to avoid being
  41584. killed when you collide, change the contents of location &3D90B from &E2
  41585. to &F2 by puting ?&3D90B=&F2. Finally, *SAVE QuazCode 9000 +36520.
  41586. 1.10
  41587. ÅPasswords if you want them. Quazer Passwords: 2 Lizards, 3 Spiders, 4
  41588. Pedantic, 5 Analysis, 6 Larkin, 7 Company, 8 Manual,9 Trading
  41589. 1.10
  41590. Hoverbod passwords: 2 Minervas, 3 SirBarry, 4 ZotyBlob, 5 Flumpies, 6
  41591. Squidgee, 7 Wobblies, 8 Posskett
  41592. 1.10
  41593.  
  41594. 1.10
  41595. The following Hints & Tips were sent in by Mike Harrison (of Watford
  41596. Digitiser fame). He╒s also sent us various other bits of information
  41597. which appear elsewhere in this issue and the next issue. Many thanks
  41598. Mike.
  41599. 1.10
  41600. Writing modules
  41601. 1.10
  41602. (Ref. issue 5, page 45) SWIs in modules must always use the ÉXæ version
  41603. of the SWI and, where appropriate, check for an error and exit,
  41604. preserving the value of r0 returned by the SWI (i.e. donæt restore the
  41605. old value of R0 if it had been saved). e.g.
  41606. 1.10
  41607. .a_module_routine
  41608. 1.10
  41609. STMFD R13!,{r0-2 ,14} \or however many registers you need to save
  41610. 1.10
  41611. SWI öXOS_SomethingOrOtherò
  41612. 1.10
  41613. STRVS R0,[R13] \overwrite old r0 with error pointer
  41614. 1.10
  41615. LDMVSFD R13!,{r0-2 ,PC}
  41616. 1.10
  41617. \ the last 2 statements could alternatively have been :
  41618. 1.10
  41619. \
  41620. 1.10
  41621. \ ADDVS R13,R13,#4 : LDMVSFD R13!,{r1-2 ,PC}
  41622. 1.10
  41623. For short routines, or where several SWIs are used, the following is
  41624. neater..
  41625. 1.10
  41626. .a_short_routine
  41627. 1.10
  41628. STMFD R13!,{r0-5 ,14}
  41629. 1.10
  41630. SWI öXOS_SomeSwiò
  41631. 1.10
  41632. SWIVC öXOS_SomethingElseò
  41633. 1.10
  41634. SWIVC öXOS_YetAnotherSwiò
  41635. 1.10
  41636. STRVS R0,[R13]
  41637. 1.10
  41638. LDMFD R13!,{r0-5 ,PC}
  41639. 1.10
  41640. In this example, all code after first SWI should be conditional on V
  41641. clear, so if any SWI gives an error, the code will Édrop throughæ to the
  41642. end.
  41643. 1.10
  41644. Remember that some SWIs may return errors you donæt expect ÿ e.g.
  41645. OS_WriteC could return an error when output is *Spooled, setting the
  41646. screen mode could give ÉBad Modeæ etc. ÿ some thought is required to
  41647. ensure that module code will be reliable in all environments.
  41648. 1.10
  41649. When setting up offsets in headers and command tables, it is much easier
  41650. to specify them when using offset assembly (OPT 4/6/7) ÿ set O% to the
  41651. code buffer, and P% to 0. Offsets can then be included directly with
  41652. EQUD (e.g. EQUD moduletitle). Warning ÿ if you are still using Basic
  41653. 1.00, there is a bug in ALIGN when using offset assembly. Version 1.02
  41654. is OK.
  41655. 1.10
  41656. The following assembler macro is useful when building keyword tables in
  41657. modules (it assumes the use of offset assembly, as described above):
  41658. 1.10
  41659. DEF FNcommand(I%,A$)
  41660. 1.10
  41661. [ OPTpass : EQUS A$ : EQUB0 :
  41662. 1.10
  41663. ALIGN
  41664. 1.10
  41665. EQUD EVAL(A$)
  41666. 1.10
  41667. EQUD I%
  41668. 1.10
  41669. EQUD EVAL(A$+ösyntaxò)
  41670. 1.10
  41671. EQUD EVAL(A$+öhelpò)
  41672. 1.10
  41673. ]:=pass
  41674. 1.10
  41675. OPT FNcommand(öNewCmdò,N) will create a table entry, using the labels
  41676. .NewCmd .NewCmdhelp and .NewCmdsyntax (N is the information word).
  41677. 1.10
  41678. Note that Épassæ is the name of the pass variable ÿ change this if you
  41679. use a different name.
  41680. 1.10
  41681. Podule manager/Clock slowdown
  41682. 1.10
  41683. (Ref. issue 7, page 44) The problem here is that SWIs are passed to
  41684. modules with interrupts disabled, so if the SWI takes a significant
  41685. amount of time to complete, the clock will slow down (the mouse pointer
  41686. will also become sluggish). I canæt see why the podule manager should
  41687. need interrupts off, so itæs probably an unintended Éfeatureæ ÿ SWI code
  41688. which takes time to execute SHOULD enable interrupts, unless they have
  41689. to be off. (The digitiser module only runs with interrupts off when
  41690. absolutely necessary!) When interrupts have been disabled for signifi
  41691. cant amounts of time, the seconds count of the real-time clock gets out
  41692. of step with the minutes, which then donæt roll over at 59 secs ÿ this
  41693. looks weird if you donæt know about it!
  41694. 1.10
  41695. System Devices
  41696. 1.10
  41697. (Ref. issue 6, page 41) There is a very interesting feature, which I
  41698. havenæt seen documented, concerning device oriented filing systems. When
  41699. you set the printer type using *FX5,n where n is greater than 2, the OS
  41700. looks for a system variable called printertype$n ÿ n being the value
  41701. used for FX5. This variable holds the name of the output file or device
  41702. to which printer output should be sent. The Econet module, NetPrint,
  41703. uses this to set printer type 4 to önetprint:ò. What happens is that
  41704. when you do <ctrl-B>, a file is opened, with the name given in this
  41705. system variable, and <ctrl-C> closes the file. While this would normally
  41706. send output to a hardware device, it can also use the name of a normal
  41707. file; e.g.
  41708. 1.10
  41709. *set printertype$5 outfile
  41710. 1.10
  41711. *fx5 5
  41712. 1.10
  41713. Will cause subsequent printer output to be written to the file öoutfileò
  41714. ÿ handy for debugging, and for saving data to print on other machines.
  41715. Note that this will only work if a program does VDU2, sends ALL its
  41716. output, then does VDU3. If it keeps turning the printer on and off all
  41717. the time with VDU2/3, only the last part of the output will be in the
  41718. file, as VDU2 re-opens the file, discarding its previous contents.
  41719. (Econet users know only too well the problems caused by software not
  41720. handling the printer correctly!)
  41721. 1.10
  41722. Just for fun, try :
  41723. 1.10
  41724. *set printertype$5 vdu:
  41725. 1.10
  41726. *fx5 5
  41727. 1.10
  41728. <Ctrl-B>
  41729. 1.10
  41730. All vdu output will appear ttwwiiccee!! ÿ once via the normal route, and
  41731. again via the printer stream.
  41732. 1.10
  41733. Use of SYS
  41734. 1.10
  41735. (Ref. issue 9, page 47) The following is a bomb-proof version of OSCLI
  41736. in BASIC, which will report errors without entering BASICs error handler
  41737. (it can also be used for other SWIs ÿ e.g. OS_File to trap filing errors
  41738. neatly)
  41739. 1.10
  41740. DEFPROCoscli(OS$)
  41741. 1.10
  41742. LOCAL flag%,error%
  41743. 1.10
  41744. SYSöXOS_CLIò,OS$ TO error% ; flag%
  41745. 1.10
  41746. IF flag% AND 1 THEN P.öError : ò;:SYSöOS_Write0ò,error%+4
  41747. 1.10
  41748. REM the error number can be read using !error%
  41749. 1.10
  41750. ENDPROC
  41751. 1.10
  41752. It works by reading back the V flag and error pointer returned by the X
  41753. version of the SWI
  41754. 1.10
  41755. TWIN
  41756. 1.10
  41757. (Ref. issue 7, page 7) You can warm start Twin using *Twin -warm, using
  41758. the same version of Twin, of course ÿ *GO may cause problems if the code
  41759. has been corrupted, (or youæve forgotten the address!). There is a bug
  41760. in all the versions of Twin Iæve seen (Iæm not sure what version has
  41761. been released), which means that when exiting from TWIN to BASIC, the
  41762. event vector is messed up, so if you overwrite the address where Twin
  41763. was run, and enable events, the machine crashes. This can be avoided by
  41764. doing QUIT, *BASIC, and OLD.
  41765. 1.10
  41766. In one issue, there was a tip for entering ARMBE automatically at the
  41767. line in error ÿ hereæs a similar routine if you prefer using TWIN to
  41768. edit BASIC programs ÿ It uses the TWINO8 option to strip line numbers
  41769. (which you donæt need to use, DO YOU!!). If the error wasnæt Escape,
  41770. pressing <Y> will enter TWIN at the line where the error occurred. Note
  41771. that it assumes lines are numbered in 10s ÿ this will be the case if the
  41772. program has been edited in TWIN without line numbers, but not if lines
  41773. have been inserted/deleted from the BASIC prompt ÿ in this case, enter
  41774. TWIN, and exit again, or do RENUMBER.
  41775. 1.10
  41776. ON ERROR PROCERR
  41777. 1.10
  41778. ...
  41779. 1.10
  41780. ...
  41781. 1.10
  41782. DEFPROCERR
  41783. 1.10
  41784. REPORT:PRINTö at line òERL
  41785. 1.10
  41786. IF ERR=17 END
  41787. 1.10
  41788. PRINTöEDIT ?ò:IF GET$=öYò ELSE END
  41789. 1.10
  41790. *FX138 0 129
  41791. 1.10
  41792. *FX138 0 128
  41793. 1.10
  41794. FORA%=1 TO LEN(STR$(ERL DIV10))
  41795. 1.10
  41796. SYS 6,138,,ASC(MID$(STR$(ERL DIV10),A%,1))
  41797. 1.10
  41798. NEXT:*FX138 0 13
  41799. 1.10
  41800. END
  41801. 1.10
  41802. Hidden software
  41803. 1.10
  41804. (Ref. issue 9, page 4)  Take a close look at the digitiser module!
  41805. 1.10
  41806.  
  41807.  
  41808. Å   View B3.0. Following on from the hint about View B3.0, John Phelan
  41809. writes thÅ   öMore articles about the basics, pleaseò, said a number of
  41810. folk at the Micro User Show. We╒ve had something on using ADFS and are
  41811. starting assembler for beginners but can anyone say specifically what
  41812. they want information on and can anyone offer to write any öbasicò
  41813. articles, please? In particular╔
  41814. 1.09
  41815. Å   Article on ARMBE. We really do need someone to write a very
  41816. practical guide to using the ARM BASIC Editor. For example, I╒ve only
  41817. just realised that <insert> toggles between insert and over-write mode
  41818. and so you don╒t have to go through the preferences menu. I suspect a
  41819. lot of people are not using ARMBE simply because they are familiar with
  41820. BASIC╒s own line editor and haven╒t got time to learn ARMBE even though
  41821. it would save them time in the long run. Please write to us if you would
  41822. like to have a go at this. Thanks.
  41823. 1.09
  41824. Å   BASIC V utility library. If you have worked out some neat utilities
  41825. like the one in Hints & Tips about aligning decimal points, why not send
  41826. them in to us. Clifford Hoggarth has offered to edit the section, so
  41827. either send your contributions to us or direct to him at 20 Pinfold
  41828. Drive, Eccleston Mere, St Helens, WA10 5BT.
  41829. 1.09
  41830. Å   Education articles. I╒m getting requests for articles relevant to
  41831. education, but no-one is offering such articles. Can anyone help?!
  41832. 1.09
  41833. Å   Hard Disc users. One reader, who has a 440 on order, wants to know
  41834. if there are any do╒s and don╒t╒s with a hard disc. Are there any hard-
  41835. disc users who want to comment?
  41836. 1.09
  41837. Å   View B3.0. Following on from the hint about View B3.0, John Phelan
  41838. writes that there is still a problem with the pound key. On the
  41839. Archimedes, this key returns ASCII 163. Is this redefinable?
  41840. 1.09
  41841. Å   Calculating ╣ and e. Brian Cowan asks if anyone knows the way that
  41842. pi and/or e may be calculated digit by digit on a computer. Presum-ably
  41843. they must be all integer algorithms(?)
  41844. 1.09
  41845. Å   Taxan KP-810 on ArcWriter. Has anyone worked out how to get a
  41846. printer driver working for this combination? Drop a line to E. Clinks
  41847. cales, 68 Wyvis Drive, Nairn, IV12 4TP.
  41848. 1.09
  41849. Å   Video-titling. Is there any software, says M Davies of Cardigan, for
  41850. video-titling? Wild Vision do the hardware for Genlock and Video
  41851. Overlay, but where is the software?
  41852. 1.09
  41853. Also, he asks, is there any software, preferably ROM based, to give NLQ
  41854. print on his Epson RX80 and also desktop publishing?
  41855. 1.09
  41856. Help Answers
  41857. 1.09
  41858. Å   Label printer for cassette tapes╔ Try the June issue of Micro User,
  41859. page 39.
  41860. 1.09
  41861.  
  41862. 1.09
  41863. Å   View B3.0. In order to get View B3.0 working properly under the 6502
  41864. emulator, as well as poking the three bytes at &A8A1 to &EA you have to
  41865. poke &80C2 ÿ 4 to &EA otherwise, the emulator tries to run it as a
  41866. second processor ROM image ÿ without any success. With this patch, the
  41867. address space from &B328 to &BFFF is effectively free for patching.
  41868. Perhaps some enterprising programmer could use this space for extra
  41869. routines ÿ e.g. a resident printer-driver.
  41870. 1.09
  41871. Å   Special characters. If you want to generate special characters on-
  41872. screen, try pressing <ctrl-shift-alt> and then one of the ordinary keys
  41873. and you will find that you can get all sorts of alternative characters
  41874. such as ⌐ and ¿ and the half, quarter and three-quarter signs (which I
  41875. haven╒t even got on the Apple Mac!). What is more, if you are using Arc-
  41876. Writer, it will actually print some of the symbols, such as the
  41877. fractions, on the printer!
  41878. 1.09
  41879. Å   PSU for external 5.25ö drives. If you have an external 5.25ò disc
  41880. drive that does not have its own power supply, you can take the power
  41881. from the power supply for the hard disc but you will need a special
  41882. cable and connector. Those who have bought interfaces from Dudley Micro
  41883. Supplies might be able to get help from them. (Or try the ArcDFS
  41884. interface mentioned in Hardware & Software Available section.)
  41885. 1.09
  41886. Å   Aligning decimal points. If you are trying to print out various
  41887. figures and want the decimal points to line up above one another, you
  41888. can use the öfixed formatò. (See the explanation of the @% variable
  41889. under the section in the User Guide about the PRINT command.) However,
  41890. the fixed format prints out trailing zeros, e.g. it prints 234.0000
  41891. instead of 234.
  41892. 1.09
  41893. The bad news: One reader wanted to avoid this and so was trying to write
  41894. a BASIC routine to do the aligning and discovered some nasties (presum
  41895. ably due to rounding errors) that gave the value of LOG100 as 2 but
  41896. INT(LOG100) as 1! Also he found that LEN(STR$3.3) was given as 3, but
  41897. LEN(STR$4.3) was given as 11!
  41898. 1.09
  41899. The good news: You can do a STR$, use INSTR to find the position of the
  41900. decimal point and then use PRINT TAB( to position it correctly as in the
  41901. following example. (Thanks, APL!)
  41902. 1.09
  41903.  10 REM >$.AlignDP
  41904. 1.09
  41905.  20
  41906. 1.09
  41907.  30 REM ***************************
  41908. 1.09
  41909.  40 REM * Aligning your decimals  *
  41910. 1.09
  41911.  50 REM *  by Adrian Philip Look  *
  41912. 1.09
  41913.  60 REM *    28th April 1988      *
  41914. 1.09
  41915.  70 REM ***************************
  41916. 1.09
  41917.  80
  41918. 1.09
  41919.  90 REPEAT
  41920. 1.09
  41921. 100   random=RND(10000)-RND(1)*(RND
  41922. 1.09
  41923. (1)<.7)
  41924. 1.09
  41925. 110   PROCalign(20,random)
  41926. 1.09
  41927. 120 UNTIL FALSE
  41928. 1.09
  41929. 130 END
  41930. 1.09
  41931. 140
  41932. 1.09
  41933. 150 DEFPROCalign(x,number)
  41934. 1.09
  41935. :REM x = position of DP
  41936. 1.09
  41937. 160 number$=STR$(number)
  41938. 1.09
  41939. 170 dot=INSTR(number$,ö.ò)
  41940. 1.09
  41941. 180 IF dot=0 dot=LEN(number$)+1
  41942. 1.09
  41943. :REM i.e. no DP
  41944. 1.09
  41945. 190 IF dot=1 dot=0:REM leads with DP
  41946. 1.09
  41947. 200 PRINT TAB(x-dot);number
  41948. 1.09
  41949. :REM beware of (x-dot)<0
  41950. 1.09
  41951. 210 ENDPROC
  41952. 1.09
  41953. STOP PRESS. The original enquirer about this, Peter Trigg, has just come
  41954. back with:
  41955. 1.09
  41956. DEFPROCalign(x%,number)
  41957. 1.09
  41958. :REM x% = position of DP
  41959. 1.09
  41960. LOCAL length%
  41961. 1.09
  41962. length%=LEN(STR$(INT(number)))
  41963. 1.09
  41964. PRINT TAB(x%-length%);number
  41965. 1.09
  41966. ENDPROC
  41967. 1.09
  41968. This is somewhat neater and it seems to work OK. (This just emphasises
  41969. the need for sharing ideas ÿ which is why we are setting up our öBASIC
  41970. utilitiesò section ÿ see Help!!! section.)
  41971. 1.09
  41972. Å   Music Editor. If you have a number of tunes that were prepared using
  41973. the Music Editor on the 0.2 or 0.3 Welcome discs. You will probably find
  41974. that all the voices are wrong ÿ usually that the main tune was being
  41975. played on the percussion! The reason is that the Music Editor refers to
  41976. the voices by number only, so if the modules are in a different order,
  41977. the voices are likewise in a different order. It is however possible to
  41978. change the order of the modules by *RMKILLing the one which is higher in
  41979. the *ROMMODULES list then doing a *RMTIDY and then *RMREINITing the
  41980. module which you had just killed.
  41981. 1.09
  41982. Å   Beware &36D!  Some BBC software (Apollo Mission for example) pokes
  41983. !877=0 (or !&36D=0). If you transfer this to the Archimedes you will
  41984. find that the system locks up and neither <ctrl-break> nor <reset> has
  41985. any effect. Even switching off is ineffective. The only way out is an
  41986. <R>-power-up. (Do it twice to restore the correct monitor-type setting.)
  41987. 1.09
  41988. Å   File copying on a single drive. Are you having difficulty copying
  41989. files from one disk to another using just one disk drive? Is it that
  41990. when using the *COPY command with the Prompt option, the system prompts
  41991. for insertion of the destination disk but never recognises it? If so,
  41992. issue the command *NODIR first. The system will then read the disk
  41993. directory every time it attempts to access a disk rather than storing
  41994. the directory in memory so that disks no longer need *MOUNTing. It is
  41995. possible to make the change permanent by doing *Configure NODIR.
  41996. 1.09
  41997. Å   Boot files that work from desktop or with <shift-break> ÿ set *OPT
  41998. 4,2 (Run) and create a BASIC program called !BOOT. You can then <shift-
  41999. break> if configured as language 3 or 4 (desktop or BASIC) or double
  42000. click the !boot icon from desktop.
  42001. 1.09
  42002. If necessary the !BOOT file can contain a line such as: 10*EXEC !BOOT1
  42003. 1.09
  42004. !BOOT1 contains tasks such as loading modules that need to be done from
  42005. supervisor mode.
  42006. 1.09
  42007. Å   To run Master software, use *Alphabet Master and *Keyboard Master.
  42008. 1.09
  42009. Å   *TypeFile again. After the ideas given last month, I knew there
  42010. should be an easier way╔ Clifford Hoggarth has come up with:
  42011. 1.09
  42012. *Alias$TypeFile Echo ||B|M Type %0|M Echo ||C|M
  42013. 1.09
  42014. The point is that on first interpretation, || is turned into | so that
  42015. it become Echo |B which gives the ASCII 2 (ctrl-B) to turn on the
  42016. printer and Echo |C to do the reverse.
  42017. 1.09
  42018. Å   System Delta Plus ÿ The section in the manual on printer control
  42019. codes is not very clear. The following points may make it clearer: (1)
  42020. Clicking on <menu> on the printer control icon brings up a sub-menu
  42021. giving options for Bold, Compressed or Reset. (2) To select multiple
  42022. escape sequences, click <select> on the printer control icon, select the
  42023. Escape icon and enter the first code in the sequence, then press
  42024. <return>, enter the second code and again press <return>. Repeat this if
  42025. necessary and click on the OK icon when you have finished. E.g. to get
  42026. NLQ on an Epson , you want ESC120,1. So use: <select> Escape icon, type
  42027. 120, press <return>, type 1, press <return>, <select> OK icon.
  42028. 1.09
  42029. One limitation of the System Delta Plus package, as it stands, is that
  42030. you can only create four numeric total fields when producing a öListò.
  42031. The solution, according to Minerva Systems will be to purchase their
  42032. öReporterò software ÿ when it becomes available!
  42033. 1.09
  42034. Å   Taxan Kaga printer (or the Canon equiv-alent) ÿ there is a fairly
  42035. simple way of being able to switch the auto-line feed on and off, to
  42036. avoid problems with software that may or may not require the printer to
  42037. auto-line feed.
  42038. 1.09
  42039. All you do is to place a switch between two pins of the printer
  42040. connector. The pins to connect are pin 14 (auto-line feed) and any GND
  42041. line. When they are connected an auto-line is not performed.
  42042. 1.09
  42043. Å   Ambiguous *-commands. If you have two modules loaded into the
  42044. Archimedes that use the same *-command name, you can call the command
  42045. required by: *<module name>: <command> <....> So, for example, if you
  42046. had two modules, ╘Utility╒ and ╘Toolkit╒ both of which have a CATALL
  42047. command, you can use either *Utility:CATALL or *Toolkit:CATALL to
  42048. differentiate between them.
  42049. 1.09
  42050.  
  42051. 1.09
  42052.  
  42053.  
  42054.  
  42055.  
  42056. Å Colour TV output for Archimedes?  If you havenæt got a colour monitor
  42057. and want to use a TV to look at the output from the Archimedes in
  42058. colour, you can feed the signal from the video output into the Évideo
  42059. inæ on a video recorder (always assuming youæve got one!) and connect
  42060. the ÉRF outæ from the recorder to the TV.
  42061. 1.08
  42062. Å Drive lights on external 5.25ö drives.  One reader suggested that to
  42063. avoid the external drive light coming on when I accessed the interal
  42064. drive(s) I should remove all links except DS1 (I use DS2 to make it
  42065. drive2), TO, RR and MS.  I followed his advice and it seems to be OK
  42066. now.
  42067. 1.08
  42068. Å 400 or 300?  If a piece of software wants to find out if it is running
  42069. in a 300 series machine or a 400 series it can read the MEMC to find the
  42070. size of page being used, thus:
  42071. 1.08
  42072.    program segment missing
  42073. 1.08
  42074. Å More buzzing.  One reader noticed that the buzzing from the speaker
  42075. gets worse when you upgrade from a 305 to a 310.  Other readers have
  42076. found that the buzz gets to an intolerable level with certain software
  42077. such as ArcWriter.  In any case, this is now recognised by Acorn as a
  42078. field change, so your local dealer should be able to sort it out for
  42079. you.  If your local dealer is not within easy reach then the öcapacitor
  42080. fixò mentioned in issue 3, page 7, is easy enough to do as long as you
  42081. are reasonably competent at soldering.
  42082. 1.08
  42083.  
  42084. 1.08
  42085. Å Printer Acknowledge Line.  The IOC (Input Output Controller) has a
  42086. printer acknowledge line which can be read from the ARM supervisor mode.
  42087. However, it is not advisable to Éplay aroundæ in this area, unless you
  42088. know what you are doing, because some locations are read only and
  42089. attempting to write to them could damage your IOC chip.  Here is an
  42090. example program that reads the printer acknowledge line.
  42091. 1.08
  42092.    program segment missing
  42093. 1.08
  42094. Å *TypeFile Command.  One reader tried to define an alias which types
  42095. out a file on the printer and then switches the printer off again, but
  42096. he found that it was easier said than done.  I set Adrian Look onto it
  42097. and he has managed to find a way of doing it (albeit rather tortuous!):
  42098. 1.08
  42099.    program segment missing
  42100. 1.08
  42101. then to print out the file, you do a *TypeFile<filename>.  The <60> and
  42102. <62> are the ASCII codes for ö<É and ö>ò.
  42103. 1.08
  42104. It sounds a bit long-winded, but what you are trying to do is generate
  42105. ASCII codes <2> and <3> to switch the printer on and off again.  When
  42106. you do a *SHOW, it gives the definition of TypeFile as ECHO |<2>|M TYPE
  42107. %0|M ECHO |<3>|M.
  42108. 1.08
  42109. Å öWhatæs the time, Arthur??ò  Ö If you wanted to change the prompt
  42110. which Arthur gives, you could try, for example:
  42111. 1.08
  42112.    *Set CLI$PROMPT >>>
  42113. 1.08
  42114. and you would get a question mark instead of the star prompt.  Then, if
  42115. you want Arthur to tell you time at each prompt, use:
  42116. 1.08
  42117.    *SETMACRO CLI$PROMPT <SYS$TIME>*
  42118. 1.08
  42119. This prints out the time and then prints the star prompt.  The reason
  42120. you use SETMACRO rather than just SET is that it needs to be a variable
  42121. which is up-dated each time the command is used.  If you donæt like the
  42122. seconds figure to be included, try:
  42123. 1.08
  42124.    <SYS$TIME><127><127><127>*
  42125. 1.08
  42126. This prints out the time but then generates three delete characters
  42127. which remove the seconds figures and the colon.
  42128.  
  42129.  
  42130.  
  42131.  
  42132.  
  42133.  
  42134. Å   GETfile and PUTfile on the MS-DOS emulator are difficult to use if
  42135. you only have a single drive. However, if you configure a RAM disc with
  42136. MS-DOS you can then copy MS-DOS files onto it and then form the ADFS
  42137. files on the physical drive and vice versa to take ADFS files in to the
  42138. MS-DOS file system.
  42139. 1.7
  42140. Å   Programs that work under the PC-emulator. Iæve had lots of informa
  42141. tion about MS-DOS software that does work, but has anyone found any
  42142. software that does NOT work under the PC-emulator?
  42143. 1.7
  42144. Å   With version 1.09 of the PC emulator, if you do the following╔
  42145. 1.7
  42146. *LOAD PC.Emulate 10000
  42147. 1.7
  42148. ?&137C8=0
  42149. 1.7
  42150. *SAVE PC.Emulate2 10000
  42151. 1.7
  42152. you will find that the memory isnæt cleared when you press the reset
  42153. button.
  42154. 1.7
  42155. Å   One good book to help new MS-DOSæers (sorry!) is öQuick Reference
  42156. Guide to MS-DOSò by Van Wolverton, published by Microsoft Press,
  42157. obtainable via Watford Electronics at ú3.95. (ISBN 1-55615-025-3)
  42158. 1.7
  42159. Å   From various reports, it seems that CHKDSK does work properly though
  42160. it has to be used with care. It can be used to repair the File Allo
  42161. cation Table (FAT) and repair errors in directories. Files are not
  42162. necessarily stored contiguously on an MS-DOS disc, so if part of a file
  42163. is lost then CHKDSK can be used to convert lost chains to files (i.e.
  42164. write to a disc directory). Generally, CHKDSK by itself is safe. CHKDSK
  42165. *.* /V is usually safe, but CHKDSK *.* /F is dangerous if you donæt know
  42166. what you are doing!
  42167. 1.7
  42168. Å   One reader says he has solved the problem of öTo linefeed or not to
  42169. linefeed╔ò by adding a single pole switch in parallel with the contact
  42170. on the printer dip-switch that sets the auto-linefeed on and off,
  42171. leaving the dip-switch in the open position, of course. Donæt forget
  42172. though that most printers only look at the dip-switch settings at power-
  42173. up, though some do so when you do a software reset with 27,64.
  42174. 1.7
  42175. Å   With Arc-Writer, to get it not to double space on a Panasonic
  42176. printer, use the AW_PCedit program, select the RX80D and change the
  42177. number of steps per 100 units vertically from 21600 to 600.
  42178. 1.7
  42179. Å   View 3 works under the emulator if you poke locations A8A1, A8A2 and
  42180. A8A3 with &EA.
  42181. 1.7
  42182. Å   Acornsoft ISO Pascal, Comal, Prolog and LISP all work under the
  42183. emulator says one reader.
  42184. 1.7
  42185. Å   Share Analyser (Synergy Software) works perfectly under the 6502
  42186. emulator.
  42187. 1.7
  42188. Å   Four floppies on 1.2 OS. If you try *con. floppies 4, you will find
  42189. that it tells you the number is too big, but if you use *FX162,135,4 and
  42190. do a <ctrl-break>, you will finds that *STATUS tells you that you have
  42191. four floppies.
  42192. 1.7
  42193. Å   Booting other drives. In contrast with the BBC micros, you can, on
  42194. Archimedes, *MOUNT 1 and then <shift-break> to boot the disc in drive 1.
  42195. 1.7
  42196. Å   WIMP Manager. Be aware that the first time Wimp_poll is called, it
  42197. clears the screen.
  42198. 1.7
  42199. Å   Fitting the backplane: It is an awkward job to fit the backplane
  42200. because two plastic spacers are used into which self-tapping screws have
  42201. to be inserted. This is best done in a vice to avoid stripping screw
  42202. heads and/or sticking screwdrivers through your fingers!
  42203. 1.7
  42204. Å   ÉUnknown IRQ at &00000000æ. If you get this error message (and
  42205. possibly find that the machine hangs up on you) check whether your RS423
  42206. lead is properly screened, if at all. If it is not screened, it seems to
  42207. be able to pick up interference (remember the micro-wave problems
  42208. mentioned in issue 5, page 8?) and this generates spurious interrupts.
  42209. 1.7
  42210. Å   More ideas on the black art of RS423 communication! Here is one
  42211. readeræs recipe for succesful RS423 transfer, though it may not work for
  42212. everyone╔ Try using the Éfixæ module (Archive 1.6 program disc) with
  42213. pins 1,4,8 and 9 linked together and 6 (DSR) and 7 (RTS) as the control
  42214. lines.
  42215. 1.7
  42216. Å   Running more than one BASIC program. If you have a BASIC program you
  42217. want to run while you are working on another program in memory, you can
  42218. program a couple of keys with:
  42219. 1.7
  42220. *KEY 4 P%=PAGE : PAGE=&30000
  42221. 1.7
  42222. : CHAIN ötestprogò|M
  42223. 1.7
  42224. *KEY 5 PAGE=P% : OLD|M
  42225. 1.7
  42226. Å   System Delta Plus: If you have trouble loading newly formed
  42227. databases and get öNo Roomò when you know there is plenty of room, add a
  42228. .D to the filename when loading, i.e. type in the filename as, say,
  42229. öRECORDS.Dò.
  42230. 1.7
  42231. Å   Inter-Word: If you have come from the desktop, you will find that
  42232. the tab key does not work. This can be corrected with *FX219,9.
  42233. 1.7
  42234. If you want the ú sign, you will find it is produced by the ` key (far
  42235. top left key).
  42236. 1.7
  42237. If you want the ` sign╔ tough! (The ú sign duplicates the öinsert rulerò
  42238. function!)
  42239. 1.7
  42240. Å   Stuck in a black hole? If you find yourself typing in black on
  42241. black, try typing MODE MODE<return>. It allows you to type again, but
  42242. maintains the mode you were in.
  42243. 1.7
  42244. Å   SystemDevs module. The redirection commands, some of which we said
  42245. didnæt seem to work, are sensitive to spacing. The correct forms are as
  42246. follows where the spaces are represented by bullets (Å):
  42247. 1.7
  42248. *CATÅ{Å>ÅinfoÅ }
  42249. 1.7
  42250. Spools catalogue to file öinfoò
  42251. 1.7
  42252. *CATÅ{Å>>ÅinfoÅ }
  42253. 1.7
  42254. Adds catalogue to file öinfoò
  42255. 1.7
  42256. *BASICÅ{Å<ÅdataÅ }ÅPROG
  42257. 1.7
  42258. Runs öPROGò and uses information in file ödataò for input.
  42259. 1.7
  42260. Å   Using the Acorn ROM Podule: No links are available for the RAM
  42261. sockets, although you can configure the sockets by software for 8k, 32k
  42262. or 128k RAM chips. Using HM6264LP-15 ram in the sockets and configuring
  42263. them as 8k does not immediately work. However if you configure them as
  42264. 32k chip and apply an offset of &2000 when loading i.e.:
  42265. 1.7
  42266. *RMLoad <podule number>
  42267. 1.7
  42268. <socket> <filename> 2000
  42269. 1.7
  42270. then your data will load correctly. This is because the Chip Select (CS)
  42271. on the 8k chips is on the pin Address 13 (pin 26) on the 32k and 128k.
  42272. This causes the 8k chip to be mapped into 8-16k and 24-32k hence the
  42273. offset of 8k. The inverted CS on pin 20 is common to all three devices.
  42274. (Without configuring them as 32k, the operating system reports that the
  42275. device is not big enough for an 8k offset.)
  42276. 1.7
  42277. Å   Concerning Acornsoft C and TWIN: ÉConcurrencyæ (keeping text in one
  42278. window and compiling a program in the other) does not work. The compiler
  42279. (v1.5A) has a bug in it that prevents it from working. Acorn said that
  42280. it used to work OK on the pre-release version! However, compiler output
  42281. can be sent to a file called tmp.temp if the -spool option is used.
  42282. 1.7
  42283. It may be necessary to relocate TWIN in order to compile programs. My
  42284. version of TWIN loaded at &60000 but needed to be relocated to &80000 to
  42285. allow the compiler enough space. (See below.) If the compiler crashes,
  42286. try increasing the SystemSize using *configure.
  42287. 1.7
  42288. The two compiler messages, ÉFatal I/O erroræ and ÉBinary output erroræ,
  42289. simply mean that your disc is full!
  42290. 1.7
  42291. Å   More about TWIN. Twin is an editor which seems to have one or two
  42292. hidden features; firstly it is a relocatable program, and consequently
  42293. can be loaded anywhere where RAM exists (barring overwriting OS
  42294. workspace etc.). I have created a version which I call LoTwin which
  42295. loads at &10000; this leaves space for BASIC programs only 256 bytes
  42296. fewer than are available on a BBC Master using Shadow RAM, and yet it
  42297. allows me considerably more work space than the standard Twin.
  42298. 1.7
  42299. To create a version of Twin called ÉMYTWINæ which loads and runs other
  42300. than at the Énormalæ address, perform the following actions:
  42301. 1.7
  42302. *DIR <diræry_containing _Twin>
  42303. 1.7
  42304. *LOAD TWIN <new_load_address>
  42305. 1.7
  42306. *EX
  42307. 1.7
  42308. *SAVE MYTWIN <new_load_
  42309. 1.7
  42310. address> +<size>
  42311. 1.7
  42312. <size> is obtained from the 3rd column of hex data after the É*EXæ.
  42313. 1.7
  42314. Then, to invoke the new version, type
  42315. 1.7
  42316. *MYTWIN
  42317. 1.7
  42318. and it will run. Pressing <shift-f5> followed by <T> after entering
  42319. MYTWIN will show the load address on the top line immediately to the
  42320. left of the time.I have yet to see mentioned in print the Éwarm startæ
  42321. for TWIN. If something nasty happens and your Archimedes locks up just
  42322. as you have spent a couple of hours typing in something using TWIN, and
  42323. you have no option but to press <ctrl-break>, or even <ctrl-reset>, do
  42324. not despair, simply type:
  42325. 1.7
  42326. *GO <twin_start_address> -WARM
  42327. 1.7
  42328. and you will find yourself back in TWIN exactly as you were when the
  42329. Énastyæ happened, barring any corruption caused by the Énastyæ. Donæt
  42330. forget the É-æ preceding the öWARMæ! I have found myself in this
  42331. position after a momentary power cut, and although the warm start did
  42332. not restore TWIN as a fully functional editor (due to corruption), it
  42333. restored Twinæs ability to save text, so I saved what I had done, and
  42334. was then able to reload Twin, and then reload my text.
  42335. 1.7
  42336. Å   Iso Pascal: Be warned before you buy Iso Pascal, it has NO support
  42337. for Arthur Ö otherwise, says one reader, it is an excellent implementa
  42338. tion. Also (in common with C) it comes with a very thin manual, so a
  42339. copy of TWIN and a book about the language (see the mini-review on page
  42340. 25) will be needed for most people.
  42341. 1.7
  42342. (More information  about other languages was sent in, but this was all I
  42343. could digest with my limited knowledge of languages other than BASIC.
  42344. Would anyone be prepared to receive all the öother languagesò informa
  42345. tion and knock it up into a special section each month?)
  42346. 1.7
  42347. Using the Computer Concepts ROM Podule
  42348. 1.7
  42349. How many times have you had to press <ctrl-break> and muttered under
  42350. your breath because youæve lost your function key definitions? That need
  42351. never happen again if you have Computer Conceptsæs ROM podule with some
  42352. battery-backed RAM on it. All you do is configure the system to start up
  42353. in the RFS instead of the ADFS and also configure it to auto-boot. Then
  42354. in the RFS, you put a boot file something like:
  42355. 1.7
  42356. REM > RFS:!BOOT
  42357. 1.7
  42358. *SET Run$Path ,ADFS:$.,RFS:$.%.
  42359. 1.7
  42360. *ADFS
  42361. 1.7
  42362. *FX255,8
  42363. 1.7
  42364. PRINT öAcorn ADFSòÉ
  42365. 1.7
  42366. *KEY 0 These are
  42367. 1.7
  42368. *KEY 1 my favourite
  42369. 1.7
  42370. *KEY 2 key definitions
  42371. 1.7
  42372. *SET ALIAS$> Cat
  42373. 1.7
  42374. *SET ALIAS$? HELP etc
  42375. 1.7
  42376. *BASIC
  42377. 1.7
  42378. (You will notice that the Run$Path uses É$æ instead of É%æ as stated on
  42379. page 28 of the Computer Concepts manual.)
  42380. 1.7
  42381. Å   To get the Inter series software to boot up with a simple call such
  42382. as *ISHEET, copy 65Arthur into the RAM area using *COPY
  42383. ADFS:Modules.65Arthur RFS:65Arthur and, providing you have set up the
  42384. Run$Path as above, *ISHEET, *IWORD and *ICHART will automatically load
  42385. the emulator and then the appropriate software.
  42386. 1.7
  42387. Å   Installing Wordwise Plus. If you copy the Archimedes version of
  42388. Wordwise Plus from Computer Conceptsæs disc (filename öWW+ò) into the
  42389. RFS calling it, say, WWIMAGE, you can modify the BASIC program öISHEETò
  42390. and save it as öWW+ò so that, as above, you can just type *WW+ and it
  42391. will auto-load the emulator and run the software. The modifications are
  42392. to change the references to öISIMAGEò at lines 130 and 270 into
  42393. öWWIMAGEò.
  42394. 1.7
  42395. Å   If you want to modify any of the programs in a ROM, all you do is
  42396. either LOAD it, edit it and SAVE it or, if you have the modified version
  42397. on disc, just *COPY it. If you tell it to SAVE a file with a name that
  42398. exists in ROM it gives the ram version precedence over the ROM version.
  42399. 1.7
  42400. To find out whether a particular file is in ROM or RAM, use the *INFO
  42401. <filename> command. If it comes up with a ö*ò before the final figure of
  42402. the information, the file is in the RAM area. To get the ROM version
  42403. back, you either have to do a <ctrl-break> or type *RMREINIT RFS
  42404. <return> because *delete filename removes all trace of it so that even
  42405. the ROM version is inaccessible.
  42406. 1.7
  42407. Thanks to Adrian Look for all the following hints and tips.
  42408. 1.7
  42409. Å   X-SWIæs. When using SWIæs if you put an X before the name then the
  42410. SYS call from BASIC will not generate an error. For example:
  42411. 1.7
  42412. SYS öXOS_CLIò,block
  42413. 1.7
  42414. Å   Modes & drawing speed. The VIDC receives the video data down the
  42415. data bus lines of the ARM processor. While this is happening the RISC
  42416. chip cannot perform any processing. This means that the screen modes
  42417. using higher memory will be slower. Try timing a FOR-NEXT loop of
  42418. 1,000,000!  So, if speed is of the essence, it may be better to go into
  42419. mode 0, do the calculations and save them in an array and then go into
  42420. mode whatever to plot the results.
  42421. 1.7
  42422. However, there is a compensating factor. The lower memory modes use one
  42423. byte to represent several pixels, thus addressing pixels requires extra
  42424. calculation Ö whereas the higher memory modes use only one byte to
  42425. represent a pixel so addressing pixels is much quicker. This means that
  42426. graphics will be quicker in higher modes.
  42427. 1.7
  42428. Mode   F/N loop   Draw   Mem.   Colours
  42429. 1.7
  42430.       (secs)   (secs)   (k)
  42431. 1.7
  42432.    0   14.9   51   20   2
  42433. 1.7
  42434.    1   14.9   38   20   4
  42435. 1.7
  42436.    2   15.6   34   40   16
  42437. 1.7
  42438.    3   15.6    Ö   40   Text
  42439. 1.7
  42440.    4   14.9   38   20   2
  42441. 1.7
  42442.    5   14.9   32   20   4
  42443. 1.7
  42444.    6   14.9    Ö   20   Text
  42445. 1.7
  42446.    7   15.6    Ö   80   T-Text
  42447. 1.7
  42448.    8   15.6   54   40   4
  42449. 1.7
  42450.    9   15.6   40   40   16
  42451. 1.7
  42452.    10   17.1   39   80   256
  42453. 1.7
  42454.    11   15.6    Ö   40   Text
  42455. 1.7
  42456.    12   17.1   61   80   16
  42457. 1.7
  42458.    13   17.1   45   80   256
  42459. 1.7
  42460.    14   17.1    Ö   80   Text
  42461. 1.7
  42462.    15   21.3   79   160   256
  42463. 1.7
  42464.    16   19.6    Ö   132   Text
  42465. 1.7
  42466.    17   19.5    Ö   132   Text
  42467. 1.7
  42468.    18   15.4   70   40   2
  42469. 1.7
  42470.    19   16.9   77   80   4
  42471. 1.7
  42472.    20   21.0   98   160   16
  42473. 1.7
  42474. Å   OS_Pretty Print. Have you ever wondered how the operating system
  42475. manages to display all its messages without any of the words getting
  42476. split at the end of a screen line, no matter what mode it is in? Well,
  42477. the answer is ÉOS_ PrettyPrintæ.
  42478. 1.7
  42479. If you print all your strings using this call it will stop any words
  42480. going over the end-of-line boundary. This call recognises the following
  42481. control characters in a special way:
  42482. 1.7
  42483. Ö CR (CHR$(13)) causes not just a carriage return but also a newline.
  42484. 1.7
  42485. Ö TAB (CHR$(9)) causes a tabulation to the next multiple of eight
  42486. columns.
  42487. 1.7
  42488. Ö CHR$(31) is a Épad characteræ, that is, the procedure will print a
  42489. space when this code occurs but it will not break the string up at this
  42490. point.
  42491. 1.7
  42492. Example:
  42493. 1.7
  42494. A$=öHello my name is...ò
  42495. 1.7
  42496. SYS öOS_PrettyPrintò,A$
  42497. 1.7
  42498. Å   The QUICK option When you use the (Q)uick option in the *COPY and
  42499. *BACKUP commands, the OS will use all available memory. This means that
  42500. if you are in high memory screen modes then you will have less memory to
  42501. use. So if you want even quicker *COPYing or *BACKUPs then try it in a
  42502. mode which uses less memory.
  42503. 1.7
  42504. Å   Run$Path and File$Path. The FileSwitch uses two system variables
  42505. called Run$Path and File$Path. You can see their values by typing
  42506. either:
  42507. 1.7
  42508. *SHOW File$Path <return> and/or
  42509. 1.7
  42510. *SHOW Run$Path <return>
  42511. 1.7
  42512. You will probably get the following results:
  42513. 1.7
  42514. File$Path : type String, value :
  42515. 1.7
  42516. Run$Path : type String, value : ,%.
  42517. 1.7
  42518. These are the default settings. The values stored in the File$Path and
  42519. Run$Path variables are actually a list of directory filenames separated
  42520. by commas and terminated with dots.
  42521. 1.7
  42522. When the FileSwitch is told to read a file it will look at File$Path
  42523. variable and search for the file in each of the directories listed until
  42524. it finds a match. Similarly the FileSwitch will do the same when it is
  42525. told to execute a file, only it will use the Run$Path variable as the
  42526. list of directories. For example:
  42527. 1.7
  42528. *SET File$Path RFS:%.,,%.
  42529. 1.7
  42530. This would cause the FileSwitch to search for the file first in the RFS
  42531. filing systemæs library directory, then in the current filing systemæs
  42532. current directory (hence the ö,,ò which means donæt add anything to the
  42533. filename as entered), and finally in the current filing systemæs library
  42534. directory.
  42535. 1.7
  42536. Here is a list of all the possible directory prefixes (although you can
  42537. actually specify any directory by name Ö wildcards may be used):
  42538. 1.7
  42539.  *    Ö    all
  42540. 1.7
  42541.  $    Ö    root
  42542. 1.7
  42543.  &    Ö    user
  42544. 1.7
  42545.  @    Ö    current
  42546. 1.7
  42547.  ^    Ö    parent
  42548. 1.7
  42549.  %    Ö    library
  42550. 1.7
  42551.  }    Ö    previous
  42552. 1.7
  42553. Å   Flushing the Mouse. You may have noticed that the mouse has a buffer
  42554. of its own. This means that the Arc stores all the mouse movements and
  42555. clicks just as it stores the keyboard entries. How many of you play
  42556. around with the mouse when a program is Éthinkingæ or waiting for a
  42557. screen to load? This will leave a whole load of mouse positions and
  42558. clicks in the buffer, so any subsequent MOUSE X,Y,B readings will not
  42559. reflect the true position of the mouse but the positions stored in the
  42560. buffer!!! So how do you clear the buffer? To flush all the buffers,
  42561. type:
  42562. 1.7
  42563. *FX 15 <return>
  42564. 1.7
  42565. to flush just the mouse buffer, type:
  42566. 1.7
  42567. *FX 21,9 <return>
  42568. 1.7
  42569. Å   Local DATA statements. (Based on an idea sent in by C.R.Fitch) In
  42570. answer to the query last month, it is possible to have DATA statements
  42571. in a program that does not rely on line numbers. What you can do is to
  42572. use the error handler to pin-point a line number just before the local
  42573. data statements. For every data set you want to access, just use the
  42574. following format:
  42575. 1.7
  42576. DEFPROCdata_set
  42577. 1.7
  42578. LOCAL ERROR
  42579. 1.7
  42580. ON ERROR LOCAL RESTORE ERL
  42581. 1.7
  42582. IF ERL=0 THEN ERROR 1,öget line
  42583. 1.7
  42584.  numberö
  42585. 1.7
  42586. RESTORE ERROR
  42587. 1.7
  42588. DATA 1,2,3,4,5 : REM put your
  42589. 1.7
  42590.  own data here
  42591. 1.7
  42592. ENDPROC
  42593. 1.7
  42594. Then if you want to use the data set, just call the procedure, as for
  42595. example:
  42596. 1.7
  42597. PROCdata_set
  42598. 1.7
  42599. FOR i=1 TO 5
  42600. 1.7
  42601. READ data:PRINT data
  42602. 1.7
  42603. NEXT i
  42604. 1.7
  42605. The procedure leaves everything exactly as it was (except the data
  42606. pointer) so it does not affect the program at all. The only snag is that
  42607. we donæt know where the old data pointer was so we canæt continue
  42608. reading data from where we left off! Any ideas??
  42609. 1.7
  42610. (The remaining information in this section is about using the MS-DOS
  42611. emulator. More information than this was sent in, but this was all I
  42612. could digest with my limited knowledge of MS-DOS. Would anyone be
  42613. prepared to receive all such information and knock it up into a special
  42614. MS-DOS section each month?)
  42615. 1.7
  42616.  
  42617. 1.7
  42618.  
  42619.  
  42620. Å   (1.2 OS) If you want to look at the desktop manager programs and
  42621. perhaps modify them and run them from disk, the following information
  42622. may be of use:
  42623. 1.6
  42624. The DESKTOP has its own filing system activated by *DESKFS. If you do a
  42625. *CAT, you will get:   DeskTopMgr
  42626. 1.6
  42627. DeskTopMgr2
  42628. 1.6
  42629. &.!palette
  42630. 1.6
  42631. Icons.Desktop
  42632. 1.6
  42633. Icons.Calculator
  42634. 1.6
  42635. Icons22.Desktop
  42636. 1.6
  42637. Icons22.Calculator
  42638. 1.6
  42639. You can then LOAD the DeskTopMgr2 program and LIST it. (DeskTopMgr╩is
  42640. just the 5-line startup program that gets left in BASIC when you exit
  42641. the desktop.)
  42642. 1.6
  42643. If you change back to *ADFS, you can then save the program. To copy the
  42644. palette and/or the Icons, you have to use commands such as:
  42645. 1.6
  42646. *COPY DESKFS:I*.Desktop $.I*.Desktop
  42647. 1.6
  42648. (assuming you are in ADFS and have created a directory called Icons)
  42649. 1.6
  42650. To run the program from disk, you need the icon and palette files to be
  42651. copied across then if you fancy tackling 76k of öcrunchedò BASIC
  42652. program, you can try editing it!
  42653. 1.6
  42654. Å   If you are using the decrement or increment (+= or Ö=) in a BASIC
  42655. program and you get a öMistakeò error on that line, the chances are that
  42656. you have forgotten to initialise the variable. Try typing X=X+1:PRINT X
  42657. and it will give the value 1 but if you type Y+=1 it will say öMistakeò.
  42658. What it really should say is öUnknown or missing variableò, but still,
  42659. good programmers wonæt get the problem because we always remember to
  42660. initialise all our variables, donæt we? (We do?)
  42661. 1.6
  42662. Å   Testing multi-sync output without a multi-sync monitor! If you are
  42663. writing software and hoping to sell enough of it to be able to afford a
  42664. multi-sync monitor(!) you have the problem of testing your software in
  42665. modes 18 to 20. If you use *Configure MonitorType 1, modes 0 to 17 are
  42666. still displayed as normal then when you select modes 18 to 20 and
  42667. generate the screen output, you can use a screendump (such as Gerald
  42668. Fittonæs minidump or *HardCopyFX) to look at what youæve got. If youære
  42669. worried about damaging the monitor, switch it off before changing mode.
  42670. 1.6
  42671. Å   Using large printer buffers etc. If youære using a buffer thatæs
  42672. larger than 64 kbytes, itæs no use trying to use ADVAL with a negative
  42673. number (e.g. PRINT ADVAL(-4) for the printer buffer) Ö it only returns
  42674. the least two significant bytes. Instead, use SYS öOS_Byteò, &80, &FC TO
  42675. , X%, Y% : bytes_free%= X%+256*Y% where &FC is the Ö 4 value. (Actually,
  42676. instead of working out that Ö 4 is the equivalent of &FC you can, it
  42677. seems, be lazy and use Ö 4 in the SYS command. Ed.)
  42678. 1.6
  42679. Å   Easy loading of modules: To enable you to load the emulator and fast
  42680. BASIC easily, you can create some library programs on your Welcome disc
  42681. (or better still, a copy of your Welcome disc!). This is what you do for
  42682. fast BASIC:
  42683. 1.6
  42684. *BUILD LIBRARY.FAST
  42685. 1.6
  42686. *FX225,1|M
  42687. 1.6
  42688. *KEY1 QUIT||M*MODULES.RAMBASIC
  42689. 1.6
  42690. ||M*KEY1||MCLS||MHELP||M
  42691. 1.6
  42692. *FX138,0,129
  42693. 1.6
  42694. <escape>
  42695. 1.6
  42696. and then change it into a BASIC program with
  42697. 1.6
  42698.  *SETTYPE LIB*.FAST &FFB<return>.
  42699. 1.6
  42700. Note that there are double pad characters before each ÉMæ in order that
  42701. when the program line is run, each double pad character is interpreted
  42702. as a single pad character for the actual key definition.
  42703. 1.6
  42704. The bits after calling the module are optional. The first is to clear
  42705. key1 again in case you press it accidentally. The second is to clear the
  42706. screen and the third is to give a help message to show that you are
  42707. actually in RAM_BASIC. (See below).
  42708. 1.6
  42709. Once this is set up, to get into fast BASIC all you do is type
  42710. *FAST<return>.
  42711. 1.6
  42712. For the 6502 emulator, use the name LIB*.6502 and donæt put the HELP
  42713. command in because that does not work on BASIC IV.
  42714. 1.6
  42715. Å   Tidying up after ArcWriter! You can do a similar thing to the above
  42716. hint in order to tidy up after using ArcWriter.
  42717. 1.6
  42718. *BUILD LIBRARY.RESET
  42719. 1.6
  42720. *FX225,1|M
  42721. 1.6
  42722. *KEY1 QUIT||M*CONFIGURE FONTSIZE
  42723. 1.6
  42724. 2||M*RMREINIT FONTMANAGER||M
  42725. 1.6
  42726. *RMTIDY||M*BASIC||M
  42727. 1.6
  42728. *KEY1||MHELP||M
  42729. 1.6
  42730. *FX138,0,129
  42731. 1.6
  42732. <escape>
  42733. 1.6
  42734. Typing *RESET will do the tidy-up for you.
  42735. 1.6
  42736. Å   Identifying RAMBASIC. To get RAM_ BASIC to tell you that it actually
  42737. IS the RAM version and not the ROM version, you can change a few bytes
  42738. so that it prints out ÉRAM BBC BASICæ instead of ÉARM BBC BASICæ on the
  42739. startup and HELP messages. To do this, proceed as follows:
  42740. 1.6
  42741. *LOAD MO*.RAM* 20000
  42742. 1.6
  42743. ?&202B0=ASCöRò
  42744. 1.6
  42745. ?&202B1=ASCöAò
  42746. 1.6
  42747. ?&23F78=ASCöRò
  42748. 1.6
  42749. ?&23F79=ASCöAò
  42750. 1.6
  42751. *SAVE MO*.RAM_BASIC 20000 +E434
  42752. 1.6
  42753. *SETTYPE MO*.RA* &FFA
  42754. 1.6
  42755. Å   Reversing the CAPS lock. If you hold down the shift key when you put
  42756. the CAPS lock light on, you will find that the shift key now has the
  42757. opposite effect, i.e. letters typed without pressing shift come up as
  42758. uppercase letters, but when you press the shift key you get lower case
  42759. letters. This can be useful if you are programming and mostly work in
  42760. upper case but with occasional use of lower case.
  42761. 1.6
  42762. Å   Displaying screens in different modes. If you have a screen that has
  42763. been SCREENSAVEæd, you can display it in another mode. (e.g. Artisan
  42764. screens in 256 colour modes!) Assuming you have configured spritesize to
  42765. at least 11, proceed as follows:
  42766. 1.6
  42767. MODE 13
  42768. 1.6
  42769. *SLOAD filename  \ NOT
  42770. 1.6
  42771.  *SCREENLOAD
  42772. 1.6
  42773. *SCHOOSE screendump
  42774. 1.6
  42775. PLOT &ED,0,0
  42776. 1.6
  42777. You will note that the palette has changed and that it is a lower
  42778. resolution, however, it will still be quite decent and you will have all
  42779. those lovely colours to play around with!
  42780. 1.6
  42781. If you choose mode 15, you will get the same picture displayed in 256
  42782. colours but squeezed into only half the screen width.
  42783. 1.6
  42784. If you want to change the colours you will have to load it into the
  42785. sprite editor (SEDIT) and change the colours manually.
  42786. 1.6
  42787. Å   Using the View Series. You will find that after coming from the
  42788. desktop, TAB does not work. The solution is to type *FX219,9.
  42789. 1.6
  42790. ViewProfessional works fine if you use the second processor version Ö
  42791. the VP file on the 5.25ö disk Ö however it should be *LOADæed at 4000
  42792. (not 8000) and called with *GO 4000. (See page 5, Archive 1.1)
  42793. 1.6
  42794. Å   Diary/Notepad problems. Beware: If you are printing something from
  42795. notepad or diary, check that an active printer is on-line before
  42796. starting to print otherwise the system may hang up and the only way out
  42797. is to press <ctrl-break> Ö frustrating if you havenæt saved the text
  42798. first!
  42799. 1.6
  42800. Å   Slower listings. I know this is obvious to ex-BBC users, but Iæve
  42801. not seen mentioned anywhere the fact that holding <ctrl> and <shift>
  42802. keys down together will stop the screen scrolling. Archimedes lists
  42803. programs so quickly that even if you use <ctrl-N> to get a paged
  42804. listing, you may well get two pages instead of one if you hesitate on
  42805. pressing the shift key, so using <ctrl> and <shift> allows you to
  42806. control the listing yourself.
  42807. 1.6
  42808. Å   File transfer between wordprocessors. If you have Wordwise Plus or
  42809. View files and you want to import them into GraphicWriter, use *SETTYPE
  42810. filename &FFF to ensure that GraphicWriter sees them as text files.
  42811. (Actually it should already see Wordwise Plus files as text because of
  42812. the save address that Wordwise Plus uses Ö check by doing *INFO *.) Then
  42813. you can simply load the files into GraphicWriter using the file menu. To
  42814. transfer the files back to View or Wordwise, you need to save them as
  42815. ASCII files. This is done by opening the file menu then clicking on the
  42816. word öTEXTò with the ADJUST button, typing in a filename and pressing
  42817. <return>.
  42818. 1.6
  42819. (I tried to do the same sort of thing with ArcWriter but it kept
  42820. crashing each time I tried to load a file, so I gave up!)
  42821. 1.6
  42822. Å   Smart ON ERROR routine. If your ON ERROR routine includes the
  42823. following, you get the usual error message and then, if you press any
  42824. key other than <escape> it will drop into the ARM BASIC editor at the
  42825. offending line. So if you do not want to go into the editor, press
  42826. <escape> instead.
  42827. 1.6
  42828. ON ERROR OFF
  42829. 1.6
  42830. PRINT REPORT$+ö at line ò;ERL
  42831. 1.6
  42832. dummy%=GET
  42833. 1.6
  42834. SYS 5,(öKEY0 EDIT ò+STR$(ERL)
  42835. 1.6
  42836. +ö|Mò)
  42837. 1.6
  42838. SYS 6,138,0,128
  42839. 1.6
  42840. END
  42841. 1.6
  42842. If you prefer to move into EDIT a few lines above the offending line,
  42843. use STR$(ERLÖ50) or whatever.
  42844. 1.6
  42845. Å   Dual purpose boot files. It is quite possible to have a boot file
  42846. that will work equally well from within the desktop or as a conventional
  42847. boot file operated with <shift-break>. What you do is *BUILD the file as
  42848. usual but then *settype <filename> &FFB which gives it a link to BASIC.
  42849. If you then double-click on it in the desktop, it adds line numbers to
  42850. it and runs it as a BASIC program. However, it will only work with
  42851. <shift-break> if the machine is configured to start up in BASIC, not in
  42852. the desktop (i.e. *CON. Language 4, not 3).
  42853. 1.6
  42854. Å   With the PC emulator you can get more space than Mark Sealey
  42855. reckoned in his review last month by *unplugging various of the modules.
  42856. On reader reckons to get almost 590,000 bytes free (= 576k).
  42857. 1.6
  42858. Å   Disabling Modules. Archive no.5 explains how *Unplug can be used to
  42859. disable Modules, but this method needs a <ctrl-break>. An alternative is
  42860. to use *RMKill and *RMTidy from the operating system *-prompt (not from
  42861. BASIC), e.g.
  42862. 1.6
  42863. *RMKill FontManager
  42864. 1.6
  42865. *RMKill StringLib
  42866. 1.6
  42867. *RMKill Percussion
  42868. 1.6
  42869. *RMKill ARMBasicEditor
  42870. 1.6
  42871. *RMKill WindowManager
  42872. 1.6
  42873. *RMTidy
  42874. 1.6
  42875. This typically releases 96 Kbytes of memory on an A310 machine and
  42876. doesnæt need a <ctrl-break>. It is particularly useful if youære short
  42877. of space in BASIC, Pascal or FORTRAN, etc and arenæt using fancy sound,
  42878. the WIMP environment or the BASIC editor. Each module can be reinstated
  42879. by using *RMReinit <Module name>, or all can be restarted by <ctrl-
  42880. break>.
  42881. 1.6
  42882. Å   GW BASIC on the PC Emulator. There is an undocumented way to get
  42883. back into the MS-DOS operating system after using GW BASIC. Try pressing
  42884. function key f-11.
  42885. 1.6
  42886. Å   PC Emulator. Version 1.09 (which existing users can get by sending
  42887. back their old disc plus ú15 to Acorn) runs, amongst other things,
  42888. Ability Plus, dBase 3 Plus, Kermit, Word Perfect, LTS NewsMaster (see
  42889. separate review). (Can anyone add to this list?)
  42890. 1.6
  42891. Å   RS423╔ yet again! If you have the 1.2 operating system and if you
  42892. have the version of the serial chip that is made by GTE (itæs the 28 pin
  42893. IC at the back left of the pcb) and if you change over from using the
  42894. CTS line at the Archimedes end to using the DSR line (i.e. link 1, 4 and
  42895. 8 and join pin 6 to the RTS line from the other machine) then Acorn have
  42896. a fix which you load in as a module. Send a blank disc to Customer
  42897. Services to get a copy. The version they sent me didnæt work the first
  42898. time I tried it with some data transfer software so I pressed <escape>
  42899. and tried again and it worked perfectly at 19,200 baud. Then I tried
  42900. again and it wouldnæt send anything, pressed <escape> and away it went!
  42901. Still, when you do get it going it sends and receives at 19,200 baud in
  42902. both directions without any data corruption. I left it running for a
  42903. couple of hours and there was no corruption at all.
  42904. 1.6
  42905. Å   After the desktop╔ simpler than the list of FX commands that we gave
  42906. last month is to call SYSöWimp_CloseDownò (which is what Acorn should
  42907. have put in their desktop program in the first place!!!) but if you
  42908. donæt fancy trying to type that every time, getting upper and lower case
  42909. exactly correct, you can create a one line BASIC program with 10
  42910. SYSöWimp_Close Downò and save it on your disk as $.library. undesk and
  42911. then just type *undesk (or whatever abbreviation you can get away with)
  42912. and all will be restored to normal.
  42913. 1.6
  42914. Å   Using the Seikosha 250X printer is a bit of a problem. When you plug
  42915. it into the Archimedes, all power is lost. This seems to be because of
  42916. the +5.0 volts on lines 18 and 36 of the printer connector Ö these are
  42917. earthed at the Archimedes end and so have to be disconnected somehow.
  42918. One reader, Adrian Moreton, has succeeded but it is too complicated to
  42919. explain here. If you want the information, send us an s.a.e. and weæll
  42920. send you a photocopy of his letter and the excellent diagrams he has
  42921. drawn.
  42922. 1.6
  42923. Å   ADFS wildcards. Had you gathered that ADFS will take * or #
  42924. wildcards anywhere in a filename? On the BBC, you could only put them at
  42925. the end of the filename. So, for example, if youæve got PROGRAM1,
  42926. PROGRAM2, PROGRAM3 etc you only need to say something like LOAD öPR*2ò
  42927. or even LOAD ö*2ò if none of the other files have numeric endings. That
  42928. makes life much easier, doesnæt it?! (Thanks to Benjamin Finn for
  42929. pointing that out. The next hint is his, too.)
  42930. 1.6
  42931. Å   Errors in library procedures. If an error occurs in a PROC or FN
  42932. that is installed using LIBRARY or INSTALL, the correct error message is
  42933. given but the line number quoted is the last number in the main program.
  42934. Although we cannot get a line number pointer to the error, we can at
  42935. least find out from which procedure in the main program the library
  42936. routine was called when the error occurred.
  42937. 1.6
  42938. At the beginning of each definition of a PROC or FN you should put
  42939. something like:
  42940. 1.6
  42941.    DEF PROCdosomething
  42942. 1.6
  42943.    LOCAL ERROR
  42944. 1.6
  42945.    ON ERROR LOCAL PRINT REPORT$
  42946. 1.6
  42947.  ö in PROCdosomethingò:END
  42948. 1.6
  42949.       .
  42950. 1.6
  42951.       .
  42952. 1.6
  42953.    ENDPROC
  42954. 1.6
  42955. Å   Help with Econet is offered by Michael Ryan of XOB, Balkeerie,
  42956. Eassie, By Forfar, Angus, DD8 1SR. Michael says, öHere are some comments
  42957. about Archimedes on Econet in response to comments in Archive 1.3, page
  42958. 8.
  42959. 1.6
  42960. öRDFREE is part of the Econet filing system module and hence not a disc-
  42961. based utility as with the BBC version. Issued with a user identity as
  42962. parameter, it gives the total disc free space and that useræs allocated
  42963. portion of it. Issued with no parameter, it returns the useræs own free
  42964. space and the total free space.
  42965. 1.6
  42966. öAcorn are supplying a number of other utilities including SETFREE,
  42967. SETSTAT, USERS, PROT and UNPROT, though they have not yet made it clear
  42968. how they are to be distributed, so donæt hold your breath.
  42969. 1.6
  42970. öThough it is very unlikely that they will supply the more sophisticated
  42971. utilities (VIEW, REMOTE, NOTIFY etc) all is not lost. XOB already have a
  42972. wide range of utilities for the BBC/Master series and have already
  42973. implemented several of them on the Archimedes. More details from us on
  42974. 0307Ö84364.ò
  42975.  
  42976. Å   Most of the keys on the numeric pad have secondary functions if used
  42977. with the Num Lock off. In BASIC, 1 gives copy, 2 and 3 are both cursor
  42978. down, 4 is cursor left, 5 doesnæt seem to do anything, 6 is cursor
  42979. right, 7 is Écursor homeæ and 8 and 9 and cursor up. In View, the single
  42980. cursor movements are 2, 4, 6 and 8 while 3 and 9 are page down and page
  42981. up respectively.
  42982.  
  42983.  
  42984.  
  42985.  
  42986. Å   Text files for BASIC. I always used to write my BASIC programs in
  42987. Wordwise and put an AUTO command as the top line then go into BASIC and
  42988. NEW and then *EXEC <filename>. But I╒ve just discovered (what I╒m sure
  42989. you all knew already) that BASIC can do it for me. You don╒t have to put
  42990. AUTO at the top you just say  *BASIC -LOAD <filename> and it will load
  42991. the text version of the program and put line numbers onto it. However,
  42992. as with the *EXEC technique, you cannot use long multi-statement lines
  42993. or you will get the öLine too longò error.
  42994. 1.05
  42995. (One reader, who was using Arthur 0.2, found that text files longer than
  42996. 32k got corrupted, but I tried it on my system with BASIC 1.02 and
  42997. Arthur 1.2 and it seemed OK.)
  42998. 1.05
  42999. Å   Fast screen save. This is obviously something which a number of you
  43000. have been thinking about. I got a lot of response to my pleas for help.
  43001. Several of you gave ways of *SAVEing the screen information from the
  43002. appropriate bit of RAM and re-loading it there, though this obviously
  43003. will not bring with it the palette information or the correct mode. For
  43004. example:
  43005. 1.05
  43006. DEF PROCscreensave(filename$)
  43007. 1.05
  43008. LOCAL K%
  43009. 1.05
  43010. CASE MODE OF
  43011. 1.05
  43012.   WHEN 0,1,4,5,6 : K%=20
  43013. 1.05
  43014.   WHEN 2,3,8,9,11,18 : K%=40
  43015. 1.05
  43016.   WHEN 7,10,12,13,14,19 : K%=80
  43017. 1.05
  43018.   WHEN 16,17 : K%=132
  43019. 1.05
  43020.   WHEN 15,20 : K%=160
  43021. 1.05
  43022. ENDCASE
  43023. 1.05
  43024. !&80=149:!&84=-1
  43025. 1.05
  43026. SYS 49,&80,&88 : REM OS_ReadVduVariables
  43027. 1.05
  43028. OSCLIöSAVE ò+filename$+ö ò+STR$
  43029. 1.05
  43030. ~(!&88)+ö +ò+STR$~(K%*1024)
  43031. 1.05
  43032. ENDPROC
  43033. 1.05
  43034. This takes only a second or two to save the screen. It can be reloaded
  43035. by typing *LOAD filename. The program saves the whole screen, not just
  43036. the graphics window. You must not have scrolled the screen prior to
  43037. saving or re-loading, but a CLS before re-loading will cancel the
  43038. scrolling. Also, you must be in the right mode for the screen you are
  43039. about to load and you need to have the same screen colour definitions
  43040. set up.
  43041. 1.05
  43042. What we have been promised though is a module, which we hope to publish
  43043. next month, which will give you legal *commands (or SWIs) for loading
  43044. and saving screen information including palette and mode and you will
  43045. find that it is several times faster than the existing SCREENSAVE
  43046. routines.
  43047. 1.05
  43048. Å   Extra help on BASIC╔ (OS1.2) If you type *BASIC -help<return> you
  43049. get a bit more help information about BASIC. (But does anyone know what
  43050. the last two bits refer to? i.e. what is an öin-coreò program? Does it
  43051. mean you can have more than one program in memory?)
  43052. 1.05
  43053. Å   ADFS: If you name all your discs with *NAMEDISC, the Archimedes will
  43054. remember the previously mounted discs. So, for example, if you put in a
  43055. disc called TESTING and you *MOUNT it and then put in a disc called
  43056. BASICPROGS and *MOUNT that, you can then see the directory of TESTING
  43057. without putting the disc back in again. All you do is type *MOUNT
  43058. TESTING and you can *CAT it. If you then want to look at the disc that
  43059. is in the drive, you will of course have to *MOUNT again. The only
  43060. problem occurs when you have backup discs because they will have the
  43061. same name ÿ this gives öAmbiguous disc nameò.
  43062. 1.05
  43063. Å   Sprite Editor. öTo create a new sprite╔ò It took me ages to find out
  43064. how to create a new sprite. The manual tells you to click on the
  43065. öCreateò box and öyou are then prompted for a name and a modeò. I was
  43066. expecting a prompt something like: öPlease enter name:ò. I saw the words
  43067. öCreate spriteò appear at the bottom of the screen and assumed it wanted
  43068. some sort of confirmation that that was what I wanted to do, but
  43069. whatever I did, the words disappeared again! In fact that is the actual
  43070. prompt that the manual was referring to! All you do is type in the new
  43071. name and press <return>. You would have thought they could have put in a
  43072. more obvious prompt than that ÿ or maybe just switched on the cursor to
  43073. indicate that it was time to type something rather than click on the
  43074. mouse buttons, but perhaps I have been spoiled by using the Apple Mac
  43075. where prompts are rather more obvious and logical! Huhh!
  43076. 1.05
  43077. Å   Reading the catalogue. An easier way to read the contents of a
  43078. catalogue, rather than reading it off the screen (see Gus Gem╒s article
  43079. last month) is to use SYS öOS_GBPBò as follows╔
  43080. 1.05
  43081. DIM C% 999
  43082. 1.05
  43083. !&80=&2A00
  43084. 1.05
  43085. SYS öOS_GBPBò,9,&80,C%,999,0,
  43086. 1.05
  43087. 999 TO ,,,ENTRIES
  43088. 1.05
  43089. This stores the filenames and sub-directories of the current directory
  43090. at the address C%, in alphabetical order and each terminated by a zero
  43091. byte. The number of entries is stored in the BASIC variable ENTRIES.
  43092. 1.05
  43093. Å   Neater than OSCLI╔ SYS 6 (equivalent of FX calls) is much neater
  43094. than using OSCLIs: e.g. Matthew Treagus╒ screen bank switching would
  43095. look neater if, instead of using OSCLI (öFX112,ò+STR$N%) he had used SYS
  43096. 6,112,N%. If you don╒t like the anonymity of SYS 6, you can use SYS
  43097. öOS_Byteò,112,N%. (See Gerald╒s article on page 12.)
  43098. 1.05
  43099. Å   Beebug╒s Masterfile can be made to work on the Archimedes without
  43100. using the emulator ÿ it just needs a very few modifications ÿ contact
  43101. Dr╩╩Peter Catermole at Winchester College, Kingsgate Road, Winchester,
  43102. SO23 9PG.
  43103. 1.05
  43104. Å   BBC ROMs ÿ Continuing the saga of poking various bytes to get BBC
  43105. ROMs to work under the emulator, View B3.0 should apparently have A8A1,
  43106. 2 and 3 poked to &EA and Viewspell 1.0, &820F, 8210 and 8211 likewise.
  43107. 1.05
  43108. Å   When setting the clock, the setting box sometimes covers the face of
  43109. the clock, so point at the bottom right hand corner of the clock box and
  43110. then press the middle mouse button.
  43111. 1.05
  43112. Å   Plugging modules in and out. It╒s all very well to have lots of
  43113. modules in the 1.2 ROM but, at power up, several of these modules are
  43114. installed into ram which cuts down your available memory. Exactly which
  43115. ones are installed is set by various bytes in the CMOS ram. To find out
  43116. what all the modules are and whether they are actually active, type
  43117. *ROMModules. (or just *ROM. for short.) You can öunplugò the modules by
  43118. using *UNPLUG <modulename> and it stays unplugged until you öinsertò it
  43119. again with *RMREINIT <modulename>. It seems that the extra space does
  43120. not become available until you press <ctrl-break>. If you type *UNPLUG
  43121. without a module name it tells you which modules are currently
  43122. unplugged.
  43123. 1.05
  43124. Å   How╒s this for a screen dump? (sent in by Ken Yeardley) It is for
  43125. mode 0, it works on the NEC PC8023, it can be put on a function key and
  43126. it only takes 118 seconds.
  43127. 1.05
  43128. VDU2,1,27,84,1,&31,1,&36: FOR
  43129. 1.05
  43130. A%=&1FDCFB0 TO &1FDCFFF:VDU2,
  43131. 1.05
  43132. 1,27,83,1,&30,1,&35,1,&31,1,&32:
  43133. 1.05
  43134. FOR B%=A% TO A%-20400 STEP-&50:
  43135. 1.05
  43136. VDU1,?B%,1,?B%: NEXT: VDU1,10:
  43137. 1.05
  43138. NEXT: VDU3
  43139. 1.05
  43140. The reason it is so short is that the NEC printer has the MSB and LSB of
  43141. the byte that defines which pins hit the paper, the opposite way round
  43142. from Epson printers. (See page 9 for a sample screendump.
  43143. 1.05
  43144. Å   Beware the microwave! One reader was having problems with data
  43145. corruption on the RS423 but it turned out to be only when his wife was
  43146. using the microwave oven four yards away, the other side of a brick
  43147. wall!
  43148. 1.05
  43149. Å   Here╒s a little routine sent in by Mike Hobart which uses the
  43150. debugger module for disassembly and memory dumps. It doesn╒t quite rival
  43151. Toolkit, but it╒s a bit cheaper!
  43152. 1.05
  43153. INPUTöDisassembly or Memory dump? (D/M)ò,R$
  43154. 1.05
  43155. CASE R$ OF
  43156. 1.05
  43157.   WHEN ödò,öDò : N%=FNi:REPEAT PROCx(öIò,N%,ö +10ò):UNTIL FALSE
  43158. 1.05
  43159.   WHEN ömò,öMò : N%=FNi:REPEAT PROCx(öò,N%,ö +FFò):UNTIL FALSE
  43160. 1.05
  43161. ENDCASE
  43162. 1.05
  43163. END
  43164. 1.05
  43165. DEFPROCx(S$,M%,L$)
  43166. 1.05
  43167. WHILE INKEY(-99)
  43168. 1.05
  43169.   OS_CLI(öMEMORYò+S$+ö ò+
  43170. 1.05
  43171. STR$~(N%)+L$)
  43172. 1.05
  43173.  N%=N%+100
  43174. 1.05
  43175. ENDWHILE
  43176. 1.05
  43177. ENDPROC
  43178. 1.05
  43179. DEFFNi
  43180. 1.05
  43181. INPUTöFrom(Address &nnnnnn)òÉN$
  43182. 1.05
  43183. PRINTöPress <space> to scrollò
  43184. 1.05
  43185. IF ASCN$<>ASCö&òTHEN N$=ö&ò+N$
  43186. 1.05
  43187. =EVAL N$
  43188. 1.05
  43189. Å   Desktop on 1.2. (All the remaining H & T are based on material sent
  43190. in by Bruce Roberts.) As an alternative to double clicking on <select>
  43191. to open a file or run an application, try a single click on the adjust
  43192. button ÿ it has the same effect.
  43193. 1.05
  43194. The quick way to open a diary (or notepad), rather than opening the
  43195. diary window first and then pressing <menu>, is to double click on the
  43196. diary icon on the disk directory ÿ the window opens automatically.
  43197. 1.05
  43198. You can now save diaries and notepads with whatever name you like and
  43199. you can also click, or move with the cursor keys, and put text anywhere
  43200. in the window.
  43201. 1.05
  43202. The following keys can now be used on diary and notepad:
  43203. 1.05
  43204. <insert>   Insert single character
  43205. 1.05
  43206. <copy>   Delete character to the right of
  43207. 1.05
  43208.    the cursor
  43209. 1.05
  43210. <ctrl-insert>   Insert a line above the cursor
  43211. 1.05
  43212. <ctrl-copy>   Delete a line
  43213. 1.05
  43214. <shift-left/right>   Move 4 characters sideways
  43215. 1.05
  43216. <ctrl-left/right>   Move to the end of the line
  43217. 1.05
  43218. Notepads can be created from within View by saving a file (up to 100
  43219. lines, 78 characters wide) and then doing a *SETTYPE <filename> &FEE.
  43220. Existing notepads can be edited with View provided you use READ
  43221. <filename> instead of LOADing it and WRITE <filename> instead of SAVEing
  43222. it.
  43223. 1.05
  43224. Å   After using the desktop, the function keys do not produce the normal
  43225. programmable strings or ASCII values. It seems that this is because
  43226. Acorn have not stuck to their own rules (see Programmers╒ Reference
  43227. Manual, page 488) because they do not call SWI Wimp_ CloseDown. The
  43228. öfixò published elsewhere of typing *FX225,1 is fine if you only want to
  43229. restore the strings to f0 - f9. To get f10 - f12 back, you need *FX221,1
  43230. but the simplest thing seems to be to make sure that everything is back
  43231. to its default setting by using a program, perhaps called QUIT, which
  43232. you can run from the desktop instead of clicking on the exit icon. To
  43233. set the default of all the combinations of <ctrl> and <shift> with all
  43234. the function keys, you need:
  43235. 1.05
  43236.    *FX225,1
  43237. 1.05
  43238.    *FX226,&80
  43239. 1.05
  43240.    *FX227,&90
  43241. 1.05
  43242.    *FX228,0
  43243. 1.05
  43244.    *FX221,1
  43245. 1.05
  43246.    *FX222,&D0
  43247. 1.05
  43248.    *FX223,&E0
  43249. 1.05
  43250.    *FX224,&F0
  43251. 1.05
  43252.    MODE 0
  43253. 1.05
  43254.    *BASIC
  43255. 1.05
  43256. If you don╒t put in a MODE statement, you╒ll find yourself typing
  43257. invisibly! The *BASIC means you come out into BASIC but with no program
  43258. in memory.
  43259. 1.05
  43260. As an alternative, you could miss out the call to BASIC and put:
  43261. 1.05
  43262.    W%=GET
  43263. 1.05
  43264.    *MOUNT
  43265. 1.05
  43266.    *!BOOT
  43267. 1.05
  43268. The idea would be that you would click on this program, change to the
  43269. disc you want to boot up, and press a key. You may want to include a
  43270. prompt to the user to öreplace disc and press space barò or somesuch.
  43271. The use of *!BOOT means that it doesn╒t matter if the boot file should
  43272. be *EXECed or *RUN ÿ either will be done by the *!BOOT according to the
  43273. file type.
  43274. 1.05
  43275. Å   Avoiding the desktop. If you donæt want to go into the desktop every
  43276. time you switch on or press <ctrl-break>, do a *CONFIGURE LANGUAGE 4 and
  43277. press <ctrl-break>. When you want to go into the desktop, type *DESKTOP
  43278. or *DES. for short. If you change your mind, *CON. LANG. 3 will bring
  43279. you into desktop at switch on or LANG. 0 will start you in the super
  43280. visor mode.
  43281. 1.05
  43282. Å   View boot file. Here is a more sophisticated boot file than the one
  43283. we gave originally:
  43284. 1.05
  43285. *ECHO<22><3>
  43286. 1.05
  43287. *| selects mode 3
  43288. 1.05
  43289. *GOS
  43290. 1.05
  43291. *65ARTHUR
  43292. 1.05
  43293. *GO F800
  43294. 1.05
  43295. *LOAD VIEW 8000
  43296. 1.05
  43297. *GO 8000
  43298. 1.05
  43299. *ECHO<19><0><16><48><48><240>
  43300. 1.05
  43301. *| sets background colour
  43302. 1.05
  43303. *ECHO<19><1><16><240><240><208>
  43304. 1.05
  43305. *| sets foreground colour
  43306. 1.05
  43307. *ECHO<19><2><24><240><128><0>
  43308. 1.05
  43309. *| sets border/line colour
  43310. 1.05
  43311. SET FI
  43312. 1.05
  43313. *| sets Format and Insert modes
  43314. 1.05
  43315. NEW
  43316. 1.05
  43317. Å   Avoiding *MOUNT. To avoid typing *MOUNT each time you put a new disc
  43318. in the drive, you can set an alias with, for example, *SET ALIAS$? MOUNT
  43319. | M CAT so that when you type *?<return> it does the mount and the
  43320. catalogue all in one.
  43321. 1.05
  43322. Å   Centronics GLP screendump. The *HardCopyMX nearly works because the
  43323. printer  is Epson-compatible-ish! All you need to do is issue, from
  43324. BASIC, the following codes:
  43325. 1.05
  43326. VDU2,1,27,1,65,1,8,1,27,1,50,3
  43327.  
  43328.  
  43329.  
  43330. 1.4
  43331. Å   Having asked last time about function keys 14 and 15, it seems that
  43332. they are only available when the cursor editing is switched off by doing
  43333. a *FX4,2 after which, cursor right, down and up give definitions 13, 14
  43334. and 15. (Remember that 13 is normally available on the insert key
  43335. anyway.)
  43336. 1.4
  43337. Å   Word-Perfect does not work under the PC-Emulator at present. This is
  43338. due to a bug in the emulator which is being fixed Ö a new version will
  43339. be available öshortlyò.
  43340. 1.4
  43341. Å   If you want to read the mouse when using the 6502-emulator, this can
  43342. be done in BASIC IV by using ADVAL 7 and 8 to return the X and Y co-
  43343. ordinates respectively. 6502 machine code programs can be modified to
  43344. use OS_Byte 128 with X=7 to give the X value and X=8 to give the Y
  43345. value. The co-ordinates are returned in the X and Y registers, X being
  43346. the low byte and y the high byte.
  43347. 1.4
  43348. If you want to read the mouse buttons from BASIC IV, use INKEY(-n) where
  43349. n=10, 11 and 12 for select, menu and adjust respectively and in machine
  43350. code use OS_Byte 129 with X containing the -n number (&F6, &F5 and &F4)
  43351. and Y containing &FF.
  43352. 1.4
  43353. Å   Users of the Acorn colour monitors may not have realised that there
  43354. is a switch inside the control panel at the front of the monitor which
  43355. switches off all but the green gun. Depressing this switch makes the
  43356. display slightly easier to read, especially if you are trying to use a
  43357. 132 column mode.
  43358. 1.4
  43359. Å   Setting the ö*TIMEò format Ö The output format used by *TIME can be
  43360. changed via a É*SET Sys$DateFormatæ command. The following is a list of
  43361. the valid parameters and the result they will return:
  43362. 1.4
  43363. %am   Display Éamæ or Épmæ depending on the time.
  43364. 1.4
  43365. %pm   Display Éamæ or Épmæ depending on the time.
  43366. 1.4
  43367. %ce   Current century
  43368. 1.4
  43369. %cs   (Centiseconds) Hundredths of a second
  43370. 1.4
  43371. %dn   Day number (001 = 1st January)
  43372. 1.4
  43373. %dy   Day of the month
  43374. 1.4
  43375. %mi   Minutes
  43376. 1.4
  43377. %mn   Month number
  43378. 1.4
  43379. %mo   Current month (e.g. ÉJanuaryæ)
  43380. 1.4
  43381. %m3   Current month abbreviated to 3 characters (e.g. ÉJanæ)
  43382. 1.4
  43383. %se   Seconds
  43384. 1.4
  43385. %st   Day of the month trailer (i.e. Éstæ, Éndæ, Érdæ or Éthæ)
  43386. 1.4
  43387. %we   Weekday (e.g. ÉWednesdayæ)
  43388. 1.4
  43389. %w3   Weekday abbreviated to 3 characters (e.g. ÉWedæ)
  43390. 1.4
  43391. %wk   Week number (since start of year)
  43392. 1.4
  43393. %wn   Weekday number (1 = Sunday, 7 = Saturday)
  43394. 1.4
  43395. %yr   Current year (e.g. 87)
  43396. 1.4
  43397. %12   Hours on 12 hour clock
  43398. 1.4
  43399. %24   Hours on 24 hour clock
  43400. 1.4
  43401. Note that changing the format does not affect the TIME$ format as used
  43402. in BASIC V.
  43403. 1.4
  43404. The default setting, which is: %w3,%dy %m3 %ce%yr.%24:%mi:%se, can be
  43405. seen by typing *SHOW S*.
  43406. 1.4
  43407. If the date or the year is changed, the day of the week is automatically
  43408. recalculated, so no errors occur. (See competition results on page 46.)
  43409. 1.4
  43410. Other characters may also be inserted into the definition of the *TIME
  43411. format. For example,
  43412. 1.4
  43413. *SET Sys$DateFormat %we, %dy%st %mo, %ce%yr. Time: %24:%mi [%se seconds]
  43414. 1.4
  43415. will produce output in the form: öMonday, 07th December, 1987. Time:
  43416. 12:07 [45 seconds]ò.
  43417. 1.4
  43418. If you want to strip off the leading zero on the %dy output, use %zdy%st
  43419. which will produce ö7th Decemberò. If you want, for some reason to have
  43420. the character É%æ as part of the format, use ö%%ò.
  43421. 1.4
  43422. If you want to split the string into several zero-terminated strings,
  43423. you can use É%0æ which will insert a zero byte into the string.
  43424. 1.4
  43425. New time formats in BASIC Ö If all you want to do is print out the value
  43426. of time within a BASIC program you can simply use the star command *TIME
  43427. as a line within the program. If however you want to pick up the time as
  43428. an actual string, you need to use the following function:
  43429. 1.4
  43430. DEF FNnewtime
  43431. 1.4
  43432. LOCAL Workarea, Time$
  43433. 1.4
  43434. DIM Workarea 256
  43435. 1.4
  43436. ?Workarea = 3
  43437. 1.4
  43438. SYS öOS_Wordò,14,Workarea,256
  43439. 1.4
  43440. SYS öOS_ConvertStandardDateAnd Timeò,Workarea,Workarea,256 TO Time$
  43441. 1.4
  43442. =Time$
  43443. 1.4
  43444. Help!!! The format which the system uses to record time and date is a 40
  43445. bit number (as used to store the datestamp of a file) but we have not as
  43446. yet found a system routine to convert any date into this format. Has
  43447. anyone found such a routine or written anything of the sort?
  43448. 1.4
  43449. Å   Break/escape effects Ö To control the effects of <escape> and
  43450. <break> with various combinations of <ctrl> and <shift>, you can use
  43451. *FX247,n where n is a binary number whose eight bits control the various
  43452. effects as follows:
  43453. 1.4
  43454. Bits 7 and 6 control action of <shift-ctrl-break>
  43455. 1.4
  43456.    7   6
  43457. 1.4
  43458.    0   0   Ö   öNormal actionò (= hard reset + boot drive 0)
  43459. 1.4
  43460.    0   1   Ö   Acts like <escape>
  43461. 1.4
  43462.    1   0   Ö   Disables <shift-ctrl-break>
  43463. 1.4
  43464. Bits 5 and 4 control action of <ctrl-break>
  43465. 1.4
  43466.    5   4
  43467. 1.4
  43468.    0   0   Ö   Hard reset
  43469. 1.4
  43470.    0   1   Ö   Acts like <escape>
  43471. 1.4
  43472.    1   0   Ö   Disables <ctrl-break>
  43473. 1.4
  43474. Bits 3 and 2 control action of <shift-break>
  43475. 1.4
  43476.    0   0   Ö   Boots disc in drive 0
  43477. 1.4
  43478.    0   1   Ö   Acts like <escape>
  43479. 1.4
  43480.    1   0   Ö   Disables <shift-break>
  43481. 1.4
  43482. Bits 1 and 0 control action of <break>
  43483. 1.4
  43484.    0   0   Ö   Soft reset
  43485. 1.4
  43486.    0   1   Ö   Acts like <escape>
  43487. 1.4
  43488.    1   0   Ö   Disables <break>
  43489. 1.4
  43490. The default setting (on 0.20 OS) seems to be *FX247,1 so that all works
  43491. öas normalò except that the break key has been turned into another
  43492. escape key. Typing *FX247,0 or just *FX247 turns the break key into the
  43493. old öproperò break key that BBC owners will remember, i.e. it does a
  43494. soft reset, as does the reset button on the back of the keyboard.
  43495. 1.4
  43496. Å   When you re-load a picture created by the ARM-Paint program, you
  43497. sometimes find that certain of the colours are flashing. To avoid this,
  43498. add a line to the PAINTING program:
  43499. 1.4
  43500. 18165 *FX9
  43501. 1.4
  43502. which should fix the problem. It actually flashes while the picture is
  43503. being loaded but then the flashing stops when this line is executed.
  43504. 1.4
  43505. Å   Long printer cables. Those of you who have been using very long
  43506. printer cables on the BBC micro will find that the Archimedesæ printer
  43507. output has not got sufficient drive to cope with more than about 2
  43508. metres of cable. The only way to get round this would be to use a
  43509. printer buffer that had a higher output drive capability.
  43510. 1.4
  43511. Å   For an interesting sound effect (on 0.30 Arthur), type in
  43512. ö*Configure Sounddefault 1 7 7ò followed by <ctrl-break>. This alters
  43513. the bell sound as produced by VDU7. To return to normal, set Soundde
  43514. fault 1 7 1.
  43515. 1.4
  43516. Å   For those who still havenæt got a word-processor (you did fill in
  43517. your registration form, didnæt you?!?) and are wanting to use the BASIC
  43518. editor as a wordprocessor, type *KEY0 L.O8||ML.||B||M||A||?||A||?||C and
  43519. you will find that the Éprintæ key lives up to its name.
  43520. 1.4
  43521. Å   ROMs that work under the emulator. The second processor version of
  43522. ISO Pascal (files Dpascal and Dcomp on the disc that comes with the two-
  43523. ROM set) works fine under the emulator though the compilation time is a
  43524. little slower than on the Beeb.
  43525. 1.4
  43526. Anyone who has the EDIT software from the BBC Master can transfer it to
  43527. the Archimedes and it seems to work OK. There appears to be a strange
  43528. message when the software is called and if the function key help screen
  43529. is selected, it looks a bit peculiar. If you only want to process small
  43530. amounts of text (about 30k) then use EDIT Ö itæs much cheaper than
  43531. buying TWIN for ú30.
  43532. 1.4
  43533. Å   The default values of the parameters in the HardcopyFX module are
  43534. 0,1,1,0,1 which gives, in order, landscape (i.e. sideways Ö to get
  43535. portrait, use 1), X and Y scale factors of 1 (no limit, it seems, but
  43536. you canæt use fractions), the margin which is measured in 1/72 nds of an
  43537. inch with a maximum of 576 and finally the threshold (the colour number
  43538. which determines whether a dot is printed or not, I presume) which can
  43539. take values up to 255. There is a clever öPrinter Time Outò error built
  43540. into the code in case the printer is not connected.
  43541. 1.4
  43542. Å   Switching off the desktop on Arthur 1.2.
  43543. 1.4
  43544. If, having changed from operating system 0.2 to 1.2, you donæt like
  43545. going into the desktop every time you switch on, you can *CONFIGURE
  43546. Language 4 and <ctrl-break> and you will be brought into BASIC instead.
  43547. The desktop can then be called up with *DESKTOP at any time. If you
  43548. decide to go back to initialising into the desktop, *CONFIGURE Language
  43549. 3 should do the trick.
  43550. 1.4
  43551. Do keep the hints & tips coming. They are one of the most useful parts
  43552. of the magazine Ö do you agree? We could do with more feedback about
  43553. what you like and what you donæt.
  43554. 1.4
  43555. The trouble is that you remember that you read something but cannot
  43556. remember in which issue or on which page so weære hoping to do a full
  43557. Archive index Ö anyone like to start it off for us? Would you like just
  43558. a paper index or one on database? Let me know what you think.
  43559. 1.4
  43560. Watch out too for a binder for your Archive magazine. More details next
  43561. month.
  43562.  
  43563. Å   RAM upgrades Ö If you want to up-grade the ram yourself, rather than
  43564. trying to remove the main p.c.b. to get at the sockets where the new
  43565. chips are to go, you can remove the front fascia. To do this, remove the
  43566. lid, then disconnect the wires that go to the speaker and the Épower onæ
  43567. LED by pulling the four-pin socket off the pins on the board. The tongue
  43568. at the front of this socket is a clip that holds the socket in place, so
  43569. ease this forwards and the socket should slip off easily.  Then you can
  43570. remove the fascia itself by undoing the five screws, three underneath
  43571. and one at each side. Care should be taken with the eject button on the
  43572. disc drive as this can break off fairly easily if roughly handled. (Some
  43573. say, will inevitably break off, but a bit of super-glue or the like is
  43574. all you need to stick it back in place.) You will then have to remove
  43575. the bridge that supports the disc drive(s). This can be done by removing
  43576. one screw underneath the computer (do this first) then two screws at the
  43577. side. Plug in the chips and reverse the process, again being careful of
  43578. the disc eject button.
  43579. 1.3
  43580. Å   Fitting a second drive is supposed to be a Édealer onlyæ upgrade,
  43581. but as long as you know a bit about electronics and vaguely what happens
  43582. inside computers, it is not too difficult to fit it yourself. However,
  43583. you should watch out that the front fascia plate is not too high. If it
  43584. is, it will bear on the disc and may cause an error when you try to
  43585. access the disc. I discovered this when I found that the drives worked
  43586. OK until I put the new two-hole fascia in place. My solution, when this
  43587. happened, was öbrute force and ignoranceò! The metal bracket on which
  43588. the drive is supported has a little bit of ögiveò in it Ö enough to
  43589. raise the front of the drive by the couple of millimetres necessary to
  43590. lift it away from the fascia.
  43591. 1.3
  43592. The other important thing to know is that to configure your second drive
  43593. as drive 1 you need to move the tiny black slider switch at the side of
  43594. the drive. It is a four position switch and usually comes in position 0,
  43595. so one click will move it to position 1.
  43596. 1.3
  43597. Å   Anti-Buzz Fix  Ö There are, apparently, two different buzzes. One is
  43598. what occurs after you have pressed <escape> or <break> and the other a
  43599. much more annoying buzz which not all computers seem to have. The first
  43600. buzz is a software problem which is fixed in the 1.2 Arthur, so I am
  43601. told, but the other requires a hardware fix which is supposed to be done
  43602. by dealers as a free modification, but if you are deft with a soldering
  43603. iron and are willing to risk your warranty, hereæs what to do╔
  43604. 1.3
  43605. The solution, according to Acornæs technical services department is╔
  43606. 1.3
  43607. öSolder a 100╡F, 10 volt electrolytic capacitor across pins 7 (positive)
  43608. and 4 (negative) of IC68. The capacitor should be kept as close to the
  43609. p.c.b. as possible and should be secured to the board with glue or hot
  43610. wax.ò
  43611. 1.3
  43612. The bad news is that IC 68 is underneath the bar that supports the disc
  43613. drive(s)! The easiest way to get at it is actually, (1) take off the
  43614. lid, (2) unplug the lead that  goes to the speaker and power-on LED
  43615. (beware, the socket on the ends of the cable has a lip that locks it
  43616. onto the pins on the board Ö ease the lip forward before trying to pull
  43617. the socket off), (3) take off the front fascia (one screw at each side
  43618. and three under the front edge) and (4) unscrew the drive-support bridge
  43619. (one screw underneath and two at the side).
  43620. 1.3
  43621. Å   Problems with monitors Ö Some folk are having problems with certain
  43622. monitors. If the problem is lack of contrast, use an oscilloscope to
  43623. check the voltage output levels from the Archimedes. If they are less
  43624. than 0.7 volts peak-to-peak you may need to change the values of the
  43625. output resistors. Acorn have changed resistors R20, R41 and R59 from 68
  43626. ohms to 43 ohms, so if you want to increase the output voltage, you
  43627. could either change the resistors or solder a 120 ohm resistor in
  43628. parallel with each.
  43629. 1.3
  43630. The other problem with some monitors, especially the NEC and Fujitsu
  43631. multisync monitors, is of getting a greenish tinge on white areas. This
  43632. comes about because Acorn put the sync signal onto the green line which
  43633. is apparently what certain monitors expect. To remove this sync signal,
  43634. simply remove resistor R39 Ö a quick snip with a good pair of side-
  43635. cutters should do it, but make sure you get the right resistor!
  43636. 1.3
  43637. (When I tried to do these modifications, I found it wasnæt too easy to
  43638. decide which resistor was which because the numbers are actually
  43639. underneath the resistors. If you look at the line of resistors coming
  43640. away from the video output socket you will see that they are: R1, R3,
  43641. R18, R20 (68R), R35, R37, R39 (1k2), R41 (68R), R45, R50, R52, R59
  43642. (68R), R60, R63 and R67.)
  43643. 1.3
  43644. Å   Archimedes on Econet Ö As far as we can gather, the Econet hardware
  43645. to be added to the basic 305 or 310 is just the same as the module which
  43646. you would purchase for the Master or Compact Ö certainly, the part
  43647. supplied by Acorn to one of our readers had the same part number as the
  43648. Master equivalent. One problem which Econet users may find on earlier
  43649. systems is that even if you only want to use the disc system, you still
  43650. have to have a clock signal available, otherwise the computer hangs up!
  43651. Presumably this will be corrected in the 1.2 operating system! If you
  43652. are used to using !BOOT files on the network, you will need to change
  43653. them all to !ARMBOOT as well as having !BOOT files for the BBC. The
  43654. Archimedes will work quite well on a Level 3 server but there are no net
  43655. utilities like VIEW, REMOTE, NOTIFY, ROFF etc. The only one provided is
  43656. an enhanced FREE which includes RDFREE with it. Acorn have öno plansò
  43657. for providing these utilities. This, for schools, is quite a problem as
  43658. you cannot get to see what is going on around the net. However, software
  43659. transfer around the net is very easy. (These comments were kindly
  43660. provided by Mr V Smith of King Edwards School, Lytham.)
  43661. 1.3
  43662. Å   Control key abbreviations Ö Lazy typists like me will like to know
  43663. that if you want to type, say, MODE12 perhaps to list a program that was
  43664. running in different screen mode or within a window, you can be
  43665. abbreviate it to <ctrl-V><ctrl-L>. What you are doing is the equivalent
  43666. of VDU22,12. On the BBC micro this was not a good idea because BASIC was
  43667. unaware of the change of mode and would start to over-write screen
  43668. memory with variables, but it is OK on the Archimedes because the screen
  43669. memory is protected by having configured a certain amount of screen RAM.
  43670. If you try it and then type PRINT MODE, it knows it is in mode 12. Other
  43671. mode numbers can be worked out Ö mode 0 would be <cvtrl-V><ctrl-@>, 1 is
  43672. A, 2-B, 3-C, 4-D, 5-E, 6-F, 7-G, 8-H, 9-I, 10-J, 11-K, 12-L, 13-M, 14-N,
  43673. 15-O, 16-P, 17-Q, 18-R, 19-S, 20-T, 21-U.
  43674. 1.3
  43675. This can be extended to things like changing background colour, say to
  43676. blue, with <ctrl-S><ctrl-@><ctrl-D><ctrl-@><ctrl-@><ctrl-@> (where
  43677. <ctrl-@> is actually done with <ctrl-shift-2>) but there comes a limit
  43678. where it is quicker to type in the command rather than remembering the
  43679. control codes. You can even do all the plotting functions in this way Ö
  43680. try, for example, <ctrl-Y><e><ctrl-C><ctrl-C><ctrl-C><ctrl-C>. (Thatæs a
  43681. lower case öeò, not <ctrl-e> so switch caps lock off and just press <e>.
  43682. If nothing happens, do a mode change first to a graphics mode, say MODE
  43683. 12, then try it.)
  43684. 1.3
  43685. To change mode when in the Arthur Supervisor, you could use, say, ECHO
  43686. || V || L or ECHO || S || @ || D || @ || @ || @ or you could use ECHO
  43687. <19><0><4><0><0><0> but you can again just type in the <ctrl> sequences
  43688. as mentioned above.
  43689. 1.3
  43690. Å   Special effects in View Ö You can use *ECHO or use the control key
  43691. sequences mentioned above when you are using View. Also, if you want to
  43692. put the Éformat blockæ, Émove blockæ and Édelete blockæ commands onto
  43693. function keys 10 to 12 (instead of using the <print> key) you can use:
  43694. 1.3
  43695. *KEY 10 || ! || L
  43696. 1.3
  43697. *KEY 11 || ! || \
  43698. 1.3
  43699. *KEY 12 || ! ,
  43700. 1.3
  43701. Despite what it says in the User Guide about the pageup and pagedown
  43702. keys not being used, they seem to work in View and they do actually move
  43703. you a page at a time up and down.
  43704. 1.3
  43705. Å   *RMtidy Ö Beware that on the 0.20 Arthur, this can cause the machine
  43706. to crash whenm you subsequently try to us *RMLOAD.
  43707. 1.3
  43708. Å   There is apparently another undocumented screen mode which will be
  43709. available on Arthur 1.2 Ö mode 21 which is 640 x 512 in 256 colours,
  43710. though it will obviously only be usable on a multi-sync monitor and uses
  43711. 320k of RAM! Also, on the 400 series there will be two extra high
  43712. resolution monochrome modes for 64kHz monitors Ö mode 22 which is 160 x
  43713. 122 text with 1280 x 976 graphics and mode 23 which is text only at 144
  43714. x 54. These use the extra hardware that is on the 400 series boards
  43715. though it looks as if there should be space for the chips on the 300
  43716. boards if you are prepared to risk fitting them yourself. There are no
  43717. sockets, so you would have to solder-suck all the holes first, and itæs
  43718. a multi-layer board.
  43719. 1.3
  43720. Å   Delete on keypad Ö If you compare the keypads of the Master and the
  43721. Archimedes, you will see that where the Archimedes has a fullstop, the
  43722. Master has a delete key. If you think it would be useful to have the
  43723. delete function on the keypad, turn the num lock LED off and try
  43724. pressing the fullstop key!
  43725. 1.3
  43726. Å   Function key definitions Ö If you want to know what the current key
  43727. definitions are, *SHOW K* will print them on the screen. The only slight
  43728. confusion is that they appear in alphabetic order Ö KEY$0, KEY$1,
  43729. KEY$10,  KEY$11,  KEY$12,  KEY$13, KEY$14, KEY$15,  KEY$2,  KEY$3 etc!
  43730. 1.3
  43731. Function key 0, as you probably know by now, is put onto the PRINT key,
  43732. but where are the other function keys Ö 13, 14 and 15? The only one I
  43733. have found is 13 which is on the INSERT key The other thing to watch is
  43734. that although there is a separate key for function key 10 (the break key
  43735. on the BBC micro), when you press <break>, KEY$10 is expanded as it was
  43736. on the BBC micro! (That was on 0.2. Has it changed in later versions of
  43737. the OS?)
  43738. 1.3
  43739. Å   Diary & notepad Ö The diary and notepad can be saved onto disc by
  43740. putting the pointer on the pad or the calendar and clicking the middle
  43741. button. It then asks for confirmation that you want to save it. The
  43742. notepad is saved as önotepadò and the diary as öDiary87ò (or whatever
  43743. year it is for). To load them back in again later, you have to open up
  43744. the disc and click on the required file before clicking on the diary or
  43745. notepad with the middle button and selecting LOAD. When saving, the name
  43746. is fixed by the desktop program, but once it has been saved, you can
  43747. rename the file if you want to save more than one, though obviously this
  43748. applies more to the note-pad as I know that some of you are still having
  43749. to use the notepad as a word-processor! Having said all that, I have to
  43750. admit that when I was trying this out, I had problems saving the
  43751. calendar Ö I kept getting öDisc fullò or öDisc in need of compactionò
  43752. errors. Any offers of explanation?
  43753. 1.3
  43754. Å   The SYSTEMDEVS module is a set of logical device drivers that can be
  43755. used from Arthur. They make the device appear to the programmer as if
  43756. they were a file system. In Arthur 0.20 you have to load the module from
  43757. the Welcome disc, but in 0.30 onwards it should be in ROM. They include
  43758. LPT:, KEYBD:, PRINTER:, VDU and RAWVDU: so a simple command to copy a
  43759. file to screen would be *COPY FILE VDU: and any non-printing characters
  43760. appear in the format used to program the function keys, i.e. using pad
  43761. characters so that, for example, ASCII 12 comes out as || L.
  43762. 1.3
  43763. What is the point of these facilities? Well, you can use them to
  43764. redirect the flow of data into or out of a program or relating to an
  43765. Arthur command. Thus you can say *EX {>info } which sends the output
  43766. from the EX command to a file called öinfoò and *CAT {>>info } will then
  43767. ADD the catalogue information onto the end of the info file, or *CAT
  43768. {printer: } would print out the catalogue. *BASIC {<data } PROG would
  43769. run the BASIC program PROG and take it input information from the DATA
  43770. file rather than from the keyboard. Another possible application is for
  43771. debugging a program that is sending data to a disc file. Rather than
  43772. stopping the program and examining the disc file periodically, you could
  43773. change the line in the program where you set up the file for output and
  43774. use instead X% = OPENOUT öPRINT:ò then subsequent PRINT#X%æs or
  43775. BPUT#X%æs would go to the printer. If the output is un-printable (or do
  43776. I mean non-printing?!) characters then you could set the printer into a
  43777. hex dump format which many dot matrix printers have these days. Then a
  43778. final suggestion for an application would be when using network and
  43779. ADFS. To avoid switching between the two, you could say X%=OPENOUT
  43780. öADFS:$.TESTò. This means that you could presumably have files open on
  43781. both the network and the disk at the same time, but not having a network
  43782. for my solitary Archimedes, I cannot check this!
  43783. 1.3
  43784. (These comments were derived from an article in öEurekaò the Auckland
  43785. BBC User Groupsæ Archimedes Newsletter. Many thanks to the editor, Tony
  43786. Krzyzewski. Write to him if you want more details of Eureka c/o Barsons
  43787. Computers, P O Box 26287, Epsom, Auckland, New Zealand.)
  43788. 1.3
  43789. Å   ROMs that work under the emulator.
  43790. 1.3
  43791. Acornsoftæs Comal, Prolog and Lisp seem at first look to be OK, and one
  43792. reader comments that Logotronæs Logo is OK but that the graphics are
  43793. öfunnyò Ö whatever that means.
  43794. 1.3
  43795. Damon Hoggett reckons that to get the View series ROMæs to work, you
  43796. need to *LOAD them at &10000 and then poke the following addresses to
  43797. &EA (a NOP instruction) as explained last month. View B3.0: &128A2,
  43798. ViewSheet B1.0: &10690, 691 and 692 and ViewStore 1.0: &12BCE, BCF and
  43799. BD0 then you *SAVE filename 10000+4000 8000 8000. We made a mistake with
  43800. the mention last month of Viewstore 1.1 (page 23). The poke should be
  43801. ?&12BE2=&EA, not 1ABE2 and you should also poke the next two bytes,
  43802. &12BE3 and E4.
  43803. 1.3
  43804. BBCSoftæs Monitor ROM seems to work OK with the emulator. You can
  43805. apparently assemble, disassemble and single-step through 6502 machine
  43806. code without problems.
  43807. 1.3
  43808. Some folk are saying the Inter-Chart works under the emulator, though
  43809. not option 9 to import data.
  43810. 1.3
  43811. Å   BASIC editor on 0.20 OS Ö If you are in BASIC and you type EDIT,
  43812. BASIC issues a *ARMBE command, so if that module is not already loaded
  43813. into memory, it will look in the operating system ROM and then in the
  43814. current directory on the current drive for the ARMBE module. If it is
  43815. not there, it will come up with öBad commandò. However, if it finds it,
  43816. it will load it into memory. Then to enter the editor, you just type
  43817. EDIT again. So, until you get your 1.2 OS(!) it is a good idea to copy
  43818. the ARMBE module into the directory in which you keep your BASIC
  43819. programs so that it is ready to use at any time.
  43820. 1.3
  43821. Å   No room in RMA Ö If you are in BASIC and try to *RMLOAD a module,
  43822. you may get öNo room in RMAò even if the configuration is set to allow
  43823. enough space for that particular module. But if you QUIT first into the
  43824. Arthur supervisor you can do the RMLOAD and then go back into BASIC and
  43825. OLD to get your program back. However, I think I would tend to save the
  43826. program first just in case!
  43827. 1.3
  43828. Å   BASIC V tips from Colin Dean, author of ÉAdvanced BASICæ (Tubelinkæs
  43829. BASIC V look-alike for the BBC & Master)
  43830. 1.3
  43831. In the LIST IF command, if you put a space between the IF and the
  43832. <string> that follows it, you get a different effect. For example if you
  43833. have two lines:
  43834. 1.3
  43835. 10RECTANGLE 1,2,3,4
  43836. 1.3
  43837. 20 RECTANGLE 5,6,7,8
  43838. 1.3
  43839. Then öLIST IF RECTANGLEò shows line 20 only, whereas öLIST IFRECTANGLEò
  43840. shows both.
  43841. 1.3
  43842. A neat way to test more than one expression at once, without having to
  43843. use heavily nested IFæs is to use öCASE TRUE OFò. For example,
  43844. 1.3
  43845. CASE TRUE OF
  43846. 1.3
  43847.   WHEN X=3 AND Y=4:PRINTöX=3 and Y=4ò
  43848. 1.3
  43849.   WHEN X>7, Z=0:PRINTöX>7 OR Z=0ò
  43850. 1.3
  43851. ENDCASE
  43852. 1.3
  43853. However, you should beware of mixing numerics and logicals in CASE
  43854. expressions. For example,
  43855. 1.3
  43856. X = 6
  43857. 1.3
  43858. CASE X OF
  43859. 1.3
  43860.   WHEN TRUE : PRINT öTRUEò
  43861. 1.3
  43862.   WHEN FALSE : PRINT öFALSEò
  43863. 1.3
  43864.   OTHERWISE PRINT öSPURIOUSò
  43865. 1.3
  43866. ENDCASE
  43867. 1.3
  43868. this prints öSPURIOUSò because É6æ is neither true (Ö1) or false (0).
  43869. 1.3
  43870. Å   Improved boot file for WWPlus Ö The !BOOT file on the Archimedes
  43871. Wordwise Plus discs is a BASIC program which checks whether the 6502
  43872. emulator is installed and if not loads it off the Welcome disc. If
  43873. instead you copy 65arthur onto your Wordwise Plus discs you can use a
  43874. simpler boot file which just says:
  43875. 1.3
  43876. QUIT
  43877. 1.3
  43878. 65ARTHUR
  43879. 1.3
  43880. WW+
  43881. 1.3
  43882. and then do a *OPT 4 3 so that the computer EXECæs the boot file instead
  43883. of running it. If you are using the disc version of CP-ROM, just add
  43884. 1.3
  43885. :SELECT SEGMENT 8
  43886. 1.3
  43887. :LOAD TEXT ö$.CP-ROM.CPstartò
  43888. 1.3
  43889. *FX138,0,152
  43890. 1.3
  43891. to the boot file and it will start up the CP-ROM as well.
  43892. 1.3
  43893. Å   Have you seen the whale?! Ö When playing Zarch, one or two folk have
  43894. discovered a whale that appears in the sea (or is it a shark or a sea-
  43895. monster?). You get 1000 points if you exterminate it and sometimes it
  43896. öbeachesò itself and becomes a much easier target. By the way, how are
  43897. the scores going? Iæve just about managed to avoid being called a wet
  43898. lettuce or a stuffed aubergine, but one reader, Malcolm Roberts says his
  43899. son has reached 53,291.
  43900. 1.3
  43901. (STOP PRESS! Iæve just seen it too Ö very fleetingly. It was bluish with
  43902. a zig-zag fin on its back!)
  43903. 1.3
  43904.  
  43905.  
  43906. Hints and Tips
  43907. RGB Connector
  43908. Hugh Nolan, of Old Roan, Liverpool, writes, öThe pinout for the RGB
  43909. connector on page 18 of Archive 1.1 indicates that it follows that of an
  43910. IBM PGA rather than the more common EGA standard. If anybody has a
  43911. monitor supplied with a lead for use with an EGA and wishes to build a
  43912. new cable they should note that the EGA pinouts are as follows:
  43913. 1.2
  43914. 1.2
  43915.    1   Ground   6   Secondary Green/Intensity
  43916. 1.2
  43917.    2   Secondary Red
  43918. 1.2
  43919.    3   Red   7 Secondary Blue/Mono
  43920. 1.2
  43921.    4   Green   8   Horizontal Retrace
  43922. 1.2
  43923.    5   Blue   9   Vertical Retrace
  43924. 1.2
  43925. I am currently using such a monitor with my BBC model B and the
  43926. connections are fairly straightforward except that the BBCæs connector
  43927. does not have separate vertical and horizontal syncs, so I have wired
  43928. the composite sync to pin 9 (Vertical Retrace) of the monitor.ò
  43929. 1.2
  43930. Using a multi-sync monitor
  43931. 1.2
  43932. A much easier way to change to a multi-sync monitor is to use:
  43933. 1.2
  43934. *CONFIGURE MONITORTYPE 1 and
  43935. 1.2
  43936. *CONFIGURE MONITORTYPE 0  to switch back to the normal monitor.
  43937. 1.2
  43938. Epson screen-dumps
  43939. 1.2
  43940. No doubt you have discovered the modules called HardCopyFX, MX and RX,
  43941. and you too have discovered that they donæt work! Gerrald Fitton has the
  43942. answer for us. His bug-fix has been passed on to Acorn who are also
  43943. circulating it. The recipe is as follows:
  43944. 1.2
  43945. *LOAD Modules.HardCopyFX 10000  (thatæs four noughts - beware of using
  43946. three!)
  43947. 1.2
  43948. !&104E0=&E59C1020
  43949. 1.2
  43950. !&104E4=&E20100FF
  43951. 1.2
  43952. (now replace the disc for the one onto which you want to put the hard-
  43953. copy module)
  43954. 1.2
  43955. *SAVE HardCopyFX 10000 + 700
  43956. 1.2
  43957. *SETTYPE HardCopyFX &FFA
  43958. 1.2
  43959. *STAMP HardCopyFX
  43960. 1.2
  43961. To use the module, *RMLOAD HardCopyFX (or just *HardCopyFX will do) and
  43962. then call it with *HardCopyFX plus various parameters Ö *HELP HardCopyFX
  43963. will show you what all the parameters are. Has anyone been  experiment
  43964. ing with it? What do all the parameters mean and what are their ranges?
  43965. (Landscape, XScale, YScale, Margin and Threshold)
  43966. 1.2
  43967. Avoiding constant use of *MOUNT
  43968. 1.2
  43969. If you, like me, have a number of different discs and you canæt remember
  43970. what is on which, you will probably be fed up of having to type *MOUNT
  43971. each time you change the disc before you can get a catalogue. Try
  43972. *CONFIGURE NODIR and <ctrl-break> and you will find that as long as you
  43973. havenæt gone down to lower directories, you can just change the disc and
  43974. do a *CAT (or *. works as on the BBC micro) and it will re-catalogue the
  43975. disc in the drive. For more details, see James Lynnæs article about
  43976. *CONFIGURE.
  43977. 1.2
  43978. File copying problems
  43979. 1.2
  43980. There are one or two problems with the *COPY command under the 0.2 and
  43981. 0.3 operating systems but, not being used to using ADFS myself, I am
  43982. never sure when it is a bug and when it is me being stupid. One thing
  43983. you will find though is that when doing a *COPY from disc to disc using
  43984. a single drive, it seems to hang up when it should be saying öEnter
  43985. source disc and press the space barò but donæt panic, itæs probably
  43986. still OK and itæs just that the prompt has not been printed. Replace the
  43987. disc you were expecting to put in next and press <space> and I think you
  43988. will find that it carries on OK. If you havenæt discovered how to do
  43989. disc to disc copying on one drive, see the öHave you discoveredò
  43990. section.
  43991. 1.2
  43992. File transfer problems
  43993. 1.2
  43994. If you are still having problems getting files across from other
  43995. computers to the Archimedes, we have received one or two programs from
  43996. subscribers. There is not enough space to print them in this issue, but
  43997. if you drop us a line, we could send you a listing.
  43998. 1.2
  43999. Attaching a 5.25ö disc drive
  44000. 1.2
  44001. Acorn have told us that they would not recommend us to do this as the
  44002. disc drive hardware in the computer is only designed to drive 3.5ö
  44003. drives with low control line loading and that if you want to attach a
  44004. 5.25ò drive, you should have suitable buffer circuitry added. The
  44005. feedback we are getting for subscribers is that most of you are having
  44006. success with this, though one person said that one drive he attached
  44007. would not work whilst another one did and another person actually blew
  44008. up the driver chip in the Archimedes. So, itæs up to you, but in the
  44009. light of these comments from Acorn, it would clearly be a good idea to
  44010. remove the pull-up resistors on the auxilliary drive.
  44011. 1.2
  44012. (For an alternative, check the öHardware Availableò section to see what
  44013. Brainsoft have done to get round the problem.)
  44014. 1.2
  44015. Three floppies on the desktop
  44016. 1.2
  44017. In order to get three floppies on the desktop, i.e. assuming you have
  44018. added a double 5.25ö disc drive, Gerrald Fitton again comes to our
  44019. rescue. öIn the BASIC library program called
  44020. $.desktop.accessory.filehandlr you will find that lines 130 and 140
  44021. accept the first and second floppies, so you will need an extra line:
  44022. 1.2
  44023. 145 IF floppies%>2 THEN PROCsys _addtoiconbar_left(öfloppy2ò,╔
  44024. 1.2
  44025. etc as per lines 130 and 140 and you will have to make a further copy of
  44026. lines 290 to 420 (which refer to floppy 0) emulating the changes made to
  44027. generate lines 430 to 560 which refer to floppy 1 by inserting ö2ò in
  44028. the appropriate places.
  44029. 1.2
  44030. Fortran 77
  44031. 1.2
  44032. Tom Fortescue warns potential purchasers of Fortran77 that (a) it needs
  44033. at least 1Mbyte and is therefore unusable on the A305 (I havenæt been
  44034. able to check this with Acornsoft.) and (b) it does not come with an
  44035. editor, so unless youæve got View or Wordwise or Inter-Word or somesuch,
  44036. you wonæt get very far with it!
  44037. 1.2
  44038. Stereo speakers
  44039. 1.2
  44040. Enoch Mayer says that he has bought, for around ú25, a couple of
  44041. öRealisiticò (Tandy) amplified speakers designed for use with personal
  44042. stereo radio/tape players. (Model: Minimus-0.6 amplified speaker system
  44043. Cat N╝ 40-1259E) Although they run off two sets of four size-C bat
  44044. teries, they can easily be adapted to run off small battery eliminators.
  44045. They tone in nicely with the Archimedes, but the best thing is that when
  44046. no sound signal is received they automatically shut off, thus eliminat
  44047. ing the öfuzzò!
  44048.  
  44049. Hints and Tips
  44050. 1.1
  44051. Using Electrohome Monitors
  44052. 1.1
  44053. Ian Nicholls of Kidderminster says that the öElectrohomeò colour
  44054. monitor, as sold by Opus, works OK on the Archimedes. All you have to do
  44055. is make up the appropriate connector. (Or purchase one from CJE Micros
  44056. or somesuch.) The pin connections for the Archimedes are given on the
  44057. inside back cover.
  44058. 1.1
  44059. Using Modes 18 - 20
  44060. 1.1
  44061. Whilst on the subject of monitors, let me clear up the confusion there
  44062. seems to be in the computer press about the high resolution modes and
  44063. the extra video hardware which the 400 series machines are said to have.
  44064. This extra hardware is NOT for driving modes 18 - 20. Even on the 300
  44065. series, there is all the hardware needed to run these modes on a multi-
  44066. sync monitor.
  44067. 1.1
  44068. The extra hardware in the 400 series is actually for even higher
  44069. resolution graphics Ö it will go up to 1280 by 976 pixels in monochrome
  44070. (160 characters by 122 lines of text) and, as with modes 18 - 20, it
  44071. requires a special monitor. There is no industry standard for such
  44072. monitors, and Acorn are still looking into providing a suitable monitor
  44073. with their own badge on it. This extra high resolution is of course
  44074. aimed at the CAD (computer aided design) market, and it is said that
  44075. AutoCAD is being translated onto the Archimedes.
  44076. 1.1
  44077. Using a Multi-sync Monitor
  44078. 1.1
  44079. If you have a multi-sync monitor and want to get it working on the 300
  44080. series, all you need to do is to switch the computer on whilst holding
  44081. down the <R> key. This resets the CMOS RAM settings (so if, like me, you
  44082. had changed them, you will have to re-configure again!) and it changes
  44083. the configuration of the RGB output to run in multi-sync mode. It then
  44084. allows you to access the extra screen modes that had been previously
  44085. forbidden to those of us who only have standard monitors. If you should
  44086. want to change the machine back again to run a standard monitor, you
  44087. have to do another <R-power-up> which switches it back again (and re-
  44088. sets the CMOS RAM settings AGAIN!). In other words each time you do an
  44089. <R-power-up> it toggles between the two monitor settings.
  44090. 1.1
  44091. Using View
  44092. 1.1
  44093. Gerald Jones of Northampton tells us that only those of you who have
  44094. gone from a Master Compact to an Archimedes will be able to get View
  44095. going Ö for the time being, at least, because the ROM versions of VIEW
  44096. will not work under the emulator. If you do have a disc version of View,
  44097. Acorn tell us that the way to get it going is to copy 65ARTHUR from the
  44098. MODULES directory on the Archimedes Welcome disc onto another disc and
  44099. VIEW from the Compact Welcome disc and then use *BUILD !BOOT  to create
  44100. a boot file which consists of:
  44101. 1.1
  44102.    *65ARTHUR
  44103. 1.1
  44104.    *GO F800
  44105. 1.1
  44106.    *LOAD VIEW 8000
  44107. 1.1
  44108.    *GO 8000
  44109. 1.1
  44110. and then remember to type *OPT 4,3 to set it up so that it will execute
  44111. the boot file on <shift-break>. All you have to do then is to chop up
  44112. your VIEW keystrip and stick it together in the Archimedes keyboard
  44113. format remembering that the f0 key functions are now on the <print> key!
  44114. 1.1
  44115. Attaching a 5.25ö drive
  44116. 1.1
  44117. Have you tried to get a 5.25ö disc drive linked up to the Archimedes?
  44118. Presumably, you did the obvious thing and removed the cable from the
  44119. p.c.b. to the 3.5ò drive and plugged in the cable from the 5.25ö drive.
  44120. And you too found that it didnæt work! Well, the official answer is that
  44121. it is possible to connect a 5.25ò drive but that there are ödifferent
  44122. connectionsò. Actually, it seems that the only difference is that they
  44123. have put the connector in the opposite way round!
  44124. 1.1
  44125. Unfortunately, you canæt just turn the connector round because of the
  44126. location lug on the side of it. The solution is either to file the notch
  44127. off the side of the connector so that it will go in either way round, or
  44128. buy a new 34-way insulation displacement connector which you can crimp
  44129. onto the end of your disc cable, the opposite way round from the
  44130. existing one, or buy a disc extension cable from a supplier such as CJE
  44131. Micros (ú15 + ú1 p&p Ö address in Fact-File at the back of the
  44132. magazine). The advantage of doing it that way is that the extension
  44133. cable is long enough to stick out at the back of the computer through
  44134. the podule connection slot so that you can connect and disconnect the
  44135. extra drive without taking the lid on and off.
  44136. 1.1
  44137. You can, if you want, put a single 5.25ö drive as drive 1 or a pair of
  44138. drives as drives 1 and 2. The extra drives must, of course, have their
  44139. own power supply units and you need to type *CONFIGURE FLOPPIES 2 (or 3)
  44140. so that the ADFS knows how many drives there are. You will also need to
  44141. get inside the 5.25ò drives in order to change the link settings to
  44142. configure them as drives 1 (and 2) and you should also, theoretically,
  44143. remove the terminating resistors Ö usually a set of resistors (dual-in-
  44144. line or single-in-line)  near the drive-select setting links. This is
  44145. because there are already terminating resistors in the internal 3.5ö
  44146. drive and you should not have two sets. If you have a dual drive where
  44147. they are on top of one another rather than side by side, you may find it
  44148. difficult to get at the second drive in order to change the link
  44149. selection. If so, the easiest solution is to make the top drive 2 and
  44150. just remember that the lower drive is drive 1.
  44151. 1.1
  44152. One problem you may still find (which Acorn havenæt yet managed to
  44153. explain) is that if you switch on the power to the disc drive before or
  44154. at the same time as  the computer, the computer seems unable to start up
  44155. Ö you just get a blank screen. All you have to do though is to make sure
  44156. you switch the computer on first and then the disc drive. You will also
  44157. find that the desk-top program does not recognise the third drive Ö even
  44158. if you have typed *CONFIGURE FLOPPIES 3, it only displays two disc icons
  44159. on the screen. (If anyone works out how to modify the program to
  44160. recognise all three, let me know.)
  44161. 1.1
  44162. ADFS bugs
  44163. 1.1
  44164. There are one or two bugs in the ADFS, though they are apparently
  44165. reasonably obscure. The only one I have found myself is that if you try
  44166. to *BUILD a !BOOT file onto a disc that already has a !BOOT file and you
  44167. have left the disc write-protected, when you press <escape>, the system
  44168. hangs up and you have to press <ctrl-break> or reset to escape. Some of
  44169. the bugs have been corrected on the 0.03 version of the ADFS that you
  44170. will find in the MODULES directory on your Welcome disc. This version
  44171. will have to be *RMLOADæed, then to check that you have got the right
  44172. version installed, type *HELP MODULES which gives you the current
  44173. version numbers of all modules. It should say ADFS 0.03 (17 Jun 1987)
  44174. instead of ADFS 0.02 (05 Jun 1987). Incidentally, the file name on the
  44175. Welcome disc is Adfs0-03, not Adfs0_03 as you might tend to expect, so
  44176. if you get a file not found error, check that you have typed it
  44177. correctly.
  44178. 1.1
  44179. Have you discovered╔?
  44180. 1.1
  44181. Iæd like this to be a regular feature. It consists of the sort of things
  44182. that may be obvious to some people, but perhaps that youæve noticed from
  44183. reading the User Guide (or the Programmersæ Reference Manual when it
  44184. becomes available). If you find something that you thought, öWell, I
  44185. didnæt realise that!æ, let us know. Iæll start it off this month with
  44186. things that were new to me.
  44187. 1.1
  44188. Å   The pad character ö|ò which is the shifted back-slash character (the
  44189. key just above the return key) can be used to öpadò out those incredibly
  44190. long VDU codes that end with lots of zeros. For example, to switch off
  44191. the cursor, you can use VDU23,1,0,0,0,0,0,0,0,0,0 which can admittedly
  44192. be shortened to VDU23,1,0;0;0;0; can now be reduced to VDU23,1| which
  44193. has the extra advantage that you donæt have to try to remember exactly
  44194. how many zeros it needs to complete the command.
  44195. 1.1
  44196. Å   Instead of saying value=value+extra, you can use the new operator
  44197. ö+=ò and say value+=extra which is a significant saving if, like me, you
  44198. tend to use long variable names; likewise with Ö=extra.  (Well with
  44199. ö604412 bytes remainingò, it may not be worth worrying about memory
  44200. space, but it does save on printer ribbons!)
  44201. 1.1
  44202. Å DANGER! Å BEWARE! Å WARNING!!!!!
  44203. 1.1
  44204. Newcomers to ADFS beware! If you have been using *WIPE * and looking
  44205. through and saying öyesò or önoò to each, Donæt try it on ADFS! You will
  44206. find that *WIPE * deletes ALL the un-locked files in the current
  44207. directory. Itæs like *DESTROY * but without even displaying a list of
  44208. all the files it was about to delete and asking for confirmation. I
  44209. discovered this Énastyæ the hard way Ö I lost about 10 programs at a
  44210. stroke.It wasnæt too bad though as I had copied them across from DFS and
  44211. only modified one or two.
  44212. 1.1
  44213. What you should say is *WIPE * C where the C stands for öConfirmò Ö then
  44214. it asks you about each file in turn. Ö You have been warned!!!!
  44215.  
  44216.