Sie sind auf Seite 1von 9

* * * * * * * *

LIFE LIFE.SRC STAND 19.10.2012 DAS BEKANNTE!

* ANTIC DLPTR EQU DLPTRHI EQU VDLIST EQU VDLISTHI NMIEN EQU WSYNC EQU VCOUNT EQU RTCLK EQU SDMCTL EQU * FARBEN COLPF0 COLPF1 COLPF2 COLPF3 COLBAK COLPF0S COLPF1S COLPF2S COLPF3S COLBAKS EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU 708 709 710 711 712 $D016 $D017 $D018 $D019 $D01A 560 561 $200 EQU $201 $D40E $D40A $D40B $14 559

* DISK I/O DSKINV EQU $E453 DSKCMD EQU $302 DSKAUX1 EQU $30A DSKAUX2 EQU $30B DSKDEV EQU $300 DSKUNIT EQU $301 DSKBUFF EQU $304 DSKBUFFH EQU $305 DSKTMOT EQU $306 DSKTMOTH EQU $307 * PM GRAFIK PMADR PMCNTL HPOSP0 HPOSP1 HPOSP2 HPOSP3 SIZEP0 EQU $B800 PM SPEICHER EQU $D01D PM GRAFIK EIN/AUS EQU EQU EQU EQU $D000 X POS PLAYER 1 $D001 $D002 $D003

EQU $D008 GROESE PLAYER 1

SIZEP1 SIZEP2 SIZEP3 COLPM0 COLPM1 COLPM2 COLPM3 PMBASE GRACTL

EQU $D009 EQU $D00A EQU $D00B EQU EQU EQU EQU 704 705 706 707 FARBE PLAYER 1

EQU $D407 BASISADRESS EQU $D01D PM CONTROLREG

* TASTATUR CONSOL EQU 53279

* DIE ZEROPAGE ZUR FREIEN VERWENDUNG Z1 Z2 Z3 Z4 EQU 223 EQU 224 EQU 225 EQU 226

* * HIER GEHT ES LOS * ORG $A800 LDA STA LDA STA #DLIST:L DLPTR #DLIST:H DLPTRHI

* * ZUFALLSMUSTER * * JMP FORM LDA STA STA LDA STA LDA STA STA LDA CMP BCS STA JSR LDA CMP BCS STA JSR DEC #1 X Y #1 COLOR #150 COUNT1 COUNT2 53770 #159 N X PLOT 53770 #30 NN Y PLOT COUNT1

LOOP

NN

LDA BNE DEC BNE

COUNT1 LOOP COUNT2 LOOP

* * EINE FORM ZEICHNEN * FORM LDA STA LDA STA #8 X #8 Y

LDA #1 STA COLOR JSR PLOT INC INC LDA STA JSR INC LDA STA JSR DEC LDA STA JSR DEC LDA STA JSR X Y #1 COLOR PLOT Y #1 COLOR PLOT X #1 COLOR PLOT X #1 COLOR PLOT

* * HAUPTSCHLEIFE * L JSR GENER JSR SHOWG LDA #1 STA X STA Y LL JSR CONWAY INC LDA CMP BNE X X #159 LL EINE ZEILE DURCH

LDA #1 STA X INC Y LDA Y

CMP #30 BNE LL JMP L * * * * * * *

NAECHSTE ZEILE NAECHSTE GENER.

DIE BZW. SURVIVE DIE ZELLE HAT KEINEN ODER MAX EINEN NACHBARN, DANN STIRBT DIE ZELLE DAS PASSIERT AUCH, WENN DIE ZELLE MEHR ALS DREI NACHBARN HAT

CONWAY

JSR LDA CMP BEQ

MATRIX STATUS #0 BIRTH

WENN 0 DANN IST DIE ZELLE SCHON TOT,GEBURT? STIRB DIE ZELLE ODER UEBERLEBT DIE ZELLE?

LDA CELLS CMP #2 BEQ OK CMP #3 BEQ OK LDA #0 STA COLOR JSR PLOT OK * * * * * * XS YS BIRTH RTS

STERBEN!

BIRTH WENN DIE ZELLE NICHT BESETZT IST UND DREI NABARN HAT,DANN WIRD EINE ZELLE AN DER STELLE GEBOREN

DFB 0 DFB 0 JSR LDA CMP BEQ JMP MATRIX CELLS #3 BI NOB EINE ZELLE WIRD GEBOREN!

BI

LDA #1 STA COLOR JSR PLOT

NOB * * * * * *

RTS

MATRIX ZAEHLT DIE ANZAHL DER PUNKTE WELCHE UM DIE IN X UND Y UERBERGEBENEN KOORDINATE GESETZT SIND

* * DIE GEFUNDENE ANZAHL WIRD IN 'CELLS' * ZURUECKGEGEBEN XL YL CELLS CTXT STATUS MATRIX DFB DFB DFB ASC DFB LDA STA LDA STA 0 0 0 ANZAHL DER GEF. PUNKTE %0% 0 X XL Y YL

LDA #0 WIR NEHMEN AN, STA CELLS DIE UNTERS.ZELLE STA STATUS IST TOT! LDA #16 STA CTXT DEC X DEC Y LDA STA JSR LDA BEQ INC S1 INC LDA STA JSR LDA BEQ INC INC LDA STA JSR LDA BEQ INC INC LDA STA JSR LDA BEQ INC DEC LDA STA JSR #99 COLOR PLOT COLOR S1 CELLS X #99 COLOR PLOT COLOR S2 CELLS X #99 COLOR PLOT COLOR S3 CELLS Y ZEILE 2 #99 COLOR PLOT COLOR S4 CELLS X #99 COLOR PLOT WIR FANGEN LINKS OBEN AN LESEMODUS PUNKT ABFRAGEN PUNKT? NEIN

S2

S3

S4

LDA BEQ LDA STA INC S5 DEC LDA STA JSR LDA BEQ INC INC LDA STA JSR LDA BEQ INC INC INC LDA STA JSR LDA BEQ INC INC LDA STA JSR LDA BEQ INC LDA STA LDA STA

COLOR S5 #1 STATUS STATUS=1 CTXT DIE ZELLE LEBT! X #99 COLOR PLOT COLOR S6 CELLS Y ZEILE 3 #99 COLOR PLOT COLOR S7 CELLS CTXT X #99 COLOR PLOT COLOR S8 CELLS X #99 COLOR PLOT COLOR S9 CELLS XL X YL Y

S6

S7

S8

S9

LDA CTXT STA TITEL RTS * * GENERATIONEN ZAEHLEN * GEN GENER SL1 ASC %0000000% LDX #6 LDA GEN,X CMP #25 BNE SL2

9? NEIN

LDA STA DEX CPX BNE RTS SL2

#16 GEN,X #0 SL1

0!

ADC #1 STA GEN,X RTS

* AUSGABE SHOWG LDY #0 LDX #0 LDA STA INY INX CPX BNE RTS * * * * * * * * * PLOT VERSION VOM 19.10.2012 IN X UND Y WIRD DIE GEW. KOORDINATE UERBERGEBEN IN Z1 UND Z2 DIE ADRESSE DES BILDSPEICHERS GEN,X TITEL+6,Y

LL1

#7 LL1

BYTE BYTE2 X Y COLOR BITT PLOT

DFB DFB DFB DFB DFB DFB LDA STA LDA STA

0 0 0 0 0 0

OFFSET IN BYTES ZWISCHENSPEICHER X POS FUER PLOT Y POS FUER PLOT FARBE BITT OFFSET IM BYTE

#DISH1:L ADRESSE Z1 DES BILDES #DISH1:H Z2 WENN Y=0 DANN NUR NOCH X SUCHEN

LDA Y BEQ L2 LDX CLC LDA ADC STA LDA ADC STA DEX Y Z1 #40 Z1 Z2 #0 Z2

ZEIL

BNE ZEIL L2 LDA X X POS SUCHEN LSR LSR STA BYTE ASL ASL STA BYTE2 SEC LDA X SBC BYTE2 STA BITT LDA BITT TAX LDA BYTE TAY LDA CMP BNE LDA AND STA JMP N0 LDA CMP BNE LDA EOR STA JMP CMP BNE LDA EOR STA JMP CMP BNE LDA EOR STA JMP COLOR #0 N0 (Z1),Y #0 (Z1),Y RT COLOR #1 N1 (Z1),Y COLTAB1,X (Z1),Y RT #2 N2 (Z1),Y COLTAB2,X (Z1),Y RT #3 E (Z1),Y COLTAB3,X (Z1),Y RT FARBE 99? DANN PRUEFE

FARBE 0

FARBE 1?

JA PUNKT IN FARBE 1 SETZEN

N1

N2

CMP #99 BNE RT

LDA (Z1),Y OB BEI X,Y EIN AND COLTAB1,X PUNKT GESETZT STA COLOR WURDE RT RTS

* * BIT- TABELLE FUER ALLE 3 FARBEN * FARBE 4 IST DIE 0, D.H. SCHWARZ * COLTAB1 DFB DFB DFB DFB COLTAB2 DFB DFB DFB DFB COLTAB3 DFB DFB DFB DFB %11000000 %00110000 %00001100 %00000011 BIT BIT BIT BIT 8+7-RECHTS 6+5 4+3 2+1-LINKS

%10000000 ANALOG COLTAB 1 %00100000 %00001000 %00000010 %01000000 %00010000 ANALOG COLTAB 1 %00000100 %00000001

* * EINIGE VARIABELN, GLOBALER NATUR * COUNT1 DFB 0 COUNT2 DFB 0 * * DISPLAY LIST * DLIST DFB DFB DFW DFB DFB DFW DFB DFB DFB DFB DFB DFB DFW DFB DFB DFB DFB DFB DFW 112,112,112 2+64 TITEL 2 13+64 DISH1 13,13,13,13,13,13,13 13,13,13,13,13,13,13 13,13,13,13,13,13,13 13,13,13,13,13,13,13 13,13 13+64 BILD+1000 13,13,13,13,13,13,13 13,13,13,13,13,13,13 13,13,13,13,13,13,13 13,13,13,13,13,13,13 65 DLIST % % % %

BILD

TITEL

ASC %Gen: ASC % ASC %TOTESFAELLE: ASC %

DISH1 ORG *+1000