ATM Turbo 2+ as standard yu Alone Coder This year we decided to hold a game competition that would break with stereotype “Spectrum is 48K/128K” and cemented the position Spectrum as one of the most powerful 8-bit machines. Spectrum's problem has long been the lack of a standard for extensions. Each manufacturer made its own incompatible devices, and as a result libraries accumulated hecobmectumoro software. What was needed was a standard that was required wide possibilities, availability of software, prevalence and repeatability. Wide range of possibilities - memory, sound, graphics... ATM Turbo in the early 90s it was more expensive than its competitors, not everyone could buy it. Now it is no more expensive than other Spectrums and produced in the largest editions, so from new SpectrumIt's the easiest to buy! Such is the irony of fate, due to the fact that the authors of the computer are the companyMicroArt- easily handed over to the spektrumists all the documentation and rights to productionTurbo 2+. However, as a direct descendant of Pentagon 128 (and from the same authors - the first version of his board was even called ATM 128 ), ATM Turbo has become quite widespread already at the dawn of the demoscene. After all already in one of the first Russian demos - Best 0 Super Demo (August 1993) the authors criticize the computerProfi,as if opposing it ATM: they write about the color not per point, but about 8, lack of games under expanded memory, two boards instead of one and incompatibility due to open additional ports. AMagic Softin the intro gameScorpions (1996) decideduse ATM deployment as the only alternative to the Pentagon for display of multicolors. The author did the same thing MegaScreen Multicolor Editor v2.5, andATMit was installed by default. ATM scan parameters were set from time to time default and the authors of megademos with multicolors (Resonance Megademo, Sensation Megademo, Gift for Alex Raider (1995) ). So ATM Turbo hit the demoscene. But before participating in the demoparty there was a long way to go. As you know, the first Polish and Russian demos were written mainly under 48K+AY. This was a common configuration that maximum audience guaranteed. The first democompo in Russia was supposed to be a magazine competitionSinclair Town, announced in April1995, and the editors, as she herself writes in the first number, I was guided by this very 48K+AY. Due to With the closure of the magazine, the competition did not take place. Took up the initiative magazineSpeccy,which announced its competition in September 1995 and I collected quite a lot of demos, all under the same 48K+AY. Then the story turned out in such a way that onEnlight `96compo-machine was chosen (not without the participation of the group Prestige )Pentagon 128 and that it was also the computer of the organizerFuntopWlodek Black. Thus, the first extensions that hit the Russian Spectrum demo parties, steel AY, 128K, Beta Disk (Beta 128), as well as transparent memory access (by wait) and Pentagon scan. CompetitionArtcomp `98, declared for Profi, turned out to be underestimated by the scene, andChaos Constructions `98, announced for Scorpiohas been cancelled. Covox quite quickly found its place at the demo party (Paradox `99, CAFe `999) - this was something that was easy to solder to any clone, and onATM Turboit was generally present by default. Mastered and General Sound (CC `999) - it was easy to plug it into Scorpion or KAY. Turbowas used from time to time (it is supported in a number of 3D dem since 1997, andLifeformson CC `2001was the first shown in turbo mode). Afurther? The memory has already been addressed to different clones so differently that in ZX-Format #5they decided publish a generic driver. Demomaking and driver... It is clear that the idea did not take root. In 2003, the last Spectrum manufacturer closed its doors - and something had to be decided urgently. New hardware was needed. Moreover, one where it would be possible to use the accumulated software and at the same time move on. Including accumulated software for Covox, Turbo mode, expanded memory, color on point... And here The authors of ATM Turbo have turned up by the way! 10 years have passed. Now additional capabilitiesATMuse demos at demo parties, intros and, of course, new games (authors Shiru, Transman, Hippiman, Alone Coderetc.). Modes ATM Turbo supported in many emulators and computers ZX Evo and Pentagon 2.666, and they even have a new development - so-called "ATM 3", having a Pentagon scan and addressing up to 4 megabytes of RAM. At least 314 programs have already been written for advanced capabilitiesATM,not counting software for standardCP/M, takes CP/M-software forMSX-DOSand software utilities: http://alonecoder.nedopc.com/zx/atmsoft.txt * * * Now imagine that you wanted to write a game to match the color on point. Graphics output is far from the most difficult part of the game. Yes, at48K this was the most difficult part, and not always. But onATM no such problems neither with memory, nor with speed, nor with the beam. We have two screen areas. While one is visible, we fill another. Then another one is visible - and we fill in the first one. Visible switched by the 3rd bit of the port #7FFD,as well as on 128K. One screen area lies on pages 1 and 5, the other on pages 3 and 7 pages. You can connect a page to any quarter of memory Z80. For this there are ports #ЗFF7, #7FF7, #BFF7 and #FFF7. You need to go there write page number XOR #7F. Contents of the low-order bits of the port #7FFD is ignored. Here's how to enableEGA (320x200) mode and access these ports: LD A,%10101000 ;EGA mode, turbo CALL OUTSHADON ... OUTSHADON LD BC,#FD77 ;incl. shadow ports LD HL,10835 PUSH HL JP #3D2F Each screen area in EGA mode is divided into 4 parts of 8000 (40*200) bytes. In one part there are pixels X mod 7 = 0.1, in another 2.3, in the third 4.5, in the fourth 6.7. Thus, a full column is always entirely accessible through the elementary ADD HL,DE (DE=40). Each byte contains 2 pixels: %RLRRRLLL (imagine this byte of attributes - cxemho that’s how it is). Each of the 16 colors can be specified. To do this you need to set it to border the desired color number (colors 8..15 are specified via port #F6 ) and then write the value for this color to port #FF in the format %grbG11RB,whereGg, Rr, B- the color components in inverted form. Ready procedure for filling the palette, which was used in CatDemo, The Board, The Board II and NedoDemo 2 : SETPAL ;HL=pointer to the last byte of the paletteLD DE,#A80F ;D=EGA mode, turbo LD BC,#BD77 ;open ports and palette OUT (C),D ;enable access to the palette ATMPAL0 LD A,E BIT 3,E RES 3,A OUT(#FE),A JR Z,$+4 OUT (#F6),A LD A,(HL) DEC HL OUT(#FF),A DEC E JP P,ATMPAL0 LD BC,#FD77 ;open ports without palette OUT (C),D ;disable access to the palette RET That's all the tricks! "Your Game 5" is waiting!
Share your thoughts about the article