Re: LF: ASM Question...Help please...
[Prev][Next][Index][Thread]
Re: LF: ASM Question...Help please...
At 10:17 PM 12/2/96 -0500, you wrote:
>
>
>On Mon, 2 Dec 1996, Parham Sabetazm wrote:
>
>> Hi,
>> I would appreciate it if someone could tell me how to write a for loop
>> in 68k Assembly? I have the help card and the PDF file from Motorolla
>> and they don't really help me that much. If you can, can you convert the
>> following TI-BASIC program into 68k Assembly? Thanks!
>> By the way, I would also appreciate it if you could attach the asm file
>> of the program below with comments in it. Thanks alot!
>> I am sorry if this is a really stupid question, but I am new to 68k
>> assembly...
>>
>> tester()
>> Prgm
>> ClrHome (Or ClrDraw, whichever clears the screen in Asm)
>> For x,1,500
>> Disp x
>> Pause
>> EndFor
>> DelVar x
>> EndPrgm
>>
>>
>> -Parham Sabetazm
>> Chairman and CEO of ESI
>> Member: Microsoft Sitebuilder Network Level 2
>> Member: Team Gates
>>
>> *******************************************************
>> http://www.geocities.com/SiliconValley/5541
>> parhams@geocities.com
>> parham@juno.com
>> parham@america.net
>> *******************************************************
>>
>
> In 68k ASM on the TI-92, this simple program is very difficult to
>write indeed! Here are a couple of things to consider:
>
>1) There exists no easy way to print a number to the screen, ESP. not in
>decimal. Perhaps try sprintf to convert to decimal, and then puttext to
>output it to screen. Still, not trivial.
>
>2) Once you get to the screen, scrolling, if needed, is a pain... As with
>No. 1, there is no ROM call that will scroll the screen (I think...).
>This is tough...
>
>3) Reading keys is also a bit hard (The Pause statement...)
>
> For the other, (Correct me if I'm wrong, guys), FOR
>loops are relatively simple:
>
> <Fargo setup info, etc>
>
> EVEN ; Protect against "Address Error"
>startTester: ; Starting line of our Proc
>
> ; Let D3 be our loop counter
> ; Note, D0-D7 are choices,
> ; But D0, D1 are popular for other things.
> MOVE.L #1, D3 ; Move 1 into Data register 3
>Loop1:
> blah blah blah blah
> blah blah blah blah ; Program code to print #, pause.
> blah blah blah blah
>
> CMP.L #500, D3 ; Compare our loop counter to 500
> BLE Loop1 ; If it is less, or equal,
> ; go back to D3.
> ; (I may have the BLE opcode wrong...)
>
> RTS ; (And, finally, ReTurn from Subroutene)
>
> If I can help with anything else, ask ... at present, I am still a
>novice at this too, though.
> BTW -- Nice Credentials list... What do they mean? (Except CEO...I
>know what that means)
>
> -- Shawn Walker (swalker@joe.math.uga.edu)
>
>
Another question...
How do you do sine, cosine, tangent and arctangent functions?