ARM application development SDK for MNT ZZ9000 graphics and coprocessor card for classic Amiga computers.
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
Tento repozitář je archivovaný. Můžete prohlížet soubory, klonovat, ale nemůžete nahrávat a vytvářet nové úkoly a požadavky na natažení.
 
 
 
 
 

84 řádky
2.0 KiB

  1. /*
  2. * MNT ZZ9000 Amiga Graphics Card Driver (ZZ9000.card)
  3. * Copyright (C) 2016-2019, Lukas F. Hartmann <lukas@mntre.com>
  4. * MNT Research GmbH, Berlin
  5. * https://mntre.com
  6. *
  7. * More Info: https://mntre.com/zz9000
  8. *
  9. * SPDX-License-Identifier: GPL-3.0-or-later
  10. * GNU General Public License v3.0 or later
  11. *
  12. * https://spdx.org/licenses/GPL-3.0-or-later.html
  13. */
  14. #define uint8_t unsigned char
  15. #define uint16_t unsigned short
  16. #define uint32_t unsigned long
  17. #define u16 uint16_t
  18. #define u32 uint32_t
  19. #define MNTVA_COLOR_8BIT 0
  20. #define MNTVA_COLOR_16BIT565 1
  21. #define MNTVA_COLOR_32BIT 2
  22. #define MNTVA_COLOR_15BIT 3
  23. typedef volatile struct MNTZZ9KRegs {
  24. u16 fw_version; // 00
  25. u16 mode; // 02
  26. u16 vdiv; // 04
  27. u16 screen_w; // 06
  28. u16 screen_h; // 08
  29. u16 pan_ptr_hi; // 0a
  30. u16 pan_ptr_lo; // 0c
  31. u16 hdiv; // 0e
  32. u16 blitter_x1; // 10
  33. u16 blitter_y1; // 12
  34. u16 blitter_x2; // 14
  35. u16 blitter_y2; // 16
  36. u16 blitter_row_pitch; // 18 destination pitch
  37. u16 blitter_x3; // 1a
  38. u16 blitter_y3; // 1c
  39. u16 blitter_rgb_hi; // 1e
  40. u16 blitter_rgb_lo; // 20
  41. u16 blitter_op_fillrect; // 22
  42. u16 blitter_op_copyrect; // 24
  43. u16 blitter_op_filltemplate; // 26
  44. u16 blitter_src_hi; // 28
  45. u16 blitter_src_lo; // 2a
  46. u16 blitter_dst_hi; // 2c
  47. u16 blitter_dst_lo; // 2e
  48. u16 blitter_colormode; // 30 destination colormode
  49. u16 blitter_src_pitch; // 32
  50. u16 blitter_rgb2_hi; // 34 background/secondary color
  51. u16 blitter_rgb2_lo; // 36
  52. u16 un_3[0x24]; // 38..7e
  53. u16 eth_tx; // 80
  54. u16 eth_rx; // 82
  55. u16 un_4[6]; // 84,86,88,8a,8c,8e
  56. u16 arm_run_hi; // 90
  57. u16 arm_run_lo; // 92
  58. u16 arm_argc; // 94
  59. u16 arm_arg[8]; // 96,98,9a,9c..a4
  60. u16 un_5[5]; // a6..ae
  61. u16 arm_event_serial; // b0
  62. u16 arm_event_code; // b2
  63. } MNTZZ9KRegs;
  64. typedef volatile struct MNTZZ9KCXRegs {
  65. u16 video_control_data_hi; // 00
  66. u16 video_control_data_lo; // 02
  67. u16 video_control_op; // 04
  68. u16 videocap_mode; // 06
  69. } MNTZZ9KCXRegs;