trying to track down a one-line game, possibly called "One Line"

discussion of beeb/electron applications, languages, utils and educational s/w
Post Reply
scruss
Posts: 51
Joined: Sun Jul 01, 2018 3:12 pm
Location: Toronto
Contact:

trying to track down a one-line game, possibly called "One Line"

Post by scruss » Sun Jul 01, 2018 5:06 pm

Hi - I've asked this a couple of other places without success. From the posts I see here, I probably should've asked here first.

Circa 1985 in our school BBC Micro lab, we wasted much time playing a tiny type-in game that looked a bit like this:
26AcH.png
One Line, as ported to the Amstrad CPC
26AcH.png (2.32 KiB) Viewed 899 times
The playfield was filled with a random arrangement of asterisks, and the player controlled a continuously-growing diagonal line that could be switch from falling down to going up by pressing a key. The game played similarly to later games like SFCave (Palm) and Flappy Bird, except the screen didn't scroll. There were ports to other systems, such as one to the Dragon 32 (written by Alan Cook) and another to the Amstrad CPC (written by me, published in Amstrad Computer User in 1988).

I'm trying to find the original. Here's all I know:
  • It was written in BBC BASIC
  • It was most likely called "One Line", but I have a faint memory of it perhaps being called "Whirly"
  • It was one — quite long — line of BASIC
  • It was most likely published in one of BEEBUG, The Micro User, Acorn User, etc
If it helps jog your memory, here's a version running on an emulated Amstrad CPC: http://scruss.com/cpc/6128s.html?stardo ... 22stardoj2

Any suggestions gratefully received.

VectorEyes
Posts: 140
Joined: Fri Apr 13, 2018 1:48 pm
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by VectorEyes » Sun Jul 01, 2018 5:25 pm

Talk about a blast from the past! I remember playing this in our school computer lab as well!

I don't think it was a one-liner though. Or if it was, somebody had later split it into multiple lines because I'm sure it was easy to find the BASIC line that defined the angle of the line (default 45°) and if you set it to zero the line would never hit an asterisk, and just go on forever.

No idea where the source might be unfortunately. I wish I'd kept all my discs from school!

User avatar
leenew
Posts: 3630
Joined: Wed Jul 04, 2012 3:27 pm
Location: Doncaster, Yorkshire
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by leenew » Sun Jul 01, 2018 6:45 pm

Hi
I can't check at the moment, but could it be one of these?
http://bbcmicro.co.uk/game.php?id=2718

Lee.
Last edited by leenew on Sun Jul 01, 2018 6:45 pm, edited 1 time in total.

scruss
Posts: 51
Joined: Sun Jul 01, 2018 3:12 pm
Location: Toronto
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by scruss » Sun Jul 01, 2018 6:55 pm

Sadly, it's not. I think I've checked all of the typeins in that archive. Thanks for digging that one out, though.

It was one of those "you're not supposed to play this until you've finished the lesson" games. That didn't exactly always happen.

User avatar
lurkio
Posts: 1737
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by lurkio » Mon Jul 02, 2018 5:16 pm

scruss wrote:
Sun Jul 01, 2018 5:06 pm
If it helps jog your memory, here's a version running on an emulated Amstrad CPC: http://scruss.com/cpc/6128s.html?stardo ... 22stardoj2
I have no memory of this game, but for a lark I tried converting your CPC listing to BBC BASIC (press Space to control the line):

Code: Select all

 70 q=5
180 xm=4:ym=4:CLS:P.'"Press a key";:*FX15
181 IFGET IF RND(-TIME)
190 MODE 1
195 GCOL0,1:VDU19,1,7;0;
200 DRAW 1279,0
210 DRAW 1279,435
220 MOVE 1279,590
230 DRAW 1279,1023
240 DRAW 0,1023
250 DRAW 0,0

260 DRAW 0,ym
270 DRAW 1279-xm,ym
280 DRAW 1279-xm,435
290 MOVE 1279-xm,590
300 DRAW 1279-xm,1023-ym
310 DRAW xm,1023-ym
320 DRAW xm,ym

380 VDU 5
390 FOR s=1 TO q
400 MOVE 101+RND(1139),51+RND(921)
410 PRINT"*";
420 NEXT
430 VDU 4
440 N%=4:X%=0:Y%=512:MOVE X%,Y%
450 dy=N%
470 Y%=Y%+dy:X%=X%+N%:PLOT 5,X%,Y%
480 IF INKEY(-99) dy=N% ELSE dy=-N%
490 t=POINT(X%+N%,Y%+dy)
500 IF t=1 GOTO 550
510 IF t=-1 GOTO 620
520 GOTO 470

550 PRINTTAB(0,0)"GOOFED on Screen ";STR$(q/5);" !":VDU7:END

620 PRINTTAB(0,0)"YES!":TIME=0:REPEATUNTILTIME>100
650 *FX15
660 IFGET
670 q=q+5
680 GOTO 190
My version isn't as quick and frantic as yours, though, which may or may not be a good thing -- depending on the state of your reflexes.

:?:
Last edited by lurkio on Mon Jul 02, 2018 7:33 pm, edited 3 times in total.

scruss
Posts: 51
Joined: Sun Jul 01, 2018 3:12 pm
Location: Toronto
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by scruss » Mon Jul 02, 2018 8:10 pm

Thanks, Lurkio! Good times!

User avatar
sbadger
Posts: 334
Joined: Mon Mar 25, 2013 1:12 pm
Location: Farnham, Surrey
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by sbadger » Wed Jul 04, 2018 6:51 pm

Ive definitely got this somewhere... I archived all my beeb discs a few years ago so should have it. I'll have a look

When I saw 'flappy bird' a few years back it made me think RipOff😜!!
Last edited by sbadger on Wed Jul 04, 2018 6:53 pm, edited 1 time in total.
So many projects, so little time...

User avatar
sbadger
Posts: 334
Joined: Mon Mar 25, 2013 1:12 pm
Location: Farnham, Surrey
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by sbadger » Wed Jul 04, 2018 7:05 pm

I think i've found it...but , it doesn't work in beebem?, maybe my archiving missed something.


EDIT: nope, that wasn't it
Last edited by sbadger on Thu Jul 05, 2018 6:21 am, edited 4 times in total.
So many projects, so little time...

User avatar
lurkio
Posts: 1737
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by lurkio » Wed Jul 04, 2018 7:58 pm

sbadger wrote:
Wed Jul 04, 2018 7:05 pm
I think i've found it...but , it doesn't work in beebem?, maybe my archiving missed something.

Code: Select all

   10MODE1:VDU23,1,0;0;0;0;:VDU19,0,2;0;:VDU19,1,0;0;:VDU19,2,1;0;
   20PROCF(1)
   30DEFPROCF(A%):FORL%=0TO38STEP4:FORM%=0TOL%/2:X%=L%:Y%=256-(M%*8):CALLS%:X%=M%*2:Y%=256-(L%*4):CALLS%:X%=76-L%:Y%=256-(M%*8):CALLS%:X%=76-(M%*2):Y%=256-(L%*4):CALLS%:X%=L%:Y%=M%*8:CALLS%:X%=M%*2:Y%=L%*4:CALLS%:X%=76-L%:Y%=M%*8:CALLS%:X%=76-(M%*2):Y%=L%*4:CALLS%:NEXT,:ENDPROC
The variable S% isn't assigned any value. So the "CALL S%" isn't going to do anything. Is there another program on the disc that initialises S% and/or includes some assembler?

The fact that there's a CALL suggests that this isn't really a one-liner because it relies on some machine code that isn't part of the main program.

:?:
Last edited by lurkio on Wed Jul 04, 2018 7:59 pm, edited 1 time in total.

User avatar
sbadger
Posts: 334
Joined: Mon Mar 25, 2013 1:12 pm
Location: Farnham, Surrey
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by sbadger » Wed Jul 04, 2018 8:03 pm

Scratch that goose chase, that must have just been something else. I think I've found the proper one ...

Code: Select all

1L=0:REP.L=L+3:MO.4:DR.1279,0:DR.1279,452:MOVE1279,572:DR.1279,1023:DR.0,1023:F.I=1TOL:V.31,RND(32)+5,RND(31),42,30:N.:P.(L-3)/3:X=0:Y=512:REP.PL.69,X,Y:X=X+4:Y=Y-(INKEY-74+.5)*8:U.PO.X,Y)=1ORX=1280:U.X<1280:V.7:REP.U.INKEY-99:RUN 

stew
Last edited by sbadger on Thu Jul 12, 2018 9:09 am, edited 2 times in total.
So many projects, so little time...

User avatar
sbadger
Posts: 334
Joined: Mon Mar 25, 2013 1:12 pm
Location: Farnham, Surrey
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by sbadger » Wed Jul 04, 2018 8:07 pm

I should have said , that is from Beebug Vol3, Issue 7, Page 9
beebugv3i7p9.jpg
Hope it's the one you were after?
stars.jpg
Last edited by sbadger on Wed Jul 04, 2018 8:09 pm, edited 1 time in total.
So many projects, so little time...

User avatar
lurkio
Posts: 1737
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by lurkio » Wed Jul 04, 2018 8:10 pm

sbadger wrote:
Wed Jul 04, 2018 8:03 pm
I think I've found the proper one ...
Yes, that looks like the one!

Here's the corrected code:

Code: Select all

1L=0:REP.L=L+3:MO.4:DR.1279,0:DR.1279,452:MOVE1279,572:DR.1279,1023:DR.0,1023:F.I=1TOL:V.31,RND(32)+5,RND(31),42,30:N.:P.(L-3)/3:X=0:Y=512:REP.PL.69,X,Y:X=X+4:Y=Y-(INKEY-74+.5)*8:U.PO.X,Y)=1ORX=1280:U.X<1280:V.7:REP.U.INKEY-99:RUN
:idea:

scruss
Posts: 51
Joined: Sun Jul 01, 2018 3:12 pm
Location: Toronto
Contact:

Re: trying to track down a one-line game, possibly called "One Line" [RESOLVED]

Post by scruss » Thu Jul 05, 2018 1:45 am

sbadger wrote:
Wed Jul 04, 2018 8:07 pm
Hope it's the one you were after?
Yes!

thankyouthankyouthankyou!

I don't think I've played that since 1986!

So it's called Asterisk Tracker. Not Whirly. Not One Line.

blown away … thank you so much!

You can play it too now: https://bbc.godbolt.org/?autorun&loadBa ... 76ee/ASTER
Last edited by scruss on Thu Jul 05, 2018 11:49 am, edited 2 times in total.

User avatar
lurkio
Posts: 1737
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by lurkio » Thu Jul 05, 2018 1:07 pm

sbadger wrote:
Wed Jul 04, 2018 8:07 pm
I should have said , that is from Beebug Vol3, Issue 7, Page 9

Here are all three games on that page:

They're also online at bbcmicro.co.uk:
:idea:
Last edited by lurkio on Thu Jul 05, 2018 10:18 pm, edited 1 time in total.

Commie_User
Posts: 1128
Joined: Wed Jan 27, 2016 12:50 am
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by Commie_User » Fri Jul 06, 2018 4:58 pm

These tiny games are amazing.

This isn't the version I'm thinking of but there was also 1K Chess for the ZX81 and a 4 line chess game for the Amstrad (I think): https://arstechnica.com/gaming/2015/01/ ... 487-bytes/

487 bytes, that one.

OneSwitch
Posts: 90
Joined: Tue Nov 22, 2011 5:50 pm
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by OneSwitch » Wed Jul 11, 2018 8:56 pm

sbadger wrote:
Wed Jul 04, 2018 8:03 pm

Code: Select all

1L=0:REP.L=L+3:MO.4:DR.1279,0:DR.1279,4
52:MOVE1279,572:DR.1279,1023:DR.0,1023:F.I=1TOL:V.31,RND(32)+5,RND(31),42,30:N.:P.(L-3)/3:X=0:Y=512:REP.PL.69,X,Y:X=X+4:Y=Y-(INKEY-74+.5)*8:U.PO.X,Y)=1ORX=1280:U.X<1280:V.7:REP.U.
INKEY-99:RUN 
Could anyone make this fully playable (and possible to restart after a brief pause) with the SPACE bar alone, please? I imagine it would not be possible to do in 1 line.

User avatar
lurkio
Posts: 1737
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by lurkio » Wed Jul 11, 2018 9:15 pm

OneSwitch wrote:
Wed Jul 11, 2018 8:56 pm
Could anyone make this fully playable (and possible to restart after a brief pause) with the SPACE bar alone, please? I imagine it would not be possible to do in 1 line.

Code: Select all

1L=0:REP.L=L+3:MO.4:DR.1279,0:DR.1279,452:MOVE1279,572:DR.1279,1023:DR.0,1023:F.I=1TOL:V.31,RND(32)+5,RND(31),42,30:N.:P.(L-3)/3:X=0:Y=512:REP.PL.69,X,Y:X=X+4:Y=Y-(INKEY-99+.5)*8:U.PO.X,Y)=1ORX=1280:U.X<1280:V.7:REP.U.INKEY-99:RUN
:idea:

OneSwitch
Posts: 90
Joined: Tue Nov 22, 2011 5:50 pm
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by OneSwitch » Wed Jul 11, 2018 9:40 pm

Champion. Many thanks. :)

User avatar
jgharston
Posts: 3178
Joined: Thu Sep 24, 2009 11:22 am
Location: Whitby/Sheffield
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by jgharston » Wed Jul 11, 2018 10:01 pm

One-line LOGO:

Code: Select all

    1 MODE0:VDU28;31,6479;29,640;512;:PLOT69,0,0:REPEATINPUTLINE">"A$:FORX=1TOVALA$:B$=A$:REPEATC=ASCB$AND31:N=VALMID$(B$,2):IFC=3RUNELSEIFC=10ORC=28OSCLIB$:B$="":UNTILFALSEELSEPLOT4*-(C=8),0,0:P=PEOR-(C=16):A=(A-N*(C=18)+N*(C=12))MOD360:D=N*(C=2)-N*(C=6):PLOT1-P,D*SINRADA,D*COSRAD(A+.1):B$=MID$(B$,INSTR(B$+";",";")+1):UNTILB$=""ORC=24:NEXT:UNTILC=24

Code: Select all

$ bbcbasic
PDP11 BBC BASIC IV Version 0.25
(C) Copyright J.G.Harston 1989,2005-2015
>_

User avatar
sbadger
Posts: 334
Joined: Mon Mar 25, 2013 1:12 pm
Location: Farnham, Surrey
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by sbadger » Thu Jul 12, 2018 9:21 am

jgharston wrote:
Wed Jul 11, 2018 10:01 pm
One-line LOGO:

Code: Select all

    1 MODE0:VDU28;31,6479;29,640;512;:PLOT69,0,0:REPEATINPUTLINE">"A$:FORX=1TOVALA$:B$=A$:REPEATC=ASCB$AND31:N=VALMID$(B$,2):IFC=3RUNELSEIFC=10ORC=28OSCLIB$:B$="":UNTILFALSEELSEPLOT4*-(C=8),0,0:P=PEOR-(C=16):A=(A-N*(C=18)+N*(C=12))MOD360:D=N*(C=2)-N*(C=6):PLOT1-P,D*SINRADA,D*COSRAD(A+.1):B$=MID$(B$,INSTR(B$+";",";")+1):UNTILB$=""ORC=24:NEXT:UNTILC=24

I can't get this to fit in the keyboard buffer even using abbreviations :?:

Code: Select all

1MO.0:VDU28;31,6479;29,640;512;:PL.69,0,0:REP.I.LINE">"A$:F.X=1TOVALA$:B$=A$:REP.C=ASCB$A.31:N=VALM.(B$,2):IFC=3R.ELSEIFC=10ORC=28OSCLIB$:B$="":U.FA.ELSEPL.4*-(C=8),0,0:P=PEOR-(C=16):A=(A-N*(C=18)+N*(C=12))MOD360:D=N*(C=2)-N*(C=6):PL.1-P,D*SINRADA,D*COSRAD(A+.1):B$=M.(B$,INS.(B$+";",";")+1):U.B$=""ORC=24:N.:U.C=24
EDIT:a few of the abbreviation don't parse either?!, yet on a single line they do.
Last edited by sbadger on Thu Jul 12, 2018 9:36 am, edited 4 times in total.
So many projects, so little time...

User avatar
lurkio
Posts: 1737
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by lurkio » Thu Jul 12, 2018 11:44 am

sbadger wrote:
Thu Jul 12, 2018 9:21 am
EDIT:a few of the abbreviation don't parse either?!, yet on a single line they do.
I think some of your abbreviations were a bit off (e.g. MID$ and INSTR). Here's the prog with correct abbreviations. It still can't be typed onto one line though*:

Code: Select all

1MO.0:VDU28;31,6479;29,640;512;:PL.69,0,0:REP.I.LINE">"A$:F.X=1TOVALA$:B$=A$:REP.C=ASCB$A.31:N=VALM.B$,2)
2IFC=3RUN EL.IFC=10ORC=28OS.B$:B$="":U.0EL.PL.4*-(C=8),0,0:P=P EOR-(C=16):A=(A-N*(C=18)+N*(C=12))MOD360:D=N*(C=2)-N*(C=6):PL.1-P,D*SINRADA,D*COSRAD(A+.1):B$=M.B$,INS.B$+";",";")+1):U.B$=""ORC=24:N.:U.C=24
Try commands like

Code: Select all

F100
R90
F100
C
etc.

Here's the reference for minimum abbreviations in BBC BASIC 2:
:idea:

* However, it can be typed onto two lines, as shown above, and then compressed onto one line, e.g. by using the Pack feature of the PRES Advanced BASIC Editor ROMs.
Last edited by lurkio on Thu Jul 12, 2018 11:48 am, edited 2 times in total.

User avatar
sbadger
Posts: 334
Joined: Mon Mar 25, 2013 1:12 pm
Location: Farnham, Surrey
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by sbadger » Thu Jul 12, 2018 12:43 pm

lurkio wrote:
Thu Jul 12, 2018 11:44 am
sbadger wrote:
Thu Jul 12, 2018 9:21 am
EDIT:a few of the abbreviation don't parse either?!, yet on a single line they do.
I think some of your abbreviations were a bit off (e.g. MID$ and INSTR). Here's the prog with correct abbreviations. It still can't be typed onto one line though*:

Code: Select all

1MO.0:VDU28;31,6479;29,640;512;:PL.69,0,0:REP.I.LINE">"A$:F.X=1TOVALA$:B$=A$:REP.C=ASCB$A.31:N=VALM.B$,2)
2IFC=3RUN EL.IFC=10ORC=28OS.B$:B$="":U.0EL.PL.4*-(C=8),0,0:P=P EOR-(C=16):A=(A-N*(C=18)+N*(C=12))MOD360:D=N*(C=2)-N*(C=6):PL.1-P,D*SINRADA,D*COSRAD(A+.1):B$=M.B$,INS.B$+";",";")+1):U.B$=""ORC=24:N.:U.C=24
Try commands like

Code: Select all

F100
R90
F100
C
etc.

Here's the reference for minimum abbreviations in BBC BASIC 2:
:idea:

* However, it can be typed onto two lines, as shown above, and then compressed onto one line, e.g. by using the Pack feature of the PRES Advanced BASIC Editor ROMs.

Thanks for that, the minimum list is very handy too!
Last edited by sbadger on Thu Jul 12, 2018 12:56 pm, edited 2 times in total.
So many projects, so little time...

User avatar
sbadger
Posts: 334
Joined: Mon Mar 25, 2013 1:12 pm
Location: Farnham, Surrey
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by sbadger » Thu Jul 12, 2018 3:13 pm

It's pretty good this mini logo PU and PD work too!
Image1.jpg
Commands i've found that work so far...

Code: Select all

Fn	Forward by n
Rn    Rotate clockwise by n degrees
Ln	Rotate anticlockwise by n degrees
PU    Pen Up
PD    Pen Down
H     Home
Last edited by sbadger on Thu Jul 12, 2018 3:24 pm, edited 1 time in total.
So many projects, so little time...

User avatar
lurkio
Posts: 1737
Joined: Tue Apr 09, 2013 11:30 pm
Location: Doomawangara
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by lurkio » Thu Jul 12, 2018 3:43 pm

sbadger wrote:
Thu Jul 12, 2018 3:13 pm
It's pretty good this mini logo PU and PD work too!
Neat!

Here it is, compressed down to one line:
:idea:
Last edited by lurkio on Thu Jul 12, 2018 3:43 pm, edited 1 time in total.

User avatar
jgharston
Posts: 3178
Joined: Thu Sep 24, 2009 11:22 am
Location: Whitby/Sheffield
Contact:

Re: trying to track down a one-line game, possibly called "One Line"

Post by jgharston » Fri Jul 13, 2018 10:45 pm

Here's the full documentation:

Code: Select all

-------------------------------------------------------------------------------
 Program : MiniLOGO
 Purpose : One-line Implementation of LOGO Turtle Graphics
 Author  : (C) Jon Ripley, 1999-2001
 Version : 0.08 (24th August 2001)
-------------------------------------------------------------------------------

Commands:

  F <distance> Move turtle forwards <distance>
  B <distance> Move turtle backwards <distance>
  L <angle>    Turn turtle left <angle> degrees
  R <angle>    Turn turtle right <angle> degrees
  H            Home turtle (move to centre of screen)
  P            Toggle Pen Up / Pen Down
  C            Clear screen and home turtle; rest of line is ignored
  X            Exit MiniLOGO
  *<command>   Do *<command>
  : <comment>  Short comment; can be included in compound statements
  | <comment>  Long comment; rest of line is ignored
  ;            Command separator
  <iterations> Repeat command, must be first command in a line

Commands can be upper or lower case. No spaces are required in commands but can be used
anywhere except immediately before a command. Invalid commands have no effect. Numbers
must be in decimal.

Multiple commands on one line can be separated with ';', eg. f100;r90;f100;r90;f100;r90;f100;
The terminating ';' is not required.

Repeat is enabled by prefixing a line with the number of repeats followed by ';', eg. 4;f100;r90;

Comments, suggestions, beer tokens...

Contact : <mailto:jon@stryker.freeserve.co.uk>
Web     : <http://www.stryker.freeserve.co.uk/>
ICQ     : 59461687

Code: Select all

$ bbcbasic
PDP11 BBC BASIC IV Version 0.25
(C) Copyright J.G.Harston 1989,2005-2015
>_

Post Reply