User Tag List

Показано с 2,201 по 2,210 из 2231

Тема: ZXMAK2 - Виртуальная машина ZX Spectrum

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Eltaron Посмотреть сообщение
    Еще переписал всю историю, распаковав ROMS.PAK. Теперь всё лежит отдельными ромами (так намного удобней отслеживать историю изменений в логе), а в архив собирается уже при окончательной релизной сборке автоматом.
    да, с ромами я тоже сделал отдельную папку с ромами и скриптом для сборки, правда скрипт bash, для линукс. Можно и для Windows батник добавить, но может есть лучше варианты?

    Я там также убрал ildasm/ilasm из проектного файла, т.к. оно сильно тормозило сборку и слишком сложно было править большой IL файл и были проблемы с компиляцией на линукс, теперь код генерится с помощью Mono.Cecil, и достаточно просто добавить прототип функции в C# и он автоматически при сборке имплементируется. Это используется для реализации OpenGL, где для вызова функции теперь достаточно толко объявить прототип функции и переменную с указателем с таким-же именем и они автоматически имплементятся и инициализируются при компиляции - можно сразу вызывать и проверять указатель - найдена ли функция. Переписывание кода с си заключается по сути в добавлении прототипов функций в класс gl и замене glClear на gl.Clear, или GL_VERSION на GL.VERSION.

    Вот пример OpenGL кода:
    Код:
            static void onResize(Vector2i wndSize) {
                gl.Viewport(0, 0, wndSize.X, wndSize.Y);
                gl.MatrixMode(GL.PROJECTION);
                gl.LoadIdentity();
                gl.Ortho(0.0, 1.0, 1.0, 0.0, 1, 0);
                gl.MatrixMode(GL.MODELVIEW);
            }
            static void onRender(Context ctx, Vector2i size) {
                gl.MatrixMode(GL.MODELVIEW);
                gl.PushMatrix();
                gl.Clear(GL.COLOR_BUFFER_BIT | GL.DEPTH_BUFFER_BIT);
                gl.Enable(GL.TEXTURE_2D);
                gl.LoadIdentity();
    
                if (_program.IsLinked) {    
                    gl.UseProgram(_program.Id);
                    if (_rubyInputSizeId != -1)
                        gl.Uniform2f(_rubyInputSizeId, 320f, 256f);
                    if (_rubyOutputSizeId != -1)
                        gl.Uniform2f(_rubyOutputSizeId, (float)size.X, (float)size.Y);
                    if (_rubyTextureSizeId != -1)
                        gl.Uniform2f(_rubyTextureSizeId, 320f, 256f);
                }
    
                curtxid = texids[curtex];
                gl.BindTexture(GL.TEXTURE_2D, curtxid);
                gl.Begin(GL.TRIANGLE_STRIP);
                gl.TexCoord2f(1.0f, 0.0f); gl.Vertex2f(1.0f, 0.0f);   // RT
                gl.TexCoord2f(0.0f, 0.0f); gl.Vertex2f(0.0f, 0.0f);   // LT
                gl.TexCoord2f(1.0f, 1.0f); gl.Vertex2f(1.0f, 1.0f);   // RB
                gl.TexCoord2f(0.0f, 1.0f); gl.Vertex2f(0.0f, 1.0f);   // LB
                gl.End();
    
                if (_program.IsLinked) {
                    gl.UseProgram(0);
                }
    
                gl.Disable(GL.TEXTURE_2D);
                gl.MatrixMode(GL.MODELVIEW);
                gl.PopMatrix();
                gl.Flush();
    
                //gl.Finish();
                ctx.SwapBuffers();
            }
    А как ты перетащил историю с codeplex?
    Последний раз редактировалось ZXMAK; 29.04.2025 в 15:17.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 7
    Последнее: 06.04.2012, 21:37
  2. Машина Тьюринга для Z80
    от ZXMAK в разделе Эмуляторы
    Ответов: 4
    Последнее: 15.08.2011, 03:26
  3. Продвинутая Мелко Машина 1
    от Black_Cat в разделе Зарубежные компьютеры
    Ответов: 74
    Последнее: 03.03.2009, 09:05
  4. Что за машина такая??? Commodore 128...
    от ILoveSpeccy в разделе Commodore 16/64/128
    Ответов: 5
    Последнее: 31.10.2007, 10:25
  5. Java-машина
    от Error404 в разделе Программирование
    Ответов: 2
    Последнее: 15.01.2007, 15:11

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •