{"id":2747,"date":"2015-06-02T20:00:12","date_gmt":"2015-06-02T18:00:12","guid":{"rendered":"http:\/\/www.retro.co.za\/blog\/?p=2747"},"modified":"2015-09-04T11:02:31","modified_gmt":"2015-09-04T09:02:31","slug":"some-code-i-wrote-years-ago","status":"publish","type":"post","link":"http:\/\/www.retro.co.za\/blog\/?p=2747","title":{"rendered":"Some code I wrote, years ago"},"content":{"rendered":"<p>Early eighties, to be more precise.<\/p>\n<p>You see, there was Apple DOS (Disk Operating System). And then there were other Disk Operating Systems, faster and therefore better (OK, faster because very often they left out a whole lot of error checking that the Apple DOS performed &#8212; but if you have an error there&#8217;s not much you can do about it so why check :-)<\/p>\n<p>One of these was <a href=\"http:\/\/www.atarimagazines.com\/creative\/v9n12\/90_DiversiDOS.php\">Diversi-DOS<\/a>. It had a <a href=\"https:\/\/ia601903.us.archive.org\/29\/items\/Diversi-DOS_v2c_1982_DSR\/Diversi-DOS_v2c_1982_DSR.gif?cnt=0\">splash screen<\/a>, which of course was stored on the disk, along with display code.<\/p>\n<p>So of course I promptly hacked the splash screen to display my own message. Recently came across a printout from way back then. So here we have <a href=\"http:\/\/www.retro.co.za\/blog\/wp-content\/uploads\/2015\/02\/glissando.jpg\">some of the first machine code I ever wrote<\/a>.<\/p>\n<pre>086C-\u00a0\u00a0 20 2F FB\u00a0\u00a0\u00a0 JSR\u00a0\u00a0 $FB2F       JSR $FB2F and $FC58 clears the High-Res and normal text screens.\r\n086F-\u00a0\u00a0 20 58 FC\u00a0\u00a0\u00a0 JSR\u00a0\u00a0 $FC58\r\n0872-\u00a0\u00a0 A0 00\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 LDY\u00a0\u00a0 #$00\r\n0874-\u00a0\u00a0 B9 A2 08\u00a0\u00a0\u00a0 LDA\u00a0\u00a0 $08A2,Y     Y=0, load from $08A2 (it's down there, 8D 8D 8D etc)\r\n0877-\u00a0\u00a0 F0 07\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 BEQ\u00a0\u00a0 $0880       If the value you've loaded is zero, go to $0880 ($00 marks the end)\r\n0879-\u00a0\u00a0 20 ED FD\u00a0\u00a0\u00a0 JSR\u00a0\u00a0 $FDED       Otherwise print the character ($FDED prints the accumulator A), increment Y\r\n087C-\u00a0\u00a0 C8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 INY\r\n087D-\u00a0\u00a0 4C 74 08\u00a0\u00a0\u00a0 JMP\u00a0\u00a0 $0874       And get the next character\r\n0880-\u00a0\u00a0 A0 04\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 LDY\u00a0\u00a0 #$04        Now, load Y with 4 and jump to the subroutine at $0895, below.\r\n0882-\u00a0\u00a0 20 95 08\u00a0\u00a0\u00a0 JSR\u00a0\u00a0 $0895\r\n0885-\u00a0\u00a0 C8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 INY\r\n0886-\u00a0\u00a0 C0 20\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CPY\u00a0\u00a0 #$20\r\n0888-\u00a0\u00a0 D0 F8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 BNE\u00a0\u00a0 $0882       Then, increment Y and loop, stop when Y reaches $20 (32 -- $ indicates base 16)\r\n088A-\u00a0\u00a0 20 95 08\u00a0\u00a0\u00a0 JSR\u00a0\u00a0 $0895\r\n088D-\u00a0\u00a0 88\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 DEY               Now do the same thing, but from $20 down to 4.\r\n088E-\u00a0\u00a0 C0 04\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CPY\u00a0\u00a0 #$04\r\n0890-\u00a0\u00a0 D0 F8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 BNE\u00a0\u00a0 $088A\r\n0892-\u00a0\u00a0 4C FD 08\u00a0\u00a0\u00a0 JMP\u00a0\u00a0 $08FD       And then exit (back to Diversi-DOS)\r\n\r\n                                      So here we are with Y=4..31, then 32..5\r\n0895-\u00a0\u00a0 98\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 TYA               Move Y to X via A (because this is how a 6502 works) Second TYA maybe a bug*\r\n0896-\u00a0\u00a0 AA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 TAX\r\n0897-\u00a0\u00a0 98\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 TYA\r\n0898-\u00a0\u00a0 8D 30 C0\u00a0\u00a0\u00a0 STA\u00a0\u00a0 $C030       Click the speaker by accessing $C030 (yes, one bit, on or off, no Soundblaster)\r\n089B-\u00a0\u00a0 20 A8 FC\u00a0\u00a0\u00a0 JSR\u00a0\u00a0 $FCA8       $FCA8 delays for some time dependent on the value in A\r\n089E-\u00a0\u00a0 CA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 DEX               Now decrement X and loop, i.e. do this as many times as the value in Y\r\n089F-\u00a0\u00a0 D0 F6\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 BNE\u00a0\u00a0 $0897\r\n08A1-\u00a0\u00a0 60\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 RTS               And return\r\n08A2-\u00a0\u00a0 8D 8D 8D\u00a0\u00a0\u00a0 STA\u00a0\u00a0 $8D8D       This is the text that gets displayed by the code up there from $872 to $87E\r\n08A5-\u00a0\u00a0 8D 8D 8D\u00a0\u00a0\u00a0 STA\u00a0\u00a0 $8D8D       Says \"COPIED BY THE DIRTY DEVIL\"** in the middle(-ish) of the 40 x 24 screen\r\n08A8-\u00a0\u00a0 8D 8D 8D\u00a0\u00a0\u00a0 STA\u00a0\u00a0 $8D8D\r\n08AB-\u00a0\u00a0 8D 8D 8D\u00a0\u00a0\u00a0 STA\u00a0\u00a0 $8D8D\r\n08AE-\u00a0\u00a0 A0 A0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 LDY\u00a0\u00a0 #$A0        $A0 = Spaces\r\n08B0-\u00a0\u00a0 A0 A0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 LDY\u00a0\u00a0 #$A0\r\n08B2-\u00a0\u00a0 A0 A0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 LDY\u00a0\u00a0 #$A0\r\n08B4-\u00a0\u00a0 C3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ???               $C3 = C, $CF = O and so on.\r\n08B5-\u00a0\u00a0 CF\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ???\r\n08B6-\u00a0\u00a0 D0 C9\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 BNE\u00a0\u00a0 $0881\r\n08B8-\u00a0\u00a0 C5 C4\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CMP\u00a0\u00a0 $C4\r\n08BA-\u00a0\u00a0 A0 C2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 LDY\u00a0\u00a0 #$C2\r\n08BC-\u00a0\u00a0 D9 A0 D4\u00a0\u00a0\u00a0 CMP\u00a0\u00a0 $D4A0,Y\r\n08BF-\u00a0\u00a0 C8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 INY\r\n08C0-\u00a0\u00a0 C5 A0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CMP\u00a0\u00a0 $A0\r\n08C2-\u00a0\u00a0 C4 C9\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CPY\u00a0\u00a0 $C9\r\n08C4-\u00a0\u00a0 D2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ???\r\n08C5-\u00a0\u00a0 D4\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ???\r\n08C6-\u00a0\u00a0 D9 A0 C4\u00a0\u00a0\u00a0 CMP\u00a0\u00a0 $C4A0,Y\r\n08C9-\u00a0\u00a0 C5 D6\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CMP\u00a0\u00a0 $D6\r\n08CB-\u00a0\u00a0 C9 CC\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CMP\u00a0\u00a0 #$CC\r\n08CD-\u00a0\u00a0 00\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 BRK<\/pre>\n<p>* As I said, the second TYA is not needed, TAX doesn&#8217;t change A. But it&#8217;s from the earlier code, which didn&#8217;t vary the time of each &#8220;note&#8221;.<\/p>\n<p>** Which is what I called myself waybackwhen.<\/p>\n<p>The result is a<a href=\"http:\/\/www.retro.co.za\/ccc\/apple2\/glissando.wma\"> sliding note<\/a> that slows down as it gets lower, then speeds up again. At full volume (erm, there only <em>was<\/em> one volume) it&#8217;s guaranteed to get attention. Of course <a href=\"http:\/\/artscene.textfiles.com\/intros\/APPLEII\/\">some guys<\/a> were <a href=\"http:\/\/artscene.textfiles.com\/intros\/APPLEII\/areality.gif\">much<\/a> <a href=\"http:\/\/artscene.textfiles.com\/intros\/APPLEII\/bfloppyc.gif\">much<\/a> <a href=\"http:\/\/artscene.textfiles.com\/intros\/APPLEII\/brogersc.gif\">more<\/a> into this than I was.<\/p>\n<p>Stay tuned (might take a few years) for when I blog about the digitized voice I once hacked into the Diversi-DOS startup screen&#8230; yes, you can recognizably <a href=\"http:\/\/rich12345.tripod.com\/8bitaudio\/index.html\">digitize a voice<\/a> using only one bit.<\/p>\n<p>&nbsp;<span hidden class=\"__iawmlf-post-loop-links\" data-iawmlf-links=\"[{&quot;id&quot;:553,&quot;href&quot;:&quot;http:\\\/\\\/www.atarimagazines.com\\\/creative\\\/v9n12\\\/90_DiversiDOS.php&quot;,&quot;archived_href&quot;:&quot;https:\\\/\\\/web-wp.archive.org\\\/web\\\/20260415091604\\\/https:\\\/\\\/www.atarimagazines.com\\\/creative\\\/v9n12\\\/90_DiversiDOS.php&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-05-30 21:29:20&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-04 23:27:08&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-10 08:50:21&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-14 01:16:41&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-18 02:08:14&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-22 19:32:26&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-30 18:25:44&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-07-14 15:15:24&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-07-28 11:36:47&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-08-04 20:56:10&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-08-10 00:16:41&quot;,&quot;http_code&quot;:200}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-10 00:16:41&quot;,&quot;http_code&quot;:200},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:554,&quot;href&quot;:&quot;https:\\\/\\\/ia601903.us.archive.org\\\/29\\\/items\\\/Diversi-DOS_v2c_1982_DSR\\\/Diversi-DOS_v2c_1982_DSR.gif?cnt=0&quot;,&quot;archived_href&quot;:&quot;https:\\\/\\\/web-wp.archive.org\\\/web\\\/20150103042503\\\/https:\\\/\\\/ia601903.us.archive.org\\\/29\\\/items\\\/Diversi-DOS_v2c_1982_DSR\\\/Diversi-DOS_v2c_1982_DSR.gif?cnt=0&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-05-30 21:29:25&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-04 23:27:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-10 08:50:23&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-14 01:16:41&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-18 02:08:16&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-22 19:32:24&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-30 18:25:44&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-14 15:15:20&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-28 11:36:45&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-08-04 20:56:11&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-08-10 00:16:41&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-10 00:16:41&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:555,&quot;href&quot;:&quot;http:\\\/\\\/www.retro.co.za\\\/ccc\\\/apple2\\\/glissando.wma&quot;,&quot;archived_href&quot;:&quot;&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[],&quot;broken&quot;:false,&quot;last_checked&quot;:null,&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:556,&quot;href&quot;:&quot;http:\\\/\\\/artscene.textfiles.com\\\/intros\\\/APPLEII&quot;,&quot;archived_href&quot;:&quot;https:\\\/\\\/web-wp.archive.org\\\/web\\\/20260403065441\\\/http:\\\/\\\/artscene.textfiles.com\\\/intros\\\/APPLEII\\\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-05-30 21:29:51&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-08 12:28:48&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-12 22:14:40&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-16 00:08:38&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-08-04 20:56:43&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-04 20:56:43&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:557,&quot;href&quot;:&quot;http:\\\/\\\/artscene.textfiles.com\\\/intros\\\/APPLEII\\\/areality.gif&quot;,&quot;archived_href&quot;:&quot;https:\\\/\\\/web-wp.archive.org\\\/web\\\/20210514010654\\\/http:\\\/\\\/artscene.textfiles.com\\\/intros\\\/APPLEII\\\/areality.gif&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-05-30 21:29:56&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-08 12:28:48&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-12 22:14:27&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-04 06:12:49&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-16 00:08:27&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-08-04 20:56:44&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-04 20:56:44&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:558,&quot;href&quot;:&quot;http:\\\/\\\/artscene.textfiles.com\\\/intros\\\/APPLEII\\\/bfloppyc.gif&quot;,&quot;archived_href&quot;:&quot;https:\\\/\\\/web-wp.archive.org\\\/web\\\/20210514082359\\\/http:\\\/\\\/artscene.textfiles.com\\\/intros\\\/APPLEII\\\/bfloppyc.gif&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-05-30 21:30:00&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-08 12:28:51&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-12 22:14:28&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-04 06:11:55&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-08-04 20:56:45&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-04 20:56:45&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:559,&quot;href&quot;:&quot;http:\\\/\\\/artscene.textfiles.com\\\/intros\\\/APPLEII\\\/brogersc.gif&quot;,&quot;archived_href&quot;:&quot;https:\\\/\\\/web-wp.archive.org\\\/web\\\/20230521095535\\\/http:\\\/\\\/artscene.textfiles.com\\\/intros\\\/APPLEII\\\/brogersc.gif&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-05-30 21:30:12&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-08 12:28:51&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-12 22:14:31&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-16 00:08:36&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-08-04 20:56:45&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-04 20:56:45&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:560,&quot;href&quot;:&quot;http:\\\/\\\/rich12345.tripod.com\\\/8bitaudio\\\/index.html&quot;,&quot;archived_href&quot;:&quot;https:\\\/\\\/web-wp.archive.org\\\/web\\\/20250823161031\\\/https:\\\/\\\/rich12345.tripod.com\\\/8bitaudio\\\/index.html&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-05-30 21:30:21&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-06-08 12:28:52&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-06-12 22:14:31&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-07-16 00:08:29&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-08-04 20:56:44&quot;,&quot;http_code&quot;:404}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-04 20:56:44&quot;,&quot;http_code&quot;:404},&quot;process&quot;:&quot;done&quot;}]\"><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Early eighties, to be more precise. You see, there was Apple DOS (Disk Operating System). And then there were other Disk Operating Systems, faster and therefore better (OK, faster because very often they left out a whole lot of error checking that the Apple DOS performed &#8212; but if you have an error there&#8217;s not much you can do about it so why check :-) One of these was Diversi-DOS. It had a splash screen, which of course was stored on the disk, along with display code. So of course I promptly hacked the splash screen to display my own&#46;&#46;&#46;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[66,31,83],"tags":[],"class_list":["post-2747","post","type-post","status-publish","format-standard","hentry","category-computers","category-geek","category-get-off-my-lawn"],"_links":{"self":[{"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2747","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2747"}],"version-history":[{"count":21,"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2747\/revisions"}],"predecessor-version":[{"id":2953,"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2747\/revisions\/2953"}],"wp:attachment":[{"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2747"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2747"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.retro.co.za\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2747"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}