لماذا هو منطقة الذاكرة $ 1020 unwriteable على M68HC12 مع staa؟
-
03-07-2019 - |
سؤال
ولدي اسم القانون التالي:
org $1000 ;Table Origin is at $1000
fcb $02,$04,$06,$08 ; values of table from $1001 - $1004
fcb $0a,$0c,$0e,$10 ; values of table from $1005 - $1009
org $400 ; Program Start
lds #$4000 ; Set Stack Pointer at value (#) $4000
ldy #$1000 ; Set Index Y at $1000
ldaa #$04 ; Load Accumulator a with value $04
loop staa $20,y ; Store value of Accumulator a at y = $1000 {DOESNT WORK}
staa $21,y ; Store value of Accumulator a at y = $1021 {DOESNT WORK}
iny ; increment y (at this point $1020 and $1021 are still ff)
iny ; increment y (at this point $1020 and $1021 are still ff)
deca ; decrement a
bne loop ; loop until a = 0
hold bra hold ; end of program
end
ويتم تعيين الجدول بشكل صحيح ولكن staa يكتب أي شيء في 1020 على. لماذا ا؟
المحلول
وأعتقد أن هناك ROM هناك
<اقتباس فقرة>10.3 ROM صفيف
ويتكون ROM من مجموعة 28K بايت المعين من 1000 $ إلى $ 7FFF و من مجموعة 32 K بايت المعين من 8000 $ إلى FFFF $ في إعادة تعيين. ال MAPROM قليلا في السجل MISC يسمح للمبادلة من صفائف اثنين. ROMON28 وROMON32 تمكين أو تعطيل وحدة ROM
اقتباس فقرة>لا تنتمي إلى StackOverflow