I'd try just one .end at the end as mirage.inc has that setup. If that doesn't work I don't have a clue, but I'm sure Kerm could solve this problem for you.
still didnt work. guess ill have to wait and see if Kerm has anything to say on this.
nopaste the files here in their entirety
allright here they all are:

usefull:

Code:

#include "ion.inc"
vputsnl:
   ld a,(penrow)
   ld b,7
   add a,b
   ld (penrow),a
   xor a
   ld (pencol),a
vputs:
  ld a,(hl)
  inc hl
  or a
  ret z
  cp $D6
  jr z,vputsnl
  bcall(_vputmap)
  jr vputs

.end


ion

Code:

; The Ion Include File by Dan Englender

;----> Safe Memory Areas
; saferam1 = 768 bytes (apdram)
; saferam2 = 531 bytes (statram)
; saferam3 = 128 bytes (textmem)
; saferam4 = 66 bytes (ops)
; saferam5 = 10 bytes (imathptrs)

#ifdef   TI83
#define bcall(xxxx)   call xxxx
#define bjump(xxxx)   jp xxxx
_htimesl      =$4382   ; hl=h*l (error if overflow)
usermemoff   =$8565
progstart   =$9327
libstart   =$0002
saferam1   =8265h
saferam2   =858Fh
saferam3   =80C9h
saferam4   =8039h
_getcsc      =$4014
_homeup      =$4775
_newline   =$473D
_darkline   =$4AE0
_indicatorOff   =$4795
_indicatorOn   =$4791
_cleargbuf   =515Bh
_copygbuf   =4B9Ch
_clrlcdf   =4755h
_cleartextshad   =4765h
_clrscr      =4759h
_clrscrf   =475Dh
_iline      =4AE4h
_ipoint      =4AE8h
_ldhlind   =4000h
_divhlby10   =4008h
_cphlde      =4004h
_disphl      =4709h
_divhlbya   =400Ch
_hltimes9   =4146h
_vputmap   =477Dh
_vputs      =4781h
_vputsn      =4785h
_putmap      =4701h
_puts      =470Dh
_putps      =4715h
_putc      =4705h
_getkey      =4CFEh
_getk      =4A18h
_rcly      =4EE0h
_rclx      =4EE8h
_memfree   =441Ah
_chksysvar   =442Ah
_findsym   =442Eh
_creategdb   =4486h
_createprog   =448Ah
_createreal   =4452h
_createstring   =4472h
_delvar      =44AAh
_insertmem   =4432h
_deletemem   =44B2h
_lcdbusy   =4066h
op1      =8039h
op2      =8044h
op3      =804Fh
op4      =805Ah
op5      =8065h
op6      =8070h
imathptr1   =8094h
imathptr2   =8096h
imathptr3   =8098h
imathptr4   =809Ah
imathptr5   =809Ch
progptr      =9319h
cmdshad      =9157h
plotsscreen   =8E29h
symtable   =$FE6E
currow      =800Ch
curcol      =800Dh
pencol      =8252h
penrow      =8253h
curgy      =886Dh
curgx      =886Eh
_op1toop2   =$418E
_op1toop3   =$417E
_op1toop4   =$416E
_op1toop5   =$41BE
_op1toop6   =$41BA
_op2toop1   =$41C2
_op2toop3   =$41F6
_op2toop4   =$4172
_op2toop5   =$41B2
_op2toop6   =$41B6
_op3toop1   =$41A2
_op3toop2   =$417A
_op3toop4   =$416A
_op3toop5   =$41AE
_op4toop1   =$419A
_op4toop2   =$4176
_op4toop3   =$41FA
_op4toop5   =$41AA
_op4toop6   =$4202
_op5toop1   =$419E
_op5toop2   =$4182
_op5toop3   =$41FE
_op5toop4   =$418A
_op5toop6   =$4186
_op6toop1   =$4196
_op6toop2   =$4192
_op6toop5   =$41A6
_op1exop2   =$4306
_op1exop3   =$42FE
_op1exop4   =$4302
_op1exop5   =$42EE
_op1exop6   =$42F2
_op2exop4   =$42F6
_op2exop5   =$42FA
_op2exop6   =$42E6
_op5exop6   =$42EA
_op1set0   =$4286
_op1set1   =$4232
_op1set2   =$4242
_op1set3   =$423A
_op1set4   =$4236
_op2set0   =$4282
_op2set1   =$4252
_op2set2   =$4246
_op2set3   =$422E
_op2set4   =$422A
_op2set5   =$4222
_op2set8   =$421E
_op2setA   =$4226
_op3set0   =$427E
_op3set1   =$421A
_op3set2   =$423E
_op4set0   =$427A
_op4set1   =$4216
_op5set0   =$4276
_pushop1   =$454A
_pushop3   =$4542
_popop1      =$44E6
_popop3      =$44E2
_setxxop1   =$4A74
_setxxop2   =$4A78
_setxxxxop2   =$4A7C
_dispop1a   =$51D4
_mov9toop1   =$4206
_convop1   =$4EFC
_zeroop1   =$428E
#endif
#ifdef   TI83P
#define bcall(xxxx)   rst 28h \ .dw xxxx
#define bjump(xxxx)   call 50h \ .dw xxxx
_htimesl   =$4276
_convop1   =$4AEF
_getcsc      =$4018
_darkline   =$47DD
_darkpoint   =$47F2
appBackupScreen   =$9872   ; 768 bytes
tempSwapArea   =$82A5
usermemoff   =$89EC
libstart   =$0004
progstart   =9D95h
saferam1   =9872h
saferam2   =858fh
saferam3   =80C9h
saferam4   =8039h
_homeup      =$4558
_newline   =$452E
_cleargbuf   =4BD0h
_indicatorOn   =456Dh
_indicatorOff   =4570h
_copygbuf   =486Ah
_clrlcdf   =4540h
_cleartextshad   =454Ch
_clrscr      =4543h
_clrscrf   =4546h
_iline      =47E0h
_ipoint      =47E3h
_ldhlind   =$4009
_divhlby10   =400Fh
_cphlde      =400Ch
_disphl      =4507h
_divhlbya   =4012h
_hltimes9   =40F9h
_vputmap   =455Eh
_vputs      =4561h
_vputsn      =4564h
_putmap      =4501h
_puts      =450Ah
_putps      =4510h
_putc      =4504h
_getkey      =4972h
_getk      =4744h
_rclx      =$4AE0
_rcly      =$4ADA
_memfree   =$42E5
_chksysvar   =42F1h
_findsym   =42F4h
;_CREATEGDB   =4486h
_createreal   =$430F
_createstring   =$4327
_createprog   =$4339
_createprotprog   =$4E6D
_delvar      =4351h
_insertmem   =42F7h
_deletemem   =4357h
_lcdbusy   =4051h
op1      =8478h
op2      =8483h
op3      =8499h
op4      =8499h
op5      =84A4h
op6      =84AFh
imathptr1   =84D3h
imathptr2   =84D5h
imathptr3   =84D7h
imathptr4   =84D9h
imathptr5   =84DBh
progptr      =9830h
cmdshad      =966Eh
plotsscreen   =9340h
symtable   =$FE6E
currow      =844Bh
curcol      =844Ch
pencol      =86D7h
penrow      =86D8h
curgy      =8D18h
curgx      =8D19h
_cpop1op2   =$4111
_op3toop4   =$4114
_op1toop4   =$4117
_op2toop4   =$411A
_op4toop2   =$411D
_op3toop2   =$4120
_op1toop3   =$4123
_op5toop2   =$4126
_op5toop6   =$4129
_op5toop4   =$412C
_op1toop2   =$412F
_op6toop2   =$4132
_op6toop1   =$4135
_op4toop1   =$4138
_op5toop1   =$413B
_op3toop1   =$413E
_op6toop5   =$4141
_op4toop5   =$4144
_op3toop5   =$4147
_op2toop5   =$414A
_op2toop6   =$414D
_op1toop6   =$4150
_op1toop5   =$4153
_op2toop1   =$4156
_op2toop3   =$416E
_op4toop3   =$4171
_op5toop3   =$4174
_op4toop6   =$4177
_zeroop1   =$41C5
_zeroop2   =$41C8
_zeroop3   =$41CB
_setxxop1   =$478C
_setxxop2   =$478F
_setxxxxop2   =$4792
_dispop1a   =$4BF7
_mov9toop1   =$417A
_pushop1   =$43C9
_popop1      =$437E
#endif
grbuf      =plotsscreen
graph_mem   =plotsscreen
gbuf      =plotsscreen
sram      =saferam1
apdram      =saferam1
statram      =saferam2
statvars   =saferam2
vat      =progptr
saferam5   =imathptr1

_grbufcpy   =_copygbuf
_clrtextshad   =_cleartextshad
_grbufclr   =_cleargbuf
_clrlcdfull   =_clrlcdf
_clrscrnfull   =_clrscrf
_bufcopy   =_copygbuf

;-----> Ion Functions
lVectors   =cmdshad+80
ionVersion   =lVectors
ionRandom   =lVectors+3
ionPutSprite   =lVectors+6
ionLargeSprite   =lVectors+9
ionGetPixel   =lVectors+12
ionFastCopy   =lVectors+15
ionDetect   =lVectors+18
ionDecompress   =lVectors+21

trigflags       .EQU       0           ; IY OFFSET VALUE
trigdeg         .EQU       2
;
plotflags       .EQU       2           ; IY OFFSET VALUE
plotloc         .EQU       1
plotdisp        .EQU       2
;
grfmodeflags    .EQU       2           ; IY OFFSET VALUE
grffuncm        .EQU       4
grfpolarm       .EQU       5
grfparamm       .EQU       6
grfrecurm       .EQU       7
;
graphflags      .EQU       3           ; IY OFFSET VALUE
graphdraw       .EQU       0
graphcursor     .EQU       2
;
grfdbflags      .EQU       4           ; IY OFFSET VALUE
grfdot          .EQU       0
grfsimul        .EQU       1
grfgrid         .EQU       2
grfpolar        .EQU       3
grfnocoord      .EQU       4
grfnoaxis       .EQU       5
grflabel        .EQU       6
;
textflags       .EQU       5           ; IY OFFSET VALUE
textEraseBelow  .EQU       1
textScrolled    .EQU       2
textInverse     .EQU       3
;
onflags         .EQU       9           ; IY OFFSET VALUE
onRunning       .EQU       3
onInterrupt     .EQU       4
;
statflags       .EQU       9           ; IY OFFSET VALUE
statsvalid      .EQU       6
;
fmtflags        .EQU       10          ; IY OFFSET VALUE
fmtExponent     .EQU       0
fmtEng          .EQU       1
;
nummode         .EQU       10          ; IY OFFSET VALUE
FMTREAL         .EQU       5
FMTRECT         .EQU       6
FMTPOLAR        .EQU       7
;
curflags        .EQU       12          ; IY OFFSET VALUE
curAble         .EQU       2
curOn           .EQU       3
curLock         .EQU       4
;
appflags        .EQU       13          ; IY OFFSET VALUE
appTextSave     .EQU       1
appAutoScroll   .EQU       2
;
PLOTFLAG2       .EQU       17          ; IY OFFSET VALUE
EXPR_PARAM      .EQU       3
EXPR_WRITING    .EQU       4
;
indicflags      .EQU       18          ; IY OFFSET VALUE
indicRun        .EQU       0
indicOnly       .EQU       2
;
shiftflags      .EQU       18          ; IY OFFSET VALUE
shift2nd        .EQU       3
shiftAlpha      .EQU       4
shiftALock      .EQU       6
;
tblflags        .EQU       19          ; IY OFFSET VALUE
AutoFill        .EQU       4
AutoCalc        .EQU       5
;
sgrflags        .EQU       20          ; IY OFFSET VALUE
grfSplit        .EQU       0
VertSplit       .EQU       1
WRITE_ON_GRAPH  .EQU       4
textwrite       .EQU       7
;
asm_flag1       .EQU       33          ; IY OFFSET VALUE
asm_flag1_0     .EQU       0
asm_flag1_1     .EQU       1
asm_flag1_2     .EQU       2
asm_flag1_3     .EQU       3
asm_flag1_4     .EQU       4
asm_flag1_5     .EQU       5
asm_flag1_6     .EQU       6
asm_flag1_7     .EQU       7
;
asm_flag2       .EQU       34          ; IY OFFSET VALUE
asm_flag2_0     .EQU       0
asm_flag2_1     .EQU       1
asm_flag2_2     .EQU       2
asm_flag2_3     .EQU       3
asm_flag2_4     .EQU       4
asm_flag2_5     .EQU       5
asm_flag2_6     .EQU       6
asm_flag2_7     .EQU       7
;
asm_flag3       .EQU       35          ; IY OFFSET VALUE
asm_flag3_0     .EQU       0
asm_flag3_1     .EQU       1
asm_flag3_2     .EQU       2
asm_flag3_3     .EQU       3
asm_flag3_4     .EQU       4
asm_flag3_5     .EQU       5
asm_flag3_6     .EQU       6
asm_flag3_7     .EQU       7


keyval:


Code:

; #########################################
; ## "All the Keys v1.0" by John Wyrwas  ##
; ##       20002016 - 20002019           ##
; #########################################
;
; Includes the Getkey keys values, Getcsc (getk), and Direct Input
; key values.  They start with Gk, G, and K respectively and most contain
; the writing on the key.
;
; To use, unzip in your tasm directory and use #include keyval.inc
;
;
_FPRecip     .equ     4096h
_FPSquare     .equ     4081h
_FPSub       .equ          406Fh

; #################
; ## Getkey Keys ##
; #################
; (the TI-OS does NOT recognize values from lowercase letter input- all are 0FC)
;
;Numbers
Gk0      .equ 8Eh
Gk1      .equ 8Fh
Gk2      .equ 90h
Gk3      .equ 91h
Gk4      .equ 92h
Gk5      .equ 93h
Gk6      .equ 94h
Gk7      .equ 95h
Gk8      .equ 96h
Gk9      .equ 97h
; Uppercase Letters
GkA      .equ 9Ah
GkB      .equ 9Bh
GkC      .equ 9Ch
GkD      .equ 9Dh
GkE      .equ 9Eh
GkF      .equ 9Fh
GkG      .equ 0A0h
GkH      .equ 0A1h
GkI      .equ 0A2h
GkJ      .equ 0A3h
GkK      .equ 0A4h
GkL      .equ 0A5h
GkM      .equ 0A6h
GkN      .equ 0A7h
GkO      .equ 0A8h
GkP      .equ 0A9h
GkQ      .equ 0AAh
GkR      .equ 0ABh
GkS      .equ 0ACh
GkT      .equ 0ADh
GkU      .equ 0AEh
GkV      .equ 0AFh
GkW      .equ 0B0h
GkX      .equ 0B1h
GkY      .equ 0B2h
GkZ      .equ 0B3h
; Other Keys
GkMode      .equ 45h
GkIns      .equ 0Bh
GkDel      .equ 0Ah
GkRight      .equ 01h
GkLeft      .equ 02h
GkUp      .equ 03h
GkDown      .equ 04h
GkXTN      .equ 0B4h
GkLink      .equ 41h
GkStat      .equ 31h
GkList      .equ 3Ah
GkMath      .equ 32h
GkTest      .equ 33h
GkApps      .equ 2Ch
GkAngle      .equ 39h
GkPrgm      .equ 2Dh
GkDraw      .equ 2Fh
GkVars      .equ 35h
GkDistr      .equ 38h
GkClear      .equ 09h
GkX1      .equ 0B6h
GkMatrix   .equ 37h
GkSin      .equ 0B7h
GkSin1      .equ 0B8h
GkCos      .equ 0B9h
GkCos1      .equ 0BAh
GkTan      .equ 0BBh
GkTan1      .equ 0BCh
GkPower      .equ 84h
GkPi      .equ 0B5h
GkX2      .equ 0BDh
GkRoot      .equ 0BEh
GkComma      .equ 8Bh
GkEE      .equ 98h

GkRightPar   .equ 86h
GkLeftPar   .equ 85h

GkDivide   .equ 83h
GkMultiply   .equ 82h
GkSubtract   .equ 81h
GkAdd      .equ 80h
GkEnter      .equ 05h

GkLittleE   .equ 0EFh
GkLeftBracket   .equ 87h
GkRightBracket   .equ 88h
GkMem      .equ 36h
GkEntry      .equ 0Dh
GkQuotes   .equ 0CBh
GkSolve      .equ 05h


GkLog      .equ 0C1h
GkLn      .equ 0BFh
GkSto      .equ 8Ah
Gk10X      .equ 0C2h
GkeX      .equ 0C0h
GkRcl      .equ 0Ch

GkLittleU    .equ 0F9h
GkLittleV   .equ 0FAh
GkLittleW   .equ 0FBh
GkLittleI   .equ 0EEh

GkL1      .equ 0F3h
GkL2      .equ 0F4h
GkL3      .equ 0F5h
GkL4      .equ 0F6h
GkL5      .equ 0F7h
GkL6      .equ 0F8h
 
GkCatalog   .equ 3Eh
GkAns      .equ 0C5h
GkSpace      .equ 99h
GkColon      .equ 0C6h
GkQuestion   .equ 0CAh
GkPeriod   .equ 8Dh
GkNegative   .equ 8Ch

GkF1      .equ 49h
GkF2       .equ 48h
GkF3      .equ 2Eh
GkF4      .equ 5Ah
GkF5      .equ 44h

GkStatPlot   .equ 30h
GkTblset   .equ 4Bh
GkFormat   .equ 57h
GkCalc      .equ 3Bh
GkTable      .equ 4Ah


;############################
;##     Getcsc/Getk Keys   ##
;############################

GF1      .equ 35h
GF2      .equ 34h
GF3      .equ 33h
GF4      .equ 32h
GF5      .equ 31h

G2nd      .equ 36h
GMode      .equ 37h
GDel      .equ 38h

GDown      .equ 01h
GLeft      .equ 02h
GRight      .equ 03h
GUp      .equ 04h

GAlpha      .equ 30h
GXTN      .equ 28h
GStat      .equ 20h
GMath      .equ 2Fh
GApps      .equ 27h
GPrgm      .equ 1Fh
GVars      .equ 17h
GClear      .equ 0Fh
GX1      .equ 2Eh
GSin      .equ 26h
GCos      .equ 1Eh
GTan      .equ 16h
GPower      .equ 0Eh
GX2      .equ 2Dh
GComma       .equ 25h
GLeftPara   .equ 1Dh
GRightPara   .equ 15h

GDivide      .equ 0Dh
GMultiply   .equ 0Ch
GSubtract   .equ 0Bh
GAdd      .equ 0Ah
GEnter      .equ 09h
GLog      .equ 2Ch
GLn      .equ 2Bh
GSto      .equ 2Ah

G0      .equ 21h
G1      .equ 22h
G2      .equ 1Ah
G3      .equ 12h
G4      .equ 23h
G5      .equ 1Bh
G6      .equ 13h
G7      .equ 24h
G8      .equ 1Ch
G9      .equ 14h

GPeriod    .equ 8Dh
GNegative   .equ 8Ch

;#######################
;## Direct Input Keys ##
;#######################

;Group 1
KeyRow_Pad   .equ 0feh
KDown      .equ 254
KLeft      .equ 253
KRight      .equ 251
KUp      .equ 247

;Group 2
KeyRow_5    .equ 0fdh
KEnter      .equ 254
KPlus      .equ 253
KMinus      .equ 251
KMul      .equ 247
KDiv      .equ 239
KPower      .equ 223
KClear      .equ 191

;Group 3
KeyRow_4    .equ 0fbh
KMinus2      .equ 254
KThree      .equ 253
KSix      .equ 251
KNine      .equ 247
KRbracket   .equ 239
KTan      .equ 223
KVars      .equ 191

;Group 4
KeyRow_3   .equ 0f7h
KPoint      .equ 254
KTwo      .equ 253
KFive      .equ 251
KEight      .equ 247
KLbracket   .equ 239
KCos      .equ 223
KPrgm      .equ 191
KStat      .equ 127

;Group 5
KeyRow_2    .equ 0efh
KZero      .equ 254
KOne      .equ 253
KFour      .equ 251
KSeven      .equ 247
KComma      .equ 239
KSin      .equ 223
KMatrx      .equ 191
KX      .equ 127

;Group 6
KeyRow_1    .equ 0dfh
KSto      .equ 253
KLn      .equ 251
KLog      .equ 247
kX2      .equ 239
kX-1      .equ 223
kMath      .equ 191
kAlpha      .equ 127

;Group 7
KeyRow_Top    .equ 0bfh
KGraph      .equ 254
KTrace      .equ 253
KZoom      .equ 251
KWindow      .equ 247
KY      .equ 239
k2nd      .equ 223
kMode      .equ 191
kDel      .equ 127


ansalon:


Code:

.nolist
#include "usefull.inc"
#include "keyval.inc"
.list
#ifdef ti83p
 .org progstart-2
 .db $BB,6D
#else
 .org progstart
#endif
 ret
 jr nc,start
 .db "Ansalon",0

start:
 bcall(_clrlcdfull)
 bcall(_getkey)
 ret

.end
END
Uh... just so you know, in the future nopaste doesn't mean copy/paste everything. It means to use something like http://rafb.net/paste/ where you paste it there, then post a link to it. That way we can see the entire file without having to scroll through many many lines of code. Got it?
If you're using TASM, you should know that it ignores the last line of every file, hence the double .end. Always put a couple of CRs at the end of files TASM uses, compiles, and includes.
wait... the "usefull.inc" include shouldn't have an end in it... should it? The other includes don't have one, and I'm pretty sure there isn't supposed to be an end in an include, as you don't want it to end after an include
I suggested the end because it wasn't working before without it. So taking it away isn't going to fix the problem. I really don't know what's wrong here.
.end is only necessary after the very last piece of code you need compiled.
Ok. So does anyone know what's wrong with his include files? Confused
Maybe its not his include file... whats the code he's trying to compile? and what command are you using to compile it?
I guess I'm a bit confused about what the problem is exactly. Can someone please elucidate me?
Kerm: http://cemetech.net/forum/viewtopic.php?t=917&postdays=0&postorder=asc&start=20#49590
You have executable code before a .org, within an include that's .nolisted. That's a no-no.
which of them do i need to fix.
Code before the .org. That would, when compiled, result in a $9D93 byte gap between that bit of code and the rest of the program; definitely a no-no.
is there any way i can format ansalon.z80 or any of the includes. so that i do not have to copy and paste those routines whenever i want them.
Include ansalon at the end of your code, like this:
Code:
.nolist #include whatever
#include "ion.inc"
.list
.org
<<program code>>
#include "ansalon.z80"
.end
END
alright thanks Kerm that helped. also is there any way i can make my ion program have a custom dcs icon.
Only by switching it to be a DCS program.
  
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 Previous  1, 2, 3, 4, 5, 6, 7, 8  Next
» View previous topic :: View next topic  
Page 3 of 8
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement