Editorial 1 I hope you are having a good summer. News 3 RISC OS 5.23 has finally arrived for the Electron Pi 5 and we take a look at some changes. RISC OS 5.23 7 Copyright © Drag 'N Drop 2017 If your fingers are itching we Produced on RISC OS have everything from a classic Using RDSP 9 This issue has been blessed with space invaders game to more contributions from the following people: Attack of the Tony Bartram (Using RDSP) sensible applications to type in, Jon Robinson (Wimp programming) All have full program listings, Raspberry Steve Royd-Maker (Small Changes in you don't need anything other Design...) Macaroons 14 Christopher Dewhurst (everything else) than this magazine and your . Stave Paper 19 The views expressed in this magazine are If you like building things not necessarily those of the editor. then the articles on the Envelope Editor 23 Alternative views are always welcome and can be expressed by either writing an Electron Pi keyboard kit and article or a short editorial. PiCano case may interest you. Review 29 All articles and advertisements are The index to volumes 1-8 published in good faith. No materials in will help you, if you remember Small Changes in this publication are meant to be seeing something in Drag 'N offesnsive or misleading. If you come Design . . . 30 across something you believe is either of Drop, but can't quite remember the above please contact the editor using which issue it appeared in. Wimp Programming the details below. 34

Contact Information Editor: Christopher Dewhurst Desktop F keys 39 Email: [email protected] Christopher Dewhurst www.dragdrop.co.uk Volumes 1-8 index 42

Drag'N Drop Summer 2017 | www.dragdrop.co.uk | facebook.com/dragdropmag Page 1 How do I...? ...get the BBC Basic prompt? Task window To get the BBC Basic prompt press F12 *BASIC ARM BBC BASIC V and type *BASIC and press Return. You version 1.54 can change the screen mode with MODE n Starting with 651516 where n is a number e.g. MODE 7 or MODE 0. bytes free Type AUTO for automatic line numbering. Press > Escape to stop and type SAVE "myprog" followed by Return to store myprog on hard disc. To return to the desktop type *QUIT. You can also program and run Basic programs Programs listed in Drag 'N Drop are assumed to from the desktop. Double-clicking on the filer work on all machines with RISC OS 5 e.g. icon runs it, holding down Shift and double Raspberry Pi, unless otherwise stated. clicking loads it into your text editor.

...open a Task window? Menu click over the Raspberry icon on the right ...select the currently selected side of the iconbar and select click on Task directory? window. Or press Ctrl + F12. Articles may tell you to set the CSD (currently selected directory). Just click menu over filer window and choose Set directory ^W or you can You may need to reserve more memory for use the !EasyCSD application presented in Drag the task in which case adjust-click on the N Drop 6i1. Raspberry icon and under Application tasks click and drag the Next slide bar out to the right. ...open an Applcation Directory? You can also type programs in a task window, Application directories begin with a ! called hold down Ctrl and press F12. You can't use the 'pling'. Hold down shift and double click select to cursor editing facility or change MODE, however. open the directory.

Drag'N Drop Summer 2017 | www.dragdrop.co.uk | facebook.com/dragdropmag Page 2 News and App Updates Recursion 2017 riscos.kevsoft.co.uk/ which can be game in the AMCOG The third annual day dedicated to used to convert one currency to Development Kit (reviewed in this computers in science, industry another, it looks up information on issue). It can also be bought on and leisure took place at King the internet in the background so its own and, since our review, a Edward VI school, Stratford-upon- will always be up to date. new version of the game has Avon on July 1st. There was a been released. It's based on strong RISC OS presence but Cyberton Mission (which less of a retro scene than in appeared in the 80s for the BBC previous years. Micro) and now features additional levels, improvements to graphics and animation and sound. Cyborg costs £9.99 and RDSP 0.22 further information is available at The RISC Digital Sound www.amcog-games.co.uk/ Processor (RDSP) now has its cyborg.htm. own webpage plus an update. Version 0.22 can be downloaded from www.amcog-games.co.uk/ Drag 'N Drop Volume 9 rdsp.htm. RDSP brings the Thank you to everyone who took ENVELOPE command back to up the subscription offer to this RISC OS and enables the volume, prices for a subscription programmer to easily add sound to volume 9 will appear on the effects and play samples to soon. enhance games. See the articles in this issue of Drag 'N Drop. Currency Exchange Cyborg 2.20 ADFFS 2.61 This is a new and free app Thanks to the ADFFS floppy disc available from Cyborg is included as an example emulator, many RISC OS games Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 3 which were released on 3.5" disc Harinezumi 0.07 fjg/. A collection of StrongHelp in the 80s and 90s are once again This a utility very much in its early manuals is available at playable on your Raspberry Pi. stages of development ('alpha' in www.riscos.info/downloads/ Version 2.61 plus a large computer speak). It's being stronghelp/manuals/. selection of games (in ADFS designed to oversee your normal image format) can be downloaded !Boot sequence and create a log Arcade BBS from if things go wrong. Test versions The bulletin board system (BBS) forums.jaspp.org.uk:9000/forum/ of the software can be of the 1990s is still alive and well viewtopic.php?f=14&t=355 downloaded from as a website offering RISC OS www.heyrick.co.uk/software/ files, which can be found at DigitalCD 3.10 harinezumi/ http://www.arcade-bbs.net/ Version 3.10 of the digital sound filepages/findex.htm player is available from MiniTime 1.07 The http://www.riscos-digitalcd.net/ MiniTime which is available for Another stalwart portal for RISC digitalcd/player/download.htm. It free from OS news and discussion is The features updates to several 'plug- www.stronged.iconbar.com/fjg/ Icon Bar. Point your web browser in' formats including those to index.html displays the date and at www.iconbar.com/ for tutorials display the music being played as time on your icon bar. Colours and discussion. There's also a graphical a animation. and styles are fully configurable. shop a shop at www.cafepress.com/the_icon_bar selling T-shirts, mugs, and mousemats .

StrongHelp 2.90 RISC OS 5.23 StrongHelp is an application to Finally in case you hadn't noticed, assist the reading and designing RISC OS 5.23 is now available for of on-screen manuals using the your Raspberry Pi. We have a no- hypertext system we are all nonsense guide to upgrading in familiar with on web pages. this issue or, if you prefer, buy a Version 2.90 can be downloaded new SD card from from www.stronged.iconbar.com/ www.riscosopen.org/content/ sales/risc-os-pi for £10 + £2 P&P. Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 4 Electron Pi Keyboard Kit At a recent show I was helpful (in fact there were none!) With the rear of the Electron intrigued to see an Acorn so I decided to write this article. facing towards you, remove the Electron running RISC OS and Turn the Electron upside down cover, remove the three screws after making enquiries I found and remove the cover screws as holding the power circuitry on the you can buy a USB interface kit shown in the photo below. left and the four screws for around £43 to connect your securing the motherboard. Raspberry Pi to the Electron's These are circled yellow in keyboard. the lower photo on the left. I'll The Electron was originally come to the one I've labelled released in 1983 and common 'central screw' in a minute. Cover screws causes of death in the ensuing Gently remove the 22-way decades were the ULA blowing or keyboard ribbon connector. power supply giving up. Usually Take out the power circuit there was no problem with the board and the mother board, keyboard. So if you have a dodgy plus the small speaker. Electron in the attic, dig it out and Arranging the Raspberry give it a new lease of life as the Pi, keyboard and leads is Electron Pi! quite tricky but the In essence what you do is best configuration remove the old electronics from seemed to be as inside the Electron (everything but in the photo on the the keyboard circuitry), put in the next page, the Pi is Keyboard ribbon keyboard interface, your + connector angled at around Raspberry Pi, connect the Pi to five degrees to the the interface, plus all the other edge of the accoutrements like the Pi's own central screw Electron's case. power lead, network cable etc. I found 'Gorilla' and away you go. tape to be useful in I didn't find the instructions keeping the USB, Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 5 Upgrading to RISC OS 5.23 Version 5.23 the operating accessible with Netsurf, click things go wrong. system finally arrived in April Download the download button on Now take a backup the main 2017, some 34 months after the webpage. The files will appear !Boot in the root directory of your RISC OS 5.21 back in June in the RISC OS filer as bootcode/ SD card (that is SDFS:: 2014. bin, fixup/dat and start/elf RISCOSPi.$.!Boot). This may Of course you can just buy a respectively because the full take a while as it will have grown new SD card from RISC OS Open stops before the 'file extensions' in size with applications adding but it's about time we refreshed are swapped to forward strokes their choices, scrap directories, our memories as to how to on RISC OS which uses full stops configurations and so on. upgrade our Raspberry Pi to separate parts of the file path. Click Menu over a filer window machines safely with the existing You'll need the updated !Boot (any filer window will do) and SD card. sequence from choose Options > Newer. It is assumed you originally www.riscosopen.org/content/ Copy across the new !Boot file purchased the SD card in your Pi downloads/common. (inside HardDisc4/5/22/zip). with RISC OS on from RISC OS which is inside the HardDisc4 Setting the Open, either the fullsize (7/8 download you have to download Options to Newer inch) SD card or the 3/8 inch the entire HardDisc4/5/22/zip file, ensures that only microSD card. there's no option to download just completely new First of all download the Beta !Boot. files, or those RPi ROM (RC15) from The main reason for needing a with a more www.riscosopen.org/content/ new !Boot file is the new monitor recent date downloads/raspberrypi. The configuration plugin which is stamp are copied. filename is BCM2835-RC15/5/23/ compatible with the Extended Hold down Shift and double zip. Display Identification Data (EDID) click on !Boot in the root directory Next download standard in modern monitors. of the SD Card, that is Then download bootcode.bin, Store these files on a USB SDFS::RISCOSPi.$. fixup.dat and start.elf from stick the Drag 'N Drop back Locate Loader which is github.com/raspberrypi/firmware/ issues one is ideal so you can a multicoloured tree/master/boot. They are revert to the previous state if directory with PC written Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 7 on it. With Shift held down double and RISCOS/IMG, then copy over click it to open it, you will see the disable_mode_changes the new versions. following: Your Pi should now boot up and save it as CMDLINE/TXT with RISC OS 5.23. If you select inside Loader. click on the monitor icon (next to If your SD card is the one from the Raspberry icon on the right the nowdefunct RComp support hand side of the icon bar) you scheme then you won't have a should see that RISC OS has Loader file inside !Boot. picked up your monitor type (e.g. M227WDP) and chosen a Copy the existing BOOTCODE/ suitable resolution. BIN, FIXUP/DAT, START/ELF Frequent users of Edit will and RISCOS/IMG onto your notice that the copying and memory stick. pasting method has changed: Double click to open instead of highlighting text and BCM2835RRC15/5/23/zip and positioning the caret at the point drag the new RISCOS/IMG out where you wish to paste, the into the Loader directory. Also copying (Ctrl+C) or cutting (Ctrl+ copy the new bootcode/bin, V) now has to be done when the fixup/dat and start/elf into text is highlighted, putting it on the Loader too. In this case you need to install global clipboard. If you haven't downloaded the the new files on another RISC OS At the time of writing only a few Anymode module, do so now machine (with a card reader). applications support pasting from from Clicking on the USB icon the global clipboard, the ones that www.pistar.co.uk/anymode/ will bring up a filer display do include Draw (editing existing and put Anymode inside on the 'boot partition' which text), EasiWriter, MessengerPro, !Boot.Choices.Boot.Predesk. This is exactly the same as Loader Netsurf, and Edit itself across text is necessary for the Pi to display although the appearance of the files. Text can be pasted into screen modes used in games file icons and case of filenames writeable icons, however, using Now create a text file in Edit may vary. Proceed as before and the free IcnClipBrd utility from with the following line (press back up the original copies of www.stevefryatt.org.uk/software/ Return at the end): bootcode/bin, fixup/dat, start/elf clipboard/. Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 8 Using RDSP Last time in Drag 'N Drop we legacy SOUND command its SOUND command before. introduced RDSP, a digital support. For example: Here is a summary of the new sound processor for RISC OS. options that the SOUND It allows easy sample playback SOUND 1,-15,208,100 command can provide. as well as enabling RISC OS to will play a square wave, albeit at The syntax is be used as a software a different pitch to the BBC Micro. synthesizer. This is because whilst the BBC SOUND FIC,TTVV,ZQNN,DDDD RDSP can be downloaded for Micro could play a little over 5 free from the AMCOG website at octaves (256 quarters of a where: www.amcog-games.co.uk/ semitone), RDSP supports nearly F = Flags : &10 - Synchronise, rdsp.htm. It has architectural 8 octaves (365 quarters of a &20 - Mute, &40 - XOR with similarities to the Commodore 64 semi-tone). previous channel SID chip, the Korg M1 synthesiser There is also support for the I = Instrument: &00 - and the BBC Micro’s SN76489 BBC’s noise channel e.g. Waveform, &10 - Envelope, &20 - sound chip. SOUND 0,-10,54,100 Sample: 0 to 254 The examples in this second RDSP is distributed with V = Volume : &00 to &ff article use the BBC Basic examples and there is a BBC C = Channel : 1 to 15 (or the programming language and we'll Micro SOUND command example BBC Micro noise 0 channel) look in more depth at the features included that demonstrates the Z = Filter cut off (bits 16-13): & RDSP provides. current legacy features. Further F to &1 where &F is completely Before we begin, ensure that improvements are planned to open. If this field is 0 it will be RDSP has been loaded and optionally support BBC Micro ignored. started thus: style ENVELOPE commands as Q = Filter resonance (bits 12,- well as playing sounds at 10 ) : &E, &D, &B, &A, &8, &6, & *RMLoad System:Modules.Audio.SoundChi equivalent pitches to the BBC 4, &2 p.RDSP Micro. N = Note : (bits 1 to 9) : 0 to The RDSP synthesiser offers *rstart 364 (or 0 to &16c) more sonic possibilities than D = Time in twentieths of a Firstly, there is partial built in RISC OS or the BBC has had via second. Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 9 YOU thought you'd seen them all off Raspberry As and Bs, the Twos and Threes, not to mention the Zeros . . . but now there's a new wave. Big (they run Windows), yellow and pink they're lethal and they're the Raspberry Macaroons. Can you save the earth from a deadly invasion? Find out in this typein, classic, Space Invaders clone. It features fast colourful graphics, a high score table plus sound effects using the RSDP module. Macaroon Attack listing 10REM Raspberry Macaroon Attack 20REM Programmed by Czody 30REM (c) Drag 'N Drop July 2017 40MODE13:OFF 50*RMEnsure RDSP 0.23 RMLoad Syste m:Modules.Audio.Soundchip.RDSP 60*RSTART 70ON ERROR REPORT:PRINT " at ";ERL :END 80PROCinit:REPEAT 90PROCtitle:REPEATUNTILINKEY-99 100score%=0:lives%=3:level%=2 110PROCsetgame 120REPEATC%=0 130REPEAT 140IF C%=0 PROCmovealiens:aa%=aa% E OR 1 150PROCplayer:PROCbullets:PROCdelay (3) 160C%=(C%+1) AND3 Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 14 StavePaper StavePaper is a multi-tasking Listing 1 desktop application which 10REM Make files for Stave Paper allows you to create Draw files 20REM (c) Drag 'N Drop 2017 30: of music manuscript paper for 40app$="!StavePaper" printing. 50OSCLI"CDIR "+app$ Various aspects can be 60PROCcreatesprites customised including stave width, 70PROCcreatefiles the gap between stave lines and 80END 90: margins. 100DEF PROCcreatesprites Firstly type in listing 1 which 110DIM H% 550:!H%=550:H%!8=&10 creates the application directory, 120op$="OS_SpriteOp" sprite, !Boot and !Run files. Then 130SYS op$,&109,H%:READ n$,W%,D% type in listing 2 and save it as 140SYS op$,&10F,H%,n$,,W%,D%,9:REM create sprite !RunImage inside the 150SYS op$,&11D,H%,n$:REM create ma !StavePaper directory. Finally sk double click to run. Click in the 160FOR Y%=D%-1 TO 0 STEP-1:READ a$ boxes and adjust the numbers as 170FOR X%=1 TO W% required then drag the Draw file 180b$=MID$(a$,X%,1):IF b$="." THEN 190SYS op$,&12C,H%,n$,X%-1,Y%,0 icon directly to Draw's icon bar 200ELSE icon or to a filer window, it will be 210SYS op$,&12A,H%,n$,X%-1,Y%,EVAL( saved with the name StavePaper. "&"+b$) As it stands the program 220ENDIF:NEXT, 230SYS op$,&10C,H%,app$+".!Sprites" assumes you are using A4 paper 240ENDPROC and doesn't check values given 250: are sensible. You could improve 260DEF PROCcreatefiles this and also add an option to 270REPEAT READ file$ bracket staves together for piano 280IF file$<>"" THEN PROClines 290UNTIL file$="" music, perhaps another option for 300ENDPROC pre-printed bar lines. 310DEF PROClines Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 19 Envelope Editor Thanks to the RDSP module it ENVELOPE statement by clicking on the icon bar. is easy to make sounds for on parameters and pressing The !Run file *RMEnsures that your RISC OS games with BBC buttons to hear the result. the RDSP is in situ so make sure Basic's ENVELOPE statement Firstly type in Listing 1 which you have downloaded and saved but rather tricky to determine creates the !EnvEd application it in the correct location as exactly what effect each directory, sprite file, !Boot and described in the Using RSDP parameter will have. !Run files. article, elsewhere in this issue. The desktop application Next type in Listing 2 and save Select-clicking on a parameter presented here, !EnvEd, allows it inside !EndEd as !RunImage. increments it, adjust-click you to experiment easily with the Double clicking !EnvEd installs it decrements, with Shift or Control Select-click black numbers (parameters) to increment. Click to store the envelope adjust-click to decrement, +Shift to change by steps of 10

Press S or Click red button to play sound

Control+click to adjust SOUND Click in the empty grey area Help appears here for parameter clicked on for window to gain input focus to use keyboard shortcuts Press R or Select-click EnvEd's iconbar icon for random parameters Menu-click iconbar icon for program information or to quit application Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 23 Review

Product: Amcog Development Kit and BBC Basic to get started. (there doesn't seem to be a Category: Gaming The example games, Cyborg choice of colour). Price: £14.99 (PlingStore) also and Mutant Penguin, are maze- available on DVD at shows type games with an overhead Supplier: Amcog games view of the action. www.amcog-games.co.uk A steady stream of games has been flowing into the RISC OS scene over the last few years thanks to the talented Tony Bartram of AMCOG games. The latest offering is a little different, it's a games designer Even if you don't create any kit. Two complete games are masterpieces of your own the included plus a library of BBC Kit's still worth buying for the Basic procedures to handle example games. They are of the sprites, sound and collision usual polished standard from detections. There are background AMCOG and will keep you music MP3s and an eleven-page occupied for some time. reference manual, too. There is also a very small (16 I'm not sure how well the Basic sprites) graphics library. A Google procedures as supplied would image search for "sprites" will meet the needs of other genres bring up hundreds more, although like space invaders or ladders- a fair amount treatment will be and-platforms. necessary to make them suitable I was quickly able to set up the for use in your game. screen mode, get a scrolling You do have to know a fair bit starfield, load in some sprites and about the RISC OS filing system display outline text in yellow Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 29 Small Changes in Design The PiCano is a Raspberry Pi in and this results in a downwards a VESA-mount case and has deformation around the hole. been on the market for a while now. And like all designs it's difficult to predict how sales will evolve. Therefore you start off as simple as possible and as you On my lathe I have a second see sales develop you improve countersinking drill going at slow production methods, packing You would think that this speed so I can counter-drill the methods, and also try to reduce involves just setting up the drill hole to get rid of the deformed stock items. equipment and countersinking material at the back. Developing something is great them to a prefixed depth but it I have to be careful, though, fun but improving the methods of isn't that simple... because I may go too deep and production (the efficiency) is a To begin with, anodized enlarge the hole too much that different kind of joy. aluminum always seems to be a the screw will fall through. And In this article, I'll take you soft quality and it sticks to the end up throwing away an through a problem on the PiCano countersink drill. To prevent this I otherwise perfectly good part with case. It's the drilling of holes for use a light oil but I needed to stop a considerable amount of the countersunk screws in the the drill at least every 3 holes and swearing... aluminum sheet. It's been a remove the aluminum chips which The oil is removed with a cloth, bother from the beginning. have bunged it up. which leaves fluff around the hole The screws had to be The next problem is that the and has to be picked off. This is countersunk because if they pressure of the drill causes the where my patience gets tested. screws rise above the aluminium aluminium to bend around the All these silly details take an they can damage the back of your holes, caused by the pressure of enormous amount of time and monitor when the case is used as the drill. And when the drill starts time is money. VESA bracket (e.g. in between to get bunged up it takes more Then there is the problem that the monitor and wall mount) downward force to make it cut, the M3 countersunk screw has a Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 30 RISC OS Programming 11. Choosing Items modify it slightly. icon, then on the encoding icon, From a Menu This new procedure can be should bring up the new menu, In the last part of this tutorial, seen in line 2360 onwards in the containing Latin-1 and UTF-8: we picked up a click on the listing at the end of this article. Encoding menu icon, and used As before, there is a section at it to call a PROCEncoding the top which defines the general MenuClicked, which at the appearance of the menu then moment just displays a there are two seperate sections message. for each item on the menu (Latin- This PROC needs to be 1 and UTF-8). expanded to display an encoding And, as before, it has to be menu, and allow a selection to be called as part of the program made. initialisation to load the menu into According to the PDFToText memory before it starts to execute documentation we can specify the main loop. several alternatives for the This is to be displayed when encoding of the output file, the the user clicks on the Encoding two most useful being UTF-8 and icon, which is icon 8, in the main Latin1. These are the two options program window. we should display in a menu A click with a mouse button is when the user clicks on the being handled by PROC Once we've got an open menu on Encoding icon. MouseClick. screen, the program will just cycle Luckily, we have already Wimp_GetPointerInfo is used around and around the main loop, developed the code to display a to determine where the mouse until the user performs another menu when the user clicks on the pointer is when the user clicks on action. icon bar menu (way back in part 2 the icon, so that the same When PROCMenuClick was of this series). So the easiest way coordinates can be used to originally written (back in part 3 of to create a new one is to re-use display the corresponding menu. this tutorial), the quit option was PROCCreateIconMenu and just Clicking on the window's toggle the second item on the Icon menu Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 34 Desktop Function Keys This is a small multi-tasking application which displays a row of function keys on the desktop, corresponding to those on your keyboard. Clicking on a button in the Listing 1 270ENDPROC window simulates the striking of 10REM Make files for Function Keys 280: 290DEF PROCcreatefiles the equivalent keyboard key. For 20REM (c) Drag 'N Drop 2017 30: 300REPEAT READ file$ instance, in most RISC OS 40app$="!FKeys" 310IF file$<>"" THEN PROClines applications, pressing F3 calls up 50OSCLI"CDIR "+app$ 320UNTIL file$="" the Save dialogue box, and 60PROCcreatesprites 330ENDPROC clicking F3 has the same effect. 70PROCcreatefiles 340DEF PROClines 80END 350READ type$ Type in Listing 1 which creates 90: 360out%=OPENOUT (app$+"."+file$) the application directory !Fkeys 100DEF PROCcreatesprites 370REPEAT READ line$ and automatically saves the 110DIM H% 550:!H%=550:H%!8=&10 380IF line$<>"" BPUT#out%,line$ !Boot, !Run and Sprite files inside. 120op$="OS_SpriteOp" 390UNTIL line$="" Next type in Listing 2 and save 130SYS op$,&109,H% 400CLOSE#out% 140READ n$,W%,D% 410OSCLI"SetType "+app$+"."+file$+" it inside !FKeys as !RunImage. 150SYS op$,&10F,H%,n$,,W%,D%,9 "+type$ Finally double click !FKeys to 160SYS op$,&11D,H%,n$:REM create ma 420ENDPROC start. Clicking with Adjust sk 430: simulates Shift + F key, Menu 170FOR Y%=D%-1 TO 0 STEP -1 440DATA !fkeys,17,19 simulates Ctrl + Fkey. 180READ a$ 450DATA.000000000000004. 190FOR X%=1 TO W% 460DATA.011111111111114. The keys are red but you can 200b$=MID$(a$,X%,1):IF b$="." THEN 470DATA.011111111111114. have other coloured keys merely 210SYS op$,&12C,H%,n$,X%-1,Y%,0 480DATA.011777717711114. by changing the leftmost digit of 220ELSE 490DATA.011711111711114. the icon flags in line 780. For 230SYS op$,&12A,H%,n$,X%-1,Y%,EVAL( 500DATA.011711111711114. example &9700613D for green "&"+b$):REM set pixel in sprite 510DATA.011777111711114. 240ENDIF 520DATA.0117111FF711114. keys or &2700613D for boring 250NEXT, 530DATA.0117111F8F11114. grey. 260SYS op$,&10C,H%,app$+".!Sprites" 540DATA.0117111F88F1114. Drag'N Drop Summer 2017 | dragdrop.co.uk | facebook.com/dragdropmag | Page 39 Drag ’N Drop Volumes 1-8 Index supply 1i130 All Sorted 7 Heaps of Data (article) This index is organised with a 8bit: BBC Retro Software Update 2i27 reference (e.g. application name) or (article) 2i125 All Sorted 8 Quicker Sorting article/listing/series title followed by 8bit: Game On (article) 2i417 (article) 2i312 the volume issue number page. 8bit: Game On 2 (article) 3i19 All Sorted 9 Strands & the Merge 8bit: Look Who?s Calling 2i219 sort revisited (article) 2i46 &CAFE (series) 7i140, 7i241 8bit: Repton The Lost Realms AltTab 0.42 1i13 105 key UK layout mechanical 2i319 Amcog Development Kit (review) keyboard (review) 7i310 8bit: Speak your mind (article) 1i2 8i429 1i35 Traffic Signs (article) 5i17 22 AMPlayer 1.41 8i34 20th Century Fonts (advert) 8i210 Anatomy of a Drawfile (article) 4i4 21st Century Computing (article) A Front End for CDFaker (article) 29, 5i236, 5i327 4i25 7i224 APDL 1i32 24bit colour 5i247 A simple thumbnailer (article) 6i147 Arcade BBS 8i44 256 colour palette switching (article) A Trip Round the Chocolate Factory ArcSimp 1i13 8i134 (article) 1i320 ARM7TDMI Coprocessor 1i129 256 colours 4i210, 4i39, 5i247 World (article) 4i227 Armcode bit pattern demo (listing) 32bitting sound modules (article) Acorn speech system 1i222 5i232 7i213 Acorn World in Pictures 1i120 Armcode for Beebsters (series) 8i1 3D Wireframe Graphics (series), 7i1 Adding document information to PDF 30, 8i228 29, 7i243 files 3i46 ARMini computer 2i32 55 BBC Micro Books 4i321, 4i417 ADFFS 2.61 8i43 ARMini computer 3i33 7segment LCD 5i36 All Sorted 1 (article) 1i19 ArmSort 4.08 3i44 76489 chip 1i222 All Sorted 10 Hacks & Tricks Artworks Viewer 2.14b 1i43 8bit roundup (article) 1i129 (article) 3i210 Attack of the Raspberry Macaroons 8bit roundup (article) 1i2 22 All Sorted 11 Hacks & Tricks (listing) 8i414 8bit roundup (article) 2i119 (article) 3i39 Autofocus utility (listing) 8i142 8bit roundup New Releases from All Sorted 12 Mashing it Together awk 2i325 Retro Software (article) 3i319 (article) 3i410 8bit Roundup: Retro Software All Sorted 13 Timsort 4i433 Backdrops (Desktop Heroes article) Roundup 3i415 All Sorted 2 (article) 1i122 1i318 8bit: BBC ARM7TDI Upgrade 1i1 All Sorted 3 (article) 1i27 BarFree 3i35 29 All Sorted 4 (article) 1i310 Basalt 1.50 3i44 8bit: BBC GoMMC (article) 2i123 All Sorted 5 (article) 1i411 Basic V for the 8bit: BBC RAM Disc (article) 2i119 All Sorted 6 the Merge Sort (article) (book review) 6i36 8bit: BBC Repairing your power 2i14 BBC Micro Games Retrospective Drag'N Drop Summer 2017 | www.dragdrop.co.uk | Page 42 (articles) 4i326, 4i411, 5i261 Converting the PMS Manual (article) DrawPrint 1i34, 2i23, 2i44, 3i44, BBC Microbit 6i43 4i449 5i23, 5i45 BBC Playground 4i410 ConvImgs 8i34 Drawrite (listing) 5i410 BBFlash 0.03 3i44 ConvText application (listing) 8i211 DrawWorks Millennium 2i33 Beagleboard 1i115 CSV2DTA listing 6i322 1i14 BeagleboardXM 1i42 Currency Exchange 8i43 DTAFormat (Draw Text Area BeebIt 0.61 2i44 Cyborg 2.20 8i43 Formatter) listing 6i323 Beginner's Tips 5i12, 5i22 BgrndCtrl 1i25 DLink DNS323 (article) 1i329 Easiwriter 9.12 5i104 Birmingham 2009 1i220 DayCalc 1.06 2i13 Eastor (listing) 4i34 Bitcoin (article) 5i344, 6i136 DDE 22 3i15 Eastor 8bit (listing) 4i45 Bookmaker 2.15 3i23 Delegate review 6i145 Easy CSD (article and listing) 6i159 Bookmarking with PrintPDF (article) Demos 1i116 Easy Scroll (article and listing) 6i2 1i435 DeskEdit (review) 6i37 14 bubble sort 1i19 Desktop Function Keys application Edit Search/Replace (article) 5i430 (listing) 8i439 Electron Pi Keyboard Kit 8i45 C programming see CSide Desktop Heroes 1i118, 1i216, 1i3 Elesar keyboard review 7i310 CSide (series) 6i161, 6i430, 7i1 18, 5i16 Envelope Editor application (listing) 27, 7i327 Desktop makeover with Themes 8i423 Calendars with Yahoo & Organizer (article) 5i133 Exif 6i125 (article) 2i132 Desktop OXO (listing) 8i327 Calibra 3.23 3i23 Desktop Retro Gaming (series) 7i1 Fade presentation software (article) Change your Perspective (article) 18, 7i232 3i216 1i135 DigitalCD 3.10 8i44 FAT32FS 1.39 3i23 Christmas Show in Pictures 1i220 DirSync 1.10 3i15 Father Xmas's Crakers (listing) 7i1 Cineworks 4i446 DisAssem 3.26 8i15 42 Closer 1.01 8i14 DiscKnight 2i34 FFmpeg 1.21 3i35 CloudFS 8i44 DIY Draw (article) 4i426 Fibonacci Wallpaper (listing) 8i139 Cogs 1.22 1i34 DIY Pointers (article) 8i230 Files Inside Out (article) 6i155 Col256 (listing) 5i247 Doing more with text (series) 5i340, Files of the World (series) 6i39, 6i4 Colour Coordinated (article) 5i247 5i426 17, 7i14, 7i27, 8i15 Combining Documents with PrintPDF Doktor the no nonsense toolbar Firefox 2.0.0.21 1i13 (article) 2i136 (article) 3i26 Fireworks 1.35 5i23 Composing with Milktytracker (article) Draggit (app) 5i225 Fireworkz 2.20 8i14 7i329 Drawing with Draw Part 1 (article) Fireworkz Manuals 3i43 Contact Sharing with Organizer 1i4 1i138 First Steps with RISC OS (book 31 DrawJot (listing) 7i412 review) 6i36 contact us page (Web Log) 1i14 DrawJot (listing) 7i412 Flappy Fluffy (listing) 7i311

Drag'N Drop Summer 2017 | www.dragdrop.co.uk | Page 43 Flicker (article) 3i16 Hexen II: Hammer of Thyrion 3i43 LuaFox 1.30 3i15 Floozy (listing) 8i118 Hints & Tips (series) 7i223 Form Filler (Desktop Heroes article) Hitachi LCD see LCD Backpack M/Code Scrolling Stars (article and 5i16 HongKong 160 3i44 listing) 8i114 FormFiller 1.14 3i23 Hopper 5i46 Mae2PMS (listing) 5i243 Forth on the Pi (article) 8i111 House of Cards 1.06 2i23 Maestro to PMS converter (article) Frontender 5i128 Huddersfield 2009 1i120 5i241 Fun Time (article) 2i222 Magic Mushrooms 1.12 3i44 Fuse (Free Unix Spectrum Emulator) I2C, IIC 6i105 MakeDraw 2.10 1i13 3i35 Iconbar Animation (article and listing) MakeDraw 2.30 1i25 8i310 Maletofemale jumper lead 5i36 Games Panel Designer (listing) 5i4 Iconv 0.11 2i23 Manic Mole (listing) 4i116 16 Ident1 6i43, 8i32 Mashing it Together All Sorted 12 GCC 4.1.4 8i23 IMAP (article) 3i116 (article) 3i410 Gem Drop 2i323 Impact 3.51 8i44 Match Points (article) 2i223 Geneaology Records 3i33 InfoZip 3.07 3i44 MBBack 2.01 2i13 Get Archiving with ZipFE (article) Inside Drag 'N Drop (article) 5i337 MBBack release 8 1i25 5i128 InterGIF 3i15 MBOX Alert 2i33 Get Set For Digital Updating your Internet Message Access Protocol MemAlloc module (listing) 8i139 RiscTV card for the digital age 3i116 Messenger Pro 6.06 3i43 (article) 2i429 Introduction to Unicode (article) 5i1 Meteors 5i45 Getting started with RISC OS on the 20 Microsoft Office File Block (article) Raspberry Pi (review) 4i216 3i336 Getting started with RISC OS: a Joining PDF files 3i45 MiniTime 1.07 8i44 refresher (Beginner's tips) 5i44 Jpegtran 3i23 Module Auto 32Bitter application Ghostscript on RISC OS (series) (listing) 8i215 7i37, 7i48 KevMon 1.01 3i23 Module Saver module (listing) 8i2 Gnome Sort All Sorted 3 (article) 41 1i27 LCD Backpack (series) 6i15, 6i231 Module Surgery (series) 7i215 Gofer Sort (article) 2i415 LEDs (GPIO) 5i126, 5i24 Moptops (review) 8i220 GPIO for Beginners (series) 5i126, Legends of Magic (review) 7i119 MoreDesk 2i34 5i24, 5i36 Linking Basic Programs (article) 7i3 MoreDesk (Desktop Heroes article) GPIO pinout 5i24 14 1i216 Graded text (listing) 5i238 Listing Programs (Beginners tips) Morse Code (program) 5i26 GraphDraw 3.02 8i34 5i22 Mountain Panic 4i410 London Show 2009 1i15 Mountain Panic (review) 5i350 Harinezumi 0.07 8i44 Lua 2i325 Mr Frog's Armcode Corner 5i232, Hay Jump (listing) 7i422 Luafox 1.21 2i34 5i458, 6i143, 6i234. 7i25

Drag'N Drop Summer 2017 | www.dragdrop.co.uk | Page 44 Mr Miner (listing) 6i221 PasteKeys 0.6 1i13 Python Bside the C (article) 7i46 MsgMon 1.01 1i43 PDF 3.00.1.20 1i43 Python Primary School (series) 6i4 MTP 0.21 5i14 PDF 3.00.1.21 2i23 9, 7i110, 7i226, 7i317, 8i124, Mug Show (advert) 5i41 PDF 3.02.1.23 2i34 8i233, 8i314 Multitasking with Null Events PDF Maker (article) 1i233 (article) 7i418 PDF Suite (article) 1i233 Quizmaster 5i45 Murnong 1.31 1i13 PDFTools 3i35 Quizmaster review 6i106 Murnong 1.50 2i13 Perl 2i324 Murnong 2.10 2i23 Philips Music Scribe see PMS RComp Tablet 3i33 Music Man (article) 3i427 Philips Music Writer see PMS Raspberry Pi Assembly Language for Music Ripper's Toolkit 3 1i34 Photodesk 3.10 2i34 Beginners (review) 4i217 Music Writing with PMS (series) 4i2 PhotoDesk 3.10 (32 bit) 3i15 Raspberry Pi RISC OS System 18, 4i311, 4i418, 5i135 Piball (game) 5i18 Revelaed (review) 5i260 Mycalc (app) 5i226 Piball (listing) 5i113 Raspberry Pi User guide (review) Picano 8i430 4i216 Netfetch 3.65 3i33 Pico (review) 5i49 RDPClient 1i34 Netsurf 3.0 4i44 PICprog 1.54 1i13 RDSP 0.22 8i43 New Breed Software 2i323 Pieces of String (article) 3i418 Recursion computer show 8i43 Newshound 1.52 2i23 Pipedream 5i46 Remembering filetypes (Beginner's NewsUK 5i14 Pipeworkx 6i312 tips) 5i32 No time to make the tea (article) 6i3 PlayIt 3i35, 3i44 Reporter 1.66 2i44 28 Plingstore 5i14 Retro Software 1i133 OddEven sort 1i310 Pluto 3.10 5i23 Retro Software Revealed (article) Openvector, Opengrid, Drawplus PMS see Music writing with PMS 1i133 3.30 1i43 PMS 3.61 6i43 Rhapsody 4 6i43 Openvector, Opengrid, Drawplus PostScript programming see Files of RISC OS 5.2 Rom chips 5i13 3.32 2i23 the World RISC OS 5.23 8i44, 8i47 Openvector, Opengrid, Drawplus Potted History of Acorn 5i45 RISC OS 6 Pinboard A quick tour 3.37 3i23 Powerbase 9.70 1i25 (article) 1i227 Overlord 6i45 PrintPDF 0.80 1i43 RISC OS 6.2 (Select 6i1) What's New PrintPDF Queue Process in Pictures (article) 1i235 Packman 0.3 2i13 2i137 RISC OS Classic ROMs Collection Packman Packge Manager 0.05 2i4 ProCAD+ 1.08 5i45 CD 2i33 4 ProSound 2.01 8i15 RISC OS Font System (article) 5i3 Pal256 (listing) 5i248 Pursuit Curves 3i314 35 PANL (listing) 5i416 Putting the bits together (article) 6i1 RISC OS FR 8i14 Parallel Lines Pattern 3i218 38 RISC OS In Education Does it have Passman 1.00 5i203 Python 2i325 A Future? (article) 2i331

Drag'N Drop Summer 2017 | www.dragdrop.co.uk | Page 45 RISC OS London Show 2011 guide Snapper 2i13 SystemDisc 1.01 5i23 3i127 Snapper 1.70 3i44 RISC OS PiTop (article) 7i35 Snes9x 3i35 TaskW 5i223 RISC OS Programming in BASIC SokoBas 2i44 TBA Software 2i413 (series) 3i220, 3i339, 3i423, Sony Mini CDR Station MCS1 6i3 TBX C++ Library 0.4 3i15 5i434, 6i216, 6i316, 6i420, 7i2 27 Techwriter 9.12 5i14 36, 8i321, 8i434 Sound (article) 4i123 Teetfort 2i323 RISC OS Sound System (article) SoundCon32 (article) 7i220 Text Area Utilities (article) 6i322 8i25 Source Code Management Tool 1i4 Text>Draw 1.32 8i13 RISCBook Go! 8i13 24 The Archives (article) 1i14 RiscDSP see RDSP Sourcery 1 (article) 1i324 The Beagle Has Landed (article) RiscOSM (review) 5i47 Sourcery Source Code Management 1i115 ROOL Roundup & Wakefield 2011 2 (article) 1i424 The Big Book of the Raspberry Pi Guide 2i311 Sourcery Source Code Management (review) 5i260 Rotated Areas in Draw (article) 3i2 3 (article) 2i126 The Book of Draw Stuff 6i32 26 South West Show 2010 in pictures The Difference Words can Make Rotated graded text (listing) 5i240 1i319 (article) 3i345 RTF see Files of the World Sphagetti with different sauces The Exif Files (article) 6i125 (article) 6i426 The Icon Bar 8i44 Safestore 3i33 SPI Bus (article) 5i310 The Merge Sort (article) 2i18 Safestore (Desktop Heroes article) Sprite Pool 5i228 The Rise of Retro Software (article) 1i118 Sprites (series) 3i348, 3i430, 4i16, 1i226 ScreenGrabber 2.21 1i13 4i222, 4i316, 4i439 Themes 5i133 Scripting with and without StrongEd stable sorts 1i126 ThemeSetup 5i133 (article) 2i324 Stave Paper application (listing) 8i4 Ticker 0.87 3i23 Scrolling starfield (article) 5i334 19 Timsort 4i433 Scrolling stars (listing) 5i334 Stick and Drag (article) 5i223 Tracing Outlines (article) 8i239 Selection and shell sorts (article) Sticky programming 5i223 Traffic Signs (Weblog article) 5i17 1i411 Strands & The Merge Sort Revisited TranJPEG 1.33 8i13 Selling on eBay with Netsurf 4i214 2i46 Type from PDF (article) 4i16 Sid Slug (listing) 8i221 Stripping email headers with Lua Simple Video Editing using (article) 2i327 Unicode 5i120, 5i456 Cineworks (article) 4i446 StrongHelp 2.90 8i44 UnitConv 2.32 3i23 Single tasking (Beginner's tips) 5i12 StudioSound 2.05 8i15 Upgrading to Messenger Pro 6 SiteMatch 240f 3i44 Super Pack 6 4i44 (article) 2i423 Sky Pi HDD (article) 5i439 SuperDoku 1.23 1i25 Upgrading to RISC OS 5.23 (article) Small Changes in Design 8i430 SWILister module (listing) 8i331 8i47 SmartMenu 0.21a 1i13 SyncDiscs 1.22 2i13 URLtoIE 1.40 3i44

Drag'N Drop Summer 2017 | www.dragdrop.co.uk | Page 46 User Sprite Areas (article) 5i419 Web Log Dart (article) 3i18 User Voices II (article) 5i346 Web Log File converters 6i321 Xeroid (review) 7i421 Using Cineworks (series) 4i446, Web Log Google Alerts (article) 5i123 2i14 ZipFE 5i128 Using Fireworkz (series) 4i321, 4i4 Web Log Google Buzz (article) Zmac 2i23 23, 5i130 Web Log Google mail (article) 1i4 Using IDE Compact Flash Cards with 3 a RiscPC (article) 2i427 Web Log iconbar.com (article) 1i2 Using IMAP in Messenger Pro 6 6 (article) 3i118 Web Log Label Templates Using RDSP (series) 8i36, 8i49 Web Log ReachBy.com (article) 1i14 Varieties of Numerical Experience Web Log riscos.info (article) 1i26 (article) 4i230 Web Log travelinesoutheast.org Vectoroids 2i323 7i425 Vintage Computing Festival (article) Web Loig Gumtree (article) 7i126 1i422 WebChange 2.95.26 3i35 Vpod Review Change your WebGen 2.52 5i15 Perspective (article) 1i135 Why Not Basic? (artice) 6i211 VRML Viewer 1.01 1i13 Wimp events 5i229 Windows Metafiles 7i14 Wakefield Show 2010 guide 1i39 WinEd tutorial (article) 5i251 Wakefield Show 2011 in pictures Winglebith (game) 5i210 2i432 Winglebith (listing) 5i215 Wakefield Show 2012 guide 3i343 Wispy 8i34 Wallace Goes Walking (game) 5i3 WMF see Windows Metafiles 16 Working with NonLatin Languages Wallace Goes Walking (listing) 5i3 on RISC OS (article) 2i228 21 Working with PDFs (article) 3i45 Waltz Alice 5i135 Working with Unicode (series) 5i1 Web Change 2.95.21 1i43 20, 5i456 Web Log A Free Online Diary Wrangler 1.07 3i44 (article) 2i23 Writing a simple RISC OS app Web Log Blogging on RISC OS (series) 5i226, 5i325, 6i132, 2i35 6i27 Web Log British Newspaper Writing for Drag 'N Drop (article) 6i3 Archive 3i36 20 Web Log BT image history 3i28 Writing Games for RISC 6i45

Drag'N Drop Summer 2017 | www.dragdrop.co.uk | Page 47