Menu

#59 Provide modified build of MacIP LL to Geoff Body

3.0b6
closed
None
9
2014-08-24
2014-05-26
No

Geoff Body has requested a new build of the MacIP Link Layer. He wrote>

I was wondering if you could build a new MACIP LL for me with the following
changes in the following routine.

There are two instructions to insert and a value to be modified.

  • GETNEXTINQUEUE(masterhandle):handle
    GETNEXTINQUEUE DBGMSG GETNEXTINQUEUE
    LDA 4,S
    STA MACIPQHANDLE
    LDA 4+2,S
    STA MACIPQHANDLE+2
    LDA [MACIPQHANDLE]
    STA MACIPQPTR
    LDY #2
    LDA [MACIPQHANDLE],Y
    STA MACIPQPTR+2
    LDA [MACIPQPTR]
    STA 8,S
    LDA [MACIPQPTR],Y
    STA 8+2,S
    BEQ :OUT ;None

Insert here
JSL E11018 - RamForbid ; Queue modification is about to start, stop new
packets being sent to listener which also modifies the queue

LDY #8
LDA [MACIPQHANDLE],Y
PHA
LDY #6
]L1 LDA [MACIPQPTR],Y
TAX
DEY
DEY
LDA [MACIPQPTR],Y
PHA
DEY
DEY
TXA
STA [MACIPQPTR],Y
DEY
DEY
PLA
STA [MACIPQPTR],Y
TYA
CLC

Modify the following line from ADC #8 to ADC #10 (not a hex number)
Following this code by hand indicates that the queue gets duplicated half
handle moves,
starts at offset 6 -> 2, 4->0, which moves handle 2 to handle 1, adds 8 for
new offset and would go 8->4, 6->2 at which point LSB of handle 3 and MSB of
handle 2 gets moved, should be 10->6, 8->4

ADC #10

TAY
CMP 1,S
BCC ]L1
PLS
PEA 0
LDY #8
LDA [MACIPQHANDLE],Y
SEC
SBC #4
PHA
PZL MACIPQHANDLE
_SetHandleSize

Insert here
JSL E1101C - RamPermit ; Queue modification is now completed, allows new
packets to be sent to listener

Discussion

  • Andrew Roughan

    Andrew Roughan - 2014-05-26

    Changes made to local workspace in Testbuild/Marinetti/LinkLayers/MacIP on MacMini.
    Build of MacIP LL 1.3 sent to Geoff Body for testing.
    If this improves Geoff's testing then this will be accepted and committed into repository.

     

    Last edit: Andrew Roughan 2014-05-26
  • Andrew Roughan

    Andrew Roughan - 2014-05-31

    GeoffB> I had it spewing out a recursive filesystem listing via Telnet to the Linux for about 10 minutes. At which point there was a ptr 2 ptr error, but it didn't lockup/freeze. So an improvement.
    Without the RamForbid and RamPermit it freezes.

    Given the above, these changes should be committed as permanent fixes. Created:
    https://sourceforge.net/p/marinetti/bugs/68/

     

    Last edit: Andrew Roughan 2014-06-01

Log in to post a comment.

MongoDB Logo MongoDB