|
@@ -1,14 +1,13 @@
|
|
import React from 'react'
|
|
import React from 'react'
|
|
import EditRegistermap from './EditRegistermap'
|
|
import EditRegistermap from './EditRegistermap'
|
|
import EditSetting from './EditSetting'
|
|
import EditSetting from './EditSetting'
|
|
|
|
+import RegisterTable from './RegisterTable'
|
|
import './registermap.css'
|
|
import './registermap.css'
|
|
|
|
|
|
class ShowRegistermap extends React.Component {
|
|
class ShowRegistermap extends React.Component {
|
|
constructor () {
|
|
constructor () {
|
|
super()
|
|
super()
|
|
this.sayMyName = this.sayMyName.bind(this)
|
|
this.sayMyName = this.sayMyName.bind(this)
|
|
- this.table = this.table.bind(this)
|
|
|
|
-
|
|
|
|
this.bitmap = {}
|
|
this.bitmap = {}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -17,38 +16,6 @@ class ShowRegistermap extends React.Component {
|
|
console.log('Hi, my name is', event)
|
|
console.log('Hi, my name is', event)
|
|
}
|
|
}
|
|
|
|
|
|
- table (registermap, settings) {
|
|
|
|
- // Generate a table with rows for registers and columns for bits
|
|
|
|
- let trow = []
|
|
|
|
- let idx
|
|
|
|
-
|
|
|
|
- const thead = []
|
|
|
|
- const tbody = []
|
|
|
|
-
|
|
|
|
- for (let idxCol = 0; idxCol < registermap.bitsPerRegister; idxCol += 1) {
|
|
|
|
- trow.push(<th key={idxCol}>{idxCol}</th>)
|
|
|
|
- }
|
|
|
|
- trow.push(<th key={registermap.bitsPerRegister}>Register Name</th>)
|
|
|
|
- thead.push(<tr key={-1}>{trow}</tr>)
|
|
|
|
-
|
|
|
|
- for (let idxRow = 0; idxRow < registermap.nrOfRegisters; idxRow += 1) {
|
|
|
|
- trow = []
|
|
|
|
- for (let idxCol = 0; idxCol < registermap.bitsPerRegister; idxCol += 1) {
|
|
|
|
- idx = idxRow * registermap.bitsPerRegister + idxCol
|
|
|
|
- this.bitmap[idx] = ''
|
|
|
|
- trow.push(<td key={idx} onClick={this.sayMyName}>{this.bitmap[idx]}</td>)
|
|
|
|
- }
|
|
|
|
- trow.push(<td key={`inp${idxRow}`}><input ref={input => { this.bitmap[idxRow] = input }} type='text' placeholder={`register${idxRow}`} onChange={this.updateRegister} /></td>)
|
|
|
|
- tbody.push(<tr key={idxRow}>{trow}</tr>)
|
|
|
|
- }
|
|
|
|
- return (
|
|
|
|
- <table>
|
|
|
|
- <thead>{thead}</thead>
|
|
|
|
- <tbody>{tbody}</tbody>
|
|
|
|
- </table>
|
|
|
|
- )
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
render () {
|
|
render () {
|
|
const { registermap, settingList, actions } = this.props
|
|
const { registermap, settingList, actions } = this.props
|
|
console.log('Show registermap', registermap, settingList, actions)
|
|
console.log('Show registermap', registermap, settingList, actions)
|
|
@@ -64,17 +31,13 @@ class ShowRegistermap extends React.Component {
|
|
<h2>Registermap {registermap.name}</h2>
|
|
<h2>Registermap {registermap.name}</h2>
|
|
<EditRegistermap registermap={registermap} actions={actions} />
|
|
<EditRegistermap registermap={registermap} actions={actions} />
|
|
<h2>Registers</h2>
|
|
<h2>Registers</h2>
|
|
- {this.table(registermap, settingList)}
|
|
|
|
- <div>Warning: Not all settings fit in the registers!</div>
|
|
|
|
|
|
+ <RegisterTable registermap={registermap} settings={settingList} bitsPerRegister={registermap.bitsPerRegister} nrOfRegisters={registermap.nrOfRegisters} />
|
|
</div>
|
|
</div>
|
|
<div className='content-aside-right'>
|
|
<div className='content-aside-right'>
|
|
<h2>Settings</h2>
|
|
<h2>Settings</h2>
|
|
- {settingList.map((value, idx) => {
|
|
|
|
- return (
|
|
|
|
- <EditSetting key={idx} setting={value} actions={actions} />
|
|
|
|
- )
|
|
|
|
- }
|
|
|
|
- )}
|
|
|
|
|
|
+ {settingList.map((value, idx) => (
|
|
|
|
+ <EditSetting key={idx} setting={value} actions={actions} />
|
|
|
|
+ ))}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
)
|
|
)
|