August 11, 2022, 06:25:30 AM


Own IWBasic 2.x ? -----> Get your free upgrade to 3.x now.........

Programming a Star Wars Movie ?

Started by sapero, April 25, 2007, 09:43:54 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


April 25, 2007, 09:43:54 AM Last Edit: April 25, 2007, 09:45:44 AM by sapero
 ;D Here is a 3MB ascii Star-Wars movie. It uses telnet to download it, then you can replay it from local file:
Have phun!import int WSAStartup(int x,void *p);
import int socket(int q,int w,int e);
import int connect(int q,void *w,int e);
import int GetTickCount();
import int recv(int q,void *w,int e,int r);
import int closesocket(int q);
import int WSACleanup();
import int Sleep(int q);
import int system(...);
extern _printbuf as string;

#use "ws2_32.lib"

struct HDR
int sleep;
int datalen;
int data[0];

sub main()

sub replay()
int hFile = OpenFile(GetStartPath()+"StarWars.txt", MODE_READ);

HDR hdr;
while (!read(hFile, &hdr, sizeof(hdr)))
if (hdr.datalen > 32767) hdr.datalen = 32767;
read(hFile, &_printbuf, hdr.datalen);
_printbuf[hdr.datalen+1] = 0;
locate(1, 1);

sub download()
int received = 0;
WSAStartup(0x202, &_printbuf);
int sock = socket(2, 1, 6);

unsigned int64 scin[2];scin[0] = 17398472716125732866q, 0q; //
connect(sock, &scin, sizeof(scin));
int hFile = OpenFile(GetStartPath()+"StarWars.txt", MODE_CREATE | MODE_WRITE);

HDR hdr;
int time = GetTickCount();

hdr.datalen = recv(sock, &_printbuf, 32767, 0);
while (hdr.datalen > 0)
hdr.sleep = GetTickCount() - time;
time = GetTickCount();

write(hFile, &hdr, sizeof(hdr));
write(hFile, &_printbuf, hdr.datalen);

_printbuf[hdr.datalen] = 0;
received += hdr.datalen;

SetConsoleTitle(sprint(received/1024.0, " kB"));

hdr.datalen = recv(sock, &_printbuf, 32767, 0);

Rock Ridge Farm (Larry)

I get an error about a restricted port.


Maybe try directly from the command prompt:telnet
Using the telnet you can not save this "movie". Telnet port (23) must be enabled in your firewall to view/download this ascii movie.
If your still unable to connect, download the movie from unpack it where the above program was compiled (in main change download to replay) and run.


Rock Ridge Farm (Larry)

That worked. Kool.
Some people have lots of time on their hands.