Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 14:14 26 Nov 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : asciimation

     Page 1 of 2    
Author Message
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 05:21pm 06 Feb 2024
Copy link to clipboard 
Print this post

When one has a lot of time and desire, translate this to VT100  
'no comment
 
Hans

Senior Member

Joined: 18/10/2022
Location: Canada
Posts: 116
Posted: 05:32pm 06 Feb 2024
Copy link to clipboard 
Print this post

Hi Martin;

Nice find, thank you for shareing that with us.

I'm retired and I don't have the time to create a remake of that.
Then again I spend a lot of time with my trains.

I guess its all about where your passion lies.

Thanks again,

Hans ...
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 6787
Posted: 05:36pm 06 Feb 2024
Copy link to clipboard 
Print this post

That's brilliant! :D
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 05:47pm 06 Feb 2024
Copy link to clipboard 
Print this post

the uncompressed TXT File is on Github
that would be the easiest way and wouldnt take to much Time, to write a little Player.
the Time, how long (How many Ticks) a Picture should be shown is encoded in the text File.
The normal playback speed is 15fpS, so every "TICK" should be 65ms..enough time to load the 15 Lines of Text
The disadvantage is that the uncompressed TextFile is 1,999,080 bytes long 1.9MB, so this does not work from A:
but most of the Text is chr 32 (Space) so I think it could be easy compressed, if the Spaces are just counted) so that every chr 32 is followed by the Number of them.
LIke we compress the Sprites for Csubs

Edited 2024-02-07 03:58 by Martin H.
'no comment
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4233
Posted: 06:44pm 06 Feb 2024
Copy link to clipboard 
Print this post

Looking at the format, I would add line numbers in front of each line.
Then do a line for line compare with the previous frame, and only keep
The changed lines.
This would shrink the file by 70%
And the player would be super simple.
I’ll give it a try tomorrow. Should not cost more than an hour to write, on MMB4W.
The player will not be more than 10 lines of code on picomite.

Volhout
Edited 2024-02-07 04:51 by Volhout
PicomiteVGA PETSCII ROBOTS
 
EDNEDN
Senior Member

Joined: 18/02/2023
Location: United States
Posts: 118
Posted: 07:56pm 06 Feb 2024
Copy link to clipboard 
Print this post

  Quote  I’ll give it a try tomorrow. Should not cost more than an hour to write, on MMB4W.  The player will not be more than 10 lines of code on picomite.


When doing software schedules, it is usually more accurate to double the number and increment the units of the initial estimate.

Accordingly, I'm expecting this to take 2 days.
 
PeteCotton

Guru

Joined: 13/08/2020
Location: Canada
Posts: 368
Posted: 08:00pm 06 Feb 2024
Copy link to clipboard 
Print this post

I love this. It reminds me of a power station I worked in in the early 90's. The VAX admin would always add a little VT100 animation to the user login screen at Christmas (Christmas pud with snowflakes etc.).
Edited 2024-02-07 06:01 by PeteCotton
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4233
Posted: 09:25pm 06 Feb 2024
Copy link to clipboard 
Print this post

All,

find attached ZIP file.
It contains the start wars movie, and a test file called "rick_roll.txt"
In it is a file compressor "compress.bas" based on only adding different lines.

it compresses the 95kb file "rick_roll.txt" to 34kb file "rick_roll_c.txt"

in the ZIP is also a player "player.bas" for the compressed file.

This works in MMB4W. Tested on the rick_roll.txt file that is 13 lines x 68 characters video window.

The programs are a little more complex than I expected since MMB4W removes leading <SPACE> characters in a string when reading from a file when using INPUT #1,a$

The player cannot play uncompressed files.
No guarantee for this set of programs, use at your own risk...

asciimovie.zip

Regards,

Volhout

p.s. The timer tick in the rick_roll movie is set to 500ms. I thought it was too fast else.
Edited 2024-02-07 07:27 by Volhout
PicomiteVGA PETSCII ROBOTS
 
homa

Guru

Joined: 05/11/2021
Location: Germany
Posts: 351
Posted: 10:20pm 06 Feb 2024
Copy link to clipboard 
Print this post

Not bad! Thanks for that. BUT where is the sound? ;-)

I tested it on a PicoMiteVGA.
It's still a bit rough compared to the original ...
Pause t*50 'previous time

and changing the timers only helps to a limited extent ... then the text becomes too fast ...

I have attached the sw1_c.txt.
sw1_c.zip

Matthias



> option list
PicoMiteVGA MMBasic Version 5.08.00
OPTION SYSTEM I2C GP14,GP15
OPTION COLOURCODE ON
OPTION KEYBOARD GR
OPTION CPUSPEED (KHz) 252000
OPTION SDCARD GP13, GP10, GP11, GP12
OPTION AUDIO GP4,GP5', ON PWM CHANNEL 2
OPTION RTC AUTO ENABLE
OPTION MODBUFF ENABLE
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 04:12am 07 Feb 2024
Copy link to clipboard 
Print this post

  homa said  Not bad! Thanks for that. BUT where is the sound? ;-)


I'm glad you asked, looking ahead as I am, I created the matching soundtrack about 2 years ago.

Have fun with it
'no comment
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 05:22am 07 Feb 2024
Copy link to clipboard 
Print this post

  Volhout said  All,

find attached ZIP file.
It contains the start wars movie, and a test file called "rick_roll.txt"
In it is a file compressor "compress.bas" based on only adding different lines.

it compresses the 95kb file "rick_roll.txt" to 34kb file "rick_roll_c.txt"

in the ZIP is also a player "player.bas" for the compressed file.

This works on a freshly installed Picomite in Tera Term without any special accessories .
just copy it and the "rick_roll_c.txt" to a:

'ascii movie player VT edition
Open "rick_roll_c.txt" For input As #1
'cls
Print Chr$(27); "[2J";
'Cursor off
Print Chr$(27);"[?25l";
t=1
'fh=MM.Info(FONTHEIGHT)
Do
 'first character in a line
 ch$=Input$(1,#1)
 If Asc(ch$)>127 Then 'movie line
   vpos=1+Asc(ch$)-128
   lin$=""
   Do
     ch$=Input$(1,#1)
     If Asc(ch$)>31 Then lin$=lin$+ch$
   Loop Until Asc(ch$)<27
 Print @(0,vpos*10),Space$(68)
   'text 0,vpos*fh,space$(68)
   'Text 0,vpos*fh,lin$
 Print @(0,vpos*10),lin$
 Else  'time marker
   Pause t*250 'previous time
   tim$=ch$
'    do
'      ch$=input$(1,#1)
'      if asc(ch$)>31 then tim$=tim$+ch$
'    loop until asc(ch$)<32
   t=Val(tim$)  'new time marker
 EndIf
Loop Until Eof(1)
Close #1
'Cursor on
Print Chr$(27);"[?25h";

Edited 2024-02-07 15:53 by Martin H.
'no comment
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4233
Posted: 08:52am 07 Feb 2024
Copy link to clipboard 
Print this post

For the PicoMiteVGA users...

Here is the movie player and movie for PicoMiteVGA.
The size will fit on the A: drive of a PicoMiteVGA, but it runs just as well from the SD card.

UNzip, and run "player.bas"
If needed change the variable "fps" to your desired speed.

Have fun.

SW1.zip




Volhout

P.S. Homa, thanks for compressing
P.S.S. Martin: nice sound track. Would be a nice MOD to attach to the rick_roll move, if we could ever get it synchronous....

EDIT: I noted one line that did not update well at 10 minutes roughy. Not sure if this is in the compressed file or the player. But in general...it works.
Edited 2024-02-07 19:15 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 11:29am 07 Feb 2024
Copy link to clipboard 
Print this post

  Volhout said  For the PicoMiteVGA users...

Here is the movie player and movie for PicoMiteVGA.
The size will fit on the A: drive of a PicoMiteVGA, but it runs just as well from the SD card.


so cude  
'no comment
 
Bleep
Guru

Joined: 09/01/2022
Location: United Kingdom
Posts: 509
Posted: 05:32pm 07 Feb 2024
Copy link to clipboard 
Print this post

Hi Harm,
Using PicoMiteVGA MMBasic Version 5.08.00

I've been looking at this, and have found a problem, which I can't explain?
any text line that contains a comma ',' is truncated at the comma, including the comma, you can see this in the early scrolling text, I've experimented with different ways of doing the Text command , but cannot get it to print anything after the comma? it is as though the Text command is treating it as a delimiter, in the string?
I suspect this may be a bug.
Just found it's not the Text command, it must be the Input command as doing a standard Print ? also misses of the end of the line from the comma?
Just found it is the Input, from the manual, "Input will take a list of variables separated by a comma (,)"
So we need a different way of reading the file?
Regards, Kevin.
Edited 2024-02-08 03:43 by Bleep
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 05:46pm 07 Feb 2024
Copy link to clipboard 
Print this post

  Bleep said  Hi Harm,

any text line that contains a comma ',' is truncated at the comma, including the comma, you can see this in the early scrolling text,
Regards, Kevin.


I tested LINE INPUT.
so from
Do
 Input #1,ch$                              'read one line from file
 If Asc(Left$(ch$,1))>127 Then             'movie line
   vpos=1+Asc(Left$(ch$,1))-128            'extract line number
   Text xs,ys+vpos*fh,Space$(68)               'clear this line on screen
   Text xs,ys+vpos*fh,Right$(ch$,Len(ch$)-1)   'write the new line
 Else                                      'time marker
   FRAMEBUFFER copy f,n
   Pause t*tick                            'previous time
   t=Val(ch$)                              'get new frame time
 EndIf
Loop

to
Do
 Line Input #1,ch$                              'read one line from file
 If Asc(Left$(ch$,1))>127 Then             'movie line
   vpos=1+Asc(Left$(ch$,1))-128            'extract line number
   Text xs,ys+vpos*fh,Space$(68)               'clear this line on screen
   Text xs,ys+vpos*fh,Right$(ch$,Len(ch$)-1)   'write the new line
 Else                                      'time marker
   FRAMEBUFFER copy f,n
   Pause t*tick                            'previous time
   t=Val(ch$)                              'get new frame time
 EndIf
Loop


btw .. with Font 8 the Game*mite is also able to play the Movie  
Edited 2024-02-08 04:06 by Martin H.
'no comment
 
Bleep
Guru

Joined: 09/01/2022
Location: United Kingdom
Posts: 509
Posted: 05:55pm 07 Feb 2024
Copy link to clipboard 
Print this post

Well done Martin, :-) I've been scouring the manual looking for something like that.
Yes it fixes it.
Regards, Kevin.
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 06:25pm 07 Feb 2024
Copy link to clipboard 
Print this post

Here is my version adapted for Game*Mite

GameMite.zip
copy both files in the SW1 Folder and start the GM_Player.bas


Edited 2024-02-08 04:38 by Martin H.
'no comment
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4039
Posted: 07:05pm 07 Feb 2024
Copy link to clipboard 
Print this post

I've seen this before, but it's awesome to have it on the Game*Mite.

These changes to the player help it find the assets, though you do have to start it with RUN rather than through the EDITor (because that doesn't set the path):

'ascii movie player for compressed (indexed) files
'Game*Mite Version
Option default integer
Font 8
'open "sw1_c.txt" for input as #1
Open MM.Info(Path) + "sw1_c.txt" For input As #1 ' < ----
fps=16

'set up theater environment
FRAMEBUFFER create:FRAMEBUFFER write f
Load image MM.Info(Path) + "title_s.bmp",20,10 ' < ----
'TILE 0,0,RGB(yellow),,80,13
FRAMEBUFFER copy f,n
...


Thanks,

Tom
Edited 2024-02-08 05:10 by thwill
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
homa

Guru

Joined: 05/11/2021
Location: Germany
Posts: 351
Posted: 09:22pm 07 Feb 2024
Copy link to clipboard 
Print this post

@Volhout: Many thanks for the VGA version! This is brilliant.

  Martin H. said  
  homa said  Not bad! Thanks for that. BUT where is the sound? ;-)


I'm glad you asked, looking ahead as I am, I created the matching soundtrack about 2 years ago.

Have fun with it

You misunderstood me ... on purpose ... the sound of the saga, of course!
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4233
Posted: 08:33am 08 Feb 2024
Copy link to clipboard 
Print this post

Thanks HOMA for finding the issue with the comma's.
Thanks Martin_H for fixing it.

Volhout
PicomiteVGA PETSCII ROBOTS
 
     Page 1 of 2    
Print this page
© JAQ Software 2024