@name "Jednostavni ARM" @info "Primjer ARM biblioteke" @directory "." @header ` // Version 0.0.1 set load_performs_init; ` @componentHeader " clock 100 MHz;" // adresni prostori @address adresniProstor(0,0xFFFFFFFF) /******************************************************************* * KOMPONENTE * ***************************************************************** */ @component Memory64KiB memory { @displayName "Memorija" @instanceName memorija @tooltip "Memorija" @count (1,1) @source "memory.comdel" @display { rect { x:0; y:0; w: 80; h: 80; fillColor: #ffffff; } text { x:0; y:12; w: 80; h: 80; text: "Memory 64 KB"; } } @pin ahbPin inOut { @tooltip "Pin za spajanje na AHB" @connection "COMDEL se ne može stvoriti. Memorija nije spojena na AHB" @display { pin { x: 0; y: 0; w: 10; h: 10; type: "in"; orientation: "top"; } } } } @component DMAC_simple { @instanceName dmac @displayName "DMAC" @count (0, 1) @source "dmac.comdel" @tooltip "DMAC" @display { // title and border rect { x: 0; y: 20; w: 110; h: 85; fillColor: #ffffff; } text { x: 0; y: 21; w: 110; h: 15; text: "DMAC"; } rect { x: 30; y: 0; w: 10; h: 19; fillColor: #aaaaaa; lineColor: #aaaaaa; } text { x: 27; y: 4; w: 10; h: 19; text: "S"; } rect { x: 70; y: 0; w: 10; h: 19; fillColor: #cccccc; lineColor: #cccccc; } text { x: 67; y: 4; w: 10; h: 19; text: "M"; } // transfer size counter register text { x: 10; y: 40; w: 24; h: 14; text: "CNT:";} rect { x: 8; y: 56; w: 30; h: 14;} text { x: 6; y: 53; w: 26; h: 14; text: "4096";} // hbusreq, hgrant and intr labels and pins text {x: 50; y: 40; w: 45; h: 14; text: "HBUSREQ";} text {x: 50; y: 57; w: 45; h: 14; text: "HGRANT";} text {x: 50; y: 73; w: 35; h: 14; text: "INTR";} } @pin ahbSlavePin in { @tooltip "Slave pin za spajanje na AHB" @connection "COMDEL se ne može stvoriti. DMAC S nije spojen na AHB" @display { pin { x: 30; y: 0; w: 10; h: 10; type: "in"; orientation: "top"; } } } @pin ahbMasterPin in { @tooltip "Master pin za spajanje na AHB" @connection "COMDEL se ne može stvoriti. DMAC M nije spojen na AHB" @display { pin { x: 70; y: 0; w: 10; h: 10; type: "in"; orientation: "top"; } } } @pin apbPin in { @tooltip "Pin za spajanje na APB" @connection "COMDEL se ne može stvoriti. DMAC nije spojen na APB" @display { pin { x: 100; y: 20; w: 10; h: 10; type: "in"; orientation: "top"; } } } @pin dev0 out { @tooltip "Pin za spajanje uređaja 0" @display { pin { x: 110; y: 30; w: 10; h: 10; type: "out"; orientation: "right"; } } @wires {0, null} } @pin dev1 out { @tooltip "Pin za spajanje uređaja 1" @display { pin { x: 110; y: 45; w: 10; h: 10; type: "out"; orientation: "right"; } } @wires {0, null} } @pin dev2 out { @tooltip "Pin za spajanje uređaja 2" @display { pin { x: 110; y: 60; w: 10; h: 10; type: "out"; orientation: "right"; } } @wires {0, null} } @pin dev3 out { @tooltip "Pin za spajanje uređaja 3" @display { pin { x: 110; y: 75; w: 10; h: 10; type: "out"; orientation: "right"; } } @wires {0, null} } } @component UI_UNIT { @displayName "UI uređaj" @instanceName ui_unit @count (0, 4) @source "ui_unit.comdel" @tooltip "UI uređaj" @attribute type int default 0 { @displayName "Vrsta veze" @popup automatic { @title "Vrsta veze" @text "Izaberite vrstu veze" @enumerated { "Ulaz" = 1, "Izlaz" = 0, } } } @attribute name string default "" { @displayName "Ime uređaja" @popup automatic { @title "Ime uređaja" @text "Izaberite ime uređaja" } } @attribute width int default 8 { @displayName "Širina sabirnice" } @attribute duration int default 40 { @displayName "Trajanje" } @display { rect { x: 0; y: 0; w: 60; h:60; } text { x: 15; y: 20; w: 45; h:40; text: "{name}";} } @pin apbPin in { @tooltip "Pin za spajanje na APB" @connection "COMDEL se ne može stvoriti. UI_UNIT nije spojen na APB" @display { pin { x: 25; y: 0; w: 10; h: 10; type: "in"; orientation: "top"; } } } @pin dmacPin out { @tooltip "Pin za spajanje na DMAC" @connection "COMDEL se ne može stvoriti. UI_UNIT nije spojen na DMAC" @display { pin { x: 0; y: 25; w: 10; h: 10; type: "in"; orientation: "left"; } } } } @component interrupt_selector { @instanceName interruptSelector @count (0, 2) @source "interrupt_selector.comdel" @tooltip "Interrupt selector" @display { rect { x:0; y: 0; w:10; h:10; lineColor: #000000; fillColor: #0000ff; } } @pin apbPin in { @tooltip "Pin za spajanje na APB" @connection "COMDEL se ne može stvoriti. Selector nije spojena na APB" @display { pin { x: 10; y: 0; w: 10; h: 10; type: "in"; orientation: "right"; } } } @pin ahbPin in { @tooltip "Pin za spajanje na AHB" @connection "COMDEL se ne može stvoriti. Selector nije spojena na AHB" @display { pin { x: -10; y: 0; w: 10; h: 10; type: "in"; orientation: "left"; } } } } @component lcd8 { @displayName "LCD ekran" @instanceName lcd @count (0, 4) @source "lcd8.comdel" @tooltip "LCD ekran" @display { rect { x:0; y:0; w: 120; h:55; } text { x:0; y:0; w:120; h:15; text: "LCD"; } rect { x: 10; y: 16; w: 100; h: 20; fillColor: #CCCCCCFF; } // shiftable registers rect { x: 12; y:40; w:12; h:12; } rect { x: 24; y:40; w:12; h:12; } rect { x: 36; y:40; w:12; h:12; } rect { x: 48; y:40; w:12; h:12; } rect { x: 60; y:40; w:12; h:12; } rect { x: 72; y:40; w:12; h:12; } rect { x: 84; y:40; w:12; h:12; } rect { x: 96; y:40; w:12; h:12; } } @pin gpioPin inOut { @tooltip "Pin za spajanje na GPIO" @connection "COMDEL se ne može stvoriti. LCD nije spojen na GPIO" @display { pin { x: -10; y: 22; w: 10; h: 10; type: "in"; orientation: "left"; } } } } @component pushbutton { @displayName "Push button" @instanceName push_button @count (0, 100) @source "pushbutton.comdel" @tooltip "Push button" @display { line { x1: 0; y1: 0; x2: 8; y2: 10; } ellipse {x: 8; y: 8; w: 4; h: 4;} ellipse {x: 22; y: 8; w: 4; h: 4; fillColor: #ffffff; } rect { x: 0; y: 0; w: 34; h: 20; fillColor: #00880055; lineColor: #00000000; } } @pin gpioPin out { @tooltip "Pin za spajanje na GPIO" @connection "COMDEL se ne može stvariti. Button nije spojena na GPIO" @display { pin { x: 12; y: -10; w: 10; h: 10; type: "in"; orientation: "top"; } } @wires {null} } } @component togglebutton { @displayName "Toggle button" @instanceName toggle_button @count (0, 100) @source "togglebutton.comdel" @tooltip "Toggle button" @display { line { x1: 0; y1: 0; x2: 8; y2: 10; } ellipse {x: 8; y: 8; w: 4; h: 4;} ellipse {x: 22; y: 8; w: 4; h: 4; fillColor: #ffffff; } rect { x: 0; y: 0; w: 34; h: 20; fillColor: #00880055; lineColor: #00000000; } } @pin gpioPin out { @tooltip "Pin za spajanje na GPIO" @connection "COMDEL se ne može stvariti. Button nije spojena na GPIO" @display { pin { x: 12; y: -10; w: 10; h: 10; type: "in"; orientation: "top"; } } @wires {null} } } @component signal { @instanceName signal @count (0, 1) @source "signal.comdel" @tooltip "Signal" @display { rect { x:0; y:10; w:10; h:10; lineColor: #000000; fillColor: #0000ff; } } @pin apbPin in { @tooltip "Pin za spajanje na APB" @connection "COMDEL se ne može stvariti. Signal nije spojena na APB" @display { pin { x: 0; y: 0; w: 10; h: 10; type: "in"; orientation: "top"; } } } } @component LED { @instanceName led @count(0, 1000) @source "led.comdel" @tooltip "LED žaruljica" @display { rect { x:0; y:10; w:10; h:10; lineColor: #000000; fillColor: #888888; } } @attribute onColor string default "green" { @displayName "boja" @popup automatic { @title "Boja LED žaruljice" @text "Odaberite boju LED žaruljice" @enumerated { "Zelena" = "green", "Žuta" = "yellow", "Crvena" = "red" } } } @pin gpioPin in { @tooltip "Pin za spajanje na GPIO" @connection "COMDEL se ne može stvariti. LED nije spojena na GPIO" @display { pin { x: 0; y: 0; w: 10; h: 10; type: "in"; orientation: "top"; } } @wires {null} } } @component GPIO { @instanceName gpio @tooltip "GPIO" @count (0, 2) @source "gpio.comdel" @display { rect { x: 0; y: 0; w: 80; h: 100; fillColor: #ffffff; } text { x: 10; y: 36; w: 80; h: 100; text: "{title}"; } // PORT A rect { x: 10; y: 14; w: 60; h: 14; } text { x: 10; y: 11; w: 60; h: 14; text: "0000 0000"; } // PORT B rect { x: 10; y: 73; w: 60; h: 14; } text { x: 10; y: 70; w: 60; h: 14; text: "0000 0000"; } } @attribute title string default "GPIO 1" { @displayName "GPIO ime" @popup automatic { @title "Izmjeni ime" @text "Postavi novo ime" } } @pin apbPin inOut { @tooltip "Pin za spajanje na APB" @connection "COMDEL se ne može stvoriti. GPIO nije spojen na APB" @display { pin { x: 0; y: 40; w: 10; h: 10; type: "in"; orientation: "left"; fillColor: #3333ff; } } } @pin portA out { @tooltip "Port A" @display { pin { x: 70; y: 16; w: 10; h: 10; type: "in"; orientation: "right"; } } @wires {null, null, null, null, null, null, null, null} } @pin portB in { @tooltip "Port B" @display { pin { x: 70; y: 75; w: 10; h: 10; type: "in"; orientation: "right"; } } @wires {null, null, null, null, null, null, null, null} } } @component RTC_IO { @displayName "RTC" @instanceName rtc @tooltip "RTC" @count (0,1000) @source "rtc.comdel" @display { rect { x: 0; y: 0; w: 40; h: 40; fillColor: #ffffff; } text { x: 0; y: 0; w: 40; h: 40; text: "RTC"; } } @pin apbPin inOut { @tooltip "Pin za spajanje na APB" @connection "COMDEL se ne može stvoriti. Temperature nije spojen na APB" @display { pin { x: 15; y: 30; w: 10; h: 10; type: "in"; orientation: "bottom"; } } } } @component Temperature { @displayName "Termometar" @instanceName temperature @tooltip "Termometar" @count (0,1000) @source "temperature.comdel" @display { rect { x:0; y:0; w: 120; h: 30; } text { x:0; y:0; w: 120; h: 30; text: "Termometar"; } text { x: 7; y: 13; w: 12; h: 15; text: "--"; } text { x: 100; y: 13; w: 12; h: 15; text: "20"; } } @pin gpioPin inOut { @tooltip "Pin za spajanje na GPIO" @connection "COMDEL se ne može stvoriti. Termometar nije spojen na GPIO" @display { pin { x: 15; y: 30; w: 10; h: 10; type: "in"; orientation: "bottom"; } } } } @component Decoder { @displayName "Dekoder" @instanceName decoder @tooltip "Dekoder" @count (1, 1) @source "decoder.comdel" @display { rect { x: 0; y: 0; w: 50; h: 40; } text { x: 0; y: 0; w: 50; h: 40; text: "Dekoder"; } } @pin ahbPin in { @tooltip "Pin za spajanje na AHB" @connection "COMDEL se ne može stvoriti. Dekoder nije spojena na AHB" @display { pin { x: 15; y: 30; w: 10; h: 10; type: "in"; orientation: "bottom"; } } } } @component Bridge { @displayName "Bridge" @instanceName bridge @tooltip "Bridge" @count (0, 1) @source "bridge.comdel" @display { rect { x: 0; y: 0; w: 60; h: 40; } text { x: 10; y: 10; w: 60; h: 40; text: "Bridge"; } } @pin ahbPin in { @tooltip "Pin za spajanje na AHB" @connection "COMDEL se ne može stvoriti. Bridge nije spojena na AHB" @display { pin { x: 0; y: 15; w: 10; h: 10; type: "in"; orientation: "left"; } } } @pin apbPin in { @tooltip "Pin za spajanje na APB" @connection "COMDEL se ne može stvoriti. Bridge nije spojena na APB" @display { pin { x: 50; y: 15; w: 10; h: 10; type: "in"; orientation: "right"; } } } @pin connectionPin in { @tooltip "Ulazni pin" @display { pin { x: 25; y: 0; w: 10; h: 10; type: "in"; orientation: "top"; } } @wires {1, 1, 1, 1, 1} } } @component ARM7tdmi processor { @displayName "ARM" @instanceName arm @tooltip "ARM procesor" @count (1, 1) @source "arm7tdmi.comdel" @display { rect { x:0; y:0; w: 110; h: 110; fillColor: #ffffff; } text { x:0; y:0; w: 110; h: 110; text: "ARM"; } rect { x: 50; y: 111; w: 10; h: 19; fillColor: #999999; lineColor: #999999; } } @pin ahbPin inOut { @tooltip "Pin za spajanje na AHB" @connection "COMDEL se ne može stvoriti. Procesor nije spojen na AHB" @display { pin { x: 50; y: 121; w: 10; h: 10; type: "in"; orientation: "bottom"; } } } } /******************************************************************* * SABIRNICE * **************************************************************** */ @bus AHB regular { @instanceName ahb @tooltip "Brza sabirnica" @count (1,1) @display { bus { x: 0; y: 0; w: 249; h: 20; orientation: "horizontal"; fillColor: #999999; lineColor: #999999; } } @wires { addr<32>, rdata<32>, wdata<32>, size<3>, write, ready wired_or, // interupts and bus request irq wired_or, fiq wired_or, nmreq wired_and, // hsel_* sel_mem hidden, sel_bridge, sel_dmac sel_mem hidden, sel_bridge, sel_dmac // dmac busreq terminate_with 0, grant } } @bus APB regular { @instanceName apb @tooltip "Spora sabirnica" @count (0, 1) @display { bus { x: 0; y: 0; w: 329; h: 20; orientation: "horizontal"; fillColor: #999999; lineColor: #999999; } } @wires { addr<32>, rdata<32>, wdata<32>, size<3> hidden, enable, write, sel_gpio_1, sel_gpio_2, sel_ui_in, sel_rtc, sel_ui_out, rtc_int hidden, dmac_int hidden, impulse hidden } } // DMAC @bus dmac_io automatic { @instanceName arm_dmac @count (0, 1000) @wires {dmareq hidden, dmaack hidden} } // gpio @bus gpio_sa singleAutomatic { @instanceName gpio_sa @count (0, 1000) @wires { xp hidden } } @bus gpio_port automatic { @instanceName gpio_port @count (0, 1000) @wires { xp0 hidden, xp1 hidden, xp2 hidden, xp3 hidden, xp4 hidden, xp5 hidden, xp6 hidden, xp7 hidden } } /******************************************************************* * PRAVILA POVEZIVANJA * **************************************************************** */ @connection (Memory64KiB.ahbPin, AHB) { @wires {addr, rdata, wdata, size, write, ready, sel_mem} } @connection (interrupt_selector.apbPin, APB) { @attribute interrupt wire default rtc_int { @popup automatic { @title "Interupt" @text "Izaberite interupt" @enumerated { "DMAC" = dmac_int, "RTC" = rtc_int } } } @wires {interrupt} } @connection (interrupt_selector.ahbPin, AHB) { @wires {irq, fiq} } @connection (ARM7tdmi.ahbPin, AHB) { @wires {addr, rdata, wdata, size, write, ready, irq, fiq, nmreq, busreq, grant} } @connection (Decoder.ahbPin, AHB) { @wires {addr, nmreq, sel_mem, sel_bridge, sel_dmac, 1, 1} } @connection (Bridge.ahbPin, AHB) { @wires {addr, rdata, wdata, size, write, ready, sel_bridge} } @connection (signal.apbPin, APB) { @wires { impulse } } @connection (Bridge.apbPin, APB) { @wires { addr, rdata, wdata, size, enable, write, sel_gpio_1, sel_gpio_2, sel_rtc, sel_ui_in, sel_ui_out } } @connection (DMAC_simple.ahbSlavePin, AHB) { @wires { addr, rdata, wdata, size, write, ready, sel_dmac } } @connection (DMAC_simple.ahbMasterPin, AHB) { @wires { addr, rdata, wdata, size, write, ready, nmreq, busreq, grant } } @connection (DMAC_simple.apbPin, APB) { @wires { dmac_int } } @connection (UI_UNIT.dmacPin, dmac_io, DMAC_simple.dev0) { @wires { dmareq, dmaack } @wires { dmareq, dmaack } } @connection (UI_UNIT.dmacPin, dmac_io, DMAC_simple.dev1) { @wires { dmareq, dmaack } @wires { dmareq, dmaack } } @connection (UI_UNIT.dmacPin, dmac_io, DMAC_simple.dev2) { @wires { dmareq, dmaack } @wires { dmareq, dmaack } } @connection (UI_UNIT.dmacPin, dmac_io, DMAC_simple.dev3) { @wires { dmareq, dmaack } @wires { dmareq, dmaack } } @connection (UI_UNIT.apbPin, APB) { @attribute intSelect wire default sel_ui_in { @popup automatic { @title "Interrupt" @text "Izaberite interrupt" @enumerated { "INT 0" = sel_ui_in, "INT 1" = sel_ui_out } } } @wires { addr, rdata, wdata, size, enable, write, intSelect } } @connection (GPIO.apbPin, APB) { @attribute gpioSelect wire default sel_gpio_1 { @displayName "GPIO interupt" @popup automatic { @title "GPIO interupt" @text "Izaberite GPIO interupt" @enumerated { "GPIO 1"= sel_gpio_1, "GPIO 2"= sel_gpio_2 } } } @wires {addr, rdata, wdata, enable, write, gpioSelect} } @connection (GPIO.portA, gpio_sa, LED.gpioPin) { @attribute gpioPortA string default "XP0" { @popup automatic { @title "Port A" @text "Izaberite izlaz" } } @attribute ledGpioPin string default "Ulaz" { @popup automatic { @title "LED žaruljica" @text "Izaberite ulaz" } } @wires{"XP0", "XP1", "XP2", "XP3", "XP4", "XP5", "XP6", "XP7"} @wires{"Ulaz"} } @connection (GPIO.portB, gpio_sa, LED.gpioPin) { @attribute gpioPortB string default "XP0" { @popup automatic { @title "Port B" @text "Izaberite izlaz" } } @attribute ledGpioPin string default "Ulaz" { @popup automatic { @title "LED žaruljica" @text "Izaberite ulaz" } } @wires{"XP0", "XP1", "XP2", "XP3", "XP4", "XP5", "XP6", "XP7"} @wires{"Ulaz"} } @connection (GPIO.portA, gpio_sa, pushbutton.gpioPin) { @attribute gpioPortA string default "XP0" { @popup automatic { @title "Port A" @text "Izaberite ulaz" } } @attribute buttonGpioPin string default "Izlaz" { @popup automatic { @title "Gumb" @text "Izaberite izlaz" } } @wires{"XP0", "XP1", "XP2", "XP3", "XP4", "XP5", "XP6", "XP7"} @wires{"Izlaz"} } @connection (GPIO.portB, gpio_sa, pushbutton.gpioPin) { @attribute gpioPortB string default "XP0" { @popup automatic { @title "Port B" @text "Izaberite ulaz" } } @attribute buttonGpioPin string default "Izlaz" { @popup automatic { @title "Gumb" @text "Izaberite izlaz" } } @wires{"XP0", "XP1", "XP2", "XP3", "XP4", "XP5", "XP6", "XP7"} @wires{"Izlaz"} } @connection (GPIO.portA, gpio_sa, togglebutton.gpioPin) { @attribute gpioPortA string default "XP0" { @popup automatic { @title "Port A" @text "Izaberite ulaz" } } @attribute buttonGpioPin string default "Izlaz" { @popup automatic { @title "Gumb" @text "Izaberite izlaz" } } @wires{"XP0", "XP1", "XP2", "XP3", "XP4", "XP5", "XP6", "XP7"} @wires{"Izlaz"} } @connection (GPIO.portB, gpio_sa, togglebutton.gpioPin) { @attribute gpioPortB string default "XP0" { @popup automatic { @title "Port B" @text "Izaberite ulaz" } } @attribute buttonGpioPin string default "Izlaz" { @popup automatic { @title "Gumb" @text "Izaberite izlaz" } } @wires{"XP0", "XP1", "XP2", "XP3", "XP4", "XP5", "XP6", "XP7"} @wires{"Izlaz"} } @connection (GPIO.portA, gpio_port, Temperature.gpioPin) { @wires {xp0, xp1, xp2, xp3, xp4, xp5, xp6, xp7} @wires {xp0, xp1, xp2, xp3, xp4, xp5, xp6, xp7} } @connection (GPIO.portB, gpio_port, Temperature.gpioPin) { @wires {xp0, xp1, xp2, xp3, xp4, xp5, xp6, xp7} @wires {xp0, xp1, xp2, xp3, xp4, xp5, xp6, xp7} } @connection (GPIO.portA, gpio_port, lcd8.gpioPin) { @wires {xp0, xp1, xp2, xp3, xp4, xp5, xp6, xp7} @wires {xp0, xp1, xp2, xp3, xp4, xp5, xp6, xp7} } @connection (GPIO.portB, gpio_port, lcd8.gpioPin) { @wires {xp0, xp1, xp2, xp3, xp4, xp5, xp6, xp7} @wires {xp0, xp1, xp2, xp3, xp4, xp5, xp6, xp7} } @connection (RTC_IO.apbPin, APB) { @wires { addr, rdata, wdata, size, enable, write, sel_rtc, rtc_int, impulse } } /******************************************************************* * PRIJEVODI * ***************************************************************** */ @messages { msg_toolbar_load_library: "Učitaj biblioteku"; msg_toolbar_load_schema: "Učitaj schemu"; msg_toolbar_save_schema: "Spremi schemu"; msg_toolbar_generate_comdel: "Generiraj COMDEL"; msg_sidebar_components: "Komponente:"; msg_sidebar_busses: "Sabirnice:"; msg_boolean_true: "Da"; msg_boolean_false: "Ne"; msg_dialog_success_title: "Uspjeh"; msg_dialog_success_validation: "Nema validacijskih greški"; msg_dialog_success_comdel_generation: "Uspješno generiran COMDEL model"; msg_dialog_success_save_schema: "Uspješno spremljena schema"; msg_dialog_actions_ok: "U redu"; msg_dialog_actions_cancel: "Odustani"; msg_dialog_actions_set: "Postavi"; msg_dialog_actions_update: "Ažuriraj"; msg_dialog_actions_update_named: "Ažuriraj '{name}'"; msg_dialog_actions_remove_named: "Ukloni '{name}'"; msg_pin_update: "Ažuriraj"; msg_pin_remove: "Ukloni"; msg_sa_pin_update_title: "Ažuriraj {wire1} - {wire2}"; msg_sa_pin_remove_title: "Ukloni {wire1} - {wire2}"; msg_pin_update_action: "Ažuriraj poveznicu"; msg_pin_remove_action: "Ukloni poveznicu"; msg_dialog_error_title: "Greška"; msg_dialog_warning_title: "Upozorenje"; msg_dialog_error_close: "Zatvori"; msg_dialog_attribute_update: "Ažuriraj '{attribute}'"; msg_dialog_attribute_set: "Postavi '{attribute}'"; msg_dialog_name_update: "Ažuriraj ime"; msg_dialog_memory_update: "Ažuriraj memoriju"; msg_dialog_memory_set: "Postavi memoriju"; msg_dialog_memory_default: "Memorija nije izabrana"; msg_dialog_sa_pin_set: "Postavi sabirnicu"; msg_validators_component_min_count: "Nedovoljno instanci komponente '{componentName}'. Potrebno barem {min}, pronađeno {count}!"; msg_validators_component_max_count: "Previše instanci komponente '{componentName}'. Dozvoljeno najviše {max}, pronađeno {count}!"; msg_validators_bus_min_count: "Nedovoljno instanci sabirnice '{busName}'. Potrebno barem {min}, pronađeno {count}!"; msg_validators_bus_max_count: "Previše instanci sabirnice '{busName}'. Dozvoljeno najviše {max}, pronađeno {count}!"; msg_validators_memory_not_found: "Ne postoji memorijska instanca {memoryReference}!"; msg_validators_duplicates_found: "Pronađeno više instanci s imenom {instanceName}!"; msg_files_load_library: "Otvori biblioteku"; msg_files_load_library_format: "COMDEL biblioteka (*.csl)"; msg_files_load_schema: "Otvori schemu"; msg_files_load_schema_format: "COMDEL schema (*.csch)"; msg_files_store_schema: "Spremi schemu"; msg_files_store_schema_format: "COMDEL schema (*.csch)"; msg_files_store_comdel: "Spremi COMDEL model"; msg_files_store_comdel_format: "COMDEL model (*.system)"; }