# # Hardware.cfg # Fichier de configuration du simulateur de matériel # # # # Trace de Debug # # define DEBUG_SETUP 0x0001 /* trace hardware setup */ # define DEBUG_IT 0x0010 /* trace interruptions generation */ # define DEBUG_REG 0x0100 /* trace hardware register access */ # define DEBUG_WARNING 0x1000 /* trace hardware warning messages */ DEBUG = 0x0000 # # Configuration des paramêtres de base du simulateur # SYSTICK = 1000 # delais entre deux ticks du simulateur (en micro-seconde) MemSize = 1024 # taille de la mémoire centrale en Ko # # Configuration des matériels réseau # # configuration des ports COM (port serie de type RS232) # > Port Serie n°1 SL1_ENABLE = 0 # SL1_ENABLE = 0 => simulation lien serie désactivée SL1 = "chimay.lifl.fr" # Machine connecté à la sortie du lien serie n°1 SL1_COM = 1 # destinataire 1 = lien serie "com1", 2 = lien serie "com2" SL1_NOISE = 500 # bruit de la ligne 0-999 (exprimé en /1000 d'erreur) SL1_IRQ = 4 # niveau d'interruption de l'UART serie n°1 SL1_UARTSR = 0x3F8 # registre de status de l'UART serie n°1 SL1_UARTDATA = 0x3FA # registre d'entrée sortie de l'UART serie n°1 SL1_UDPPORT = 1500 # port UDP "réel" utiliser pour simulation serie n°1 # > Port Serie n°2 SL2_ENABLE = 0 # SL2_ENABLE = 0 => simulation lien serie désactivée SL2 = "ldx2" # Machine connecté à la sortie du lien serie n°2 SL2_COM = 2 # destinataire 1 = lien serie "com1", 2 = lien serie "com2" SL2_NOISE = 0 # bruit de la ligne 0-999 (exprimé en /1000 d'erreur) SL2_IRQ = 5 # niveau d'interruption de l'UART serie n°2 SL2_UARTSR = 0x3FC # registre de status de l'UART serie n°2 SL2_UARTDATA = 0x3FE # registre d'entrée sortie de l'UART serie n°2 SL2_UDPPORT = 1501 # port UDP "réel" utiliser pour simulation serie n°2 # > Configuration de la carte Ethernet ENABLE_ETHERNET = 0 # ENABLE_ETHERNET = 0 => simulation ethernet désactivée Eth0_Link = 1 # num de cable de connexion de la carte Eth0 Eth0_DMASR = 0xE800 # registre de status de la carte Ethernet Eth0_DMABASE = 0xE804 # adresse de base pour le vidage d'un paquet Eth0_DMASIZE = 0xE808 # adresse limite pour le vidage d'un paquet Eth0_IRQ = 9 # niveau d'interruption de la carte. Eth0_MCADR = "225.0.0.1" # adresse multicast utilisée pour la simulation ethernet Eth0_UDPPORT = 1502 # port UDP utilisé pour la simulation ethernet # # Configuration des disques durs # # > Disque dur IDE Maitre ENABLE_HDA = 1 # ENABLE_HD = 0 => simulation du disque désactivée HDA_FILENAME = "vdiskA.bin" # nom du fichier de stockage du disque simulé HDA_CMDREG = 0x3F6 # registre de commande du disque maitre HDA_DATAREGS = 0x110 # base des registres de données (r,r+1,r+2,...r+7) HDA_IRQ = 14 # Interruption du disque HDA_MAXCYLINDER = 16 # Nombre de pistes du disque maître HDA_MAXSECTOR = 16 # Nombre de secteurs du disque maître HDA_SECTORSIZE = 32 # Taille (en octet) d'un secteur du disque maître HDA_STPS = 2 # nombre de SYSTICK pour changer de secteur HDA_STPC = 1 # nombre de SYSTICK pour changer de piste HDA_PON_DELAY = 30 # nombre de SYSTICK avant amorce du disque HDA_POFF_DELAY = 30 # nombre de SYSTICK avant arret du disque # > Disque dur IDE Esclave ENABLE_HDB = 1 # ENABLE_HD = 0 => simulation du disque désactivée HDB_FILENAME = "vdiskB.bin" # nom du fichier de stockage du disque simulé HDB_CMDREG = 0x376 # registre de commande du disque esclave HDB_DATAREGS = 0x170 # base des registres de données (r,r+1,r+2,...r+7) HDB_IRQ = 15 # Niveau d'interruption du disque HDB_MAXCYLINDER = 16 # Nombre de pistes du disque esclave HDB_MAXSECTOR = 16 # Nombre de secteurs du disque esclave HDB_SECTORSIZE = 512 # Taille (en octet) d'un secteur du disque esclave HDB_STPS = 2 # nombre de SYSTICK pour changer de secteur HDB_STPC = 3 # nombre de SYSTICK pour changer de piste HDB_PON_DELAY = 30 # nombre de SYSTICK avant amorce du disque HDB_POFF_DELAY = 30 # nombre de SYSTICK avant arret du disque # # Configuration de l'horologe interne # TIMER_CLOCK = 0xF0 # registre de lecture de la date courante (en ms) TIMER_PARAM = 0xF4 # registre de configuration du TIMER # bit 7 : RESET general (=1) # bit 6 : Alarm ON = 1, Alarm OFF = 0 # bit 5 : Declanche la division Hz du Timer (=1) # bit 4 \ Si le division Hz du timer est demandé : # bit 3 / 00: 1 top d'alarme pour 1 tops d'horloge , # 01: 1 top d'alarme pour 8 tops d'horloge , # 10: 1 top d'alarme pour 64 tops d'horloge , # 11: 1 top d'alarme pour 512 tops d'horloge. # bit 2 - R.F.U. - # bit 1 \ Lecture d'un état interne de l'alarme # bit 0 / 00: Alarme Courante, # 01: Division Hz, # 10: Ticks/Sec # 11: niveau d'interruption de l'horloge TIMER_ALARM = 0xF8 # registre de generation d'interruption TIMER_IRQ = 2 # Niveau d'interruption de l'horologe TIMER_TICKS = 1 # Nombre de SYSTICKS par tick d'horloge