http://worldofdragon.org/api.php?action=feedcontributions&user=Admin&feedformat=atomThe Dragon Archive - User contributions [en]2024-03-28T14:30:50ZUser contributionsMediaWiki 1.31.15http://worldofdragon.org/index.php?title=Serial_Numbers&diff=9931Serial Numbers2024-01-09T08:27:12Z<p>Admin: /* Dragon 32 Serial Numbers (White Label) */</p>
<hr />
<div>== Dragon 32 Serial Numbers (White Label) ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000202 DG || Dragon 32 || Swansea<br />
|-<br />
| 000249 DG || Dragon 32 || Swansea<br />
|-<br />
| 000349 DG || Dragon 32 || Swansea<br />
|-<br />
| 000388 DG || Dragon 32 || Swansea<br />
|-<br />
| 000610 DG || Dragon 32 || Swansea<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 001331 DG || Dragon 32 || Swansea<br />
|-<br />
| 001424 DG || Dragon 32 || Swansea<br />
|-<br />
| 001510 DG || Dragon 32 || Swansea<br />
|-<br />
| 001776 DG || Dragon 32 || Swansea<br />
|-<br />
| 002464 DG || Dragon 32 || Swansea<br />
|-<br />
| 003300 DG || Dragon 32 || Swansea<br />
|-<br />
| 004524 DG || Dragon 32 || Swansea<br />
|-<br />
| 004553 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 013110 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 019405 DG || Dragon 32 || Swansea<br />
|-<br />
| 021235 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 029156 DG || Dragon 32 || Swansea<br />
|-<br />
| 033793 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035488 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 051466 DG || Dragon 32 || Swansea<br />
|-<br />
| 051493 DG || Dragon 32 || Swansea<br />
|-<br />
| 052194 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 057402 DG || Dragon 32 || Swansea<br />
|-<br />
| 059553 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 078681 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 080799 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 082406 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 085842 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 103566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107235 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107656 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 109635 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112463 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 118291 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 133913 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 145126 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 154942 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 155244 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 155938 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 158756 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 166689 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 208013 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 209509 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 209167 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 210479 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 219199 DG || Dragon 32 (Secam) || Port Talbot<br />
|-<br />
| 212734 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 237196 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 237766 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 243249 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249677 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 253680 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 291980 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 294353 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 294992 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 296432 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
== Dragon 32 (EUROHARD) Serial Numbers (Yellow or White Label) ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 008713 EC || Dragon 32 || Caceres<br />
|-<br />
| 012157 EC || Dragon 32 || Caceres<br />
|}<br />
<br />
== Dragon 64 Serial Numbers (Yellow Label) ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000078 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 003627 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004524 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004860 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 008963 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010899 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012512 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012752 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019189 LT || Dragon 64 || Port Talbot<br />
|}<br />
<br />
== Dragon 64 Serial Numbers (White Label) ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 20989 DH || Dragon 64 || Port Talbot<br />
|-<br />
| 20117 DH || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
== Dragon 64 (EUROHARD) Serial Numbers (Red Label) ==<br />
{| class="wikitable" <br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 003211 EC || Dragon 64 || Caceres<br />
|-<br />
| 004900 EC || Dragon 64 || Caceres<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| 009403 || Dragon 64 || Caceres<br />
|}<br />
<br />
== Dragon 200 (EUROHARD) Serial Numbers (Blue Label) ==<br />
{| class="wikitable" <br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 001929 EC || Dragon 200 || Caceres<br />
|-<br />
| 002245 EC || Dragon 200 || Caceres<br />
|-<br />
| 002653 EC || Dragon 200 || Caceres<br />
|-<br />
| 003597 EC || Dragon 200 || Caceres<br />
|}<br />
<br />
== Dragon TANO Serial Numbers ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon Tano || New Orleans<br />
|-<br />
| 002912 || Dragon Tano || New Orleans<br />
|-<br />
| 004521 || Dragon Tano || New Orleans<br />
|-<br />
| 004672 || Dragon Tano || New Orleans<br />
|-<br />
| 005527 || Dragon Tano || New Orleans<br />
|-<br />
| 005529 || Dragon Tano || New Orleans<br />
|}<br />
<br />
== Dragon MSX Serial Numbers ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| RH 000037 || Dragon MSX || Hong Kong<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9929Serial Numbers2023-12-11T09:48:03Z<p>Admin: /* Dragon 64 Serial Numbers (White Label) */</p>
<hr />
<div>== Dragon 32 Serial Numbers (White Label) ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000202 DG || Dragon 32 || Swansea<br />
|-<br />
| 000349 DG || Dragon 32 || Swansea<br />
|-<br />
| 000610 DG || Dragon 32 || Swansea<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 001331 DG || Dragon 32 || Swansea<br />
|-<br />
| 001424 DG || Dragon 32 || Swansea<br />
|-<br />
| 001510 DG || Dragon 32 || Swansea<br />
|-<br />
| 001776 DG || Dragon 32 || Swansea<br />
|-<br />
| 002464 DG || Dragon 32 || Swansea<br />
|-<br />
| 003300 DG || Dragon 32 || Swansea<br />
|-<br />
| 004524 DG || Dragon 32 || Swansea<br />
|-<br />
| 004553 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 013110 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 019405 DG || Dragon 32 || Swansea<br />
|-<br />
| 021235 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 029156 DG || Dragon 32 || Swansea<br />
|-<br />
| 033793 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035488 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 051466 DG || Dragon 32 || Swansea<br />
|-<br />
| 051493 DG || Dragon 32 || Swansea<br />
|-<br />
| 052194 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 057402 DG || Dragon 32 || Swansea<br />
|-<br />
| 059553 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 080799 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 082406 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 085842 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 103566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107235 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107656 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 109635 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112463 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 118291 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 133913 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 145126 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 154942 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 155244 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 155938 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 158756 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 166689 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 208013 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 209509 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 209167 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 210479 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 219199 DG || Dragon 32 (Secam) || Port Talbot<br />
|-<br />
| 212734 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 237196 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 237766 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 243249 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249677 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 253680 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 294353 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 294992 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 296432 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
== Dragon 32 (EUROHARD) Serial Numbers (Yellow or White Label) ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 008713 EC || Dragon 32 || Caceres<br />
|-<br />
| 012157 EC || Dragon 32 || Caceres<br />
|}<br />
<br />
== Dragon 64 Serial Numbers (Yellow Label) ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000078 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 003627 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004524 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004860 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 008963 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010899 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012512 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012752 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019189 LT || Dragon 64 || Port Talbot<br />
|}<br />
<br />
== Dragon 64 Serial Numbers (White Label) ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 20989 DH || Dragon 64 || Port Talbot<br />
|-<br />
| 20117 DH || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
== Dragon 64 (EUROHARD) Serial Numbers (Red Label) ==<br />
{| class="wikitable" <br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 003211 EC || Dragon 64 || Caceres<br />
|-<br />
| 004900 EC || Dragon 64 || Caceres<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| 009403 || Dragon 64 || Caceres<br />
|}<br />
<br />
== Dragon 200 (EUROHARD) Serial Numbers (Blue Label) ==<br />
{| class="wikitable" <br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 001929 EC || Dragon 200 || Caceres<br />
|-<br />
| 002245 EC || Dragon 200 || Caceres<br />
|-<br />
| 002653 EC || Dragon 200 || Caceres<br />
|-<br />
| 003597 EC || Dragon 200 || Caceres<br />
|}<br />
<br />
== Dragon TANO Serial Numbers ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon Tano || New Orleans<br />
|-<br />
| 002912 || Dragon Tano || New Orleans<br />
|-<br />
| 004521 || Dragon Tano || New Orleans<br />
|-<br />
| 004672 || Dragon Tano || New Orleans<br />
|-<br />
| 005527 || Dragon Tano || New Orleans<br />
|-<br />
| 005529 || Dragon Tano || New Orleans<br />
|}<br />
<br />
== Dragon MSX Serial Numbers ==<br />
{| class="wikitable"<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| RH 000037 || Dragon MSX || Hong Kong<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Moon_Cresta&diff=9903Moon Cresta2023-09-25T13:06:59Z<p>Admin: </p>
<hr />
<div>{| align="right" valign="top"<br />
|{{Infobox Game<br />
|Image = [[Image:MoonCresta_Screenshot01.png|center|300px|Title image from the game]]<br />
|Gamenumber = <br />
|Developer = [[John Martin]]<br />
|Company = [[Incentive Software]]<br />
|Publisher = [[Incentive Software]]<br />
|Musician = <br />
|HVSC = <br />
|Release = [[:Category:Game_1986|1986]]<br />
|Platform = [[Dragon 32]] or [[Dragon 64]]<br />
|Genre = [[:Category:Arcade|Arcade]]<br />
|Gamemode = 1P<br />
|Operation = {{Keyboard}}{{Joystick1}}<br />
|Media = {{Cassette}}<br />
|Language = {{EN}} <br />
|Info = <br />
}}<br />
|}<br />
<br />
Use joystick or keyboard to move Rocket Ships (1-3). Shoot and avoid the onslaught of attacking Kamikaze Aliens but beware as their tactics and formations will change as your skill increases.<br />
<br />
== Screenshots ==<br />
<br />
[[File:MoonCresta_Screenshot02.png|300px]][[File:MoonCresta_Screenshot03.png|300px]][[File:MoonCresta_Screenshot04.png|300px]]<br />
<br />
== Packaging ==<br />
<br />
[[File:MoonCresta_Inlay_Front.jpg|300px]][[File:MoonCresta_Inlay_Back.jpg|300px]]<br><br />
[[File:MoonCresta_Tape.jpg|300px]]<br />
<br />
<br />
== Download ==<br />
<br />
* [https://archive.worldofdragon.org/browse/?downloads/Software/Dragon/Incentive%20Software/Moon%20Cresta Moon Cresta] (zipped CAS file)<br />
<br />
== Links ==<br />
<br />
* [http://www.cpc-power.com/index.php?page=detail&num=1457 Moon Cresta] on the Amstrad CPC<br />
<br />
[[Category:Games]] [[Category:Game_In_Archive]] [[Category:Game_Online]] [[Category:Game_1986]] [[Category:Arcade]]</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9852Main Page2022-06-26T09:49:03Z<p>Admin: /* September 2021 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center"><font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font><br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== June 2022 ===<br />
<br />
'''Updated''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Serrat%2C%20Pere Pere Serrats AGD Conversions, Infocom Engine and much more]<br />
<br />
=== September 2021 ===<br />
<br />
Some MIA titles now acquired and archived plus some uploads from Stewart Orchard to fill some gaps - Thank You !!<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Home%20Finance Abacus - Home Finance]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Music%20Tutor Abacus - Music Tutor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Spreadsheet Abacus - Spreadsheet]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Compusense%20Ltd/Compusense%20Source%20Tapes/Volume%203%20-%20Hi-Res%20Screen%20Dump%20for%20Epson Compusense - Source Tapes Vol 3]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Ball%20Dozer Kouga - Ball Dozer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Ball%20Dozer Kouga - Ball Dozer Clone Kit]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Revenge%20of%20the%20Alien%20Bongo%20Beast Kouga - ROTABB Clone Kit]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/W.E.%20McGowen/Printer%20Control%20%5BEpson%5D McGowen - Printer Control]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Stewart%20Orchard Stewart Orchard - Black Planet Demo and Source]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Stewart%20Orchard Stewart Orchard - Grid Sprite Editor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/TEIPEN%20MWNCI/Blockdown TEIPEN MWNCI - Blockdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Dragon%20User%20Magazine Dragon User - Type-In Programs from Dragon User]<br />
<br />
=== August 2021 ===<br />
<br />
Thanks to Andy Fox the archive got its hands on some master tapes from Programmers Guild UK. One of them contains an unreleased game for the Dragon and the others are the master tapes for existing releases.<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Death%20Deadnaught Programmers Guild - Death Dreadnaught - UNRELEASED!!]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Protector Programmers Guild - Protector - MASTER 3rd November 1983]<br />
<br />
=== July 2021 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Magic%20Midnight/Lachlan%21 Magic Midnight - Lachlan!]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Deadwood&diff=9837Deadwood2022-03-08T13:16:12Z<p>Admin: </p>
<hr />
<div>{| align="right" valign="top"<br />
|{{Infobox Game<br />
|Image = [[Image:DEADWOOD_LOAD.PNG|center|300px|Titleimage from the game]]<br />
|Gamenumber = <br />
|Company = [[A & F Software]]<br />
|Developer = <br />
|Publisher = [[A & F Software]]<br />
|Musician = <br />
|HVSC = <br />
|Release = [[:Category:Game_1983|1983]]<br />
|Platform = [[Dragon 32]] [[Dragon 64]]<br />
|Genre = Platform<br />
|Gamemode = [[1P Only]]<br />
|Operation = {{Keyboard}}<br />
|Media = {{Cassette}}<br />
|Language = {{EN}} <br />
|Info = <br />
}}<br />
|}<br />
<br />
<br />
<br />
== Reviews ==<br />
<br />
<br />
<br />
== Screenshots ==<br />
<br />
[[File:DEADWOOD_01.PNG|300px]]<br />
[[File:DEADWOOD_02.PNG|300px]]<br />
<br />
== Packaging ==<br />
<br />
[[File:DEADWOOD_BOX_01.JPG|300px]]<br />
<br />
== Download ==<br />
<br />
[https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Deadwood Deadwood]<br />
<br />
[[Category:Games]] [[Category:Game_Not_In_Archive]] [[Category:Game_Not_Online]][[Category:Game_Bad_Dump]]</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9821Main Page2021-12-16T18:25:14Z<p>Admin: /* Whats New in the Wiki? */</p>
<hr />
<div>__NOTOC__<br />
<div align="center"><font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font><br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== September 2021 ===<br />
<br />
Some MIA titles now acquired and archived plus some uploads from Stewart Orchard to fill some gaps - Thank You !!<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Home%20Finance Abacus - Home Finance]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Music%20Tutor Abacus - Music Tutor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Spreadsheet Abacus - Spreadsheet]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Compusense%20Ltd/Compusense%20Source%20Tapes/Volume%203%20-%20Hi-Res%20Screen%20Dump%20for%20Epson Compusense - Source Tapes Vol 3]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Ball%20Dozer Kouga - Ball Dozer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Ball%20Dozer Kouga - Ball Dozer Clone Kit]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Revenge%20of%20the%20Alien%20Bongo%20Beast Kouga - ROTABB Clone Kit]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/W.E.%20McGowen/Printer%20Control%20%5BEpson%5D McGowen - Printer Control]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Stewart%20Orchard Stewart Orchard - Black Planet Demo and Source]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Stewart%20Orchard Stewart Orchard - Grid Sprite Editor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/TEIPEN%20MWNCI/Blockdown TEIPEN MWNCI - Blockdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Dragon%20User%20Magazine Dragon User - Type-In Programs from Dragon User]<br />
<br />
<br />
<br />
=== August 2021 ===<br />
<br />
Thanks to Andy Fox the archive got its hands on some master tapes from Programmers Guild UK. One of them contains an unreleased game for the Dragon and the others are the master tapes for existing releases.<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Death%20Deadnaught Programmers Guild - Death Dreadnaught - UNRELEASED!!]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Protector Programmers Guild - Protector - MASTER 3rd November 1983]<br />
<br />
=== July 2021 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Magic%20Midnight/Lachlan%21 Magic Midnight - Lachlan!]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9820Main Page2021-12-16T18:19:03Z<p>Admin: /* Whats New in the Wiki? */</p>
<hr />
<div>__NOTOC__<br />
<div align="center"><font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font><br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== September 2021 ===<br />
<br />
Some MIA titles now acquired and archived plus some uploads from Stewart Orchard to fill some gaps - Thank You !!<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Home%20Finance Abacus - Home Finance]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Music%20Tutor Abacus - Music Tutor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Spreadsheet Abacus - Spreadsheet]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Compusense%20Ltd/Compusense%20Source%20Tapes/Volume%203%20-%20Hi-Res%20Screen%20Dump%20for%20Epson Compusense - Source Tapes Vol 3]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Ball%20Dozer Kouga - Ball Dozer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Ball%20Dozer Kouga - Ball Dozer Clone Kit]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Revenge%20of%20the%20Alien%20Bongo%20Beast Kouga - ROTABB Clone Kit]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/W.E.%20McGowen/Printer%20Control%20%5BEpson%5D McGowen - Printer Control]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Stewart%20Orchard Stewart Orchard - Black Planet Demo and Source]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Stewart%20Orchard Stewart Orchard - Grid Sprite Editor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/TEIPEN%20MWNCI/Blockdown TEIPEN MWNCI - Blockdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Dragon%20User%20Magazine Dragon User - Type-In Programs from Dragon User]<br />
<br />
<br />
<br />
=== August 2021 ===<br />
<br />
Thanks to Andy Fox the archive got its hands on some master tapes from Programmers Guild UK. One of them contains an unreleased game for the Dragon and the others are the master tapes for existing releases.<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Death%20Deadnaught Programmers Guild - Death Dreadnaught - UNRELEASED!!]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Protector Programmers Guild - Protector - MASTER 3rd November 1983]<br />
<br />
=== July 2021 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Magic%20Midnight/Lachlan%21 Magic Midnight - Lachlan!]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''December 2021'''<br />
Downloads area is currently broken following a PHP upgrade by my hosting company. I need to debug the script and see what functions need to be modified.<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9815Serial Numbers2021-10-25T11:18:12Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers (White Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000349 DG || Dragon 32 || Swansea<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 001424 DG || Dragon 32 || Swansea<br />
|-<br />
| 001510 DG || Dragon 32 || Swansea<br />
|-<br />
| 001776 DG || Dragon 32 || Swansea<br />
|-<br />
| 002464 DG || Dragon 32 || Swansea<br />
|-<br />
| 003300 DG || Dragon 32 || Swansea<br />
|-<br />
| 004524 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 019405 DG || Dragon 32 || Swansea<br />
|-<br />
| 021235 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 029156 DG || Dragon 32 || Swansea<br />
|-<br />
| 033793 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035488 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 051493 DG || Dragon 32 || Swansea<br />
|-<br />
| 052194 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 057402 DG || Dragon 32 || Swansea<br />
|-<br />
| 059553 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 080799 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 103566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107235 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107656 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 109635 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 118291 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 133913 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 158756 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 166689 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 208013 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 209509 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 210479 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 212734 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 237196 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 237766 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 243249 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249677 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 253680 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 294353 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers (Yellow Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000078 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004860 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010899 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012512 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012752 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019189 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 64 (EUROHARD) Serial Numbers (Red Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 004900 EC || Dragon 64 || Caceres<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| 009403 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 200 (EUROHARD) Serial Numbers (Blue Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002245 EC || Dragon 200 || Caceres<br />
|-<br />
| 002653 EC || Dragon 200 || Caceres<br />
|-<br />
| 003597 EC || Dragon 200 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 002912 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
|-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9814Serial Numbers2021-10-25T11:10:18Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers (White Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000349 DG || Dragon 32 || Swansea<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 001776 DG || Dragon 32 || Swansea<br />
|-<br />
| 003300 DG || Dragon 32 || Swansea<br />
|-<br />
| 004524 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 021235 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 033793 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035488 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 051493 DG || Dragon 32 || Swansea<br />
|-<br />
| 052194 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 057402 DG || Dragon 32 || Swansea<br />
|-<br />
| 059553 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107235 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107656 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 109635 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 208013 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 209509 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 210479 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 212734 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 243249 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers (Yellow Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000078 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004860 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012512 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012752 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019189 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 64 (EUROHARD) Serial Numbers (Red Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 004900 EC || Dragon 64 || Caceres<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| 009403 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 200 (EUROHARD) Serial Numbers (Blue Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002245 EC || Dragon 200 || Caceres<br />
|-<br />
| 002653 EC || Dragon 200 || Caceres<br />
|-<br />
| 003597 EC || Dragon 200 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 002912 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
|-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9784Main Page2021-09-06T15:15:41Z<p>Admin: /* August 2021 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center"><font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font><br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== September 2021 ===<br />
<br />
Some MIA titles now acquired and archived plus some uploads from Stewart Orchard to fill some gaps - Thank You !!<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Home%20Finance Abacus - Home Finance]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Music%20Tutor Abacus - Music Tutor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Abacus/Spreadsheet Abacus - Spreadsheet]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Compusense%20Ltd/Compusense%20Source%20Tapes/Volume%203%20-%20Hi-Res%20Screen%20Dump%20for%20Epson Compusense - Source Tapes Vol 3]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Ball%20Dozer Kouga - Ball Dozer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Ball%20Dozer Kouga - Ball Dozer Clone Kit]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Kouga/Revenge%20of%20the%20Alien%20Bongo%20Beast Kouga - ROTABB Clone Kit]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/W.E.%20McGowen/Printer%20Control%20%5BEpson%5D McGowen - Printer Control]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Stewart%20Orchard Stewart Orchard - Black Planet Demo and Source]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Stewart%20Orchard Stewart Orchard - Grid Sprite Editor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/TEIPEN%20MWNCI/Blockdown TEIPEN MWNCI - Blockdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Dragon%20User%20Magazine Dragon User - Type-In Programs from Dragon User]<br />
<br />
<br />
<br />
=== August 2021 ===<br />
<br />
Thanks to Andy Fox the archive got its hands on some master tapes from Programmers Guild UK. One of them contains an unreleased game for the Dragon and the others are the master tapes for existing releases.<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Death%20Deadnaught Programmers Guild - Death Dreadnaught - UNRELEASED!!]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Protector Programmers Guild - Protector - MASTER 3rd November 1983]<br />
<br />
=== July 2021 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Magic%20Midnight/Lachlan%21 Magic Midnight - Lachlan!]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9783Main Page2021-09-06T15:05:27Z<p>Admin: /* Recent Dragon Downloads Changes */</p>
<hr />
<div>__NOTOC__<br />
<div align="center"><font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font><br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== August 2021 ===<br />
<br />
Thanks to Andy Fox the archive got its hands on some master tapes from Programmers Guild UK. One of them contains an unreleased game for the Dragon and the others are the master tapes for existing releases.<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Death%20Deadnaught Programmers Guild - Death Dreadnaught - UNRELEASED!!]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Protector Programmers Guild - Protector - MASTER 3rd November 1983]<br />
<br />
=== July 2021 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Magic%20Midnight/Lachlan%21 Magic Midnight - Lachlan!]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9782Serial Numbers2021-08-17T20:01:20Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers (White Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000349 DG || Dragon 32 || Swansea<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 003300 DG || Dragon 32 || Swansea<br />
|-<br />
| 004524 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 021235 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035488 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 051493 DG || Dragon 32 || Swansea<br />
|-<br />
| 052194 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107235 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107656 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 109635 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 208013 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 209509 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 210479 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 212734 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 243249 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers (Yellow Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000078 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004860 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012512 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012752 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019189 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 64 (EUROHARD) Serial Numbers (Red Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 004900 EC || Dragon 64 || Caceres<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| 009403 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 200 (EUROHARD) Serial Numbers (Blue Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002245 EC || Dragon 200 || Caceres<br />
|-<br />
| 002653 EC || Dragon 200 || Caceres<br />
|-<br />
| 003597 EC || Dragon 200 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 002912 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
|-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9781Serial Numbers2021-08-17T15:57:20Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers (White Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000349 DG || Dragon 32 || Swansea<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 003300 DG || Dragon 32 || Swansea<br />
|-<br />
| 004524 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 021235 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035488 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107235 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107656 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 109635 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 208013 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 212734 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 243249 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers (Yellow Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000078 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004860 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012512 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012752 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019189 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 64 (EUROHARD) Serial Numbers (Red Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 004900 EC || Dragon 64 || Caceres<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| 009403 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 200 (EUROHARD) Serial Numbers (Blue Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002245 EC || Dragon 200 || Caceres<br />
|-<br />
| 002653 EC || Dragon 200 || Caceres<br />
|-<br />
| 003597 EC || Dragon 200 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 002912 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
|-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9780Serial Numbers2021-08-17T06:42:55Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers (White Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000349 DG || Dragon 32 || Swansea<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 003300 DG || Dragon 32 || Swansea<br />
|-<br />
| 004524 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 021235 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035488 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107235 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 107656 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 109635 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 212734 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 243249 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers (Yellow Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000078 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004860 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012512 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012752 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019189 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 64 (EUROHARD) Serial Numbers (Red Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 004900 EC || Dragon 64 || Caceres<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| 009403 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 200 (EUROHARD) Serial Numbers (Blue Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002245 EC || Dragon 200 || Caceres<br />
|-<br />
| 002653 EC || Dragon 200 || Caceres<br />
|-<br />
| 003597 EC || Dragon 200 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 002912 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
|-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9779Serial Numbers2021-08-16T17:22:01Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers (White Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000349 DG || Dragon 32 || Swansea<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 021235 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035488 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers (Yellow Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012512 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 64 (EUROHARD) Serial Numbers (Red Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 004900 EC || Dragon 64 || Caceres<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| 009403 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 200 (EUROHARD) Serial Numbers (Blue Label)<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002245 EC || Dragon 200 || Caceres<br />
|-<br />
| 003597 EC || Dragon 200 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 002912 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
|-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9778Serial Numbers2021-08-16T17:20:41Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000349 DG || Dragon 32 || Swansea<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 021235 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035488 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012512 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 64 (EUROHARD) Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 004900 EC || Dragon 64 || Caceres<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| 009403 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable" <br />
|+ Dragon 200 (EUROHARD) Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002245 EC || Dragon 200 || Caceres<br />
|-<br />
| 003597 EC || Dragon 200 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 002912 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
|-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9777Serial Numbers2021-08-16T17:00:20Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 (EUROHARD) Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
|-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9776Serial Numbers2021-08-16T16:54:50Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 019151 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 (EUROHARD) Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9775Serial Numbers2021-08-16T16:53:05Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000943 DG || Dragon 32 || Swansea<br />
|-<br />
| 005464 DG || Dragon 32 || Swansea<br />
|-<br />
| 007632 DG || Dragon 32 || Swansea<br />
|-<br />
| 018343 DG || Dragon 32 || Swansea<br />
|-<br />
| 024397 DG || Dragon 32 || Swansea<br />
|-<br />
| 034062 DG || Dragon 32 || Swansea<br />
|-<br />
| 035688 DG || Dragon 32 || Swansea<br />
|-<br />
| 035722 DG || Dragon 32 || Swansea<br />
|-<br />
| 047598 DG || Dragon 32 || Swansea<br />
|-<br />
| 052845 DG || Dragon 32 || Swansea<br />
|-<br />
| 053007 DG || Dragon 32 || Swansea<br />
|-<br />
| 057333 DG || Dragon 32 || Swansea<br />
|-<br />
| 064870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 094662 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 DG || Dragon 32 || Port Talbot<br />
|-<br />
| 350581 DG || Dragon 32 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 001215 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 002081 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 004948 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 010931 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 012556 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 LT || Dragon 64 || Port Talbot<br />
|-<br />
| 21142 DH || Dragon 64 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 (EUROHARD) Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| 004521 || Dragon 64 || New Orleans<br />
-<br />
| 005529 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9774Serial Numbers2021-08-16T08:59:04Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000943 || Dragon 32 || Swansea<br />
|-<br />
| 005464 || Dragon 32 || Swansea<br />
|-<br />
| 018343 || Dragon 32 || Swansea<br />
|-<br />
| 024397 || Dragon 32 || Swansea<br />
|-<br />
| 034062 || Dragon 32 || Swansea<br />
|-<br />
| 035688 || Dragon 32 || Swansea<br />
|-<br />
| 035722 || Dragon 32 || Swansea<br />
|-<br />
| 047598 || Dragon 32 || Swansea<br />
|-<br />
| 052845 || Dragon 32 || Swansea<br />
|-<br />
| 053007 || Dragon 32 || Swansea<br />
|-<br />
| 057333 || Dragon 32 || Swansea<br />
|-<br />
| 094662 || Dragon 32 || Port Talbot<br />
|-<br />
| 112306 || Dragon 32 || Port Talbot<br />
|-<br />
| 246870 || Dragon 32 || Port Talbot<br />
|-<br />
| 247566 || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 || Dragon 32 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002081 || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 || Dragon 64 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 (EUROHARD) Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9773Serial Numbers2021-08-16T08:46:56Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 000943 || Dragon 32 || Swansea<br />
|-<br />
| 005464 || Dragon 32 || Swansea<br />
|-<br />
| 018343 || Dragon 32 || Swansea<br />
|-<br />
| 024397 || Dragon 32 || Swansea<br />
|-<br />
| 034062 || Dragon 32 || Swansea<br />
|-<br />
| 035688 || Dragon 32 || Swansea<br />
|-<br />
| 035722 || Dragon 32 || Swansea<br />
|-<br />
| 047598 || Dragon 32 || Swansea<br />
|-<br />
| 052845 || Dragon 32 || Swansea<br />
|-<br />
| 053007 || Dragon 32 || Swansea<br />
|-<br />
| 246870 || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 || Dragon 32 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002081 || Dragon 64 || Port Talbot<br />
|-<br />
| 005572 || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 || Dragon 64 || Port Talbot<br />
|-<br />
| 012284 || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 || Dragon 64 || Port Talbot<br />
|-<br />
| 016950 || Dragon 64 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 (EUROHARD) Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9772Serial Numbers2021-08-16T08:40:29Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 005464 || Dragon 32 || Swansea<br />
|-<br />
| 018343 || Dragon 32 || Swansea<br />
|-<br />
| 024397 || Dragon 32 || Swansea<br />
|-<br />
| 034062 || Dragon 32 || Swansea<br />
|-<br />
| 035688 || Dragon 32 || Swansea<br />
|-<br />
| 035722 || Dragon 32 || Swansea<br />
|-<br />
| 047598 || Dragon 32 || Swansea<br />
|-<br />
| 052845 || Dragon 32 || Swansea<br />
|-<br />
| 246870 || Dragon 32 || Port Talbot<br />
|-<br />
| 249678 || Dragon 32 || Port Talbot<br />
|-<br />
| 251378 || Dragon 32 || Port Talbot<br />
|-<br />
| 254481 || Dragon 32 || Port Talbot<br />
|-<br />
| 255254 || Dragon 32 || Port Talbot<br />
|-<br />
| 258711 || Dragon 32 || Port Talbot<br />
|-<br />
| 318363 || Dragon 32 || Port Talbot<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 005572 || Dragon 64 || Port Talbot<br />
|-<br />
| 007682 || Dragon 64 || Port Talbot<br />
|-<br />
| 011781 || Dragon 64 || Port Talbot<br />
|-<br />
| 013264 || Dragon 64 || Port Talbot<br />
|-<br />
| 015707 || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 || Dragon 64 || Port Talbot<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 (EUROHARD) Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 005216 || Dragon 64 || Caceres<br />
|-<br />
| 008778 || Dragon 64 || Caceres<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
<br />
{| class="wikitable"<br />
|+ Dragon TANO Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 002097 || Dragon 64 || New Orleans<br />
|-<br />
| Example || Example || Example<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9771Serial Numbers2021-08-16T08:14:38Z<p>Admin: </p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon 32 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 018343 || Dragon 32 || Swansea<br />
|-<br />
| 254481 || Dragon 32 || Port Talbot<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
{| class="wikitable"<br />
|+ Dragon 64 Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| 015707 || Dragon 64 || Port Talbot<br />
|-<br />
| 016566 || Dragon 64 || Port Talbot<br />
|-<br />
| Example || Example || Example<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Serial_Numbers&diff=9770Serial Numbers2021-08-16T08:11:49Z<p>Admin: Created page with "{| class="wikitable" |+ Dragon Serial Numbers |- ! Serial Number !! Model !! Factory |- | Example || Example || Example |- | Example || Example || Example |- | Example || Exam..."</p>
<hr />
<div>{| class="wikitable"<br />
|+ Dragon Serial Numbers<br />
|-<br />
! Serial Number !! Model !! Factory<br />
|-<br />
| Example || Example || Example<br />
|-<br />
| Example || Example || Example<br />
|-<br />
| Example || Example || Example<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Collectors_Corner&diff=9769Collectors Corner2021-08-16T08:10:25Z<p>Admin: </p>
<hr />
<div>== Collectors Corner - Or as rare as hens teeth ==<br />
<br />
<br />
This is a page dedicated to the truely rare items in the world of dragon. To be classed as rare and be mentioned on this page the items must:<br />
<br />
1. Be demonstratably known to exist - No rumours please<br />
<br />
2. Be Prototype or limited production/low sale numbers<br />
<br />
== Serial Numbers ==<br />
<br />
[[Serial Numbers|Serial Numbers]] - A log of known devices and serial numbers<br />
<br />
== Rare Hardware ==<br />
<br />
[[Pippin|Dragon 16K/Pippin/Project SAM]] - Evidence based on only 1 example known to exist out of 20 made.<br />
<br />
[[Project Alpha|Dragon Professional/Project Alpha]] - Evidence based on 2 known prototypes, 2 production examples, 1 more unknown and 1 motherboard. - Highest serial number known to date is 000008.<br />
<br />
[[Project Beta|Dragon 128/Project Beta]] - Evidence of 1 completed prototype and 1 motherboard.<br />
<br />
[[Dragon 200]] - It would appear that not many of these made it into release or still survive. Only a small number are known to exist in various collections which makes these quite rare.<br />
<br />
[http://archive.worldofdragon.org/index.php?title=Dragon_200#Dragon_200E Dragon 200-E] Variant of the Dragon 200, with a spanish keyboard, and a daughterboard with a new character set.<br />
<br />
[[Dragon MSX]] - There may be two different versions of the Dragon MSX. GEC obtained an MSX license and Dragon Data were reportedly working on an MSX machine prior to going bankrupt. The only definate version is the one Radofin made for Eurohard and of this only a very small number continue to exist with only 2 currently known about.<br />
<br />
== Rare Software ==<br />
<br />
[[A & F Software]] - '''[[Deadwood]] and [[Swashbuckler]]'''. These games were provided to A&F to market and sell, but the author became dissapointed in the success A&F were having. Having recently formed his own software house [[Quickbeam Software]] he withdrew them from A&F and released them as [[Tombstone and Cod Creek]] on the [[Quickbeam Software]] label. Thus these games were only available for a limited time from [[A & F Software]] and sold in limited numbers.<br />
<br />
[[Quickbeam Software]] - [[Metal-On-Metal]]. This game was very similar to Uridium on the Commodore C64 and was due for launch in 1988. An incomplete demo was seen at a 6809 show in that year but the game was never released by the author, reportedly due to a shrinking market. [[Six-A-Side Soccer]] is not rare, it was renamed to [[Indoor Football]] prior to release.<br />
<br />
[[Salamander Software]] - [[The White Cliffs of Dover]] - No evidence that this sequal to [[Wings of War]] was ever published, but a version of the game has turned up on a disk collection along with a pre-release version of [[Wings of War]]<br />
<br />
[[Wintersoft Software]] - [[Juxta-Position II: Usurpur of Rune]] - Believed to be completed and working on 64K, but never released.<br />
<br />
== Rare Peripherals ==<br />
<br />
[[Compusense Ltd]] - '''[[Dragon Plus]]''' - It is not known how many of these were sold, but currently only 5 are known to exist (currently not working) and none have appeared on ebay in the last 8 years. This add-in board gave the Dragon an additional 64Kb of RAM and an 80 column text only display via a 2nd video port.<br />
<br />
<br />
[[Category:Documentation]]</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9768Main Page2021-08-13T20:40:48Z<p>Admin: /* August 2021 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center"><font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font><br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== August 2021 ===<br />
<br />
Thanks to Andy Fox the archive got its hands on some master tapes from Programmers Guild UK. One of them contains an unreleased game for the Dragon and the others are the master tapes for existing releases.<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Death%20Deadnaught Programmers Guild - Death Dreadnaught - UNRELEASED!!]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Protector Programmers Guild - Protector - MASTER 3rd November 1983]<br />
<br />
=== July 2021 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Magic%20Midnight/Lachlan%21 Magic Midnight - Lachlan!]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9767Main Page2021-08-13T20:36:38Z<p>Admin: /* July 2021 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center"><font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font><br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== August 2021 ===<br />
<br />
Thanks to Andy Fox the archive got its hands on some master tapes from Programmers Guild UK. One of them contains an unreleased game for the Dragon and the others are the master tapes for existing releases.<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Death%20Deadnaught Programmers Guild - Death Dreadnaught - UNRELEASED!!]<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Programmers%20Guild/Protector Programmers Guild - Protector - MASTER 3rd November 1983]<br />
<br />
=== July 2021 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Magic%20Midnight/Lachlan%21 Magic Midnight - Lachlan!]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9738Main Page2021-07-16T19:37:43Z<p>Admin: /* November 2020 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center"><font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font><br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== July 2021 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Magic%20Midnight/Lachlan%21 Magic Midnight - Lachlan!]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Chuckie_Egg&diff=9735Chuckie Egg2021-07-04T19:40:56Z<p>Admin: </p>
<hr />
<div>{| align="right" valign="top"<br />
|{{Infobox Game<br />
|Image = [[Image:CHUCKIE_EGG_BOX_03.JPG|center]]<br />
|Gamenumber = <br />
|Company = [[A & F Software]]<br />
|Developer = [[Mike Webb]]<br />
|Publisher = [[A & F Software]]<br />
|Musician = <br />
|HVSC = <br />
|Release = [[:Category:Game_1983|1983]]<br />
|Platform = [[Dragon 32]] [[Dragon 64]]<br />
|Genre = [[:Category:Platform|Platform]]<br />
|Gamemode = [[1P Only]]<br />
|Operation = {{Keyboard}}<br />
|Media = {{Cassette}}<br />
|Language = {{EN}} <br />
|Info = <br />
}}<br />
|}<br />
<br />
As Hen-House Harry, the player must collect the twelve eggs positioned in each level, until a countdown timer reaches zero. In addition there are piles of seed which may be collected to increase points and stop the countdown timer for a while, but will otherwise be eaten by hens that patrol the level. If the player touches a hen or falls through a gap in the bottom of the level, he loses a life. Each level is made of solid platforms, ladders and occasionally lift platforms that constantly move upwards but upon leaving the top of the screen will reappear at the bottom.<br />
<br />
Eight levels are defined and are played initially under the watch of a giant caged duck. Upon completion of all eight the levels are played again without hens, but now pursued by the freed duck who is not affected by the positioning of platforms. A second completion of all eight levels yields a third play through with both hens and the duck. A fourth pass introduces additional hens. Finally, a fifth pass has the duck and additional hens moving at a greater speed. If the player completes all forty levels then they advance to 'level 41' which is in fact exactly the same as level 33.<br />
<br />
The player starts with five lives, but an extra life is awarded every 10,000 points.<br />
<br />
== Reviews ==<br />
<br />
=== Dragon User - July 1984 ===<br />
<br />
A firm that is better known for its BBC software is [[A & F Software]]. Like [[Microdeal]], they have apparently decided to diversify, and have included the Dragon in their list of micros. Chuckie Egg has an unusual setting - a farmyard. The object of the game is to obtain as many eggs as you can while avoiding strange creatures that seem to inhabit the farm. The display consists of several levels connected by ladders. The eggs, along with small piles of corn are lying on the ground. As you make your way around the farmyard, you can pick up the eggs and gain points. There are some rather mean-looking ducklings wandering about the screen just waiting to pounce on you, as well as a malevolent duck in a cage at the corner of the display. According to the program notes this is capable of producing mayhem in the peaceful farmyard, but it has yet to do anything unpleasant to me! <br />
<br />
Up to four people can play at the same time, and the scores are clearly shown on the display, as is a clock, quietly ticking away. When you have collected all the eggs on one screen, the display scrolls smoothly upwards, and you are faced with yet another section of the farmyard with slightly more complex surroundings. The game is very well written, and the difficulty levels are nicely gauged to allow steady progress through the different stages. There is a list of the top eight scores at the end, as well as the opportunity to redefine the control keys. If [[A & F Software]] can produce more programs like this for the Dragon, it will be no bad thing. This has to be my favourite program this month.<br />
<br />
== Screenshots ==<br />
<br />
[[File:CHUCKIE_EGG_LOAD.PNG|300px]]<br />
[[File:CHUCKIE_EGG_01.PNG|300px]]<br />
[[File:CHUCKIE_EGG_02.PNG|300px]]<br />
<br />
== Video ==<br />
<br />
{{#ev:dragonarchive|games/c/ChuckieEgg.mp4|500}}<br />
<br />
== Packaging ==<br />
<br />
[[File:ChuckieEgg_Inlay_1983.jpg|292px]][[File:ChuckieEgg_Inlay.jpg|300px]]<br><br />
[[File:ChuckieEgg_Tape_1983.jpg|296px]][[File:ChuckieEgg_Tape.jpg|300px]]<br />
<br />
== Download ==<br />
* [http://archive.worldofdragon.org/archive/index.php?dir=Tapes/Dragon/cas/&file=chuckie%20egg%20%281983%29%28a%20n%20f%20software%29%5B%21%5D.zip Chuckie Egg] (Zipped .CAS file)<br />
* [http://archive.worldofdragon.org/archive/index.php?dir=Tapes/Dragon/cas/&file=Chuckie%20Egg%20%281985%29%28A%26F%29%5B%21%5D%5Ba%5D.zip Chuckie Egg (Alternative version)] (Zipped .CAS file) (Dumped from original)<br />
<br />
== Links ==<br />
<br />
* [http://www.cpc-power.com/index.php?page=detail&num=2386 Chuckie Egg] on the Amstrad CPC<br />
* [http://www.bbcmicro.co.uk/game.php?id=25 Chuckie Egg] on the BBC Micro<br />
* [https://worldofspectrum.org/archive/software/games/chuckie-egg-anf-software Chuckie Egg] on the ZX Spectrum<br />
<br />
[[Category:Games]] [[Category:Game_In_Archive]] [[Category:Game_Online]] [[Category:Game_1983]] [[Category:Arcade]] [[Category:Platform]]</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9721Main Page2021-07-01T16:10:14Z<p>Admin: </p>
<hr />
<div>__NOTOC__<br />
<div align="center"><font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font><br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9676Memory Map2021-05-28T18:28:36Z<p>Admin: /* DIY PROJECTS */</p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ADDRESSES ==<br />
<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
FF01 PIA<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
FF03 PIA<br />
FF04 ACIA - D64/Alpha<br />
FF05 ACIA - D64/Alpha<br />
FF06 ACIA - D64/Alpha<br />
FF07 ACIA - D64/Alpha<br />
<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input - 0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd - 0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
65316 FF24 - Dragon Alpha PIA<br />
FF25 - Dragon Alpha PIA<br />
FF26 - Dragon Alpha PIA<br />
FF27 - Dragon Alpha PIA<br />
FF28 - Dragon Alpha 6850 Modem Port<br />
<br />
<br />
</pre><br />
<br />
== DISK CONTROLLERS ==<br />
<br />
<pre><br />
<br />
FF2C - Dragon Alpha FDC<br />
FF2D - Dragon Alpha FDC<br />
FF2E - Dragon Alpha FDC<br />
FF2F - Dragon Alpha FDC<br />
<br />
FF40 - Dragon FDC | CoCo FDC | CoCo SDC<br />
FF41 - Dragon FDC | CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF42 - Dragon FDC | CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF43 - Dragon FDC | CoCo FDC | CoCo SDC<br />
FF48 - Latch<br />
<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
FF50 - DragonMMC<br />
FF54 - DragonMMC<br />
FF56 - Dragon-MSX2+ | DragonMMC<br />
FF57 - Dragon-MSX2+<br />
FF58 - Dragon-MSX2+<br />
FF59 - Dragon-MSX2+<br />
FF5A - Dragon-MSX2+<br />
FF5B - Dragon-MSX2+<br />
FF5C - Dragon-MSX2+<br />
FF5D - Dragon-MSX2+<br />
FF5E - Dragon MSX2+<br />
<br />
FF76 - Dragon-MSX2+<br />
FF77 - Dragon-MSX2+<br />
FF78 - Dragon-MSX2+<br />
FF79 - Dragon-MSX2+<br />
FF7A - Dragon-MSX2+ | Orchestra 90<br />
FF7B - Dragon-MSX2+ | Orchestra 90<br />
FF7C - Dragon-MSX2+<br />
FF7D - Dragon-MSX2+<br />
FF7E - Dragon-MSX2+<br />
FF7F - Mega-Mini MPI | DOSPlus Extended<br />
<br />
FF90 - MooH<br />
FF91 - MooH<br />
FFA0 - MooH<br />
FFA1 - MooH<br />
FFA2 - MooH<br />
FFA3 - MooH<br />
FFA4 - MooH<br />
FFA5 - MooH<br />
FFA6 - MooH<br />
FFA7 - MooH<br />
FFA8 - MooH<br />
FFA9 - MooH<br />
FFAA - MooH<br />
FFAB - MooH<br />
FFAC - MooH<br />
FFAD - MooH<br />
FFAE - MooH<br />
FFAF - MooH<br />
<br />
<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9673Memory Map2021-05-28T15:22:52Z<p>Admin: /* INPUT/OUTPUT ROUTINES */</p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
FF01 PIA<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
FF03 PIA<br />
FF04 ACIA - D64/Alpha<br />
FF05 ACIA - D64/Alpha<br />
FF06 ACIA - D64/Alpha<br />
FF07 ACIA - D64/Alpha<br />
<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input - 0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd - 0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
65316 FF24 - Dragon Alpha PIA<br />
FF25 - Dragon Alpha PIA<br />
FF26 - Dragon Alpha PIA<br />
FF27 - Dragon Alpha PIA<br />
FF28 - Dragon Alpha 6850 Modem Port<br />
<br />
<br />
</pre><br />
<br />
== DISK CONTROLLERS ==<br />
<br />
<pre><br />
<br />
FF2C - Dragon Alpha FDC<br />
FF2D - Dragon Alpha FDC<br />
FF2E - Dragon Alpha FDC<br />
FF2F - Dragon Alpha FDC<br />
<br />
FF40 - Dragon FDC | CoCo FDC | CoCo SDC<br />
FF41 - Dragon FDC | CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF42 - Dragon FDC | CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF43 - Dragon FDC | CoCo FDC | CoCo SDC<br />
FF48 - Latch<br />
<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
FF50 - DragonMMC<br />
FF54 - DragonMMC<br />
FF56 - Dragon-MSX2+ | DragonMMC<br />
FF57 - Dragon-MSX2+<br />
FF58 - Dragon-MSX2+<br />
FF59 - Dragon-MSX2+<br />
FF5A - Dragon-MSX2+<br />
FF5B - Dragon-MSX2+<br />
FF5C - Dragon-MSX2+<br />
FF5D - Dragon-MSX2+<br />
<br />
FF76 - Dragon-MSX2+<br />
FF77 - Dragon-MSX2+<br />
FF78 - Dragon-MSX2+<br />
FF79 - Dragon-MSX2+<br />
FF7A - Dragon-MSX2+ | Orchestra 90<br />
FF7B - Dragon-MSX2+ | Orchestra 90<br />
FF7C - Dragon-MSX2+<br />
FF7D - Dragon-MSX2+<br />
<br />
FF90 - MooH<br />
FF91 - MooH<br />
FFA0 - MooH<br />
FFA1 - MooH<br />
FFA2 - MooH<br />
FFA3 - MooH<br />
FFA4 - MooH<br />
FFA5 - MooH<br />
FFA6 - MooH<br />
FFA7 - MooH<br />
FFA8 - MooH<br />
FFA9 - MooH<br />
FFAA - MooH<br />
FFAB - MooH<br />
FFAC - MooH<br />
FFAD - MooH<br />
FFAE - MooH<br />
FFAF - MooH<br />
<br />
<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9672Memory Map2021-05-28T15:20:14Z<p>Admin: </p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
These refer to DRAGONDOS.<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
Decimal value 255/127 if no fire but pressed<br />
Dec value 254 or 126 if right joystick<br />
button pressed<br />
Dec value 253 or 125 if left joystick fire<br />
button pressed<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
FF04 ACIA - D64/Alpha<br />
FF05 ACIA - D64/Alpha<br />
FF06 ACIA - D64/Alpha<br />
FF07 ACIA - D64/Alpha<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input<br />
0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd<br />
0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
65316 FF24 - Dragon Alpha PIA<br />
FF25 - Dragon Alpha PIA<br />
FF26 - Dragon Alpha PIA<br />
FF27 - Dragon Alpha PIA<br />
FF28 - Dragon Alpha 6850 Modem Port<br />
<br />
<br />
</pre><br />
<br />
== DISK CONTROLLERS ==<br />
<br />
<pre><br />
<br />
FF2C - Dragon Alpha FDC<br />
FF2D - Dragon Alpha FDC<br />
FF2E - Dragon Alpha FDC<br />
FF2F - Dragon Alpha FDC<br />
<br />
FF40 - Dragon FDC | CoCo FDC | CoCo SDC<br />
FF41 - Dragon FDC | CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF42 - Dragon FDC | CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF43 - Dragon FDC | CoCo FDC | CoCo SDC<br />
FF48 - Latch<br />
<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
FF50 - DragonMMC<br />
FF54 - DragonMMC<br />
FF56 - Dragon-MSX2+ | DragonMMC<br />
FF57 - Dragon-MSX2+<br />
FF58 - Dragon-MSX2+<br />
FF59 - Dragon-MSX2+<br />
FF5A - Dragon-MSX2+<br />
FF5B - Dragon-MSX2+<br />
FF5C - Dragon-MSX2+<br />
FF5D - Dragon-MSX2+<br />
<br />
FF76 - Dragon-MSX2+<br />
FF77 - Dragon-MSX2+<br />
FF78 - Dragon-MSX2+<br />
FF79 - Dragon-MSX2+<br />
FF7A - Dragon-MSX2+ | Orchestra 90<br />
FF7B - Dragon-MSX2+ | Orchestra 90<br />
FF7C - Dragon-MSX2+<br />
FF7D - Dragon-MSX2+<br />
<br />
FF90 - MooH<br />
FF91 - MooH<br />
FFA0 - MooH<br />
FFA1 - MooH<br />
FFA2 - MooH<br />
FFA3 - MooH<br />
FFA4 - MooH<br />
FFA5 - MooH<br />
FFA6 - MooH<br />
FFA7 - MooH<br />
FFA8 - MooH<br />
FFA9 - MooH<br />
FFAA - MooH<br />
FFAB - MooH<br />
FFAC - MooH<br />
FFAD - MooH<br />
FFAE - MooH<br />
FFAF - MooH<br />
<br />
<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9671Memory Map2021-05-28T15:19:41Z<p>Admin: /* DISK CONTROLLERS */</p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
These refer to DRAGONDOS.<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
Decimal value 255/127 if no fire but pressed<br />
Dec value 254 or 126 if right joystick<br />
button pressed<br />
Dec value 253 or 125 if left joystick fire<br />
button pressed<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
FF04 ACIA - D64/Alpha<br />
FF05 ACIA - D64/Alpha<br />
FF06 ACIA - D64/Alpha<br />
FF07 ACIA - D64/Alpha<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input<br />
0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd<br />
0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
65316 FF24 - Dragon Alpha PIA<br />
FF25 - Dragon Alpha PIA<br />
FF26 - Dragon Alpha PIA<br />
FF27 - Dragon Alpha PIA<br />
FF28 - Dragon Alpha 6850 Modem Port<br />
FF2C - Dragon Alpha FDC<br />
FF2D - Dragon Alpha FDC<br />
FF2E - Dragon Alpha FDC<br />
FF2F - Dragon Alpha FDC<br />
<br />
</pre><br />
<br />
== DISK CONTROLLERS ==<br />
<br />
<pre><br />
<br />
<br />
FF40 - Dragon FDC | CoCo FDC | CoCo SDC<br />
FF41 - Dragon FDC | CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF42 - Dragon FDC | CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF43 - Dragon FDC | CoCo FDC | CoCo SDC<br />
FF48 - Latch<br />
<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
FF50 - DragonMMC<br />
FF54 - DragonMMC<br />
FF56 - Dragon-MSX2+ | DragonMMC<br />
FF57 - Dragon-MSX2+<br />
FF58 - Dragon-MSX2+<br />
FF59 - Dragon-MSX2+<br />
FF5A - Dragon-MSX2+<br />
FF5B - Dragon-MSX2+<br />
FF5C - Dragon-MSX2+<br />
FF5D - Dragon-MSX2+<br />
<br />
FF76 - Dragon-MSX2+<br />
FF77 - Dragon-MSX2+<br />
FF78 - Dragon-MSX2+<br />
FF79 - Dragon-MSX2+<br />
FF7A - Dragon-MSX2+ | Orchestra 90<br />
FF7B - Dragon-MSX2+ | Orchestra 90<br />
FF7C - Dragon-MSX2+<br />
FF7D - Dragon-MSX2+<br />
<br />
FF90 - MooH<br />
FF91 - MooH<br />
FFA0 - MooH<br />
FFA1 - MooH<br />
FFA2 - MooH<br />
FFA3 - MooH<br />
FFA4 - MooH<br />
FFA5 - MooH<br />
FFA6 - MooH<br />
FFA7 - MooH<br />
FFA8 - MooH<br />
FFA9 - MooH<br />
FFAA - MooH<br />
FFAB - MooH<br />
FFAC - MooH<br />
FFAD - MooH<br />
FFAE - MooH<br />
FFAF - MooH<br />
<br />
<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9670Memory Map2021-05-28T15:18:05Z<p>Admin: /* INPUT/OUTPUT ROUTINES */</p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
These refer to DRAGONDOS.<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
Decimal value 255/127 if no fire but pressed<br />
Dec value 254 or 126 if right joystick<br />
button pressed<br />
Dec value 253 or 125 if left joystick fire<br />
button pressed<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
FF04 ACIA - D64/Alpha<br />
FF05 ACIA - D64/Alpha<br />
FF06 ACIA - D64/Alpha<br />
FF07 ACIA - D64/Alpha<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input<br />
0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd<br />
0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
65316 FF24 - Dragon Alpha PIA<br />
FF25 - Dragon Alpha PIA<br />
FF26 - Dragon Alpha PIA<br />
FF27 - Dragon Alpha PIA<br />
FF28 - Dragon Alpha 6850 Modem Port<br />
FF2C - Dragon Alpha FDC<br />
FF2D - Dragon Alpha FDC<br />
FF2E - Dragon Alpha FDC<br />
FF2F - Dragon Alpha FDC<br />
<br />
</pre><br />
<br />
== DISK CONTROLLERS ==<br />
<br />
<pre><br />
<br />
<br />
FF40 - CoCo FDC | CoCo SDC<br />
FF41 - CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF42 - CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF43 - CoCo FDC | CoCo SDC<br />
FF48 - Dragon FDC<br />
FF49 - Dragon FDC<br />
FF4a - Dragon FDC<br />
FF4b - Dragon FDC<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
FF50 - DragonMMC<br />
FF54 - DragonMMC<br />
FF56 - Dragon-MSX2+ | DragonMMC<br />
FF57 - Dragon-MSX2+<br />
FF58 - Dragon-MSX2+<br />
FF59 - Dragon-MSX2+<br />
FF5A - Dragon-MSX2+<br />
FF5B - Dragon-MSX2+<br />
FF5C - Dragon-MSX2+<br />
FF5D - Dragon-MSX2+<br />
<br />
FF76 - Dragon-MSX2+<br />
FF77 - Dragon-MSX2+<br />
FF78 - Dragon-MSX2+<br />
FF79 - Dragon-MSX2+<br />
FF7A - Dragon-MSX2+ | Orchestra 90<br />
FF7B - Dragon-MSX2+ | Orchestra 90<br />
FF7C - Dragon-MSX2+<br />
FF7D - Dragon-MSX2+<br />
<br />
FF90 - MooH<br />
FF91 - MooH<br />
FFA0 - MooH<br />
FFA1 - MooH<br />
FFA2 - MooH<br />
FFA3 - MooH<br />
FFA4 - MooH<br />
FFA5 - MooH<br />
FFA6 - MooH<br />
FFA7 - MooH<br />
FFA8 - MooH<br />
FFA9 - MooH<br />
FFAA - MooH<br />
FFAB - MooH<br />
FFAC - MooH<br />
FFAD - MooH<br />
FFAE - MooH<br />
FFAF - MooH<br />
<br />
<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9669Memory Map2021-05-28T15:12:19Z<p>Admin: /* DIY PROJECTS */</p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
These refer to DRAGONDOS.<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
Decimal value 255/127 if no fire but pressed<br />
Dec value 254 or 126 if right joystick<br />
button pressed<br />
Dec value 253 or 125 if left joystick fire<br />
button pressed<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input<br />
0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd<br />
0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
65316 FF24 - Dragon Alpha PIA<br />
<br />
</pre><br />
<br />
== DISK CONTROLLERS ==<br />
<br />
<pre><br />
<br />
<br />
FF40 - CoCo FDC | CoCo SDC<br />
FF41 - CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF42 - CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF43 - CoCo FDC | CoCo SDC<br />
FF48 - Dragon FDC<br />
FF49 - Dragon FDC<br />
FF4a - Dragon FDC<br />
FF4b - Dragon FDC<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
FF50 - DragonMMC<br />
FF54 - DragonMMC<br />
FF56 - Dragon-MSX2+ | DragonMMC<br />
FF57 - Dragon-MSX2+<br />
FF58 - Dragon-MSX2+<br />
FF59 - Dragon-MSX2+<br />
FF5A - Dragon-MSX2+<br />
FF5B - Dragon-MSX2+<br />
FF5C - Dragon-MSX2+<br />
FF5D - Dragon-MSX2+<br />
<br />
FF76 - Dragon-MSX2+<br />
FF77 - Dragon-MSX2+<br />
FF78 - Dragon-MSX2+<br />
FF79 - Dragon-MSX2+<br />
FF7A - Dragon-MSX2+ | Orchestra 90<br />
FF7B - Dragon-MSX2+ | Orchestra 90<br />
FF7C - Dragon-MSX2+<br />
FF7D - Dragon-MSX2+<br />
<br />
FF90 - MooH<br />
FF91 - MooH<br />
FFA0 - MooH<br />
FFA1 - MooH<br />
FFA2 - MooH<br />
FFA3 - MooH<br />
FFA4 - MooH<br />
FFA5 - MooH<br />
FFA6 - MooH<br />
FFA7 - MooH<br />
FFA8 - MooH<br />
FFA9 - MooH<br />
FFAA - MooH<br />
FFAB - MooH<br />
FFAC - MooH<br />
FFAD - MooH<br />
FFAE - MooH<br />
FFAF - MooH<br />
<br />
<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9668Memory Map2021-05-28T15:11:35Z<p>Admin: </p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
These refer to DRAGONDOS.<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
Decimal value 255/127 if no fire but pressed<br />
Dec value 254 or 126 if right joystick<br />
button pressed<br />
Dec value 253 or 125 if left joystick fire<br />
button pressed<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input<br />
0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd<br />
0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
65316 FF24 - Dragon Alpha PIA<br />
<br />
</pre><br />
<br />
== DISK CONTROLLERS ==<br />
<br />
<pre><br />
<br />
<br />
FF40 - CoCo FDC | CoCo SDC<br />
FF41 - CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF42 - CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF43 - CoCo FDC | CoCo SDC<br />
FF48 - Dragon FDC<br />
FF49 - Dragon FDC<br />
FF4a - Dragon FDC<br />
FF4b - Dragon FDC<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
FF50 - DragonMMC<br />
FF54 - DragonMMC<br />
FF56 - Dragon-MSX2+ | DragonMMC<br />
FF57 - Dragon-MSX2+<br />
FF58 - Dragon-MSX2+<br />
FF59 - Dragon-MSX2+<br />
FF5A - Dragon-MSX2+<br />
FF5B - Dragon-MSX2+<br />
FF5C - Dragon-MSX2+<br />
FF5D - Dragon-MSX2+<br />
<br />
FF76 - Dragon-MSX2+<br />
FF77 - Dragon-MSX2+<br />
FF78 - Dragon-MSX2+<br />
FF79 - Dragon-MSX2+<br />
FF7A - Dragon-MSX2+ | Orchestra 90<br />
FF7B - Dragon-MSX2+ | Orchestra 90<br />
FF7C - Dragon-MSX2+<br />
FF7D - Dragon-MSX2+<br />
<br />
FF90 - MooH<br />
FF91 - MooH<br />
FFA0 - MooH<br />
FFA1 - MooH<br />
FFA2 - MooH<br />
FFA3 - MooH<br />
FFA4 - MooH<br />
FFA5 - MooH<br />
FFA6 - MooH<br />
FFA7 - MooH<br />
FFA8 - MooH<br />
FFA9 - MooH<br />
FFAA - MooH<br />
FFAB - MooH<br />
FFAC - MooH<br />
FFAD - MooH<br />
FFAE - MooH<br />
FFAF - MooH<br />
<br />
..<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9667Memory Map2021-05-28T14:57:31Z<p>Admin: /* DIY PROJECTS */</p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
These refer to DRAGONDOS.<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
Decimal value 255/127 if no fire but pressed<br />
Dec value 254 or 126 if right joystick<br />
button pressed<br />
Dec value 253 or 125 if left joystick fire<br />
button pressed<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input<br />
0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd<br />
0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
65316 FF24 - Dragon Alpha PIA<br />
<br />
FF40 - CoCo FDC | CoCo SDC<br />
FF41 - CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF42 - CoCo FDC | CoCo SDC | Becker Port (DriveWire)<br />
FF43 - CoCo FDC | CoCo SDC<br />
FF48 - Dragon FDC<br />
FF49 - Dragon FDC<br />
FF4a - Dragon FDC<br />
FF4b - Dragon FDC<br />
<br />
FF50 - DragonMMC<br />
FF54 - DragonMMC<br />
FF56 - Dragon-MSX2+ | DragonMMC<br />
FF57 - Dragon-MSX2+<br />
FF58 - Dragon-MSX2+<br />
FF59 - Dragon-MSX2+<br />
FF5A - Dragon-MSX2+<br />
FF5B - Dragon-MSX2+<br />
FF5C - Dragon-MSX2+<br />
FF5D - Dragon-MSX2+<br />
<br />
FF76 - Dragon-MSX2+<br />
FF77 - Dragon-MSX2+<br />
FF78 - Dragon-MSX2+<br />
FF79 - Dragon-MSX2+<br />
FF7A - Dragon-MSX2+ | Orchestra 90<br />
FF7B - Dragon-MSX2+ | Orchestra 90<br />
FF7C - Dragon-MSX2+<br />
FF7D - Dragon-MSX2+<br />
<br />
FF90 - MooH<br />
FF91 - MooH<br />
FFA0 - MooH<br />
FFA1 - MooH<br />
FFA2 - MooH<br />
FFA3 - MooH<br />
FFA4 - MooH<br />
FFA5 - MooH<br />
FFA6 - MooH<br />
FFA7 - MooH<br />
FFA8 - MooH<br />
FFA9 - MooH<br />
FFAA - MooH<br />
FFAB - MooH<br />
FFAC - MooH<br />
FFAD - MooH<br />
FFAE - MooH<br />
FFAF - MooH<br />
<br />
..<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9666Memory Map2021-05-28T14:46:11Z<p>Admin: /* DIY PROJECTS */</p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
These refer to DRAGONDOS.<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
Decimal value 255/127 if no fire but pressed<br />
Dec value 254 or 126 if right joystick<br />
button pressed<br />
Dec value 253 or 125 if left joystick fire<br />
button pressed<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input<br />
0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd<br />
0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
65316 FF24 - Dragon Alpha PIA<br />
<br />
FF40 - CoCo FDC / SDC<br />
FF41 - CoCo FDC / SDC<br />
FF42 - CoCo FDC / SDC<br />
FF43 - CoCo FDC / SDC<br />
FF48 - Dragon FDC<br />
FF49 - Dragon FDC<br />
FF4a - Dragon FDC<br />
FF4b - Dragon FDC<br />
<br />
<br />
FF56 - Dragon-MSX2+<br />
FF57 - Dragon-MSX2+<br />
FF58 - Dragon-MSX2+<br />
FF59 - Dragon-MSX2+<br />
FF5A - Dragon-MSX2+<br />
FF5B - Dragon-MSX2+<br />
FF5C - Dragon-MSX2+<br />
FF5D - Dragon-MSX2+<br />
<br />
FF76 - Dragon-MSX2+<br />
FF77 - Dragon-MSX2+<br />
FF78 - Dragon-MSX2+<br />
FF79 - Dragon-MSX2+<br />
FF7A - Dragon-MSX2+<br />
FF7B - Dragon-MSX2+<br />
FF7C - Dragon-MSX2+<br />
FF7D - Dragon-MSX2+<br />
<br />
FF90 - MooH<br />
FF91 - MooH<br />
FFA0 - MooH<br />
FFA1 - MooH<br />
FFA2 - MooH<br />
FFA3 - MooH<br />
FFA4 - MooH<br />
FFA5 - MooH<br />
FFA6 - MooH<br />
FFA7 - MooH<br />
FFA8 - MooH<br />
FFA9 - MooH<br />
FFAA - MooH<br />
FFAB - MooH<br />
FFAC - MooH<br />
FFAD - MooH<br />
FFAE - MooH<br />
FFAF - MooH<br />
<br />
..<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9665Memory Map2021-05-28T12:27:28Z<p>Admin: </p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial position<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching filename<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
These refer to DRAGONDOS.<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 joystick comparator input<br />
Decimal value 255/127 if no fire but pressed<br />
Dec value 254 or 126 if right joystick<br />
button pressed<br />
Dec value 253 or 125 if left joystick fire<br />
button pressed<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input<br />
0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd<br />
0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartridge<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
</pre><br />
<br />
== DIY PROJECTS ==<br />
<br />
<pre><br />
65316 FF24<br />
..<br />
65471 FFBF<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=Memory_Map&diff=9664Memory Map2021-05-28T12:23:56Z<p>Admin: Created page with "== MEMORY MAP == DRAGON 32 and 64 in 32 mode <pre> 0 - 1023 0000 - 03FF SYSTEM USE 1024 - 1535 0400 - 05FF TEXT SCREEN 1536 - 3071 0600 - 0BFF GRA..."</p>
<hr />
<div>== MEMORY MAP ==<br />
<br />
<br />
DRAGON 32 and 64 in 32 mode<br />
<br />
<pre> 0 - 1023 0000 - 03FF SYSTEM USE<br />
1024 - 1535 0400 - 05FF TEXT SCREEN<br />
1536 - 3071 0600 - 0BFF GRAPHICS: PAGE 1<br />
3072 - 4607 0C00 - 11FF PAGE 2<br />
4608 - 6143 1200 - 17FF PAGE 3<br />
6144 - 7679 1800 - 1DFF PAGE 4<br />
7680 - 9215 1E00 - 23FF PAGE 5<br />
9216 - 10751 2400 - 29FF PAGE 6<br />
10752 - 12287 2A00 - 2FFF PAGE 7<br />
12288 - 13823 3000 - 35FF PAGE 8<br />
13824 - 32767 3600 - 7FFF PROGRAM USE<br />
32768 - 49151 8000 - BFFF BASIC ROM<br />
49152 - 65279 C000 - FEFF CARTRIDGE USE<br />
65280 - 65535 FF00 - FFFF INPUT/OUTPUT<br />
</pre><br />
<br />
PLEASE NOTE:<br />
With disks in use, the Disk work space occupies the first<br />
page of graphics (1536 to 3071) and in consequence Graphics<br />
screens are moved up one page, starting at 3072 (&H0C00) and<br />
ending at 15359 (&H3BFF).<br />
On start up the Dragon does a PCLEAR4 and in consequence the<br />
memory available for program use starts at 7680, or 9216<br />
with the DOS Controller in place.<br />
<br />
DRAGON 64 in 64 MODE.<br />
<br />
Same as above, except the BASIC ROM is moved from 32768<br />
(&H8000) to 49152 (&HC000), which gives a substantial<br />
increase in memory available for program use, but means that<br />
disks cannot be used as the ROM overlays the Cartridge area.<br />
Programs exist to overcome this problem however.<br />
<br />
<pre>13824 - 49151 3600 - BFFF PROGRAM USE<br />
49152 - 65279 C000 - FEFF BASIC ROM<br />
65280 - 65375 FF00 - FF5F INPUT/OUTPUT<br />
65376 - 65503 FF60 - FFDF SAM CONTROL BITS<br />
65504 - 65535 FFE0 - FFFF MPU VECTORS</pre><br />
<br />
<br />
NOTE<br />
<br />
The following pages contain details of the Dragon's memory,<br />
both the Basic work pages and the Basic ROM. While every<br />
effort has been made to ensure the accuracy of these<br />
details, the Editor has had to rely on a number of sources<br />
and it has not been possible to check them all.<br />
Where possible details have also been given of the Tandy<br />
Coco2 equivalent, making it possible for the conversion of<br />
programs from American sources. In so doing you are reminded<br />
that the Coco disk system differs greatly from Dragondos and<br />
is closer to the cassette system in the way that it handles<br />
data files.<br />
One other major difference is the way that graphic binary<br />
files are stored, they are usually 512 bytes higher in<br />
memory than Dragon graphics.<br />
<br />
== MEMORY MAP DETAILS ==<br />
<pre><br />
0 0 BREAK message flag<br />
1 1 STRING delimiting character<br />
2 2 Another delimiting character<br />
3 3 General counter<br />
4 4 Count of IF's seen looking for ELSE<br />
5 5 DIM flag<br />
6 6 VARIABLE type flag 0=numeric 255=string<br />
7 7 Garbage collection flag<br />
8 8 Subscript allowed flag<br />
9 9 INPUT/READ flag<br />
10 A Arithmetic use<br />
11) B) String pointer - first free temporary<br />
12) C)<br />
13) D) String pointer - last used temporory<br />
15-24 E-18 Temporary results<br />
25/26 19/1A Start address of Basic program<br />
27/28 1B/1C Start address of simple variables table<br />
see D User 1/86 p38 for details of<br />
variables.<br />
29/30 1D/1E Start address of ARRAY table<br />
31/32 1F/20 End of storage (last byte used by Basic)<br />
33/34 21/22 Top of Stack. ((Stack grows down)<br />
35/36 23/24 Top of free STRING space. By subtracting the<br />
contents of 33/34 you get free string space<br />
37/38 25/26 Pointer to STRING in string space<br />
39/40 27/28 Top of RAM available to Basic<br />
41/42 29/2A Line number used in 'CONT' command<br />
43/44 2B/2C Temp G.P. line number store<br />
45/46 2D/2E Pointer to statement to be executed<br />
47/48 2F/30 Direct mode command text pointer<br />
49/50 31/32 Current DATA statement line number<br />
51/52 33/34 Address of next item in current data sta'nt<br />
53/54 35/36 Address of keyboard input buffer<br />
55/56 37/38 Pointer to VARIABLE last in use<br />
57/58 39/3A VARPTR address of variable last in use<br />
59/78 3B/4E Evaluation variables<br />
65/66 41/42 High end destination address for block move<br />
67/68 43/44 High end origin address<br />
69/70 45/46 Low end destination address<br />
71/72 47/48 Low end origin address<br />
79/84 4F/54 Floating Point Accumulator: No 1<br />
79 4F Exponent )<br />
80/83 50/53 Mantissa ) Details of FPA<br />
84 54 Sign )<br />
85 55 Temporary sign of FAC<br />
86 56 String variable length<br />
92/97 5C/61 Floating Pt Acc No 2: details as before<br />
98 62 Sign comparison<br />
99 63 Extended precision byte-Coco<br />
104/105 68/69 Current line number (65535 in direct mode)<br />
106 6A VDU Comma field width (default 16)<br />
107 6B VDU Last Comma field (screen width - above)<br />
108 6C VDU Current column number (0 - 31)<br />
109 6D VDU Line width. No of characters per line<br />
110 6E Cassette I/O flag. Set FF on input incurring<br />
111 6F DEVN: re text output: 0=VDU 255=tape 254=prt<br />
112 70 Cassette EOF flag: EOF reached if non zero<br />
113 71 Restart flag. If<>$55 - cold start on reset<br />
114/115 72/73 Restart vector. If flag=$55 & vector points<br />
points to a NOP then warm start else<br />
a cold start.<br />
116/117 74/75 Physical end of RAM<br />
120 78 Cassette status:0=closed 1=input 2=output<br />
121 79 I/O buffer size<br />
122/3 7A/B Header buffer address:where f'name block is<br />
124 7C Cassette block type:<br />
0=f'name block 1=data block 255=EOF marker b<br />
125 7D BLKLEN:Cass Block length:Bytes to read/write<br />
126/7 7E/F Cassette I/O buffer address<br />
128 80 Used internally to calculate the checksum<br />
129 81 I/O error code 1=CRC 2=attempt load into RAM<br />
130/2 82/4 Temp store used by COS<br />
133 85 Last sine value<br />
134 86 Data for Lo-res SET/RESET routine<br />
135 87 ASCII code of last key pressed<br />
136/7 88/89 Current VDU cursor address (ie screen pos)<br />
138/9 8A/B G.P. (16 bit) scratch pad<br />
140 8C Sound pitch value (frequency)<br />
141/2 8D/E GP Countdown facility (?duration of sound)<br />
143 8F Cursor Flash Counter<br />
144/5 90/1 Cassette leader byte count (number of &H55s)<br />
146 92 Min Cycle width of 1200HZ - Init=12<br />
147 93 Min Pulse width of 1200HZ - Init=0A<br />
148 94 Max pulse width of 1200HZ - Init=12<br />
149/50 95/6 Dragon - Motor on delay<br />
Coco - Serial printer Baud rate constant<br />
HEX Msb Lsb (decimal) Baud<br />
149 150<br />
02EB 2 235 75<br />
01CA 1 202 120<br />
0173 1 115 150<br />
00BE 0 180 300<br />
0057 0 87 600 (default)<br />
0028 0 41 1200<br />
0012 0 18 2400<br />
0006 0 6 4800<br />
0001 0 1 9600<br />
151/2 97/8 Keyboard Scan Delay constant: Init=&H045E<br />
153 99 Printer Comma Field Width: Default 16<br />
154 9A Printer Last Comma Field<br />
155 9B Printer Line Width: Set this to width 80?<br />
156 9C Printer Head Column:same as POS(-2) in basic<br />
157/8 9D/E Exec Entry address<br />
159/170 9F/AA Self modifying routine which reads next char<br />
166/7 A6/7 Address of current sig byte - next char pntr<br />
171/4 AB/E Used by RND command<br />
175 AF TRON/TROFF flag: Non zero - trace on<br />
176/7 B0/1 Address os start of USR address table<br />
178 B2 Current foreground colour<br />
179 B3 Current Background colour<br />
180 B4 Temp colour in use<br />
181 B5 Byte value for current colour: ie bits set<br />
182 B6 Graphics PMODE number in use.<br />
183/4 B7/8 Address of LAST byte of current graphics<br />
185 B9 Number of bytes per line in current PMODE<br />
186/7 BA/B Address of FIRST byte: current graphics disp<br />
188 BC Start of graphics pages (MSB) defaults to 06<br />
Changed to 0C by Dragondos<br />
189/90 BD/E Current X Cursor position (not available<br />
191/2 BF/C0 Current Y Cursor position (n.a.)<br />
193 C1 Colour Set currently in use<br />
194 C2 Plot/Unplot flag:0=Reset, Non-zero=Set<br />
195/96 C3/4 Current Horizontal Pixel number<br />
197/8 C5/6 Current Vertical Pixel number<br />
199/200 C7/C8 Current X cursor co-ordinate<br />
201/2 C9/CA Current Y cursor co-ordinate<br />
203/4 CB/CC Circle command X co-ordinate<br />
205/6 CD/CE Circle command Y co-ordinate<br />
207/8 CF/D0 RENUMber increment value<br />
209/10 D1/2 RENUMber Start line (original number)<br />
211/2 D3/4 CLOADM: 2's complement load offset value<br />
213/4 D5/6 RENUMber New Start line (new number)<br />
215 D7 Editor line length - not user available<br />
216/221 D8/DD Graphics use<br />
222 DE Current octave in use (0 - 4)<br />
223/4 DF/E0 Volume data for volume setting in PLAY<br />
225 E1 Current note length in PLAY<br />
226 E2 Current TEMPO for PLAY command<br />
227/8 E3/4 Music duration count<br />
229 E5 Music dotted note flag<br />
230 E6 Coco - Baud rate constant<br />
231 E7 Coco - Input timeout constant<br />
232 E8 Current ANGLE used in DRAW routine<br />
233 E9 Current SCALE used in DRAW routine<br />
234 EA Disk operation code-what operation specified<br />
235 EB Disk Drive number(1 - 4) Coco(1 - 3)<br />
236 EC Disk read/write TRACK number<br />
237 ED Disk read/write SECTOR number<br />
238/9 EE/F Disk read/write Sector Buffer address<br />
240 F0 Disk Error Status byte (Convt to DDOS code)<br />
241 F1 Disk File Control Block number (1 - 10)<br />
242 F2 Number of bytes in Disk buffer area<br />
243 F3 No of bytes to transfer to/from buffer<br />
244 F4 Number of SIDES/TRACKS for current drive<br />
00=1 side 40 tracks 01=2 sides 40 tracks<br />
FF=1 side 80 tracks FE=2 sides 80 tracks<br />
The FORMAT of a disk is taken from the last<br />
few bytes of Sector 1 of Track 20 in Drogon<br />
DOS, on first access of disk after switch on<br />
or RESET.<br />
245 F5 File Read/write flag<br />
0=read, 1=write & FF=verify<br />
246 F6 Disk I/O in progress flag<br />
256/8 100/2 SWI3 JUMP VECTOR - called from &HFFF2<br />
Execution of a SWI3 instruction of &H113F<br />
will stack Registers and jump here<br />
259/61 103/5 SWI2 JUMP VECTOR - called from &HFFF4<br />
Execution of a SWI2 instruction of &H103F<br />
will stack registers and jump here<br />
262/4 106/8 SWI1 JUMP VECTOR - called from &HFFFA -&H3F<br />
will stack registers and jump here<br />
265/7 109/B NMI JUMP VECTOR -non-maskable interrupt<br />
called from &HFFFC, set to &H7ED7AE JUMPD7AE<br />
by initialisation of disk operating system<br />
in the Coco. Okay for Dragon?<br />
268/70 10C/E IRQ JUMP SECTOR - Interrupt request called<br />
from &HFFF8. Set to &H7EA9B3 to initialise<br />
Basic, Set to &H7E894C for initialisation of<br />
extended Basic or set to &H7ED7BC for the<br />
initialisation of DOS in the Coco.<br />
271/3 10F/111 FIRQ JUMP VECTOR - Fast interrupt request<br />
called from &HFFF6, set to &H7EA0F6 by the<br />
initialisation of Basic and causes a jump to<br />
the Cartridge Port in the Coco.<br />
274/6 112/4 In Coco this is EXEC of USR basic function<br />
274/5 112/3 Timer - current value of system timer<br />
In both Dragon and Coco (double function)<br />
277/81 115/9 Random number seeds used in RND function<br />
282/7 11A/F Unused in Dragon<br />
282 11A Coco - Caps lock 1=lock 0=unlock (lower case<br />
283/4 11B/C Coco - keyboard delay constant<br />
285/7 11D/F Coco - Vector to 45509 (JUMP $8489)<br />
288 120 Number of Basic commands (reserved words)<br />
289/90 121/2 Address of list of Basic commands<br />
291/2 123/4 Address of Command Despatch Table<br />
293 125 Number of Basic functions<br />
294/5 126/7 Address of list of Basic functions<br />
296/7 128/9 Address of Function Despatch Table<br />
298/307 12A/133 As for 288 to 297, but in Dragon refers to<br />
Disk commands and functions, but in the Coco<br />
to Extended Basic commands and functions.<br />
308/317 134/13D These addresses as above re COCO disks.<br />
308/327 134/147 DRAGON - USR Table (20 bytes 2 each USR)<br />
This USR table is switched to 1667 to 1686,<br />
or Hex 683 to 696 when DOS is connected and<br />
is replaced with Disk Stub3 which acts as a<br />
terminator.<br />
328 148 PRINTER AUTO LF/CR Flag<br />
329 149 Dragon - Caps Lock flag:non zero=upper case<br />
330 14A Number of chars in end of line sequence(1-4)<br />
331/4 14B/E End of Line Characters: Set to CR/LF/NUL/NUL<br />
This sequence is sent to printer when a<br />
carriage return is output.<br />
336/45 150/9 Dragon Keyboard 'Roll-over' table<br />
338/45 152/9 Coco Keyboard 'Roll-over' table<br />
</pre><br />
<br />
DRAGON/COCO KEYBOARD ROLLOVER TABLE<br />
<pre><br />
Response:<br />
Address 191 223 239 247 251 253 254<br />
Dec Hex D C D C D C D C D C D C D C<br />
338 152 ENT ENT X 8 P 0 H X @ P 8 H 0 @<br />
339 153 CLR CLR Y 9 Q 1 I Y A Q 8 I 1 A<br />
340 154 BRK BRK Z : R 2 J Z B R : J 2 B<br />
341 155 ; S 3 K C S ; K 3 C<br />
342 156 , T 4 L D T , L 4 D<br />
343 157 - U 5 M E U - M 5 E<br />
344 158 . V 6 N F V . N 6 F<br />
345 159 SPC / W 7 O SPC G W / O 7 G<br />
</pre><br />
RESPONSE IS 255 OR &HFF IF NO KEY IS PRESSED<br />
<pre><br />
346 15A Right Joystick(0) - X value<br />
347 15B Right Joystick(1) - Y value<br />
348 15C Left Joystick (2) - X value<br />
349 15D Left Joystick (3) - Y value<br />
<br />
350 to 424 15E to 1A8 RAM HOOKS (each 3 bytes)<br />
350/2 15E/160 Device Open- called just before OPEN command<br />
353/5 161/3 Device Number-called when a DEVN is verified<br />
356/8 164/6 Device Initialisation- called before setting<br />
up the Device parameters in Loctn 106 to 109<br />
359/61 167/9 OUTPUT CHAR TO DEVN:called just before out-<br />
putting char in A Reg to DEVN<br />
362/4 16A/C INPUT CHAR FROM DEVN: called just before<br />
inputting a char from DEVN into A Register<br />
365/7 16D/F INPUT FILE: called just before inputting a<br />
file using INPUT<br />
368/70 170/2 OUTPUT FILE: called just before outputting<br />
to a file using PRINT<br />
371/3 173/5 CLOSE ALL FILES: called before all files are<br />
closed, action only taken if Cassette open<br />
374/6 176/8 CLOSE FILE: called before device is CLOSED<br />
action only taken if DEVN is -1 (tape)<br />
377/9 179/B COMMAND INTERPRETER: called before interpret<br />
of token in A Reg as command, used by Delta<br />
380/2 17C/E RE-REQUEST INPUT. Called before requesting<br />
more data from keyboard- ie before ?? prompt<br />
383/5 17F/181 CHECK KEYS. Called before keyboard scanned<br />
for BREAK and SHIFT/@. Keyboard not scanned<br />
if DEVN is -1.<br />
386/8 182/4 LINE INPUT FILE. Called before Line Input is<br />
executed on current DEVN<br />
389/91 185/7 CLOSE FILE & COMMAND. Called before closing<br />
an ASCII file just read in as a Basic prog'm<br />
by CLOAD & returning to COMMAND mode.<br />
392/4 188/A CHECK EOF. Called before checking for EOF<br />
for current DEVN<br />
395/7 18B/D EVALUATE EXPRESSION. (obvious)<br />
398/400 18E/190 USER ERROR TRAP. Can be patched by the user,<br />
that is in Basic, to trap error messages.<br />
401/3 191/3 SYSTEM ERROR TRAP. Can be patched by the<br />
'system', ie Basic extension ROMs to trap<br />
errors (used by Dragondos)<br />
404/6 194/6 RUN LINK. Called when RUN command is about<br />
to be executed. Patched by DDOS to allow a<br />
disk filename to be specified.<br />
407/9 197/9 RESET BASIC MEMORY. Called from two routines<br />
in ROM before Basic Memory vectors are<br />
changed, ie by entering or editing lines,<br />
running programs etc.<br />
410/2 19A/C GET NEXT COMMAND. Called before reading in<br />
the next Basic command to be executed while<br />
program is running.<br />
413/5 19D/F ASSIGN STRING VARIABLE. (obvious)<br />
416/8 1A0/2 SCREEN ACCESS. Called before the CLS,GET and<br />
PUT commands are executed.<br />
419/21 1A3/5 TOKENISE LINE. Called before an ASCII line<br />
is tokenised in internal Basic format<br />
422/4 1A6/8 DETOKENISE LINE. Called before a Tokenised<br />
line is converted to ASCII characters<br />
425/464 or 1A9/1D0 STRING BUFFER AREA<br />
465 1D1 Cassette filename length<br />
466/73 1D2/9 Cassette filename to search for/or write out<br />
474/728 or 1DA/2D8 CASSETTE FILE DATA BUFFER<br />
Area of memory used to load filename block &<br />
ASCII data blocks - if this contains a file-<br />
name block then this can be peeked (474-488)<br />
474/81 1DA/1E1 Cassette filename (in buffer)<br />
482 1E2 File type: 0=token basic 1=ASCII 2=binary<br />
483 1E3 ASCII flag: 0=binary, non-zero=ASCII files.<br />
484 1E4 Gap flag: 1=continuous, 255(FF)=gapped files<br />
485/6 1E5/6 Execution address of machine code file<br />
487/8 1E7/8 Load address of ungapped machine code file<br />
729/33 2D9/C Basic line input buffer preamble<br />
734/984 2DD/3D8 Basic line input buffer<br />
985/1002 3D9/EA BUFFER space<br />
1003/20 3EB/3FC Unused<br />
1021/2 3FD/E End of line delay - RS 232 port on D64<br />
1023 3FF D64 RS 232 port Baud rate controller port<br />
1024) 400) TEXT SCREEN<br />
1535) 5FF) Default area.<br />
</pre><br />
The Coco Buffer areas are slightly different:<br />
733/988 2DD/3DC 255 byte Keyboard buffer<br />
737/827 2E1/33B 90 byte Screen buffer<br />
<br />
The Disk Work area is from 1536 to 3071, or &H0600 to &H0BFF<br />
Otherwise if disks are not installed these addresses are in<br />
respect of the first of the Graphic pages, but with the DOS<br />
installed the Graphics page 1 starts at 3072 (&H0C00).<br />
<br />
== DRAGONDOS WORK SPACE ==<br />
<pre><br />
1536 0600 Start of Disk work space or Graphics Page 1<br />
when Disk cartridge not installed<br />
1541 0605 Countdown to Disk motor off: Off when zero<br />
1544 0608 Auto Verify ON/OFF: 0=off else checks sector<br />
1546 060A Current Default drive No. Used when no Drive<br />
number is specified in the command<br />
1549/50 060D/E Auto command line number in use<br />
1551/2 060F/10 Auto command increment value<br />
1553 0611 Program LOAD/RUN flag: 0=Load else Load/RUN<br />
1555 0613 Auto command ON/OFF flag: 0=off else Auto on<br />
1556 0614 Error command ON/OFF flag: 0=off else ERR on<br />
1557/8 0615/6 ERROR trap line number: Basic line error rtn<br />
1559/60 0617/8 ERL: line number of last error<br />
1561 0619 ERR: Error code of last basic error<br />
1562/3 061A/B Address of start of statement in error<br />
1564/9 061C/21 Drive 1 details<br />
1570/5 0622/7 Drive 2 details<br />
1576/81 0628/D Drive 3 details<br />
1582/7 062E/33 Drive 4 details<br />
1588) 0634) Disk Buffers 1 to 4 details, 7 bytes each<br />
1615) 064F)<br />
1616/66 0650/82 Current Drive information<br />
1618/9 0652/3 Start address of program loaded<br />
1620/1 1654/5 Length of program loaded<br />
1622/3 1656/7 Entry (EXEC) address of M/code program<br />
1667/86 1683/96 USR Vector table: relocated from 308-327(dec<br />
1687 to 1706) Disk Drive Parameter table<br />
0697 to 06AA) 4 bytes per parameter - 1 for each drive<br />
1687/90 0697/A On Line Flag: Non zero means dive on line<br />
1691/4 069B/E Current Track, if Drive on line<br />
1695/8 069F/A2 Head Stepping rate: This should only be<br />
changed if slower drives are used.<br />
1699/702<br />
06A3/6 Disk Tracks on each drive<br />
1703/6 06A7/A Disk Sectors per track on each drive<br />
1707/24 06AB/BC Directory Sector status<br />
1725/2034 File Control Blocks: 10 in all: One for each<br />
6BD/7F2 open file: Each FCB 32 bytes long<br />
2035/47 7F3/F Temporary variables<br />
2048/3071 )Disk Buffers: 4 in all, each 256 bytes long<br />
800/BFF)<br />
<br />
3072 0C00 Start of Graphic Page 1 when disks in place<br />
otherwise start of Graphic Page 2 for tapes.<br />
</pre><br />
<br />
== BASIC INTERPRETER CODES ==<br />
<pre><br />
32768 8000 Hardware initialisation<br />
32771 8003 Software initialisation<br />
32774 8006 POLCAT:Keyboard input:put into Register A<br />
32777 8009 Cursor Blink<br />
32780 800C CHROUT:Write character in Reg A to screen<br />
32783 800F Writes out character in Reg A to printer<br />
32786 8012 Joystick input:stored in addresses 346/9 dec<br />
32789 8015 Cassette on<br />
32792 8018 Cassette off<br />
32795 801B Write leader to cassette (or A00C)<br />
32798 801E Output byte from Reg A to cassette<br />
32801 8021 CSRDON:Cassette on, prepare for reading<br />
32804 8024 Input one byte from cassette to Register A<br />
32807 8027 Gets one bit in from cassette into carry<br />
32810 802A Reads in a byte from another computer<br />
32813 802D Sends a byte to another computer<br />
32816 8030 Select Baud rate of communications line<br />
</pre><br />
From here on the Coco equivalents are given in brackets and<br />
only a few Hex addresses will be given<br />
<pre><br />
33604 (44102) SYSERR: Generates appropriate action for<br />
Error code in B Reg<br />
33649 (44147) CMDMODE: prints OK prompt & returns to the<br />
command mode<br />
33773 (44271) BASVECT2: complete initialisation process<br />
after Basic program loaded<br />
33815 (44313) NEW Basic:removes current Basic program from<br />
memory, resets stack & clears variables<br />
33823 (44321) BASVECT1: Sets up various necessary vectors,<br />
once a Basic program has been loaded<br />
33844 (44339) RESETS STACK: Resets stack to initial pos'tn<br />
all entries are lost<br />
33951 (44446) RUN BASIC: runs a basic program in memory,<br />
used to AUTORUN programs<br />
34091 851B (44539) WAIT KEY: waits for a key press, and<br />
when key pressed puts it in A Register<br />
34935 (45382) GET EXPR: routine will evaluate & put VARPTR<br />
address of following expression into 82/83<br />
34951 (45398) GET STRG: compiles a string and puts it into<br />
free string space<br />
35236 (45671) CKCLBRAK: as for CKCOMA, but checks for a<br />
closed bracket<br />
35239 (45674) CKOPBRAK: as for above, but checks for an<br />
open bracket<br />
35242 (45677) CKCOMA: Checks to see next significant char<br />
in command line is a comma, and if not it<br />
produces a SYNTAX error<br />
35244 (45679) CKCHAR: as for CKCOMA, but checks for char<br />
in B Register<br />
35476 (45911) GETVAR: Get VARPTR address of the follwing<br />
variable's name<br />
35625 (46057) GETUSR: Returns value of the argument in the<br />
USR function as 16 bit number in D register<br />
35632 INTCNV: pass parameters to M/code routine<br />
35641 GIVABF:used to pass values from M/C to Basic<br />
35893 (46322) ASSIGN-16-BIT:assigns value in D Register to<br />
a numeric variable<br />
35894 (46323) ASSIGN-8-BIT:assigns value in B register to<br />
a numeric variable<br />
36055 (46481) GARBAGE COLLECT: forces a controlled garbage<br />
collection of string space<br />
36255 (46681) DELVAR: frees space taken by a variable<br />
36433 (46859) GET-8-BIT: returns value of the following<br />
number in B Register<br />
36483 (46909) GET-16-BIT: returns value of the following<br />
number in X register<br />
36522 (46948) LIST BASIC: lists basic program in memory to<br />
to DEVN (device specified)<br />
37025 90A1 (47448) PRINT CR/LE: moves cursor position<br />
to start of a new line<br />
37093 90E5 (47516) OUT STRING:Outputs a text string to<br />
device number in DEVN<br />
38266 957A (48588) PRINT NUMBER:outputs 16 bit number<br />
in D Reg to DEVN<br />
38798 978E RANDOM NUMBER: Generates an 8 bit random<br />
number and puts it in location 278<br />
39998 (34830) ASSIGN-16-BITB:alternative to 35893, assigns<br />
value in Locs 82/83 to a variable<br />
41194 A0EA (36038) WAIT WITH CURSOR:scans keyboard for<br />
a keypress, flashing cursor at print pos.<br />
43207 (38201) CLEAR GRAPHICS:clears current graphics<br />
screen to data in B Register on entry<br />
43304 (38298) SET COLOURS: sets up locations 180 & 181<br />
43320 (38314) SELECT DISPLAY: Selects text or graphics<br />
depending on Z condition code, if Z=1 text<br />
43322 95AC (38316) RESET VDU: resets default VDU mode<br />
43401 (38395) SET VDG MODE:sets VDG in mode given in A Reg<br />
43421 (38415) SET VDG OFFSET: sets display offset for the<br />
graphics mode<br />
43428 (38422) SELECT VDG COL: selects required VDG colour<br />
set from the data in location 193<br />
43489 (38483) SELECT PAGE: on entry B reg contains page no<br />
43536 (38530) SELECT COL SET: selects colour set 0 or 1,<br />
according to data in B reg<br />
43555 (38549) RESERVE HRG RAM: reserves RAM for graphics<br />
and moves basic if necessary<br />
44698 (39639) PLAY NOTE: A Reg contains ASC code of note,<br />
other parameters should be set up<br />
45137 (40118) DRAW:allows access to all facilities of DRAW<br />
46004 (40999) RESET:resets whole works, as if reset button<br />
has been pressed<br />
46080 (41142) BOOT BASIC: restarts the Basic interpreter<br />
as if on power up or reset<br />
46410 B54A (41602) OUTCHAR:outputs character in A Reg<br />
to device number in DEVN (location 111)<br />
46687 (42029) CLOSE FILES: closes any open tape stream and<br />
flushes buffer<br />
46757 (42089) WRITE BASIC: writes current basic program to<br />
cassette<br />
46920 (42257) READ BINARY: reads in BIN file from tape<br />
47283 (42625) FIND FILE: searches tape for matching f'name<br />
47411 (42753) READ 1ST BLOCK:gets filename block into tape<br />
buffer<br />
47422 B93E (42763) BLKIN: reads a block of data into<br />
cassette buffer<br />
47505 (42981) WRITE 1ST BLOCK: (obvious)<br />
47513 B999 (42996) BLKOUT: write block of data to tape<br />
47583 (43149) SET LRG LEVEL:on entry the X Reg contains<br />
Lo-res screen address, B Reg colour & loc184<br />
the OR data<br />
47623 (43189) RESET LRG PIXEL:as above but B Reg ignored,<br />
Pixel reset to Black<br />
47656 (43225) CALC PIXEL POS:on entry the top of stack<br />
must contain Lo-res vertical co-ordinate,<br />
preceded by horizontal co-ordinate<br />
47735 BA77 (43304) CLEAR SCREEN: clears screen to space<br />
and 'homes' cursor<br />
47737 BA79 (43306) CLEAR SCREEN to CHR: clears screen<br />
to character in B Reg<br />
47776 (43345) BEEP:sound Beep for length held in B Reg and<br />
pitch set by location 140<br />
47811 (43380) AUDIO OFF: disables sound:clears bit 3 65315<br />
47813 (43382) ENABLE SOUND: enables 6 bit sound by setting<br />
Bit 3 of 65315<br />
47828 (43397) RESET D/A: Puts value $7E into D/A converter<br />
address<br />
47830 (43399) WRITE D/A: puts contents of A Reg into D/A C<br />
47852 (43421) AUDIO ON:on entry the B Reg must be zero<br />
48000 BB80 BOOT BASIC64K: Boots 64 mode<br />
48053 BBB5 (41369) UPDATE CURSOR: flashes cursor<br />
48101 BBE5 (41409) POLCAT: scans keyboard and puts the<br />
character in A Register<br />
48288 BCA0 (41763) CLEAR VDU LINE: clears current VDU<br />
line from the cursor position<br />
48299 BCAB (41738) VDU OUT: prints char in A Reg to VDU<br />
48373 BCF5 PRINTER DIR OUT: char in A Reg sent printer<br />
48394 BD0A PCRLF:moves print head to start of next line<br />
48410 BD1A (41663) PRINTER OUT:Char in Reg A to printer<br />
48449 (43426) SELECT JSK:selects joystick sources (ports -<br />
0 - 3) from A Register<br />
48466 BD52 (43486) READ JSKS: Updates all joystick data<br />
locations (346/9)<br />
48549 BDA5 (42837) BIT IN:reads a single bit(see below)<br />
48557 BDAD (42825) BYTE IN:reads a byte into A Reg(tape<br />
48591 (42954) MOTOR ON: tape - sets bit 3 of $FF21<br />
48604 (42987) MOTOR OFF: tape - clears bit 3 of $FF21<br />
48615 (42876) READ LEADER: motor on & prepares COS to read<br />
48658 (43050) BYTE OUT: writes byte in A Reg to tape<br />
48746 BE6A WRTLDR:turns cassette on and writes a leader<br />
</pre><br />
THE FOLLOWING ARE DRAGONDOS ROUTINES<br />
<pre><br />
49166 C00E LENFIL: Report file length<br />
49168 C010 CLOSAL: Close all files<br />
49176 C018 GETFRE: Get free space<br />
49178 C01A DELETE: Delete a file<br />
49180 C01C PROTECT/UNPROTECT a file<br />
49182 C01E RENAME a file<br />
49184 C020 GETDIR: Get directory entry<br />
49406 C0FC WRITE SECTOR: Writes 256 bytes to disk<br />
49412 C104 READ SECTOR: reads 256 bytes from disk<br />
49509 C165 DRIVE INIT: initialises DOS hardware<br />
49513 C169 HARDWARE I/O: low level command to hardware<br />
50108 C3BC FORMAT DISK: in the DEFD drive<br />
53581 D14D GET FREE SPACE: free bytes on current drive<br />
54033 D311 CONVERT SECTOR:converts LSN(Logical sect no)<br />
in Y Reg to Track/Sector<br />
55868 DA3C DIR DSK: directory of disk in DEFD drive to<br />
DEVN<br />
56229 DBA5 BEEP: on entry B Reg should contain number<br />
of beeps<br />
56267 DBCB WAIT TIME:on entry X Reg should contain the<br />
number of milliseconds to wait<br />
56330 DC0A BOOT DSK: boots an OS off disk in DEFD drive<br />
</pre><br />
<br />
== INPUT/OUTPUT ROUTINES ==<br />
These refer to DRAGONDOS.<br />
<pre><br />
65280 FF00 Bits 0 to 6 Keyboard row input<br />
Bit 7 koystick comparator input<br />
Decimal value 255/127 if no fire but pressed<br />
Dec value 254 or 126 if right joystick<br />
button pressed<br />
Dec value 253 or 125 if left joystick fire<br />
button pressed<br />
65282 FF02 Bits 0 to 7 keyboard column output<br />
65312 FF20 Bit 0 - cassette data input<br />
1 - RS232 data output<br />
2/7 - 6 bit D/A(.25 to 4.75 volts out)<br />
65313 FF21 Bit 0 - control of CD<br />
0=FIRQ to CPU disabled, 1=enabled<br />
Bit 1 - RS 232 status input<br />
0=set flag falling edge CD, 1=rising edge<br />
Bit 2 - normal Data Direction Register addsd<br />
0=change FF20 to DDR<br />
Bit 3 - Cass Motor control, 0=off, 1=on<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - CD interrupt flag<br />
65314 FF22 Bit 0 - RS 232 data input<br />
1 - single bit cound output<br />
2 - RAM size input<br />
3 - VDG Control Output CSS(color set ct)<br />
4 - VDG Control Output GM0&NOT(INT)/EXT<br />
5 - VDG Cont Output GM1<br />
6 - VDG Cont Output GM2<br />
7 - VDG Cont Output NOT(A)/G<br />
65315 FF23 (Coco) POKE 54 to disable auto exec of cartr<br />
POKE 55 to enable auto execute of cartridge<br />
Not certain re above for Dragon<br />
Bit 0 - control of cartridge<br />
0=FIRQ to CPU disabled, 1= enabled<br />
Bit 1 - Interrupt input<br />
0=sets flag on falling edge of cartridge<br />
1=sets flag on rising edge of cartridge<br />
Bit 2 - Normally 1, 0=changes FF22 to DDReg<br />
3 - 6 bit sound enable<br />
4 - always 1<br />
5 - always 1<br />
6 - not used<br />
7 - Cartridge Interrupt Flag<br />
</pre><br />
<br />
== SAM CONTROL BITS ==<br />
<pre><br />
65472/7 FFC0/5 VDG Control Registers for 6883 SAM<br />
Contains 3 pairs of addresses (V0-V2), and<br />
poking any value to EVEN addresses sets Bit<br />
Off(0) in VDG circuitry. Poking value to ODD<br />
addresses set Bit ON(1) in 6847 VDG circuit<br />
65472/3 FFC0/1 Control of Bit 0 (V0)<br />
65474/5 FFC2/3 1 (V1)<br />
65476/7 FFC4/5 2 (V2)<br />
65478/91 Page Select Register contains 7 pairs of<br />
FFC6/D3 (F0-F6) control Display Start address (Bin)<br />
Address os upper left most display element=<br />
0000+1/2*OFFSET. Poking any value to even<br />
addresses sets Bit OFF (0) in Page select.<br />
Poking any value to ODD addresses sets Bit<br />
ON(1) in Page Select Circuitry.<br />
Also BASEPAGE is set by converting binary<br />
value of F (Bits F0 to F6) to decimal and<br />
multiplying this decimal number by 512.<br />
65478/9 FFC6/7 Control of Bit 0 (F0)<br />
65480/1 FFC8/9 1 (F1)<br />
65482/3 FFCA/B 2 (F2)<br />
65484/5 FFCC/D 3 (F3)<br />
65486/7 FFCE/F 4 (F4)<br />
65488/9 FFD0/1 5 (F5)<br />
65490/1 FFD2/3 6 (F6)<br />
<br />
65492/3 FFD4/5 Page #1 P1 control of Bit 7: (F7) 0=Normal<br />
65494/7 FFD6/9 Clock Speed (R0-R1) Poking any value to even<br />
addresses sets Bit OFF (0). Poking any value<br />
to ODD addresses sets bit ON (1).<br />
65494/5 FFD6/7 Control of Bit R0<br />
65496/7 FFD8/9 Control of Bit R1<br />
R0=0, R1=0 (slow mode defa<br />
</pre><br />
<br />
== MPU VECTORS ==<br />
<br />
<pre><br />
65522/3 FFF2/3 SWI 3 Vector mapped to 49138/9 BFF2/3<br />
65524/5 FFF4/5 SWI 2 vector 49140/1 BFF4/5<br />
65526/7 FFF6/7 FIRQ vector 49142/3 BFF6/7<br />
65528/9 FFF8/9 IRQ vector 49144/5 BFF8/9<br />
65530/1 FFFA/B SWI 1 vector 49146/7 BFFA/B<br />
65532/3 FFFC/D NMI vector 49148/9 BFFC/D<br />
65534/5 FFFE/F RESET vector 49150/1 BFFE/F<br />
</pre></div>Adminhttp://worldofdragon.org/index.php?title=DIY_Projects&diff=9663DIY Projects2021-05-28T12:21:35Z<p>Admin: </p>
<hr />
<div>The Dragon series of computers offers programming models and a cartridge expansion connector that are ideally suited to hardware hackers and hobbyist experimenters. Below, you can find a selection of projects that have been created by members of the Dragon community.<br />
<br />
Click the item to learn more about it, buy one or download schematics and associated software (where applicable). <br />
<br />
== Adapters & Cables ==<br />
* [[Replacement power supply unit]]<br />
* [[Dragon32/iPhone Bi-Directional Data Cable (Rink)]]<br />
* [[Dragon 32/64 Drivewire Adapter]]<br />
* [[Floppy Cable]]<br />
<br />
== Cartridges & Expansions ==<br />
* [[Memory Map]]<br />
* [[Multicart by Prime (Phill Harvey-Smith)]]<br />
* [[DragonMMC SDCard Interface by Prime (Phill Harvey-Smith)]]<br />
* [[Oojamaflip by DragonPlus Electronics]]<br />
* [[Dragon ROM/RAM Cartridge (Rink)]]<br />
* [[Dragon I/O Cartridge (Rink)]]<br />
* [[Dragon Multi Cartridge version 1.0 (Rolo)]]<br />
* [[Dragon Multi Cartridge version 1.5 (Rolo)]]<br />
* [[80 Column WordPak]] (CoCoDemus)<br />
* [[Dragon Lab-Cartridge version 1.0 (Rolo)]]<br />
* [[uDW SD-card DriveWire microserver]] (Tormod)<br />
* [[Dragon Multi Cartridge version 1.6 (Rolo)]]<br />
<br />
== 6809 DIY construction kits ==<br />
Here a list of external DIY instructions to build a own 6809 based computer:<br />
<br />
* [http://searle.hostei.com/grant/Multicomp/ Grant's Low-cost FPGA project "MULTICOMP"]<br />
* [http://searle.hostei.com/grant/6809/Simple6809.html Grant's 6-chip 6809 computer]<br />
* [http://www.msarnoff.org/projects/6809/ Ultim809: Homebrew 8-Bit Computer]<br />
* [http://www.8bitforce.com/simon6809/ Simon 6809]<br />
* [http://laurent68k.free.fr/Site/RedBoard6809.html HOMEBREW Computer 6809: RedBoard]<br />
<br />
See also forums thread related to this list: http://archive.worldofdragon.org/phpBB3/viewtopic.php?f=8&t=4338<br />
<br />
<br />
[[Category:Documentation]] [[Category:Hardware]] [[Category:DIY_Projects]]</div>Adminhttp://worldofdragon.org/index.php?title=User:Admin&diff=9642User:Admin2021-01-18T14:24:31Z<p>Admin: Created page with "simonhardy72@yahoo.co.uk"</p>
<hr />
<div>simonhardy72@yahoo.co.uk</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9641Main Page2020-11-08T11:27:56Z<p>Admin: /* November 2020 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center">[[File:DragonDataLogo.jpg|300px]]<font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font>[[File:DragonDataLogo.jpg|300px]]<br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Elkan%20Electronics/Dragon%20Cruncher Elkan Electronics - Dragon Cruncher]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/TRUN Preston Computer Games - TRUN]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Wizards%20Lair Preston Computer Games - Wizards Lair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9640Main Page2020-11-07T16:03:42Z<p>Admin: /* November 2020 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center">[[File:DragonDataLogo.jpg|300px]]<font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font>[[File:DragonDataLogo.jpg|300px]]<br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Autorun%20II Preston Computer Games - Autorun II]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/Hotel%20On%20Mayfair Preston Computer Games - Hotel On Mayfair]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9639Main Page2020-11-07T13:52:03Z<p>Admin: </p>
<hr />
<div>__NOTOC__<br />
<div align="center">[[File:DragonDataLogo.jpg|300px]]<font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font>[[File:DragonDataLogo.jpg|300px]]<br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Datacom/5%20Games%20Tape Datacom - 5 Games Tape]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Preston%20Computer%20Games/5%20Games%20Tape Preston Computer Games - 5 Games Tape]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9638Main Page2020-11-03T18:49:49Z<p>Admin: /* October 2020 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center">[[File:DragonDataLogo.jpg|300px]]<font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font>[[File:DragonDataLogo.jpg|300px]]<br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== November 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Rampage%20Software/Picture%20Writer RamPage - Picture Writer]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9637Main Page2020-11-02T15:38:56Z<p>Admin: /* October 2020 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center">[[File:DragonDataLogo.jpg|300px]]<font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font>[[File:DragonDataLogo.jpg|300px]]<br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9636Main Page2020-11-02T15:35:59Z<p>Admin: /* October 2020 */</p>
<hr />
<div>__NOTOC__<br />
<div align="center">[[File:DragonDataLogo.jpg|300px]]<font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font>[[File:DragonDataLogo.jpg|300px]]<br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
<br />
=== September 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Adminhttp://worldofdragon.org/index.php?title=Main_Page&diff=9635Main Page2020-11-02T08:35:24Z<p>Admin: /* Recent Dragon Downloads Changes */</p>
<hr />
<div>__NOTOC__<br />
<div align="center">[[File:DragonDataLogo.jpg|300px]]<font size="7"><font color="#cc0000">The </font><font face="Arial Black"><font color="#ff0000" size="7">D</font><font color="#ff9933" size="7">R</font><font color="#ffff00" size="7">A</font><font color="#00ff00" size="7">G</font><font color="#009900" size="7">O</font><font color="#6699ff" size="7">N</font></font><font color="#008080" face="Arial Black" size="7"></font><font color="#6699ff" size="7"> Archive</font></font>[[File:DragonDataLogo.jpg|300px]]<br />
<br><br />
<br><br />
'''There are now [[Special:Allpages|{{NUMBEROFARTICLES}} articles]] online.'''</div><br />
<br><br />
<br />
Welcome to The Dragon Archive, a complete archive of everything related to the Dragon series of machines ([[Dragon 32]], [[Dragon 64]], [[Dragon 200]], [[Dragon 64|Tano Dragon]]). <br />
<br />
The Dragon Archive is a wiki that contains information about these machines, emulation of the [[Dragon 32]] and [[Dragon 64]], Dragon related Publications ([[Books]], [[Magazines]], Newsletters), Adverts and the [http://archive.worldofdragon.org/archive/index.php Dragon Software Archive] containing [[Games|games]], applications and system software.<br />
<br />
You will need to register to be able to contribute to the site and its [http://archive.worldofdragon.org/phpBB3 forums], so please don't be shy. I encourage all members to take and active role in providing new content.<br />
<br />
With over 700 files in the software archive and still more to be uploaded as I get them sorted this is the largest collection of original [[Dragon 32]] and [[Dragon 64]] software on the internet. If you are looking to emulate a Dragon then the archive recommends either the excellent [[XROAR]] from [http://www.6809.org.uk/dragon/xroar.shtml www.6809.org.uk] or [[MAME]] from [https://www.mamedev.org www.mamedev.org]<br />
<div align="center"><br />
'''This site is a Wiki and its success depends upon your contribution.....so get involved today!'''<br />
<br />
</div><br />
<br />
{| width="100%" class="FCK__ShowTableBorders"<br />
|- valign="top"<br />
| style="vertical-align: top;" | <br />
<br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
=== Recent Dragon Downloads Changes ===<br />
<br />
[https://archive.worldofdragon.org/browse/ All Downloads]<br />
<br />
=== October 2020 ===<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/A%26F/Horror%20Castle A&F - Horror Castle]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Bailey%20Soft/Casino%20Pack%20One Bailey Soft - Casino Pack 1]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/IDS/El%20Microprocesador IDS - El Microprocesador]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Juniper%20Computing/Word%20Processor Juniper Computing - Word Processor]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Merlin%20Software/Lander Merlin Software - Lander]<br />
<br />
'''Fixed''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/New%20Dimension%20Software/3D%20Graphics New Dimension Software - 3D Graphics]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Touchdown Wizard Software - Touchdown]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Dragon%20Startrek Wizard Software - Dragon Startrek]<br />
<br />
'''New''' - [https://archive.worldofdragon.org/browse/?dir=downloads/Software/Dragon/Wizard%20Software/Strategy Wizard Software - Strategy]<br />
<br />
</div><br />
<br />
<div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Contributors ===<br />
<br />
'''Phill Harvey-Smith''' - All his help in getting the Dragon Alphas and Beta running again, creating the emulation of these machines in MESS and his recent help in creating a multi-load cart that we used at VCF-GB and for taking time out to dump a load of ROMS for me.<br />
<br />
'''Ray Smith''' - Boxed Dragon 64, multiple Dragon Data Disk Drives and Disk Controllers. Dragon software on tape and disk. Every issue of the National Dragon Users Group newsletter, and every issue of his own UP-2-DATE disk magazine.<br />
<br />
'''Sarah Burgin''' - Sarah has worked with me to update the Dragon Convert program for archive use. Its original purpose was to convert Dragon information for use with the Dragon emulators, and in doing so create the smallest possible file. My requirement was to preserve the content of Dragon tapes so that they could be re-created and loaded into a real Dragon. Sarah was kind enough to provide me with the source code and allow me to develop the program - source code I have since lost :-(.<br />
<br />
'''Richard Harding''' - Custodian of the Dragon Data archive. He has been kind enough to allow me to use some of his scanned images on this site (no point in scanning the same image twice). He and I are working together on our respective archives and collaborating where possible.<br />
<br />
'''Paul Grade''' - Paul was kind enough to re-visit his days of running the National Dragon Users Group and search his attic for the schematic diagrams the group once sold for a pound each. He scanned them in and they are now available from this site.<br />
<br />
'''Ross Hamilton''' - The original owner of The Dragon Software Archive. Ross was kind enough to send me the archive as a starting point for my site.<br />
<br />
'''Robert Olive''' - Robert has kindly scanned in some covers for games that I don't yet have in the archive, he as also agreed to try to archive these games and send them to me. Many thanks Robert.<br />
<br />
'''Soren Roug''' - Virtual disk images of OS9 C and OS9 Pascal. My disks seem to be in a format that VCOPY cannot read. Many thanks Soren for sending me these files.<br />
<br />
'''Tom Wilkinson''' - Tom has sampled and converted many Dragon games into .CAS files for the archive, many thanks Tom for your input.<br />
<br />
'''Alastair Shewan''' - Alastair has sent me some additions to the software archive, many thanks for your input into this site.<br />
<br />
'''Eddie Freeman''' - Has been most helpful with information and tracking down Dragon related people for me, many thanks Eddie. He has also donated boxes full of Dragon related documents, adventure solutions etc.<br />
<br />
'''Terry Chittock''' - Terry has been kind enough to donate a number of software items to the archive. Many Thanks.<br />
<br />
'''David Linsley''' - Permission to publish an edited version of his History of the Dragon article<br />
<br />
</div><br />
<br><br />
<br />
<br />
| width="50%" style="vertical-align: top;" | <div style="border: 1px solid rgb(255, 201, 201); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(255, 243, 243);"><br />
<br />
=== Whats New in the Wiki? ===<br />
<br />
[[Special:RecentChanges|Recent Changes]]<br />
<br />
[[Special:NewPages|New Pages]]<br />
<br />
'''June 2020'''<br />
New section on side bar ''Dragon Downloads Quickstart'' - Links to premade downloadable content for getting those games loaded. Android Phone contains hundreds of games in WAV format that can be played from most Android Phones via an App and CLOAD/CLOADM loaded into a Dragon. CoCoSDC, DragonDrive and DragonMMC contain content that can be put into SDCard or USB for those devices and contain hundreds of files. Enjoy !!<br />
<br />
'''February 2020'''<br />
''PLAY NOW'' - Go visit the software download area and where you see the "Play Now" link you can play cassette and disk games in your browser courtesy of Xroar Online.<br />
<br />
'''February 2019'''<br />
Lots of updates behind the scenes. Forum is now running on the latest version of phpBB3 - Wiki is next !!. The downloads archive continues to grow with additional software and is now >5GB in size. More planned for 2019 so watch this space !<br />
<br />
'''February 2018'''<br />
Massive archive update just uploaded - including 400Mb of additional content. Mostly new scans of inlays and manuals but also some MIA titles are now no longer MIA and we now have a large number of the master disks used at Orange Software/Pulser Software/PSE to master their disk and tape products - scans of the disk labels (for all disks) are on the to do list. Still more to sort out, and a huge "dump" of files not in the new archive to work through.<br />
<br />
'''January 2018'''<br />
A new year and a new archive (well the start of one). Combining the excellent work of various contributors, plus a lot of scanning from the archives own collection, we now have much more content available and still more to come. Over the next few months the content in the downloads section will be re-organised as I introduce a new structure and content. The most important changes will be when looking for Tape/Disk and Rom content to download - these will now ALL be under "Software" and follow the same structure and the TOSEC naming standard (The important bit is the [!] which indicates a PERFECT dump and [u] which indicates an under-dump - IE there is content missing and the title needs to be re-dumped - usually this is sync bytes on headers, but could also be level data or graphic data for 64K games). For a time it will be split between the two locations as I work through each publisher.<br />
<br />
'''June 2017'''<br />
Saturday 3rd June 2016 saw a gathering of Dragon and 680x friends at the Centre for Computing History in Cambridge, where once again THREE Alphas/Dragon Professionals were on display and the Dragon Beta too. Thanks to Tony for organising and all those who came or brought something to exhibit - lots to see - playing Dunjunz on real hardware was manic and seeing other works in progress was amazing. I have also recently uploaded a large number of VDK disk images that were not previously online - mostly FLEX related with a couple of DragonPlus specific titles in there too.<br />
<br />
'''November 2016'''<br />
Started an overhaul of the download area - this will sadly break most of the links between the Wiki pages and the files, but fixing those is on the TODO list. I am now grouping the files into folders as it had become hard to find stuff - 90% done. I have also moved all the older incomplete [u] files into a zzBadDumps folder where we now have a perfect image of the tape content. There are still many more that need to be re-imaged. I am also going through my collection and converting more tapes - according to my spreadsheet I have over 100 titles that are not available in CAS/WAV form - something for the long winter nights. Over 20 have already been done and are available. I am also being very cautious about adding content from other sites as some of it is CoCo software that just happens to work on a Dragon (unless it needs key presses, then you have to work out the kepmap differences) - these will be put into the CoCo folder rather than the Dragon folder based on the machine they were originally intended/sold for.<br />
<br />
'''June 2016'''<br />
Its been a while and a lot has happened. All pages are now assigned to one or more categories to help visitors find information and there has been a regular stream of updates from the core contributors. Thanks guys for your hard work - you know who you are :-).... Admin<br />
<br />
</div><br />
<div style="border: 1px solid rgb(228, 222, 222); margin: 0px 0px 5px; padding: 0.5em 1em; background-color: rgb(249, 249, 249);"><br />
<br />
=== Did you know? ===<br />
<br />
* That BGMICRO can supply the ICS2797 as a replacement for the WD2797 disc controller IC - Once the new IC is inplace you may need to use a scope to calibrate it correctly.<br />
* That you can buy clothing with the Dragon Logo on it from [http://www.zazzle.co.uk/dragon_logo_tshirt-235986884947291137 zazzle]<br />
* That the author of the Dragon BIOS encoded his initials into the final image so ALL dragons have the initials DNS hidden within their ROM?<br />
* That the once managing director of Microdeal now sells custom made cars on the south coast of the UK?<br />
* That MESS can emulate the Dragon 32, Dragon 64, Alpha and Beta?<br />
* That in 2007 a new game was written for the Dragon 32/64 (and CoCo 2/3). That game was [[GLOVE]] (a Gauntlet style game) and the same author has just released a 6809 remake of 3D Deathchase in 2009. Good work James, two new Dragon games in the last 2 years.<br />
<br />
</div><br />
<br />
|}</div>Admin