commit 527eb8c51d27b76ea793467845e06dc60597154f Author: SoloArchx250 <> Date: Mon Mar 16 09:20:23 2020 -0400 initial commit diff --git a/.kdev4/matrix.kdev4 b/.kdev4/matrix.kdev4 new file mode 100644 index 0000000..bb213b8 --- /dev/null +++ b/.kdev4/matrix.kdev4 @@ -0,0 +1,2 @@ +[Buildset] +BuildItems=@Variant(\x00\x00\x00\t\x00\x00\x00\x00\x01\x00\x00\x00\x0b\x00\x00\x00\x00\x01\x00\x00\x00\x0c\x00m\x00a\x00t\x00r\x00i\x00x) diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..9986db0 --- /dev/null +++ b/Makefile @@ -0,0 +1,28 @@ +all: build + +CC=gcc +STD=gnu99 +OPT=-Os +DBG=-g -ggdb -gstabs +OTHER= + +CMD=$(CC) $(DBG) -std=$(STD) $(OPT) $(OPT) +LINK=-lncurses + +FINBIN=bin/main.o + +install: build ; + cp $(FINBIN) /usr/local/bin/ + +build: + $(CMD) ./src/main.c $(LINK) -o ./bin/matrix + +valgrind: build ; + valgrind ./$(FINBIN) + +clean: + rm -rf ./bin/* + +clean-logs: + rm ./vgcore.* + rm ./massif.out.* diff --git a/bin/main.o b/bin/main.o new file mode 100755 index 0000000..ebf2a7e Binary files /dev/null and b/bin/main.o differ diff --git a/bin/matrix b/bin/matrix new file mode 100755 index 0000000..fb0fde5 Binary files /dev/null and b/bin/matrix differ diff --git a/matrix.kdev4 b/matrix.kdev4 new file mode 100644 index 0000000..deeb384 --- /dev/null +++ b/matrix.kdev4 @@ -0,0 +1,4 @@ +[Project] +CreatedFrom=Makefile +Manager=KDevCustomMakeManager +Name=matrix diff --git a/src/main.c b/src/main.c new file mode 100644 index 0000000..0554847 --- /dev/null +++ b/src/main.c @@ -0,0 +1,92 @@ +#include +#include +#include +#include +#include +#include + +int main(int argc, char **argv) { + WINDOW term = *initscr(); + start_color(); + init_pair(1,COLOR_GREEN,COLOR_BLACK); + attron(COLOR_PAIR(1)); + noecho(); + if(nodelay(&term,TRUE)==ERR) { + puts("Error could not enter no-delay mode"); + return ERR; + } + int time; + if(argc >= 3) { + time=atoi(argv[2]); + } else { + time=20; + } + timeout(time); + int maxX = COLS; + int maxY = LINES; + + int initTailLen; + if(argc >= 2) { + initTailLen=atoi(argv[1]); + } else { + initTailLen=10; + } + + int tailLen[maxX]; + + for(int i=0; i1) { + tailLen[i]=initTailLen+(rand()%(4%initTailLen)); + } else { + if(num<=1) { + tailLen[i]=initTailLen-(rand()%(8%initTailLen)); + } + } + } + + int cascade[maxX]; + int tail[maxX]; + int jmpTail[maxX]; + + for(int i=0; i