REM See the WYWTK Index of BBC BASIC Tutorials for more help with BBC BASIC. Many pages give you more than just the code, the way this one does.
     REM wywtk.com/prgm/bas/basb-med-tim-1.htm
     REM MedTime.BBC- Meditation Timer
      REM VERS

      PRINT "Hi. Repeat..."
      PRINT "Don't press more than one key at any time."
      PRINT "To start, press a key BRIEFLY. NOT '.' or ','"
      PRINT "Then BRIEFLY press just '.' (or'Q')"
      PRINT "Until you've had enough!"
      PRINT "(Q TO Quit)"
      REPEAT
        PRINT "But first set the WAIT time. (about 20 probably right.)"
        INPUT delay%
      UNTIL delay%>5
      PRINT

      REM Wait for user to start holding down a key...
      REPEAT : REM Start of inner parts
        pressed$=INKEY$(2)
      UNTIL pressed$><"" AND pressed$><"." AND pressed$><","

      REM Now begin main part of program...

      REPEAT REM Drives outer loop

        REM Start of first pass through inner parts
        REPEAT
          PRINT"*";
          pressed$=INKEY$(2)
          WAIT(delay%)
        UNTIL pressed$="." OR pressed$=","

        REM Done?
        IF pressed$="q" OR pressed$="Q" THEN
          PRINT
          PRINT "Bye"
          WAIT(120)
          QUIT
        ENDIF

        REPEAT
          PRINT".";
          pressed$=INKEY$(2)
          WAIT(delay%)
        UNTIL (pressed$><"." AND pressed$><"," AND pressed$><"") OR (pressed$="q" OR pressed$="Q")

        REM Done?
        IF pressed$="q" OR pressed$="Q" THEN
          PRINT
          PRINT "Bye"
          WAIT(120)
          QUIT
        ENDIF

        REM End of inner parts

        REM *crude* "Do inner parts again" by copy/paste...
        REM========= VVV Second copy of "inner parts" vvv
        REPEAT
          PRINT"*";
          pressed$=INKEY$(2)
          WAIT(delay%)
        UNTIL pressed$="." OR pressed$=","

        REM Done?
        IF pressed$="q" OR pressed$="Q" THEN
          PRINT
          PRINT "Bye"
          WAIT(120)
          QUIT
        ENDIF

        REPEAT
          PRINT".";
          pressed$=INKEY$(2)
          WAIT(delay%)
        UNTIL (pressed$><"." AND pressed$><"," AND pressed$><"") OR  (pressed$="q" OR pressed$="Q")

        REM Done?
        IF pressed$="q" OR pressed$="Q" THEN
          PRINT
          PRINT "Bye"
          WAIT(120)
          QUIT
        ENDIF
        REM========= ^^^ Second copy of "inner parts" ^^^

        PRINT:REM Starts new line of Pressed/Not pressed characters
   UNTIL 4=5 REM End of Outer loop.