home *** CD-ROM | disk | FTP | other *** search
- **************************************
- * *
- * NAAM : VOORBEELD SCHERM *
- * *
- * DATUM : 11 DECEMBER 1990 *
- * *
- * DOEL : VOORBEELD VOOR HET GEBRUI- *
- * KEN VAN DE KALE STRUCTUUR *
- * *
- * GEWOON EEN SCHERMPJE OP *
- * BEELD DAT WACHT OP START *
- * VOOR SCHERM ROLLER TWEE *
- * EEN ANDERE CONSOLE BETEKEND*
- * EEN LICHT SCHERM EN VUUR *
- * KNOP BETEKEND EINDE PRG *
- * *
- **************************************
-
-
-
- *------------------------------------*
- * ADRES-LABELS *
- *------------------------------------*
-
- STRIG0 EQU $284 VUURKNOP 1
-
- VDSLST EQU $200 DLI VECTOR
- SDLSTL EQU $230 DISPLAY LST
-
- NMIEN EQU $D40E
-
- SETVBV EQU $E45C SET VBI
- SYSVBV EQU $E45F SYSTEM VBI
- XITVBV EQU $E462 EXIT DEF VB
-
- **************************************
- * *
- * HOOFDPROGRAMMA *
- * *
- **************************************
-
- ORG $A800
-
- JSR INIT
- JSR VWS1
-
- JMP $E474
-
- RTS
-
- **************************************
- * *
- * SUBROUTINE: INIT *
- * *
- * DOEL: INITIALISATIES OP *
- * PROGRAMMANIVEAU *
- * *
- **************************************
-
- INIT LDA #'N
- STA SCROL2
- LDA #0
- STA ENDER
- RTS
-
- **************************************
- * *
- * SUBROUTINE: VWS1 *
- * *
- * DOEL: VERWERKEN SCHERM 1 *
- * *
- **************************************
-
- VWS1 LDA #0
- STA EVWS1?
-
- *------------------------------------*
- * HIER DE HANDELINGEN DIE IN DE *
- * LUS WORDEN HERHAALD TOT EINDE OP 1 *
- * IS GEZET. *
- *------------------------------------*
-
- VWS1LUS JSR INI1
- JSR LVS1
-
- *------------------------------------*
- * OP VOORWAARDE UIT LVS1 EINDE AAN *
- *------------------------------------*
-
- LDA ENDER
- BEQ NOEVWS1
-
- LDA #1
- STA EVWS1?
- BNE ENDVWS1
-
- *------------------------------------*
- * INVOER VAN SCHERM 1 VERWERKEN *
- *------------------------------------*
-
- NOEVWS1 JSR VW1
-
- *------------------------------------*
- * ALS EVWS1? <>0 DAN EINDE LUS SCH 1 *
- *------------------------------------*
-
- ENDVWS1 LDA EVWS1?
- BEQ VWS1LUS
-
- RTS
-
- **************************************
- * *
- * SUBROUTINE: INI1 *
- * *
- * DOEL: INITIALISEREN SCHERM 1 *
- * *
- **************************************
-
- *------------------------------------*
- * DISPLAY LIST OP DL ZETTEN *
- *------------------------------------*
-
- INI1 LDA #DLS1:L
- STA SDLSTL
- LDA #DLS1:H
- STA SDLSTL+1
-
- *------------------------------------*
- * IMMEDIATE VERTICAL BLANK OP VBIS1 *
- *------------------------------------*
-
- LDA #6
- LDY #VBIS1:L
- LDX #VBIS1:H
- JSR SETVBV
-
- *------------------------------------*
- * DEFERRED VERTICAL BLANK OP VBDS1 *
- *------------------------------------*
-
- LDA #7
- LDY #VBDS1:L
- LDX #VBDS1:H
- JSR SETVBV
-
- *------------------------------------*
- * DLST INTERRUPT OP DLIS1 ZETTEN *
- *------------------------------------*
-
- LDA #DLIS11:L
- STA VDSLST
- LDA #DLIS11:H
- STA VDSLST+1
-
- *------------------------------------*
- * DLI'S AANZETTEN *
- *------------------------------------*
-
- LDA #$C0
- STA NMIEN
-
- RTS
-
- **************************************
- * *
- * SUBROUTINE: LVS1 *
- * *
- * DOEL: LEES EN VALIDEER SCH 1 *
- * *
- **************************************
-
- LVS1 LDA #0
- STA ELVS1?
-
- *------------------------------------*
- * INVOER OP SCHERM 1 REGELEN *
- *------------------------------------*
-
- LVS1LUS JSR LEES1
-
- *------------------------------------*
- * EINDE PROGRAMMA? (DOOR BIJV ESC?) *
- *------------------------------------*
-
- LDA ENDER
- BEQ NOELVS1
-
- LDA #1
- STA ELVS1?
- BNE ENDLVS1
-
- *------------------------------------*
- * DE INVOER KONTROLEREN *
- *------------------------------------*
-
- NOELVS1 LDA #'N
- STA FOUT
-
- JSR KSCH1
-
- LDA FOUT
- CMP #'N
- BNE ENDLVS1
-
- *------------------------------------*
- * ER WAS GEEN FOUT, DUS EINDE LVS1 *
- *------------------------------------*
-
- LDA #1
- STA ELVS1?
-
- *------------------------------------*
- * ALS ELVS1? <>0 DAN EINDE LUS LVS1 *
- *------------------------------------*
-
- ENDLVS1 LDA ELVS1?
- BEQ LVS1LUS
-
- RTS
-
- **************************************
- * *
- * SUBROUTINE: LEES1 *
- * *
- * DOEL: INVOER OP SCHERM 1 REGELEN *
- * *
- **************************************
-
- *------------------------------------*
- * WACHTEN OP FUNCTIETOETS *
- * OF OP VUURKNOP, DAT IS EINDE! *
- *------------------------------------*
-
- LEES1 LDA STRIG0
- BEQ EINDE
- LDA $D01F
- CMP #7
- BEQ LEES1
- RTS
-
- EINDE LDA #1
- STA ENDER
- RTS
-
- **************************************
- * *
- * SUBROUTINE: KSCH1 *
- * *
- * DOEL: INVOER OP SCHERM 1 KONTROLE *
- * *
- * BIJ FOUT WORDT FOUT #'J *
- * TEVENS KAN ER ERGENS EEN FOUT- *
- * BOODSCHAP WORDEN AFGEBEELD *
- * *
- **************************************
-
- *------------------------------------*
- * ALLEEN START WORDT GOEDGEKEURD *
- * DAT BETEKEND DE START VAN SCHERM *
- * ROLLER NUMMER TWEE *
- * EEN ANDERE FUNCTIETOETS BETEKEND *
- * EEN LICHT SCHERM ALS WAARSCHUWING *
- *------------------------------------*
-
- KSCH1 LDA $D01F
- CMP #6
- BEQ EKSCH1
-
- *------------------------------------*
- * GEEN START, DUS FOUTJE *
- *------------------------------------*
-
- FOUTS1 LDA $D20A
- STA $D40A
- STA $D01A
- LDA #'J
- STA FOUT
- EKSCH1 RTS
-
- **************************************
- * *
- * SUBROUTINE: VW1 *
- * *
- * DOEL: VERWERKINGEN AAN DE HAND VAN *
- * DE INVOER OP SCHERM 1 *
- * *
- * HIERIN WORDT ALS ER EEN TWEEDE *
- * SCHERM KOMT OOK VWS2 AANGEROEPEN *
- * *
- * BIJ DIT VOORBEELD WORDT ALLEEN *
- * DE VARIABELE SCROL2? OP #'J GEZET *
- * ZODAT IN VBIS1 OOK DEZE LOOPT *
- * *
- **************************************
-
- VW1 LDA #$74
- STA $D01A
- LDA #'J
- STA SCROL2
- RTS
-
- **************************************
- * *
- * INTERRUPT: VBIS1 *
- * *
- * DOEL: VERTICAL BLANK BIJ SCH 1 *
- * SCROLLER SCHERM ROLLER 1 EN *
- * SCHERM ROLLER TWEE ALS SCROL2="'J *
- * *
- **************************************
-
- VBIS1 INC POIN1
- LDA SCROL2
- CMP #'J
- BNE EVBIS1
- INC POIN2
- EVBIS1 JMP $E45F
-
- **************************************
- * *
- * INTERRUPT: VBDS1 *
- * *
- * DOEL: VERTICAL BLANK BIJ SCH 1 *
- * *
- **************************************
-
- VBDS1 JMP $E462
-
- **************************************
- * *
- * INTERRUPT: DLIS11 *
- * *
- * DOEL: 1E DLI OP SCHERM 1 *
- * *
- **************************************
-
- DLIS11 RTI
-
- **************************************
- * *
- * VARIABELEN GEBRUIKT DOOR STANDAARD *
- * SUBROUTINES *
- * *
- **************************************
-
- EVWS1 DFB 0
- ELVS1 DFB 0
- ENDER DFB 0
- FOUT DFB 0
- SCROL2 DFB 0
-
- **************************************
- * *
- * DISPLAY LIST: SCHERM 1 *
- * *
- **************************************
-
- DLS1 DFB 112,112,112,112,112,112
- DFB 2+64
- POIN1 DFW TEXT1
- DFB 112,112,112,112
- DFB 2+64
- POIN2 DFW TEXT2
- DFB 65
- DFW DLS1
-
- **************************************
- * *
- * TEXT VOOR SCHERM ROLLER 1 *
- * *
- **************************************
-
- ORG $AA00
-
- TEXT1 ASC % %
- ASC % %
- ASC %JA IK WEET HET, IK B%
- ASC %EN TE LUI OM EEN FAT%
- ASC %SOENLIJKE SOFT SCROL%
- ASC %LING IN TE BOUWEN! %
- ASC % ZIEDAAR!, EEN SCHON%
- ASC %TAAK VOOR DEGENEN DI%
- ASC %WEL ES WAT WILLEN PR%
- ASC %UTSEN! KIST UT LESE%
- ASC % W.? DAT LUKT VA%
- ASC %ST NET MEI DYN BRIEKE%
- ASC % EAGEN, OF SJOCH IK %
- ASC %DAT VERKEARD JONG? %
- ASC % %
- ASC % %
-
- **************************************
- * *
- * TEXT VOOR SCHERM ROLLER 2 *
- * *
- **************************************
-
- ORG $AB00
-
- TEXT2 ASC % %
- ASC % %
- ASC %WEER EEN VOORBEELD V%
- ASC %AN LUIHEID: GEWOON T%
- ASC %EXT 1 GEKOPIEERD!: %
- ASC %JA IK WEET HET, IK B%
- ASC %EN TE LUI OM EEN FAT%
- ASC %SOENLIJKE SOFT SCROL%
- ASC %LING IN TE BOUWEN! %
- ASC % ZIEDAAR!, EEN SCHON%
- ASC %TAAK VOOR DEGENEN DI%
- ASC %WEL ES WAT WILLEN PR%
- ASC %UTSEN! KIST UT LESE%
- ASC % W.? DAT LUKT VA%
- ASC %ST NET MEI DYN BRIEKE%
- ASC % EAGEN, OF SJOCH IK %
- ASC %DAT VERKEARD JONG? %
- ASC % %
- ASC % %
- ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯