]> cloudbase.mooo.com Git - z180-stamp.git/blobdiff - avr/cmd_boot.c
rewrite of cmd_cpu/do_cpu_freq
[z180-stamp.git] / avr / cmd_boot.c
index 036a041bd07a3d4c70c5fe3f73dedb69532396a9..fb533c73a3ca9ea8e977a76ea1decf5054d25456 100644 (file)
@@ -275,28 +275,24 @@ command_ret_t do_go(cmd_tbl_t *cmdtp UNUSED, uint_fast8_t flag UNUSED, int argc,
        }
 
        if (z80_bus_state() & ZST_RUNNING) {
-               printf_P(PSTR("CPU already running!\n"));
-               return CMD_RET_FAILURE;
+               cmd_error(CMD_RET_FAILURE, ERUNNING, NULL);
        }
 
        printf_P(PSTR("Starting application at 0x%04lx ...\n"), addr);
 
        if (addr != 0) {
-               uint8_t tmp[3];
+//             uint8_t tmp[3];
 
-               z80_bus_cmd(Request);
-               z80_read_block (tmp, 0, 3);
+               z80_bus_request_or_exit();
+//             z80_read_block (tmp, 0, 3);
                z80_write(0, 0xc3);
                z80_write(1, addr);
                z80_write(2, (addr >> 8));
 
+               z80_bus_cmd(Release);
+               _delay_ms(100);
                z80_bus_cmd(Run);
-               _delay_us(10);
-               z80_bus_cmd(M_Cycle);
-               _delay_us(10);
-               z80_bus_cmd(M_Cycle);
-               _delay_us(10);
-               z80_write_block(tmp, 0, 3);
+//             z80_write_block(tmp, 0, 3);
        } else {
                if (!hold)
                        z80_bus_cmd(Request);