Title: [Tasks]: Basics of coding on RISC OS, level 3 · Issue #37 · RISC-OS-Community/CodingOnRISC-OS · GitHub
Open Graph Title: [Tasks]: Basics of coding on RISC OS, level 3 · Issue #37 · RISC-OS-Community/CodingOnRISC-OS
X Title: [Tasks]: Basics of coding on RISC OS, level 3 · Issue #37 · RISC-OS-Community/CodingOnRISC-OS
Description: Contact Details (optional) No response Background Level 1: Getting the source (from Git) Level 2: Making system calls to flash an LED This task outlines level 3 of the course, a little bit harder, building on levels 1 and 2. Based on fee...
Open Graph Description: Contact Details (optional) No response Background Level 1: Getting the source (from Git) Level 2: Making system calls to flash an LED This task outlines level 3 of the course, a little bit harder, ...
X Description: Contact Details (optional) No response Background Level 1: Getting the source (from Git) Level 2: Making system calls to flash an LED This task outlines level 3 of the course, a little bit harder, ...
Opengraph URL: https://github.com/RISC-OS-Community/CodingOnRISC-OS/issues/37
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"[Tasks]: Basics of coding on RISC OS, level 3","articleBody":"### Contact Details (optional)\n\n_No response_\n\n### Background\n\nLevel 1: Getting the source (from Git)\r\nLevel 2: Making system calls to flash an LED\r\n\r\nThis task outlines level 3 of the course, a little bit harder, building on levels 1 and 2. Based on feedback given at the meeting where level 2 was shown and comments on the videos this next instalment should:\r\n\r\n- Continue to be single tasking/command line based\r\n- Comprise more than 1 source file (as a means to introduce using a makefile, or needing to link 2 or more objects together, or the equivalent in the respective language, eg. `LIBRARY` in BASIC)\r\n- Comment on where to find background material in the PRMs or StrongHelp manuals (rather than just pulling magic numbers out of the air)\r\n- Handle the error return from a `_swix` call (or equivalent, eg. `SYS` in BASIC)\r\n- Use file I/O (contrasting the language built ins like `fopen()` or `OPENIN` with SWI OS_File and OS_Find)\r\n\r\nA tutorial example which takes a sprite or JPEG, queries its dimensions, and prints them to the console. With a suitable framework this could be extended for other types by the avid reader like PNG or GIF, and take the general form\r\n\r\n`*ImageInfo \u003cimagefile\u003e`\r\n\r\nAt level 2 we presented (in order of [most number of views](https://www.youtube.com/playlist?list=PLEnraaJ9VQfXFQCVSmUgabVmdvqmLDgZZ) first)\r\n\r\n1. Assembler (gas syntax, ObjAsm optional)\r\n2. C (with the DDE, gcc optional)\r\n3. C++ (in CFront, g++ optional)\r\n4. Python\r\n5. BBC BASIC\r\n6. Lua\r\n\r\nDon't be limited by these 6 though! All languages for which there is a RISC OS variant are up for grabs if volunteers have a particular area of interest they'd like to produce.\n\n### Definition of Done\n\nPaolo has kindly offered to 'top \u0026 tail' any videos submitted. \r\n\r\nThe meeting to review this topic is 03-Jun-2023, so ideally material needs to be complete by 27-May-2023 to give time for editing.\r\n\r\nThis task would be complete once the new level 3 videos are edited and available on youtube for developers.\n\n### Code of Conduct\n\n- [X] I agree to follow this project's Code of Conduct","author":{"url":"https://github.com/rps102","@type":"Person","name":"rps102"},"datePublished":"2023-05-24T06:30:28.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":1},"url":"https://github.com/37/CodingOnRISC-OS/issues/37"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:a9131af9-a74b-ecad-2fcf-343d35582fb9 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 9D96:8EA1A:DF70B1:12C6458:698F7BEB |
| html-safe-nonce | ead0e9801af3787c057afad4d3f54f9e745853c663c95066cfa518e1c7e7a8fb |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5RDk2OjhFQTFBOkRGNzBCMToxMkM2NDU4OjY5OEY3QkVCIiwidmlzaXRvcl9pZCI6IjM0NzY0MDk3MjMwMDcyMzcwOTkiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | e9be60ec16cafb0cb9566840aa92e7f6bca847b1ec8326065c8eca9a64ee6e97 |
| hovercard-subject-tag | issue:1723267908 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/RISC-OS-Community/CodingOnRISC-OS/37/issue_layout |
| twitter:image | https://opengraph.githubassets.com/89691f026145f4e875510b3232c98cfb8c900e56e2a3f7f8027480f1ebce81ef/RISC-OS-Community/CodingOnRISC-OS/issues/37 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/89691f026145f4e875510b3232c98cfb8c900e56e2a3f7f8027480f1ebce81ef/RISC-OS-Community/CodingOnRISC-OS/issues/37 |
| og:image:alt | Contact Details (optional) No response Background Level 1: Getting the source (from Git) Level 2: Making system calls to flash an LED This task outlines level 3 of the course, a little bit harder, ... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | rps102 |
| hostname | github.com |
| expected-hostname | github.com |
| None | 4763146d672e989a41c6c0bd715790c0c59341d9f855508c8a3196e1e480b8f7 |
| turbo-cache-control | no-preview |
| go-import | github.com/RISC-OS-Community/CodingOnRISC-OS git https://github.com/RISC-OS-Community/CodingOnRISC-OS.git |
| octolytics-dimension-user_id | 81999052 |
| octolytics-dimension-user_login | RISC-OS-Community |
| octolytics-dimension-repository_id | 541232344 |
| octolytics-dimension-repository_nwo | RISC-OS-Community/CodingOnRISC-OS |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 541232344 |
| octolytics-dimension-repository_network_root_nwo | RISC-OS-Community/CodingOnRISC-OS |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 8b442a4e0d8e68ffb351da689499018fde153e49 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width