Skip to content

Instantly share code, notes, and snippets.

View tlindner's full-sized avatar

tim lindner tlindner

View GitHub Profile
/*
cmoc test program.
testing structs with function pointers
*/
#include <coco.h>
struct verb_noun_cmd
{
@tlindner
tlindner / Arkanoid Cheat.lua
Created May 17, 2021 05:11
Color COmputer Arkanoid Cheat
-- Lua script for MAME
-- Driver: coco3, game: Arkanoid
-- Start: ./mame coco3 -cart Arkanoid.ccc -autoboot_script Arkanoid\ Cheat.lua
emu.pause()
cpu = manager.machine.devices[":maincpu"]
mem = cpu.spaces["program"]
function draw_hud()
if mem:read_u8(0x134) > 180 then
@tlindner
tlindner / joy.dasm
Last active November 30, 2020 05:29
Disassembled joystick reading routine of Photon for the CoCo
SETDP $7F
65B7: 96 57 LDA $57
65B9: 26 51 BNE $660C Branch if Z = 0
65BB: 86 08 LDA #$08
65BD: 97 57 STA $57
65BF: 8E FF 00 LDX #$FF00
65C2: 10 8E FF 01 LDY #$FF01
65C6: CE FF 20 LDU #$FF20
65C9: CC 34 0C LDD #$340C
65CC: 1A 40 ORCC #$40 inhibit firq
#define LED 13
#define SCS 0
#define RW 1
void setup() {
pinMode(LED, OUTPUT);
pinMode(SCS, INPUT);
pinMode(RW, INPUT);
digitalWrite(LED, HIGH);
@tlindner
tlindner / autoboot.txt
Created May 30, 2020 02:29
Robot to play Timberman on the Color Computer 3
emu.pause()
j = manager:machine():ioport().ports[":joystick_rx"].fields["AD Stick X"]
b = manager:machine():ioport().ports[":joystick_buttons"].fields["Right Button 1"]
s = manager:machine().screens[":composite"]
a = 0
c = 0
function draw_hud()
if s:pixel(200,32) == 38424 then
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <ctype.h>
// Unknown keys.
const unsigned char cypher_text[] = {
0xEC,0xDD,0xF3,0xB5,0xD9,0x9D,0xA6, // l]s5Y.&
0xAF,0xEF,0xC7,0x8F,0xDE,0x8F,0xCA,0xE7, // /oG.^.Jg
Compiling src/devices/bus/spi/spi65.cpp...
In file included from ../../../../../src/devices/bus/spi/spi65.cpp:1:
In file included from ../../../../../src/emu/emu.h:109:
/Volumes/Projects/Projects/git/tlindner/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/emu/device.ipp:45:16: error: no viable overloaded '='
return finder = result;
~~~~~~ ^ ~~~~~~
../../../../../src/devices/bus/spi/spi65.cpp:101:12: note: in instantiation of function template specialization 'emu::detail::device_type_impl<spi65_slot_device>::operator()<device_spi65_interface, true, unsigned int, void (&)(device_slot_interface &), char
const (&)[7]>' requested here
SPI65_SLOT(config, m_slots[0], DERIVED_CLOCK(1, 1), spi65_bus, "sdcard");
^
iMac:tests tlindner$ ./run-cpp_stl_98
init_file_lists
init_file_list: SPEC_SOURCES in /Users/tlindner/Projects/git/kaitai_struct/tests/compiled/cpp_stl_98/bin/spec_files.cmake => 150 entries
init_file_list: KS_SOURCES in /Users/tlindner/Projects/git/kaitai_struct/tests/compiled/cpp_stl_98/bin/compiled_files.cmake => 159 entries
init_cmake
cmake_cli = ["cmake", "-DCMAKE_BUILD_TYPE=Debug", "-DINC1_PATH=/Users/tlindner/Projects/git/kaitai_struct/tests/compiled/cpp_stl_98/bin/spec_files.cmake", "-DINC2_PATH=/Users/tlindner/Projects/git/kaitai_struct/tests/compiled/cpp_stl_98/bin/compiled_files.cmake", "-DKS_PATH=/Users/tlindner/Projects/git/kaitai_struct/tests/compiled/cpp_stl_98", "/Users/tlindner/Projects/git/kaitai_struct/tests/spec/cpp_stl_98"]
-- Boost version: 1.69.0
-- Found the following Boost libraries:
-- unit_test_framework
-- Configuring done
meta:
id: basic_dsk_rsdos
file-extension: dsk
title: RS-DOS filesystem wrapped in a basic array of sectors disk image
license: CC0-1.0
endian: be
xref: Radio Shack TRS-80 Color Computer Disk System Owners Manual & Programmer guide, p58-59
seq:
- id: granules1
size: 9 * 256
# Color Computer OS-9 disk format.
unused = 0xff
lsn[0..] = input[0..255]
fds[0..] = lsn[0][8..11]:be {
fds.att:os9perm = lsn[*][0],os9perm
fds.own:be = lsn[*][1..2]
fds.dat:be = lsn[*][3..7]