This is an archived, read-only copy of the United-TI subforum , including posts and topic from May 2003 to April 2012. If you would like to discuss any of the topics in this forum, you can visit Cemetech's z80 & ez80 Assembly subforum. Some of these topics may also be directly-linked to active Cemetech topics. If you are a Cemetech member with a linked United-TI account, you can link United-TI topics here with your current Cemetech topics.

This forum is locked: you cannot post, reply to, or edit topics. Z80 & 68k Assembly => z80 & ez80 Assembly
Author Message
cjgone
Aw3s0m3


Active Member


Joined: 24 May 2006
Posts: 693

Posted: 09 Aug 2008 01:38:34 am    Post subject:

how do i make an application? one pagw app, 2 page app, ?
Back to top
fourchanb


Advanced Newbie


Joined: 24 Sep 2006
Posts: 93

Posted: 09 Aug 2008 05:05:31 am    Post subject:

Find the Dwedit application development kit in ticalc or Dwedits website.
Back to top
luby
I want to go back to Philmont!!


Calc Guru


Joined: 23 Apr 2006
Posts: 1477

Posted: 09 Aug 2008 09:22:47 am    Post subject:

Well, It's very similar to making a z80 program except it needs a header.

;Include file needed to access system routines
#include "ti83plus.inc"
randData .equ appbackupscreen+450
.org $4000
.db 080h, 00Fh
.db 000h, 000h, 000h, 000h
.db 080h, 012h
.db 001h, 004h
.db 080h, 021h
.db 001h
.db 080h, 031h
.db 001h
.db 080h, 048h
.db "GamePack"
.db 080h, 081h
.db 001h
.db 080h, 090h
.db 003h, 026h, 009h, 004h
.db 015h, 04Ch, 03Eh, 069h
.db 002h, 00Dh, 040h, 0A1h, 06Bh, 099h, 0F6h, 059h, 0BCh, 067h
.db 0F5h, 085h, 09Ch, 009h, 06Ch, 00Fh, 0B4h, 003h, 09Bh, 0C9h
.db 003h, 032h, 02Ch, 0E0h, 003h, 020h, 0E3h, 02Ch, 0F4h, 02Dh
.db 073h, 0B4h, 027h, 0C4h, 0A0h, 072h, 054h, 0B9h, 0EAh, 07Ch
.db 03Bh, 0AAh, 016h, 0F6h, 077h, 083h, 07Ah, 0EEh, 01Ah, 0D4h
.db 042h, 04Ch, 06Bh, 08Bh, 013h, 01Fh, 0BBh, 093h, 08Bh, 0FCh
.db 019h, 01Ch, 03Ch, 0ECh, 04Dh, 0E5h, 075h
.db 080h, 07Fh
.db 000h, 000h, 000h, 000h
.db 000h, 000h, 000h, 000h
.db 000h, 000h, 000h, 000h
.db 000h, 000h, 000h, 000h
.db 000h, 000h, 000h, 000h


;End of header data
StartApp: ;The app starts here
;your code here

then, instead of ret, do b_jump(_JForceCmdNoChar).


Last edited by Guest on 30 Jul 2010 05:08:47 am; edited 1 time in total
Back to top
Liazon
title goes here


Bandwidth Hog


Joined: 01 Nov 2005
Posts: 2007

Posted: 09 Aug 2008 09:42:41 am    Post subject:

user spasm and app.inc

then just put


Code:
defpage(0,<APP NAME>)

defpage(<page#>);goes on future pages.
Back to top
cjgone
Aw3s0m3


Active Member


Joined: 24 May 2006
Posts: 693

Posted: 09 Aug 2008 01:53:51 pm    Post subject:

Quote:
;Include file needed to access system routines


What file would that be?
Back to top
bfr


Member


Joined: 13 Feb 2006
Posts: 108

Posted: 09 Aug 2008 02:04:57 pm    Post subject:

cjgone wrote:
Quote:
;Include file needed to access system routines


What file would that be?
[post="125860"]<{POST_SNAPBACK}>[/post]


ti83plus.inc, I think.
Back to top
cjgone
Aw3s0m3


Active Member


Joined: 24 May 2006
Posts: 693

Posted: 09 Aug 2008 03:04:23 pm    Post subject:

oh can tasm not make apps? -.-
Back to top
magicdanw
pcGuru()


Calc Guru


Joined: 14 Feb 2007
Posts: 1110

Posted: 09 Aug 2008 04:06:53 pm    Post subject:

Luby gave you the code to do an app in tasm.
Back to top
cjgone
Aw3s0m3


Active Member


Joined: 24 May 2006
Posts: 693

Posted: 09 Aug 2008 04:54:59 pm    Post subject:

i dunno what that means

how do i assemble the app? i tried the normal "asm" thing but that don't work. gives me some error of no end directive
Back to top
Liazon
title goes here


Bandwidth Hog


Joined: 01 Nov 2005
Posts: 2007

Posted: 09 Aug 2008 05:33:23 pm    Post subject:

tasm can do apps, but you have to create the header yourself, which luby gave you the template for. and iirc, you'll need to use wappsign or whatever ti calls it to actually SIGN the app.

don't forget that the output should be .8xk
Back to top
luby
I want to go back to Philmont!!


Calc Guru


Joined: 23 Apr 2006
Posts: 1477

Posted: 09 Aug 2008 09:31:46 pm    Post subject:

did you add a .end to after your code?? (btw, you don't need randData .equ appbackupscreen+450, that was part of the program I ripped it from)
Back to top
cjgone
Aw3s0m3


Active Member


Joined: 24 May 2006
Posts: 693

Posted: 09 Aug 2008 10:32:56 pm    Post subject:

whats wabbitsign

link plz
Back to top
Liazon
title goes here


Bandwidth Hog


Joined: 01 Nov 2005
Posts: 2007

Posted: 09 Aug 2008 11:02:46 pm    Post subject:

if you're using TASM, what are you using for a linker?

and wabbitsign was revsofts linker/app signer but it's been integrated into SPASM. it is based on wappsign, which is made by TI.

apps need to be "signed" in order to work iirc, along w/ other weirdness.


Last edited by Guest on 09 Aug 2008 11:03:21 pm; edited 1 time in total
Back to top
Madskillz


Active Member


Joined: 02 Jan 2004
Posts: 608

Posted: 09 Aug 2008 11:57:47 pm    Post subject:

If your using dwedit's tools to assemble an app you type:

asmapp (Your name of APP)

Dwedit also includes an include file with for all the shells and the vflashapp.


Here's how I start out my app:

Code:
#DEFINE APPNAME "MLCSHELL"
#DEFINE APPPAGES 1



#include "dwedit.inc"

curcont = saferam3
current = saferam3+1



StartApp:
*Code goes here.

Quit:
   bjump(_JForceCmdNoChar)


Last edited by Guest on 10 Aug 2008 12:00:57 am; edited 1 time in total
Back to top
Spencer


Advanced Newbie


Joined: 06 Nov 2005
Posts: 99

Posted: 10 Aug 2008 12:00:07 am    Post subject:

There are a lot of mixed messages on this forum. To make an APP, you need an assembler and an APP signer. We sign APPs with a free key, so anyone can load them onto their calculators.

The easiest way is to use SPASM or one of Brass's templates. Here's an example of a two page APP with SPASM.

Code:
#include "app.inc"
defpage(0, "Test")

  .db "This is page one."

defpage(1)

 .db "This is page two."
 .block 1337

validate(); This will make sure you have enough room for a signature
You can assemble this in a command prompt: spasm test.z80 test.8xk. Both of these assemblers include an APP signer an will automatically sign it for you.

You can use TASM but it will be more difficult.

http://group.revsoft.org/app.inc
http://group.revsoft.org/spasm.exe
Back to top
cjgone
Aw3s0m3


Active Member


Joined: 24 May 2006
Posts: 693

Posted: 10 Aug 2008 01:06:37 pm    Post subject:


Code:
#include ti83plus.inc
#include "app.inc"
defpage(0, "yo")


   ld hl,txt
   bcall(_PutS)
   bcall(_getkey)
   bjump(_JForceCmdNoChar)
txt:
   .db "HELLO!",0

defpage(1)

.db "This is page two."
.block 1337

validate(); This will make sure you have enough room for a signature


Does SPASM sign the App, cuz I get really nothing ouput on screen when i run this code?


Last edited by Guest on 10 Aug 2008 01:07:04 pm; edited 1 time in total
Back to top
magicdanw
pcGuru()


Calc Guru


Joined: 14 Feb 2007
Posts: 1110

Posted: 10 Aug 2008 01:33:15 pm    Post subject:

PutS doesn't work in apps, because PutS can only read from ram. You can either copy the string to saferam, or write your own PutS routine that loops through PutC.
Back to top
Liazon
title goes here


Bandwidth Hog


Joined: 01 Nov 2005
Posts: 2007

Posted: 10 Aug 2008 05:13:56 pm    Post subject:

remember that bcalls are stored on another ROM page, making passing a pointer to ROM pretty much useless. this applies to bcalls that you create for your app as well, provided the code is located on another page. that being said, if it's on the same page, might as well use call instead.

edit:

so what's the special project? a big rpg?


Last edited by Guest on 10 Aug 2008 05:27:10 pm; edited 1 time in total
Back to top
WikiGuru
ADOS (Attention deficit... Oh! Shiny!)


Elite


Joined: 15 Sep 2005
Posts: 923

Posted: 11 Aug 2008 01:11:47 am    Post subject:

Probably a little late, but you can check here for a few things about application programming. I think a lot of it's out-dated because more recent compilers (such as spasm and brass) both have directives that do most of this stuff for you (mostly stuff dealing with multi-page apps). But, if you're interested... It does go into a few details about what the app header actually is, how to create multi-page apps "by hand" (what's happening behind the scenese of the directives) and a few problems with application programming.
Back to top
Cryzbl


Newbie


Joined: 20 Jun 2008
Posts: 46

Posted: 11 Aug 2008 07:01:55 pm    Post subject:

Even more late, but I can help here to as I have a working App (compiled with brass3) and I know most (I think) of the specifics when dealing with Flash as well.
Back to top
Display posts from previous:   
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
    » Goto page 1, 2  Next
» View previous topic :: View next topic  
Page 1 of 2 » All times are UTC - 5 Hours

 

Advertisement