- type: entity
  parent: BaseItem
  id: BasePDACartridge
  abstract: true
  components:
  - type: Item
    storedRotation: -90
  - type: Sprite
    sprite: Objects/Devices/cartridge.rsi

- type: entity
  parent: BasePDACartridge
  id: NotekeeperCartridge
  name: notekeeper cartridge
  description: A program for keeping notes.
  components:
  - type: Sprite
    state: cart-y
  - type: UIFragment
    ui: !type:NotekeeperUi
  - type: Cartridge
    programName: notekeeper-program-name
    icon:
      sprite:  Objects/Misc/books.rsi
      state: book_icon
  - type: NotekeeperCartridge

- type: entity
  parent: BasePDACartridge
  id: NanoTaskCartridge
  name: NanoTask cartridge
  description: A program that allows you to keep a list of tasks to do.
  components:
  - type: Sprite
    state: cart-nav
  - type: Cartridge
    programName: nano-task-program-name
    icon:
      sprite: Interface/Misc/program_icons.rsi
      state: nano_task
  - type: UIFragment
    ui: !type:NanoTaskUi
  - type: NanoTaskCartridge

- type: entity
  parent: BasePDACartridge
  id: NewsReaderCartridge
  name: news cartridge
  description: A program for reading news.
  components:
  - type: Sprite
    state: cart-y
  - type: UIFragment
    ui: !type:NewsReaderUi
  - type: Cartridge
    programName: news-read-program-name
    icon:
      sprite: Interface/Misc/program_icons.rsi
      state: news_read
  - type: NewsReaderCartridge

- type: entity
  parent: BasePDACartridge
  id: CrewManifestCartridge
  name: crew manifest cartridge
  description: A program for listing your fellow crewmembers.
  components:
    - type: Sprite
      state: cart-y
    - type: UIFragment
      ui: !type:CrewManifestUi
    - type: Cartridge
      programName: crew-manifest-program-name
      icon:
        sprite: Interface/Misc/program_icons.rsi
        state: crew_manifest
    - type: CrewManifestCartridge

- type: entity
  parent: BasePDACartridge
  id: NetProbeCartridge
  name: NetProbe cartridge
  description: A program for getting the address and frequency of network devices.
  components:
    - type: Sprite
      state: cart-y
    - type: UIFragment
      ui: !type:NetProbeUi
    - type: Cartridge
      programName: net-probe-program-name
      icon:
        sprite: Structures/Machines/server.rsi
        state: server
    - type: NetProbeCartridge

- type: entity
  parent: BasePDACartridge
  id: LogProbeCartridge
  name: LogProbe cartridge
  description: A program for getting access logs from devices.
  components:
    - type: Sprite
      state: cart-log
    - type: Icon
      sprite: Objects/Devices/cartridge.rsi
      state: cart-log
    - type: UIFragment
      ui: !type:LogProbeUi
    - type: Cartridge
      programName: log-probe-program-name
      icon:
        sprite: Structures/Doors/Airlocks/Standard/security.rsi
        state: closed
    - type: LogProbeCartridge
    - type: GuideHelp
      guides:
      - Forensics

- type: entity
  parent: BasePDACartridge
  id: WantedListCartridge
  name: Wanted list cartridge
  description: A program to get a list of wanted persons.
  components:
  - type: Sprite
    state: cart-sec
  - type: Icon
    sprite: Objects/Devices/cartridge.rsi
    state: cart-sec
  - type: UIFragment
    ui: !type:WantedListUi
  - type: Cartridge
    programName: wanted-list-program-name
    icon:
      sprite: Objects/Misc/books.rsi
      state: icon_magnifier
  - type: WantedListCartridge
  - type: StealTarget
    stealGroup: WantedListCartridge

- type: entity
  parent: BasePDACartridge
  id: MedTekCartridge
  name: MedTek cartridge
  description: A program that provides medical diagnostic tools.
  components:
    - type: Sprite
      state: cart-med
    - type: Icon
      sprite: Objects/Devices/cartridge.rsi
      state: cart-med
    - type: Cartridge
      programName: med-tek-program-name
      icon:
        sprite: Objects/Specific/Medical/healthanalyzer.rsi
        state: icon
    - type: MedTekCartridge

- type: entity
  parent: BasePDACartridge
  id: AstroNavCartridge
  name: AstroNav cartridge
  description: A program for navigation that provides GPS coordinates.
  components:
    - type: Sprite
      state: cart-nav
    - type: Icon
      sprite: Objects/Devices/cartridge.rsi
      state: cart-nav
    - type: Cartridge
      programName: astro-nav-program-name
      icon:
        sprite: Objects/Devices/gps.rsi
        state: icon
    - type: AstroNavCartridge
