--- title: "Psychology Test" id: 56858 type: "computer_media" slug: "psychology-test" url: "http://localhost/computer_media/psychology-test/" markdown_url: "http://localhost/computer_media/psychology-test.md" published_at: "2024-09-29T12:20:15+00:00" modified_at: "2026-04-03T07:58:49+00:00" author: "David Anderson" featured_image: url: "http://localhost/wp-content/uploads/2024/09/326_PT.png" excerpt: "A tongue-in-cheek personality test displays five abstract ASCII designs and delivers a blunt psychological analysis based on how you interpret each one." category: - name: "Archived Media" slug: "archived-media" taxonomy: "category" url: "http://localhost/category/archived-media/" post_tag: - name: "Downloadable" slug: "downloadable" taxonomy: "post_tag" url: "http://localhost/tag/downloadable/" - name: "TS 1000" slug: "ts1000" taxonomy: "post_tag" url: "http://localhost/tag/ts1000/" model: - name: "Timex/Sinclair 1000" slug: "ts-1000" taxonomy: "model" url: "http://localhost/model/ts-1000/" genre: - name: "Entertainment" slug: "entertainment" taxonomy: "genre" url: "http://localhost/type/entertainment/" media_contents: - id: 56738 title: "Timex Sinclair Public Domain Library Tape 1007" type: "computer_media" url: "http://localhost/computer_media/timex-sinclair-public-domain-library-tape-1007/" media_type: "Program" mediadate: "198x" images: - url: "http://localhost/wp-content/uploads/2024/09/326_PT.png" media_type_tags: "Entertainment" --- This program implements a five-question pseudo-psychology test that presents abstract ASCII designs and asks the user to interpret them, then delivers a “psycho-analysis” based on the answers. Each test displays a simple ASCII pattern — a diamond cross, a bordered rectangle with diagonal lines, a staircase shape, a partial staircase, and two vertical parallel lines — using TAB positioning and FOR/NEXT delay loops. Answers are collected as numeric choices or Y/N strings, converted to numeric flags, and evaluated with a series of IF/GOTO branches to print one of two or more personality verdicts for each trait. The fifth question scores a self-reported line-crossing count against four thresholds to produce a tiered result. *** ## Program Analysis ### Program Structure The program is divided into three broad phases: an introduction (lines 100–172), five sequential test screens (lines 175–692), and a results/analysis section (lines 694–1070). Each test clears the screen, draws an ASCII graphic, pauses briefly, then solicits one answer before moving to the next test. 1. **Introduction** (100–172): Multi-line PRINT statements explain the test; INPUT Z$ waits for Enter. 2. **Test 1** (180–270): Diamond/cross shape via TAB; INPUT A (1 or 2). 3. **Test 2** (276–438): Rectangle border with diagonal lines using TAB; INPUT B$ (“Y”/”N”) converted to B=1/0. 4. **Test 3** (442–556): Staircase shape; INPUT C$ converted to C=1/0. 5. **Test 4** (560–640): Partial staircase; INPUT D (1 or 2). 6. **Test 5** (646–692): Two parallel vertical lines of commas; INPUT E (numeric). 7. **Analysis** (694–1070): IF/GOTO chain evaluates A, B, C, D, E and PRINTs trait verdicts. ### ASCII Graphics Technique All five test designs are rendered entirely with PRINT and TAB. Test 1 uses TAB 15 and TAB 14 to centre a small X cross. Test 2 combines a full-width asterisk border (`PRINT "********************************"`) with diagonal X characters positioned symmetrically using two TAB values per line, creating a parallelogram effect inside the border. Tests 3 and 4 use repeated comma characters and dash strings to form descending staircase shapes. Test 5 prints ten rows of `", ,"` to suggest two parallel vertical lines. ### Delay Loops Each test uses a software delay loop of the form `FOR P=1 TO 350 : NEXT P` (lines 204–206, 402–404, 512–514, 608–609, 672–674) to pause briefly after drawing the graphic before printing the question. A shorter loop of 250 iterations is used at line 710–712 for the “stand by” delay. These are busy-wait loops with no PAUSE statement, which was a common technique on machines without a convenient timed-pause instruction in BASIC. ### Input Handling and Variable Conversion Tests 2 and 3 accept string inputs (B$ and C$) and immediately convert them to integer flags with paired IF statements: - `IF B$="Y" THEN LET B=1` / `IF B$="N" THEN LET B=0` - `IF C$="Y" THEN LET C=1` / `IF C$="N" THEN LET C=0` This conversion allows the analysis section to use straightforward numeric comparisons. Tests 1 and 4 collect numeric values directly into A and D. Test 5 collects a count into E. ### Analysis Logic The analysis (lines 720–1060) is a linear IF/GOTO chain. Each trait is evaluated independently; there is no scoring accumulation. The branching pattern is: | Variable | Condition | Verdict | | --- | --- | --- | | A | A=1 | Self-centered / selfish | | A | A≠1 | Not self-centered | | B | B=1 | Social-minded | | B | B=0 | Prefers solitude | | C | C=1 | Conformist | | C | C≠1 | Non-conformist | | D | D=2 | Mechanical-minded | | D | D≠2 | Concerned for living things | | E | E≤3 | Very weak sex drive | | E | E≤6 | Medium low sex drive | | E | E≤10 | Medium high sex drive | | E | E>10 | “Very, very strong” (falls through) | The E thresholds are evaluated in ascending order at lines 940–944, with fall-through to line 950 for values above 10. ### Bugs and Anomalies - **No input validation**: If the user enters a value other than 1 or 2 for A or D, or something other than Y/N for B$/C$, the program may print no verdict for that trait or behave unexpectedly. For B$ and C$, the flags B and C will remain at their default value of 0. - **String spacing in PRINT**: Several PRINT statements concatenate strings with deliberate extra spaces inside the literals to force line-wrapping at desired points (e.g., `"THERE ARE FIVE SHORT TEST. EACH TEST WILL BE SOME"` continuing onto the next PRINT). This was a common technique to control text flow on a 32-column display. - **Spelling errors**: “COMPLEAT” (line 700), “SENCE” (line 740), “VARY” for “very” (lines 950, 970), “OPPOSIT” (line 980), and “DONT” without apostrophe appear throughout. These are original to the program. - **Lines 1080–1100**: After `STOP` at line 1070, lines 1080 (`CLEAR`), 1090 (`SAVE "1032%6"`), and 1100 (`RUN`) are unreachable during normal execution and appear to be utility/maintenance lines left in the listing. ## Source Code ``` 100 CLS 110 PRINT "THIS IS A PSYCHOLOGY TEST." 115 PRINT 120 PRINT "THERE ARE FIVE SHORT TEST. EACH TEST WILL BE SOME"; 130 PRINT " DESIGN. YOU ARE TO MAKE A PICTURE OUT OF THEDESIGN."; 140 PRINT " AFTER YOU DRAW THE PICTURE, YOU WILL ANSWER A QUESTION"; 150 PRINT " ON WHAT YOU DREW. AFTERTHE FIVE TESTS ARE OVER,"; 160 PRINT " THE COMPUTER WILL MAKE AN ANALYSIS OF YOU." 165 PRINT 166 PRINT 170 PRINT "HIT -ENTER- TO BEGIN..." 172 INPUT Z$ 175 CLS 180 PRINT "TEST NO.1" 185 PRINT 190 PRINT TAB 15;"X";TAB 14;"XXX";TAB 14;"XXX"; 200 PRINT TAB 15;"X" 201 PRINT 202 PRINT 204 FOR P=1 TO 350 206 NEXT P 210 PRINT "-------------------------------" 212 PRINT 230 PRINT "THE DOT IN THE MIDDLE OF THE TEST BLOCK"; 240 PRINT " REPRESENTS IN YOUR PICTURE..." 245 PRINT 250 PRINT "(1) THE CENTRAL SUBJECT" 255 PRINT 260 PRINT "(2) THE RIGHT OR LEFT OF THE SUBJECT" 270 INPUT A 272 CLS 274 PRINT 276 PRINT "TEST NO.2" 278 PRINT 280 PRINT "********************************" 290 PRINT TAB 5;"X";TAB 26;"X" 300 PRINT TAB 4;"X";TAB 27;"X" 310 PRINT TAB 3;"X";TAB 28;"X" 320 PRINT TAB 2;"X";TAB 29;"X" 325 PRINT 340 PRINT 360 PRINT TAB 2;"X";TAB 29;"X" 370 PRINT TAB 3;"X";TAB 28;"X" 380 PRINT TAB 4;"X";TAB 27;"X" 390 PRINT TAB 5;"X";TAB 26;"X" 400 PRINT "********************************" 402 FOR P=1 TO 350 404 NEXT P 410 PRINT 420 PRINT "IN YOUR PICTURE ARE THE FOUR CORNERS CONNECTED ?" 430 PRINT 432 PRINT "PRESS Y (YES) OR N (NO)" 434 INPUT B$ 436 IF B$="Y" THEN LET B=1 438 IF B$="N" THEN LET B=0 440 CLS 442 PRINT 444 PRINT "TEST NO.3" 450 PRINT 460 FOR I=1 TO 4 462 PRINT TAB 29;"," 464 NEXT I 472 PRINT TAB 25;"----" 480 FOR I=1 TO 4 482 PRINT TAB 24;"," 484 NEXT I 490 PRINT TAB 20;"----" 500 FOR I=1 TO 4 502 PRINT TAB 19;"," 504 NEXT I 510 PRINT TAB 15;"----" 512 FOR P=1 TO 350 514 NEXT P 540 PRINT "IN YOUR PICTURE DOES THE DESIGN REPRESENT STAIRS ?" 545 PRINT 550 PRINT "PRESS Y (YES) OR N (NO)" 552 INPUT C$ 554 IF C$="Y" THEN LET C=1 556 IF C$="N" THEN LET C=0 560 CLS 562 PRINT 564 PRINT "TEST NO.4" 566 PRINT 580 FOR I=1 TO 5 582 PRINT TAB 29;"," 584 NEXT I 590 PRINT TAB 25;"----" 600 FOR I=1 TO 4 602 PRINT TAB 24;"," 604 NEXT I 606 PRINT 608 FOR P=1 TO 350 609 NEXT P 620 PRINT "THE SUBJECT OF YOUR PICTURE IS.." 622 PRINT 630 PRINT "(1) AN ANIMAL OR PERSON" 632 PRINT 634 PRINT "(2) SOMETHING MECHANICAL" 640 INPUT D 642 CLS 644 PRINT 646 PRINT "TEST NO.5" 650 PRINT 660 FOR I=1 TO 10 662 PRINT TAB 13;", ," 664 NEXT I 670 PRINT 672 FOR P=1 TO 350 674 NEXT P 680 PRINT "HOW MANY TIMES IN YOUR PICTURE DID YOU DRAW A LINE WHICH"; 690 PRINT " CROSSED BOTH PARALLEL LINES" 692 INPUT E 694 CLS 696 PRINT 700 PRINT TAB 8;"TEST COMPLEAT" 705 PRINT AT 11,9;"**STAND BY**" 710 FOR I=1 TO 250 712 NEXT I 714 CLS 716 PRINT AT 1,9;"PSYCHO ANALYSIS" 718 PRINT 720 IF A=1 THEN GOTO 750 730 PRINT "YOU ARE NOT SELF-CENTERED, AND HAVE A "; 740 PRINT "GOOD SENCE OF DESIGN." 742 PRINT 744 GOTO 760 750 PRINT "YOU ARE SELF-CENTERED,AND HAVE SELFISH TENDENCIES." 760 IF B=0 THEN GOTO 790 770 PRINT "YOU ENJOY PEOPLES COMPANY, AND ARE SOCIAL-MINDED." 780 GOTO 820 790 PRINT "YOU PREFER TO BE ALONE AT TIMES,AND ARE NOT A PARTY TYPE." 820 IF C=1 THEN GOTO 860 830 PRINT "YOU ARE A NON-CONFORMIST, AND ENJOY DOING THINGS"; 840 PRINT " BECAUSE YOU LIKE THEM, NOT BECAUSE YOU ARE"; 850 PRINT " INFLUENCED BY OTHERS." 852 GOTO 870 860 PRINT "YOU ARE A CONFORMIST, AND YOU FOLLOW THE CROWD." 870 PRINT 880 IF D=2 THEN GOTO 910 890 PRINT "YOU ARE NOT MECHANICAL-MINDED, BUT YOU ARE "; 900 PRINT "CONCERNED FOR OTHER LIVING THINGS." 902 GOTO 930 910 PRINT "YOU ARE MECHANICAL MINDED, AND ENJOY WORKING "; 920 PRINT "WITH INANIMATE OBJECTS." 930 PRINT 940 IF E<=3 THEN GOTO 970 942 IF E<=6 THEN GOTO 1000 944 IF E<=10 THEN GOTO 1030 950 PRINT "***WOW*** YOUR SEX DRIVE IS VARY,VARY, STRONG..."; 960 PRINT "THEY BETTER KEEPYOU IN A CAGE." 962 GOTO 1050 970 PRINT "YOU HAVE A VARY WEAK SEX DRIVE, AND YOU PROBABLY "; 980 PRINT "DONT ENJOY THE COMPANY OF MEMBERS OF THE OPPOSIT SEX." 990 GOTO 1050 1000 PRINT "YOUR SEX DRIVE IS MEDIUM LOW. YOU DONT "; 1010 PRINT "MIND BEING WITH MEMBERSOF THE OPPOSITE SEX, "; 1020 PRINT "BUT YOU DONT PREFER IT EITHER." 1022 GOTO 1050 1030 PRINT "YOU HAVE A MEDIUM HIGH SEX DRIVE, AND YOU "; 1040 PRINT "ENJOY BEING WITH MEMBERS OF THE OPPOSITE SEX." 1050 PRINT 1060 PRINT "THIS IS THE END OF YOUR PSYCHO-ANALYSIS." 1070 STOP 1080 CLEAR 1090 SAVE "1032%6" 1100 RUN ```