Advertisement
rnort

AVMIS-2

Sep 17th, 2013
398
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     ORG $C000
  2.  
  3. REGBAS EQU $1000        * Стартовый адрес блока регистров
  4. TCNT EQU $0E        *Счетчик (16-бит)
  5. TOC1 EQU $16        *OC1 регистр (16-бит)
  6. TFLG1 EQU $23
  7.    
  8.     JSR CLRAMEM
  9.     JSR SETMEM
  10.     RTS
  11.  
  12. INITDELAY
  13.     LDX #REGBAS     *Указатель на блок регистров
  14.     LDAA #$80
  15.     STAA TFLG1,X
  16.     RTS
  17. DLY10
  18.     JSR INITDELAY   *Вызов процедуры инициализации
  19.     LDD TCNT,X
  20.     ADDD #20000
  21.     STD TOC1,X
  22. LP1
  23.     BRCLR TFLG1,X $80 LP1
  24.     RTS
  25.    
  26. * Clear all memory proc
  27. CLRAMEM
  28.     LDX #$b60F      *Адрес стираемого байта
  29.     LDAB #%00000110     *Конфигурация регистра PPROG
  30.     STAB $103B      *Программирования регистра PPROG
  31.     STAB 0,X        *Запись произвольного байта по адресу стираемого байта
  32.     LDAB #$17
  33.     STAB $103B      *Подача напряжения программирования
  34.     JSR DLY10       *Вызов процедуры задержки на 10 мс
  35.     CLR $103B       * Выключение высокого напряжения программирования
  36.    
  37.     RTS
  38.  
  39.  
  40. SETMEM
  41.    
  42.     LDX #$b600      *Адрес программируемого байта
  43.    
  44.    
  45. LOOP2   LDAB #$00
  46.     PSHX
  47. LOOP1   PULX
  48.     PSHX
  49.     ABX
  50.     PSHB
  51.     PSHX
  52.     JSR SETBYTE
  53.     PULX
  54.     LDAB #$11 * СМЕЩЕНИЕ НА 11 КЛЕТОК
  55.     ABX
  56.     JSR SETBYTE
  57.     PULB
  58.     INCB
  59.     INCB
  60.     CMPB #$10
  61.     BNE LOOP1
  62.     PULX
  63.     CLC
  64.     PSHB
  65.     LDAB #$20 * СМЕЩЕНИЕ НА 2 СТРОКИ
  66.     ABX
  67.     CPX #$B800
  68.     PULB
  69.     BNE LOOP2
  70.    
  71.     RTS
  72.    
  73.    
  74. SETBYTE
  75.     LDAB #%00000010     *Конфигурация регистра PPROG
  76.     STAB $103B      *Программирования регистра PPROG
  77.     LDAA #$10       *Записываемые данные
  78.  
  79.     STAA 0,X        *Запись байта по адресу программируемого байта
  80.     LDAB #$03  
  81.     STAB $103B      *Подача напряжения программирования
  82.     JSR DLY10       *Вызов процедуры задержки на 10 мс
  83.     CLR $103B       * Выключение высокого напряжения программирования
  84.  
  85.     RTS
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement