001package jmri.jmrix.nce.usbdriver; 002 003/** 004 * Updates for command station memory of the PH5. 005 * 006 * @author Ken Cameron Copyright (C) 2023 007 */ 008public class UsbCmdStationMemory extends jmri.jmrix.nce.NceCmdStationMemory { 009 010 /* 011 * give maximum consist number 012 */ 013 @Override 014 public int getConsistMin() { 015 return 112; 016 } 017 018 /* 019 * give max cab id 020 */ 021 @Override 022 public int getCabMin() { 023 return 2; // number of cab memory slots 024 } 025 /* 026 * give max cab id 027 */ 028 @Override 029 public int getCabMax() { 030 return 10; // number of cab memory slots 031 } 032 033 /* 034 * give cab index functions 13-20 035 */ 036 @Override 037 public int getCabIdxFunct13_20() { 038 return 99; // Function keys 13 - 30 039 } 040 041 /* 042 * give cab index functions 21-28 043 */ 044 @Override 045 public int getCabIdxFunct21_28() { 046 return 100; // Function keys 21 - 28 047 } 048 049 /* 050 * give cab index for cab status 051 */ 052 @Override 053 public int getCabIdxFlag1() { 054 return 70; // NCE flag 1 055 } 056 057 /* 058 * give cab addr macro table 059 */ 060 @Override 061 public int getMacroAddr() { 062 return 0x0E; // start of NCE CS Macro memory 063 } 064 065 /* 066 * give size of macro entry 067 */ 068 @Override 069 public int getMacroSize() { 070 return 16; // 16 bytes per macro 071 } 072 073 /* 074 * give number of macro limit 075 */ 076 @Override 077 public int getMacroLimit() { 078 return 16; // there are 16 possible macros 079 } 080}