home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tiger Disk 25
/
Tiger_Disk_025_19xx_Tiger-Crew-Disk_de_Side_C.d64
/
b.hauskost
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
3KB
|
80 lines
5 code=7*4096:vars=5*4096+6*256:syscode,24,1
11 gb=peek(code+3)+peek(code+4)*256:syscode,3:b=vars+7+2+((peek(vars+1)-1)*67)
22 x=peek(b+3)and128:k=peek(b+0):k=k+(peek(b+1)*256):k=k+(peek(b+2)*65536)
26 k=k+((peek(b+3)and127)*16777216):ifx=128thenk=-k
28 gosub60000:gosub4000:gosub100:print"[144][199]uthaben[196][205]";k
31 print"[144][203]limaanlage[196][205]";kl
32 print"[144][215]@rmed@mmung[196][205]";wd
33 print"[144][211]olardach[196][205]";so
34 print"[144][215]@rmeschutzverglasung[196][205]";ws
35 print"[144][194]aukosten[196][205]";bk
36 ifpeek(37887)=1 and peek(37886)=128then gosub 53000
37 print"[144][199]esamt[196][205]";(kl+wd+so+ws+bk)
40 syscode,6,3:syscode,3:print"[144][203]aufen"
41 if peek(37887)=1 and peek(37886)=128then printtab(17);"[144][145][193]bri\[160]"
43 syscode,6,5
50 cl=peek(2):ifcl=0then50
55 poke2,0:ifcl=99then 2001
70 ifcl=1then1000
90 goto50
100 kl=0:ifpeek(36861)=1thenkl=5000
110 wd=0:ifpeek(36860)=1thenwd=15000
120 so=0:ifpeek(36859)=1thenso=45000
130 ws=0:ifpeek(36858)=1thenws=25000
140 bk=0:ifpeek(36857)=1thenbk=500000
160 ifpeek(36857)=2thenbk=900000
170 ifpeek(36857)=3thenbk=1300000
180 ifpeek(36857)=4thenbk=1600000
190 gosub 50000
200 return
1000 k=k-(kl+wd+so+ws+bk):iv=iv+(kl+wd+so+ws+bk):syscode,24,39
1003 syscode,24,39:b=vars+7+2+((peek(vars+1)-1)*67):x=0:ifk<0thenk=k-k-k:x=128
1030 poke(b+3),int(k/16777216):k=k-(int(k/16777216)*16777216):poke(b+2),int(k/65536)
1060 k=k-(int(k/65536)*65536):poke(b+1),int(k/256):k=k-(int(k/256)*256):poke(b+0),k
1100 poke(b+3),peek(b+3)orx:gosub5000:w=gb+((peek(vars+2)-1)*31*6)+(peek(36862)-1)*31
1130 poke(w+2),peek(w+2)and240or2:poke(w+3),peek(w+3)and240orpeek(36857):poke(w+6),0
1140 gosub54000
1180 ifpeek(36861)=1thenpoke(w+6),peek(w+6)or128
1190 ifpeek(36860)=1thenpoke(w+6),peek(w+6)or64
1200 ifpeek(36859)=1thenpoke(w+6),peek(w+6)or32
1210 ifpeek(36858)=1thenpoke(w+6),peek(w+6)or16
1230 forx=0to9:poke(w+7+x),0:nextx:forx=0to9:poke(w+17+x),255:nextx
2000 gosub56000
2001 poke 37887,0:poke37886,0:z=peek(vars+2):a$="l.city"+str$(z):syscode,1,a$,8
4000 rem
4001 b=vars+1643+((peek(vars+1)-1)*8):x=peek(b+3)and128:iv=peek(b+0)
4004 iv=iv+(peek(b+1)*256):iv=iv+(peek(b+2)*65536)
4006 iv=iv+((peek(b+3)and127)*16777216):ifx=128theniv=-iv
4010 return
5000 b=vars+1643+((peek(vars+1)-1)*8):x=0:ifiv<0theniv=iv-iv-iv:x=128
5030 poke(b+3),int(iv/16777216):iv=iv-(int(iv/16777216)*16777216)
5050 poke(b+2),int(iv/65536):iv=iv-(int(iv/65536)*65536):poke(b+1),int(iv/256)
5080 iv=iv-(int(iv/256)*256):poke(b+0),iv:poke(b+3),peek(b+3)orx:return
50000 if peek(37887)=0 then return
50001 if peek(37887)=1 and peek(37886)=128 goto 52000
50005 if (peek(37886)and1)=0thenkl=0
50010 if (peek(37886)and2)=0thenwd=0
50020 if (peek(37886)and4)=0thenso=0
50030 if (peek(37886)and8)=0thenws=0
50035 bk=0
50040 return
52000 tt=gb+((peek(vars+2)-1)*31*6)+(peek(36862)-1)*31
52010 bk=50000*(peek(tt+3)and15):kl=0:wd=0:so=0:ws=0
52020 return
53000 print"[144][193]bri\kosten[196][205]";bk
53010 return
54000 if peek(37887)=1 and peek(37886)=128then 54020
54010 return
54020 poke 36861,0:poke36860,0:poke36859,0:poke36858,0
54030 return
56000 if peek(37886)<>128 then return
56009 tt=gb+((peek(vars+2)-1)*31*6)+(peek(36862)-1)*31
56010 poke tt+2,(peek(tt+2)and240)+1
56020 poke tt+3,peek(tt+3)and240
56030 poke tt+6,0
56060 return
60000 if peek(37887)=0 then return
60005 tt=gb+((peek(vars+2)-1)*31*6)+(peek(36862)-1)*31
60010 poke 36857,peek(tt+3)and15
60020 return