the cutting room mirror

Slingshot

This page contains no introduction.
What makes this game notable or what is it about? Are you a bad enough dude to save this article?

Uncompiled Source Code#

Two fragments of code are in this game and can be found in the .tzx dump at the following addresses:

0x6F20:

                PBARGR
    RET
PBARGR  LD  (TSTACK),SP
    LD  SP,SCRLOK+62
    SUB 1
    ADC A,1
    LD  B,A
PSHELD  POP HL
    ADD HL,DE
    LD  (HL),-1
    DJNZ    PSHELD
    POP HL
    ADD HL,DE
    LD  (HL),%10111101
    POP HL
    ADD HL,DE
    LD  (HL),%10011001
PSHLDL  POP HL
    ADD HL,DE
    LD  (HL),%10000001
    BIT 7,H
    JR  NZ,PSHLDL
    LD  SP,(TSTACK)
    RET
GETCNT  LD  A,(CNTVEC)
    ADD A,A
        LD  L,A
    LD  H,0
    LD  DE,CNTABL
    ADD HL,DE
    LD  E,(HL)
    INC HL
    LD  D,(HL)
    PUSH    DE
    RET
CNTABL  DEFW    KEYBR1,KEYBR2,KEMPST,INFTWO,CURSOR
KEYBR1  LD  BC,#FBFE
    IN  A,(C)
    AND 1
    LD  D,A
    LD  B,#FD
    IN  A,(C)
    RRA

0x7DE4:

        RL  D
    RL  D
    LD  B,#DF
    IN  A,(C)
    AND 3
    OR  D
    CPL
        AND 15
    LD  D,A
    LD  B,#7F
    IN  A,(C)
    ADD A,A
    ADD A,A
    CPL
    AND 16
    OR  D
    RET
KEMPST  IN  A,(31)
    LD  C,A
    AND #E0
    JR  NZ,KEMPSL
    LD  A,C
KEMPSL  AND 31
    RET
KEYBR2  LD  BC,#FBFE
    CALL    IF2LEF+3
    RET
CURSOR  LD  BC,#EFFE
    LD  D,0
    IN  A,(C)
    RRA
    CALL    NC,SETFIR
    RRA
    RRA
    CALL    NC,SETRIG
    RRA
    CALL    NC,SETUP
    RRA
    CALL    NC,SETDOW
    LD  B,#F7
    IN  A,(C)
    BIT 4,A
    CALL    Z,SETLEF
    LD  A,D
    RET
SETRIG  SET 0,D
    RET
SETLEF  SET 1,D
    RET
SETDOW  SET 2,D
    RET
SETUP   SET 3,D
    RET
SETFIR  SET 4,D
    RET
INFTWO  CALL    IF2RIG
    EX  AF,AF
    CALL    IF2LEF
    LD  C,A
    EX  AF,AF
    OR  C
    RET
IF2RIG  LD  BC,#EFFE
    IN  A,(C)
    LD  C,0
    RRA
    RL  C
    RRA
    RL  C
    RRA
    RL  C
    RRA
    RL  B
    RRA
    RL  C
    RR  B
    RL  C
    LD  A,C
    CPL
    AND 31
    RET
IF2LEF  LD  BC,#F7FE
    IN  A,(C)
    CPL
    LD  C,0
    RRA
    RL  C
    RRA
    RL  C
    ADD A,A
    ADD A,A
    AND #1C
    OR  C
    RET
PCHART  LD  BC,8*256+32
PCHARS  LD  A,(DE)
    OR  (HL)
    LD  (HL),A
    LD  A,B
    LD  B,0
    ADD HL,BC
    LD  B,A
    INC DE
    DJNZ    PCHARS
    RE