Graphics 有没有办法从Applesoft Basic访问Apple 2上的DHR

Graphics 有没有办法从Applesoft Basic访问Apple 2上的DHR,graphics,basic,retro-computing,Graphics,Basic,Retro Computing,当在带有80列卡的Apple 2上使用Applesoft Basic时,是否有方法仅使用POKE创建DHR图形 我已经找到了许多使用第三方扩展的解决方案,例如,但我真的想自己实现它。我搜索了我的Nibble杂志收藏和基本书籍,但找不到任何详细信息 维基百科: 双高分辨率的组成 双高分辨率屏幕的分辨率非常高 复杂。除了64:1 交错排列,图像中的像素 单独的行存储在 不寻常的方式:每个像素是它的一半 常用宽度和像素的每个字节 在第一次和第二次之间交替 第二组64KB内存。哪里 共检测到三个连续的o

当在带有80列卡的Apple 2上使用Applesoft Basic时,是否有方法仅使用POKE创建DHR图形

我已经找到了许多使用第三方扩展的解决方案,例如,但我真的想自己实现它。我搜索了我的Nibble杂志收藏和基本书籍,但找不到任何详细信息

维基百科:

双高分辨率的组成 双高分辨率屏幕的分辨率非常高 复杂。除了64:1 交错排列,图像中的像素 单独的行存储在 不寻常的方式:每个像素是它的一半 常用宽度和像素的每个字节 在第一次和第二次之间交替 第二组64KB内存。哪里 共检测到三个连续的on像素 白色,现在需要六个双人 高分辨率。实际上,所有 用于在中生成颜色的像素图案 低分辨率图形块可能是 复制在双高分辨率图形。 其RAM的ProDOS实现 磁盘访问双高分辨率 通过将前8KB设置为 保存到/RAM的文件将其数据存储在 设计为0x012000至0x013fff。也, 第二页是可能的,一个 第二个文件(或更大的第一个文件) 将其数据存储在0x014000以 0x015 FFF。但是,通过 ProDOS文件系统运行缓慢,无法正常运行 非常适合翻页动画 在双高分辨率,超越记忆 要求

维基百科说DHR使用64:1交错,但没有提到实现。此外,Wikipedia说您可以使用/RAM磁盘进行访问,但同样没有提到实现


我正在开发一个小程序,它绘制了康奈特圆模式的一个简单版本。速度实际上不如分辨率重要。

comp.sys.apple2.programmer的一名成员在以下位置回答了我的问题:

基本上,您可以从80列卡映射到辅助内存中。然后在HR屏幕上绘图,并拨动DHR内存位置,以确定要亮/暗的像素

最好的完整示例例程是:

  5 HGR : POKE 49237,0 : CALL 62450 : REM clear hires then hires.aux 
  6 POKE 49246,0 : PG = 49236 
  7 SVN = 7 : HCOLOR= SVN : P5 = .5 
  9 GOTO 100 
 10 X2 = X * 4 : CL = CO : TMP = 8 : FOR I = 3 TO 0 STEP -1 : BIT = CL >= TMP: 
    CL = CL - BIT * TMP : TMP = TMP * P5 
 20 X1 = X + I: HCOLOR= SVN * BIT 
 30 XX = INT (X1 / SVN): H = XX * P5: POKE PG + (H= INT (H)),0 
 40 XX = INT (( INT (H) + (( X1 / SVN) - XX)) * SVN + P5) 
 50 HPLOT XX,Y: POKE PG, 0: NEXT : RETURN 
100 FOR CO = 0 TO 15 : C8 = CO * 8 
110 FOR X = C8 TO C8 + SVN: FOR Y = 0 TO 10 : GOSUB 10 : NEXT : NEXT 
120 NEXT 
130 REM color is 0 to 15 
140 REM X coordinate is from 0 to 139 
150 REM Y coordinate is from 0 to 191