2015-06-09 17:21:49 +00:00
|
|
|
package android.emu6502.app
|
|
|
|
|
2015-06-12 06:26:47 +00:00
|
|
|
import android.emu6502.Emulator
|
2015-06-09 17:21:49 +00:00
|
|
|
import android.emu6502.R
|
|
|
|
import android.os.Bundle
|
|
|
|
import android.support.design.widget.FloatingActionButton
|
|
|
|
import android.support.v7.app.ActionBar
|
|
|
|
import android.support.v7.app.AppCompatActivity
|
|
|
|
import android.support.v7.widget.Toolbar
|
|
|
|
import android.view.Menu
|
|
|
|
import android.view.MenuItem
|
|
|
|
import android.widget.TextView
|
2015-06-12 06:26:47 +00:00
|
|
|
import android.widget.Toast
|
2015-06-09 17:21:49 +00:00
|
|
|
import butterknife.bindView
|
|
|
|
|
|
|
|
public class MainActivity : AppCompatActivity() {
|
|
|
|
|
|
|
|
val toolbar: Toolbar by bindView(R.id.toolbar)
|
|
|
|
val txtA: TextView by bindView(R.id.A)
|
|
|
|
val txtX: TextView by bindView(R.id.X)
|
|
|
|
val txtY: TextView by bindView(R.id.Y)
|
|
|
|
val txtSP: TextView by bindView(R.id.SP)
|
|
|
|
val txtPC: TextView by bindView(R.id.PC)
|
|
|
|
val txtFlags: TextView by bindView(R.id.PC)
|
2015-06-12 06:26:47 +00:00
|
|
|
val txtInstructions: TextView by bindView(R.id.txtInstructions)
|
|
|
|
val fabRun: FloatingActionButton by bindView(R.id.fabRun)
|
|
|
|
val emulator = Emulator()
|
2015-06-09 17:21:49 +00:00
|
|
|
|
|
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
|
|
super.onCreate(savedInstanceState)
|
|
|
|
setContentView(R.layout.activity_main)
|
|
|
|
|
|
|
|
setSupportActionBar(toolbar)
|
|
|
|
|
|
|
|
var ab: ActionBar = getSupportActionBar()
|
|
|
|
ab.setDisplayHomeAsUpEnabled(true)
|
2015-06-12 06:26:47 +00:00
|
|
|
|
|
|
|
fabRun.setOnClickListener {
|
|
|
|
emulator.assembler.assembleCode(txtInstructions.getText().toString().splitBy("\n"))
|
2015-06-13 09:19:42 +00:00
|
|
|
Toast.makeText(fabRun.getContext(),
|
|
|
|
"Code assembled successfully, " + emulator.assembler.codeLen + " bytes.",
|
|
|
|
Toast.LENGTH_SHORT).show()
|
|
|
|
emulator.cpu.execute()
|
2015-06-12 06:26:47 +00:00
|
|
|
}
|
2015-06-09 17:21:49 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
|
|
|
|
// Inflate the menu; this adds items to the action bar if it is present.
|
|
|
|
getMenuInflater().inflate(R.menu.menu_main, menu)
|
|
|
|
return true
|
|
|
|
}
|
|
|
|
|
|
|
|
override fun onOptionsItemSelected(item: MenuItem?): Boolean {
|
|
|
|
// Handle action bar item clicks here. The action bar will
|
|
|
|
// automatically handle clicks on the Home/Up button, so long
|
|
|
|
// as you specify a parent activity in AndroidManifest.xml.
|
|
|
|
val id = item!!.getItemId()
|
|
|
|
|
|
|
|
//noinspection SimplifiableIfStatement
|
|
|
|
if (id == R.id.action_settings) {
|
|
|
|
return true
|
|
|
|
}
|
|
|
|
|
|
|
|
return super.onOptionsItemSelected(item)
|
|
|
|
}
|
|
|
|
}
|