-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhardware.ini
125 lines (110 loc) · 6.32 KB
/
hardware.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#
# 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 #
###########################
# Paramètres du controlleur IDE
ENABLE_HDA = 1 # ENABLE_HD = 0 => simulation du disque désactivée
HDA_CMDREG = 0x3F6 # registre de commande du disque maitre
HDA_DATAREGS = 0x110 # base des registres de données (r,r+1,r+2,...r+15)
HDA_IRQ = 14 # Interruption du disque
# Paramètres de la simulation
HDA_FILENAME = "vdiskA.bin" # nom du fichier de stockage du disque simulé
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
# Paramètres additionels du disque (Utilisez la commande dsknfo pour obtenir ces infos)
HDA_MAXCYLINDER = 1024 # Nombre de pistes du disque maître
HDA_MAXSECTOR = 32 # Nombre de secteurs du disque maître
HDA_SECTORSIZE = 512 # Taille (en octet) d'un secteur du disque maître
############################
# > Disque dur IDE Esclave #
############################
# Paramètres du controlleur IDE
ENABLE_HDB = 1 # ENABLE_HD = 0 => simulation du disque désactivée
HDB_CMDREG = 0x376 # registre de commande du disque esclave
HDB_DATAREGS = 0x170 # base des registres de données (r,r+1,r+2,...r+15)
HDB_IRQ = 15 # Niveau d'interruption du disque
# Paramètres de la simulation
HDB_FILENAME = "vdiskB.bin" # nom du fichier de stockage du disque simulé
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
# Paramètres additionels du disque (Utilisez la commande dsknfo pour obtenir ces infos)
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
#
# 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