[A83] Re: dested register
[Prev][Next][Index][Thread]
[A83] Re: dested register
When poping or pushing does it always have to be with a register pair, and=
=20
not with a single register?
At 08:42 PM 5/7/2002 -0400, you wrote:
>You can't load B into HL or HL into B. Unless you were meaning to load the
>value at address (HL) into B, you have to load b into h and 0 into l, and
>vice versa. But I didn't look into your code in that much detail, so that's
>what I just spotted.
>
>
>=AB=AB=AB=AB=AB=AB=AB=AB=BB=BB=BB=BB=BB=BB=BB=BB
>Colin Hart
>Xempest@aol.com
>=AB=AB=AB=AB=AB=AB=AB=AB=BB=BB=BB=BB=BB=BB=BB=BB
>
>
> >
> >
> > Well, since the value for the register B is dested.. i thought maybe I
> > could push it before I make a rom call and pop it before the _ipoint=
makes
> > the pixel.
> >
> > However, I get errors like:
> > C:\DEV_PACK>asm pixel
> > ----- Assembling pixel for the TI-83 Plus...
> > TASM Z80 Assembler. Version 3.0.1 June, 1994.
> > Copyright (C) 1985-1994 by Speech Technology Incorporated
> > tasm: pass 1 complete.
> > temp.z80 line 0023: Label not found: (b)
> > temp.z80 line 0023: Unused data in MS byte of argument. (2)
> > temp.z80 line 0044: Label not found: (hl)
> > temp.z80 line 0044: Unused data in MS byte of argument. (200)
> > temp.z80 line 0047: Label not found: (b)
> > temp.z80 line 0047: Unused data in MS byte of argument. (2)
> > temp.z80 line 0053: Label not found: (hl)
> > temp.z80 line 0053: Unused data in MS byte of argument. (200)
> > temp.z80 line 0056: Label not found: (b)
> > temp.z80 line 0056: Unused data in MS byte of argument. (2)
> > temp.z80 line 0072: Label not found: (hl)
> > temp.z80 line 0072: Unused data in MS byte of argument. (200)
> > tasm: pass 2 complete.
> > tasm: Number of errors =3D 12
> > ----- There were errors.
> >
> > C:\DEV_PACK>
> >
> >
> > I dont think 'B' nor 'HL' are lables... so that must not be how you load
> > them... any suggestions?
> > HERE IS THE CODE:
> >
> >
> > .nolist
> > #include "ion.inc"
> > #DEFINE kLeft 02h
> > #DEFINE kRight 01h
> > #DEFINE kUp 03h
> > #DEFINE kDown 04h ;All these guys are hex code
> > #DEFINE kEnter 05h ;for keys on the Ti-keyboard.
> > #DEFINE kClear 09h
> > .list
> > #ifdef TI83P
> > .org progstart-2
> > .db $BB,$6D
> > #else
> > .org progstart
> > #endif
> > ret
> > jr nc,begin
> > .db "Pixel Mover",0
> > begin:
> > bcall(_clrLCDFull) ;Clear the screen.
> > ld b,47
> > ld hl,b
> > push hl
> > ld c,47
> > ld d,1 ;Set D to 1.
> > bcall(_IPoint)
> > GetKey:
> > bcall(_getKey) ;Asked for a key.
> > cp kLeft ;Compare key with code for left.
> > jp z,Left ;If equals 0, go to left.
> > cp kRight
> > jp z,Right
> > cp kUp
> > jp z,Up
> > cp kDown
> > jp z,Down
> > cp kClear
> > jp z,Quit
> > jp GetKey
> > Left:
> > ld d,0 ;Set D to 0.
> > pop hl
> > ld b,hl
> > bcall(_IPoint)
> > dec b
> > ld hl,b
> > push hl ;Decrement B
> > jp Draw
> > Right:
> > ld d,0
> > pop hl
> > ld b,hl
> > bcall(_IPoint)
> > inc b
> > ld hl,b
> > push hl
> > jp Draw
> > Up:
> > ld d,0
> > bcall(_IPoint)
> > inc c
> > jp Draw
> > Down:
> > ld d,0
> > bcall(_IPoint)
> > dec c
> > jp Draw
> > Draw:
> > ld d,1
> > pop hl
> > ld b,hl
> > bcall(_IPoint)
> > push hl
> > jp GetKey ;Repeat
> > Quit:
> > ret ;Return to OS.
> > .end
> > END
> >
Follow-Ups:
References: