думаю даже Радио-86РК можно было дополнить директивой circulation тем патче что она совсем небольшая получается набросок такой для 580ВМ80А
2A MBMC HL<- M(MBMC)
C<- L размер блока сырца 0-FF
B<- H счётчик например по три раза повторить и до FF включительно
2A MDME HL<- M(MDME)объём для тиражирования только -
EB HL<=>DE - по FF из-за малой адресации вм80
21 0000 HL<- 0000 обнулить
7A A<- B
19 HL<- HL+DE M1
3D A<- A-1
C2 JNZ M1
C<- E --------- 19 байтов
в HL итоговый объём тиражирования
в B кратность тиражирования
в C объём для тиражирования
в DE объём для тиражирования
C5 PUSH BC
B<- H пересылаем
C<- L в BC итоговый объём тиражирования
2A MMMM HL<- M(MMMM) начало тиражируемой области памяти
19 HL<- HL+DE в HL верхний адрес сырца
EB HL<=>DE в DE верхний адрес сырца
2A MMMM HL<- M(MMMM) начало тиражируемой области памяти
09 HL<- HL+BC в HL верхний адрес тиража
C1 POP BC --------13 байтов
START
C5 PUSH BC M3
1E A<- MM(читать сырец по DE) M2
77 M(HL)<- A (в тираж по HL)
2B HL<- HL-1 тираж на 1 ближе к началу
0D B<- B-1 уменьшаем счетчик сделаных копий
C2 JNZ M2 если ещё не 0 переходим на M2
C1 POP BC
1B DE<- DE-1 сырец на 1 ближе к началу
C<- C-1 уменьшаем счетчик использованого сырца
C2 JNZ M3 если ещё не 0 переходим на M3 ------14 байтов
SONY
informatik-san по видимому талантливый программист => советую участвовать на форумах программёров и печататься в компьютерных журналах . в 1981 году посоветовал Нечаеву и с тех пор он печатается .
ассемблер вм80 совсем лёгкий и в начале для освоения других показателен