Paluu etusivulle
Tätä ohjelma koodia saa tekijänoikeuksien mukaan vapaasti kopioida ja käyttää sellaisenaan, tai sovellettuna vapaasti.
*****************************************************************************

Muuttujat SRAMA
      TESTATAAN MUISTI, SEN TOIMINNAN TOTEAMISEKSI

      -ohjelma kirjoittaa ja lukee muistipaikkoihin
       9000h-AFFFh ensin tavun FFh, sen jälkeen tavun 00h.
      -OHJELMA EI SAA KÄYTTÄÄ testaamatonta RAM MUISTIA EIKÄ PINOA
       EIKÄ SE SAA SEKOITTAA OUTPUT PIIRIEN MUISTEJA
      KIRJOITETAAN MUISTIOSOITTEISIIN 9000-AFFF B-REKISTERIN SISÄLTÖ.
      DE:SSÄ OSOITE, B:SSÄ KIRJOITETTAVA TAVU
      ADDR: OPC:
      ================
TSTME;0132  11  00  90  LD DE,[SRAMA]      ;OSOITE JOSTA KIRJOITTAMINEN ALKAA
      0135  06  FF      LD B,FFh           ;ENSIN B:HEN SISÄLTÖ(ff)
KIRJ2;0137  78          LD A,B
      0138  12          LD M(de),A         ;MUISTIIN KIRJOITUS
      0139  18  B8      JRMP {DISBD} RELATIVE TULOSTETAAN TAVU JA OSOITE
      ================
*****************************************************************************
Onko luettu tieto oikea
      ADDR: OPC:
      ================
DONOK;013B  08          AF CHANGE AF'
      013C  1A          LD A,M(de)         ;LUETAAN MUISTISTA
      013D  B8          CP B                kirjotus 00 tai ff
      013E  C2  BC  01  JNZ [ERROR]        ;TIETO ON VÄÄRÄ
      ================
*****************************************************************************
onko osoite B000H ?, OLLAANKO OUT MUISTI REKISTERIEN ALUEELLA ?
      ADDR: OPC:
      ================
      0141  13          INC DE             ;DE = DE + 1
      0142  21  EA  AF  LD HL,[LPUSK]       OSOITE-1 JOSTA ALK.OUT-REKISTERIT
      0145  AF          XOR A              :NOLLATAAN CARRY
      0146  ED  52      SUB HL,DE
      0148  28  38      JRZ {OHIIO} RELATIVE  OHITETAAN I/O-MUISTIN KOHDALLA
                        OHJELMAN TÄYTYY OLLA TALLETTAMATTA OUTPUT PORTTIEN
                        MUISTIALUEELLE MITÄÄN JA TÄSTÄ SYYSTÄ OHITETAAN
      014A  21  FE  A7  LD HL,[RGMEM]       JOSTA RENGASMUISTI ALKAA
      014D  AF          XOR A              :NOLLATAAN CARRY
      014E  ED  52      SUB HL,DE
      0150  28  35      JRZ {OHIRG} RELATIVE OHITETAAN RENGASMUISTIN KOHAL.
      0152  21  40  90  LD HL,9040h AINASKI EKAT 903F ASTI ON OK.
                        NYT KUN TIEDETŽŽN MUISTIN ALUN TOIMIVAN VOIDAAN
                        LUOTETTAVASTI KŽYTTŽŽ PINOMUISTIA
                        KUN OSOITE ON 9040 KIRJOTETAAN NÄYTÖLLE
      0155  AF          XOR A              :NOLLATAAN CARRY
      0156  ED  52      SUB HL,DE
      0158  20  13      JRNZ {EITXT} RELATIVE EI VIELÄ NÄYTETÄ TEKSTIÄ
      015A  B8          CP B
      015B  30  DA      JRNC {KIRJ2} RELATIVE TOISELLA KIERROKSELLA EI TEKSTIÄ
      015D  31  3F  90  LD SP,903Fh        :PINO MUISTIN OSOITTIMEN ALUSTUS
                        VÄLIAIKAISESTI JA NYT VOIDAAN KÄYTTÄÄ CALL KUTSUJA
      0160  CD  D8  0F  CALL [LCDRZ] LCD NÄYTÖN RESET
      0163  FD  21      LD IY,LCD TEKSTI 01
      0165  7E  0F      [LCD01]
      0167  CD  FF  0D  CALL [LCTX1]       :ON TÄRKEÄÄ KASVATTAA DE:TÄ KOSKA
      016A  13          INC DE              MUUTEN JÄÄDÄÄN KIINNI TOISTOON.
      016B  18  CA      JRMP {KIRJ2} RELATIVE    
EITXT;016D  21  00  B0  LD HL,B000h
      0170  AF          XOR A              :NOLLATAAN CARRY
      0171  ED  52      SUB HL,DE
      0173  28  02      JRZ {TKIER} RELATIVE    ;OSOITE ON B000h
      0175  18  C0      JRMP {KIRJ2} RELATIVE   ;OSOITE EI OLE VIELÄ B000h
TKIER;0177  11  00  90  LD DE,[SRAMA]
      017A  04          INC B
      017B  05          DEC B
      017C  CA  00  03  JZ [ALKUK]         ;KOSKA NYT ON TESTATTU KAHDESTI
      017F  04          INC B  FF->00      ;TOINEN KIERROS 00:lla
      0180  18  B5      JRMP {KIRJ2}       ;KERRAN 9000-AFFF TESTATTU b:llÄ
OHIIO;0182  11  F0  AF  LD DE,[OUT03]      ;OHITETAAN AFEB-AFF0h IO-MUISTIT
      0185  18  B0      JRMP {KIRJ2} RELATIVE
OHIRG;0187  11  E0  A8  LD DE,A8E0h        ;OHITETAAN A800-A8DFh RENGASMUISTI
      018A  18  AB      JRMP {KIRJ2} RELATIVE
      ================
*****************************************************************************
Paluu etusivulle