summaryrefslogtreecommitdiff
path: root/userspace/brainfuck.c
diff options
context:
space:
mode:
authorMichal Idziorek <m.i@gmx.at>2014-10-21 00:42:21 +0200
committerMichal Idziorek <m.i@gmx.at>2014-10-21 00:42:21 +0200
commit5b9ea685dfd12415774e4e97ad387c601dd2b43b (patch)
treed8d9fa10b4364086dec82028ac5a9e6acfef6ebd /userspace/brainfuck.c
parentc81e5044a5d609a42407a5e9b0725d22e33cf5fa (diff)
new screenshot and minor cosmetics
Diffstat (limited to 'userspace/brainfuck.c')
-rw-r--r--userspace/brainfuck.c20
1 files changed, 14 insertions, 6 deletions
diff --git a/userspace/brainfuck.c b/userspace/brainfuck.c
index c363693..76a18cc 100644
--- a/userspace/brainfuck.c
+++ b/userspace/brainfuck.c
@@ -24,7 +24,8 @@
#include <string.h>
// by brainfuck standards (doesn't that sound funny?), the data pointer has
-// 30,000 bytes at its disposal, but I hate hard-coding such stuff.
+// 3,000 bytes at its disposal, but I hate hard-coding such stuff.
+// FOOLOS: decreased to 3000 (from 30.000)
#define DATA_SIZE 3000
void usage() {
@@ -77,9 +78,18 @@ int main(int argc, char **argv)
// added by FOOLOS
input=fopen(1,"r");
- puts("Welcome to the BRAINFUCK by Felix Oghina");
- puts("Compiled for FoolOS");
- printf("dataptr: 0x%08X\n",dataptr);
+ char *buf=malloc(256);
+ puts("\n\nbrainfuck: Welcome to the BRAINFUCK INTERPRETER by Felix Oghina");
+ puts("brainfuck: Licensed under the (brain)fuck licenses!");
+ puts("brainfuck: Adapted & Compiled for FoolOS");
+// printf("brainfuck: dataptr: 0x%08X\n",dataptr);
+// printf("brainfuck: dataptr2: 0x%08X\n",buf);
+ rewind(input);
+ fgets(buf,255,input);
+ printf("\nbrainfuck: loaded programm: %s\n\n",buf);
+ fseek(input, 0, SEEK_SET);
+
+
// zero the data pointer
for (i=0; i < DATA_SIZE; i++) {
@@ -87,7 +97,6 @@ int main(int argc, char **argv)
}
// start interpreting
- rewind(input);
while (!feof(input)) {
r = (unsigned char) fgetc(input);
@@ -142,6 +151,5 @@ int main(int argc, char **argv)
break;
}
}
- puts("brainfuck: finishing!");
return EXIT_SUCCESS;
}