?login_element?

Subversion Repositories NedoOS

Rev

Rev 539 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1.             DEVICE NONE         ; set "none" explicitly, to avoid "global device" feature
  2.             CSPECTMAP           ; error about non-device mode
  3.             DEVICE ZXSPECTRUMNEXT : SLOT 6
  4.             CSPECTMAP "cspectmap.sym"   ; default-name variant is tested only manually
  5. ;             CSPECTMAP ; default-name is source name with ".map" appended (tested manually)
  6.             LABELSLIST "cspectmap.lbl"
  7.  
  8.             ; create test labels in various areas of memory (and by various means)
  9.  
  10. EquLabel    EQU     $1234
  11.  
  12. DeflLabel   DEFL    $12+1
  13.  
  14.             STRUCT Struct
  15. Field1      BLOCK   5
  16. Field2      DW      $5678
  17.             ENDS
  18.  
  19.             ORG $C000, $00
  20. Page00:     daa
  21. .local:
  22.             ORG $C001, $01
  23. Page01:     scf
  24. .local:
  25.             ORG $C00A, $0A
  26. Page0A:     ccf
  27. .local:     rlca
  28. .codeEqu    EQU $+1             ; is like simple EQU => "wrong" physical address
  29.  
  30. .local.local:       ; TODO this will be incorrectly marked as local at second dot
  31.     ; but it will stay so, because A) not simple to fix B) works often better for UX
  32.  
  33.             ORG $DFFE, $0B      ; also raise difficulty by adding extra dots in labels
  34. Page0B.A:   cpl
  35. .local.b:
  36.             ORG $C0DF, $DF
  37. PageDF.A.B: rra
  38. .local.c..d:
  39.  
  40.             ORG $C030, $30
  41.     MODULE Module
  42. Page30:     rla
  43. .local:
  44.     ENDMODULE
  45.  
  46.             ORG $C031, $31
  47.     MODULE Module_two_
  48. Page31..A.: rrca
  49. .local..c.:
  50.     ENDMODULE
  51.  
  52.     ; exporting of struct-emit labels should contain the correct physical address too
  53. s1          Struct { 0x1234 }
  54.