geekcode-1.7.3.orig/0000755000175000017500000000000010054472646014125 5ustar ericeric00000000000000geekcode-1.7.3.orig/CHANGES0000644000175000017500000000571707700046131015120 0ustar ericeric00000000000000Jun 15 1999 - Started working on this Geek Code Generator project Jun 16 1999 - Managed to get the selection screens finished, all that is left to do now is something to convert each numeric variable to a string that will be displayed in the final Geek Code. Aug 04 1999 (version 1.0) - Finally got around to finishing this project. No DOS binary for now, as I am only running Linux on my system (yay!). Aug 05 1999 - Cleaned up the code a little bit, currently considering how I should go about adding the missing features. Aug 29 1999 (version 1.1) - Added Unix Type section (page 7a) - Fixed a few typos Aug 30 1999 (version 1.2) - Diff from Fuzzy Logic to fix some typos and screen postitioning. - Added a #define for the version number (gee, why didn't I do that in the first place). - Added sex type question, and related changes. - Various other minor changes. Aug 31 1999 (version 1.3) - Fixed a couple more typos - Added little bit of code for each selection screen so that when a non-number is typed, the program doesn't start to loop endlessly. The compiler generates a warning about using gets(), so is this actually a problem, or is there a better way to do it? (Thanks to the few people that told me about these bugs). - Stuff from Kalle Berg : - Added geekcode.h to store the declarations and such - Added Win32-specific screen clearing routine (checked at compile time) Sep 13 1999 (version 1.4) - Changed the effective screen size to 80x24 (instead of 80x25) - Changed gets() to use fgets() - thanks Telsa Sep 20 1999 (version 1.5) - Some minor typo corrections and changes from Fuzzy Logic - Added a Quit function (press 0 on any selection screen) Nov 23 1999 - Added geekcode.spec for compiling on RedHat systems, from Chris Ausbrooks Feb 15 2000 (version 1.6) - Added a dynamic page numbering thing, from Ingo Hoffmann Feb 16 2000 - Changed the Makefile to actually -use- the CC variable. Feb 21 2000 (version 1.7) - I know I wasn't going to put out another version until Geek Code v4.0 was released, but Ingo Hoffmann sent me a patch to write your Geek Code to geekcode.sig as well as display it on the screen. - My email has also changed to seymour@lazygenes.net - The URL for this program is now http://seymour.lazygenes.net/geekcode.html Jun 25 2003 (version 1.7.2) - The URL for this project has long since changed to http://geekcode.sf.net and my email has also been changed to chris@blackplasma.net - The main change in this version is the inclusion of a Geek Code translator, which is supposed to tell you what your Geek Code means. Patch supplied by Nikolas Garofil - Changed references of Linux to GNU/Linux, as suggested in a Debian bug. Jun 30 2003 (version 1.7.3) - Actually made the GNU/Linux changes - Tiny bugfix from Xavier Santolaria geekcode-1.7.3.orig/COPYING0000644000175000017500000004365707054335527015201 0ustar ericeric00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. geekcode-1.7.3.orig/INSTALL0000644000175000017500000000335207700046614015155 0ustar ericeric00000000000000Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue ----------------------------------------------------------------------- This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ----------------------------------------------------------------------- Installing should be rather simple, just type 'make' in the source directory. This should also work on DOS with DJGPP v2. If not, just type 'gcc -O3 -s -o geekcode.exe *.c' ----------------------------------------------------------------------- The Geek Code is copyright (C) 1993, 1994, 1995, 1996 by Robert A. Hayden. All rights reserved. You are free to distribute this code in electronic format provided that the file remains unmodified and this copyright notice remains attached. This copyright prohibits HTMLizing the code for publication on the web. If you wish to publish abstracts or portions of the code, contact the author for permission. If you wish to write an article about the Geek Code, please contact the author. All creatures not native to Earth are exempt from this copyright, however, they must prove that they qualify. geekcode-1.7.3.orig/Makefile0000644000175000017500000000204507676272717015603 0ustar ericeric00000000000000CFLAGS=-O3 -s TARGET=geekcode CC=gcc SRCFILES = gc_appearance.c \ gc_computers.c \ gc_entertainment.c \ gc_lifestyle.c \ gc_politics.c \ gc_type.c \ gc_consoleio.c \ gc_translate.c \ geekcode.c LIBFILES = gc_appearance.o \ gc_computers.o \ gc_entertainment.o \ gc_lifestyle.o \ gc_politics.o \ gc_type.o \ gc_consoleio.o \ gc_translate.o \ geekcode.o all: ${TARGET} clean: rm -f ${TARGET} ${LIBFILES} geekcode: ${CC} ${CFLAGS} -c gc_appearance.c ${CC} ${CFLAGS} -c gc_computers.c ${CC} ${CFLAGS} -c gc_entertainment.c ${CC} ${CFLAGS} -c gc_lifestyle.c ${CC} ${CFLAGS} -c gc_politics.c ${CC} ${CFLAGS} -c gc_type.c ${CC} ${CFLAGS} -c gc_consoleio.c ${CC} ${CFLAGS} -c gc_translate.c ${CC} ${CFLAGS} -c geekcode.c ${CC} ${CFLAGS} -o ${TARGET} ${LIBFILES} install: install -m 755 geekcode /usr/local/bin geekcode-1.7.3.orig/README0000644000175000017500000001004207700046614014776 0ustar ericeric00000000000000Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue ----------------------------------------------------------------------- This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ----------------------------------------------------------------------- This program will generate a geek code block for you by simply choosing which codes suit you from the screen. I am not a very good programmer, I just dabble a little every now and then. Originally, I started this project in Visual Basic, but decided to use DJGPP v2 instead, partially because it is free, partially because it is more portable and partially because Visual Basic sucks :) Since then, I have totally switched my system to Linux. Currently, my system is Slackware 4.0 (partially) converted to glibc 2.1.1, but I will be installing Debian 2.1 very soon. To use this program, you just run the resulting binary and follow the directions. Everything SHOULD work, but I haven't tested it all that much. If you have any bugs, patches, typos, comments, flames, money, postcards, or any other free stuff - feel free to email me at chris@blackplasma.net - also, please let me know if you modify this source, so I can try it myself. ----------------------------------------------------------------------- Linux notes: This program was developed using gcc 2.95.1, glibc 2.1.2, and various other GNU tools, on Debian GNU/Linux (potato), with the 2.2.12 kernel. To install on Linux (and most likely other UNIX variants): make ----------------------------------------------------------------------- DOS notes: DJGPP v2 is available at http://www.delorie.com/djgpp/ including CWSDPMI, which is also released under the GPL. This executable is required if your OS doesn't provide DPMI services (Windows 9x does). You have the right to receive the source for CWSDPMI, as well as any binary updates. These things should also be available at the site listed above for DJGPP. To compile on DOS with DJGPP v2, try this: gcc -O3 -s -o geekcode.exe *.c Also, if you have the DJGPP make package instaled, you can probably just type make, and ignore any errors you might get (at least, I could do that in my limited testing on my other system). ----------------------------------------------------------------------- Relevant references: -------------------- http://www.geekcode.com - Geek Code website http://www.gnu.org - GNU Project and FSF (Free Software Foundation) http://www.delorie.com - Home of the DJGPP compiler http://www.debian.org - Debian GNU/Linux (the distribution I use) http://www.slashdot.org - Geek site extraordinaire http://www.freshmeat.net - Ultimate Linux software database http://www.mutt.org - The best email client http://www.vim.org - A nice editor, I recently started using it ----------------------------------------------------------------------- The Geek Code is copyright (C) 1993, 1994, 1995, 1996 by Robert A. Hayden. All rights reserved. You are free to distribute this code in electronic format provided that the file remains unmodified and this copyright notice remains attached. This copyright prohibits HTMLizing the code for publication on the web. If you wish to publish abstracts or portions of the code, contact the author for permission. If you wish to write an article about the Geek Code, please contact the author. All creatures not native to Earth are exempt from this copyright, however, they must prove that they qualify. geekcode-1.7.3.orig/gc_appearance.c0000644000175000017500000001412207700046614017035 0ustar ericeric00000000000000/* gc_appearance.c - Functions for the Appearance section Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include "geekcode.h" int get_dress(void) { int selection = 99; do { clearscreen(); printf("Dress Page %i of %i\n", PAGES-(PAGES-2), PAGES); printf("===============================================================================\n"); printf(" 1 d++ I tend to wear conservative dress such as a business suit or\n"); printf(" worse, a tie.\n"); printf(" 2 d+ Good leisure-wear. Slacks, button-shirt, etc. No jeans, tennis\n"); printf(" shoes, or t-shirts.\n"); printf(" 3 d I dress a lot like those found in catalog ads. Bland, boring,\n"); printf(" without life or meaning.\n"); printf(" 4 d- I'm usually in jeans and a t-shirt.\n"); printf(" 5 d-- My t-shirts go a step further and have a trendy political\n"); printf(" message on them.\n"); printf(" 6 d--- Punk dresser, including, but not limited to, torn jeans and\n"); printf(" shirts, body piercings, and prominent tattoos.\n"); printf(" 7 dx Cross dresser.\n"); printf(" 8 d? I have no idea what I am wearing now, let alone what I wore yesterday.\n"); printf(" 9 !d No clothing. Quite a fashion statement, don't you think?\n"); printf("10 dpu I wear the same clothes all the time, no matter the occasion,\n"); printf(" forgetting to do laundry between wearings.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Dress code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 10); if (selection == 0) exit(1); else return selection; } int get_height(void) { int selection = 99; do { clearscreen(); printf("Shape (height) Page %i of %i\n", PAGES-(PAGES-3), PAGES); printf("===============================================================================\n"); printf("1 s+++ I usually have to duck through doors.\n"); printf("2 s++ I'm a basketball candidate.\n"); printf("3 s+ I'm a little taller than most.\n"); printf("4 s I'm an average geek.\n"); printf("5 s- I look up to most people.\n"); printf("6 s-- I look up to damn near everybody.\n"); printf("7 s--- I take a phone book with me when I go out so I can eat dinner.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Shape (height) code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 7); if (selection == 0) exit(1); else return selection; } int get_weight(void) { int selection = 99; do { clearscreen(); printf("Shape (weight) Page %i of %i\n", PAGES-(PAGES-4), PAGES); printf("===============================================================================\n"); printf("1 s+++ I take up three movie seats.\n"); printf("2 s++ I'm a linebacker candidate.\n"); printf("3 s+ I'm a little rounder than most.\n"); printf("4 s I'm an average geek.\n"); printf("5 s- Everybody tells me to gain a few pounds.\n"); printf("6 s-- I tend to have to fight against a strong breeze.\n"); printf("7 s--- My bones are poking through my skin.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Shape (weight) code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 7); if (selection == 0) exit(1); else return selection; } int get_age(void) { int selection = 99; do { clearscreen(); printf("Age Page %i of %i\n", PAGES-(PAGES-5), PAGES); printf("===============================================================================\n"); printf(" 1 a+++ 60 and up\n"); printf(" 2 a++ 50-59\n"); printf(" 3 a+ 40-49\n"); printf(" 4 a 30-39\n"); printf(" 5 a- 25-29\n"); printf(" 6 a-- 20-24\n"); printf(" 7 a--- 15-19\n"); printf(" 8 a---- 10-14\n"); printf(" 9 a----- 9 and under (Geek in training?)\n"); printf("10 a? Immortal\n"); printf("11 !a It's none of your business how old I am\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Age code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 11); if (selection == 0) exit(1); else return selection; } geekcode-1.7.3.orig/gc_computers.c0000644000175000017500000006130507700046614016764 0ustar ericeric00000000000000/* gc_computers.c - Functions for the Computers section Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include "geekcode.h" int get_computers(void) { int selection = 99; do { clearscreen(); printf("Computers Page %i of %i\n", PAGES-(PAGES-6), PAGES); printf("===============================================================================\n"); printf("1 C++++ I'll be the first in line to get the new cybernetic interface installed\n"); printf(" into my skull.\n"); printf("2 C+++ You mean there is life outside of Internet? You're shittin' me!\n"); printf(" I haven't dragged myself to class in weeks.\n"); printf("3 C++ Computers are a large part of my existence. When I get up in the\n"); printf(" morning the first thing I do is log myself in. I play games or mud on\n"); printf(" weekends, but still manage to stay off academic probation.\n"); printf("4 C+ Computers are fun and I enjoy using them. I play a mean game of Doom\n"); printf(" and can use a word processor without resorting to the manual too often.\n"); printf(" I know that a 3.5\" disk is not a hard disk. I also know that when it\n"); printf(" says 'press any key to continue', I don't have to look for a key\n"); printf(" labeled ANY\n"); printf("5 C Computers are a tool, nothing more. I use it when it serves my purpose.\n"); printf("6 C- Anything more complicated than my calculator and I'm screwed.\n"); printf("7 C-- Where's the ON switch?\n"); printf("8 C--- If you even mention computers, I will rip your head off!\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Computers code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 8); if (selection == 0) exit(1); else return selection; } int get_unix_type(void) { int selection = 99; do { clearscreen(); printf("UNIX Type Page %ia of %i\n", PAGES-(PAGES-7), PAGES); printf("===============================================================================\n"); printf(" 1 B - BSD (use unless your BSDish system is mentioned below)\n"); printf(" 2 L - GNU/Linux\n"); printf(" 3 U - Ultrix\n"); printf(" 4 A - AIX\n"); printf(" 5 V - SysV\n"); printf(" 6 H - HPUX\n"); printf(" 7 I - IRIX\n"); printf(" 8 O - OSF/1 (aka Digital Unix)\n"); printf(" 9 S - Sun OS/Solaris\n"); printf("10 C - SCO Unix\n"); printf("11 X - NeXT\n"); printf("12 * - Some other one not listed\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your UNIX Type code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 12); if (selection == 0) exit(1); else return selection; } int get_unix(int x) { /* Auto UNIX Type display added in v1.2 */ int selection = 99; char *unix_type; switch (x) { case 1: unix_type="B"; break; case 2: unix_type="L"; break; case 3: unix_type="U"; break; case 4: unix_type="A"; break; case 5: unix_type="V"; break; case 6: unix_type="H"; break; case 7: unix_type="I"; break; case 8: unix_type="O"; break; case 9: unix_type="S"; break; case 10: unix_type="C"; break; case 11: unix_type="X"; break; case 12: unix_type="*"; break; default: unix_type=""; break; } do { clearscreen(); printf("UNIX Page %ib of %i\n", PAGES-(PAGES-7), PAGES); printf("===============================================================================\n"); printf("1 U%s++++ I am the sysadmin. If you try and crack my machine don't be surprised\n", unix_type); printf(" if the municipal works department gets an \"accidental\" computer\n"); printf(" generated order to start a new landfill on your front lawn or your\n"); printf(" quota is reduced to 4Kb.\n"); printf("2 U%s+++ I don't need to crack /etc/passwd because I just modified su so that\n", unix_type); printf(" it doesn't prompt me. The admin staff doesn't even know I'm here. If\n"); printf(" you don't understand what I just said, this category does NOT apply\n"); printf(" to you!\n"); printf("3 U%s++ I've got the entire admin ticked at me because I am always using all\n", unix_type); printf(" of the CPU time and trying to run programs that I don't have access\n"); printf(" to. I'm going to try cracking /etc/passwd next week, just don't tell\n"); printf(" anyone.\n"); printf("4 U%s+ I not only have a Unix account, but slam VMS any chance I get.\n", unix_type); printf("5 U%s I have a Unix account to do my stuff in.\n", unix_type); printf("6 U%s- I have a VMS account.\n", unix_type); printf("7 U%s-- I've seen Unix and didn't like it. DEC rules!\n", unix_type); printf("8 U%s--- Unix geeks are actually nerds in disguise.\n", unix_type); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your UNIX code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 8); if (selection == 0) exit(1); else return selection; } int get_perl(void) { int selection = 99; do { clearscreen(); printf("Perl Page %i of %i\n", PAGES-(PAGES-8), PAGES); printf("===============================================================================\n"); printf(" 1 P+++++ I am Larry Wall, Tom Christiansen, or Randal Schwartz.\n"); printf(" 2 P++++ I don't write Perl, I speak it. Perl has superseded all other\n"); printf(" programming languages. I firmly believe that all programs can be\n"); printf(" reduced to a Perl one-liner. I use Perl to achieve U+++ status.\n"); printf(" 3 P+++ Perl is a very powerful programming tool. Not only do I no longer\n"); printf(" write shell scripts, I also no longer use awk or sed. I use Perl for\n"); printf(" all programs of less than a thousand lines.\n"); printf(" 4 P++ Perl is a powerful programming tool. I don't write shell scripts\n"); printf(" anymore because I write them in Perl.\n"); printf(" 5 P+ I know of Perl. I like Perl. I just haven't learned much Perl, but it\n"); printf(" is on my agenda.\n"); printf(" 6 P I know Perl exists, but that's all.\n"); printf(" 7 P- What's Perl got that awk and sed don't have?\n"); printf(" 8 P-- Perl users are sick, twisted programmers who are just showing off.\n"); printf(" 9 P--- Perl combines the power of sh, the clarity of sed, and the\n"); printf(" performance of awk, with the simplicity of C. It should be banned.\n"); printf("10 P! Our paranoid admin won't let us install Perl!\n"); printf(" Says it's a 'hacking tool'.\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Perl code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 10); if (selection == 0) exit(1); else return selection; } int get_linux(void) { int selection = 99; do { clearscreen(); printf("GNU/Linux Page %i of %i\n", PAGES-(PAGES-9), PAGES); printf("===============================================================================\n"); printf("1 L+++++ I am Linus, grovel before me.\n"); printf("2 L++++ I am a Linux wizard. I munch C code for breakfast and have enough room\n"); printf(" left over for kernel debugging. I have so many patches installed that\n"); printf(" I lost track about ten versions ago. Linux newbies consider me a god\n"); printf("3 L+++ I use Linux exclusively on my system. I monitor comp.os.linux.* and\n"); printf(" even answer questions sometimes.\n"); printf("4 L++ I use Linux ALMOST exclusively on my system. I've given up trying to\n"); printf(" achieve Linux god status, but welcome the OS as a replacement for DOS\n"); printf(" I only boot to DOS to play games.\n"); printf("5 L+ I've managed to get Linux installed and even used it a few times. It\n"); printf(" seems like it is just another OS.\n"); printf("6 L I know what Linux is, but that's about all.\n"); printf("7 L- I have no desire to use Linux and frankly don't give a rat's patootie\n"); printf(" about it. There are other, better, operating systems out there. Like\n"); printf(" Mac, DOS, or Amiga-OS. Or, better yet even, would be another free Unix\n"); printf(" OS like FreeBSD.\n"); printf("8 L-- Unix sucks. Because Linux = Unix, Linux sucks. I worship Bill Gates.\n"); printf("9 L--- I am Bill Gates.\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your GNU/Linux code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 9); if (selection == 0) exit(1); else return selection; } int get_emacs(void) { int selection = 99; do { clearscreen(); printf("Emacs Page %i of %i\n", PAGES-(PAGES-10), PAGES); printf("===============================================================================\n"); printf("1 E+++ Emacs is my login shell! M-x doctor is my psychologist! I use Emacs to\n"); printf(" control my TV and toaster oven! All you vi people don't know what you\n"); printf(" are missing! I read alt.religion.emacs, alt.sex.emacs and comp.os.emacs\n"); printf("2 E++ I know and use elisp regularly!\n"); printf("3 E+ Emacs is great! I read my mail and news with it!\n"); printf("4 E Yeah, I know what Emacs is, and use it as my regular editor.\n"); printf("5 E- Emacs is too big and bloated for my tastes.\n"); printf("6 E-- Emacs is just a fancy word processor.\n"); printf("7 E--- Emacs sucks! vi forever!\n"); printf("8 E---- Emacs sucks! pico forever!\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Emacs code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 8); if (selection == 0) exit(1); else return selection; } int get_www(void) { int selection = 99; do { clearscreen(); printf("World Wide Web Page %i of %i\n", PAGES-(PAGES-11), PAGES); printf("===============================================================================\n"); printf("1 W+++ I am a WebMaster. Don't even think about trying to view my page without\n"); printf(" the latest version of Netscape. When I'm not on my normal net connection\n"); printf(" I surf the web using my Newton and a cellular modem.\n"); printf("2 W++ I have a homepage. I surf daily. My homepage is advertised in my .sig\n"); printf("3 W+ I have the latest version of Netscape, and wander the web only when\n"); printf(" there is something specific I'm looking for.\n"); printf("4 W I have a browser and a connection. Occasionally I'll use them.\n"); printf("5 W- The web is really a pain. Life was so much easier when you could\n"); printf(" transfer information by simple ASCII. Now everyone won't even consider\n"); printf(" your ideas unless you spiff them up with bandwidth-consuming pictures\n"); printf(" and pointless information links.\n"); printf("6 W-- A pox on the web! It wastes time and bandwidth and just gives the\n"); printf(" uneducated morons a reason to clutter the Internet.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your World Wide Web code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 6); if (selection == 0) exit(1); else return selection; } int get_usenet(void) { int selection = 99; do { clearscreen(); printf("USENET News Page %i of %i\n", PAGES-(PAGES-12), PAGES); printf("===============================================================================\n"); printf(" 1 N++++ I am Tim Pierce.\n"); printf(" 2 N+++ I read so many newsgroups that the next batch of news comes in before\n"); printf(" I finish reading the last batch, and I have to read for about 2 hours\n"); printf(" straight before I'm caught up on the morning's news. Then there's the\n"); printf(" afternoon...\n"); printf(" 3 N++ I read all the news in a select handful of groups.\n"); printf(" 4 N+ I read news recreationally when I have some time to kill.\n"); printf(" 5 N Usenet News? Sure, I read that once.\n"); printf(" 6 N- News is a waste of my time and I avoid it completely.\n"); printf(" 7 N-- News sucks! 'Nuff said.\n"); printf(" 8 N--- I work for Time magazine.\n"); printf(" 9 N---- I am a Scientologist.\n"); printf("10 N* All I do is read news.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your USENET News code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 10); if (selection == 0) exit(1); else return selection; } int get_oracle(void) { int selection = 99; do { clearscreen(); printf("USENET Oracle Page %i of %i\n", PAGES-(PAGES-13), PAGES); printf("===============================================================================\n"); printf("1 o+++++ I am Steve Kinzler.\n"); printf("2 o++++ I am an active Priest.\n"); printf("3 o+++ I was a Priest, but have retired.\n"); printf("4 o++ I have made the Best of Oracularities.\n"); printf("5 o+ I have been incarnated at least once.\n"); printf("6 o I've submitted a question, but it has never been incarnated.\n"); printf("7 o- I sent my question to the wrong group and I got flamed.\n"); printf("8 o-- Who needs answers from a bunch of geeks anyhow?\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your USENET Oracle code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 8); if (selection == 0) exit(1); else return selection; } int get_kibo(void) { int selection = 99; do { clearscreen(); printf("Kibo Page %i of %i\n", PAGES-(PAGES-14), PAGES); printf("===============================================================================\n"); printf(" 1 K++++++ I am Kibo.\n"); printf(" 2 K+++++ I've had sex with Kibo.\n"); printf(" 3 K++++ I've met Kibo.\n"); printf(" 4 K+++ I've gotten mail from Kibo.\n"); printf(" 5 K++ I've read Kibo.\n"); printf(" 6 K+ I like Kibo.\n"); printf(" 7 K I know who Kibo is.\n"); printf(" 8 K- I don't know who Kibo is.\n"); printf(" 9 K-- I dislike Kibo.\n"); printf("10 K--- I am currently hunting Kibo down with the intent of ripping his\n"); printf(" still-beating heart of out his chest and showing it to him as\n"); printf(" he dies.\n"); printf("11 K---- I am Xibo.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Kibo code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 11); if (selection == 0) exit(1); else return selection; } int get_windows(void) { int selection = 99; do { clearscreen(); printf("Microsoft Windows Page %i of %i\n", PAGES-(PAGES-15), PAGES); printf("===============================================================================\n"); printf("1 w+++++ I am Bill Gates.\n"); printf("2 w++++ I have Windows, Windows 95, Windows NT, and Windows MT Advanced Server\n"); printf(" all running on my SMP RISC machine. I haven't seen daylight in months.\n"); printf("3 w+++ I am a MS Windows programming god. I wrote a VxD driver to allow\n"); printf(" MS Windows and DOS to share the use of my waffle iron. P.S. Unix sux.\n"); printf("4 w++ I write MS Windows programs in C and think about using C++ someday.\n"); printf(" I've written at least one DLL.\n"); printf("5 w+ I have installed my own custom sounds, wallpaper, and screen savers so\n"); printf(" my PC walks and talks like a fun house. Oh yeah, I have a hundred\n"); printf(" TrueType(tm) fonts that I've installed but never used. I never lose at\n"); printf(" Minesweeper or Solitaire.\n"); printf("6 w OK, so I use MS Windows, I don't have to like it.\n"); printf("7 w- I'm still trying to install MS Windows and have at least one\n"); printf(" peripheral that never works right.\n"); printf("8 w-- MS Windows is a joke operating system. Hell, it's not even an\n"); printf(" operating system. NT is Not Tough enough for me either. 95 is how many\n"); printf(" times it will crash an hour.\n"); printf("9 w--- Windows has set back the computing industry by at least 10 years. Bill\n"); printf(" Gates should be drawn, quartered, hung, shot, poisoned, disembowelled,\n"); printf(" and then REALLY hurt.\n"); printf("\n"); printf("Enter your Microsoft Windows code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 9); if (selection == 0) exit(1); else return selection; } int get_os2(void) { int selection = 99; do { clearscreen(); printf("OS/2 Page %i of %i\n", PAGES-(PAGES-16), PAGES); printf("===============================================================================\n"); printf("1 O+++ I live, eat and breathe OS/2. All of my hard drives are HPFS.\n"); printf(" I am the Anti-Gates.\n"); printf("2 O++ I use OS/2 for all my computing needs. I use some DOS and Windows\n"); printf(" programs, but run them under OS/2. If the program won't run under Os/2,\n"); printf(" then obviously I don't need it.\n"); printf("3 O+ I keep a DOS partition on my hard drive 'just in case'. I'm afraid to\n"); printf(" try HPFS.\n"); printf("4 O I finally managed to get OS/2 installed but wasn't terribly impressed.\n"); printf("5 O- Tried it, didn't like it.\n"); printf("6 O-- I can't even get the thing to install!\n"); printf("7 O--- Windows RULES! Long live Bill Gates. (See w++++)\n"); printf("8 O---- I am Bill Gates of Borg. Os/2 is irrelevant.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your OS/2 code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 8); if (selection == 0) exit(1); else return selection; } int get_mac(void) { int selection = 99; do { clearscreen(); printf("Macintosh Page %i of %i\n", PAGES-(PAGES-17), PAGES); printf("===============================================================================\n"); printf("1 M++ I am a Mac guru. Anything those DOS putzes and Unix nerds can do, I can\n"); printf(" do better, and if not, I'll write the damn software to do it.\n"); printf("2 M+ A Mac has it's uses and I use it quite often.\n"); printf("3 M I use a Mac, but I'm pretty indifferent about it.\n"); printf("4 M- Macs suck. All real geeks have a character prompt.\n"); printf("5 M-- Macs do more than suck. They make a user stupid by allowing them to use\n"); printf(" the system without knowing what they are doing. Mac weenies have lower\n"); printf(" IQs than the fuzz in my navel.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Macintosh code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 5); if (selection == 0) exit(1); else return selection; } int get_vms(void) { int selection = 99; do { clearscreen(); printf("VMS Page %i of %i\n", PAGES-(PAGES-18), PAGES); printf("===============================================================================\n"); printf("1 V+++ I am a VMS sysadmin. I wield far more power than those Unix admins,\n"); printf(" because Unix can be found on any dweeb's desktop. Power through\n"); printf(" obscurity is my motto.\n"); printf("2 V++ Unix is a passing fad compared to the real power in the universe,\n"); printf(" my VMS system.\n"); printf("3 V+ I tend to like VMS better than Unix.\n"); printf("4 V I've used VMS.\n"); printf("5 V- Unix is much better than VMS for my computing needs.\n"); printf("6 V-- I would rather smash my head repeatedly into a brick wall than suffer\n"); printf(" the agony of working with VMS. It's reminiscent of a dead and decaying\n"); printf(" pile of moose droppings. Unix rules the universe.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your VMS code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 6); if (selection == 0) exit(1); else return selection; } geekcode-1.7.3.orig/gc_consoleio.c0000644000175000017500000000474507700046614016742 0ustar ericeric00000000000000/* gc_consoleio.c - Functions for Console I/O Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef _WIN32 /* Use standard ANSI codes for clearing screen */ #include void clearscreen() { printf("\033[2J"); } #else /* Win32 */ /* Use Win32 ConsoleIO for clearing screen */ #include void clearscreen() { COORD coordScreen = { 0, 0 }; /* here's where we'll home the cursor */ DWORD cCharsWritten; HANDLE hConsole; CONSOLE_SCREEN_BUFFER_INFO csbi; /* to get buffer info */ DWORD dwConSize; /* number of character cells in the current buffer */ /* get a handle to StdOut */ hConsole = GetStdHandle(STD_OUTPUT_HANDLE); /* get the number of character cells in the current buffer */ GetConsoleScreenBufferInfo( hConsole, &csbi ); dwConSize = csbi.dwSize.X * csbi.dwSize.Y; /* fill the entire screen with blanks */ FillConsoleOutputCharacter( hConsole, (TCHAR) ' ', dwConSize, coordScreen, &cCharsWritten ); /* get the current text attribute */ GetConsoleScreenBufferInfo( hConsole, &csbi ); /* now set the buffer's attributes accordingly */ FillConsoleOutputAttribute( hConsole, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten ); /* put the cursor at (0, 0) */ SetConsoleCursorPosition( hConsole, coordScreen ); } #endif /* _WIN32 */ geekcode-1.7.3.orig/gc_entertainment.c0000644000175000017500000004063307700046614017621 0ustar ericeric00000000000000/* gc_entertainment.c - Functions for the Entertainment section Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include "geekcode.h" int get_startrek(void) { int selection = 99; do { clearscreen(); printf("Star Trek Page %i of %i\n", PAGES-(PAGES-23), PAGES); printf("===============================================================================\n"); printf("1 t+++ It's not just a TV show, it's a religion. I know all about warp field\n"); printf(" dynamics and the principles behind the transporter. I have memorized the\n"); printf(" TECH manual. I speak Klingon. I go to cons with Vulcan ears on.\n"); printf(" I have no life.\n"); printf("2 t++ It's the best show around. I have all the episodes and the movies on\n"); printf(" tape and can quote entire scenes verbatim. I've built a few of the model\n"); printf(" kits too. But you'll never catch me at one of those conventions. Those\n"); printf(" people are kooks.\n"); printf("3 t+ It's a damn fine TV show and is one of the only things good on TV now.\n"); printf("4 t It's just another TV show.\n"); printf("5 t- Maybe it is just me, but I have no idea what the big deal with Star Trek\n"); printf(" is. Perhaps I'm missing something but I just think it is bad drama.\n"); printf("6 t-- Star Trek is just another Space Opera. William Shatner isn't an actor,\n"); printf(" he's a poser! And what's with this Jean-Luc Picard? A Frenchman with a\n"); printf(" British accent? Come on. Isn't Voyager just a rehash of Lost in Space?\n"); printf(" Has Sisko even breathed in the last two seasons? Come on. I'd only watch\n"); printf(" this show if my remote control broke.\n"); printf("7 t--- Star Trek SUCKS! It is the worst crap I have ever seen! Hey, all you\n"); printf(" Trekkies out there, GET A LIFE! (William Shatner is a t---)\n"); printf("8 t* I identify with Barclay, the greatest of the Trek Geeks.\n"); printf("\n"); printf("Enter your Star Trek code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 8); if (selection == 0) exit(1); else return selection; } int get_babylon5(void) { int selection = 99; do { clearscreen(); printf("Babylon 5 Page %i of %i\n", PAGES-(PAGES-24), PAGES); printf("===============================================================================\n"); printf("1 5++++ I am J. Michael Straczynski\n"); printf("2 5+++ I am a True Worshipper of the Church of Joe who lives eats breathes and\n"); printf(" thinks Babylon 5, and has Evil thoughts about staling Joe's videotape\n"); printf(" archives just to see episodes earlier. I am planning to break into the\n"); printf(" bank and steal the triple-encoded synopsis of the 5-year arc.\n"); printf("3 5++ Finally a show that shows what a real future would look like. None of\n"); printf(" Picardian \"Let's talk about it and be friends\" crap. And what's this?\n"); printf(" We finally get to see a bathroom! Over on that Enterprise, they've been\n"); printf(" holding it for over seven years!\n"); printf("4 5+ Babylon 5 certainly presents a fresh perspective in the Sci-Fi\n"); printf(" universe. I watch it weekly.\n"); printf("5 5 I've seen it, I am pretty indifferent to it.\n"); printf("6 5- This show is sub-par. The acting is wooden, the special effects are\n"); printf(" obviously poor quality. In general, it seems like a very cheap\n"); printf(" Star Trek ripoff.\n"); printf("7 5-- You call this Sci-Fi? That is such a load of crap! This show is just a\n"); printf(" a soap with bad actors, piss-poor effects, and lame storylines.\n"); printf(" Puh-leese.\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Babylon 5 code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 7); if (selection == 0) exit(1); else return selection; } int get_xfiles(void) { int selection = 99; do { clearscreen(); printf("X-Files Page %i of %i\n", PAGES-(PAGES-25), PAGES); printf("===============================================================================\n"); printf("1 X++++ I am Chris Carter\n"); printf("2 X+++ This is the BEST show on TV, and it's about time. I've seen everything\n"); printf(" from David Duchovny and Gillian Anderson have ever done that has been\n"); printf(" recorded and I'm a loyal Duchovny/Anderson fan. I've converted at least\n"); printf(" 10 people. I have every episode at SP, debate the fine details online,\n"); printf(" and have a credit for at least 2 YAXAs.\n"); printf("3 X++ This is one of the better shows I've seen. I wish I'd taped everything\n"); printf(" from the start at SP, because I'm wearing out my EP tapes. I'll\n"); printf(" periodically debate online. I've converted at least 5 people. I've\n"); printf(" gotten a YAXA.\n"); printf("4 X+ I've converted my family and watch the show when I remember. It's\n"); printf(" really kinda fun.\n"); printf("5 X Ho hum. Just another FOX show.\n"); printf("6 X- It's ok if you like paranoia and conspiracy stories, but left's face\n"); printf(" it, it's crap.\n"); printf("7 X-- If I wanted to watch this kind of stuff, I'd talk to Oliver Stone.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your X-Files code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 7); if (selection == 0) exit(1); else return selection; } int get_rp(void) { int selection = 99; do { clearscreen(); printf("Role Playing Page %i of %i\n", PAGES-(PAGES-26), PAGES); printf("===============================================================================\n"); printf("1 R+++ I've written and published my own gaming materials.\n"); printf("2 R++ There is no life outside the roll of the die. I know all the piddly\n"); printf(" rules of (chosen game). _MY_ own warped rules scare the rest of the\n"); printf(" players.\n"); printf("3 R+ I've got my weekly sessions set up and a character that I know better\n"); printf(" than I know myself.\n"); printf("4 R Role-Playing? That's just something to do to kill a Saturday afternoon.\n"); printf("5 R- Gosh, what an utter waste of time!\n"); printf("6 R-- Role-Players are instruments of pure evil.\n"); printf("7 R--- I work for T$R.\n"); printf("8 R* I thought life WAS role-playing?\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Role Playing code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 8); if (selection == 0) exit(1); else return selection; } int get_television(void) { int selection = 99; do { clearscreen(); printf("Television Page %i of %i\n", PAGES-(PAGES-27), PAGES); printf("===============================================================================\n"); printf("1 tv+++ There's nothing I can experience 'out there' that I can't see coming\n"); printf(" over my satellite dish. I wish there were MORE channels. I live for the\n"); printf(" O.J. Trial.\n"); printf("2 tv++ I just leave the TV on, to make sure I don't miss anything.\n"); printf("3 tv+ I watch some TV every day.\n"); printf("4 tv I watch only the shows that are actually worthwhile, such as those\n"); printf(" found on PBS.\n"); printf("5 tv- I watch TV for the news and 'special programming'.\n"); printf("6 tv-- I turn my TV on during natural disasters.\n"); printf("7 !tv I do not own a television.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Television code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 7); if (selection == 0) exit(1); else return selection; } int get_books(void) { int selection = 99; do { clearscreen(); printf("Books Page %i of %i\n", PAGES-(PAGES-28), PAGES); printf("===============================================================================\n"); printf("1 b++++ I read a book a day. I have library cards in three states. I have\n"); printf(" discount cards from every major bookstore. I've ordered books from\n"); printf(" another country to get my Favorite Author Fix.\n"); printf("2 b+++ I consume a few books a week as part of a staple diet.\n"); printf("3 b++ I find the time to get through at least one new book a month.\n"); printf("4 b+ I enjoy reading, but don't get the time very often.\n"); printf("5 b I read the newspaper and the occasional book.\n"); printf("6 b- I read when there is no other way to get the information.\n"); printf("7 b-- I did not actually READ the geek code, I just had someone tell me.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Books code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 7); if (selection == 0) exit(1); else return selection; } int get_dilbert(void) { int selection = 99; do { clearscreen(); printf("Dilbert Page %i of %i\n", PAGES-(PAGES-29), PAGES); printf("===============================================================================\n"); printf("1 DI+++++ I am Scott Adams\n"); printf("2 DI++++ I've received mail from Scott Adams. i'm in the DNRC (Dogbert's New\n"); printf(" Ruling Class)\n"); printf("3 DI+++ I am a Dilbert prototype.\n"); printf("4 DI++ I work with people that act a lot like Dilbert and his boss.\n"); printf("5 DI+ I read Dilbert daily, often understanding it.\n"); printf("6 DI I read Dilbert infrequently, rarely understanding it.\n"); printf("7 DI- Is that the comic about the engineers?\n"); printf("8 DI-- Don't read it, but I think the dog is kinda cute.\n"); printf("9 DI--- I don't think it's funny to make fun of managers trying to best run\n"); printf(" their organizational units.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Dilbert code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 9); if (selection == 0) exit(1); else return selection; } int get_doom(void) { int selection = 99; do { clearscreen(); printf("Doom Page %i of %i\n", PAGES-(PAGES-30), PAGES); printf("===============================================================================\n"); printf("1 D++++ I work for iD software.\n"); printf("2 D+++ I crank out PWAD files daily, complete with new monsters, weaponry,\n"); printf(" sounds, and maps. I'm a Doom god. I can solve the original maps in\n"); printf(" nightmare mode with my eyes closed.\n"); printf("3 D++ I've played the shareware version and bought the real one and I'm\n"); printf(" actually pretty good at the game. I occasionally download PWAD files\n"); printf(" and play them too.\n"); printf("4 D+ It's a fun action game that is a nice diversion on a lazy afternoon.\n"); printf("5 D I've played the game and I'm pretty indifferent.\n"); printf("6 D- I've played the game and really didnt' think it was all that impressive\n"); printf("7 D-- It's an overly-violent game and pure crap.\n"); printf("8 D--- To hell with Doom, I miss Zork.\n"); printf("9 D---- I've seen better on my Atari 2600.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Doom code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 9); if (selection == 0) exit(1); else return selection; } int get_geekcode(void) { int selection = 99; do { clearscreen(); printf("The Geek Code Page %i of %i\n", PAGES-(PAGES-31), PAGES); printf("===============================================================================\n"); printf("1 G+++++ I am Robert Hayden\n"); printf("2 G++++ I have made a suggestion for future versions of the code (note that\n"); printf(" making a suggestion just to get a G++++ rating doesn't count, you also\n"); printf(" have to at least qualify for a G+++ rating)\n"); printf("3 G+++ I have memorized the entire geek code, and can decode others' codes in\n"); printf(" my head. I know where by heart to find the current version of the code\n"); printf(" on the net.\n"); printf("4 G++ I know what each letter means, but sometimes have to look up the\n"); printf(" specifics.\n"); printf("5 G+ I was once G++ (or higher), but the new versions are getting too long\n"); printf(" and too complicated.\n"); printf("6 G I know what the Geek Code is and even did up this code.\n"); printf("7 G- What a tremendous waste of time the Geek code is.\n"); printf("8 G-- Not only a waste of time, but it obviously shows that this Hayden guy\n"); printf(" needs a life.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your The Geek Code code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 8); if (selection == 0) exit(1); else return selection; } geekcode-1.7.3.orig/gc_lifestyle.c0000644000175000017500000002147307700046614016745 0ustar ericeric00000000000000/* gc_lifestyle.c - Functions for the Lifestyle section Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include "geekcode.h" int get_education(void) { int selection = 99; do { clearscreen(); printf("Education Page %i of %i\n", PAGES-(PAGES-32), PAGES); printf("===============================================================================\n"); printf("1 e+++++ I am Stephen Hawking\n"); printf("2 e++++ Managed to get my Ph.D.\n"); printf("3 e+++ Got a Master degree\n"); printf("4 e++ Got a Bachelors degree\n"); printf("5 e+ Got an Associates degree\n"); printf("6 e Finished High School\n"); printf("7 e- Haven't finished High School\n"); printf("8 e-- Haven't even entered High School\n"); printf("9 e* I learned everything there is to know about life from the\n"); printf(" \"Hitchhiker's Trilogy\"\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Education code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 9); if (selection == 0) exit(1); else return selection; } int get_housing(void) { int selection = 99; do { clearscreen(); printf("Housing Page %i of %i\n", PAGES-(PAGES-33), PAGES); printf("===============================================================================\n"); printf("1 h++ Living in a cave with 47 computers and an Internet feed, located near a\n"); printf(" Dominoes pizza (See !d)\n"); printf("2 h+ Living alone, get out once a week to buy food, no more than once a\n"); printf(" month to do laundry. All surfaces covered.\n"); printf("3 h Friends come over to visit every once in a while to talk about Geek\n"); printf(" things. There is a place for them to sit.\n"); printf("4 h- Living with one or more registered Geeks.\n"); printf("5 h-- Living with one or more people who know nothing about being a Geek and\n"); printf(" refuse to watch Babylon 5.\n"); printf("6 h--- Married, (persons living romantically with someone might as well label\n"); printf(" themselves h---, you're as good as there)\n"); printf("7 h---- Married with children - Al Bundy can sympathize.\n"); printf("8 h! I am stuck living with my parents!\n"); printf("9 h* I'm not sure where I live anymore. This lab/workplace seems like home\n"); printf(" to me.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Housing code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 9); if (selection == 0) exit(1); else return selection; } int get_relationships(void) { int selection = 99; do { clearscreen(); printf("Relationships Page %i of %i\n", PAGES-(PAGES-34), PAGES); printf("===============================================================================\n"); printf(" 1 r+++ Found someone, dated, and am now married.\n"); printf(" 2 r++ I've dated my current S.O. for a long time.\n"); printf(" 3 r+ I date frequently, bouncing from one relationship to another.\n"); printf(" 4 r I date periodically.\n"); printf(" 5 r- I have difficulty maintaining a relationship.\n"); printf(" 6 r-- People just aren't interested in dating me.\n"); printf(" 7 r--- I'm beginning to think that I'm a leper or something, the way people\n"); printf(" avoid me like the plague.\n"); printf(" 8 !r I've never had a relationship.\n"); printf(" 9 r* Signifying membership in the SBCA (Sour Bachelor(ette)'s Club of\n"); printf(" America). The motto is 'Bitter, but not Desperate'.\n"); printf(" First founded at Caltech.\n"); printf("10 r%% I was going out with someone, but the asshole dumped me.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Relationships code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 10); if (selection == 0) exit(1); else return selection; } int get_sex_type(void) { int selection = 99; do { clearscreen(); printf("Sex Type Page %ia of %i\n", PAGES-(PAGES-35), PAGES); printf("===============================================================================\n"); printf("1 x - I am a female\n"); printf("2 y - I am a male\n"); printf("3 z - I do not wish to disclose my gender\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Sex type code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 3); if (selection == 0) exit(1); else return selection; } char show_sex_type(int x) { char *sex; switch (x) { case 1: sex="x"; break; case 2: sex="y"; break; case 3: sex="z"; break; default: sex="z"; break; } return *sex; } int get_sex(int x) { int selection = 99; char *sex; switch (x) { case 1: sex="x"; break; case 2: sex="y"; break; case 3: sex="z"; break; default: sex="z"; break; } do { clearscreen(); printf("Sex Page %ib of %i\n", PAGES-(PAGES-35), PAGES); printf("===============================================================================\n"); printf(" 1 %s+++++ I am Madonna\n", sex); printf(" 2 %s++++ I have a few little rug rats to prove I've been there. Besides, with\n", sex); printf(" kids around, who has time for sex?\n"); printf(" 3 %s+++ I'm married, so I can get it (theoretically) whenever I want.\n", sex); printf(" 4 %s++ I was once referred to as 'easy'. I have no idea where that might\n", sex); printf(" have come from though.\n"); printf(" 5 %s+ I've had real, live sex.\n", sex); printf(" 6 %s I've had sex. Oh! You mean with someone else? Then no.\n", sex); printf(" 7 %s- Not having sex by choice.\n", sex); printf(" 8 %s-- Not having sex because I just can't get any...\n", sex); printf(" 9 %s--- Not having sex because I'm a nun or priest.\n", sex); printf("10 %s* I'm a pervert.\n", sex); printf("11 %s** I've been known to make perverts look like angels.\n", sex); printf("12 !%s Sex? What's that? I've had no sexual experiences.\n", sex); printf("13 %s? It's none of your business what my sex life is like (this is used to\n", sex); printf(" denote your gender only).\n"); printf("14 !%s+ Sex? What's that? No experience, willing to learn!\n", sex); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Sex code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 14); if (selection == 0) exit(1); else return selection; } geekcode-1.7.3.orig/gc_politics.c0000644000175000017500000001715207700046614016572 0ustar ericeric00000000000000/* gc_politics.c - Functions for the Politics section Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include "geekcode.h" int get_social(void) { int selection = 99; do { clearscreen(); printf("Political and Social Issues Page %i of %i\n", PAGES-(PAGES-19), PAGES); printf("===============================================================================\n"); printf("1 PS+++ Legalize drugs! Abolish the government! 'Fuck the draft!'\n"); printf("2 PS++ I give to liberal causes. I march for gay rights. I'm a card carrying\n"); printf(" member of the ACLU. Keep abortion safe and legal.\n"); printf("3 PS+ My whole concept of liberalism is that nobody has the right to tell\n"); printf(" anybody else what to do, on either side of the political fence. If you\n"); printf(" don't like it, turn the bloody channel.\n"); printf("4 PS I really don't have an opinion; nobody's messing with my freedoms\n"); printf(" right now.\n"); printf("5 PS- Label records! Keep dirty stuff off the TV and the Internet.\n"); printf("6 PS-- Oppose sex education, abortion rights, gay rights. Rush Limbaugh is\n"); printf(" my spokesman.\n"); printf("7 PS--- Repent left-wing sinners and change your wicked evil ways.\n"); printf(" Buchanan/Robertson in '96.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Political and Social Issues code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 7); if (selection == 0) exit(1); else return selection; } int get_economic(void) { int selection = 99; do { clearscreen(); printf("Politics and Economic Issues Page %i of %i\n", PAGES-(PAGES-20), PAGES); printf("===============================================================================\n"); printf("1 PE+++ Abolish antitrust legislation. Raise taxes on everyone but the rich so\n"); printf(" that the money can trickle-down to the masses.\n"); printf("2 PE++ Keep the government off the backs of businesses. Deregulate as much\n"); printf(" as possible.\n"); printf("3 PE+ Balance the budget with spending cuts and an amendment.\n"); printf("4 PE Distrust both government and business.\n"); printf("5 PE- It's ok to increase government spending, so we can help more poor\n"); printf(" people. Tax the rich! Cut the defense budget!\n"); printf("6 PE-- Capitalism is evil! Government should provide the services we really\n"); printf(" need. Nobody should be rich.\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Politics and Economic Issues code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 6); if (selection == 0) exit(1); else return selection; } int get_cypher(void) { int selection = 99; do { clearscreen(); printf("Cypherpunks Page %i of %i\n", PAGES-(PAGES-21), PAGES); printf("===============================================================================\n"); printf("1 Y+++ I am T.C. May\n"); printf("2 Y++ I am on the cypherpunks mailing list and active around Usenet. I never\n"); printf(" an opportunity to talk about the evils of Clipper and ITAR and the NSA.\n"); printf(" Orwell's 1984 is more than a story, it is a warning to our's and future\n"); printf(" generations. I'm a member of the EFF.\n"); printf("3 Y+ I have an interest and concern in privacy issues, but in reality I'm not\n"); printf(" all that active or vocal.\n"); printf("4 Y I'm pretty indifferent on the whole issue.\n"); printf("5 Y- It seems to me that all of these concerns are a little extreme. I mean,\n"); printf(" the government must be able to protect itself from criminals and the\n"); printf(" populace from indecent speech.\n"); printf("6 Y-- Get a life. The only people that need this kind of protection are people\n"); printf(" with something to hide. I think cypherpunks are just a little paranoid.\n"); printf("7 Y--- I am L. Detweiler\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Cypherpunks code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 7); if (selection == 0) exit(1); else return selection; } int get_pgp(void) { int selection = 99; do { clearscreen(); printf("PGP Page %i of %i\n", PAGES-(PAGES-22), PAGES); printf("===============================================================================\n"); printf("1 PGP++++ I am Philip Zimmerman.\n"); printf("2 PGP+++ I don't send or answer mail that is not encrypted, or at the very\n"); printf(" least, signed. If you are reading this without decrypting it first,\n"); printf(" something is wrong. IT DIDN'T COME FROM ME!\n"); printf("3 PGP++ I have the most recent version and use it regularly.\n"); printf("4 PGP+ 'Finger me for my public key'\n"); printf("5 PGP I've used it, but stopped long ago.\n"); printf("6 PGP- I don't have anything to hide.\n"); printf("7 PGP-- I feel that the glory of the Internet is in the anarchic, trusting\n"); printf(" environment that so nutures the exchange of information. Encryption\n"); printf(" just bogs that down.\n"); printf("8 PGP--- If you support encryption on the Internet, you must be a drug dealer\n"); printf(" or terrorist or something like that.\n"); printf("9 PGP---- Oh, here is something you can all use that is better\n"); printf(" (insert Clipper here).\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your PGP code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 9); if (selection == 0) exit(1); else return selection; } geekcode-1.7.3.orig/gc_type.c0000644000175000017500000000506407700046614015724 0ustar ericeric00000000000000/* gc_type.c - Functions for the Geek Type section Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include "geekcode.h" int get_type(void) { int selection = 99; do { printf("Geek Type Page %i of %i\n", PAGES-(PAGES-1), PAGES); printf("===============================================================================\n"); printf(" 1 GB - Geek of Business 15 GL - Geek of Literature\n"); printf(" 2 GC - Geek of Classics 16 GMC - Geek of Mass Communications\n"); printf(" 3 GCA - Geek of Commercial Arts 17 GM - Geek of Math\n"); printf(" 4 GCM - Geek of Computer Management 18 GMD - Geek of Medicine\n"); printf(" 5 GCS - Geek of Computer Science 19 GMU - Geek of Music\n"); printf(" 6 GCC - Geek of Communications 20 GPA - Geek of Performing Arts\n"); printf(" 7 GE - Geek of Engineering 21 GP - Geek of Philosophy\n"); printf(" 8 GED - Geek of Education 22 GS - Geek of Science\n"); printf(" 9 GFA - Geek of Fine Arts 23 GSS - Geek of Social Science\n"); printf("10 GG - Geek of Government 24 GTW - Geek of Technicial Writing\n"); printf("11 GH - Geek of Humanities 25 GO - Geek of Other\n"); printf("12 GIT - Geek of Information Technology 26 GU - Geek of Undecided\n"); printf("13 GJ - Geek of Jurisprudence (Law) 27 G! - Geek of No Qualifications\n"); printf("14 GLS - Geek of Library Science 28 GAT - Geek of All Trades\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("Enter your Geek Type code number here [0 to quit]: "); scanf("%d", &selection); clear_kb(); } while (selection < 0 || selection > 28); if (selection == 0) exit(1); else return selection; } geekcode-1.7.3.orig/geekcode.c0000644000175000017500000011342107700046614016035 0ustar ericeric00000000000000/* geekcode.c - Main program Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include #include #include "geekcode.h" int readgeek(char geekcode[64][16],char *data,int *j,int *k){ int i; for(i=0;i\n"); printf("\n"); do{ printf("1) Create your own Geekcode\n"); printf("2) Read a Geekcode\n"); printf("\n"); printf("Enter your choise here [0 to quit]: "); scanf("%d", &selection); clear_kb(); }while(selection<0 || selection>2); switch(selection){ case 1: create_code(); break; case 2: read_code(); } return 0; } void clear_kb(void) { char junk[80]; fgets(junk, 80, stdin); /* Changed to fgets() in v1.4 - is this a good way to use it? */ } void show_geekcode(int x) { char *sex_type; clearscreen(); printf("Geek Code Generator v%s - Generates your geek code\n", VERSION); /* Modified in v1.2 */ printf("Copyright (C) 1999-2003 Chris Gushue \n"); printf("\n"); printf("This is free software; see the source for copying conditions. There is NO\n"); printf("warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE,\n"); printf("to the extent permitted by law.\n"); printf("\n"); /* Geek code copyright added in v1.2 */ printf("The Geek Code is copyright (C) 1993, 1994, 1995, 1996 by Robert A.\n"); printf("Hayden. All rights reserved. You are free to distribute this code in\n"); printf("electronic format provided that the file remains unmodified and this\n"); printf("copyright notice remains attached. This copyright prohibits HTMLizing\n"); printf("the code for publication on the web. If you wish to publish abstracts\n"); printf("or portions of the code, contact the author for permission. If you\n"); printf("wish to write an article about the Geek Code, please contact the\n"); printf("author. All creatures not native to Earth are exempt from this\n"); printf("copyright, however, they must prove that they qualify.\n"); printf("\n"); printf("-----BEGIN GEEK CODE BLOCK-----\n"); printf("Version: 3.12\n"); /* Line one start */ switch (gc_type) { case 1: printf("GB "); break; case 2: printf("GC "); break; case 3: printf("GCA "); break; case 4: printf("GCM "); break; case 5: printf("GCS "); break; case 6: printf("GCC "); break; case 7: printf("GE "); break; case 8: printf("GED "); break; case 9: printf("GFA "); break; case 10: printf("GG "); break; case 11: printf("GH "); break; case 12: printf("GIT "); break; case 13: printf("GJ "); break; case 14: printf("GLS "); break; case 15: printf("GL "); break; case 16: printf("GMC "); break; case 17: printf("GM "); break; case 18: printf("GMD "); break; case 19: printf("GMU "); break; case 20: printf("GPA "); break; case 21: printf("GP "); break; case 22: printf("GS "); break; case 23: printf("GSS "); break; case 24: printf("GTW "); break; case 25: printf("GO "); break; case 26: printf("GU "); break; case 27: printf("G! "); break; case 28: printf("GAT "); break; } switch (gc_dress) { case 1: printf("d++ "); break; case 2: printf("d+ "); break; case 3: printf("d "); break; case 4: printf("d- "); break; case 5: printf("d-- "); break; case 6: printf("d--- "); break; case 7: printf("dx "); break; case 8: printf("d? "); break; case 9: printf("!d "); break; case 10: printf("dpu "); break; } switch (gc_height) { case 1: printf("s+++:"); break; case 2: printf("s++:"); break; case 3: printf("s+:"); break; case 4: printf("s:"); break; case 5: printf("s-:"); break; case 6: printf("s--:"); break; case 7: printf("s---:"); break; } switch (gc_weight) { case 1: printf("+++ "); break; case 2: printf("++ "); break; case 3: printf("+ "); break; case 4: printf(" "); break; case 5: printf("- "); break; case 6: printf("-- "); break; case 7: printf("--- "); break; } switch (gc_age) { case 1: printf("a+++ "); break; case 2: printf("a++ "); break; case 3: printf("a+ "); break; case 4: printf("a "); break; case 5: printf("a- "); break; case 6: printf("a-- "); break; case 7: printf("a--- "); break; case 8: printf("a---- "); break; case 9: printf("a----- "); break; case 10: printf("a? "); break; case 11: printf("!a "); break; } switch (gc_computers) { case 1: printf("C++++ "); break; case 2: printf("C+++ "); break; case 3: printf("C++ "); break; case 4: printf("C+ "); break; case 5: printf("C "); break; case 6: printf("C- "); break; case 7: printf("C-- "); break; case 8: printf("C--- "); break; } /* Added in v1.1 */ switch (gc_unix_type) { case 1: printf("UB"); break; case 2: printf("UL"); break; case 3: printf("UU"); break; case 4: printf("UA"); break; case 5: printf("UV"); break; case 6: printf("UH"); break; case 7: printf("UI"); break; case 8: printf("UO"); break; case 9: printf("US"); break; case 10: printf("UC"); break; case 11: printf("UX"); break; case 12: printf("U*"); break; } switch (gc_unix) { case 1: printf("++++ "); break; case 2: printf("+++ "); break; case 3: printf("++ "); break; case 4: printf("+ "); break; case 5: printf(" "); break; case 6: printf("- "); break; case 7: printf("-- "); break; case 8: printf("--- "); break; } switch (gc_perl) { case 1: printf("P+++++ "); break; case 2: printf("P++++ "); break; case 3: printf("P+++ "); break; case 4: printf("P++ "); break; case 5: printf("P+ "); break; case 6: printf("P "); break; case 7: printf("P- "); break; case 8: printf("P-- "); break; case 9: printf("P--- "); break; case 10: printf("P! "); break; } switch (gc_linux) { case 1: printf("L+++++ "); break; case 2: printf("L++++ "); break; case 3: printf("L+++ "); break; case 4: printf("L++ "); break; case 5: printf("L+ "); break; case 6: printf("L "); break; case 7: printf("L- "); break; case 8: printf("L-- "); break; case 9: printf("L--- "); break; } switch (gc_emacs) { case 1: printf("E+++ "); break; case 2: printf("E++ "); break; case 3: printf("E+ "); break; case 4: printf("E "); break; case 5: printf("E- "); break; case 6: printf("E-- "); break; case 7: printf("E--- "); break; case 8: printf("E---- "); break; } switch (gc_www) { case 1: printf("W+++ "); break; case 2: printf("W++ "); break; case 3: printf("W+ "); break; case 4: printf("W "); break; case 5: printf("W- "); break; case 6: printf("W-- "); break; } switch (gc_usenet) { case 1: printf("N++++ "); break; case 2: printf("N+++ "); break; case 3: printf("N++ "); break; case 4: printf("N+ "); break; case 5: printf("N "); break; case 6: printf("N- "); break; case 7: printf("N-- "); break; case 8: printf("N--- "); break; case 9: printf("N---- "); break; case 10: printf("N* "); break; } switch (gc_oracle) { case 1: printf("o+++++ "); break; case 2: printf("o++++ "); break; case 3: printf("o+++ "); break; case 4: printf("o++ "); break; case 5: printf("o+ "); break; case 6: printf("o "); break; case 7: printf("o- "); break; case 8: printf("o-- "); break; } switch (gc_kibo) { case 1: printf("K++++++ "); break; case 2: printf("K+++++ "); break; case 3: printf("K++++ "); break; case 4: printf("K+++ "); break; case 5: printf("K++ "); break; case 6: printf("K+ "); break; case 7: printf("K "); break; case 8: printf("K- "); break; case 9: printf("K-- "); break; case 10: printf("K--- "); break; case 11: printf("K---- "); break; } switch (gc_windows) { case 1: printf("w+++++ "); break; case 2: printf("w++++ "); break; case 3: printf("w+++ "); break; case 4: printf("w++ "); break; case 5: printf("w+ "); break; case 6: printf("w "); break; case 7: printf("w- "); break; case 8: printf("w-- "); break; case 9: printf("w--- "); break; } printf("\n"); /* Line one end */ switch (gc_os2) { case 1: printf("O+++ "); break; case 2: printf("O++ "); break; case 3: printf("O+ "); break; case 4: printf("O "); break; case 5: printf("O- "); break; case 6: printf("O-- "); break; case 7: printf("O--- "); break; case 8: printf("O---- "); break; } switch (gc_mac) { case 1: printf("M++ "); break; case 2: printf("M+ "); break; case 3: printf("M "); break; case 4: printf("M- "); break; case 5: printf("M-- "); break; } switch (gc_vms) { case 1: printf("V+++ "); break; case 2: printf("V++ "); break; case 3: printf("V+ "); break; case 4: printf("V "); break; case 5: printf("V- "); break; case 6: printf("V-- "); break; } switch (gc_social) { case 1: printf("PS+++ "); break; case 2: printf("PS++ "); break; case 3: printf("PS+ "); break; case 4: printf("PS "); break; case 5: printf("PS- "); break; case 6: printf("PS-- "); break; case 7: printf("PS--- "); break; } switch (gc_economic) { case 1: printf("PE+++ "); break; case 2: printf("PE++ "); break; case 3: printf("PE+ "); break; case 4: printf("PE "); break; case 5: printf("PE- "); break; case 6: printf("PE-- "); break; } switch (gc_cypher) { case 1: printf("Y+++ "); break; case 2: printf("Y++ "); break; case 3: printf("Y+ "); break; case 4: printf("Y "); break; case 5: printf("Y- "); break; case 6: printf("Y-- "); break; case 7: printf("Y--- "); break; } switch (gc_pgp) { case 1: printf("PGP++++ "); break; case 2: printf("PGP+++ "); break; case 3: printf("PGP++ "); break; case 4: printf("PGP+ "); break; case 5: printf("PGP "); break; case 6: printf("PGP- "); break; case 7: printf("PGP-- "); break; case 8: printf("PGP--- "); break; case 9: printf("PGP---- "); break; } switch (gc_startrek) { case 1: printf("t+++ "); break; case 2: printf("t++ "); break; case 3: printf("t+ "); break; case 4: printf("t "); break; case 5: printf("t- "); break; case 6: printf("t-- "); break; case 7: printf("t--- "); break; } switch (gc_babylon5) { case 1: printf("5++++ "); break; case 2: printf("5+++ "); break; case 3: printf("5++ "); break; case 4: printf("5+ "); break; case 5: printf("5 "); break; case 6: printf("5- "); break; case 7: printf("5-- "); break; } switch (gc_xfiles) { case 1: printf("X++++ "); break; case 2: printf("X+++ "); break; case 3: printf("X++ "); break; case 4: printf("X+ "); break; case 5: printf("X "); break; case 6: printf("X- "); break; case 7: printf("X-- "); break; } switch (gc_rp) { case 1: printf("R+++ "); break; case 2: printf("R++ "); break; case 3: printf("R+ "); break; case 4: printf("R "); break; case 5: printf("R- "); break; case 6: printf("R-- "); break; case 7: printf("R--- "); break; case 8: printf("R* "); break; } switch (gc_television) { case 1: printf("tv+++ "); break; case 2: printf("tv++ "); break; case 3: printf("tv+ "); break; case 4: printf("tv "); break; case 5: printf("tv- "); break; case 6: printf("tv-- "); break; case 7: printf("!tv "); break; } switch (gc_books) { case 1: printf("b++++ "); break; case 2: printf("b+++ "); break; case 3: printf("b++ "); break; case 4: printf("b+ "); break; case 5: printf("b "); break; case 6: printf("b- "); break; case 7: printf("b-- "); break; } switch (gc_dilbert) { case 1: printf("DI+++++ "); break; case 2: printf("DI++++ "); break; case 3: printf("DI+++ "); break; case 4: printf("DI++ "); break; case 5: printf("DI+ "); break; case 6: printf("DI "); break; case 7: printf("DI- "); break; case 8: printf("DI-- "); break; case 9: printf("DI--- "); break; } switch (gc_doom) { case 1: printf("D++++ "); break; case 2: printf("D+++ "); break; case 3: printf("D++ "); break; case 4: printf("D+ "); break; case 5: printf("D "); break; case 6: printf("D- "); break; case 7: printf("D-- "); break; case 8: printf("D--- "); break; case 9: printf("D---- "); break; } printf("\n"); /* Line two end */ switch (gc_geekcode) { case 1: printf("G+++++ "); break; case 2: printf("G++++ "); break; case 3: printf("G+++ "); break; case 4: printf("G++ "); break; case 5: printf("G+ "); break; case 6: printf("G "); break; case 7: printf("G- "); break; case 8: printf("G-- "); break; } switch (gc_education) { case 1: printf("e+++++ "); break; case 2: printf("e++++ "); break; case 3: printf("e+++ "); break; case 4: printf("e++ "); break; case 5: printf("e+ "); break; case 6: printf("e "); break; case 7: printf("e- "); break; case 8: printf("e-- "); break; case 9: printf("e* "); break; } switch (gc_housing) { case 1: printf("h++ "); break; case 2: printf("h+ "); break; case 3: printf("h "); break; case 4: printf("h- "); break; case 5: printf("h-- "); break; case 6: printf("h--- "); break; case 7: printf("h---- "); break; case 8: printf("h! "); break; case 9: printf("h* "); break; } switch (gc_relationships) { case 1: printf("r+++ "); break; case 2: printf("r++ "); break; case 3: printf("r+ "); break; case 4: printf("r "); break; case 5: printf("r- "); break; case 6: printf("r-- "); break; case 7: printf("r--- "); break; case 8: printf("!r "); break; case 9: printf("r* "); break; case 10: printf("r%% "); break; } /* Added in v1.2 */ switch (x) { case 1: sex_type="x"; break; case 2: sex_type="y"; break; case 3: sex_type="z"; break; default: sex_type="z"; break; } /* Modified in v1.2 */ switch (gc_sex) { case 1: printf("%s+++++ ", sex_type); break; case 2: printf("%s++++ ", sex_type); break; case 3: printf("%s+++ ", sex_type); break; case 4: printf("%s++ ", sex_type); break; case 5: printf("%s+ ", sex_type); break; case 6: printf("%s ", sex_type); break; case 7: printf("%s- ", sex_type); break; case 8: printf("%s-- ", sex_type); break; case 9: printf("%s--- ", sex_type); break; case 10: printf("%s* ", sex_type); break; case 11: printf("%s** ", sex_type); break; case 12: printf("!%s ", sex_type); break; case 13: printf("%s? ", sex_type); break; case 14: printf("!%s+ ", sex_type); break; } printf("\n"); printf("------END GEEK CODE BLOCK------\n"); } /* I haven't fully tested the following code, but it looks ok. Submitted by Ingo Hoffmann */ /* Added in v1.7 */ void write_geekcode(int x) { char *sex_type; FILE *fcode; fcode = fopen("geekcode.sig", "w"); fprintf(fcode, "-----BEGIN GEEK CODE BLOCK-----\n"); fprintf(fcode, "Version: 3.12\n"); /* Line one start */ switch (gc_type) { case 1: fprintf(fcode, "GB "); break; case 2: fprintf(fcode, "GC "); break; case 3: fprintf(fcode, "GCA "); break; case 4: fprintf(fcode, "GCM "); break; case 5: fprintf(fcode, "GCS "); break; case 6: fprintf(fcode, "GCC "); break; case 7: fprintf(fcode, "GE "); break; case 8: fprintf(fcode, "GED "); break; case 9: fprintf(fcode, "GFA "); break; case 10: fprintf(fcode, "GG "); break; case 11: fprintf(fcode, "GH "); break; case 12: fprintf(fcode, "GIT "); break; case 13: fprintf(fcode, "GJ "); break; case 14: fprintf(fcode, "GLS "); break; case 15: fprintf(fcode, "GL "); break; case 16: fprintf(fcode, "GMC "); break; case 17: fprintf(fcode, "GM "); break; case 18: fprintf(fcode, "GMD "); break; case 19: fprintf(fcode, "GMU "); break; case 20: fprintf(fcode, "GPA "); break; case 21: fprintf(fcode, "GP "); break; case 22: fprintf(fcode, "GS "); break; case 23: fprintf(fcode, "GSS "); break; case 24: fprintf(fcode, "GTW "); break; case 25: fprintf(fcode, "GO "); break; case 26: fprintf(fcode, "GU "); break; case 27: fprintf(fcode, "G! "); break; case 28: fprintf(fcode, "GAT "); break; } switch (gc_dress) { case 1: fprintf(fcode, "d++ "); break; case 2: fprintf(fcode, "d+ "); break; case 3: fprintf(fcode, "d "); break; case 4: fprintf(fcode, "d- "); break; case 5: fprintf(fcode, "d-- "); break; case 6: fprintf(fcode, "d--- "); break; case 7: fprintf(fcode, "dx "); break; case 8: fprintf(fcode, "d? "); break; case 9: fprintf(fcode, "!d "); break; case 10: fprintf(fcode, "dpu "); break; } switch (gc_height) { case 1: fprintf(fcode, "s+++:"); break; case 2: fprintf(fcode, "s++:"); break; case 3: fprintf(fcode, "s+:"); break; case 4: fprintf(fcode, "s:"); break; case 5: fprintf(fcode, "s-:"); break; case 6: fprintf(fcode, "s--:"); break; case 7: fprintf(fcode, "s---:"); break; } switch (gc_weight) { case 1: fprintf(fcode, "+++ "); break; case 2: fprintf(fcode, "++ "); break; case 3: fprintf(fcode, "+ "); break; case 4: fprintf(fcode, " "); break; case 5: fprintf(fcode, "- "); break; case 6: fprintf(fcode, "-- "); break; case 7: fprintf(fcode, "--- "); break; } switch (gc_age) { case 1: fprintf(fcode, "a+++ "); break; case 2: fprintf(fcode, "a++ "); break; case 3: fprintf(fcode, "a+ "); break; case 4: fprintf(fcode, "a "); break; case 5: fprintf(fcode, "a- "); break; case 6: fprintf(fcode, "a-- "); break; case 7: fprintf(fcode, "a--- "); break; case 8: fprintf(fcode, "a---- "); break; case 9: fprintf(fcode, "a----- "); break; case 10: fprintf(fcode, "a? "); break; case 11: fprintf(fcode, "!a "); break; } switch (gc_computers) { case 1: fprintf(fcode, "C++++ "); break; case 2: fprintf(fcode, "C+++ "); break; case 3: fprintf(fcode, "C++ "); break; case 4: fprintf(fcode, "C+ "); break; case 5: fprintf(fcode, "C "); break; case 6: fprintf(fcode, "C- "); break; case 7: fprintf(fcode, "C-- "); break; case 8: fprintf(fcode, "C--- "); break; } /* Added in v1.1 */ switch (gc_unix_type) { case 1: fprintf(fcode, "UB"); break; case 2: fprintf(fcode, "UL"); break; case 3: fprintf(fcode, "UU"); break; case 4: fprintf(fcode, "UA"); break; case 5: fprintf(fcode, "UV"); break; case 6: fprintf(fcode, "UH"); break; case 7: fprintf(fcode, "UI"); break; case 8: fprintf(fcode, "UO"); break; case 9: fprintf(fcode, "US"); break; case 10: fprintf(fcode, "UC"); break; case 11: fprintf(fcode, "UX"); break; case 12: fprintf(fcode, "U*"); break; } switch (gc_unix) { case 1: fprintf(fcode, "++++ "); break; case 2: fprintf(fcode, "+++ "); break; case 3: fprintf(fcode, "++ "); break; case 4: fprintf(fcode, "+ "); break; case 5: fprintf(fcode, " "); break; case 6: fprintf(fcode, "- "); break; case 7: fprintf(fcode, "-- "); break; case 8: fprintf(fcode, "--- "); break; } switch (gc_perl) { case 1: fprintf(fcode, "P+++++ "); break; case 2: fprintf(fcode, "P++++ "); break; case 3: fprintf(fcode, "P+++ "); break; case 4: fprintf(fcode, "P++ "); break; case 5: fprintf(fcode, "P+ "); break; case 6: fprintf(fcode, "P "); break; case 7: fprintf(fcode, "P- "); break; case 8: fprintf(fcode, "P-- "); break; case 9: fprintf(fcode, "P--- "); break; case 10: fprintf(fcode, "P! "); break; } switch (gc_linux) { case 1: fprintf(fcode, "L+++++ "); break; case 2: fprintf(fcode, "L++++ "); break; case 3: fprintf(fcode, "L+++ "); break; case 4: fprintf(fcode, "L++ "); break; case 5: fprintf(fcode, "L+ "); break; case 6: fprintf(fcode, "L "); break; case 7: fprintf(fcode, "L- "); break; case 8: fprintf(fcode, "L-- "); break; case 9: fprintf(fcode, "L--- "); break; } switch (gc_emacs) { case 1: fprintf(fcode, "E+++ "); break; case 2: fprintf(fcode, "E++ "); break; case 3: fprintf(fcode, "E+ "); break; case 4: fprintf(fcode, "E "); break; case 5: fprintf(fcode, "E- "); break; case 6: fprintf(fcode, "E-- "); break; case 7: fprintf(fcode, "E--- "); break; case 8: fprintf(fcode, "E---- "); break; } switch (gc_www) { case 1: fprintf(fcode, "W+++ "); break; case 2: fprintf(fcode, "W++ "); break; case 3: fprintf(fcode, "W+ "); break; case 4: fprintf(fcode, "W "); break; case 5: fprintf(fcode, "W- "); break; case 6: fprintf(fcode, "W-- "); break; } switch (gc_usenet) { case 1: fprintf(fcode, "N++++ "); break; case 2: fprintf(fcode, "N+++ "); break; case 3: fprintf(fcode, "N++ "); break; case 4: fprintf(fcode, "N+ "); break; case 5: fprintf(fcode, "N "); break; case 6: fprintf(fcode, "N- "); break; case 7: fprintf(fcode, "N-- "); break; case 8: fprintf(fcode, "N--- "); break; case 9: fprintf(fcode, "N---- "); break; case 10: fprintf(fcode, "N* "); break; } switch (gc_oracle) { case 1: fprintf(fcode, "o+++++ "); break; case 2: fprintf(fcode, "o++++ "); break; case 3: fprintf(fcode, "o+++ "); break; case 4: fprintf(fcode, "o++ "); break; case 5: fprintf(fcode, "o+ "); break; case 6: fprintf(fcode, "o "); break; case 7: fprintf(fcode, "o- "); break; case 8: fprintf(fcode, "o-- "); break; } switch (gc_kibo) { case 1: fprintf(fcode, "K++++++ "); break; case 2: fprintf(fcode, "K+++++ "); break; case 3: fprintf(fcode, "K++++ "); break; case 4: fprintf(fcode, "K+++ "); break; case 5: fprintf(fcode, "K++ "); break; case 6: fprintf(fcode, "K+ "); break; case 7: fprintf(fcode, "K "); break; case 8: fprintf(fcode, "K- "); break; case 9: fprintf(fcode, "K-- "); break; case 10: fprintf(fcode, "K--- "); break; case 11: fprintf(fcode, "K---- "); break; } switch (gc_windows) { case 1: fprintf(fcode, "w+++++ "); break; case 2: fprintf(fcode, "w++++ "); break; case 3: fprintf(fcode, "w+++ "); break; case 4: fprintf(fcode, "w++ "); break; case 5: fprintf(fcode, "w+ "); break; case 6: fprintf(fcode, "w "); break; case 7: fprintf(fcode, "w- "); break; case 8: fprintf(fcode, "w-- "); break; case 9: fprintf(fcode, "w--- "); break; } fprintf(fcode, "\n"); /* Line one end */ switch (gc_os2) { case 1: fprintf(fcode, "O+++ "); break; case 2: fprintf(fcode, "O++ "); break; case 3: fprintf(fcode, "O+ "); break; case 4: fprintf(fcode, "O "); break; case 5: fprintf(fcode, "O- "); break; case 6: fprintf(fcode, "O-- "); break; case 7: fprintf(fcode, "O--- "); break; case 8: fprintf(fcode, "O---- "); break; } switch (gc_mac) { case 1: fprintf(fcode, "M++ "); break; case 2: fprintf(fcode, "M+ "); break; case 3: fprintf(fcode, "M "); break; case 4: fprintf(fcode, "M- "); break; case 5: fprintf(fcode, "M-- "); break; } switch (gc_vms) { case 1: fprintf(fcode, "V+++ "); break; case 2: fprintf(fcode, "V++ "); break; case 3: fprintf(fcode, "V+ "); break; case 4: fprintf(fcode, "V "); break; case 5: fprintf(fcode, "V- "); break; case 6: fprintf(fcode, "V-- "); break; } switch (gc_social) { case 1: fprintf(fcode, "PS+++ "); break; case 2: fprintf(fcode, "PS++ "); break; case 3: fprintf(fcode, "PS+ "); break; case 4: fprintf(fcode, "PS "); break; case 5: fprintf(fcode, "PS- "); break; case 6: fprintf(fcode, "PS-- "); break; case 7: fprintf(fcode, "PS--- "); break; } switch (gc_economic) { case 1: fprintf(fcode, "PE+++ "); break; case 2: fprintf(fcode, "PE++ "); break; case 3: fprintf(fcode, "PE+ "); break; case 4: fprintf(fcode, "PE "); break; case 5: fprintf(fcode, "PE- "); break; case 6: fprintf(fcode, "PE-- "); break; } switch (gc_cypher) { case 1: fprintf(fcode, "Y+++ "); break; case 2: fprintf(fcode, "Y++ "); break; case 3: fprintf(fcode, "Y+ "); break; case 4: fprintf(fcode, "Y "); break; case 5: fprintf(fcode, "Y- "); break; case 6: fprintf(fcode, "Y-- "); break; case 7: fprintf(fcode, "Y--- "); break; } switch (gc_pgp) { case 1: fprintf(fcode, "PGP++++ "); break; case 2: fprintf(fcode, "PGP+++ "); break; case 3: fprintf(fcode, "PGP++ "); break; case 4: fprintf(fcode, "PGP+ "); break; case 5: fprintf(fcode, "PGP "); break; case 6: fprintf(fcode, "PGP- "); break; case 7: fprintf(fcode, "PGP-- "); break; case 8: fprintf(fcode, "PGP--- "); break; case 9: fprintf(fcode, "PGP---- "); break; } switch (gc_startrek) { case 1: fprintf(fcode, "t+++ "); break; case 2: fprintf(fcode, "t++ "); break; case 3: fprintf(fcode, "t+ "); break; case 4: fprintf(fcode, "t "); break; case 5: fprintf(fcode, "t- "); break; case 6: fprintf(fcode, "t-- "); break; case 7: fprintf(fcode, "t--- "); break; } switch (gc_babylon5) { case 1: fprintf(fcode, "5++++ "); break; case 2: fprintf(fcode, "5+++ "); break; case 3: fprintf(fcode, "5++ "); break; case 4: fprintf(fcode, "5+ "); break; case 5: fprintf(fcode, "5 "); break; case 6: fprintf(fcode, "5- "); break; case 7: fprintf(fcode, "5-- "); break; } switch (gc_xfiles) { case 1: fprintf(fcode, "X++++ "); break; case 2: fprintf(fcode, "X+++ "); break; case 3: fprintf(fcode, "X++ "); break; case 4: fprintf(fcode, "X+ "); break; case 5: fprintf(fcode, "X "); break; case 6: fprintf(fcode, "X- "); break; case 7: fprintf(fcode, "X-- "); break; } switch (gc_rp) { case 1: fprintf(fcode, "R+++ "); break; case 2: fprintf(fcode, "R++ "); break; case 3: fprintf(fcode, "R+ "); break; case 4: fprintf(fcode, "R "); break; case 5: fprintf(fcode, "R- "); break; case 6: fprintf(fcode, "R-- "); break; case 7: fprintf(fcode, "R--- "); break; case 8: fprintf(fcode, "R* "); break; } switch (gc_television) { case 1: fprintf(fcode, "tv+++ "); break; case 2: fprintf(fcode, "tv++ "); break; case 3: fprintf(fcode, "tv+ "); break; case 4: fprintf(fcode, "tv "); break; case 5: fprintf(fcode, "tv- "); break; case 6: fprintf(fcode, "tv-- "); break; case 7: fprintf(fcode, "!tv "); break; } switch (gc_books) { case 1: fprintf(fcode, "b++++ "); break; case 2: fprintf(fcode, "b+++ "); break; case 3: fprintf(fcode, "b++ "); break; case 4: fprintf(fcode, "b+ "); break; case 5: fprintf(fcode, "b "); break; case 6: fprintf(fcode, "b- "); break; case 7: fprintf(fcode, "b-- "); break; } switch (gc_dilbert) { case 1: fprintf(fcode, "DI+++++ "); break; case 2: fprintf(fcode, "DI++++ "); break; case 3: fprintf(fcode, "DI+++ "); break; case 4: fprintf(fcode, "DI++ "); break; case 5: fprintf(fcode, "DI+ "); break; case 6: fprintf(fcode, "DI "); break; case 7: fprintf(fcode, "DI- "); break; case 8: fprintf(fcode, "DI-- "); break; case 9: fprintf(fcode, "DI--- "); break; } switch (gc_doom) { case 1: fprintf(fcode, "D++++ "); break; case 2: fprintf(fcode, "D+++ "); break; case 3: fprintf(fcode, "D++ "); break; case 4: fprintf(fcode, "D+ "); break; case 5: fprintf(fcode, "D "); break; case 6: fprintf(fcode, "D- "); break; case 7: fprintf(fcode, "D-- "); break; case 8: fprintf(fcode, "D--- "); break; case 9: fprintf(fcode, "D---- "); break; } fprintf(fcode, "\n"); /* Line two end */ switch (gc_geekcode) { case 1: fprintf(fcode, "G+++++ "); break; case 2: fprintf(fcode, "G++++ "); break; case 3: fprintf(fcode, "G+++ "); break; case 4: fprintf(fcode, "G++ "); break; case 5: fprintf(fcode, "G+ "); break; case 6: fprintf(fcode, "G "); break; case 7: fprintf(fcode, "G- "); break; case 8: fprintf(fcode, "G-- "); break; } switch (gc_education) { case 1: fprintf(fcode, "e+++++ "); break; case 2: fprintf(fcode, "e++++ "); break; case 3: fprintf(fcode, "e+++ "); break; case 4: fprintf(fcode, "e++ "); break; case 5: fprintf(fcode, "e+ "); break; case 6: fprintf(fcode, "e "); break; case 7: fprintf(fcode, "e- "); break; case 8: fprintf(fcode, "e-- "); break; case 9: fprintf(fcode, "e* "); break; } switch (gc_housing) { case 1: fprintf(fcode, "h++ "); break; case 2: fprintf(fcode, "h+ "); break; case 3: fprintf(fcode, "h "); break; case 4: fprintf(fcode, "h- "); break; case 5: fprintf(fcode, "h-- "); break; case 6: fprintf(fcode, "h--- "); break; case 7: fprintf(fcode, "h---- "); break; case 8: fprintf(fcode, "h! "); break; case 9: fprintf(fcode, "h* "); break; } switch (gc_relationships) { case 1: fprintf(fcode, "r+++ "); break; case 2: fprintf(fcode, "r++ "); break; case 3: fprintf(fcode, "r+ "); break; case 4: fprintf(fcode, "r "); break; case 5: fprintf(fcode, "r- "); break; case 6: fprintf(fcode, "r-- "); break; case 7: fprintf(fcode, "r--- "); break; case 8: fprintf(fcode, "!r "); break; case 9: fprintf(fcode, "r* "); break; case 10: fprintf(fcode, "r%% "); break; } /* Added in v1.2 */ switch (x) { case 1: sex_type="x"; break; case 2: sex_type="y"; break; case 3: sex_type="z"; break; default: sex_type="z"; break; } /* Modified in v1.2 */ switch (gc_sex) { case 1: fprintf(fcode, "%s+++++ ", sex_type); break; case 2: fprintf(fcode, "%s++++ ", sex_type); break; case 3: fprintf(fcode, "%s+++ ", sex_type); break; case 4: fprintf(fcode, "%s++ ", sex_type); break; case 5: fprintf(fcode, "%s+ ", sex_type); break; case 6: fprintf(fcode, "%s ", sex_type); break; case 7: fprintf(fcode, "%s- ", sex_type); break; case 8: fprintf(fcode, "%s-- ", sex_type); break; case 9: fprintf(fcode, "%s--- ", sex_type); break; case 10: fprintf(fcode, "%s* ", sex_type); break; case 11: fprintf(fcode, "%s** ", sex_type); break; case 12: fprintf(fcode, "!%s ", sex_type); break; case 13: fprintf(fcode, "%s? ", sex_type); break; case 14: fprintf(fcode, "!%s+ ", sex_type); break; } fprintf(fcode, "\n"); fprintf(fcode, "------END GEEK CODE BLOCK------\n"); fclose(fcode); } geekcode-1.7.3.orig/geekcode.h0000644000175000017500000000666007700046614016050 0ustar ericeric00000000000000/* geekcode.h - GeekCode Global Header File Geek Code Generator v1.7.3 - Generates your geek code Copyright (C) 1999-2003 Chris Gushue This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef __INCLUDED_GEEKCODE_H__ #define __INCLUDED_GEEKCODE_H__ #define VERSION "1.7.3" /* Added in v1.2 */ #define PAGES 35 /* Page counter: using formula PAGE = PAGES-(PAGES-PAGE) where the second PAGE is the number of the page e.g. PAGE 1 of 35 1 = 35 - (35 - 1) in the code: printf("PAGE %i of %i", PAGES-(PAGES-1), PAGES); */ /* Geek type - gc_type.c */ int get_type(void), gc_type; /* Appearance section - gc_appearance.c */ int get_dress(void), gc_dress; int get_height(void), gc_height; int get_weight(void), gc_weight; int get_age(void), gc_age; /* Computers section - gc_computers.c */ int get_computers(void), gc_computers; int get_unix_type(void), gc_unix_type; /* Added in v1.1 */ int get_unix(int x), gc_unix; int get_perl(void), gc_perl; int get_linux(void), gc_linux; int get_emacs(void), gc_emacs; int get_www(void), gc_www; int get_usenet(void), gc_usenet; int get_oracle(void), gc_oracle; int get_kibo(void), gc_kibo; int get_windows(void), gc_windows; int get_os2(void), gc_os2; int get_mac(void), gc_mac; int get_vms(void), gc_vms; /* Politics section - gc_politics.c */ int get_social(void), gc_social; int get_economic(void), gc_economic; int get_cypher(void), gc_cypher; int get_pgp(void), gc_pgp; /* Entertainment section - gc_entertainment.c */ int get_startrek(void), gc_startrek; int get_babylon5(void), gc_babylon5; int get_xfiles(void), gc_xfiles; int get_rp(void), gc_rp; int get_television(void), gc_television; int get_books(void), gc_books; int get_dilbert(void), gc_dilbert; int get_doom(void), gc_doom; int get_geekcode(void), gc_geekcode; /* Lifestyle section - gc_lifestyle.c */ int get_education(void), gc_education; int get_housing(void), gc_housing; int get_relationships(void), gc_relationships; int get_sex_type(void), gc_sex_type; /* Added in v1.2 */ int get_sex(int x), gc_sex; /* Modified in v1.2 */ char show_sex_type(int x); /* Added in v1.2 */ void show_geekcode(int x); /* Modified in v1.2 */ void write_geekcode(int x); /* Added in v1.7 */ void clear_kb(void); /* Added in v1.3 */ /* Console I/O - gc_consoleio.c */ void clearscreen(); /* geekcode -> English - gc_translate.c */ void translate(char geekcode[64][16], int j); #endif /* __INCLUDED_GEEKCODE_H__ */ geekcode-1.7.3.orig/geekcode.spec0000644000175000017500000000201107700046614016535 0ustar ericeric00000000000000Summary: Generates your geek code. Name: geekcode Version: 1.7.3 Release: 1 Copyright: GPL Group: Amusements/Games Source: http://geekcode.sourceforge.net/geekcode-1.7.3.tar.gz Packager: Chris Gushue BuildRoot: /var/tmp/geekcode-root %description This program will generate a geek code block for you by simply choosing which codes suit you from the screen. %prep %setup -q -n geekcode-1.7.3 %build make %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/usr/bin install -m 755 geekcode $RPM_BUILD_ROOT/usr/bin %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc CHANGES COPYING INSTALL README geekcode.txt /usr/bin/geekcode %changelog * Wed Jun 25 2003 Chris Gushue - created package for version 1.7.2 * Tue Nov 23 1999 Chris Gushue - created new package * Tue Feb 14 2000 Chris Gushue - created package for version 1.6 * Mon Feb 21 2000 Chris Gushue - created package for version 1.7 geekcode-1.7.3.orig/gc_translate.c0000644000175000017500000007612007700046424016740 0ustar ericeric00000000000000#include #include #include "geekcode.h" void sexlife(char sexcode[16]){ if(strncmp(&sexcode[1],"+++++",6)==0) printf("I am Madonna\n"); else if(strncmp(&sexcode[1],"++++",5)==0) printf("I have a few little rug rats to prove I've been there.\n"); else if(strncmp(&sexcode[1],"+++",4)==0) printf("I'm married, so I can get it (theoretically) whenever I want.\n"); else if(strncmp(&sexcode[1],"++",3)==0) printf("I was once referred to as 'easy'.\n"); else if(strncmp(&sexcode[1],"+",2)==0) printf("I've had real, live sex.\n"); else if(sexcode[1]==0) printf("I've had sex. Oh! You mean with someone else? Then no.\n"); else if(strncmp(&sexcode[1],"-",2)==0) printf("Not having sex by choice.\n"); else if(strncmp(&sexcode[1],"--",3)==0) printf("Not having sex because I just can't get any...\n"); else if(strncmp(&sexcode[1],"---",4)==0) printf("Not having sex because I'm a nun or priest.\n"); else if(strncmp(&sexcode[1],"*",2)==0) printf("I'm a pervert.\n"); else if(strncmp(&sexcode[1],"**",3)==0) printf("I've been known to make perverts look like angels.\n"); else if(sexcode[0]=='!' && sexcode[2]==0) printf("Sex? What's that? I've had no sexual experiences.\n"); else if(strncmp(&sexcode[1],"?",2)==0) printf("It's none of your business what my sex life is like\n"); else if(sexcode[0]=='!' && strncmp(&sexcode[2],"+",2)==0) printf("Sex? What's that? No experience, willing to learn!\n"); else printf("WARNING: %s is a unknown sex-geekcode !!!\n",sexcode); } void translate(char geekcode[64][16], int j){ int i; clearscreen(); for(i=0;i