Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!samsung!spool2.mu.edu!news.cs.indiana.edu!msi.umn.edu!cs.umn.edu!uc!noc.MR.NET!gacvx2.gac.edu!hhdist From: postmaster.DUNG_BEETLE@gateway.qm.apple.com (postmaster) Newsgroups: comp.sys.handhelds Subject: Steve Winters :Unknown QM u Message-ID: <9101032119.AA09450@internal.apple.com> Date: 3 Jan 91 19:23:39 GMT Lines: 310 To: handhelds@gac.edu Return-path: To: handhelds@gac.edu Mail*Link#170# Steve Winters :Unknown QM u Received: by gateway.qm.apple.com; 3 Jan 91 13:23:36 Received: from apple.com by goofy.apple.com with SMTP (5.61/25-eef) id AA09414; Thu, 3 Jan 91 13:19:04 -0800 for Steve_Winters.PERIPH_PROJ@gateway.qm.apple.com Received: from gacvx2.gac.edu by apple.com with SMTP (5.61/25-eef) id AA04456; Thu, 3 Jan 91 07:24:41 -0800 for Steve_Winters.PERIPH_PROJ@gateway.qm.apple.com Date: Thu, 3 Jan 1991 08:51 CST From: handhelds@gac.edu Subject: New Tetris Sender: NEWSMGR@gacvx2.gac.edu To: HANDHELDS@gacvx2.gac.edu Errors-To: postmaster@gac.edu Reply-To: handhelds@gac.edu Message-Id: <60B1118FA0000525@gacvx2.gac.edu> X-Vms-To: IN%"HANDHELDS@GACVX2.GAC.EDU" Comments: Forwarded from COMP.SYS.HANDHELDS by GACVX2.GAC.EDU Relay-Version: VMS News - V6.0-1 14/11/90 VAX/VMS V5.4; site gacvx2.gac.edu Path: gacvx2.gac.edu!noc.MR.NET!uc!tut.cis.ohio-state.edu!zaphod.mps.ohio-state.edu!wuarchive!sdd.hp.com!hp-pcd!hpcvra.cv.hp.com!rnews!hpcvbbs!akcs.falco Newsgroups: comp.sys.handhelds Subject: New Tetris Message-ID: <2782b69e:1560comp.sys.handhelds@hpcvbbs.UUCP> From: akcs.falco@hpcvbbs.UUCP (Andrey Dolgachev) Date: 3 Jan 91 05:40:08 GMT Keywords: tetris, cool Lines: 281 Well, I'm sorry, this isn't Tetras yet (Though, I'm working on that too, or at least another partial version). However, I did add some simple options and changes. It's based off the latest, partial machine-code version and all due thanks go to the original creators. The differences are: O turns off the calculator, A pauses the game, Q quits the game, and the high score is saved and displayed. I also changed the key layout, which can be rechanged via RK2. All the keys and their functions are displayed on the screen, by the way. Again, these are minor changes, I did not write Tetris, and I give full credit to the original author. By the way, all the usual disclaimers apply, in case your calculator explodes, implodes, turns into a fish, or you become addicted to Tetris. Without further ado, here it is --------Falco --------------Cut here, bitte!----------- %%HP: T(3)A(D)F(.); DIR TETRIS \<< 0 'DONE' STO 0 'HI' STO .101 'a' STO 1 CF MKSCR 0 'PNTS' STO 0 ADDP PICT { # 5d # 15d } HISC 2 \->GROB REPL DO delay FLST RAND 7 * IP 1 + DUP 'OB1' STO GET 1 DUP 'OB2' STO GET # 11d 1 CF DO IF 1 FC? THEN RK2 RK2 RK2 RK2 END IF DONE NOT THEN DUP2 # 0d XFIG # 256d + DUP2 # 0d + TFIG IF # 0d == THEN DUP2 # 63903d XFIG ELSE # 256d - # 63903d XFIG # 0d END END UNTIL DUP # 0d == DONE OR END IF DONE NOT THEN 20 ADDP DROP PACK MEM DROP END UNTIL FULL DONE OR END 2 WAIT WHILE KEY REPEAT DROP END IF HI THEN PNTS 'HISC' STO END DROP2 \>> XFIG "CCD204410034E7507137143818F8E1358BE60691117E818F328FB97601CE1B56 507146134152739E1B20F880029916912014313234E4A201428A2606EB016915 271011741431321428A63E16915271001741431321428A68C1691567AFAAF122 A95118C9AF5BF522A8520A8181D22A82C1201B56507146818F29818F29C91341 19BF2BF2241542BF616F16F1610D880BEBF4BF4BF4AF68AA60688F208F2D7601 42164808CE7C9" TFIG "CCD20E310013606DD061B97507142137135818F098BA606FF014713481AF0914 234E4A208A26060E01691527100E717414381AF2914581AF291321428A26060B 01691567AFAAF1D122A95118C9D5F522A8520A81819F122A82C1201B56507146 818F29818F29C9136AF2156090A90B456E002F308200E49BF4BF4BF4AF68AE09 AF0AF2AC48108087340E68084396840E614313216915472007DD071361421648 08C3CA6" a .099 ADDP \<< 'PNTS' STO+ CHHI PICT { # 5d # 5d } PNTS 2 \->GROB REPL IF HI THEN PICT { # 5d # 16d } PNTS 2 \->GROB REPL END \>> FLST { { # 17802707620356d # 279242096899d # 35399189680388d # 279242096901d } { # 279242096645d # 17802707620357d # 279242097155d # 17806986854917d } { # 206226604548d # 17944425808389d # 279242097157d # 17802707620355d } { # 279241044483d # 17802708664837d } { # 210504794628d # 35399188627717d } { # 52926935483141d # 279242097412d } { # 206226600196d } } FULL \<< # 72356802986000645d # 778d DUP2 # 0d + TFIG ROT ROT # 5d + TFIG + # 0d > \>> MKSCR \<< PICT PURGE { # 84d # 60d } { # 84d # 0d } OVER LINE { # 43d # 60d } DUP ROT LINE { # 43d # 0d } LINE PICT { # 88d # 0d } IPIC REPL PICT { # 0d # 37d } KPIC REPL PICT { # 0d # 0d } SPIC REPL { # 0d # 0d } PVIEW \>> MSIDE \<< \-> CD \<< DUP2 # 0d XFIG CD + DUP2 # 0d + TFIG IF # 0d \=/ THEN CD - END DUP2 # 63903d XFIG \>> \>> SPIC GROB 40 27 00000000000000000000EFFFFFFFF3EFFFFFFFF360000000036C1000000362200000036230 0000036A20000003662000000362200000036C100000036000000003EFFFFFFFF360000000 0360170170036898898003649849C003621F29A0036E38EB90036014098003601301700360 00000003EFFFFFFFF3EFFFFFFFF300000000000000000000 RK2 \<< IF KEY THEN IF { 72 74 92 63 11 16 33 } SWAP POS DUP THEN { \<< # 1d NEG MSIDE \>> \<< # 1d MSIDE \>> \<< 1 SF \>> ROTF \<< DO UNTIL KEY END DROP \>> \<< 1 'DONE' STO \>> \<< OFF \>> } SWAP GET EVAL ELSE DROP END END a WAIT \>> KPIC GROB 37 25 00000000000000000000CF7000000040400000004E400EEE004A400A22004A455AEE004A40 0A22004E400E22004040000000CF70000000000000000000000000000000000000CF700000 0040400000004E400E2D0042400225104E455E6510424002A51042400E2D004040000000CF 7000000000000000000000000000 IPIC GROB 43 63 000000000000EFFFFFFFF700A48080012500EFFFFFFFF700000000000000EFE7F7F9C30001 20801A24000120801A20000120801A200001E380F9C3000120805804000120809804000120 8019240001E7801AC300000000000000EFFFFFFFF700A48080012500EFFFFFFFF700000000 000000000000000000000000000000EF300000000020200000000022200325670025200555 110027AA23752300252001554100252001573700202000000000EF30000000000000000000 000000000000000008870000000008580000000008301000000008701000000008F0100000 0000000000000000FF10000000001010000000009310000000009210000000009310000000 009210000000009310000000001010000000FFFFFF10000210101090000390939391008392 92909300C7939293D70083129292930003129393910002101010900000FFFFFF1000000000 0000000000010000000000010000000000EF0000000000C700000000008300000000000100 0000000000000000 PPAR { (-6.5,-3.1) (6.5,3.2) X 0 (0,0) FUNCTION Y } CHHI \<< IF PNTS HISC > THEN 1 'HI' STO END \>> HI 0 HISC 4940 DONE 0 OB1 2 OB2 3 P2 \<< 100 ADDP DUP # 3840d AND SRB 4 * 3 + # 40d SWAP 2 \->LIST PICT SWAP { # 85d # 8d } SUB PICT { # 40d # 12d } ROT REPL \>> PACK \<< # 3338d DO TLIN IF # 4d == THEN P2 ELSE # 256d - END UNTIL DUP # 512d < END DROP \>> PNTS 20 ROTF \<< DUP2 # 0d XFIG FLST OB1 GET OB2 1 - IF DUP 0 \<= THEN DROP DUP SIZE END DUP \-> OS2 \<< GET SWAP DUP2 # 0d + TFIG IF # 0d == THEN ROT DROP OS2 'OB2' STO ELSE SWAP DROP END DUP2 # 63903d XFIG \>> \>> TLIN \<< DUP # 72356802986000645d SWAP DUP2 # 0d + TFIG ROT ROT # 5d + TFIG + \>> delay \<< a .001 - DUP IF 0 \<= THEN 0 'a' STO DROP ELSE 'a' STO END \>> END ------------------That's all folkes------------ p.s. You have to ASC\-> TFIG and XFIG.