|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
|
Page 1 of 1
|
[ 13 posts ] |
|
Solid C и большие программы
Author |
Message |
cr0acker
God
Joined: 03 Feb 2003 13:53 Posts: 1078
|
Вот ориогинальный код:
| | | | Code: //Homer simpson or american chajnik in russia speech reader //ver 0.1preAlpha1 //25 dec 2003 //LXX-speech #XX //E1-speech end
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h>
int find(char s,char *str2) { int ptr=0; while(str2[ptr]!=0) { if(str2[ptr]==s) return ptr; // number return ptr++; } return -1; // not found }
/*int findstr(char str[],char str2[]) { int x,x1,rez,i; x=sizeof(str2); x1=sizeof(str); if(x>=x1) { for (i=0; i==x; i++) { rez=find(str[i],str2); if(rez==-1) { i=x; return -1; } return 1; }
} else { return -1; } }*/ int main (void) { FILE *fpspeech; char str[81]; int est,dat,odat,i; est=0;
if ((fpspeech=fopen("program.eng","r"))==NULL) { printf("\aERROR opening program.rus\n"); return(100); } while ((fgets(str,sizeof(str),fpspeech))!=NULL) { if (str[0]=='I') { printf("IF"); if(find('M',str)!=-1) { dat=find('M',str); if(isdigit(str[(dat+1)])&&isdigit(str[(dat+2)])) { printf(" DATA [%c%c]=1",str[dat+1],str[dat+2]); } } if(find('S',str)!=-1) { dat=find('S',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" POCKET[1--3]=%c%c",str[dat+1],str[dat+2]); } } if(find('B',str)!=-1) { dat=find('B',str); if(isdigit(str[dat+1])&&isdigit(str[dat+2])) { printf(" PLAY %c%c",str[dat+1],str[dat+2]); } } if(find('P',str)!=-1) { odat=find('P',str); if(isdigit(str[odat+1])&&isdigit(str[odat+2])) { printf(" Print(personage=%c%c Length=%c%c", str[odat+1],str[odat+2],str[odat+3],str[odat+4]); dat=find('*',str);
i=odat+5; printf(" "); while(isalnum(str[i])||str[i]==' '||str[i]=='!'||str[i]=='?'||str[i]=='-'||str[i]=='.'||str[i]==','||str[i]==':'||str[i]==')'||str[i]==39) { printf("%c",str[i]); i++; } dat=find('*',str); if (dat!=-1) { if (str[dat+1]=='*') { printf(" WAIT=2)"); } else { printf(" WAIT=1)"); } } else { printf(" WAIT=0)"); } } } if (find('R',str)!=-1) { dat=find('R',str); if(isdigit(str[dat+1])&&isdigit(str[dat+2])) { printf(" PutSprite(Moveable=%c,Solid=%c,#%c%c)",str[dat+1],str[dat+2],str[dat+3],str[dat+4]); }
} if (find('+',str)!=-1) { dat=find('+',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" PutPocket(#%c%c)",str[dat+1],str[dat+2]); } } if (find('-',str)!=-1) { dat=find('-',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" RemovePocket(#%c%c)",str[dat+1],str[dat+2]); } } dat=find('G',str); if ((find('G',str)!=-1)&&(isdigit(str[dat+1])||str[dat+1]=='$'||str[dat+1]=='%'||str[dat+1]==96||str[dat+1]=='!') && isdigit(str[dat+2])) { dat=find('G',str); if((isdigit(str[dat+1])||str[dat+1]=='$'||str[dat+1]=='%'||str[dat+1]==96||str[dat+1]=='!')&&isdigit(str[dat+2])) { printf(" Goto label %c%c",str[dat+1],str[dat+2]); } } if (find('E',str)!=-1) { dat=find('E',str); if(str[dat+1]=='0') { printf(" Exit 0"); } if(str[dat+1]=='1') { printf(" Exit 1"); } } printf("\n%s",str); getchar(); } if(str[0]=='E') { if(find('1',str)!=-1) { printf("Exit 1"); }
if(find('0',str)!=-1) { printf("Exit 0"); } printf("\n%s",str); getchar(); } if(str[0]=='P') { odat=find('P',str); if(isdigit(str[odat+1])&&isdigit(str[odat+2])) { printf(" Print(personage=%c%c Length=%c%c", str[odat+1],str[odat+2],str[odat+3],str[odat+4]); dat=find('*',str);
i=odat+5; printf(" "); while(isalnum(str[i])||str[i]==' '||str[i]=='!'||str[i]=='?'||str[i]=='-'||str[i]=='.'||str[i]==','||str[i]==':'||str[i]==')'||str[i]==39) { printf("%c",str[i]); i++; } dat=find('*',str); if (dat!=-1) { if (str[dat+1]=='*') { printf(" WAIT=2)"); } else { printf(" WAIT=1)"); } } else { printf(" WAIT=0)"); } } printf("\n"); //getchar(); }
if(str[0]=='L' && (isdigit(str[1])||str[1]=='$'||str[1]=='%'||str[1]==96||str[1]=='!') && isdigit(str[2])) { printf("Label %c%c",str[1],str[2]); if /*(find('I',str)!=-1)*/ (str[4]=='I') { printf(" IF"); } if(find('M',str)!=-1) { dat=find('M',str); if(isdigit(str[(dat+1)])&&isdigit(str[(dat+2)])) { printf(" DATA [%c%c]=1",str[dat+1],str[dat+2]); } } if(find('S',str)!=-1) { dat=find('S',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" POCKET[1--3]=%c%c",str[dat+1],str[dat+2]); } } if(find('B',str)!=-1) { dat=find('B',str); if(isdigit(str[dat+1])&&isdigit(str[dat+2])) { printf(" PLAY %c%c",str[dat+1],str[dat+2]); } } if(find('P',str)!=-1) { odat=find('P',str); if(isdigit(str[odat+1])&&isdigit(str[odat+2])) { printf(" Print(personage=%c%c Length=%c%c", str[odat+1],str[odat+2],str[odat+3],str[odat+4]); dat=find('*',str);
i=odat+5; printf(" "); while(isalnum(str[i])||str[i]==' '||str[i]=='!'||str[i]=='?'||str[i]=='-'||str[i]=='.'||str[i]==','||str[i]==':'||str[i]==')'||str[i]==39) { printf("%c",str[i]); i++; } dat=find('*',str); if (dat!=-1) { if (str[dat+1]=='*') { printf(" WAIT=2)"); } else { printf(" WAIT=1)"); } } else { printf(" WAIT=0)"); } } } if (find('R',str)!=-1) { dat=find('R',str); if(isdigit(str[dat+1])&&isdigit(str[dat+2])) { printf(" PutSprite(Moveable=%c,Solid=%c,#%c%c)",str[dat+1],str[dat+2],str[dat+3],str[dat+4]); }
} if (find('+',str)!=-1) { dat=find('+',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" PutPocket(#%c%c)",str[dat+1],str[dat+2]); } } if (find('-',str)!=-1) { dat=find('-',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" RemovePocket(#%c%c)",str[dat+1],str[dat+2]); } } if (find('G',str)!=-1) { dat=find('G',str); if((isdigit(str[dat+1])||str[dat+1]=='$')&&isdigit(str[dat+2])) { printf(" Goto label %c%c",str[dat+1],str[dat+2]); } } if (find('E',str)!=-1) { dat=find('E',str); if(str[dat+1]=='0') { printf(" Exit 0"); } if(str[dat+1]=='1') { printf(" Exit 1"); } }
printf("\n"); //getchar(); }
} getchar(); if (fclose(fpspeech)==EOF) { printf("\aERROR closing program.ru\n"); return(101); } return 0; }
| | | | |
Солид его не компилит. Вот испавленая версия | | | | Code: //Homer simpson or american chajnik in russia speech reader //ver 0.1preAlpha1 //25 dec 2003 //LXX-speech #XX //E1-speech end
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h>
#include <conio.h> // для объявления getch()
// определить "getchar" (или исправь его везде на "getch") #define getchar getch
//int find(char s,char *str2) // не верно int find(s,str2) // надо так char s, *str2; { int ptr=0; while(str2[ptr]!=0) { if(str2[ptr]==s) return ptr; // number return ptr++; } return -1; // not found }
/*int findstr(char str[],char str2[]) { int x,x1,rez,i; x=sizeof(str2); x1=sizeof(str); if(x>=x1) { for (i=0; i==x; i++) { rez=find(str[i],str2); if(rez==-1) { i=x; return -1; } return 1; }
} else { return -1; } }*/
//int main (void) // не верно int main () // верно { FILE *fpspeech; char str[81]; int est,dat,odat,i; est=0;
if ((fpspeech=fopen("program.eng","r"))==NULL) { printf("\aERROR opening program.rus\n"); return(100); } while ((fgets(str,sizeof(str),fpspeech))!=NULL) { if (str[0]=='I') { printf("IF"); if(find('M',str)!=-1) { dat=find('M',str); if(isdigit(str[(dat+1)])&&isdigit(str[(dat+2)])) { printf(" DATA [%c%c]=1",str[dat+1],str[dat+2]); } } if(find('S',str)!=-1) { dat=find('S',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" POCKET[1--3]=%c%c",str[dat+1],str[dat+2]); } } if(find('B',str)!=-1) { dat=find('B',str); if(isdigit(str[dat+1])&&isdigit(str[dat+2])) { printf(" PLAY %c%c",str[dat+1],str[dat+2]); } } if(find('P',str)!=-1) { odat=find('P',str); if(isdigit(str[odat+1])&&isdigit(str[odat+2])) { printf(" Print(personage=%c%c Length=%c%c", str[odat+1],str[odat+2],str[odat+3],str[odat+4]); dat=find('*',str);
i=odat+5; printf(" "); while(isalnum(str[i])||str[i]==' '||str[i]=='!'||str[i]=='?'||str[i]=='-'||str[i]=='.'||str[i]==','||str[i]==':'||str[i]==')'||str[i]==39) { printf("%c",str[i]); i++; } dat=find('*',str); if (dat!=-1) { if (str[dat+1]=='*') { printf(" WAIT=2)"); } else { printf(" WAIT=1)"); } } else { printf(" WAIT=0)"); } } } if (find('R',str)!=-1) { dat=find('R',str); if(isdigit(str[dat+1])&&isdigit(str[dat+2])) { printf(" PutSprite(Moveable=%c,Solid=%c,#%c%c)",str[dat+1],str[dat+2],str[dat+3],str[dat+4]); }
} if (find('+',str)!=-1) { dat=find('+',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" PutPocket(#%c%c)",str[dat+1],str[dat+2]); } } if (find('-',str)!=-1) { dat=find('-',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" RemovePocket(#%c%c)",str[dat+1],str[dat+2]); } } dat=find('G',str); if ((find('G',str)!=-1)&&(isdigit(str[dat+1])||str[dat+1]=='$'||str[dat+1]=='%'||str[dat+1]==96||str[dat+1]=='!') && isdigit(str[dat+2])) { dat=find('G',str); if((isdigit(str[dat+1])||str[dat+1]=='$'||str[dat+1]=='%'||str[dat+1]==96||str[dat+1]=='!')&&isdigit(str[dat+2])) { printf(" Goto label %c%c",str[dat+1],str[dat+2]); } } if (find('E',str)!=-1) { dat=find('E',str); if(str[dat+1]=='0') { printf(" Exit 0"); } if(str[dat+1]=='1') { printf(" Exit 1"); } } printf("\n%s",str); getchar(); } if(str[0]=='E') { if(find('1',str)!=-1) { printf("Exit 1"); }
if(find('0',str)!=-1) { printf("Exit 0"); } printf("\n%s",str); getchar(); } if(str[0]=='P') { odat=find('P',str); if(isdigit(str[odat+1])&&isdigit(str[odat+2])) { printf(" Print(personage=%c%c Length=%c%c", str[odat+1],str[odat+2],str[odat+3],str[odat+4]); dat=find('*',str);
i=odat+5; printf(" "); while(isalnum(str[i])||str[i]==' '||str[i]=='!'||str[i]=='?'||str[i]=='-'||str[i]=='.'||str[i]==','||str[i]==':'||str[i]==')'||str[i]==39) { printf("%c",str[i]); i++; } dat=find('*',str); if (dat!=-1) { if (str[dat+1]=='*') { printf(" WAIT=2)"); } else { printf(" WAIT=1)"); } } else { printf(" WAIT=0)"); } } printf("\n"); //getchar(); }
if(str[0]=='L' && (isdigit(str[1])||str[1]=='$'||str[1]=='%'||str[1]==96||str[1]=='!') && isdigit(str[2])) { printf("Label %c%c",str[1],str[2]); if /*(find('I',str)!=-1)*/ (str[4]=='I') { printf(" IF"); } if(find('M',str)!=-1) { dat=find('M',str); if(isdigit(str[(dat+1)])&&isdigit(str[(dat+2)])) { printf(" DATA [%c%c]=1",str[dat+1],str[dat+2]); } } if(find('S',str)!=-1) { dat=find('S',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" POCKET[1--3]=%c%c",str[dat+1],str[dat+2]); } } if(find('B',str)!=-1) { dat=find('B',str); if(isdigit(str[dat+1])&&isdigit(str[dat+2])) { printf(" PLAY %c%c",str[dat+1],str[dat+2]); } } if(find('P',str)!=-1) { odat=find('P',str); if(isdigit(str[odat+1])&&isdigit(str[odat+2])) { printf(" Print(personage=%c%c Length=%c%c", str[odat+1],str[odat+2],str[odat+3],str[odat+4]); dat=find('*',str);
i=odat+5; printf(" "); while(isalnum(str[i])||str[i]==' '||str[i]=='!'||str[i]=='?'||str[i]=='-'||str[i]=='.'||str[i]==','||str[i]==':'||str[i]==')'||str[i]==39) { printf("%c",str[i]); i++; } dat=find('*',str); if (dat!=-1) { if (str[dat+1]=='*') { printf(" WAIT=2)"); } else { printf(" WAIT=1)"); } } else { printf(" WAIT=0)"); } } } if (find('R',str)!=-1) { dat=find('R',str); if(isdigit(str[dat+1])&&isdigit(str[dat+2])) { printf(" PutSprite(Moveable=%c,Solid=%c,#%c%c)",str[dat+1],str[dat+2],str[dat+3],str[dat+4]); }
} if (find('+',str)!=-1) { dat=find('+',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" PutPocket(#%c%c)",str[dat+1],str[dat+2]); } } if (find('-',str)!=-1) { dat=find('-',str); if(isxdigit(str[dat+1])&&isxdigit(str[dat+2])) { printf(" RemovePocket(#%c%c)",str[dat+1],str[dat+2]); } } if (find('G',str)!=-1) { dat=find('G',str); if((isdigit(str[dat+1])||str[dat+1]=='$')&&isdigit(str[dat+2])) { printf(" Goto label %c%c",str[dat+1],str[dat+2]); } } if (find('E',str)!=-1) { dat=find('E',str); if(str[dat+1]=='0') { printf(" Exit 0"); } if(str[dat+1]=='1') { printf(" Exit 1"); } }
printf("\n"); //getchar(); }
} getchar(); if (fclose(fpspeech)==EOF) { printf("\aERROR closing program.ru\n"); return(101); } return 0; }
| | | | |
Солид её тоже не компилит, грит функция майн такая большая что у мну оферфлау, подборка размера буфера ничего не дала
|
09 Oct 2004 13:55 |
|
|
cr0acker
God
Joined: 03 Feb 2003 13:53 Posts: 1078
|
Да, вот файлик програм.инг | | | | Code: I W0011 G01 I W0118 G03 I W000F G05 I W00A1 G08 I W0026 G09 I W001B G11 I W0019 G15 I W004B G20 I W0020 G23 I W0024 G24 I W0110 G31 I W012C G31 I W0130 G31 I W0134 G31 I W0138 G31 I W013C G31 I W0140 G31 I W011C G33 I W0144 G33 I W0014 G37 I W0128 G37 I W00A2 G45 I W003F G47 I W0016 G48 I W005D G51 I W0124 G52 I W00BB G52 I W0018 G53 I W001A G57 I W005F G63 I W005E G64 I W009C G42 I W004D G67 I W0002 G70 I W0003 G71 I W0000 G72 I W006F G75 I W0044 G78 I W004F G82 I W004E G83 I W000B G94 I W000C G96 I W0120 G!7 I W00BA G!7 I W0004 G81 I W003E G$1 I W0040 G$2 I W0058 G$4 I W006A G$6 I W006B G$6 I W006C G$6 I W006D G$6 I W0089 G$8 I W0084 G%0 I W0085 G%0 I W0086 G%0 I W0087 G%0 E0 L$8 I SFF G$9 G39 L$9 R0084 +8A E1 L%0 I S8A R0189 -8A E1 E0 L$6 I S48 G$7 E0 L$7 B03 R0085 P0120I took down the bush completely! E1 L$4 I M03 E0 I S51 -51 E1 I SFF G$5 E0 L$5 +51 E1 L$1 I SFF G$3 G39 L$3 +3D R0140 E1 L$2 I S3D -3D R013E E1
L01 I M00 G02 P0223Old man,do you want some moonshine?* P0305-Aha!* P0223Tell me the recipe of the moonshine* Z00 I S22 G02 P031F-But I found you out,I gave you* P031E blintzes in 1947 so you would* P0310 paint my fence!* P0218The blintzes were awful!* P031A-Hand over the blintzes!!!* B12 P0218Kiss my yellow butt! :-)
E1 L02 I M01 G06 P0319-Hand over my blintzes!!!* I S22 -22 Z01 P0319They are not that I gave! E1 L06 I M07 G26 P031B-OK! Try and get a pension, P031B we'll buy the ingredients. E1
L26 I M06 G27 P031D-Try buy milk for home-brewed* P0309 beer :)* P020EBut the money?* P0319-But you took my pension?* P0218So it is altogether 1.20* P031E-But it's the total equivalent* E1
L27 I M09 G32 P031C-A pair of frogs are needed.* P0218But how will I get them?* P0316-Hit them forehead and* P0310 that is enough! E1
L33 I S1F R113C G34 E1 L34 B03 P0117A clap on the forehead! P0113This one drowned... B04 Z09 E1
L32 I M10 G35 P0217The frogs are drowning!* P0307-Yes???* P020EWord of honor!* P0319-It's not necessary then.* P0214You scum, old man...* P0313-The old one stood,* P0314 I don't remember...* B11 P021AAre you loosing your hair, P0218 or are you just stupid? Z10 E1
L35 I M12 G07 P0318-I was steamed with you,* P0311 the beer would..* I M11 G18 I S2E G40 E1 L40 P0323-How do I drink it?Can you open it?* P0211How do I open it?* P031F-A Russian folk tool - the door E1 L18 I S2E G17 P031D-But where is the beer, liar? P0310Hand it over!... E1 L17 -2E B0E P0318-But....but....why half? Z12 E1
L07 I M13 G68 I S8B G41 P0317-So, where's the money?* P0220You yourself said to buy it all!* P0317-Go and find the money!* P0206Where?* P0318-Look where you lost it! Z30 E1
L41 P0320-But why is my pension so small?* P0220It's evident you didn't earn it!* P0318-Go and get the money!!! Z29 E1
L68 P0223Old man,will we brew the moonshine?* I M15 G69 P0323-But first you start up the still!! E1
L69 I M21 I M22 G92 P0316-Bring the ingredients* P0310 to the still... E1
L92 I SFF G93 G39 L93 P031B-Somehow I got carried off,* P030E accompany me. +0D R0080 E1
L94 I S0D -0D R010C G95 P0321-Yes, I got tired, bring me in... E1 L95 P0220You got drunk, scum! Carry it...* I M28 G&6 P0310-Turn on the TV,* P0316 I'll spill it faster. L&6 Z23 E1
L96 P0213Old man, what else?* B08 P0314-Mooooooooooooo..... P0223Don't oversleep, hairy devil.... :) E1
L47 -25 P0123New trousers,without chewing gum :) R0086 E1
L51 I SFF +48 Z14 R015E E1 G39
L64 I S47 G65 E0 L65 -47 R015D B0F P011CYou hid the evidence!....:-) E1
L48 I S1F G88 P0222No, just so as not to repair it... E1
L88 I SFF G49 G39 L49 B03 R012A B0A P0122The toilet is broken. Take a seat.* +2B P0122It whets an appetite completely... E1
L52 Z15 I M18 G61 P0117Moonshine device of the* P0112 Skorpion Company* P0212It doesn't work!!! E1
L61 I M21 G90 I M17 G'1 P021EI don't know how to repair it!* P0216It's under warranty!!! E1 L'1 I S42 R1124 -42 Z21 G62 E0
L90 I S65 G91 E0
L91 -65 P0120Put the berry into the still! :) B0F Z22 E1
L62 B07 P020CIt worked!!! E1 L53 I M15 G54 E0 L54 I M18 G60 I M16 G56 P021CA letter needs to be written* P0209 to Zonov* I S4A G55 P021FWhere's the disk with the Spot? E1 L55 -4A P021BWe're loading the Spot.***** P020DWe're writing* P0220FROM:Homer Simpson 2:5026/16.29** P021FTO :Sergey Xonov 2:6030/25.1** P021ESubj:How to repair your still** P0220-------------------------------** P021A Greetings, Sergey!** P0222 I found your still in a grass, ** P0221but I do not know how to fix it.** P0214 Help me!!!** P021A Respectfully,Homer** Z16 E1 L56 I M18 G60 I M17 E1 P0219Aha, here is the answer!** P011FFROM:Sergey Xonov 2:6030/25.1** P0120TO :Homer Simpson 2:5026/16.29** P0121Subj:Re:How to repair your still** P0114 Hello, Homer!** P011DClean the nozzle of the bulb** P010D with a wire** P011C Without respect, Sergey** Z17 E1 L63 P021DAre you making shit in there,* P0209 perhaps? E1 L57 I S48 G58 P0218Nothing to cut it off!!! E1 L58 I SFF G59 G39 L59 P0217We're cutting the wire. +42 Z18 R011A E1 L60 P010CNO DiAL TONe* P041AYou cut the telephone line* P0413Can't send a letter* E1 L45 I M11 E1 I S2E B05 B10 G46 E1 L46 P0110It was opened... Z11 E1 L37 P0121Vovochka brought down the bridge. I S1F I S29 G36 P011EAn instrument is needed, it is* P0116 not in a nose to pick* P010F with a pencil. E1 L36 B03 B03 B03 R0015 B07 P011AYou didn't study in school* P0109 in vain! E1 L!5 I S3C G!6 E1 L!6 I M28 G'0 P0116But you did everything* P010E in this life? E1 L'0 P0114I brought a bomb and* P0114 hid it in a cooker. -3C B0D P0104...9* B0D P0104...8* B0D P0104...7* B0D P0104...6* B0D P0104...5* B0D P0104...4* B0D P0104...3* B0D P0104...2* B0D P0104...1* B0D P0104...0* B0D P010CBOOOOOOM!!!! Z27 B16 P0708CREDITS:* P0711ZX Spectrum crew:* P070CProgramming:* P0714Mr. GLuk, Scheme-Man* P0704Vlad* P0709Graphics:* P0714Scheme-Man, Mr. Gluk* P0719Support & Sound sampling:* P0708Q-Master* P070CBetatesting:* P0713Alexey Pilyaev, Leo* P0701 * P070BAmiga crew:* P070CProgramming:* P0708Q-Master* P0709Graphics:* P0711Nicolaus Mezencef* P070CGrunge/Smash* P0706Muzak:* P070BFil Jr./CDS* P070CStranger/CDS* P070EMoral Support:* P0704Vlad* P0712Most translations:* P070DGary Goldberg* P0718Additional translations:* P0708Q-Master* P070CBetatesting:* P0704Vlad* P0711Nicolaus Mezencef* P0709Notorious* E2
L03 I M26 G!5 I S1D G04 P0113Nothing to heat on! E1 L04 -1D R010F P0212We'll heat it now! B10 B10 B10 E1 L05 B00 P020CShit! Hot!!!* P0215The blintzes got hot,* P0211 but it'll be OK. I SFF R1118 +22 E1 P0123There's nowhere to put the blintzes E1 L08 I SB8 -B8 B02 R00A2 P0117The door is open... :-) E1 L09 I M02 E1 I S1F G66 P0117The cupboard is locked,* P011B there's no way to open it. E1 L66 I SFF B03 R0158 Z02 G10 L39 P001AThere's nowhere to put it! E1 L10 B05 P011BHmmmm, opened it, eh-h-h...* +51 P021BOho, a pension certificate! E1 L50 I M29 G%2 P0423You can't cut me with a dull knife! E1 L%2 P021BHurry with the money, fool!* P0420-Right now I'll call the police!* P0212I said, you don't!* P0418-I'm dialling the number* P0214Crap, you dial it!!!* P010D-She's cut!!! R015A B15 P020F-Shut up, scum! B01 -48 +47 Z13 E1
L80 P041B-Nuts, throw out this shit!* P020BNever mind!* B09 P0421-Pull it out, it's post office...* P0214It's better I eat it* I S99 G$0 -45 Z20 E1
L81 I S45 -45 R0144 E1
L$0 P0221Not THIS to gorge the appetite... E1
L11 I S48 G50 I M03 G12 G13
L12 P0418-What do you need again? E1
L13 P040D-Who are you?* P020CA pensioner.* P040F-What's needed?* P020AA pension.* P0414-Present a document!* I S51 G!9 E1 L!9 P020DHere you are!* I M20 G14 P041C-This isn't your photograph!* P0216Will you take a bribe?* P0412-What do you have?* P020FI can give food* P040C-Go ahead...* I S45 G80 E1
L14 -51 R0119 P0423-Wait,I'm checking on the computer. Z03 E1
L15 I SFF G16 G39
L16 R011B +8B P0415-Take it and sign it. Z07 E1
L!0 I M25 G!1 P020DHey, brother!* R014C P050B-You again!* P0221There's no one to celebrate with.* P0513-But why celebrate?* P021DWe're blowing up something...* P0515-Then bring a bomb... Z25 R014B E1
L!1 I M26 E1 I S30 G!2 P0211-To blow up what? E1 L!2 I S3D G!3 P0517-Carry the detonator... E1 L!3 I S29 G!4 P051A-But with what to collect? P051E Give me the spanner back, eh? E1 L!4 P0513We're assembling... B03 B03 -30 -3D -29 +3C P0218Where can we explode it?* P0521-Hide it for now in a cooker...:) Z26 E1
L19 I M24 G!0 P0519-Roll over, turkey, liar! E1 L20 I M04 G19 P020FEh! Who's here?* R014C P050B-Let's eat.* P0215But what in exchange? P0516-I can give a spanner,* P051B I can give with a spanner.* P0213A spanner's better.* I S0E -0E +29 G22 P051B-You have nothing, skunk... R014B E1 L22 P0510-Learn, student! Z04 R014B E1
L23 I M05 G25 P0211Give me the milk.* P0619-Buuuddy, awpen a flaask,* P060F therl be milk.* P0213But how to open it?* P0618-Lissen, ah need it, uh?* E1 L24 I S29 B02 B07 R0123 Z05 E1 E1 L25 I M06 G28 P0614Boyyy, gimme a cann. I S07 I S8B -07 -8B +08 Z06 G38 P0612Sooo, it won wurk. E1 L38 P060ETeyk yer milk. E1 L28 I M08 G97 I M30 G%1 E0 L%1 P0217The milk has gone sour, P0216 hurry with the money!* P0616-Yesserday was bedder.* P0214I'll wrap your hands* P0212 behind your back!* I SFF G29 P001B-There's nowhere to put it. E1
L97 I M23 G98 P0621Get out of here, american [skip]. E1 L98 I M24 E1 P021CHelp me, but that old man...* I S8B G99 P0513-Welcher, up yours!* P021DAre you feel hurt, don't you?* P051C-The Black Raven is croaking* P050B as a gift! E1
L99 P0522-Well for money,you are welcome...* P0516-But what do you need?* P021BThe recipe for moonshine...* P051F-You've already distilled it...* P0214Yes??? Ohhhhhuuu!!!! B0C Z24 P0517-Hand over the money...* -8B P0219This business needs to be* P020E celebrated...* P051AWe'll blow up something... E1
L29 I S08 G30 P0610-Gimme mah milk. E1 L30 -08 +8B P0209-Take it! Z08 E1 L31 B0F P0012You sank, however! EF
L42 I S1F G43 E1 L43 R014F B0A E1
L67 B06 P020B-Ahhhhaa!!!* P0118There's something there, P0116 but no way to get it. E1
L70 I SFF R0103 +0E E1 E1 L71 I S0E R0102 -0E E1 E1
L72 I M19 G74 I SFF G73 E1 L73 P0213Oh, I found beer... B0B +2E Z19 E1 L74 P021EMy conscience doesn't allow me P0217 to take any more beer. E1
L75 I S59 G76 I S48 G77 P0217I need something sharp,* P0212 then I'll cut it. E1 L77 P011FBut a dull knife, as you... :-) E1 L76 I SFF G86 G39 L86 I S2B G84 P0120I was hungry, I ate the berry...* G87 L84 P0111Lost my appetite,* P0116 didn't eat the berry.* +65 L87 R002C P011DUnder the bush a hatch opened* P011A Mr. Gluk made up a verse. E1
L78 I SFF G79 G39 L79 B13 P021E64 slices of American Cheeese. +45 R0104 E1
L82 I SFF +59 R014E E1 E1
L83 I S59 G85 E1 L85 -59 R014F E1
L!7 I M28 G%3 P0211Oh, the TV set...* P0217 it isn't working...;~(* P0217It needs to be fixed... I S1F R1120 B07 Z28 P020DI fixed it!!! E1
L%3 P0708CREDITS:* P0711ZX Spectrum crew:* P070CProgramming:* P0714Mr. GLuk, Scheme-Man* P0704Vlad* P0709Graphics:* P0714Scheme-Man, Mr. Gluk* P0719Support & Sound sampling:* P0708Q-Master* P070CBetatesting:* P0713Alexey Pilyaev, Leo* P0701 * P070BAmiga crew:* P070CProgramming:* P0708Q-Master* P0709Graphics:* P0711Nicolaus Mezencef* P070CGrunge/Smash* P0706Muzak:* P070BFil Jr./CDS* P070CStranger/CDS* P070EMoral Support:* P0704Vlad* P0712Most translations:* P070DGary Goldberg* P0718Additional translations:* P0708Q-Master* P070CBetatesting:* P0704Vlad* P0711Nicolaus Mezencef* P0709Notorious* E1
TAKE 26 27 21 6A 69 21 6D 6B 21 6F 70 21 7F 7E 21 96 97 21 6E 6C 21 9B 9C 21 AA AC 21 AD AE 21 A5 A6 21 B7 99 21 9D 9E 21 9F A0 21 #
| | | | |
|
09 Oct 2004 13:58 |
|
|
cr0acker
God
Joined: 03 Feb 2003 13:53 Posts: 1078
|
Поэтому впринципе солид низя юзать для больших програм:)
|
09 Oct 2004 14:00 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22543 Location: Silicon Valley
|
|
09 Oct 2004 14:38 |
|
|
cr0acker
God
Joined: 03 Feb 2003 13:53 Posts: 1078
|
Пока времени нема:)
|
10 Oct 2004 09:16 |
|
|
Vasil Ivanov
Doomed
Joined: 11 Dec 2003 14:34 Posts: 413
|
Солид не адаптировался на юзание всей памяти Спринтера, он был просто перенесен под его ДОС (с CP/M). Программы можно делать какие угодно, но линкер соберет максимум 64 кило. P.S. Откуда у тебя эти сорцы, с PC-шки что-ли ?. P.S.S. Когда я засел за портацию Солида, то расчитывал, что его будут юзать для компиляции отдельных алгоритмов, которые трудно писать на асме, и далее эти куски прилинковывать к асмовой программе. А прикручивать к Солиду менеджмент памяти Спринтера - нет его оригинальных сорцев. А в асмовом коде многое не понятно - константа это или токен, к примеру. Так что вот такие дела.
_________________Vasil Ivanov vasil-i@yandex.ru
Last edited by Vasil Ivanov on 10 Oct 2004 13:57, edited 1 time in total.
|
10 Oct 2004 13:29 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22543 Location: Silicon Valley
|
Может потихоньку возмемся за написание собственного NedoC, который будет приспосабливаться к менеджменту памяти конкретной машинки?
|
10 Oct 2004 15:48 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22543 Location: Silicon Valley
|
Идея как использовать SolidC для больших программ - разделять на модули и делать из них DLL-ки! Правда в этом случае желаетельна поддержка DLL-ек на уровне самого Си - т.е. чтобы можно было записать в программе: DLL_Load("part1.dll"); и вперед
|
10 Oct 2004 15:53 |
|
|
cr0acker
God
Joined: 03 Feb 2003 13:53 Posts: 1078
|
Эти сорцы я сам писал Работали на ПЦ.
|
10 Oct 2004 22:41 |
|
|
Vasil Ivanov
Doomed
Joined: 11 Dec 2003 14:34 Posts: 413
|
Понял. Разбей большие функции на менее большие и вперед...
_________________Vasil Ivanov vasil-i@yandex.ru
|
13 Oct 2004 13:25 |
|
|
Vasil Ivanov
Doomed
Joined: 11 Dec 2003 14:34 Posts: 413
|
Для этого надо только написать соотв. функцию, типа system(...) и засунуть ее в сишную библу clib.irl.
_________________Vasil Ivanov vasil-i@yandex.ru
|
13 Oct 2004 13:34 |
|
|
Vasil Ivanov
Doomed
Joined: 11 Dec 2003 14:34 Posts: 413
|
Ой, не знаю мужики. Компиляторная тематика мне сейчас порядком поднадоела. Надо отдохнуть от нее. Кроме того, тут не знаешь, чем в первую очередь и заняться, то-ли файл-менеджер доделать, то ли ДОС-овые сорцы делать, для последующего девелопинга, то ли еще чего... Кста, переделал тут RAMDRIVE, теперь будет называться VDISK. Размер создаваемого рам-диска будет указываться в опциях программы. Размер отдельного рам-диска ограничен только свободной памятью компа. Максимальное число записей (файлов) в корневой папке - 512шт. Осталось причесать программу и можно выпускать в свет . По поводу приспосабливания к менеджменту памяти любой машины - берем любой Си-компилятор и в его (библиотечный) startup-код прописываем соотв. загрузчик программ и усе . Этот загрузчик и будет раскидывать проги по банкам. Вообще, тут компилятор ни при чем, просто в его библиотеке нужны функции, ведающие менеджментом памяти каждой конкретной машины. Они и будут юзаться в самих программах. Так что, нам не придется писать свой си-компилятор, как ни уговаривай ). P.S. Мне ближе NedoASM++, чем NedoС
_________________Vasil Ivanov vasil-i@yandex.ru
|
13 Oct 2004 13:46 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22543 Location: Silicon Valley
|
| | | | Vasil Ivanov wrote: Ой, не знаю мужики. Компиляторная тематика мне сейчас порядком поднадоела. Надо отдохнуть от нее. Кроме того, тут не знаешь, чем в первую очередь и заняться, то-ли файл-менеджер доделать, то ли ДОС-овые сорцы делать, для последующего девелопинга, то ли еще чего... Кста, переделал тут RAMDRIVE, теперь будет называться VDISK. Размер создаваемого рам-диска будет указываться в опциях программы. Размер отдельного рам-диска ограничен только свободной памятью компа. Максимальное число записей (файлов) в корневой папке - 512шт. Осталось причесать программу и можно выпускать в свет . | | | | |
Это круто! Ну дело не только в прогах - а еще и в статических и динамических данных. Вот например будет в программе написано int a = new int[1000000]; и что с этим будет делать стартап-код?
|
13 Oct 2004 16:25 |
|
|
|
Page 1 of 1
|
[ 13 posts ] |
|
Who is online |
Users browsing this forum: No registered users and 19 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|