This page (revision-12) was last changed on 03-Feb-2023 15:21 by Gromit 

This page was created on 10-Feb-2011 12:48 by Gromit

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
12 03-Feb-2023 15:21 16 KB Gromit to previous
11 14-Feb-2011 09:54 16 KB Gromit to previous | to last
10 14-Feb-2011 09:40 16 KB Gromit to previous | to last
9 13-Feb-2011 19:44 16 KB Gromit to previous | to last
8 13-Feb-2011 19:44 16 KB Gromit to previous | to last
7 13-Feb-2011 19:42 16 KB Gromit to previous | to last
6 11-Feb-2011 14:59 16 KB Gromit to previous | to last
5 11-Feb-2011 14:58 16 KB Gromit to previous | to last
4 10-Feb-2011 12:50 241 bytes Gromit to previous | to last Musik mit ACTION ==> Musik in ACTION
3 10-Feb-2011 12:49 241 bytes Gromit to previous | to last
2 10-Feb-2011 12:49 247 bytes Gromit to previous | to last
1 10-Feb-2011 12:48 198 bytes Gromit to last

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 2 changed 2 lines
Author: Peter Finzel\\
Language: ACTION!\\
Author: Peter Finzel\\
Language: ACTION!\\
At line 5 changed one line
Published: Computer Kontakt (CK) 10/85 \\
Published: Computer Kontakt (CK) 10/ 85 \\
At line 9 changed one line
In der Assemblerecke dieses Monats gibt es eine besondere Premiere: Das erste Action!-Programm, das wir in Computer-Kontakt abdrucken, wenn nicht sogar dis erste in der gesamten deutschen Computer- Literatur. Action! ist schlicht gesagt eines der besten Software-Pakete, die für Atari-Computer je entwickelt wurden. Russ Wetmore bezeichnet es in einem Artikel (Analog 7/ 85, S. 23) als "Programmer's Dream' und ich kann Russ wirklich nur voll Unterstützen.
In der Assemblerecke dieses Monats gibt es eine besondere Premiere: Das erste Action!-Programm, das wir in Computer-Kontakt abdrucken, wenn nicht sogar dis erste in der gesamten deutschen Computer- Literatur. Action! ist schlicht gesagt eines der besten Software-Pakete, die für Atari-Computer je entwickelt wurden. Russ Wetmore bezeichnet es in einem Artikel ([Analog 7/ 85, S. 23|Getting in on the Action 1]) als "Programmer's Dream' und ich kann Russ wirklich nur voll unterstützen.
At line 11 changed one line
Wer bisher noch keine eigenen Erfahrungen mit Action! sammeln konnte, sollte deshalb 'den Kasten "Was ist Action?" lesen. Dort finden Sie einige zum Verständnis wesentliche Punkte kurz zusammengefasst. Es muss vorausgeschickt werden, dass man zum Eintippen des Listings unbedingt eine. Action!-Cartridge benötigt, bestimmt eine bittere Pille für alle Leser der Assemblerecke, die keine besitzen. Vielleicht ist es aber auch für diesen Leserkreis interessant, einen Einblick in ein Action!-Programm zu bekommen.
Wer bisher noch keine eigenen Erfahrungen mit Action! sammeln konnte, sollte deshalb den Kasten "Was ist Action?" lesen. Dort finden Sie einige zum Verständnis wesentliche Punkte kurz zusammengefasst. Es muss vorausgeschickt werden, dass man zum Eintippen des Listings unbedingt eine Action!-Cartridge benötigt, bestimmt eine bittere Pille für alle Leser der Assemblerecke, die keine besitzen. Vielleicht ist es aber auch für diesen Leserkreis interessant, einen Einblick in ein Action!-Programm zu bekommen.
At line 15 added one line
At line 18 added one line
At line 22 changed 7 lines
HA : halbe Note
VI : viertel Note
AC : achtel Note
SE : sechzehntel Note
HP : halbe Note punktiert
VP : vierte! Note punktiert
AP : achtet Note punktiert
HA : halbe Note\\
VI : viertel Note\\
AC : achtel Note\\
SE : sechzehntel Note\\
HP : halbe Note punktiert \\
VP : vierte! Note punktiert \\
AP : achtet Note punktiert\\
At line 34 changed one line
{{{BYTE ARRAY N1 = [C4:VI. D4:VI E4:VI EN:0]}}}
{{{BYTE ARRAY N1 = [C4:VI D4:VI E4:VI EN:0]}}}
At line 42 changed one line
Wie bitte? 256 Lautstärke- Stufen? Der Atari hat doch nur 16!
Wie bitte? 256 Lautstärke-Stufen? Der Atari hat doch nur 16!
At line 50 changed one line
Hauptmodul des Programms ist die Prozedur Musik, die für das Spielen des ganzen Stückes verantwortlich ist. Es benutzt die Prozedur Alle-4(), in der nacheinander alle 4 Stimmen bearbeitet werden. Die Prozedur Hardware() ist der sogenannte Hardware-Treiber, der die in den Modulen Stimme() und Hülle() berechneten Werte der Lautstärke (in Laut(i)) und der Tonfrequenz (in Freq(I)) in eine für die Hardware angenehme Form bringt und diese schließlich in die passenden POKEY-Register einträgt.
Hauptmodul des Programms ist die Prozedur Musik, die für das Spielen des ganzen Stückes verantwortlich ist. Es benutzt die Prozedur Alle_4(), in der nacheinander alle 4 Stimmen bearbeitet werden. Die Prozedur Hardware() ist der sogenannte Hardware-Treiber, der die in den Modulen Stimme() und Huelle() berechneten Werte der Lautstärke (in Laut(i)) und der Tonfrequenz (in Freq(i)) in eine für die Hardware angenehme Form bringt und diese schließlich in die passenden POKEY-Register einträgt.
At line 52 changed one line
Hier noch Hinweise zu einigen Formulierungen in Action!, die Basic-Programmierern höchstwahrscheinlich nicht geläufig sind: Der Ausdruck i==+1 ist eine Kurzschreibweise für i=i+1. LSH und RSH sind Operatoren. Für Newcomer: Links-Shift entspricht einer Multiplikation mit 2. Der Ausdruck A = B LSH 4 bedeutet, dass B viermal links geshiftet wird. In Basic müsste dazu eine Multiplikation verwendet werden: A = 8*16. Weiterhin ist es in Action! möglich, einfache Variablen und sogar ganze Felder direkt auf Hardware-Register zu legen, wodurch Peek und Poke-Befehle überflüssig werden. Für AUDCTL = 0 würde man z. B. in Basic POKE AUDCTL, 0 schreiben müssen.
Hier noch Hinweise zu einigen Formulierungen in Action!, die Basic-Programmierern höchstwahrscheinlich nicht geläufig sind: Der Ausdruck i==+1 ist eine Kurzschreibweise für i=i+1. LSH und RSH sind Operatoren. Für Newcomer: Links-Shift entspricht einer Multiplikation mit 2. Der Ausdruck A = B LSH 4 bedeutet, dass B viermal links geshiftet wird. In Basic müsste dazu eine Multiplikation verwendet werden: A = 8*16. Weiterhin ist es in Action! möglich, einfache Variablen und sogar ganze Felder direkt auf Hardware-Register zu legen, wodurch Peek und Poke-Befehle überflüssig werden. Für [AUDCTL] = 0 würde man z. B. in Basic POKE AUDCTL, 0 schreiben müssen.
At line 79 added one line
At line 86 changed one line
E3 ="196",
E3 ="193",
At line 94 changed one line
F4 = "91", FIS4= "97',
F4 = "91", FIS4= "86",
At line 122 changed 2 lines
BYIE ARRAY N1=[
CA:VI G4:VI G4:AC F4:AC
BYTE ARRAY N1=[
C4:VI G4:VI G4:AC F4:AC
At line 125 changed 2 lines
A4:AC G4:AC F4:AC E4:AC D4:AC D4:AC C4:AC
B3:VI A3:AC B3:AC G3;VI
A4:AC G4:AC F4:AC E4:AC D4:AC C4:AC
B3:VI A3:AC B3:AC G3:VI
At line 131 changed 3 lines
;
E4;AC C4:AC G4:AC C4:AC E4:AC C4:AC
D4:AD B3:AC G4:AC B3:AC D4:AC B3:AC
E4:AC C4:AC G4:AC C4:AC E4:AC C4:AC
D4:AC B3:AC G4:AC B3:AC D4:AC B3:AC
At line 150 changed one line
;
At line 157 changed one line
G3:VI D3:V1 D3:VI
G3:VI D3:VI D3:VI
At line 182 changed one line
BYTE SKCTL =$020F,
BYTE SKCTL =$D20F,
At line 250 changed one line
ENDE==-1
ENDE==-1
At line 343 changed one line
;stück wird vollstaendig durch-
;stueck wird vollstaendig durch-