aboutsummaryrefslogtreecommitdiff
path: root/amforth-6.5/common/words/to-upper.asm
blob: 180cd5db41ba16cf517cd19a6f96468d902360c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
; ( c -- C ) 
; String
; if c is a lowercase letter convert it to uppercase

.if cpu_msp430==1
    HEADER(XT_TOUPPER,7,"toupper",DOCOLON)
.endif

.if cpu_avr8==1
VE_TOUPPER:
    .dw $ff07 
    .db "toupper",0
    .dw VE_HEAD
    .set VE_HEAD = VE_TOUPPER
XT_TOUPPER:
    .dw DO_COLON 
PFA_TOUPPER:
.endif
    .dw XT_DUP 
    .dw XT_DOLITERAL 
    .dw 'a' 
    .dw XT_DOLITERAL 
    .dw 'z'+1
    .dw XT_WITHIN 
    .dw XT_DOCONDBRANCH
    DEST(PFA_TOUPPER0)
    .dw XT_DOLITERAL
    .dw 223 ; inverse of 0x20: 0xdf
    .dw XT_AND 
PFA_TOUPPER0:
    .dw XT_EXIT