aboutsummaryrefslogtreecommitdiff
path: root/amforth-6.5/avr8/amforth.asm
blob: 3e9a9f2d01b186fd64de00cdddeac37c58dc1919 (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
32
33
34
35
36
37
38
39
;;;; avr forth
;;;;
;;;; GPL V2 (only)

.set AMFORTH_NRWW_SIZE=(FLASHEND-AMFORTH_RO_SEG)*2

.set corepc = pc
.org $0000
  jmp_ PFA_COLD

.org corepc
.include "drivers/generic-isr.asm"
; lower part of the dictionary
.include "dict/rww.inc"
.include "dict_appl.inc"

.set DPSTART = pc
.if(pc>AMFORTH_RO_SEG)
.error "RWW Segment Overflow, please edit your dict_appl.inc"
.endif

.org AMFORTH_RO_SEG
.include "amforth-interpreter.asm"
.include "dict/nrww.inc"
.include "dict_appl_core.inc"

.set flashlast = pc
.if (pc>FLASHEND)
  .error "*** Flash size exceeded, please edit your dict_appl_core file to use less space! Aborting."
.endif

.dseg
; define a label for the 1st free ram address
HERESTART:
.eseg
.include "amforth-eeprom.inc"
; 1st free address in EEPROM.
EHERESTART:
.cseg