M5Tab-Macintosh
BasiliskII Macintosh 68k emulator ported to ESP32-P4 / M5Stack Tab5 - Run classic Mac OS on embedded hardware
File Explorer
Download Latest Version (.zip)- extensions.json
- pixChicago.ttf
- BgTile.png
- happymacIcon.png
- happymacIconNew.png
- README.md
- README
- config.h
- display.h
- esp-bsp.h
- esp32_p4_wifi6_touch_lcd_x.h
- touch.h
- bsp_err_check.h
- sdkconfig_bsp_shim.h
- esp32_p4_wifi6_touch_lcd_x.c
- library.json
- LICENSE
- README.md
- esp_codec_adc.h
- esp_codec_dev.h
- esp_codec_dev_defaults.h
- esp_codec_dev_os.h
- esp_codec_dev_types.h
- esp_codec_dev_vol.h
- aw88298.c
- aw88298_reg.h
- cjc8910.c
- cjc8910_reg.h
- dummy_codec.c
- es7210.c
- es7210_reg.h
- es7243.c
- es7243e.c
- es8156.c
- es8156_reg.h
- es8311.c
- es8311_reg.h
- es8374.c
- es8388.c
- es8388_reg.h
- es8389.c
- es8389_reg.h
- aw88298_dac.h
- cjc8910_codec.h
- dummy_codec.h
- es7210_adc.h
- es7243_adc.h
- es7243e_adc.h
- es8156_dac.h
- es8311_codec.h
- es8374_codec.h
- es8388_codec.h
- es8389_codec.h
- tas5805m_dac.h
- zl38063_codec.h
- es_common.h
- tas5805m.c
- tas5805m_reg.h
- tas5805m_reg_cfg.h
- tw_spi_access.h
- vproc_common.c
- vproc_common.h
- vproc_data_types.h
- vprocTwolf_access.c
- vprocTwolf_access.h
- libfirmware.a
- zl38063_config.h
- zl38063_firmware.h
- LICENSE.txt
- Readme_twolf.txt
- zl38063.c
- audio_codec_ctrl_if.h
- audio_codec_data_if.h
- audio_codec_gpio_if.h
- audio_codec_if.h
- audio_codec_vol_if.h
- audio_codec_ctrl_i2c.c
- audio_codec_ctrl_spi.c
- audio_codec_data_adc.c
- audio_codec_data_i2s.c
- audio_codec_gpio.c
- esp_codec_dev_os.c
- audio_codec_sw_vol.c
- audio_codec_sw_vol.h
- esp_codec_dev.c
- esp_codec_dev_if.c
- esp_codec_dev_vol.c
- library.json
- esp_lcd_jd9365.h
- esp_lcd_jd9365.c
- library.json
- license.txt
- esp_lcd_touch.h
- esp_lcd_touch.c
- library.json
- esp_lcd_touch_gt911.h
- esp_lcd_touch_gt911.c
- library.json
- README
- CMakeLists.txt
- main.c
- 2-5-Performance.jpeg
- 3-0-Performance.png
- BetterToasters.gif
- Internert-Forums.jpg
- Internet-Sys7.jpg
- LoadingAWebpage.mp4
- MacOS753.gif
- MacOS753_About.jpeg
- MacOS753_Booting.mov
- MacOS8.1_About.jpeg
- MacOS8.1_Booted.jpeg
- MacOS8.1_Booting.jpeg
- Toasters.gif
- Toasters2.5.gif
- v4-M5Gamemode.jpeg
- v4-M5Keyboard.jpeg
- v4-Preboot.jpeg
- v4-WaveshareBootKeyboard.jpeg
- add_toolchain_path.py
- build_assets.py
- build_release.sh
- fetch_c6_firmware.py
- post_build_merge.py
- pre_build.py
- select_component_yml.py
- basilisk_glue.cpp
- hw_esp32.cpp
- main_esp32.cpp
- prefs_esp32.cpp
- adb.h
- audio.h
- audio_defs.h
- automation.h
- bincue.h
- boot_gui.h
- cdrom.h
- clip.h
- color_scheme.h
- cpu_profiler.h
- debug.h
- disk.h
- emul_op.h
- ether.h
- ether_defs.h
- extfs.h
- extfs_defs.h
- g_resource.h
- hid_descriptor.h
- input.h
- mac_splash.h
- macos_util.h
- main.h
- my_sdl.h
- net_router.h
- pict.h
- prefs.h
- prefs_editor.h
- prefs_items.h
- quickdraw_accel.h
- rom_patches.h
- rsrc_patches.h
- scsi.h
- serial.h
- serial_defs.h
- slot_rom.h
- sony.h
- sys.h
- timer.h
- usb_msc.h
- user_strings.h
- version.h
- video.h
- video_defs.h
- xpram.h
- jit_cache.cpp
- jit_cache.h
- jit_compiler.cpp
- jit_compiler.h
- rv32_emitter.cpp
- rv32_emitter.h
- compemu.h
- exceptions.h
- flags.h
- fpu.h
- fpu_ieee.cpp
- impl.h
- mathlib.h
- rounding.h
- types.h
- cpudefs.cpp
- cpuemu.cpp
- cpuemu_nf.cpp
- cpustbl.cpp
- cpustbl_nf.cpp
- cputbl.h
- basilisk_glue.cpp
- cpu_emulation.h
- m68k.h
- memory.cpp
- memory.h
- newcpu.cpp
- newcpu.h
- noflags.h
- readcpu.cpp
- readcpu.h
- spcflags.h
- table68k
- adb.cpp
- audio.cpp
- audio_dummy.cpp
- audio_esp32.cpp
- automation.cpp
- boot_gui.cpp
- cdrom.cpp
- clip_dummy.cpp
- cpu_profiler.cpp
- disk.cpp
- driver_stubs.cpp
- emul_op.cpp
- ether.cpp
- ether_dummy.cpp
- ether_esp32.cpp
- extfs.cpp
- extfs_esp32.cpp
- hid_descriptor.cpp
- input_esp32.cpp
- mac_splash.cpp
- macos_util.cpp
- main.cpp
- main_esp32.cpp
- net_router.cpp
- opcode_sampler.cpp
- opcode_sampler.h
- prefs.cpp
- prefs_esp32.cpp
- prefs_items.cpp
- quickdraw_accel.cpp
- rom_patches.cpp
- rsrc_patches.cpp
- scsi.cpp
- scsi_dummy.cpp
- serial.cpp
- serial_dummy.cpp
- slot_rom.cpp
- sony.cpp
- sys_esp32.cpp
- sysdeps.h
- timer.cpp
- timer_esp32.cpp
- touch_overlay.cpp
- touch_overlay.h
- usb_msc.cpp
- user_strings.cpp
- user_strings_esp32.cpp
- user_strings_esp32.h
- video.cpp
- video_esp32.cpp
- xpram.cpp
- xpram_esp32.cpp
- mini_gfx.cpp
- mini_gfx.h
- mini_gfx_font.h
- board_display_tab5.cpp
- board_keyboard_tab5.cpp
- board_sd_tab5.cpp
- board_tab5.cpp
- board_touch_tab5.cpp
- board_wifi_firmware_tab5.cpp
- board_wifi_tab5.cpp
- audio_esp32_waveshare.cpp
- board_display_waveshare.cpp
- board_keyboard_waveshare.cpp
- board_sd_waveshare.cpp
- board_touch_waveshare.cpp
- board_waveshare.cpp
- board_wifi_firmware_waveshare.cpp
- board_wifi_waveshare.cpp
- board.h
- board_config.h
- board_display.h
- board_keyboard.h
- board_sd.h
- board_sd_probe.h
- board_touch.h
- board_wifi.h
- chicago_font.cpp
- chicago_font.h
- main.cpp
- README
- test_mac_control.py
- build68k
- build68k.c
- gencpu
- gencpu.c
- generate_cpu_tables.sh
- readcpu.cpp
- readcpu.h
- sysdeps.h
- table68k
- build_upload_monitor.py
- mac_control.py
- ocr_png.swift
- performance_capture.py
- requirements.txt
- speedometer_benchmark.py
- .gitignore
- AUTOMATION.md
- boardConfig.md
- CHATGPT_CHANGES.md
- CMakeLists.txt
- idf_component_tab5.yml
- idf_component_waveshare.yml
- partitions.csv
- PERF_WORKLOG.md
- PERFORMANCE_REPORT.md
- platformio.ini
- README.md
- screenshots.md
- sdkconfig.tab5
- sdkconfig.waveshare
# Installation Guide
git clone https://github.com/amcchord/M5Tab-Macintosh
Downloads the entire project code from GitHub to your computer.
cd M5Tab-Macintosh
Moves into the project folder you just downloaded.
2. Official Install Script
Easy Recommended- Python 3 Python is required to use pip.
pip install esptool
Installs the package published on PyPI directly β no need to clone the source.
Pulled directly from this repo's README.
3. CMake
Mediummkdir build && cd build
Creates a folder to hold the build output and moves into it.
cmake ..
Analyzes the source code and generates build configuration files (must be run inside the build folder).
make
Compiles the code based on the generated build configuration to produce an executable.
4. Python
Easypip install esptool
Installs the package published on PyPI directly β no need to clone the source.
Pulled directly from this repo's README.
