diff --git a/scorch.bin b/scorch.bin index 1ee11c9..0ed068d 100644 Binary files a/scorch.bin and b/scorch.bin differ diff --git a/scorch.xex b/scorch.xex index e17c372..c99f54e 100644 Binary files a/scorch.xex and b/scorch.xex differ diff --git a/textproc.asm b/textproc.asm index 876f354..6f9fc51 100644 --- a/textproc.asm +++ b/textproc.asm @@ -377,6 +377,7 @@ PositionDefensive ?weaponFound ; weapon index in Y sty positionOnTheList + jsr _MakeOffsetDown ; set list screen offset ; Here we have all we need ; So choose the weapon for purchase ...... @@ -449,18 +450,23 @@ GoDownOffensive sty PositionOnTheList beq MakeOffsetUp MakeOffsetDown + jsr _MakeOffsetDown +EndGoDownX + jmp ChoosingItemForPurchase + +_MakeOffsetDown lda OffsetDL1 clc adc #15 ;if offset+16 is lower than the position then it must =16 cmp PositionOnTheList - bcs EndGoDownX + bcs _EndGoDownX sec lda PositionOnTheList sbc #15 sta OffsetDL1 -EndGoDownX - jmp ChoosingItemForPurchase +_EndGoDownX + rts ; swapping the displayed list and setting pointer to position 0 ListChange @@ -476,6 +482,7 @@ ListChange beq @+ ; inventory jsr calcPosOffensive + jsr _MakeOffsetDown ; set list screen offset jmp ChoosingItemForPurchase @ mva #0 PositionOnTheList