Tein simppelin ajastin-ohjelman omiin tarkoituksiini, mutta ehkä tällä on jotain käyttöä muillekin. Kokeilin eri resoluutioilla(HD/FullHD/4K) ja vaikuttaisi skaalautuvan koko ruudulle hyvin.
' Ajastin v1.1 by Tertsi
desktop& = _SCREENIMAGE: MaxX& = _WIDTH(desktop&): MaxY& = _HEIGHT(desktop&)
_FREEIMAGE desktop&: SCREEN _NEWIMAGE(MaxX&, MaxY&, 256): _FULLSCREEN: _MOUSEHIDE
fontfile$ = ENVIRON$("SYSTEMROOT") + "\Fonts\NOTOMONO-REGULAR.TTF"
FOR z = 50 TO 800 'suurennetaan fonttia kunnes leveys on reunasta reunaan
f& = _LOADFONT(fontfile$, z, "monospace"): _FONT f&
IF _PRINTWIDTH("00:00:00") >= MaxX& THEN EXIT FOR
NEXT z
COLOR _RGB(255, 255, 255), _RGB(0, 0, 0)
a& = _LOADFONT(fontfile$, z / 4, "monospace")
Alku:
paussi$ = "ON"
CLS
_FONT a&: _PRINTSTRING (0, MaxY& - z / 4), "space=start"
_PRINTSTRING (MaxX& - _PRINTWIDTH("esc=quit"), MaxY& - z / 4), "esc=quit"
tunnit = 0: minuutit = 0: sekunnit = 0
GOSUB Ajastin
Lue$ = INPUT$(1): IF Lue$ = CHR$(27) THEN GOTO Loppu
_FONT a&: _PRINTSTRING (0, MaxY& - z / 4), "space=pause"
_PRINTSTRING (MaxX& - _PRINTWIDTH("enter=reset"), MaxY& - z / 4), "enter=reset"
_DISPLAY
paussi$ = "OFF"
TIMER ON
ON TIMER(1) GOSUB Ajastin
DO
n$ = INKEY$
IF n$ = CHR$(27) THEN EXIT DO
IF n$ = CHR$(13) THEN GOTO Alku
IF n$ = CHR$(32) THEN
LINE (0, MaxY& - z / 4)-(MaxX& / 2, MaxY&), _RGB(0, 0, 0), BF
IF paussi$ = "OFF" THEN
_FONT a&: _PRINTSTRING (0, MaxY& - z / 4), "space=continue"
paussi$ = "ON": TIMER OFF
ELSE
_FONT a&: _PRINTSTRING (0, MaxY& - z / 4), "space=pause"
paussi$ = "OFF": TIMER ON
END IF
_DISPLAY
END IF
LOOP
Loppu:
_FONT 16
_FREEFONT f&
_FREEFONT a&
_MOUSESHOW
SYSTEM
Ajastin:
IF paussi$ = "OFF" THEN sekunnit = sekunnit + 1
IF sekunnit = 60 THEN minuutit = minuutit + 1: sekunnit = 0
IF minuutit = 60 THEN tunnit = tunnit + 1: minuutit = 0
s$ = STR$(sekunnit): m$ = STR$(minuutit): t$ = STR$(tunnit)
IF sekunnit < 10 THEN s$ = "0" + LTRIM$(s$) ELSE s$ = LTRIM$(s$)
IF minuutit < 10 THEN m$ = "0" + LTRIM$(m$) ELSE m$ = LTRIM$(m$)
IF tunnit < 10 THEN t$ = "0" + LTRIM$(t$) ELSE t$ = LTRIM$(s$)
rivi$ = t$ + ":" + m$ + ":" + s$
_FONT f&: _PRINTSTRING (0, 0), rivi$
_DISPLAY
RETURNViilattu koodista turhuuksia pois.
Aihe on jo aika vanha, joten et voi enää vastata siihen.