diff --git a/README.md b/README.md
index d2c8758..1e4b6bf 100644
--- a/README.md
+++ b/README.md
@@ -9,9 +9,6 @@
-
-
-
@@ -23,54 +20,17 @@
Cookie Clicker C64 (or CC64 for short) is a Cookie clicker clone for the Commodore 64.
-## No this project is not dead. I have been doing a lot of planning for a whole new program design. Join my Discord server if you want to see my progress so far.
- Ian Skinner
-
## How to play :
- Press the space bar to 'click' for cookies.
-- Buy/select items by pressing the letter beside them. (the one in brackets)
-
-## Saves:
-
-Saves must be named cc64.sav and placed in the same directory as cookie.prg. (to copy the save onto a d64 file, use DiskImagery64 or another disk editor.)
-
Currently saves are only available in the nightly builds.
-
-
-### Save file format:
-
-
- Stop key flag
-
Cookies
-
Cookie gain
-
Cursor amount
-
Grandma amount
-
Farm amount
-
Mine amount
-
Player name
-
-
The stop key flag must be `0` or `1`.
-
`0` will prevent the player from stoping the program, and `1` allows the player to stop the program.
-
-### Example save file:
-
-
0
-
3426597
-
0.9823
-
230
-
54
-
32
-
1
-
IANSKINNER1982
-
-## Credits and Notes
-
Credits:
-- [@Orteil](https://orteil.dashnet.org/) (for making the original cookie clicker game)
+- [@Orteil](https://orteil.dashnet.org/) for making the original cookie clicker game
+- [@drskinner](https://github.com/drskinner/)
Notes:
-- Due to the way I have everything set up, some of my commits will appear as commits by [@drskinner](https://github.com/drskinner/)
- Editing program lines larger than 80 characters on the C64 (or on an emulator) will result in parts of them being deleted
+- `storedat` must be placed in the same d64 as `cookie.prg`, or in the same directory, if your emulator treats a folder like a disk. Also note that unlike `storedat`, `savedat` is not needed to run the game, so you can place `savedat` on another d64 and swap disks when needed.
diff --git a/build/cookie.prg b/build/cookie.prg
index f3caea4..6012606 100644
Binary files a/build/cookie.prg and b/build/cookie.prg differ
diff --git a/build/cookie.prg.out.prg b/build/cookie.prg.out.prg
index 55e92d0..fea8c52 100644
Binary files a/build/cookie.prg.out.prg and b/build/cookie.prg.out.prg differ
diff --git a/build/storedat b/build/storedat
index fbcfb1d..a916233 100644
--- a/build/storedat
+++ b/build/storedat
@@ -1,54 +1,72 @@
cursor
adds .1 cps
+.1
15
grandma
adds 1 cps
+1
100
farm
adds 8 cps
+8
1100
mine
adds 47 cps
+47
12000
factory
adds 260 cps
+260
130000
bank
adds 1400 cps
+1400
1400000
temple
adds 7800 cps
+7800
20000000
wizard tower
adds 44000 cps
+44000
330000000
shipment
adds 260000 cps
+260000
5100000000
alchemy lab
adds 1600000 cps
+1600000
75000000000
portal
adds 10 million cps
+10000000
1000000000000
time machine
adds 65 million cps
+65000000
14000000000000
-antim. condenser
+antimatter condenser
adds 430 million cps
+430000000
170000000000000
prism
adds 2.9 billion cps
+2900000000
2100000000000000
chancemaker
adds 21 billion cps
+21000000000
26000000000000000
fractal engine
adds 150 billion cps
+150000000000
310000000000000000
ml monitor
adds 1.1 trillion cps
+1100000000000
71000000000000000000
idleverse
adds 8.3 trillion cps
-1.2e+22
+8300000000000
+1.2e+22
\ No newline at end of file
diff --git a/build/testmenu.prg b/build/testmenu.prg
index 701b1b3..4ba2c25 100644
Binary files a/build/testmenu.prg and b/build/testmenu.prg differ
diff --git a/build/testmenu.prg.out.prg b/build/testmenu.prg.out.prg
index a027f51..9429336 100644
Binary files a/build/testmenu.prg.out.prg and b/build/testmenu.prg.out.prg differ
diff --git a/prg.txt b/prg.txt
index 624c279..9bcd613 100755
--- a/prg.txt
+++ b/prg.txt
@@ -1,250 +1,243 @@
0 rem !to "build/cookie.prg"
-5 poke53280,14:poke53281,6:poke650,64:rem screen color, no keys repeat
+10 mi=17:dimna$(mi):dimia(mi):dimbd$(mi):dimbg(mi):dimpr(mi):dimcg(mi)
+20 rem open 8,8,8,"storedat,s,r"
+30 rem forx=0tomi
+40 rem input#8,na$(x)
+50 rem input#8,bd$(x)
+55 rem input#8,bg(x)
+60 rem input#8,pr(x)
+65 rem ?x+1"/"mi+1
+70 rem next
+80 gosub 52000:rem close 8
+90 ms=2:bn$="someone's":r1$="{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}"
+95 r2$="{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}":ss=1
+100 rem stick news here.
+110 print"{brown}{clear}UCCCCCCCCCCCCCCC{$b2}CCCCCCCCCCCCCCCCCCCCCCI";
+120 print"B B B";
+130 print"B B B";
+140 print"{$ab}CCCCCCCCCCCCCCC{$b3} B";
+150 print"B B B";
+160 print"B B B";
+170 print"B B B";
+180 print"B {rvon} {rvof} B B";
+190 print"B {rvon} {blk} {brown} {rvof} B B";
+200 print"B {rvon} {blk} {brown} {rvof} B B";
+210 print"B {rvon} {blk} {brown} {blk} {brown} {rvof} B B";
+220 print"B {rvon} {blk} {brown} {blk} {brown} {rvof} B B";
+230 print"B {rvon} {rvof} B B";
+240 print"B {rvon} {rvof} B B";
+250 print"B {rvon} {blk} {brown} {rvof} B B";
+260 print"B {rvon} {blk} {brown} {blk} {brown} {blk} {brown} {rvof} B B";
+270 print"B {rvon} {blk} {brown} {blk} {brown} {rvof} B B";
+280 print"B {rvon} {rvof} B B";
+290 print"B {rvon} {rvof} B B";
+300 print"B {rvon} {rvof} B B";
+310 print"B B B";
+320 print"B{wht} v2.9.0-1.0 {brown}B B";
+330 print"JCCCCCCCCCCCCCCC{$b1}CCCCCCCCCCCCCCCCCCCCCCK";
+340 print"{wht} {rvon}f1{rvof} store {rvon}f3{rvof} options {rvon}f5{rvof} stats {rvon}f7{rvof} ascend";
+500 print"{home}{down}{right}"int(cc)
+510 print"{brown}B{wht} cookies"
+520 ?"{brown}B{wht}"bn$
+530 print"{up}{brown}B{wht} bakery"
+1000 on ms gosub 2000, 5000, 5000
+1010 goto 1000
-10 open 8,8,8,"cc64.sav,s,r" : rem reads the first line
-15 input#8,sb : rem of the save file and
-20 close 8 : rem checks stop key flag
-30 if sb=0 then poke788,52:poke792,193: rem 0=on, 1=off
+2000 ifms<>1thenreturn :rem store page selection and menu switching area.
+2010 ifss>0theni=0:j=4:ifss>1theni=5:j=9:ifss>2theni=10:j=14:ifss>3theni=15:j=17
+2060 ts=ss:tm=ms :rem 2010 sets the range of item data
+2090 gosub2500 :rem to be used. do not have a range
+2100 goto2000 :rem bigger than 5. (smaller is fine)
-40 cc=0:cg=0:ca=0:ga=0:fa=0:ma=0:ft$="0":mt$="0":bn$="someone"
-50 ds$=chr$(17):rem cursor down
-60 rs$=chr$(29):rem cursor right
-70 ls$=chr$(157):rem cursor left
-80 c1=15:c2=100:c3=1100:c4=12000
-99 print"{clear}{home}"
+2500 gosub51000
+2505 y=1:forx=itoj :rem this section prints the
+2510 ifx=ithen?"{home}" :rem item data in the given range.
+2515 ?r1$"{up}{rvon}"right$(str$(y),1)"{rvof} "na$(x)
+2520 ?r1$r2$"{up}"ia(x)
+2530 ?r1$bd$(x)
+2540 ?r1$"{up}"int(pr(x))
+2545 ?r1$"{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}":y=y+1
+2550 next
+2555 ifj=17then?r1$"{down}{down}{down}{down}{down}{down}{down} prev/next(-/+)"
+2560 ?r1$"{up} prev/next(-/+)"
+2565 gosub 3000
+2570 return
-1000 print"{clear}{home}{grey2}UCCCCCCCCCCCCCCCCCCCCCCCCC{$b2}CCCCCCCCCCCI"
-1010 print"{grey2}B{wht} you have 0 {grey2}B{wht}cursor(c) {grey2}B"
-1020 print"{grey2}B{wht} cookies {grey2}B{wht}"ca
-1025 print"{up}{grey2}B{wht} cookies {grey2}B{wht}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{grey2}B"
-1030 print"{grey2}{$ab}CCCCCCCCCCCCCCCCCCCCCCCCC{$b3}{wht}cost: {grey2}B"
-1040 print"{grey2}B {grey2}B{wht} 15 {grey2}B"
-1050 print"{grey2}B {grey2}{$ab}CCCCCCCCCCC{$b3}"
-1060 print"{grey2}B {grey2}B{wht}grandma(g) {grey2}B"
-1070 print"{grey2}B {grey2}B{wht}"ga
-1075 print"{up}{grey2}B{wht} {grey2}B{wht}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{grey2}B"
-1080 print"{grey2}B {brown}******** {grey2}B{wht}cost: {grey2}B"
-1090 print"{grey2}B {brown}*******{blk}**{brown}* {grey2}B{wht} 100 {grey2}B"
-1100 print"{grey2}B {brown}***{blk}*{brown}******** {grey2}{$ab}CCCCCCCCCCC{$b3}"
-1110 print"{grey2}B {brown}***{blk}**{brown}********* {grey2}B B"
-1120 print"{grey2}B {brown}********{blk}**{brown}**** {grey2}B B"
-1130 print"{grey2}B {brown}********{blk}**{brown}**** {grey2}B B"
-1140 print"{grey2}B {brown}************** {grey2}B B"
-1150 print"{grey2}B {brown}*{blk}*{brown}************ {grey2}B B"
-1160 print"{grey2}B {brown}*************{brown}* {grey2}B B"
-1170 print"{grey2}B {brown}******{blk}**{brown}**** {grey2}B B"
-1180 print"{grey2}B {brown}*****{blk}**{brown}*** {grey2}B B"
-1190 print"{grey2}B {brown}******** {grey2}B B"
-1200 print"{grey2}B {$ab}CCCCCCCCCCC{$b3}"
-1210 print"{grey2}B B{grey1}settings(s){grey2}B"
-1220 print"{grey2}B v2.9.0-1.0 B{grey1}upgrades(u){grey2}B"
-1230 print"{grey2}JCCCCCCCCCCCCCCCCCCCCCCCCC{$b1}CCCCCCCCCCCK"
+3000 get k$:x=0 :rem don't add a 'ifk$=""' or else the adding routine won't run properly
+3010 gosub 60000 :rem
+3015 ifval(k$)>5then3070 :rem main loop
+3020 ifval(k$)<1then3070 :rem
+3025 x=val(k$)
+3065 gosub 3500
+3070 gosub 50000
+3080 ifk$="+"thenss=ss+1
+3085 ifk$="-"thenss=ss-1
+3090 ifss=0thenss=1
+3095 ifss=5thenss=4
+3110 ifss<>tsthenreturn
+3120 ifms<>tmthenreturn
+3130 goto 3000
-1300 print"{home}{down}{down}{down}{down}B "bn$"'s bakery "
-1310 print"{up}B{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{grey2}B{wht} 15 {grey2}B"
-1320 print"{grey2}B {grey2}{$ab}CCCCCCCCCCC{$b3}"
+3500 y=i+x-1 :rem buying subroutine
+3510 if cc2thenreturn :rem
+5010 tm=ms :rem this section is for menu switching.
+5020 gosub51000:gosub5100:goto5000 :rem
-1900 if ft$="0" then gosub 4000
-1910 if mt$="0" then gosub 4100
-1920 get k$:if k$= "" then 1990
-1930 if k$=" " then 2100
-1940 if k$="c" then 2200
-1950 if k$="g" then 2300
-1960 if k$="f" then 2400
-1970 if k$="m" then 2500
-1980 if k$="s" then 10000
-1990 rem start of auto add
-2000 cc=cc+cg
-2010 print"{home}{down}{grey2}B{wht} you have "int(cc)
-2020 goto 1900
+5100 ?"{home}{down}"r1$"{rvon}1{rvof} change your bakery's"
+5110 ?r1$"name"
+5120 ?r1$"{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{down}"
+5130 ?r1$"{up}{rvon}2{rvof} create a save file"
+5140 ?r1$"on a disk"
+5150 ?r1$"{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{down}"
+5160 ?r1$"{up}{rvon}3{rvof} load a save file"
+5170 ?r1$"from a disk"
+5180 ?r1$"{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{down}"
+5160 ?r1$"{up}{rvon}4{rvof} manage your saves"
+5180 ?r1$"{down}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{down}"
-2099 rem part 2
+5200 getk$ :rem
+5210 ifval(k$)>4then5240 :rem main loop
+5220 ifval(k$)<1then5240 :rem
+5230 onval(k$)gosub5500,5700,5900,6100
+5240 gosub 50000
+5250 ifms<>tmthenreturn
+5260 goto 5200
+5500 tn$="":?"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}"r1$"new name:"
+5510 getnp$:ifnp$=""then5510
+5515 iflen(tn$)<1then?r1$; :
+5520 ?np$;:tn$=tn$+np$:ifnp$="{\n}"then5540 :rem bakery name
+5530 iflen(tn$)<14then5510 :
+5540 ?"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}"r1$" "
+5550 ?r1$" ":bn$=left$(tn$,(len(tn$)-1))
+5560 ?"{home}{down}{down}{down}{down}{right} {home}{down}{down}{down}{down}{right}"bn$"'s":return
-2100 cc=cc+1
-2110 print"{home}{down}{grey2}B{wht} you have "int(cc)
-2120 goto 1900
+5700 open 8,8,8,"@0:savedat,s,w" :rem save data
+5710 print#8,fl
+5720 print#8,bn$
+5730 print#8,cc
+5740 forx=0tomi
+5750 print#8,cg(x)
+5760 print#8,pr(x)
+5770 print#8,ia(x)
+5780 next:close 8:return
-2200 if cc<15 then 1900 rem CURSORS
-2210 cc=cc-15:cg=cg+.04:ca=ca+1
-2220 print"{home}{down}{grey2}B{wht} you have "int(cc)
-2225 print"{home}{down}{grey2}B{wht} you have {grey2}B
-2230 print"{home}{down}{down}{down}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{grey2}B{wht}"ca
-2240 goto 1900
+5900 open 8,8,8,"@0:savedat,s,r" :rem load data
+5910 input#8,fl
+5920 input#8,bn$
+5930 input#8,cc
+5940 forx=0tomi
+5950 input#8,cg(x)
+5960 input#8,pr(x)
+5970 input#8,ia(x)
+5980 next:close 8:return
-2300 if cc<100 then 1900 rem GRANDMAS
-2310 cc=cc-100:cg=cg+.05:ga=ga+1
-2320 print"{home}{down}{grey2}B{wht} you have "int(cc)
-2325 print"{home}{down}{grey2}B{wht} you have {grey2}B
-2330 print"{home}{down}{down}{down}{down}{down}{down}{down}{down}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{grey2}B{wht}"ga
-2340 goto 1900
+10000 stop
-2400 if cc<1100 then 1900 rem MINES
-2410 cc=cc-1100:cg=cg+.06:ma=ma+1
-2420 print"{home}{down}{grey2}B{wht} you have "int(cc)
-2425 print"{home}{down}{grey2}B{wht} you have {grey2}B
-2430 print"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{grey2}B{wht}"ma
-2440 goto 1900
+49999 :rem important subroutines
-2500 if cc<12000 then 1900 rem FARMS
-2510 cc=cc-12000:cg=cg+.1:fa=fa+1
-2520 print"{home}{down}{grey2}B{wht} you have "int(cc)
-2525 print"{home}{down}{grey2}B{wht} you have {grey2}B
-2530 print"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{left}{grey2}B{wht}"fa
-2540 goto 1900
+50000 ifk$="{f1}"then50040:rem
+50010 ifk$="{f3}"then50040:rem menu selecting
+50020 ifk$="{f5}"then50040:rem
+50030 return
+50040 ms=-1*(k$="{f1}")-2*(k$="{f3}")-3*(k$="{f5}"):return
-4000 if cc<400 then return
-4010 ft$="1"
-4020 print"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{grey2}B {brown}***{blk}*{brown}******** {grey2}{$ab}CCCCCCCCCCC{$b3}"
-4030 print"{grey2}B {brown}***{blk}**{brown}********* {grey2}B{wht}farm(f) {grey2}B"
-4040 print"{grey2}B {brown}********{blk}**{brown}**** {grey2}B{wht}"fa
-4045 print"{grey2}B {brown}********{blk}**{brown}**** {grey2}B{wht} {right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{grey2}B"
-4050 print"{up}{grey2}B {brown}********{blk}**{brown}**** {grey2}B{wht}cost: {grey2}B"
-4060 print"{grey2}B {brown}************** {grey2}B{wht} 1100 {grey2}B"
-4070 print"{grey2}B {brown}*{blk}*{brown}************ {grey2}{$ab}CCCCCCCCCCC{$b3}"
-4080 return
+51000 forx=1to20: rem clears the menu
+51010 ifx=1then?"{home}"r1$"{down} ";
+51020 ?r1$"{right} ";:next
+51040 return
-4100 if cc<6000 then return
-4110 mt$="1"
-4120 print"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{grey2}B {brown}*{blk}*{brown}***********{brown}* {grey2}{$ab}CCCCCCCCCCC{$b3}"
-4130 print"{grey2}B {brown}*************{brown}* {grey2}B{wht}mine(m) {grey2}B"
-4140 print"{grey2}B {brown}******{blk}**{brown}**** {grey2}B{wht}"ma
-4145 print"{up}{grey2}B {brown}******{blk}**{brown}**** {grey2}B{wht} {right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{grey2}B"
-4150 print"{grey2}B {brown}*****{blk}**{brown}*** {grey2}B{wht}cost: {grey2}B"
-4160 print"{grey2}B {brown}******** {grey2}B{wht} 12000 {grey2}B"
-4170 print"{grey2}B {grey2}{$ab}CCCCCCCCCCC{$b3}"
-4180 return
-4180 return
+52000 x=0:na$(x)="cursor"
+52001 bd$(x)="adds .1 cps"
+52002 bg(x)=.1
+52003 pr(x)=15
+52004 x=x+1:na$(x)="grandma"
+52005 bd$(x)="adds 1 cps"
+52006 bg(x)=1
+52007 pr(x)=100
+52008 x=x+1:na$(x)="farm"
+52009 bd$(x)="adds 8 cps"
+52010 bg(x)=8
+52011 pr(x)=1100
+52012 x=x+1:na$(x)="mine"
+52013 bd$(x)="adds 47 cps"
+52014 bg(x)=47
+52015 pr(x)=12000
+52016 x=x+1:na$(x)="factory"
+52017 bd$(x)="adds 260 cps"
+52018 bg(x)=260
+52019 pr(x)=130000
+52020 x=x+1:na$(x)="bank"
+52021 bd$(x)="adds 1400 cps"
+52022 bg(x)=1400
+52023 pr(x)=1400000
+52024 x=x+1:na$(x)="temple"
+52025 bd$(x)="adds 7800 cps"
+52026 bg(x)=7800
+52027 pr(x)=20000000
+52028 x=x+1:na$(x)="wizard tower"
+52029 bd$(x)="adds 44000 cps"
+52030 bg(x)=44000
+52031 pr(x)=330000000
+52032 x=x+1:na$(x)="shipment"
+52033 bd$(x)="adds 260000 cps"
+52034 bg(x)=260000
+52035 pr(x)=5100000000
+52036 x=x+1:na$(x)="alchemy lab"
+52037 bd$(x)="adds 1600000 cps"
+52038 bg(x)=1600000
+52039 pr(x)=75000000000
+52040 x=x+1:na$(x)="portal"
+52041 bd$(x)="adds 10 million cps"
+52042 bg(x)=10000000
+52043 pr(x)=1000000000000
+52044 x=x+1:na$(x)="time machine"
+52045 bd$(x)="adds 65 million cps"
+52046 bg(x)=65000000
+52047 pr(x)=14000000000000
+52048 x=x+1:na$(x)="antimatter condenser"
+52049 bd$(x)="adds 430 million cps"
+52050 bg(x)=430000000
+52051 pr(x)=170000000000000
+52052 x=x+1:na$(x)="prism"
+52053 bd$(x)="adds 2.9 billion cps"
+52054 bg(x)=2900000000
+52055 pr(x)=2100000000000000
+52056 x=x+1:na$(x)="chancemaker"
+52057 bd$(x)="adds 21 billion cps"
+52058 bg(x)=21000000000
+52059 pr(x)=26000000000000000
+52060 x=x+1:na$(x)="fractal engine"
+52061 bd$(x)="adds 150 billion cps"
+52062 bg(x)=150000000000
+52063 pr(x)=310000000000000000
+52064 x=x+1:na$(x)="ml monitor"
+52065 bd$(x)="adds 1.1 trillion cps"
+52066 bg(x)=1100000000000
+52067 pr(x)=71000000000000000000
+52068 x=x+1:na$(x)="idleverse"
+52069 bd$(x)="adds 8.3 trillion cps"
+52070 bg(x)=8300000000000
+52071 pr(x)=1.2e+22
+52072 return
-10000 rem settings start here
-10010 poke53280,0:poke53281,0
-10100 print"{clear}{grey1}UCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCI"
-10110 print"B B"
-10120 print"B {wht}bakery name (b): {grey1}B"
-10130 print"B{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}B"
-10140 print"B B"
-10150 print"B {wht}save (s) {grey1}B"
-10160 print"B{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}B"
-10170 print"B B"
-10180 print"B {wht}load (l) {grey1}B"
-10190 print"B{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}B"
-10200 print"B B"
-10210 print"B {wht}manage saves (m) {grey1}B"
-10220 print"B{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}B"
-10230 print"B B"
-10240 print"B {yel}testmenu (t) {grey1}B"
-10250 print"B{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}B"
-10260 print"B B"
-10270 rem print"B B"
-10280 rem print"B B"
-10290 rem print"B B"
-10300 rem print"B B"
-10310 print"B {wht}exit settings (e) {grey1}B"
-10320 print"B{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}{$a3}B"
-10330 print"B B"
-10340 print"JCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCK"
-
-11200 getk$:ifk$=""then 11200
-11210 ifk$="b"then goto 12000
-11220 ifk$="s"then goto 12100
-11230 ifk$="l"then goto 12200
-11240 ifk$="m"then goto 12300
-11250 ifk$="e"then goto 15000
-11260 ifk$="t"then goto 40000
-11270 goto 11200
-
-12000 print"{clear}{down}{wht}please enter a new name (14 characters max):"
-12010 input nn$
-12020 nl=len(nn$)
-12030 if nl<15 then 12050
-12040 print"{up}{up}{up}{red}error: name too long{wht}":getk$:ifk$=""goto12040
-12045 goto 12000
-12050 print"are you sure? (y/n)"
-12055 getk$:ifk$=""then12055
-12060 ifk$="y"then 12080
-12070 goto 10100
-12080 bn$=nn$:goto10100
-
-12100 print"{clear}{wht}writing save data..."
-12110 open 8,8,8,"@0:cc64.sav,s,w"
-12110 print#8,sb
-12120 print#8,cc
-12130 print#8,cg
-12140 print#8,ca
-12145 print#8,ga
-12150 print#8,fa
-12155 print#8,ma
-12160 print#8,bn$
-12165 close 8
-12170 print"saving complete"
-12180 goto 10000
-
-12200 print"{clear}{wht}loading save data..."
-12210 open 8,8,8,"cc64.sav,s,r"
-12215 input#8,sb
-12220 input#8,cc
-12222 input#8,cg
-12224 input#8,ca
-12226 input#8,ga
-12228 input#8,fa
-12230 input#8,ma
-12235 input#8,bn$
-12260 close 8
-12270 print"loading complete"
-12275 poke53280,14:poke53281,6
-12280 goto 10000
-
-
-
-
-
-
-
-
-12300 print"{home}{down}{down}{down}{down}{down}{down}{right}{right}{right}{right}*CCCCCCCCCCCCCCCCCCCCCCCCCCCCC*"
-12310 print"{right}{right}{right}{right}B (1) erase current save B"
-12320 print"{right}{right}{right}{right}B (2) erase cc64.sav B"
-12330 rem print"{right}{right}{right}{right}B (3) create 2nd save B"
-12340 rem print"{right}{right}{right}{right}B (4) erase 2nd save B"
-12350 print"{right}{right}{right}{right}B (3) exit B"
-12360 print"{right}{right}{right}{right}*CCCCCCCCCCCCCCCCCCCCCCCCCCCCC*"
-12400 getk$:ifk$=""then12400
-12410 ifk$="1"then 12500
-12420 ifk$="2"then 12600
-12450 ifk$="3"then 10000
-12460 goto 12400
-
-12500 cc=0:cg=0:ca=0:ga=0:fa=0:ma=0:ft$="0":mt$="0":bn$="someone"
-12510 goto 10000
-
-12600 open 8,8,8,"@0:cc64.sav,s,w"
-12610 print#8,sb
-12610 print#8,0
-12620 print#8,0
-12630 print#8,0
-12640 print#8,0
-12650 print#8,0
-12660 print#8,0
-12670 close 8
-12680 goto 10000
-
-
-
-
-
-
-15000 print"{clear}"
-15010 poke53280,14:poke53281,6
-15030 goto 1000
-
-40000 print"{clear}"
-40010 print chr$(147);
-40020 q$=chr$(34)
-40030 d$=chr$(17)
-40040 print"load"q$"testmenu"q$",8"
-40050 printd$;d$;d$;d$;"run"
-40060 rem load keyboard buffer and flush it
-40070 poke631,19:poke632,13:poke633,13:poke198,3
\ No newline at end of file
+60000 b=0:fora=0tomi:b=b+(cg(a)/3.6):next:rem adding subroutine
+60010 ifk$=" "thencc=cc+1
+60020 ifcb>ccthen?"{home}{down}{right} "
+60030 cc=cc+b:?"{home}{down}{right}"int(cc):cb=cc:return
diff --git a/testmenu.txt b/testmenu.txt
index ba225fa..09adad9 100644
--- a/testmenu.txt
+++ b/testmenu.txt
@@ -1,133 +1 @@
-0 rem !to "build/testmenu.prg"
-5 poke788,52:poke792,193
-40000 rem testing menu
-40010 poke53280,0:poke53281,0:poke646,5
-40020 print"{clear}logging into console"
-40025 print"cc64:/>"
-40030 print"{up}{right}{right}{right}{right}{right}{right}{right} h"
-40040 print"booting help menu"
-40045 print""
-40050 print" manage saves:"
-40060 print""
-40110 print" delete [d]"
-40130 print" restore [r]"
-40140 print" edit [e]"
-40150 print""
-40160 print" others:"
-40165 print""
-40170 print" help [h]"
-40160 print" exit [t]"
-40170 print""
-40180 print"cc64:/>"
-40500 getk$:ifk$=""then40500
-40520 ifk$="d"then 41000
-40540 ifk$="r"then 43000
-40570 ifk$="e"then 44000
-40580 ifk$="h"then 40030
-40590 ifk$="t"then 60000
-40600 goto 40500
-
-41000 print"{up}{right}{right}{right}{right}{right}{right}{right} d"
-41005 print"writing objects: 0% (0/1)"
-41010 open 8,8,8,"@0:cc64.sav,s,w"
-41015 print#8,0
-41020 print#8,0
-41025 print#8,0
-41030 print#8,0
-41035 print#8,0
-41040 print#8,0
-41050 print#8,0
-41055 print#8,"someone"
-41060 close 8
-41070 print"{up}writing objects: 0% (1/1)"
-41080 goto 40180
-
-44000 print"{up}{right}{right}{right}{right}{right}{right}{right} e"
-44005 print"loading save file: 0% (0/1)"
-44010 open 8,8,8,"@0:cc64.sav,s,r"
-44015 input#8,sb
-44020 input#8,cc
-44022 input#8,cg
-44024 input#8,ca
-44026 input#8,ga
-44028 input#8,fa
-44030 input#8,ma
-44040 input#8,bn$
-44040 close 8
-44070 print"{up}loading save file: 100% (1/1)"
-44080 print""
-44090 print" [1] stop key flag: "sb
-44100 print" [2] cookies: "cc
-44110 print" [3] cookie gain: "cg
-44120 print" [4] cursor amount: "ca
-44130 print" [5] grandma amount: "ga
-44140 print" [6] farm amount: "fa
-44150 print" [7] mine amount: "ma
-44160 print" [8] bakery name: "bn$
-44500 print" [9] exit menu (saves changes)"
-44510 print""
-44520 print"please choose an option"
-44530 print"cc64:/cc64.sav/>"
-44540 getk$:ifk$=""then44540
-44550 if k$="1"then 45000
-44560 if k$="2"then 45100
-44570 if k$="3"then 45200
-44580 if k$="4"then 45300
-44590 if k$="5"then 45400
-44600 if k$="6"then 45500
-44610 if k$="7"then 45600
-44620 if k$="8"then 45700
-44630 if k$="9"then 45800
-44999 goto 43540
-
-45000 print"please set a value (0=on:1=off)
-45010 input sb
-45020 if sb>1 then goto 45000
-45030 if sb<0 then goto 45000
-45040 goto 44080
-45100 print"please set a value"
-45110 input cc
-45120 goto 44080
-45200 print"please set a value"
-45210 input cg
-45220 goto 44080
-45300 print"please set a value"
-45310 input ca
-45320 goto 44080
-45400 print"please set a value"
-45410 input ga
-45420 goto 44080
-45500 print"please set a value"
-45510 input fa
-45520 goto 44080
-45600 print"please set a value"
-45610 input ma
-45620 goto 44080
-45700 print"please set a value"
-45710 input bn$
-45720 goto 44080
-
-
-45800 print"{up}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right} .."
-45805 print"writing objects: 0% (0/1)"
-45810 open 8,8,8,"@0:cc64.sav,s,w"
-45815 print#8,sb
-45820 print#8,cc
-45825 print#8,cg
-45830 print#8,ca
-45835 print#8,ga
-45840 print#8,fa
-45845 print#8,ma
-45850 print#8,bn$
-45855 close 8
-45860 print"{up}writing objects: 100% (1/1)"
-45865 goto 40180
-
-60000 print"{clear}"
-60010 print chr$(147);
-60020 q$=chr$(34)
-60030 d$=chr$(17)
-60040 print"load"q$"cookie"q$",8"
-60050 printd$;d$;d$;d$;"run"
-60060 rem load keyboard buffer and flush it
-60070 poke631,19:poke632,13:poke633,13:poke198,3
\ No newline at end of file
+0 rem !to "build/testmenu.prg"
\ No newline at end of file